Prev: 7DC3 Up: Map Next: 7E7E
7E23: Draw Room
Used by the routine at MainLoop.
DrawRoom 7E23 LD A,($EA91) A=PlayerRoom.
7E26 LD L,A Create an offset in HL (A * 02).
7E27 LD H,$00
7E29 ADD HL,HL
7E2A LD BC,$757D HL=RoomTable + offset.
7E2D ADD HL,BC
7E2E LD A,(HL) HL=the current room data.
7E2F INC HL
7E30 LD H,(HL)
7E31 LD L,A
7E32 LD ($5E1B),HL Stash the room data pointer at CurrentRoom.
Decor_Loop 7E35 LD HL,($5E1B) HL=CurrentRoom.
7E38 LD A,(HL)
7E39 INC HL
7E3A INC HL
7E3B LD ($5E1B),HL
7E3E DEC HL
7E3F LD H,(HL)
7E40 LD L,A
7E41 OR H
7E42 JR NZ,ProcessAction_3
7E44 LD HL,($5E12) HL=CounterLow.
7E47 INC HL
7E48 LD ($5E12),HL
7E4B LD HL,$5E14 HL=GameFlags.
7E4E BIT 0,(HL)
7E50 JR NZ,DrawRoom_0
7E52 CALL HandlerCaveDoorLocked_6
DrawRoom_0 7E55 LD HL,$5E14 HL=GameFlags.
7E58 SET 0,(HL)
7E5A LD HL,($5E05)
7E5D LD DE,($5C78)
7E61 ADD HL,DE
7E62 LD A,($5E12) A=CounterLow.
7E65 ADD A,L
7E66 LD L,A
7E67 LD ($5E05),HL
7E6A CALL HandlerCaveDoorLocked_18
7E6D CALL $9489
7E70 CALL SetKeyPositions_1
7E73 LD A,($EA91) A=PlayerRoom.
7E76 CP $8E
7E78 JP Z,GameComplete
7E7B JP MainLoop Jump to MainLoop.
Prev: 7DC3 Up: Map Next: 7E7E