REPO Cleanup, 2x 6-pack earned :-)

This commit is contained in:
Rémy GIBERT 2021-06-19 19:46:36 +02:00
parent f2f170660a
commit a336e2122f
9 changed files with 458 additions and 356 deletions

Binary file not shown.

View File

@ -178,17 +178,19 @@ CS.RUN.LOOP jsr CS.RUN.GetByte
jsr CS.RUN.GetFileName jsr CS.RUN.GetFileName
bcs .99 bcs .99
ldx #0 ldx #0
jsr CS.RUN.PrintFN jsr CS.RUN.PrintFN
jsr CS.RUN.CheckDir jsr CS.RUN.CheckDir
bcs .99 bcs .99
lda ZPProgress lda ZPProgress
bne CS.RUN.LOOP bne CS.RUN.LOOP
>LDYA L.MSG.OK >LDYA L.MSG.OK
>SYSCALL PutS >SYSCALL PutS
bra CS.RUN.LOOP bra CS.RUN.LOOP
clc
.99 rts .99 rts
.9 jmp CS.RUN.E.IARC .9 jmp CS.RUN.E.IARC
@ -208,23 +210,27 @@ CS.RUN.LOOP jsr CS.RUN.GetByte
bcs .99 bcs .99
*-------------------------------------- *--------------------------------------
jsr CS.RUN.GetByte DATA jsr CS.RUN.GetByte DATA
bcs .8 eof bcs CS.RUN.Exit eof
.2 cmp #CHNK.T.DATA .2 cmp #CHNK.T.DATA
bne .3 Could be a 0 byte file bne .3 Could be a 0 byte file
.20 lda ZPProgress .20 lda ZPProgress
beq .21 beq .21
jsr CS.RUN.Spinner jsr CS.RUN.Spinner
bra .22 bra .22
.21 lda #'.' .21 lda #'.'
>SYSCALL PutChar >SYSCALL PutChar
.22 jsr CS.RUN.GetByte DataLen LO .22 jsr CS.RUN.GetByte DataLen LO
bcs .99 bcs .99
sta ZPInBufLen sta ZPInBufLen
jsr CS.RUN.GetByte DataLen HI jsr CS.RUN.GetByte DataLen HI
bcs .99 bcs .99
sta ZPInBufLen+1 sta ZPInBufLen+1
jsr CS.RUN.ReadData jsr CS.RUN.ReadData
@ -249,23 +255,24 @@ CS.RUN.LOOP jsr CS.RUN.GetByte
bcs .99 bcs .99
jsr CS.RUN.GetByte jsr CS.RUN.GetByte
bcs .8 bcs CS.RUN.Exit
cmp #CHNK.T.DATA cmp #CHNK.T.DATA
beq .20 beq .20
.3 pha .3 pha
jsr .8 jsr CS.RUN.Exit
pla pla
jmp .10 jmp .10
*--------------------------------------
.8 >LDA.G hFile CS.RUN.Exit >LDA.G hFile
>SYSCALL FClose >SYSCALL FClose
LDA ZPProgress lda ZPProgress
bne S1 bne .9
>LDYA L.MSG.OK >LDYA L.MSG.OK
>SYSCALL PutS >SYSCALL PutS
S1 rts .9 rts
*-------------------------------------- *--------------------------------------
CS.RUN.PrintFN lda ZPProgress CS.RUN.PrintFN lda ZPProgress
bne .9 bne .9

View File

@ -14,9 +14,7 @@ S.SMB.H.CMD.CLOSE .EQ $04
S.SMB.H.CMD.FLUSH .EQ $05 S.SMB.H.CMD.FLUSH .EQ $05
S.SMB.H.CMD.DELETE .EQ $06 S.SMB.H.CMD.DELETE .EQ $06
S.SMB.H.CMD.RENAME .EQ $07 S.SMB.H.CMD.RENAME .EQ $07
S.SMB.H.CMD.SEEK .EQ $12 S.SMB.H.CMD.SEEK .EQ $12
S.SMB.H.CMD.READ.ANDX .EQ $2E S.SMB.H.CMD.READ.ANDX .EQ $2E
S.SMB.H.CMD.WRITE.ANDX .EQ $2F S.SMB.H.CMD.WRITE.ANDX .EQ $2F
S.SMB.H.CMD.TRANS2 .EQ $32 S.SMB.H.CMD.TRANS2 .EQ $32

