Files
open-roms/src/dos_m65/dev_floppy/dev_fd_cmd_open.s
T

61 lines
861 B
ArmAsm

;
; Open file for reading
;
dev_fd_cmd_OPEN:
lda #$01 ; mode: receive command or file name
sta FD_MODE
jmp dos_EXIT_CLC
dev_fd_cmd_OPEN_EOI:
; XXX this dispatcher is temporary
; Erase filter pattern XXX this should be moved to common part
ldy #$0F
lda #$A0
@lp1:
sta PAR_FPATTERN, y
dey
bpl @lp1
; XXX add support for second floppy
lda FD_CMDFN_BUF
cmp #'$'
beq dev_fd_cmd_OPEN_dir
; FALLTROUGH
dev_fd_cmd_OPEN_file:
; XXX provide implementation
jmp dos_EXIT_CLC
dev_fd_cmd_OPEN_dir:
lda #$02 ; mode: read directory
sta FD_MODE
; Copy the filter from command XXX this should be moved to common part and deduplicated with file opening
ldy #$00
@lp1:
lda FD_CMDFN_BUF+1, y
cmp #$A0
beq @lp1_end
sta PAR_FPATTERN, y
iny
cpy #$10
bne @lp1
@lp1_end:
jmp fs_1581_read_dir_open