mirror of
https://github.com/cc65/cc65.git
synced 2025-02-09 17:33:00 +00:00
fix for files with no extension
git-svn-id: svn://svn.cc65.org/cc65/trunk@4832 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
parent
c345e8fc46
commit
50becf541b
@ -7,7 +7,8 @@
|
|||||||
.import __oserror, return0, __do_oserror
|
.import __oserror, return0, __do_oserror
|
||||||
.importzp ptr1, tmp1
|
.importzp ptr1, tmp1
|
||||||
|
|
||||||
_opendir: sta ptr1
|
.proc _opendir
|
||||||
|
sta ptr1
|
||||||
stx ptr1+1
|
stx ptr1+1
|
||||||
jsr findfreeiocb
|
jsr findfreeiocb
|
||||||
beq @iocbok
|
beq @iocbok
|
||||||
@ -38,6 +39,8 @@ _opendir: sta ptr1
|
|||||||
tax
|
tax
|
||||||
lda diriocb
|
lda diriocb
|
||||||
rts
|
rts
|
||||||
|
.endproc
|
||||||
|
|
||||||
cioerr: sty __oserror
|
cioerr: sty __oserror
|
||||||
jmp return0
|
jmp return0
|
||||||
|
|
||||||
@ -73,24 +76,36 @@ cioerr: sty __oserror
|
|||||||
bcs @break
|
bcs @break
|
||||||
cmp #' '
|
cmp #' '
|
||||||
bne @next
|
bne @next
|
||||||
|
|
||||||
@break: lda #'.' ; extension dot
|
@break: lda #'.' ; extension dot
|
||||||
sta (ptr1),y
|
sta (ptr1),y
|
||||||
iny ; copy extension
|
iny ; copy extension
|
||||||
sty tmp1
|
sty tmp1
|
||||||
ldy #10
|
ldy #10
|
||||||
jsr copychar
|
lda (ptr1),y
|
||||||
|
cmp #' '
|
||||||
|
bne @hasext
|
||||||
|
|
||||||
|
; no extension present: remove the trailing dot and be done
|
||||||
|
ldy tmp1
|
||||||
|
dey
|
||||||
|
bne @done
|
||||||
|
|
||||||
|
@hasext: jsr copychar
|
||||||
ldy #11
|
ldy #11
|
||||||
jsr copychar
|
jsr copychar
|
||||||
ldy #12
|
ldy #12
|
||||||
jsr copychar
|
jsr copychar
|
||||||
lda #0 ; end of string
|
|
||||||
|
@done: lda #0 ; end of string
|
||||||
sta (ptr1),y
|
sta (ptr1),y
|
||||||
lda ptr1
|
lda ptr1
|
||||||
ldx ptr1+1
|
ldx ptr1+1
|
||||||
rts
|
rts
|
||||||
|
|
||||||
|
|
||||||
copychar: lda (ptr1),y ; src=y dest=tmp1
|
copychar: lda (ptr1),y ; src=y dest=tmp1
|
||||||
ldy tmp1
|
ldy tmp1
|
||||||
cmp #' '
|
cmp #' '
|
||||||
beq @break
|
beq @break
|
||||||
sta (ptr1),y
|
sta (ptr1),y
|
||||||
@ -117,4 +132,4 @@ defdev: .asciiz "D:*.*"
|
|||||||
|
|
||||||
.bss
|
.bss
|
||||||
diriocb: .res 1
|
diriocb: .res 1
|
||||||
entry: .res 128
|
entry: .res DSCTSZ
|
||||||
|
Loading…
x
Reference in New Issue
Block a user