mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-12-27 02:31:00 +00:00
interlace: 4 bars
This commit is contained in:
parent
20f591b051
commit
e1c2c2356b
@ -184,18 +184,20 @@ display_loop:
|
|||||||
;======================================================
|
;======================================================
|
||||||
|
|
||||||
; 4550 -- VBLANK
|
; 4550 -- VBLANK
|
||||||
; -162 -- erase 22+8+6+126 = 162
|
; -582 -- erase 22+4*(8+6+126) = 582
|
||||||
; -174 -- raster 16+26+6+126 = 174
|
; -696 -- move+draw 4*(16+26+6+126) = 696
|
||||||
; -10 -- keypress
|
; -10 -- keypress
|
||||||
;=======
|
;=======
|
||||||
; 4204
|
; 3262
|
||||||
|
|
||||||
pad_time:
|
pad_time:
|
||||||
|
|
||||||
; we erase, then draw
|
; we erase, then draw
|
||||||
; doing a blanket erase of all 128 lines would cost 3459 cycles!
|
; doing a blanket erase of all 128 lines would cost 3459 cycles!
|
||||||
|
|
||||||
; erase red
|
;=========================
|
||||||
|
; ERASE
|
||||||
|
;=========================
|
||||||
|
|
||||||
lda #$00 ; 2
|
lda #$00 ; 2
|
||||||
sta smc_raster_color1_1+1 ; 4
|
sta smc_raster_color1_1+1 ; 4
|
||||||
@ -206,13 +208,45 @@ pad_time:
|
|||||||
;=============
|
;=============
|
||||||
; 22
|
; 22
|
||||||
|
|
||||||
|
; erase red
|
||||||
|
|
||||||
lda red_x ; 4
|
lda red_x ; 4
|
||||||
and #$7f ; 2
|
and #$7f ; 2
|
||||||
tax ; 2
|
tax ; 2
|
||||||
|
|
||||||
jsr draw_rasterbar ; 6+126
|
jsr draw_rasterbar ; 6+126
|
||||||
|
|
||||||
|
; erase yellow
|
||||||
|
|
||||||
|
lda yellow_x ; 4
|
||||||
|
and #$7f ; 2
|
||||||
|
tax ; 2
|
||||||
|
|
||||||
|
jsr draw_rasterbar ; 6+126
|
||||||
|
|
||||||
|
; erase green
|
||||||
|
|
||||||
|
lda green_x ; 4
|
||||||
|
and #$7f ; 2
|
||||||
|
tax ; 2
|
||||||
|
|
||||||
|
jsr draw_rasterbar ; 6+126
|
||||||
|
|
||||||
|
; erase red
|
||||||
|
|
||||||
|
lda blue_x ; 4
|
||||||
|
and #$7f ; 2
|
||||||
|
tax ; 2
|
||||||
|
|
||||||
|
jsr draw_rasterbar ; 6+126
|
||||||
|
|
||||||
|
|
||||||
|
;=========================
|
||||||
|
; MOVE and DRAW
|
||||||
|
;=========================
|
||||||
|
|
||||||
|
|
||||||
|
;============
|
||||||
; move red
|
; move red
|
||||||
|
|
||||||
ldy red_x ; 4
|
ldy red_x ; 4
|
||||||
@ -239,13 +273,102 @@ pad_time:
|
|||||||
|
|
||||||
jsr draw_rasterbar ; 6+126
|
jsr draw_rasterbar ; 6+126
|
||||||
|
|
||||||
; Try X=43 Y=19 cycles=4200 R4
|
|
||||||
|
;============
|
||||||
|
; move yellow
|
||||||
|
|
||||||
|
ldy yellow_x ; 4
|
||||||
|
lda movement_table,Y ; 4
|
||||||
|
sta yellow_x ; 4
|
||||||
|
and #$7f ; 2
|
||||||
|
tax ; 2
|
||||||
|
;==========
|
||||||
|
; 16
|
||||||
|
|
||||||
|
; draw yellow
|
||||||
|
|
||||||
|
lda #$33 ; 2
|
||||||
|
sta smc_raster_color1_1+1 ; 4
|
||||||
|
sta smc_raster_color1_2+1 ; 4
|
||||||
|
lda #$bb ; 2
|
||||||
|
sta smc_raster_color2_1+1 ; 4
|
||||||
|
sta smc_raster_color2_2+1 ; 4
|
||||||
|
lda #$ff ; 2
|
||||||
|
sta smc_raster_color3_1+1 ; 4
|
||||||
|
;=============
|
||||||
|
; 26
|
||||||
|
|
||||||
|
|
||||||
|
jsr draw_rasterbar ; 6+126
|
||||||
|
|
||||||
|
;============
|
||||||
|
; move green
|
||||||
|
|
||||||
|
ldy green_x ; 4
|
||||||
|
lda movement_table,Y ; 4
|
||||||
|
sta green_x ; 4
|
||||||
|
and #$7f ; 2
|
||||||
|
tax ; 2
|
||||||
|
;==========
|
||||||
|
; 16
|
||||||
|
|
||||||
|
; draw green
|
||||||
|
|
||||||
|
lda #$33 ; 2
|
||||||
|
sta smc_raster_color1_1+1 ; 4
|
||||||
|
sta smc_raster_color1_2+1 ; 4
|
||||||
|
lda #$bb ; 2
|
||||||
|
sta smc_raster_color2_1+1 ; 4
|
||||||
|
sta smc_raster_color2_2+1 ; 4
|
||||||
|
lda #$ff ; 2
|
||||||
|
sta smc_raster_color3_1+1 ; 4
|
||||||
|
;=============
|
||||||
|
; 26
|
||||||
|
|
||||||
|
|
||||||
|
jsr draw_rasterbar ; 6+126
|
||||||
|
|
||||||
|
;============
|
||||||
|
; move blue
|
||||||
|
|
||||||
|
ldy blue_x ; 4
|
||||||
|
lda movement_table,Y ; 4
|
||||||
|
sta blue_x ; 4
|
||||||
|
and #$7f ; 2
|
||||||
|
tax ; 2
|
||||||
|
;==========
|
||||||
|
; 16
|
||||||
|
|
||||||
|
; draw blue
|
||||||
|
|
||||||
|
lda #$33 ; 2
|
||||||
|
sta smc_raster_color1_1+1 ; 4
|
||||||
|
sta smc_raster_color1_2+1 ; 4
|
||||||
|
lda #$bb ; 2
|
||||||
|
sta smc_raster_color2_1+1 ; 4
|
||||||
|
sta smc_raster_color2_2+1 ; 4
|
||||||
|
lda #$ff ; 2
|
||||||
|
sta smc_raster_color3_1+1 ; 4
|
||||||
|
;=============
|
||||||
|
; 26
|
||||||
|
|
||||||
|
|
||||||
|
jsr draw_rasterbar ; 6+126
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
;============================
|
||||||
|
; WAIT for VBLANK to finish
|
||||||
|
;============================
|
||||||
|
; Try X=5 Y=105 cycles=3256 R6
|
||||||
|
|
||||||
|
nop
|
||||||
nop
|
nop
|
||||||
nop
|
nop
|
||||||
|
|
||||||
ldy #19 ; 2
|
ldy #105 ; 2
|
||||||
loop1: ldx #43 ; 2
|
loop1: ldx #5 ; 2
|
||||||
loop2: dex ; 2
|
loop2: dex ; 2
|
||||||
bne loop2 ; 2nt/3
|
bne loop2 ; 2nt/3
|
||||||
dey ; 2
|
dey ; 2
|
||||||
@ -388,4 +511,7 @@ pictures:
|
|||||||
|
|
||||||
.include "rb_bg.inc"
|
.include "rb_bg.inc"
|
||||||
|
|
||||||
red_x: .byte $10
|
red_x: .byte $10
|
||||||
|
yellow_x: .byte $20
|
||||||
|
green_x: .byte $30
|
||||||
|
blue_x: .byte $40
|
||||||
|
@ -21,7 +21,8 @@ rb_bg_low: .byte $28 ; ysize=48
|
|||||||
.byte $20, $A3,$22, $FF, $F1, $F4, $F2, $FF
|
.byte $20, $A3,$22, $FF, $F1, $F4, $F2, $FF
|
||||||
.byte $62, $00,$00, $01, $A3,$04, $02, $A3,$04, $02
|
.byte $62, $00,$00, $01, $A3,$04, $02, $A3,$04, $02
|
||||||
.byte $A0,$12,$00, $A5,$FF, $77, $A4,$F7, $02, $09, $A0,$FF,$00
|
.byte $A0,$12,$00, $A5,$FF, $77, $A4,$F7, $02, $09, $A0,$FF,$00
|
||||||
.byte $A0,$C3,$00, $A0,$14,$80, $A0,$12,$00, $A0,$18,$80, $AE,$00, $A0,$1C,$80, $A6,$00
|
.byte $A0,$C3,$00, $A0,$14,$08, $A0,$12,$00, $A0,$18,$08, $AD,$00, $80, $A0,$1C,$88
|
||||||
|
.byte $80, $A5,$00
|
||||||
.byte $A1
|
.byte $A1
|
||||||
rb_bg_high: .byte $28 ; ysize=48
|
rb_bg_high: .byte $28 ; ysize=48
|
||||||
.byte $FF, $5F, $F0, $00, $F0, $5F, $F0
|
.byte $FF, $5F, $F0, $00, $F0, $5F, $F0
|
||||||
@ -31,13 +32,13 @@ rb_bg_high: .byte $28 ; ysize=48
|
|||||||
.byte $F0, $00, $FF, $5F, $F0, $00, $F0
|
.byte $F0, $00, $FF, $5F, $F0, $00, $F0
|
||||||
.byte $5F,$5F, $00, $FF, $F0, $0F, $00, $FF
|
.byte $5F,$5F, $00, $FF, $F0, $0F, $00, $FF
|
||||||
.byte $F0, $FF, $00, $5F, $F0,$F0, $00,$00, $FF
|
.byte $F0, $FF, $00, $5F, $F0,$F0, $00,$00, $FF
|
||||||
.byte $00,$00, $FF, $5F, $00,$00, $FF, $F0, $5F
|
.byte $00,$00, $FF, $5F, $00,$00, $FF, $F0, $0F
|
||||||
.byte $00, $FF, $5F, $F5, $00, $FF, $F0
|
.byte $00, $FF, $5F, $F0, $00, $FF, $F0
|
||||||
.byte $FF, $00, $FF, $F0, $0F, $00, $5F
|
.byte $FF, $00, $FF, $F0, $0F, $00, $5F
|
||||||
.byte $F0,$F0, $00, $FF, $05, $FF, $00, $FF
|
.byte $F0,$F0, $00, $FF, $05, $FF, $00, $FF
|
||||||
.byte $05, $FF, $00, $F0, $F5, $5F, $00,$00
|
.byte $05, $FF, $00, $F0, $F5, $5F, $00,$00
|
||||||
.byte $FF, $00,$00, $FF, $F0,$F0, $00, $FF, $05
|
.byte $FF, $00,$00, $FF, $F0,$F0, $00, $FF, $05
|
||||||
.byte $FF, $00, $FF, $F0, $0F, $00, $FF
|
.byte $FF, $00, $FF, $F0, $5F, $00, $FF
|
||||||
.byte $05, $FF, $00, $FF, $05, $FF, $00
|
.byte $05, $FF, $00, $FF, $05, $FF, $00
|
||||||
.byte $F0, $F5, $5F, $00, $05, $00, $05
|
.byte $F0, $F5, $5F, $00, $05, $00, $05
|
||||||
.byte $00, $05, $00, $05, $00, $05,$05, $A3,$00
|
.byte $00, $05, $00, $05, $00, $05,$05, $A3,$00
|
||||||
@ -55,6 +56,6 @@ rb_bg_high: .byte $28 ; ysize=48
|
|||||||
.byte $02, $0D, $AD,$00, $AE,$66, $A0,$1A,$00, $AE,$66, $A0,$1A,$00
|
.byte $02, $0D, $AD,$00, $AE,$66, $A0,$1A,$00, $AE,$66, $A0,$1A,$00
|
||||||
.byte $AE,$66, $A0,$1A,$00, $AE,$66, $A0,$1A,$00, $AE,$66, $A0,$1A,$00, $AE,$66
|
.byte $AE,$66, $A0,$1A,$00, $AE,$66, $A0,$1A,$00, $AE,$66, $A0,$1A,$00, $AE,$66
|
||||||
.byte $A0,$1A,$00, $AE,$66, $A0,$1A,$00, $AE,$66, $A0,$1A,$00, $AE,$66, $A0,$1A,$00
|
.byte $A0,$1A,$00, $AE,$66, $A0,$1A,$00, $AE,$66, $A0,$1A,$00, $AE,$66, $A0,$1A,$00
|
||||||
.byte $AE,$66, $A0,$19,$00, $A0,$10,$80, $A0,$16,$00, $80, $A0,$12,$88, $80
|
.byte $AE,$66, $A0,$18,$00, $80, $A0,$10,$88, $80, $A0,$15,$00, $A0,$14,$08
|
||||||
.byte $A0,$12,$00, $A0,$18,$80, $AE,$00, $A0,$1C,$80, $A6,$00
|
.byte $A0,$12,$00, $A0,$18,$08, $AD,$00, $80, $A0,$1C,$88, $80, $A5,$00
|
||||||
.byte $A1
|
.byte $A1
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.0 KiB |
Loading…
Reference in New Issue
Block a user