CIFS:Fixes

TCPIP:SEQPKT faster ACK
This commit is contained in:
burniouf 2022-03-18 18:59:39 +01:00
parent 38cbd00f7e
commit 447ce4b142
12 changed files with 118 additions and 59 deletions

View File

@ -430,8 +430,21 @@ Y,A = PTR to MemBlock
CS : error
A = EC
# Online
Get ProDOS Volume Info
## C
`int online(short int volid, void *buf);`
## ASM
`>PUSHB volid`
`>PUSHW buf`
`>SYSCALL Online`
## RETURN VALUE
# ChTyp
Change The type of a ProDOS File
Change Type of a ProDOS File
## C
`int chtyp(const char *filepath, short int filetype);`
@ -444,14 +457,14 @@ Change The type of a ProDOS File
## RETURN VALUE
# ChAux
Change The type of a ProDOS File
Change AuxType of a ProDOS File
## C
`int chaux(const char *filepath, int auxtype);`
## ASM
`>PUSHW filepath`
`>PUSHB filetype`
`>PUSHW auxtype`
`>SYSCALL ChAux`
## RETURN VALUE

Binary file not shown.

Binary file not shown.

View File

@ -2,14 +2,16 @@ NEW
AUTO 3,1
*--------------------------------------
BS.ResetCSWKSW pha
lda GP.VECTOUT
sta ZP.CSW
lda GP.VECTOUT+1
sta ZP.CSW+1
lda GP.VECTIN
sta ZP.KSW
lda GP.VECTIN+1
sta ZP.KSW+1
phx
ldx #3
.1 lda GP.VECTOUT,x
sta ZP.CSW,x
dex
bpl .1
plx
pla
rts
*--------------------------------------
@ -82,26 +84,30 @@ L9A74 jsr BS.ResetCSWKSW
L9A8B lda #$8D
BS.SaveCSWKSW pha
lda ZP.KSW+1
sta GP.VECTIN+1
lda ZP.KSW
sta GP.VECTIN
lda ZP.CSW+1
sta GP.VECTOUT+1
lda ZP.CSW
sta GP.VECTOUT
phx
ldx #3
.1 lda ZP.CSW,x
sta GP.VECTOUT,x
dex
bpl .1
plx
pla
BS.SetCSWKSW2VDOS
pha
lda GP.VDOSO
sta ZP.CSW
lda GP.VDOSO+1
sta ZP.CSW+1
lda GP.VDOSI
sta ZP.KSW
lda GP.VDOSI+1
sta ZP.KSW+1
phx
ldx #3
.1 lda GP.VDOSO,x
sta ZP.CSW,x
dex
bpl .1
plx
pla
rts
*--------------------------------------
@ -118,15 +124,19 @@ BS.IO.IN bit GP.EXECACTV
beq .5
cmp #$FF
bne L9AEB
bne BS.SaveCSWKSW
* lda ZP.PROMPT
* >DEBUG
txa
beq BS.IO.IN.BS
lda #$88
jsr MON.COUT
lda #$A0
jsr MON.COUT
lda #$88
bra L9AEB
bra BS.IO.IN.BS
.5 jsr BS.SaveAXY
sta IO.LINEBUF,x
@ -138,13 +148,13 @@ BS.CheckDOSCMD jsr BS.DOSCMD
bcs BS.ERROUT
ldy GP.PREGY
lda #$88
ldx #$00
beq L9AEB
BS.IO.IN.BS lda #$88
bra BS.SaveCSWKSW
L9AE8 jsr BS.RestoreAXY
L9AEB jmp BS.SaveCSWKSW
bra BS.SaveCSWKSW
*--------------------------------------
BS.NODEVERR lda #$03
@ -228,7 +238,7 @@ L9B86 bit GP.EXECACTV
bmi BS.IO.IN.EXEC
lda ZP.PROMPT
cmp #$DD
cmp #"]"
beq L9B58
jsr BS.ResetCSWKSW
@ -240,7 +250,7 @@ L9B94 lda GP.PREGA
bne L9BAC
lda ZP.PROMPT
cmp #$BE
cmp #">"
beq L9BAA
txa
@ -251,7 +261,7 @@ L9BAC jmp BS.SaveCSWKSW
*--------------------------------------
BS.IO.IN.EXEC sta (ZP.BASL),y
lda ZP.PROMPT
cmp #$BE
cmp #">"
beq L9BF2
lda IO.KBD
@ -301,7 +311,7 @@ L9C01 ldx #$00
ldy ZP.CH
bne L9C0E
lda #$DD
lda #"]"
sta ZP.PROMPT
lda #$88
rts
@ -312,7 +322,7 @@ L9C0E lda (ZP.BASL),y
L9C13 jmp BS.ERROUT
*--------------------------------------
BS.IO.IN.FILE lda ZP.PROMPT
cmp #$DD
cmp #"]"
bne L9C1F
jmp L9B58
@ -331,7 +341,7 @@ L9C31 lda ZP.PROMPT
bit GP.DIRFLG
bmi L9C95
cmp #$BE
cmp #">"
beq L9C42
jsr L9C67
@ -387,7 +397,7 @@ L9C8E lda #$8D
ldy GP.PREGY
clc
rts
*--------------------------------------
L9C95 cmp #$BE
beq L9C8E
@ -740,8 +750,8 @@ X9F00 bne BS.AS.KW0 SELF MODIFIED
BS.AS.KW0
BS.AS.KW.IF
BS.AS.KW.PRINT
sta ZP.PROMPT
sta GP.CHRLAST
stz ZP.PROMPT
stz GP.CHRLAST
lda #BS.VSYSO
sta GP.VSYSO
lda /BS.VSYSO

