![]() |
Routines |
Prev: 36707 | Up: Map |
Used by the routine at 34574. First check whether Willy has entered the portal.
|
||||||||
36805 | LD HL,(32944) | Pick up the address of the portal's location in the attribute buffer at 23552 from 32944 | ||||||
36808 | LD A,(32876) | Pick up the LSB of the address of Willy's location in the attribute buffer at 23552 from 32876 | ||||||
36811 | CP L | Does it match that of the portal? | ||||||
36812 | JR NZ,36831 | Jump if not | ||||||
36814 | LD A,(32877) | Pick up the MSB of the address of Willy's location in the attribute buffer at 23552 from 32877 | ||||||
36817 | CP H | Does it match that of the portal? | ||||||
36818 | JR NZ,36831 | Jump if not | ||||||
36820 | LD A,(32911) | Pick up the portal's attribute byte from 32911 | ||||||
36823 | BIT 7,A | Is the portal flashing? | ||||||
36825 | JR Z,36831 | Jump if not | ||||||
36827 | POP HL | Drop the return address from the stack | ||||||
36828 | JP 36904 | Move Willy to the next cavern | ||||||
Willy has not entered the portal, or it's not flashing, so just draw it.
|
||||||||
36831 | LD A,(32911) | Pick up the portal's attribute byte from 32911 | ||||||
36834 | LD (HL),A | Set the attribute bytes for the portal in the buffer at 23552 | ||||||
36835 | INC HL | |||||||
36836 | LD (HL),A | |||||||
36837 | LD DE,31 | |||||||
36840 | ADD HL,DE | |||||||
36841 | LD (HL),A | |||||||
36842 | INC HL | |||||||
36843 | LD (HL),A | |||||||
36844 | LD DE,32912 | Point DE at the graphic data for the portal at 32912 | ||||||
36847 | LD HL,(32946) | Pick up the address of the portal's location in the screen buffer at 24576 from 32946 | ||||||
36850 | LD C,0 | C=0: overwrite mode | ||||||
This routine continues into the one at 36852.
|
Prev: 36707 | Up: Map |