fixed sending file name to CBDOS

This commit is contained in:
FeralChild64 committed 2021-02-12 21:25:06 +01:00
1 parent 279adc1e0e
commit 3e9581cb89
1 file changed
+43 -5
+43 -5
View File
@@ -11,11 +11,18 @@
iec_send_file_name:
ldy #0
ldy #$00
!ifdef CONFIG_MB_M65 {
jsr m65dos_check
+bcc m65dos_send_file_name_loop ; branch if device is handeld by internal DOS
}
iec_send_file_name_loop:
cpy FNLEN
beq iec_send_file_name_done
+beq UNLSN
!ifdef CONFIG_MEMORY_MODEL_60K {
ldx #<FNADDR+0
@@ -27,7 +34,9 @@ iec_send_file_name_loop:
}
iny
; Set Carry flag on the last file name character, to mark EOI
cpy FNLEN
clc
bne @1
@@ -40,8 +49,37 @@ iec_send_file_name_loop:
} else {
jsr iec_tx_byte
}
jmp iec_send_file_name_loop
+bra iec_send_file_name_loop
!ifdef CONFIG_MB_M65 {
m65dos_send_file_name_loop:
cpy FNLEN
+beq UNLSN
!ifdef CONFIG_MEMORY_MODEL_60K {
ldx #<FNADDR+0
jsr peek_under_roms
} else ifdef CONFIG_MEMORY_MODEL_46K_OR_50K {
jsr peek_under_roms_via_FNADDR
} else { ; CONFIG_MEMORY_MODEL_38K
lda (FNADDR),y
}
iny
; Set Carry flag on the last file name character, to mark EOI
cpy FNLEN
clc
bne @1
sec
@1:
; Transmit one character
jsr m65dos_ciout
+bra m65dos_send_file_name_loop
}
iec_send_file_name_done:
jmp UNLSN
}