;---------------------------------------------------------
!to "cleanscreen.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.91
;--------------------------------------------------
screen=$8000
get =$ffe4
rowcount=$0a
inctime= $8f
;--------------------------------------------------
; fill screen-ram
;--------------------------------------------------
ldy #$00
sty rowcount
-- ldx #$00
- lda text,x ; get letter
a: sta screen,y ; write it to screen ram
iny
bne +
inc a+2
+ inx
cpx #$28 ; 40 column reached ?
bne -
inc rowcount
lda rowcount
cmp #$19 ; 25 lines reached ?
bne --
- jsr get
cmp #$20 ; wait for space-key
beq +
bne -
+
;--------------------------------------------------
; your 255 byte-space begins here and ends at rts
;--------------------------------------------------
lda #$80
sta a+2
sta m2+2
sta m0+2
lda #$83
sta m3+2
sta m1+2
ldx #$00
stx rowcount
ldy #$00
j3: lda #93
m2: sta screen,x
m3: sta $83c0,y
clc
txa
adc #40
bcc+
inc m2+2
+ tax
sec
tya
sbc #40
bcs +
dec m3+2
+ tay
jsr irq
inc rowcount
lda rowcount
cmp #13
bne j3
jsr washer
- ldx $0b
inx
stx rowcount
stx $0b
lda #93
sta j0+1
jsr irq
jsr w2
ldx $0b
dex
stx $0b
lda #' '
sta j0+1
jsr irq
jsr w2
inc $0b
lda rowcount
cmp #39
bne -
ldx #$00
ldy #$00
j1: lda #' '
m0: sta screen+39,x
m1: sta $83c0+39,y
clc
txa
adc #40
bcc+
inc m0+2
+ tax
sec
tya
sbc #40
bcs +
dec m1+2
+ tay
jsr irq
inc rowcount
lda rowcount
cmp #53
bne j1
rts
washer: ldx #$00
stx $0b
w2: ldy #0
j0: lda #93
m: sta screen,x
clc
txa
adc #40
bcc +
inc m+2
+ tax
iny
cpy #25
bne j0
lda #$80
sta m+2
rts
irq
pha
lda $8f
- cmp $8f
beq -
pla
rts
text !PET "please erase this awful text in here !!!"Letzte Änderung: 2019-01-04 09:53:21