ACE 2X00: Incorporate some disasm by @apple2geek

This commit is contained in:
Joshua Bell 2021-11-11 20:38:26 -08:00
parent 13ab2b0ee4
commit 9bb4d60aa8

View File

@ -627,36 +627,46 @@ LFA52 := $FA52 ; Not an Apple II entry point
LFC45 := $FC45 ; Not an Apple II entry point LFC45 := $FC45 ; Not an Apple II entry point
LFEEB := $FEEB ; Not an Apple II entry point LFEEB := $FEEB ; Not an Apple II entry point
;; Called from $F88C
LC400:
ldx #$00 ldx #$00
eor #$20 eor #$20
beq LC419 beq @l1
and #$9F and #$9F
beq LC41B beq @l3
asl a asl a
eor #$12 eor #$12
beq LC41A beq @l2
and #$1A and #$1A
eor #$02 eor #$02
beq LC41B beq @l3
and #$10 and #$10
bne LC41A bne @l2
LC419: inx @l1: inx
LC41A: inx @l2: inx
LC41B: stx $2F @l3: stx $2F
jmp LF813 jmp LF813
;;; ============================================================
;; Called from $F8C5
LC420:
lda KBD lda KBD
eor #$93 eor #$93
bne LC439 bne @l2
lda KBDSTRB lda KBDSTRB
LC42A: jsr LFA37 @l1: jsr LFA37
lda KBD lda KBD
bpl LC42A bpl @l1
eor #$83 eor #$83
beq LC439 beq @l2
sta KBDSTRB sta KBDSTRB
LC439: jmp LF813 @l2: jmp LF813
;;; ============================================================
;; Called from $F957
LC43:
lda $2E lda $2E
eor #$FF eor #$FF
and ($26),y and ($26),y
@ -667,65 +677,82 @@ LC439: jmp LF813
sta ($26),y sta ($26),y
jmp LF813 jmp LF813
LC44F: ldx #$3C ;;; ============================================================
;; Called from $FE4B
LC44F:
ldx #$3C
jsr LFC45 jsr LFC45
beq LC463 beq @l1
jsr LC469 jsr @l2
jsr LFA52 jsr LFA52
ldx #$42 ldx #$42
jsr LFA52 jsr LFA52
bra LC44F bra LC44F
LC463: jsr LC469 @l1: jsr @l2
jmp LF813 jmp LF813
LC469: lda ($00,x) @l2: lda ($00,x)
sta ($06,x) sta ($06,x)
rts rts
;;; ============================================================
;; Called from $FEAA
LC46E:
and #$0F and #$0F
asl a asl a
tax tax
lda LC47E,x lda @l1,x
pha pha
lda LC47E+1,x lda @l1+1,x
tax tax
pla pla
jmp LF813 jmp LF813
;; Jump Table (target address-1) ;; Jump Table (target address-1 ???)
LC47E: .byte $F0 @l1:
sbc $C100,x .addr $FDF0
brk .addr $C100
.byte $C2 .addr $C200
brk .addr $C300
.byte $C3 .addr $C400
brk .addr $C500
cpy $00 .addr $C600
cmp $00 .addr $C700
dec $00 .addr $FD1B
smb4 $1B
sbc a:$A9,x ;;; ============================================================
;; Called from $FFA7
LC490:
lda #$00
stz A2L stz A2L
stz A2H stz A2H
stz $2C stz $2C
LC498: ora A2L @l1: ora A2L
sta A2L sta A2L
lda $0200,y lda $0200,y
iny iny
jsr LFEEB jsr LFEEB
bmi LC4B2 bmi @l4
dec $2C dec $2C
ldx #$04 ldx #$04
LC4A9: asl A2L @l2: asl A2L
LC4AB: rol A2H
@l3: rol A2H
dex dex
bne LC4A9 bne @l2
bra LC498 bra @l1
LC4B2: jmp LF813 @l4: jmp LF813
;;; ============================================================
;; Called from $F847
lC4B5:
lsr a lsr a
phx phx
php php
@ -743,77 +770,72 @@ LC4B2: jmp LF813
LC4CB: jmp LF813 LC4CB: jmp LF813
;; Data table ;; Data table
LC4CE: bbr0 $F0,LC4AB LC4CE: .byte $0F, $F0
;;; ============================================================
;; Called from $F854
LC4D0:
phx
and #$0F and #$0F
tax tax
lda $C4DD,x lda @table,x
sta $30 sta $30
plx plx
jmp LF813 jmp LF813
brk
ora ($22),y @table:
.byte $33 .byte $00, $11, $22, $33, $44, $55, $66, $77
.byte $44 .byte $88, $99, $AA, $BB, $CC, $DD, $EE, $FF
eor $66,x
rmb7 $88 ;;; ============================================================
sta $BBAA,y
cpy $EEDD ;; Called from $FC00
.byte $FF LC4ED:
tya tya
ldy $C4FD,x @l1: ldy $C4FD,x
beq * + (8) beq @l2
cmp $C000,y cmp $C000,y
inx inx
bra $C4EE bra @l1
tay @l2: tay
jmp LF813 jmp LF813
eor ($54)
lsr $00,x ;; Display mode softswitch table
lsr $50,x @swtable:
.byte $53
brk .byte $52, $54, $56, $00 ; Full-screen, Page1, LoRes
.byte $9B .byte $56, $50, $53, $00 ; LoRes, Graphics, Split-screen
trb $88FA
ora #$FA ;; Dispatch table for RTS dispatch?
tya @table:
adc ($FD,x) .byte $9b, $1c, $fa ; FA1D ^[ aka <ESC>
sta $21,x .byte $88, $09, $fa ; FA0A ^H aka <-
plx .byte $98, $61, $fd ; FD62 ^X
sta $FA16 .byte $95, $21, $fa ; FA22 ^U aka ->
brk .byte $8d, $16, $fa ; FA17 ^M aka <RETURN>
sta $FC3A .byte $00
txa .byte $8d, $3a, $fc ; FC3B ^M aka <RETURN>
adc $FC .byte $8a, $65, $fc ; FC66 ^J aka “down”
smb0 $E1 .byte $87, $e1, $fb ; FBE2 ^G aka BELL
.byte $FB .byte $88, $42, $fa ; FA43 ^H aka <-
dey .byte $00
.byte $42 .byte $49, $f5, $fc ; FCF6 I
plx .byte $4a, $5b, $fa ; FA5C J
brk .byte $4b, $f5, $fb ; FBF5 K
eor #$F5 .byte $4d, $bc, $fc ; FCBC M
.byte $FC .byte $00
lsr a .byte $8d, $be, $fe ; FEBF ^M aka <RETURN>
.byte $5B .byte $a0, $c9, $fe ; FECA Space
plx .byte $ae, $aa, $fd ; FDAB .
.byte $4B .byte $ba, $47, $fd ; FD48 :
sbc $FB,x .byte $bc, $12, $fe ; FE13 <
eor $FCBC .byte $c7, $80, $f8 ; F881 G
brk .byte $ce, $8c, $fe ; FE8D N
sta $FEBE .byte $82, $ff, $df ; E000 ^B
ldy #$C9 .byte $83, $02, $e0 ; E003 ^C
inc $AAAE,x .byte $99, $f7, $03 ; 03F8 ^Y
sbc $47BA,x .byte $90, $25, $fd ; FD26 ^P
sbc $12BC,x
inc $80C7,x
sed
dec $FE8C
.byte $82
bbs7 $DF,LC4CB
.byte $02
cpx #$99
smb7 $03
bcc $C574
sbc a:$00,x
.endscope .endscope
;;; ============================================================ ;;; ============================================================