2018-12-27 20:10:47 +00:00
|
|
|
|
; No idea why ZUN just didn't go with the actually visible space of 384
|
|
|
|
|
; horizontal tiles. That's 8 wasted tiles per row that the game doesn't do
|
|
|
|
|
; anything with?
|
|
|
|
|
TILES_MEMORY_X = 512 / TILE_W
|
|
|
|
|
|
2018-12-29 17:33:27 +00:00
|
|
|
|
; Subdivides each 16×16 tile into two 16×8 halves and marks whether that half
|
|
|
|
|
; should be redrawn by the next call to tiles_redraw_invalidated() if its
|
|
|
|
|
; entry is nonzero.
|
|
|
|
|
public _halftiles_dirty, _halftiles_dirty_end
|
|
|
|
|
_halftiles_dirty db (TILES_MEMORY_X * TILE_FLAGS_Y) dup(?)
|
|
|
|
|
_halftiles_dirty_end label byte
|
|
|
|
|
|
2018-12-28 17:13:25 +00:00
|
|
|
|
; TH04 starts addressing individual tiles directly via their 16-bit offset
|
|
|
|
|
; in the VRAM.
|
2018-12-27 20:10:47 +00:00
|
|
|
|
public _tile_ring
|
|
|
|
|
_tile_ring dw (TILES_MEMORY_X * TILES_Y) dup(?)
|
|
|
|
|
|
2018-12-30 01:28:00 +00:00
|
|
|
|
; .STD files reference 384×80 (25×5) sections of tiles.
|
2018-12-25 22:15:35 +00:00
|
|
|
|
if GAME eq 5
|
2018-12-30 01:28:00 +00:00
|
|
|
|
public _tile_section_ptr
|
|
|
|
|
_tile_section_ptr dw ?
|
2018-12-25 22:15:35 +00:00
|
|
|
|
else
|
2018-12-30 01:28:00 +00:00
|
|
|
|
public _tile_section
|
|
|
|
|
_tile_section dw ?
|
2018-12-25 22:15:35 +00:00
|
|
|
|
endif
|
|
|
|
|
|
2018-12-30 01:28:00 +00:00
|
|
|
|
public _tile_row_in_section, _tile_scrollspeed_ptr
|
|
|
|
|
_tile_row_in_section db ?
|
2018-12-25 22:15:35 +00:00
|
|
|
|
db ?
|
|
|
|
|
_tile_scrollspeed_ptr dw ?
|