![]() |
Routines |
| Prev: 56403 | Up: Map | Next: 56457 |
|
Used by the routine at 56216.
|
||||||||
|
Gone 'out of bounds' on horizontal screen position so there's no need to draw this tile. Skip to the next one (checking if there are any left).
|
||||||||
| 56439 | INC HL | Move HL to the next address in the graphics data | ||||||
| 56440 | LD C,(HL) | This address contains the number of bytes in the tile graphic | ||||||
| 56441 | INC HL | Move HL to point to the start of the graphics data itself | ||||||
|
Also jump in at to this point from the check at 56272, if out of bounds on vertical position (into bottom 3rd of screen)
|
||||||||
| 56442 | LD D,0 | |||||||
| 56444 | LD E,C | DE now contains number of bytes left to draw in the current graphics tile | ||||||
| 56445 | ADD HL,DE | ...Add to current graphics address pointer to skip over the rest of the tile graphics (as there's no need to draw them) | ||||||
|
Decrement the tile counter and check to see if all tiles of the graphic have been drawn
|
||||||||
| 56446 | LD A,(60112) | Get tile counter (number of tiles in current graphic) | ||||||
| 56449 | DEC A | Decrement counter | ||||||
| 56450 | LD (60112),A | ...and re-store | ||||||
| 56453 | JP NZ,56230 | Still tiles to draw/erase? If so, go draw/erase them | ||||||
| 56456 | RET | All graphic tiles are now drawn/erased. | ||||||
| Prev: 56403 | Up: Map | Next: 56457 |