rendered paste body!to "minimal.prg", cbm
*= $0800
!byte $00,$0c,$08,$0a,$00,$9e,$32,$30,$36,$34,$00,$00,$00,$00
*=$0810
sei
lda #$16
sta $d018 ;switch to normal charset.
jsr clearscreen
;--------------------------------------------------
lda #$00
sta $d020
sta $d021 ; set border and screen colour to black
tax
copyloop
lda $3f40,x ; copy colours to screen RAM
sta $0400,x
lda $4040,x
sta $0500,x
lda $4328,x ; copy colours to colour RAM
sta $d800,x
lda $4428,x
sta $d900,x
dex
bne copyloop
lda #$3b ; bitmap mode
ldx #$18 ; multi-colour mode
ldy #$18 ; screen at $0400, bitmap at $2000
sta $d011
stx $d016
sty $d018
lda #$06
jsr charcolour
mainloop
lda store01+0
ldx store01+1
ldy store01+2
jsr bars01
sty store01+2
stx store01+1
sta store01+0
;--------------------------------------------------
lda store02+0
ldx store02+1
ldy store02+2
jsr scroll
sty store02+2
stx store02+1
sta store02+0
;--------------------------------------------------
lda store03+0
ldx store03+1
ldy store03+2
jsr bars02
sty store03+2
stx store03+1
sta store03+0
;--------------------------------------------------
jmp mainloop
;--------------------------------------------------
scroll
moveloop lda $0401+600,x
sta $0400+600,x
inx
cpx #$28
bne moveloop
readtext lda $5000,y ;read text
sta $0428+600
iny
bne dontadd
inc readtext+2
dontadd rts
;--------------------------------------------------
bars01
lda #$05
ldy #$4c
cpy $d012
bne *-3
sta $d020
lda #$00
ldy #$54
cpy $d012
bne *-3
sta $d020
ldx #$00
ldy #$7c
raster01 lda colour01,x
cpy $d012
bne *-3
sta $d020
sta $d021
inx
iny
cpx #$04
bne raster01
rts
;--------------------------------------------------
bars02 ldx #$00
ldy #$ff
raster02 lda colour02,x
cpy $d012
bne *-3
sta $d020
sta $d021
inx
iny
cpx #$04
bne raster02
rts
;-----------------------------------------------------
clearscreen ldx #$00
lda #$20 ;blank space
clearloop sta $0400,x
sta $0500,x
sta $0600,x
sta $0700,x
inx
bne clearloop
rts
;--------------------------------------------------
charcolour ldx #$01
chrcolloop sta $da00,x
sta $db00,x
inx
bne chrcolloop
rts
;--------------------------------------------------
colour01 !byte $0b,$0c,$0f,$0f
colour02 !byte $0c,$0b,$00,$00
;--------------------------------------------------
store01 !byte 0,0,0
store02 !byte 0,0,0
store03 !byte 0,0,0
;--------------------------------------------------
*=$2000
!bin "C:\relaunch64\asm\DSS02.prg",,2
*=$5000
!text "lalalalalalaaaaaaaaaaaaaaaaaalalalalalaaaaaaaaaaaa test test test "