View File

@ -243,6 +243,7 @@ BS.PRODOSTYPES.ASC
.AS -"S16ADBASPAWPPASTXTBINDIRCMDINTIVRBASVARRELSYS"
BS.MONTHS .AS -"JANFEBMARAPRMAYJUNJULAUGSEPOCTNOVDEC"
BS.NODATE .AS -"<NO DATE>"
*--------------------------------------
BS.MLIERTBL .DA #$28
.DA #$2B
.DA #$40
@ -262,6 +263,7 @@ BS.MLIERTBL .DA #$28
.DA #$50
.DA #$53
.DA #$56
*--------------------------------------
BS.BIERRTBL .DA #$03
.DA #$04
.DA #$10
@ -281,6 +283,7 @@ BS.BIERRTBL .DA #$03
.DA #$14
.DA #$0B
.DA #$0C
*--------------------------------------
BS.ERRCODES .DA #$08
.DA #$54
.DA #$5B
@ -301,6 +304,7 @@ BS.ERRCODES .DA #$08
.DA #$D9
.DA #$E1
.DA #$EC
*--------------------------------------
BS.TBL6 .DA #$F3
.DA #$C1
.DA #$C3
@ -333,6 +337,7 @@ BS.TBL6 .DA #$F3
.DA #$A9
.DA #$AE
.DA #$BA
*--------------------------------------
BS.TBL7 .DA #$2A
.DA #$05
.DA #$0A
@ -588,16 +593,17 @@ BS.TBL7 .DA #$2A
.DA #$A0
.DA #$54
.DA #$9F
*--------------------------------------
XBBB5 .BS 2
XBBB7 .BS 1
XBBB8 .BS 1
*--------------------------------------
BS.IsIntCmdMTR ldy #$02
LBBBB lda BS.CMDBUF,y
cmp BS.MTR,y
bne LBBCF
dey
bpl LBBBB

View File

@ -341,7 +341,7 @@ CS.END
OptionList .AS "CRcr"
OptionVars .DA #bContinue,#bRecurse,#bContinue,#bRecurse
*--------------------------------------
MSG.USAGE .AS "Usage : CHTYP auxtype [File *,? wildcards allowed]\r\n"
MSG.USAGE .AS "Usage : CHAUX auxtype [File *,? wildcards allowed]\r\n"
.AS " auxtype : 12345 (Decimal word) ,xABCD (Hexadecimal word)\r\n"
.AS " -C : Continue on error\r\n"
.AZ " -R : Recurse subdirectories\r\n"

View File

@ -221,7 +221,7 @@ SYS.SScanF .EQ $4E
* .EQ $52
* .EQ $54
* .EQ $56
* PRODOS
SYS.Online .EQ $58
SYS.ChTyp .EQ $5A
SYS.ChAux .EQ $5C

