; Redefined versions of master.lib's grcg_setmode() and grcg_setcolor(). GRCG_SETMODE_RMW_DEF macro instance ; void pascal near grcg_setmode_rmw(void); public GRCG_SETMODE_RMW_&instance grcg_setmode_rmw_&instance proc near GRCG_SETMODE_VIA_MOV al, GC_RMW ret grcg_setmode_rmw_&instance endp nop endm GRCG_SETCOLOR_DIRECT_NOINT_DEF macro instance ; Takes the GC_* color parameter in AH. ; void pascal near grcg_setcolor_direct_noint(void); public GRCG_SETCOLOR_DIRECT_NOINT_&instance grcg_setcolor_direct_noint_&instance proc near cli GRCG_SETCOLOR_DIRECT_CLOBBERING dx, ah sti ret grcg_setcolor_direct_noint_&instance endp endm ; Convenience macro to prepare ES:DI. GRCG_FILL_PLAYFIELD_ROWS macro y:req, num_rows:req, scratch_sgm:= mov scratch_sgm, GRAM_400 + (((y + PLAYFIELD_Y) * ROW_SIZE) shr 4) mov es, scratch_sgm mov di, ((num_rows - 1) * ROW_SIZE) + PLAYFIELD_VRAM_X call _grcg_fill_playfield_rows endm