![]() |
Routines |
Prev: 46495 | Up: Map | Next: 46577 |
Read first parameter (n) from graphic layout data, increment (resetting to zero if it is equal to the length of the list of addresses as specified by the second parameter) and jump to n-th address.
Used by the routine at 46218.
|
||||||||||||
46559 | LD A,(IX+0) | Load current byte of graphic layout data into A | ||||||||||
46562 | INC A | Increase by one | ||||||||||
46563 | CP (IX+1) | If following byte (cap value) is greater than current byte then skip ahead to 46569 | ||||||||||
46566 | JR C,46569 | |||||||||||
46568 | XOR A | Reset current value to zero as cap value reached | ||||||||||
46569 | LD (IX+0),A | Load current value back into current position in graphic layout data | ||||||||||
46572 | ADD A,A | Load A with double current value + 2 (as we're skipping over first two bytes and subsequent data are WORD addresses) | ||||||||||
46573 | ADD A,2 | |||||||||||
Here we advance our position in graphic layout data by A bytes, read the address stored at that location and then set that address as our new graphic layout data position.
|
||||||||||||
46575 | JR 46586 | Update position in graphic layout data and continue processing |
Prev: 46495 | Up: Map | Next: 46577 |