Prev: FD6D Up: Map Next: FDB5
FD82: Game Start
Used by the routine at GameStart_Alias.
GameStart FD82 LD HL,$FDB5 Copy 0144 bytes from DefaultGameState to Table_ItemLocations.
FD85 LD DE,$BBF0
FD88 LD BC,$0144
FD8B LDIR
Remove a bunch of room exits (as actions in the game will open them back up).
FD8D LD IX,$ED9E IX=Table_ConfigurableExits.
FD91 LD A,($BD32) B=*Count_ConfigurableExits.
FD94 LD B,A
FD95 XOR A Set A to 00 which "removes" the exit.
GameStart_Loop FD96 LD L,(IX+$00) L=*IX+00.
FD99 LD H,(IX+$01) H=*IX+01.
FD9C LD (HL),A Write A to *HL.
FD9D INC IX Move to the next address in the table.
FD9F INC IX
FDA1 DJNZ GameStart_Loop Decrease the exits counter by one and loop back to GameStart_Loop until all the room exits have been cleared.
Ensure two exits are "open" (as they can become blocked in the game).
FDA3 LD A,$2F Enable the exit "west to room 2F" for The Canyon.
FDA5 LD ($EC27),A
FDA8 LD A,$30 Enable the exit "north to room 30" for The Secluded Beach.
FDAA LD ($EC2A),A
FDAD LD A,$03 Call EF54 to room 03: Your Ship.
FDAF CALL $EF54
FDB2 JP GameLoop Jump to GameLoop.
Prev: FD6D Up: Map Next: FDB5