View File

@ -18,7 +18,7 @@ CIFS.Stat >STYA pPath resolved path
jsr ClearSocket jsr ClearSocket
jsr GetGTX jsr GetCTX
jsr MakeTrans2Req jsr MakeTrans2Req
@ -35,18 +35,7 @@ CIFS.Stat >STYA pPath resolved path
jsr AppendPathPtr2 jsr AppendPathPtr2
tya jsr SetT2ReqLen
inc +1 for \0
clc
adc ZPReqLen
sta ZPReqLen
bcc .2
inc ZPReqLen+1
.2 jsr SetT2ReqLen
jsr WriteSocket jsr WriteSocket
bcs .9 bcs .9
@ -59,17 +48,10 @@ CIFS2.Stat jsr ReadSocket
jsr GetRespData jsr GetRespData
ldy #S.NETBIOS+S.SMB.H.STATUS jsr CheckSMBStatus
lda (ZPRespPtr),y bcs .90
beq .1
lda hResp jsr GetRespDataPtr1
>SYSCALL2 FreeMem
lda #MLI.E.FNOTFND
bra .99
.1 jsr GetRespDataOffset
jsr FileInfo2StatBuf jsr FileInfo2StatBuf
>PULLW ZPPtr2 Stat Buffer >PULLW ZPPtr2 Stat Buffer
@ -79,32 +61,18 @@ CIFS2.Stat jsr ReadSocket
jsr StatBuf2Ptr2 jsr StatBuf2Ptr2
lda hResp jmp Exit.OK
>SYSCALL2 FreeMem
stz CIFS.Status .9 jsr Exit.NODATA
clc beq .99
rts
.9 cmp #E.NODATA .90 >POP 4
bne .99
dec CIFS.Retries .99 rts
beq .90
lda #0
sec
rts
.90 lda #MLI.E.IO
.99 sec
stz CIFS.Status
>RET 4
*-------------------------------------- *--------------------------------------
CIFS.MKDir >STYA pPath resolved path CIFS.MKDir >STYA pPath resolved path
jsr GetGTX jsr GetCtx
jsr MakeTrans2Req jsr MakeTrans2Req
@ -137,34 +105,17 @@ CIFS2.MKDir jsr ReadSocket
jsr GetRespData jsr GetRespData
ldy #S.NETBIOS+S.SMB.H.STATUS jsr CheckSMBStatus
lda (ZPRespPtr),y bcs .90
clc
beq .8
lda #MLI.E.DUPFILE jmp Exit.OK
sec
.8 jsr FreeRespData .9 jsr Exit.NODATA
beq .99
stz CIFS.Status .90 >POP 4
>RET 4
.9 cmp #E.NODATA .99 rts
bne .99
dec CIFS.Retries
beq .98
lda #0
sec
rts
.98 lda #MLI.E.IO
.99 sec
stz CIFS.Status
>RET 4
*-------------------------------------- *--------------------------------------
CIFS.OpenDir >STYA pPath resolved path CIFS.OpenDir >STYA pPath resolved path
@ -205,7 +156,7 @@ CIFS.ReadDir jsr GetPFD
jsr ClearSocket jsr ClearSocket
jsr GetGTX jsr GetCtx
ldy #S.FD.DIR.EPB ldy #S.FD.DIR.EPB
lda (pFD),y lda (pFD),y
@ -290,19 +241,14 @@ CIFS.ReadDir.Send
CIFS2.ReadDir jsr GetPFD CIFS2.ReadDir jsr GetPFD
jsr ReadSocket jsr ReadSocket
bcs .90 bcs .9
jsr GetRespData jsr GetRespData
ldy #S.NETBIOS+S.SMB.H.STATUS jsr CheckSMBStatus
lda (ZPRespPtr),y bcs .90
beq .1
.91 sec ldy #S.FD.DIR.FC
lda #MLI.E.IO
bra .9
.1 ldy #S.FD.DIR.FC
lda (pFD),y lda (pFD),y
iny iny
ora (pFD),y ora (pFD),y
@ -314,7 +260,7 @@ CIFS2.ReadDir jsr GetPFD
tax tax
dey dey
ora (ZPRespPtr),y ora (ZPRespPtr),y
beq .91 beq .90
lda (ZPRespPtr),y lda (ZPRespPtr),y
@ -324,11 +270,11 @@ CIFS2.ReadDir jsr GetPFD
txa txa
sta (pFD),y sta (pFD),y
.2 jsr GetRespDataOffset .2 jsr GetRespDataPtr1
jsr CIFS2.ReadDir.GetBuf jsr CIFS2.ReadDir.GetBuf
bcs .9 bcs .99
jsr GetRespDataOffset jsr GetRespDataPtr1
jsr CIFS2.ReadDir.FillBuf jsr CIFS2.ReadDir.FillBuf
lda hResp lda hResp
@ -339,27 +285,11 @@ CIFS2.ReadDir jsr GetPFD
stz CIFS.Status stz CIFS.Status
clc clc
rts .90 rts
.9 stz CIFS.Status .9 jmp Exit.NODATA
jmp FreeRespData .99 jmp Exit.KO
.90 cmp #E.NODATA
bne .99
dec CIFS.Retries
beq .98
lda #0
sec
rts
.98 lda #MLI.E.IO
.99 stz CIFS.Status
sec
rts
*-------------------------------------- *--------------------------------------
CIFS2.ReadDir.GetBuf CIFS2.ReadDir.GetBuf
ldy #S.NETBIOS+S.SMB.H+S.TRANS2.H Search Count ldy #S.NETBIOS+S.SMB.H+S.TRANS2.H Search Count
@ -533,7 +463,7 @@ CIFS2.ChOwn
*-------------------------------------- *--------------------------------------
CIFS.FOpen >STYA pPath resolved path CIFS.FOpen >STYA pPath resolved path
jsr GetGTX jsr GetCtx
ldx #S.SMB.H.CMD.NT.CREATE.ANDX ldx #S.SMB.H.CMD.NT.CREATE.ANDX
jsr RequestSetupX jsr RequestSetupX
@ -561,14 +491,7 @@ CIFS.FOpen >STYA pPath resolved path
ldy ByteCountOfs ldy ByteCountOfs
sta (ZPReqPtr),y sta (ZPReqPtr),y
clc lda #0
adc ZPReqLen
sta ZPReqLen
bcc .2
inc ZPReqLen+1
.2 lda #0
ror ror
iny ByteCountOfs+1 iny ByteCountOfs+1
sta (ZPReqPtr),y sta (ZPReqPtr),y
@ -605,18 +528,12 @@ CIFS2.FOpen jsr ReadSocket
jsr GetRespData jsr GetRespData
ldy #S.NETBIOS+S.SMB.H.STATUS jsr CheckSMBStatus
lda (ZPRespPtr),y bcs .90
clc >DEBUG
beq .8 >LDYAI S.FD.REG
lda #MLI.E.DUPFILE
sec
bra .80
.8 >LDYAI S.FD.REG
>SYSCALL2 GetMem >SYSCALL2 GetMem
bcs .99 bcs .91
>STYA pFD >STYA pFD
@ -651,30 +568,19 @@ CIFS2.FOpen jsr ReadSocket
>PUSHA >PUSHA
>SYSCALL2 mknod >SYSCALL2 mknod
.80 jsr FreeRespData .91 jsr FreeRespData
stz CIFS.Status bra .90
>RET 6
.9 cmp #E.NODATA .9 jsr Exit.NODATA
bne .99 beq .99
dec CIFS.Retries .90 >POP 6
beq .98 .99 rts
lda #0
sec
rts
.98 lda #MLI.E.IO
.99 sec
stz CIFS.Status
>RET 6
*-------------------------------------- *--------------------------------------
CIFS.FClose jsr GetPFD CIFS.FClose jsr GetPFD
jsr GetGtx jsr GetCtx
ldx #S.SMB.H.CMD.CLOSE ldx #S.SMB.H.CMD.CLOSE
jsr RequestSetupX jsr RequestSetupX
@ -719,40 +625,20 @@ CIFS2.FClose sta hFILE
jsr GetRespData jsr GetRespData
ldy #S.NETBIOS+S.SMB.H.STATUS jsr CheckSMBStatus
lda (ZPRespPtr),y bcs .99
clc
beq .8
lda #MLI.E.DUPFILE lda hFILE
sec
bra .80
.8 lda hFILE
jsr CIFS.CloseDir jsr CIFS.CloseDir
clc lda hResp
>SYSCALL2 FreeMem
.80 jsr FreeRespData jmp Exit.OK
stz CIFS.Status .9 jmp Exit.NODATA
rts
.9 cmp #E.NODATA .99 rts
bne .99
dec CIFS.Retries
beq .98
lda #0
sec
rts
.98 lda #MLI.E.IO
.99 sec
stz CIFS.Status
rts
*-------------------------------------- *--------------------------------------
CIFS.FRead CIFS.FRead
clc clc
@ -767,7 +653,7 @@ CIFS.FWrite ldy #4 hNod
jsr GetPFD jsr GetPFD
jsr GetGTX jsr GetCtx
ldx #S.SMB.H.CMD.WRITE.ANDX ldx #S.SMB.H.CMD.WRITE.ANDX
jsr RequestSetupX jsr RequestSetupX
@ -865,40 +751,33 @@ CIFS.FWrite ldy #4 hNod
lda (pStack),y lda (pStack),y
beq .7 beq .7
dec dec DataLen - $100
sta (pStack),y sta (pStack),y
ldy #3 DataPtr HI ldy #3 DataPtr HI
lda (pStack),y lda (pStack),y
inc inc DataPtr + $100
sta (pStack),y sta (pStack),y
bra .8 jmp Sleep
.7 lda #0 .7 lda #0
sta (pStack) DataLen LO sta (pStack) DataLen = 0
.8 jmp Sleep jmp Sleep
.9 >RET 5 .9 >RET 5
*-------------------------------------- *--------------------------------------
CIFS2.FWrite ldy #4 CIFS2.FWrite jsr ReadSocket
lda (pStack),y
jsr ReadSocket
bcs .9 bcs .9
jsr GetRespData jsr GetRespData
ldy #S.NETBIOS+S.SMB.H.STATUS jsr CheckSMBStatus
lda (ZPRespPtr),y bcs .90
clc
beq .8
lda #MLI.E.IO lda hResp
sec >SYSCALL2 FreeMem
.8 jsr FreeRespData
ldy #1 ldy #1
lda (pStack),y lda (pStack),y
@ -908,23 +787,11 @@ CIFS2.FWrite ldy #4
jmp Sleep2 jmp Sleep2
.9 cmp #E.NODATA .9 jsr Exit.NODATA
bne .99 beq .99
dec CIFS.Retries .90 >POP 5
beq .98 .99 rts
lda #0
sec
rts
.98 lda #MLI.E.IO
.99 sec
.90 stz CIFS.Status
>RET 5
*-------------------------------------- *--------------------------------------
CIFS.FFlush CIFS.FFlush
CIFS2.FFlush CIFS2.FFlush
@ -933,15 +800,136 @@ CIFS2.FSeek
CIFS.FTell CIFS.FTell
CIFS2.FTell CIFS2.FTell
CIFS.FEOF CIFS.FEOF
CIFS2.FEOF CIFS2.FEOF >DEBUG
CIFS.Remove
CIFS2.Remove
CIFS.Rename
CIFS2.Rename >DEBUG
lda #MLI.E.BADCALL lda #MLI.E.BADCALL
sec sec
rts rts
*-------------------------------------- *--------------------------------------
CIFS.Remove >STYA pPath resolved path
jsr ClearSocket
jsr GetCTX
ldx #S.SMB.H.CMD.DELETE
jsr RequestSetupX
ldx #0
.1 lda SMB.ComDelete.H,x
sta (ZPReqPtr),y
iny
inx
cpx #SMB.ComDelete.H.Len
bne .1
jsr ReqSetupPtr2
lda #$04 BufferFormat
jsr PutBytePtr2
jsr AppendPathPtr2
tya
inc +1 for BufferFormat
inc +1 for \0
jsr Add2ByteCount
jsr SetReqLen
jsr WriteSocket
bcs .9
jmp Sleep
.9 rts
*--------------------------------------
CIFS2.Remove jsr ReadSocket
bcs .9
jsr GetRespData
jsr CheckSMBStatus
bcs .99
jmp Exit.OK
.9 jmp Exit.NODATA
.99 rts
*--------------------------------------
CIFS.Rename >STYA pPath resolved src path
jsr ClearSocket
jsr GetCTX
ldx #S.SMB.H.CMD.RENAME
jsr RequestSetupX
ldx #0
.1 lda SMB.ComRename.H,x
sta (ZPReqPtr),y
iny
inx
cpx #SMB.ComRename.H.Len
bne .1
jsr ReqSetupPtr2
lda #$04 BufferFormat
jsr PutBytePtr2
jsr AppendPathPtr2
tya
inc +1 for BufferFormat
inc +1 for \0
jsr Add2ByteCount
lda (pStack)
sta pPath
ldy #1
lda (pStack),y
sta pPath+1
lda #$04 BufferFormat
jsr PutBytePtr2
jsr AppendPathPtr2
tya
inc +1 for BufferFormat
inc +1 for \0
jsr Add2ByteCount
jsr SetReqLen
jsr WriteSocket
bcs .9
jmp Sleep
.9 >RET 4
*--------------------------------------
CIFS2.Rename jsr ReadSocket
bcs .9
jsr GetRespData
jsr CheckSMBStatus
bcs .99
jmp Exit.OK
.9 jmp Exit.NODATA
.99 >RET 4
*--------------------------------------
MAN MAN
SAVE usr/src/lib/libcifs.io.s SAVE usr/src/lib/libcifs.io.s
LOAD usr/src/lib/libcifs.s LOAD usr/src/lib/libcifs.s

