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
bcs .99
ldx #0
jsr CS.RUN.PrintFN
jsr CS.RUN.CheckDir
bcs .99
lda ZPProgress
bne CS.RUN.LOOP
>LDYA L.MSG.OK
>SYSCALL PutS
bra CS.RUN.LOOP
clc
.99 rts
.9 jmp CS.RUN.E.IARC
@ -208,23 +210,27 @@ CS.RUN.LOOP jsr CS.RUN.GetByte
bcs .99
*--------------------------------------
jsr CS.RUN.GetByte DATA
bcs .8 eof
bcs CS.RUN.Exit eof
.2 cmp #CHNK.T.DATA
bne .3 Could be a 0 byte file
.20 lda ZPProgress
beq .21
jsr CS.RUN.Spinner
bra .22
.21 lda #'.'
>SYSCALL PutChar
.22 jsr CS.RUN.GetByte DataLen LO
bcs .99
sta ZPInBufLen
jsr CS.RUN.GetByte DataLen HI
bcs .99
sta ZPInBufLen+1
jsr CS.RUN.ReadData
@ -249,23 +255,24 @@ CS.RUN.LOOP jsr CS.RUN.GetByte
bcs .99
jsr CS.RUN.GetByte
bcs .8
bcs CS.RUN.Exit
cmp #CHNK.T.DATA
beq .20
.3 pha
jsr .8
jsr CS.RUN.Exit
pla
jmp .10
.8 >LDA.G hFile
*--------------------------------------
CS.RUN.Exit >LDA.G hFile
>SYSCALL FClose
LDA ZPProgress
bne S1
lda ZPProgress
bne .9
>LDYA L.MSG.OK
>SYSCALL PutS
S1 rts
.9 rts
*--------------------------------------
CS.RUN.PrintFN lda ZPProgress
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.DELETE .EQ $06
S.SMB.H.CMD.RENAME .EQ $07
S.SMB.H.CMD.SEEK .EQ $12
S.SMB.H.CMD.READ.ANDX .EQ $2E
S.SMB.H.CMD.WRITE.ANDX .EQ $2F
S.SMB.H.CMD.TRANS2 .EQ $32

View File

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

View File

@ -570,7 +570,7 @@ GetPFD tax
>STYA pFD
rts
*--------------------------------------
GetGTX lda MountTable+2
GetCTX lda MountTable+2
>SYSCALL2 GetMemPtr
>STYA ZPCtxPtr
rts
@ -635,6 +635,19 @@ ReqT2SetupPtr2 sty ZPReqLen
rts
*--------------------------------------
PutBytePtr2 sta (ZPPtr2)
inc ZPPtr2
bne .1
inc ZPPtr2+1
.1 inc ZPReqLen
bne .8
inc ZPReqLen+1
.8 rts
*--------------------------------------
AppendPathPtr2 ldx #0
ldy #$ff
@ -657,10 +670,41 @@ AppendPathPtr2 ldx #0
dey
.5
* lda #0
sta (ZPPtr2),y
.5 sta (ZPPtr2),y A = 0
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
*--------------------------------------
AppendPath ldx #0
@ -760,6 +804,38 @@ Sleep2 stz CIFS.Retries
sec
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
>SYSCALL2 GetMemPtr
@ -773,8 +849,48 @@ GetRespData sta hResp
sta ZPRespPtr+1
rts
*--------------------------------------
GetRespDataOffset
ldy #S.NETBIOS+S.SMB.H+15 Data Offset
CheckSMBStatus ldy #S.NETBIOS+S.SMB.H.STATUS
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
clc
adc ZPRespPtr
@ -794,16 +910,6 @@ GetRespDataOffset
adc /S.NETBIOS
sta ZPPtr1+1
rts
*--------------------------------------
FreeRespData php
pha
lda hResp
>SYSCALL2 FreeMem
pla
plp
rts
*--------------------------------------
FileInfo2StatBuf
@ -945,6 +1051,9 @@ CIFS.BADCALL lda #MLI.E.BADCALL
*--------------------------------------
CS.END
*--------------------------------------
SMBERR01 .DA #2,#3,#32
MLIERR01 .DA #MLI.E.FNOTFND,#MLI.E.PNOTFND,#MLI.E.OPEN
*--------------------------------------
NETBIOS .DA #0 DIRECT TCP TRANSPORT
.DA #0 24 BITS LENGTH
.DA /SMB.NegReq.end-SMB.H