Prev: 64653 Up: Map Next: 64770
64718: Game Start
Used by the routine at GameStart_Alias.
GameStart 64718 LD HL,64770 Copy 390 bytes from DefaultGameState to Table_ItemEventLocations.
64721 LD DE,42604
64724 LD BC,390
64727 LDIR
Remove a bunch of room exits (as actions in the game will open them back up).
64729 LD IX,59768 IX=Table_ConfigurableExits.
64733 LD A,(42992) B=*Count_ConfigurableExits.
64736 LD B,A
64737 XOR A Set A to 0 which "removes" the exit.
GameStart_Loop 64738 LD L,(IX+0) Fetch a room exit pointer from *IX.
64741 LD H,(IX+1)
64744 LD (HL),A Write 0 to the exit to remove it.
64745 INC IX Move to the next address in the table.
64747 INC IX
64749 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).
64751 LD A,80 Write 80 to *59636 to open up northbound access to The Enchanted Hills from The Enchanted Hills.
64753 LD (59636),A
64756 LD (59638),A Write 80 to *59638 to open up eastbound access to The Enchanted Hills from The Enchanted Hills.
64759 LD (59639),A Write 80 to *59639 to open up westbound access to The Enchanted Hills from The Enchanted Hills.
Set the starting room.
64762 LD A,2 Call ChangeRoom to room 2: A Wooded Vale.
64764 CALL ChangeRoom
64767 JP GameLoop Jump to GameLoop.
Prev: 64653 Up: Map Next: 64770