Prev: FC8D Up: Map Next: FD02
FCCE: Game Start
Used by the routine at GameStart_Alias.
GameStart FCCE LD HL,$FD02 Copy 0186 bytes from DefaultGameState to Table_ItemEventLocations.
FCD1 LD DE,$A66C
FCD4 LD BC,$0186
FCD7 LDIR
Remove a bunch of room exits (as actions in the game will open them back up).
FCD9 LD IX,$E978 IX=Table_ConfigurableExits.
FCDD LD A,($A7F0) B=*Count_ConfigurableExits.
FCE0 LD B,A
FCE1 XOR A Set A to 00 which "removes" the exit.
GameStart_Loop FCE2 LD L,(IX+$00) Fetch a room exit pointer from *IX.
FCE5 LD H,(IX+$01)
FCE8 LD (HL),A Write 00 to the exit to remove it.
FCE9 INC IX Move to the next address in the table.
FCEB INC IX
FCED DJNZ GameStart_Loop Decrease the exits counter by one and loop back to GameStart_Loop until all the room exits have been cleared.
Ensure three exits are "open" even though they point to the room you're in (they become real exits after picking up the staff in the game).
FCEF LD A,$50 Write 50 to *E8F4 to open up northbound access to The Enchanted Hills from The Enchanted Hills.
FCF1 LD ($E8F4),A
FCF4 LD ($E8F6),A Write 50 to *E8F6 to open up eastbound access to The Enchanted Hills from The Enchanted Hills.
FCF7 LD ($E8F7),A Write 50 to *E8F7 to open up westbound access to The Enchanted Hills from The Enchanted Hills.
Set the starting room.
FCFA LD A,$02 Call ChangeRoom to room 02: A Wooded Vale.
FCFC CALL ChangeRoom
FCFF JP GameLoop Jump to GameLoop.
Prev: FC8D Up: Map Next: FD02