mirror of https://github.com/nmlgc/ReC98.git
23 lines
1.0 KiB
C
23 lines
1.0 KiB
C
/// Micro-optimized, vertically-wrapped sprite display functions
|
||
/// ------------------------------------------------------------
|
||
// All of these assume that the caller
|
||
// • has set ES to the beginning of a VRAM plane (e.g. 0xA800)
|
||
// • and has set the GRCG to RMW mode. Consequently, the GRCG also isn't
|
||
// turned off before returning from any of these functions.
|
||
|
||
// Displays the tiny-format 16×16 sprite with the given [patnum], wrapped
|
||
// vertically. (Identical to master.lib's super_roll_put_tiny().)
|
||
#define z_super_roll_put_tiny_16x16(left, top, patnum) \
|
||
_DX = top; \
|
||
_AX = left; \
|
||
z_super_roll_put_tiny_16x16_raw(patnum);
|
||
void pascal near z_super_roll_put_tiny_16x16_raw(int patnum);
|
||
|
||
// Like z_super_roll_put_tiny_16x16(), but adapted for 32×32 sprites.
|
||
#define z_super_roll_put_tiny_32x32(left, top, patnum) \
|
||
_DX = top; \
|
||
_AX = left; \
|
||
z_super_roll_put_tiny_32x32_raw(patnum);
|
||
void pascal near z_super_roll_put_tiny_32x32_raw(int patnum);
|
||
/// ------------------------------------------------------------
|