!to "petscroll.prg",cbm
; Basicstart
*= $0400
!byte $00,$0b,$04,$0a,$00,$9e,$31,$30,$33,$37,$00,$00,$00
; main
*=$040d
;--------------------------------------------------
; virtual machine in VICE: CBM 3032B /32K
; Compiler used for this template: ACME 0.94.6
;--------------------------------------------------
screen=$81e0
get =$ffe4
counter=$0a
lda #$93
jsr $ffd2
gettext: sei
txa
pha
ldx #$00 ; waste time
l1: ldy #$00
l: dey
bne l
inx
cpx #$45
bne l1
pla
txa
ldx txtpos
inc txtpos
lda text,x
cmp #$00 ; at $00 repeat
bne +
ldx #00
stx txtpos
beq gettext
+ sta screen+39
cli
- jsr get
cmp #$20 ; wait for space-key
beq +
scroll:
lda $8f ; compare inctime value
- cmp $8f
beq -
sei
ldx #$00
-- lda screen+1,x ; hardscroll
sta screen,x
inx
cpx #40
bne --
cli
lda $8f ; compare inctime value
--- cmp $8f
beq ---
jmp gettext
+ jmp $c389
txtpos !by $00
text !PET "hi, this is a tiny scroller. i've never seen a scroller on a pet basic 2 machine. here is one ! "
!PET "it is possible to move 256 chars in a row. press space to end this humpy thing. ;-) "
!by $00Letzte Änderung: 2019-01-04 09:53:09