View File

@ -228,6 +228,7 @@ CIFS.ReadDir.Send
.1 lda #'*'
sta (ZPReqPtr),y
iny
lda #0
sta (ZPReqPtr),y
iny
@ -1053,11 +1054,14 @@ CIFS.Remove >STYA pPath resolved path
jsr PutBytePtr2
jsr AppendPathPtr2
jsr AddYReqLen
tya
inc +1 for BufferFormat
inc +1 for \0
jsr Add2ByteCount
ldy ByteCountOfs
sta (ZPReqPtr),y
jsr SetReqLen
@ -1136,7 +1140,9 @@ CIFS.Rename >STYA pPath resolved src path
tya
inc +1 for BufferFormat
inc +1 for \0
jsr Add2ByteCount
ldy ByteCountOfs
sta (ZPReqPtr),y
jsr SetReqLen

View File

@ -10,8 +10,9 @@ NEW
.INB inc/kernel.i
.INB inc/mli.e.i
.INB inc/eth.i
.INB inc/libtcpip.i
.INB inc/net.tcpip.i
.INB inc/net.smb.i
.INB inc/libtcpip.i
*--------------------------------------
.DUMMY
.OR ZPLIB
@ -290,10 +291,13 @@ CIFS.SessionSetup
jsr ReqSetupPtr2
ldy #0
ldx #0
.3 lda SMB.SessionSetup.Guest,x
jsr PutBytePtr2
iny
inx
cpx #SMB.SessionSetup.Guest.Len
bne .3
@ -302,11 +306,14 @@ CIFS.SessionSetup
.4 lda SMB.SessionSetup.T,x
jsr PutBytePtr2
iny
inx
cpx #SMB.SessionSetup.T.Len
bne .4
jsr Add2ByteCount
tya
ldy ByteCountOfs
sta (ZPReqPtr),y
jsr SetReqLen
@ -403,15 +410,22 @@ CIFS.TreeConnect
jsr AppendPathPtr2
jsr AddYReqLenPtr2
iny + \0 from password
ldx #0
.4 lda SMB.TreeConnect.T,x
jsr PutBytePtr2
iny
inx
cpx #SMB.TreeConnect.T.Len
bne .4
tya
ldy ByteCountOfs
sta (ZPReqPtr),y
jsr SetReqLen
ldy #4 hSocket

View File

@ -854,7 +854,7 @@ SKT.Recv clc
bcs .91
.90 lda #E.NODATA
plp
.91 plp
sec
rts
@ -910,7 +910,7 @@ SKT.Recv clc
.9 rts
.99 lda #ERR.SKT.BAD
.91 plp
plp
sec
rts
*/--------------------------------------

View File

@ -227,7 +227,7 @@ TCP.IN.JMP.ESTBLSH
jsr TCP.AddAYToSktCacheAtX
jsr SKT.StoreTCB update socket
bra .7
* bra .7
.70 jsr TCP.SetSocketTCPO.ACK ...and ack data

View File

@ -1,13 +1,23 @@
NEW
AUTO 3,1
*--------------------------------------
*/--------------------------------------
* # Online
* Get ProDOS Volume Info
* ## C
* `int online(short int volid, void *buf);`
* ## ASM
* `>PUSHB volid`
* `>PUSHW buf`
* `>SYSCALL Online`
* ## RETURN VALUE
*\--------------------------------------
K.Online >PULLW K.MLI.PARAMS+2
>PULLB K.MLI.PARAMS+1
>MLICALL MLIONLINE
rts
*/--------------------------------------
* # ChTyp
* Change The type of a ProDOS File
* Change Type of a ProDOS File
* ## C
* `int chtyp(const char *filepath, short int filetype);`
* ## ASM
@ -26,12 +36,12 @@ K.ChTyp jsr PFT.CheckPath1
bra PRODOS.SFIRET2
*/--------------------------------------
* # ChAux
* Change The type of a ProDOS File
* Change AuxType of a ProDOS File
* ## C
* `int chaux(const char *filepath, int auxtype);`
* ## ASM
* `>PUSHW filepath`
* `>PUSHB filetype`
* `>PUSHW auxtype`
* `>SYSCALL ChAux`
* ## RETURN VALUE
*\--------------------------------------