diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index a5d6e003..94162faf 100644 Binary files a/.Floppies/A2OSX.BUILD.po and b/.Floppies/A2OSX.BUILD.po differ diff --git a/BIN/SH.S.CMD.txt b/BIN/SH.S.CMD.txt index 535fd9a4..47d6ef33 100644 --- a/BIN/SH.S.CMD.txt +++ b/BIN/SH.S.CMD.txt @@ -545,7 +545,7 @@ CMD.REN lda (ZPArgVBufPtr) sta ZPTmpW >PUSHW ZPPtr2 - >LDYA ZPArgVBufPrev + >LDYA ZPPtr1 >SYSCALL Rename .90 php diff --git a/ProDOS.FX/ProDOS.S.XDOS.B.txt b/ProDOS.FX/ProDOS.S.XDOS.B.txt index 9fbae623..dfed7683 100644 --- a/ProDOS.FX/ProDOS.S.XDOS.B.txt +++ b/ProDOS.FX/ProDOS.S.XDOS.B.txt @@ -12,54 +12,6 @@ moventry ldy h_entln Get FileInfo From Directory Block Buffer tya bne .1 - .DO LOWERCASE=2 - lda d_stor - and #$F0 - cmp #$F0 - beq .8 - - bit d_sosver - bpl .8 no lowercase bitmap - - lda d_stor - and #$0F - tax - - beq .8 deleted entry - - ldy #0 - -.2 iny - lda whichbit,y - bit d_sosver - beq .3 - - lda d_stor,y - jsr XDOS.ToLower - sta d_stor,y - -.3 dex - beq .8 - - cpy #7 - bne .2 - -.4 iny - lda whichbit-8,y - bit d_comp - beq .5 - - lda d_stor,y - jsr XDOS.ToLower - sta d_stor,y - -.5 iny - dex - bne .4 -.8 lda #$00 no errors - clc - .FIN - nofind rts *-------------------------------------- lookfile jsr preproot go find volume @@ -318,16 +270,16 @@ L38F8 dec cntent checked all entries in this block? preproot jsr findvol search vcb's and dev's for spec'd volume bcs novolume - lda #$00 zero out directory temps - ldy #$42 + ldx #$42 zero out directory temps -L3914 sta own_blk,y and owner info - dey +L3914 stz own_blk,x and owner info + dex bpl L3914 lda devnum setup device # for this directory sta d_dev jsr movhed0 setup other header info from directory + ldy #$01 in gbuf and clean up misc info. ldx vcbptr inx @@ -434,11 +386,14 @@ L39D4 lda vnptr make path ptr same as volume ptr jsr mvdevnums copy all device #'s to be examined. lda devnum log current device 1st before searching bne L39F1 others. -L39E2 ldx DEVCNT scan look list for devices we need + +L39E2 ldx DEVCNT scan look list for devices we need + L39E5 lda loklst,x to search for the requested volume. bne L39F4 branch if we've a device to look at. dex bpl L39E5 look at next one. + L39ED lda #MLI.E.VNOTFND no mounted volume sec error L39F0 rts diff --git a/ProDOS.FX/ProDOS.S.XDOS.E.txt b/ProDOS.FX/ProDOS.S.XDOS.E.txt index 0ae1eaff..7ae94a4e 100644 --- a/ProDOS.FX/ProDOS.S.XDOS.E.txt +++ b/ProDOS.FX/ProDOS.S.XDOS.E.txt @@ -597,7 +597,7 @@ L4AAE jsr XDOS.GetRenPath since both names go into the directory, bcs L4A74 syntax the new name to get the local ldy rnptr name address. y = index to local name - ldx pathbuf,y length. adj y to last char of new name. tya + ldx pathbuf,y length. adj y to last char of new name. tya adc pathbuf,y tay @@ -628,7 +628,11 @@ L4ABE lda pathbuf,y move local name to dir entry workspace. jsr mvrotnam bcs L4A74 -L4AF0 jmp drevise1 end by updating all path directories. +L4AF0 .DO LOWERCASE=1 + jsr XDOS.LC2UCBM + .FIN + + jmp drevise1 end by updating all path directories. *-------------------------------------- mvrotnam ldx #$00 diff --git a/ProDOS.FX/ProDOS.S.XDOS.F.txt b/ProDOS.FX/ProDOS.S.XDOS.F.txt index f5dbef11..bd0ead72 100644 --- a/ProDOS.FX/ProDOS.S.XDOS.F.txt +++ b/ProDOS.FX/ProDOS.S.XDOS.F.txt @@ -514,6 +514,42 @@ L4EB8 lda (usrbuf),y move all 4 pages of the buffer to cmembit.CLCRTS clc no errors L4EC7 rts +*-------------------------------------- + .DO LOWERCASE=1 +XDOS.LC2UCBM stz d_sosver + stz d_comp + + lda d_stor + and #$0F + tay + +.1 lda d_stor,y + cmp #'a' + bcc .4 + cmp #'z'+1 + bcs .4 + + eor #$20 + sta d_stor,y + + cpy #8 + bcs .2 + + lda whichbit,y + tsb d_sosver + bra .3 + +.2 lda whichbit-8,y + tsb d_comp + +.3 lda #$80 + tsb d_sosver + +.4 dey + bne .1 + + rts + .FIN *-------------------------------------- XDOS.IsValidChar cmp #'0'