mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-08-15 08:27:41 +00:00
mode7: more work on scrolling
flickery for some reason
This commit is contained in:
@@ -1,9 +1,9 @@
|
|||||||
scroll_length: .byte 127
|
scroll_length: .byte 167
|
||||||
scroll_row1:
|
scroll_row1:
|
||||||
.byte $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$20,$20,$00,$00,$00,$20,$20,$20,$20,$00,$00,$20,$20,$00,$00,$20,$20,$20,$00,$20,$20,$20,$20,$00,$20,$20,$20,$00,$00,$00,$00,$00,$00,$00,$40,$00,$00,$00,$40,$00,$00,$40,$40,$00,$00,$00,$40,$40,$40,$00,$00,$00,$00,$00,$00,$10,$00,$00,$10,$00,$10,$10,$10,$10,$00,$10,$10,$10,$00,$00,$10,$10,$10,$10,$00,$10,$10,$10,$00,$10,$10,$10,$00,$10,$10,$10,$00
|
.byte $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$20,$20,$00,$00,$00,$20,$20,$20,$20,$00,$00,$20,$20,$00,$00,$20,$20,$20,$00,$20,$20,$20,$20,$00,$20,$20,$20,$00,$00,$00,$00,$00,$00,$00,$40,$00,$00,$00,$40,$00,$00,$40,$40,$00,$00,$00,$40,$40,$40,$00,$00,$00,$00,$00,$00,$10,$00,$00,$10,$00,$10,$10,$10,$10,$00,$10,$10,$10,$00,$00,$10,$10,$10,$10,$00,$10,$10,$10,$00,$10,$10,$10,$00,$10,$10,$10,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
|
||||||
scroll_row2:
|
scroll_row2:
|
||||||
.byte $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$E6,$00,$06,$E0,$00,$E6,$00,$00,$00,$00,$E6,$00,$00,$E6,$00,$00,$E6,$00,$00,$E6,$00,$00,$00,$00,$E6,$00,$00,$E6,$00,$00,$00,$00,$00,$00,$DC,$00,$00,$00,$DC,$00,$DC,$00,$00,$DC,$00,$DC,$00,$00,$00,$00,$00,$00,$00,$00,$00,$B3,$00,$00,$B3,$00,$B3,$00,$00,$00,$00,$B3,$00,$00,$B3,$00,$B3,$00,$00,$00,$00,$03,$B3,$03,$00,$03,$B3,$03,$00,$03,$B3,$03,$00
|
.byte $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$E6,$00,$06,$E0,$00,$E6,$00,$00,$00,$00,$E6,$00,$00,$E6,$00,$00,$E6,$00,$00,$E6,$00,$00,$00,$00,$E6,$00,$00,$E6,$00,$00,$00,$00,$00,$00,$DC,$00,$00,$00,$DC,$00,$DC,$00,$00,$DC,$00,$DC,$00,$00,$00,$00,$00,$00,$00,$00,$00,$B3,$00,$00,$B3,$00,$B3,$00,$00,$00,$00,$B3,$00,$00,$B3,$00,$B3,$00,$00,$00,$00,$03,$B3,$03,$00,$03,$B3,$03,$00,$03,$B3,$03,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
|
||||||
scroll_row3:
|
scroll_row3:
|
||||||
.byte $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$EF,$00,$00,$EF,$00,$EF,$0F,$0F,$00,$00,$EF,$0F,$0F,$EF,$00,$00,$EF,$00,$00,$EF,$0F,$0F,$00,$00,$EF,$0F,$0F,$E0,$00,$00,$00,$00,$00,$00,$DF,$00,$D0,$00,$DF,$00,$DF,$0F,$0F,$DF,$00,$00,$0F,$0F,$D0,$00,$00,$00,$00,$00,$00,$BF,$0F,$0F,$BF,$00,$BF,$0F,$0F,$00,$00,$BF,$0F,$0F,$B0,$00,$BF,$0F,$0F,$00,$00,$00,$0F,$00,$00,$00,$0F,$00,$00,$00,$0F,$00,$00
|
.byte $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$EF,$00,$00,$EF,$00,$EF,$0F,$0F,$00,$00,$EF,$0F,$0F,$EF,$00,$00,$EF,$00,$00,$EF,$0F,$0F,$00,$00,$EF,$0F,$0F,$E0,$00,$00,$00,$00,$00,$00,$DF,$00,$D0,$00,$DF,$00,$DF,$0F,$0F,$DF,$00,$00,$0F,$0F,$D0,$00,$00,$00,$00,$00,$00,$BF,$0F,$0F,$BF,$00,$BF,$0F,$0F,$00,$00,$BF,$0F,$0F,$B0,$00,$BF,$0F,$0F,$00,$00,$00,$0F,$00,$00,$00,$0F,$00,$00,$00,$0F,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
|
||||||
scroll_row4:
|
scroll_row4:
|
||||||
.byte $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$26,$20,$06,$00,$00,$26,$20,$20,$20,$00,$26,$00,$00,$26,$00,$00,$26,$00,$00,$26,$20,$20,$20,$00,$26,$00,$00,$26,$00,$00,$00,$00,$00,$00,$4C,$0C,$00,$0C,$4C,$00,$4C,$00,$00,$4C,$00,$40,$40,$40,$0C,$00,$00,$00,$00,$00,$00,$13,$00,$00,$13,$00,$13,$10,$10,$10,$00,$13,$00,$00,$13,$00,$13,$10,$10,$10,$00,$00,$13,$00,$00,$00,$13,$00,$00,$00,$13,$00,$00
|
.byte $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$26,$20,$06,$00,$00,$26,$20,$20,$20,$00,$26,$00,$00,$26,$00,$00,$26,$00,$00,$26,$20,$20,$20,$00,$26,$00,$00,$26,$00,$00,$00,$00,$00,$00,$4C,$0C,$00,$0C,$4C,$00,$4C,$00,$00,$4C,$00,$40,$40,$40,$0C,$00,$00,$00,$00,$00,$00,$13,$00,$00,$13,$00,$13,$10,$10,$10,$00,$13,$00,$00,$13,$00,$13,$10,$10,$10,$00,$00,$13,$00,$00,$00,$13,$00,$00,$00,$13,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
|
||||||
|
@@ -13,39 +13,84 @@
|
|||||||
;===============
|
;===============
|
||||||
lda #0
|
lda #0
|
||||||
sta DISP_PAGE
|
sta DISP_PAGE
|
||||||
|
sta TEMP
|
||||||
|
|
||||||
scroll_loop:
|
scroll_loop:
|
||||||
|
|
||||||
ldx scroll_length
|
ldx #0
|
||||||
ldy #0
|
ldy TEMP
|
||||||
|
|
||||||
|
lda DISP_PAGE
|
||||||
|
beq draw_page2
|
||||||
|
|
||||||
|
lda #4
|
||||||
|
sta sm1+2
|
||||||
|
sta sm2+2
|
||||||
|
lda #5
|
||||||
|
sta sm3+2
|
||||||
|
sta sm4+2
|
||||||
|
jmp draw_done
|
||||||
|
|
||||||
|
draw_page2:
|
||||||
|
lda #8
|
||||||
|
sta sm1+2
|
||||||
|
sta sm2+2
|
||||||
|
lda #9
|
||||||
|
sta sm3+2
|
||||||
|
sta sm4+2
|
||||||
|
draw_done:
|
||||||
|
|
||||||
draw_loop:
|
draw_loop:
|
||||||
|
|
||||||
lda scroll_row1,Y
|
lda scroll_row1,Y
|
||||||
sta $400,Y
|
sm1:
|
||||||
|
sta $400,X
|
||||||
|
|
||||||
lda scroll_row2,Y
|
lda scroll_row2,Y
|
||||||
sta $480,Y
|
sm2:
|
||||||
|
sta $480,X
|
||||||
|
|
||||||
lda scroll_row3,Y
|
lda scroll_row3,Y
|
||||||
sta $500,Y
|
sm3:
|
||||||
|
sta $500,X
|
||||||
|
|
||||||
lda scroll_row4,Y
|
lda scroll_row4,Y
|
||||||
sta $580,Y
|
sm4:
|
||||||
|
sta $580,X
|
||||||
|
|
||||||
iny
|
iny
|
||||||
dex
|
inx
|
||||||
|
cpx #40
|
||||||
bne draw_loop
|
bne draw_loop
|
||||||
|
|
||||||
|
|
||||||
;==================
|
;==================
|
||||||
; flip pages
|
; flip pages
|
||||||
;==================
|
;==================
|
||||||
|
|
||||||
; jsr page_flip ; 6
|
jsr page_flip ; 6
|
||||||
|
|
||||||
|
;==================
|
||||||
|
; delay
|
||||||
|
;==================
|
||||||
|
|
||||||
|
lda #125
|
||||||
|
jsr WAIT
|
||||||
|
|
||||||
|
|
||||||
;==================
|
;==================
|
||||||
; loop forever
|
; loop forever
|
||||||
;==================
|
;==================
|
||||||
|
clc
|
||||||
|
lda TEMP
|
||||||
|
adc #40
|
||||||
|
cmp scroll_length
|
||||||
|
bne blah
|
||||||
|
lda #0
|
||||||
|
sta TEMP
|
||||||
|
jmp scroll_loop
|
||||||
|
|
||||||
|
blah:
|
||||||
|
inc TEMP
|
||||||
jmp scroll_loop ; 3
|
jmp scroll_loop ; 3
|
||||||
|
|
||||||
;===============================================
|
;===============================================
|
||||||
|
@@ -289,7 +289,7 @@ static int color_map[4][8]={
|
|||||||
int main(int argc, char **argv) {
|
int main(int argc, char **argv) {
|
||||||
|
|
||||||
//char string[]="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
|
//char string[]="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
|
||||||
char string[]=" \001DEATER \002WAS \003HERE!!!";
|
char string[]=" \001DEATER \002WAS \003HERE!!! ";
|
||||||
int length=0,width=0,x,y,i;
|
int length=0,width=0,x,y,i;
|
||||||
int color,color1,color2;
|
int color,color1,color2;
|
||||||
int which_color=0;
|
int which_color=0;
|
||||||
|
Reference in New Issue
Block a user