; Plus/4 function rom lo
;
;
; Disassembly by M. Sachse
; 16.02.2017
;
;
; converted to "easy to use" code
; Compiler: ACME
!to"funcrom.crt",plain
*=$8000
jmp init
jmp start
!by $0c,$43,$42,$4d ; module-nr., "CBM"
!scr "SYS1525: MYTOOL " ; replace module-name
!by $00,$20,$20,$20
!scr " MYTOOL ON KEY F"; replace module-name
!by $00,$20
copybytes:
ldx #$05
lda #$80 ; cart_start hi
sta $05F1
lda #$03 ; cart_start lo ; $8003
sta $05F0
sta $05F4
lda $FB
jmp $FCFA ; ->$fc89 longjump
init: ldy #$00
sty $D9
lda $FB
sta $7FFF
and #$03
tax
sta $FDD0,X ; banking
cmp #$01
beq +
iny
lda $055F
sta $D9
+ sty $D8
tya
beq +
ldy #$35
+ ldx #$00
- lda copybytes,X
sta $05F5,Y
iny
inx
cpx #$14
bcc -
L_8072:ldx $D8
lda #$12
cmp $055F,X
beq L_80A1
bcc L_8090
ldy #$7E
- lda $0567,Y
sta $0568,Y
dey
cpy $D9
bpl -
inc $055F,X
jmp L_8072
L_8090:ldy $D9
- lda $0568,Y
sta $0567,Y
iny
bpl -
dec $055F,X
jmp L_8072
L_80A1:ldx $D9
ldy #$00
- lda $800A,Y ; get "SYS1525: mytool "
sta $0567,X
inx
iny
cpy #$12
bcc -
ldx $D8
beq +
ldy $D9
lda #$37
sta $056C,Y
lda #$38
sta $056D,Y
lda $FB
sta $062B
+ ldx #$00
- lda $801D,X ; get " mytool ON KEY F "
beq +
jsr $FFD2
inx
bne -
+ lda $D8
clc
adc #$31
jsr $FFD2 ; print F-key number
lda #$0D
jmp $FFD2 ; cr
start:
sei
ldx #$FF
txs
cli
nop
nop
nop
nop
nop
nop
nop
; lda $FF06 ; switch blank: 2 Mhz
; and #$EF
; sta $FF06 ; useful for speedy copy
; place for your code
;
- inc $ff19 ; frame color-rotation
;
;
; lda $FF06 ; screen on
; ora #$10
; sta $FF06
jmp -
;endmarker
*=$bfff
!by $00Letzte Änderung: 2019-01-03 11:15:40