Prepare for birds and clouds

This commit is contained in:
Pecusx
2025-03-17 10:03:13 +01:00
parent 4cc73d4ab4
commit 3ba8d17c3f
2 changed files with 94 additions and 59 deletions
+94 -59
View File
@@ -40,6 +40,29 @@ display = $a000
.zpvar DLI_A DLI_X dliCount .byte .zpvar DLI_A DLI_X dliCount .byte
.zpvar RMT_blocked noSfx SFX_EFFECT .byte .zpvar RMT_blocked noSfx SFX_EFFECT .byte
.zpvar AutoPlay .byte ; Auto Play flag ($80 - auto) .zpvar AutoPlay .byte ; Auto Play flag ($80 - auto)
.zpvar HPOSP0_d .byte ; PMG registers for sprites under horizon
.zpvar HPOSP1_d .byte ; PMG registers for sprites under horizon
.zpvar HPOSP2_d .byte ; PMG registers for sprites under horizon
.zpvar HPOSP3_d .byte ; PMG registers for sprites under horizon
.zpvar HPOSM0_d .byte ; PMG registers for sprites under horizon
.zpvar HPOSM1_d .byte ; PMG registers for sprites under horizon
.zpvar HPOSM2_d .byte ; PMG registers for sprites under horizon
.zpvar HPOSM3_d .byte ; PMG registers for sprites under horizon
.zpvar SIZEP0_d .byte ; PMG registers for sprites under horizon
.zpvar SIZEP1_d .byte ; PMG registers for sprites under horizon
.zpvar SIZEP2_d .byte ; PMG registers for sprites under horizon
.zpvar SIZEP3_d .byte ; PMG registers for sprites under horizon
.zpvar SIZEM_d .byte ; PMG registers for sprites under horizon
.zpvar GRAFP0_d .byte ; PMG registers for sprites under horizon
.zpvar GRAFP1_d .byte ; PMG registers for sprites under horizon
.zpvar GRAFP2_d .byte ; PMG registers for sprites under horizon
.zpvar GRAFP3_d .byte ; PMG registers for sprites under horizon
.zpvar GRAFM_d .byte ; PMG registers for sprites under horizon
.zpvar COLPM0_d .byte ; PMG registers for sprites under horizon
.zpvar COLPM1_d .byte ; PMG registers for sprites under horizon
.zpvar COLPM2_d .byte ; PMG registers for sprites under horizon
.zpvar COLPM3_d .byte ; PMG registers for sprites under horizon
RMT_zpvars = AutoPlay+1 ; POZOR!!! RMT vars go here RMT_zpvars = AutoPlay+1 ; POZOR!!! RMT vars go here
;--------------------------------------------------- ;---------------------------------------------------
org $2000 org $2000
@@ -194,6 +217,17 @@ DLI2
sta WSYNC sta WSYNC
sta WSYNC sta WSYNC
mva #$c8 COLBAK ; green mva #$c8 COLBAK ; green
; under horizon
; PMG colors, horizontal coordinates and sizes
txa
pha
ldx #$15
@ lda HPOSP0_d,x
sta HPOSP0,x
dex
bpl @-
pla
tax
inc SyncByte inc SyncByte
pla pla
rti rti
@@ -658,8 +692,9 @@ no_branch_l
; hide P/M on right side of screen ; hide P/M on right side of screen
;-------------------------------------------------- ;--------------------------------------------------
lda #$e0 lda #$e0
ldx #$07 ; 8 registers. from HPOSP0 to HPOSM3 ldx #$07 ; 8 registers. from HPOSP0_d to HPOSM3_d
@ sta HPOSP0,x @ sta HPOSP0_d,x
sta HPOSP0,x
dex dex
bpl @- bpl @-
rts rts
@@ -677,20 +712,20 @@ no_branch_l
sta PMmemory+$180+HoffsetP2,x sta PMmemory+$180+HoffsetP2,x
dex dex
bpl @- bpl @-
mva #1 SIZEP2 mva #1 SIZEP2_d
sta SIZEP3 sta SIZEP3_d
lda #%01011111 lda #%01011111
sta SIZEM sta SIZEM_d
mva #$22 PCOLR2 mva #$22 COLPM2_d
mva #$24 PCOLR3 mva #$24 COLPM3_d
; Lumberjack hand ; Lumberjack hand
ldx #datalinesP0-1 ldx #datalinesP0-1
@ lda P0_data,x @ lda P0_data,x
sta PMmemory+$200+HoffsetP0,x sta PMmemory+$200+HoffsetP0,x
dex dex
bpl @- bpl @-
mva #0 SIZEP0 mva #0 SIZEP0_d
mva #$2a PCOLR0 mva #$2a COLPM0_d
; Lumberjack face ; Lumberjack face
ldx #datalinesM0-1 ldx #datalinesM0-1
@ lda PMmemory+$180+HoffsetM0,x @ lda PMmemory+$180+HoffsetM0,x
@@ -705,14 +740,14 @@ no_branch_l
sta PMmemory+$180+HoffsetM1,x sta PMmemory+$180+HoffsetM1,x
dex dex
bpl @- bpl @-
mva #$2a PCOLR1 mva #$2a COLPM1_d
; Lumberjack both hands ; Lumberjack both hands
ldx #datalinesP1-1 ldx #datalinesP1-1
@ lda P1_data,x @ lda P1_data,x
sta PMmemory+$280+HoffsetP1,x sta PMmemory+$280+HoffsetP1,x
dex dex
bpl @- bpl @-
mva #1 SIZEP1 mva #1 SIZEP1_d
rts rts
; Lumberjack shirt data ; Lumberjack shirt data
P2_data P2_data
@@ -767,79 +802,79 @@ datalinesP1=5
;-------------------------------------------------- ;--------------------------------------------------
.proc SetPMl1 .proc SetPMl1
;-------------------------------------------------- ;--------------------------------------------------
mva #$4f HPOSP2 mva #$4f HPOSP2_d
sta HPOSP3 sta HPOSP3_d
mva #$5f HPOSM2 mva #$5f HPOSM2_d
sta HPOSM3 sta HPOSM3_d
mva #$4c HPOSP0 mva #$4c HPOSP0_d
mva #$54 HPOSM0 mva #$54 HPOSM0_d
mva #$4c HPOSM1 mva #$4c HPOSM1_d
mva #$e0 HPOSP1 ; hide mva #$e0 HPOSP1_d ; hide
rts rts
.endp .endp
;-------------------------------------------------- ;--------------------------------------------------
.proc SetPMr1 .proc SetPMr1
;-------------------------------------------------- ;--------------------------------------------------
mva #$9f HPOSP2 mva #$9f HPOSP2_d
sta HPOSP3 sta HPOSP3_d
mva #$af HPOSM2 mva #$af HPOSM2_d
sta HPOSM3 sta HPOSM3_d
mva #$af HPOSP0 mva #$af HPOSP0_d
mva #$a4 HPOSM0 mva #$a4 HPOSM0_d
mva #$ac HPOSM1 mva #$ac HPOSM1_d
mva #$e0 HPOSP1 ; hide mva #$e0 HPOSP1_d ; hide
rts rts
.endp .endp
;-------------------------------------------------- ;--------------------------------------------------
.proc SetPMl2 .proc SetPMl2
;-------------------------------------------------- ;--------------------------------------------------
mva #$4f HPOSP2 mva #$4f HPOSP2_d
sta HPOSP3 sta HPOSP3_d
mva #$5f HPOSM2 mva #$5f HPOSM2_d
sta HPOSM3 sta HPOSM3_d
mva #$e0 HPOSP0 ; hide mva #$e0 HPOSP0_d ; hide
mva #$55 HPOSM0 mva #$55 HPOSM0_d
mva #$e0 HPOSM1 ; hide mva #$e0 HPOSM1_d ; hide
mva #$50 HPOSP1 mva #$50 HPOSP1_d
rts rts
.endp .endp
;-------------------------------------------------- ;--------------------------------------------------
.proc SetPMr2 .proc SetPMr2
;-------------------------------------------------- ;--------------------------------------------------
mva #$9f HPOSP2 mva #$9f HPOSP2_d
sta HPOSP3 sta HPOSP3_d
mva #$af HPOSM2 mva #$af HPOSM2_d
sta HPOSM3 sta HPOSM3_d
mva #$e0 HPOSP0 ; hide mva #$e0 HPOSP0_d ; hide
mva #$a3 HPOSM0 mva #$a3 HPOSM0_d
mva #$e0 HPOSM1 ; hide mva #$e0 HPOSM1_d ; hide
mva #$a2 HPOSP1 mva #$a2 HPOSP1_d
rts rts
.endp .endp
;-------------------------------------------------- ;--------------------------------------------------
.proc SetPMl3 .proc SetPMl3
;-------------------------------------------------- ;--------------------------------------------------
mva #$4f HPOSP2 mva #$4f HPOSP2_d
sta HPOSP3 sta HPOSP3_d
mva #$5f HPOSM2 mva #$5f HPOSM2_d
sta HPOSM3 sta HPOSM3_d
mva #$e0 HPOSP0 ; hide mva #$e0 HPOSP0_d ; hide
mva #$54 HPOSM0 mva #$54 HPOSM0_d
mva #$56 HPOSM1 mva #$56 HPOSM1_d
mva #$5b HPOSP1 mva #$5b HPOSP1_d
rts rts
.endp .endp
;-------------------------------------------------- ;--------------------------------------------------
.proc SetPMr3 .proc SetPMr3
;-------------------------------------------------- ;--------------------------------------------------
mva #$9f HPOSP2 mva #$9f HPOSP2_d
sta HPOSP3 sta HPOSP3_d
mva #$af HPOSM2 mva #$af HPOSM2_d
sta HPOSM3 sta HPOSM3_d
mva #$e0 HPOSP0 ; hide mva #$e0 HPOSP0_d ; hide
mva #$a4 HPOSM0 mva #$a4 HPOSM0_d
mva #$a4 HPOSM1 mva #$a4 HPOSM1_d
mva #$97 HPOSP1 mva #$97 HPOSP1_d
rts rts
.endp .endp
;-------------------------------------------------- ;--------------------------------------------------
BIN
View File
Binary file not shown.