Ich spiele im Moment mit einem Listing aus dem 64-Intern rum. Ich habe das mal etwas umgebaut und die dollsten Kloepse ausgelassen.
Nun kann ich am Ende aber nicht das Hi-Byte erhoehen, damit auch mal mehr als 256 Byte reingescrollt werden.
Was mache ich falsch ?
Code
- !to "d011_1.prg"
- *=$1000
- vcr = $d011
- raster = $d012
- count =$fa
- lda #00
- sta $d020
- sta $d021
- sta count
- j1 sei
- ldx #7
- lda vcr
- ora #7
- sta vcr
- lp1 jsr soft
- dex
- bne lp1
- lp2 lda vcr
- bpl lp2
- lp3 lda vcr
- bmi lp3
- r0 lda #$6b
- cmp raster
- bne r0
- ldy #40
- lp6 lda 1064,y
- sta 1024,y
- lda 1104,y
- sta 1064,y
- lda 1144,y
- sta 1104,y
- lda 1184,y
- sta 1144,y
- lda 1224,y
- sta 1184,y
- lda 1264,y
- sta 1224,y
- lda 1304,y
- sta 1264,y
- lda 1344,y
- sta 1304,y
- lda 1384,y
- sta 1344,y
- lda 1424,y
- sta 1384,y
- lda 1464,y
- sta 1424,y
- lda 1504,y
- sta 1464,y
- lda 1544,y
- sta 1504,y
- lda 1584,y
- sta 1544,y
- lda 1624,y
- sta 1584,y
- lda 1664,y
- sta 1624,y
- lda 1704,y
- sta 1664,y
- lda 1744,y
- sta 1704,y
- lda 1784,y
- sta 1744,y
- lda 1824,y
- sta 1784,y
- lda 1864,y
- sta 1824,y
- lda 1904,y
- sta 1864,y
- lda 1944,y
- sta 1904,y
- lda 1984,y
- sta 1944,y
- dey
- beq next
- jmp lp6
- next ldy #40
- lp10 lda $1200,y
- sta $07c0,y
- dey
- lda lp10+1
- cmp #$00
- beq uphi
- bne again
- uphi ; inc lp10+2
- again cpy #0
- bne lp10
- lda lp10+1
- adc #40
- sta lp10+1
- lda vcr
- ora #7
- sta vcr
- jmp j1
- soft lda raster
- cmp #$fa
- bne soft
- dec vcr
- rts
- rts
- *=$1200
- buffer
- !scr " ein test 1 "
- !scr " ein test 2 "
- !scr " ein test 3 "
- !scr " ein test 4 "
- !scr " ein test 5 "
- !scr " ein test 6 "
- !scr " ein test 7 "
- !scr " ein test 8 "
- !scr " ein test 9 "
- !scr " ein test 10 "
- !scr " ein test 11 "
- !scr " ein test 12 "
- !scr " ein test 13 "
- !scr " ein test 14 "
- !scr " ein test 15 "
- !scr " ein test 16 "
- !scr " ein test 17 "
- !scr " ein test 18 "
- !scr " ein test 19 "