kfest: scrolling works!

This commit is contained in:
Vince Weaver 2018-07-20 00:28:11 -04:00
parent 828362f3cb
commit c2d6a35ae6

View File

@ -190,19 +190,22 @@ page1_loop: ; delay 115+(7 loop)+4 (bit)+4(extra)
;======================================================
; We have 4550 cycles in the vblank, use them wisely ; We have 4550 cycles in the vblank, use them wisely
;======================================================
; delay 4546 (+1 from loop falltrough, -2 for loadup, -3 for jmp) ; delay 2737 (4550 +1 from falltrough, -2 for loadup, -1812 for scroll)
; 4540 = x=9,y=89 ; Try X=90 Y=6 cycles=2737
; kill 3 cycles ; waste 2 cycles
lda DRAW_PAGE ; 3 ;lda DRAW_PAGE ; 3
lda DRAW_PAGE ; 3 ;lda DRAW_PAGE ; 3
; nop ; 2
ldy #89 ; 2 ldy #6 ; 2
loop5: loop5:
ldx #9 ; 2 ldx #90 ; 2
loop6: loop6:
dex ; 2 dex ; 2
bne loop6 ; 2nt/3 bne loop6 ; 2nt/3
@ -212,35 +215,41 @@ loop6:
jmp display_loop ; 3 ; jmp display_loop ; 3
ldy CURRENT_OFFSET ;================================
ldx #0 ; SCROLL THE TEXT
;================================
; 5+ 40*(36 + 9)+5+3 -1
; 12+40*(45) = 1812
ldy CURRENT_OFFSET ; 3
ldx #0 ; 2
data_loop: data_loop:
lda words,Y lda words,Y ; 4+
sta $6d0,X sta $6d0,X ; 5
lda words2,Y lda words2,Y ; 4+
sta $750,X sta $750,X ; 5
lda words3,Y lda words3,Y ; 4+
sta $ad0,X sta $ad0,X ; 5
lda words4,Y lda words4,Y ; 4+
sta $b50,X sta $b50,X ; 5
iny iny ; 2
inx inx ; 2
cpx #40 cpx #40 ; 2
bne data_loop bne data_loop ; 2nt/3
inc CURRENT_OFFSET inc CURRENT_OFFSET ; 5
lda #128 ; lda #128
jsr WAIT ; jsr WAIT
jmp display_loop jmp display_loop ; 3
;================================== ;==================================