Files
open-roms/src/kernal/iec/acptr.s
T

39 lines
715 B
ArmAsm

;; #LAYOUT# STD * #TAKE
;; #LAYOUT# * KERNAL_0 #TAKE
;; #LAYOUT# * * #IGNORE
;
; Official Kernal routine, described in:
;
; - [RG64] C64 Programmers Reference Guide - page 274
; - [CM64] Computes Mapping the Commodore 64 - page 224/225
;
; CPU registers that has to be preserved (see [RG64]): .Y
;
ACPTR:
lda IOSTATUS
beq @1
clc
lda #$0D ; tested on real ROMs
rts
@1:
!ifdef CONFIG_MB_M65 {
jsr m65dos_check
+bcc m65dos_acptr ; branch if device is handeld by internal DOS
}
!ifdef CONFIG_IEC {
!ifdef CONFIG_IEC_JIFFYDOS {
jmp iec_rx_dispatch
} else {
jmp iec_rx_byte
}
} else { ; no CONFIG_IEC
jmp kernalerror_ILLEGAL_DEVICE_NUMBER
}