; 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 $00
Letzte Änderung: 2019-01-03 11:15:40