mirror of https://github.com/nmlgc/ReC98.git
32 lines
741 B
PHP
32 lines
741 B
PHP
GRCG_SETMODE_RMW_DEF macro sgm
|
|
public _grcg_setmode_rmw_seg&sgm
|
|
_grcg_setmode_rmw_seg&sgm proc near
|
|
GRCG_SETMODE_VIA_MOV al, GC_RMW
|
|
ret
|
|
_grcg_setmode_rmw_seg&sgm endp
|
|
nop
|
|
endm
|
|
|
|
GRCG_SETCOLOR_DIRECT_DEF macro sgm
|
|
public _grcg_setcolor_direct_seg&sgm&_raw
|
|
_grcg_setcolor_direct_seg&sgm&_raw proc near
|
|
cli
|
|
mov dx, 7Eh
|
|
rept 4
|
|
shr ah, 1
|
|
sbb al, al
|
|
out dx, al
|
|
endm
|
|
sti
|
|
ret
|
|
_grcg_setcolor_direct_seg&sgm&_raw endp
|
|
endm
|
|
|
|
; Convenience macro to prepare ES:DI.
|
|
GRCG_FILL_PLAYFIELD_ROWS macro y:req, num_rows:req, scratch_sgm:=<ax>
|
|
mov scratch_sgm, GRAM_400 + (((y + PLAYFIELD_TOP) * ROW_SIZE) shr 4)
|
|
mov es, scratch_sgm
|
|
mov di, ((num_rows - 1) * ROW_SIZE) + PLAYFIELD_VRAM_LEFT
|
|
call _grcg_fill_playfield_rows
|
|
endm
|