View File

@ -570,7 +570,7 @@ GetPFD tax
>STYA pFD >STYA pFD
rts rts
*-------------------------------------- *--------------------------------------
GetGTX lda MountTable+2 GetCTX lda MountTable+2
>SYSCALL2 GetMemPtr >SYSCALL2 GetMemPtr
>STYA ZPCtxPtr >STYA ZPCtxPtr
rts rts
@ -635,6 +635,19 @@ ReqT2SetupPtr2 sty ZPReqLen
rts rts
*-------------------------------------- *--------------------------------------
PutBytePtr2 sta (ZPPtr2)
inc ZPPtr2
bne .1
inc ZPPtr2+1
.1 inc ZPReqLen
bne .8
inc ZPReqLen+1
.8 rts
*--------------------------------------
AppendPathPtr2 ldx #0 AppendPathPtr2 ldx #0
ldy #$ff ldy #$ff
@ -657,10 +670,41 @@ AppendPathPtr2 ldx #0
dey dey
.5 .5 sta (ZPPtr2),y A = 0
* lda #0
sta (ZPPtr2),y
tya
sec +1 for \0
adc ZPReqLen
sta ZPReqLen
bcc .6
inc ZPReqLen+1
.6 tya
sec +1 for \0
adc ZPPtr2
sta ZPPtr2
bcc .8
inc ZPPtr2+1
.8 rts
*--------------------------------------
Add2ByteCount ldy ByteCountOfs
clc
adc (ZPReqPtr),y
sta (ZPReqPtr),y
iny ByteCountOfs+1
lda #0
adc (ZPReqPtr),y
sta (ZPReqPtr),y
rts rts
*-------------------------------------- *--------------------------------------
AppendPath ldx #0 AppendPath ldx #0
@ -760,6 +804,38 @@ Sleep2 stz CIFS.Retries
sec sec
rts rts
*-------------------------------------- *--------------------------------------
Exit.OK lda hResp
>SYSCALL2 FreeMem
stz CIFS.Status
clc
rts
*--------------------------------------
Exit.KO pha
lda hResp
>SYSCALL2 FreeMem
pla
stz CIFS.Status
sec
rts
*--------------------------------------
Exit.NODATA cmp #E.NODATA
bne .99
dec CIFS.Retries
beq .98
lda #0
sec
rts
.98 lda #MLI.E.OFFLINE
.99 stz CIFS.Status
sec
rts
*--------------------------------------
GetRespData sta hResp GetRespData sta hResp
>SYSCALL2 GetMemPtr >SYSCALL2 GetMemPtr
@ -773,8 +849,48 @@ GetRespData sta hResp
sta ZPRespPtr+1 sta ZPRespPtr+1
rts rts
*-------------------------------------- *--------------------------------------
GetRespDataOffset CheckSMBStatus ldy #S.NETBIOS+S.SMB.H.STATUS
ldy #S.NETBIOS+S.SMB.H+15 Data Offset lda (ZPRespPtr),y
clc
beq FreeRespData.RTS
stz CIFS.Status
cmp #2 SRV
bcs .9
iny
iny
lda (ZPRespPtr),y ERR CODE
ldx #MLIERR01-SMBERR01
.1 cmp SMBERR01-1,x
beq .2
dex
bne .1
sec
bra .9
.2 lda MLIERR01-1,x
sec
bra FreeRespData
.9 lda #MLI.E.IO
*--------------------------------------
FreeRespData php
pha
lda hResp
>SYSCALL2 FreeMem
pla
plp
FreeRespData.RTS
rts
*--------------------------------------
GetRespDataPtr1 ldy #S.NETBIOS+S.SMB.H+15 Data Offset
lda (ZPRespPtr),y lda (ZPRespPtr),y
clc clc
adc ZPRespPtr adc ZPRespPtr
@ -794,16 +910,6 @@ GetRespDataOffset
adc /S.NETBIOS adc /S.NETBIOS
sta ZPPtr1+1 sta ZPPtr1+1
rts
*--------------------------------------
FreeRespData php
pha
lda hResp
>SYSCALL2 FreeMem
pla
plp
rts rts
*-------------------------------------- *--------------------------------------
FileInfo2StatBuf FileInfo2StatBuf
@ -945,6 +1051,9 @@ CIFS.BADCALL lda #MLI.E.BADCALL
*-------------------------------------- *--------------------------------------
CS.END CS.END
*-------------------------------------- *--------------------------------------
SMBERR01 .DA #2,#3,#32
MLIERR01 .DA #MLI.E.FNOTFND,#MLI.E.PNOTFND,#MLI.E.OPEN
*--------------------------------------
NETBIOS .DA #0 DIRECT TCP TRANSPORT NETBIOS .DA #0 DIRECT TCP TRANSPORT
.DA #0 24 BITS LENGTH .DA #0 24 BITS LENGTH
.DA /SMB.NegReq.end-SMB.H .DA /SMB.NegReq.end-SMB.H