Download ColecoVision Coding Guide
Transcript
; PUT_VRAM_: push af cp 000H jr nz,ELSEZZ ld a,(MUX_SPRITES) cp 001H jr nz,ELSEZZ pop af push hl ld hl,(LOCAL_SPR_TABLE) ld a,e sla a sla a ld e,a add hl,de ex de,hl push iy pop bc ld a,c sla a sla a ld c,a pop hl ldir jr END_IFZZ ; ELSEZZ: pop af call SET_COUNT call VRAM_WRITE END_IFZZ: ret ; ; PROCEDURE INIT_SPR_ORDERQ (SPRITE_COUNT:BYTE) ; INIT_SPR_P: dw 00001H dw 00001H ; INIT_SPR_ORDERQ: ld bc,INIT_SPR_P ld de,PARAM_AREA call PARAM_ ld a,(PARAM_AREA) ; ; INIT_SPR_ORDER_ ; Desc.: Initializes the sprite display order list in RAM ; to default order (0..31) ; Input: Number of sprites to order in A ; INIT_SPR_ORDER_: ld b,a xor a ld hl,(SPRITE_ORDER) INIT_SPR10: ld (hl),a inc hl inc a cp b jr nz,INIT_SPR10 ret ; 162