diff --git a/.Floppies/A2OSX.BOOTHD.woz b/.Floppies/A2OSX.BOOTHD.woz index 007788c8..b9b10a07 100644 Binary files a/.Floppies/A2OSX.BOOTHD.woz and b/.Floppies/A2OSX.BOOTHD.woz differ diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index f4859d46..3f8b1e37 100644 Binary files a/.Floppies/A2OSX.BUILD.po and b/.Floppies/A2OSX.BUILD.po differ diff --git a/.Floppies/A2OSX.TEST.po b/.Floppies/A2OSX.TEST.po index 90d35782..7bdb09b7 100644 Binary files a/.Floppies/A2OSX.TEST.po and b/.Floppies/A2OSX.TEST.po differ diff --git a/BIN/ATBROWSE.S.txt b/BIN/ATBROWSE.S.txt index da375a24..8eeef00a 100644 --- a/BIN/ATBROWSE.S.txt +++ b/BIN/ATBROWSE.S.txt @@ -28,8 +28,8 @@ CS.START cld .DA 0 .DA CS.END-CS.START CS .DA DS.END-DS.START DS - .DA #64 SS - .DA #4 ZP + .DA #64 Stack Size + .DA #ZS.END-ZS.START Zero Page Size .DA 0 *-------------------------------------- * Relocation Table diff --git a/BIN/ATLOGON.S.txt b/BIN/ATLOGON.S.txt index 6f2014eb..5a5707d0 100644 --- a/BIN/ATLOGON.S.txt +++ b/BIN/ATLOGON.S.txt @@ -30,9 +30,10 @@ CS.START cld .DA #$61 6502,Level 1 (65c02) .DA #1 BIN Layout Version 1 .DA 0 - .DA CS.END-CS.START Code Length To Relocate - .DA 0 Data Segment to Allocate - .DA 0 + .DA CS.END-CS.START CS + .DA DS.END-DS.START DS + .DA #64 Stack Size + .DA #ZS.END-ZS.START Zero Page Size .DA 0 *-------------------------------------- * Relocation Table @@ -264,9 +265,9 @@ CS.QUIT lda hReplyBuf CS.END MSG.NOATK .AZ "AppleTalk Not Loaded." MSG.ATKERR .AZ "AppleTalk Call %h, ERR:%H\r\n" -MSG.GETINFO .AS "Network/Node:$%h%h/$%h\r\n" - .AS "Bridge : $%h\r\n" - .AZ "HWID/ROMVER :$%h%h/$%h\r\n" +MSG.GETINFO .AS "Network/Node:%h%h/%h\r\n" + .AS "Bridge : %h\r\n" + .AZ "HWID/ROMVER :%h%h/%h\r\n" MSG.USAGE .AZ "Usage : ATLOGON [USER] [PASSWORD]" *-------------------------------------- .DUMMY diff --git a/LIB/LIBBLKDEV.S.D2.txt b/LIB/LIBBLKDEV.S.D2.txt index b15d7fec..fa7fad99 100644 --- a/LIB/LIBBLKDEV.S.D2.txt +++ b/LIB/LIBBLKDEV.S.D2.txt @@ -83,11 +83,8 @@ D2MoveHead.SEI ldx Slotn0 cmp MoveTo beq .8 - sta IO.D2.Ph0Off,x - nop - nop sta IO.D2.Ph0Off,y - + sta IO.D2.Ph0Off,x bcs .2 * Current < Target, must move in @@ -136,10 +133,7 @@ D2MoveHead.SEI ldx Slotn0 .4 tay sta IO.D2.Ph0On,x - nop - nop sta IO.D2.Ph0On,y - lda #IO.D2.SeekTimeF jsr D2.Wait100usecA @@ -147,10 +141,8 @@ D2MoveHead.SEI ldx Slotn0 .8 jsr D2.Wait25600usec - sta IO.D2.Ph0Off,x - nop - nop sta IO.D2.Ph0Off,y + sta IO.D2.Ph0Off,x rts *-------------------------------------- D2.Wait25600usec @@ -512,7 +504,14 @@ D2WriteTrackPtr2 jsr $200 + bcs .9 + plp + clc + rts + +.9 plp + sec rts *-------------------------------------- MAN diff --git a/LIB/LIBBLKDEV.S.txt b/LIB/LIBBLKDEV.S.txt index 629c4c1b..e750e057 100644 --- a/LIB/LIBBLKDEV.S.txt +++ b/LIB/LIBBLKDEV.S.txt @@ -333,9 +333,9 @@ TrkWriter.Start lda IO.D2.ReadProt,x lda (ZPPtr1),y iny - bne .10 no chance this happens because mem blocks are $FFF0 aligned.... - - inc ZPPtr1+1 + +* bne .10 no chance this happens because mem blocks are $FFF0 aligned.... +* inc ZPPtr1+1 .10 cmp #$80 if CC, it is a sync byte ora #$80 make sure Bit7 high @@ -367,6 +367,7 @@ TrkWriter.Start lda IO.D2.ReadProt,x nop (2) Sync 40us byte : add 8 cycles nop (2) nop (2) + bra .1 (3) * 32us Byte,same page : 5+2 (beq failed) +2+2+5+4+2+3 (bne succeeded) + 2 +2 + 3 (bcs succeeded) = 32 @@ -379,6 +380,7 @@ TrkWriter.Start lda IO.D2.ReadProt,x nop (2) Sync 40us byte : add 8 cycles nop (2) nop (2) + bra .1 (3) .8 pha (3) make sure 32us elapsed before switching to read mode (beq(3)+pha(3)=beq(2)+cmp(2)+ora(2)) diff --git a/LIB/LIBCIFS.S.txt b/LIB/LIBCIFS.S.txt index 5328cbf7..c8f83485 100644 --- a/LIB/LIBCIFS.S.txt +++ b/LIB/LIBCIFS.S.txt @@ -15,13 +15,10 @@ NEW .DUMMY .OR ZPLIB ZS.START -hSocket .BS 1 -hReq .BS 1 ZPReqPtr .BS 2 ZPReqLen .BS 2 ZPCtxPtr .BS 2 -hResp .BS 1 ZPRespPtr .BS 2 ZPPtr1 .BS 2 @@ -83,10 +80,8 @@ LIB.LOAD >LDYA L.LIBTCPIP >SYSCALL GetMem bcs .9 - >STYA ZPReqPtr stx hReq - * clc .9 rts *-------------------------------------- @@ -137,7 +132,6 @@ CIFS.Negotiate lda (pStack) ldx #LIBTCPIP.Recv jsr GO.LIBTCPIP - bcc .3 cmp #E.NODATA @@ -153,6 +147,9 @@ CIFS.Negotiate lda (pStack) ldy #3 lda (ZPRespPtr),y + clc + adc #4 + NETBIOS header + sta ZPPtr1 tay lda #0 @@ -161,10 +158,7 @@ CIFS.Negotiate lda (pStack) >STYA ZPCtxPtr - ldy #3 - lda (ZPRespPtr),y - - tay + ldy ZPPtr1 .4 dey lda (ZPRespPtr),y @@ -172,6 +166,9 @@ CIFS.Negotiate lda (pStack) tya bne .4 + ldy #S.NETBIOS+S.SMB.H.FLAGS + sta (ZPCtxPtr),y + phx lda hResp @@ -187,8 +184,7 @@ CIFS.Negotiate lda (pStack) .98 lda #MLI.E.IO -.99 >POP 2 - rts +.99 >RET 2 *-------------------------------------- * >PUSHB hSocket * >PUSHB hSMBContext @@ -205,10 +201,14 @@ CIFS.SessionSetup .10 dec sta (pStack) - + ldy #5 hSMBContext jsr GetSMBCtx + lda hReq + >SYSCALL GetMemPtr + >STYA ZPReqPtr + ldx #S.SMB.H.CMD.SESSION.SETUP.ANDX ldy #0 @@ -257,7 +257,7 @@ CIFS.SessionSetup pla - jsr GetReqLenYAtA + jsr SetReqLenYAtA >PUSHYA >PUSHW ZPReqPtr @@ -314,12 +314,11 @@ CIFS.SessionSetup .98 lda #MLI.E.IO sec -.99 >POP 7 - rts +.99 >RET 7 *-------------------------------------- * >PUSHB hSocket * >PUSHB hSMBContext -* >PUSHW path +* >PUSHW pathname * >PUSHB 0 * >LIBCALL TreeConnect * (SMBContext updated with TID) @@ -335,6 +334,17 @@ CIFS.TreeConnect ldy #3 hSMBContext jsr GetSMBCtx + lda hReq + >SYSCALL GetMemPtr + >STYA ZPReqPtr + + ldy #1 pathname + lda (pStack),y + sta ZPPtr1 + iny + lda (pStack),y + sta ZPPtr1+1 + ldx #S.SMB.H.CMD.TREE.CONNECT.ANDX ldy #0 @@ -367,13 +377,6 @@ CIFS.TreeConnect sta (ZPReqPtr),y PASSWORD = "\0" iny - ldy #1 - lda (pStack),y - sta ZPPtr1 - iny - lda (pStack),y - sta ZPPtr1+1 - .3 lda (ZPPtr1) inc ZPPtr1 bne .31 @@ -396,7 +399,7 @@ CIFS.TreeConnect pla - jsr GetReqLenYAtA + jsr SetReqLenYAtA >PUSHYA >PUSHW ZPReqPtr @@ -452,8 +455,7 @@ CIFS.TreeConnect .98 lda #MLI.E.IO sec -.99 >POP 5 - rts +.99 >RET 5 *-------------------------------------- CIFS.Mount *-------------------------------------- @@ -517,16 +519,19 @@ GetSMBCtx lda (pStack),y * Y = LEN from S.NETBIOS.TYPE * A = Ptr to LEN Word *-------------------------------------- -GetReqLenYAtA sty ZPReqLen +SetReqLenYAtA sty ZPReqLen stz ZPReqLen+1 + sta ZPPtr1 pha tya dec dec + sec + sbc ZPPtr1 ply - + sta (ZPReqPtr),y iny lda #0 @@ -543,14 +548,7 @@ GetReqLenYAtA sty ZPReqLen dey sta (ZPReqPtr),y - lda ZPReqLen - clc - adc #S.TCP - tay - - lda ZPReqLen+1 - adc /S.TCP - + >LDYA ZPReqLen rts *-------------------------------------- GetRespData sta hResp @@ -573,6 +571,9 @@ CS.END LIBTCPIP .AZ "libtcpip" hLIBTCPIP .BS 1 aLIBTCPIP .BS 2 +hSocket .BS 1 +hReq .BS 1 +hResp .BS 1 *-------------------------------------- SMB.TRANSPORT .DA #0 DIRECT TCP TRANSPORT .DA #0 24 BITS LENGTH @@ -623,14 +624,14 @@ SMB.SessionSetup.H .DA 2 MAX MPX COUNT .HS 0000 VC NUMBER .HS 00000000 SESSION KEY - .DA 0 CI PASS LEN - .DA 0 CS PASS LEN + .DA 0 CI PASS LEN (ANSI) + .DA 0 CS PASS LEN (UNICODE) .HS 00000000 .HS 00000000 CAPABILITIES SMB.SessionSetup.H.Len .EQ *-SMB.SessionSetup.H * .BS 2 ByteCount SMB.SessionSetup.Guest - .AZ "" Password +* .AZ "" Password .AZ "Guest" Account Name .AZ "?" Primary Domain SMB.SessionSetup.Guest.Len .EQ *-SMB.SessionSetup.Guest diff --git a/ProDOS.FX/ProDOS.S.XRW.txt b/ProDOS.FX/ProDOS.S.XRW.txt index 45c80f4f..02cb3491 100644 --- a/ProDOS.FX/ProDOS.S.XRW.txt +++ b/ProDOS.FX/ProDOS.S.XRW.txt @@ -59,7 +59,7 @@ L59BD lda bloknml ldy #$05 -.1 asl +.1 asl rol XRW.ReqTrack dey bne .1 @@ -307,7 +307,7 @@ L596F ldy #$FF index to last byte of data to write. XRW.SectorIO lda #2 sta XRW.RecalibrateCnt sta XRW.BadSeek - + jsr XRW.DEBUG bit XRW.bWrite bpl .1 @@ -386,9 +386,9 @@ XRW.SectorIO lda #2 .LIST ON XRW.Write lda IO.D2.ReadProt,x PREWRITE MODE .LIST OFF - + lda IO.D2.ReadMode,x - + lda nbuf2 sta pcl @@ -521,10 +521,11 @@ wrefd5 ldx #$60 (2) restore slot. warning: modified by prenib clc (2) -* jsr XRW.Write.RTS (6+6) + jsr XRW.Write.RTS (6+6) * lda #$FF (2) -* nop (2) + nop (2) + nop (2) * jsr wnibl (15,6) write turn off byte. @@ -710,7 +711,7 @@ XRW.Read.RTS rts *-------------------------------------- XRW.Seek ldx XRW.UnitIndex pha save target track - + jsr XRW.Trk2Qtrk sta XRW.TargetQTrack @@ -729,16 +730,12 @@ XRW.Seek ldx XRW.UnitIndex cmp XRW.TargetQTrack beq .8 - sta IO.D2.Ph0Off,x - nop - nop sta IO.D2.Ph0Off,y - nop - nop + sta IO.D2.Ph0Off,x bcs .2 * Current < Target, must move in - + inc .HS B0 BCS @@ -760,7 +757,7 @@ XRW.Seek ldx XRW.UnitIndex bcs .3 * Current < Target, must move in - + inc .HS B0 BCS @@ -779,27 +776,21 @@ XRW.Seek ldx XRW.UnitIndex phx tax pla - + .4 tay - + sta IO.D2.Ph0On,x - nop - nop + lda $C0EC sta IO.D2.Ph0On,y - nop - nop + lda $C0EC jsr XRW.WaitSeekTime - + bra .1 .8 jsr XRW.Wait25600usec - sta IO.D2.Ph0Off,x - nop - nop sta IO.D2.Ph0Off,y - nop - nop + sta IO.D2.Ph0Off,x rts *-------------------------------------- XRW.WaitSeekTime @@ -810,7 +801,7 @@ XRW.Wait25600usec lda #0 XRW.Wait100usecA phx - + .1 ldx #18 (2) .2 dex (2) @@ -903,7 +894,7 @@ XRW.ReadAddr ldy #$FC eor #$DE bne .99 - + ldy XRW.UnitIndex lda XRW.AddrField.V sta XRW.D2VolNum-1,y @@ -949,6 +940,47 @@ XRW.TestWP ldx A2L rol write protect-->carry-->bit 0=1 lda IO.D2.RData,x keep in read mode rts +*-------------------------------------- +XRW.DEBUG sta CLRPAGE2 + lda #"R" + bit XRW.bWrite + bpl .1 + + lda #"W" + +.1 sta $723 + + lda XRW.ReqTrack + pha + lsr + lsr + lsr + lsr + jsr .7 + sta $724 + pla + jsr .7 + sta $725 + + lda XRW.ReqSector + pha + lsr + lsr + lsr + lsr + jsr .7 + sta $726 + pla + jsr .7 + sta $727 + rts + +.7 and #$0F + ora #$B0 + cmp #"9"+1 + bcc .8 + adc #6 +.8 rts *-------------------------------------- .LIST ON XRW.FREE .EQ $D540-* diff --git a/SBIN/CIFSD.S.txt b/SBIN/CIFSD.S.txt index 0a519126..2b0c5e67 100644 --- a/SBIN/CIFSD.S.txt +++ b/SBIN/CIFSD.S.txt @@ -22,13 +22,9 @@ TIMEOUT.MAX .EQ 250 25 sec. ZS.START ZPIPCfgPtr .BS 2 hSocket .BS 1 -hResp .BS 1 -ZPRespPtr .BS 2 TimeOut .BS 1 hSMBContext .BS 1 hMount .BS 1 -ZPPtr1 .BS 2 -ZPPtr2 .BS 2 ZS.END .ED *-------------------------------------- * File Header (16 Bytes) @@ -53,15 +49,10 @@ CS.START cld .DA CS.QUIT L.LIBTCPIP .DA LIBTCPIP L.LIBCIFS .DA LIBCIFS -L.MSG.TCPIPERR .DA MSG.TCPIPERR L.MSG.USAGE .DA MSG.USAGE +L.MSG.TCPIPERR .DA MSG.TCPIPERR L.MSG.UNKNOWN .DA MSG.UNKNOWN -L.MSG.SESSION .DA MSG.SESSION -L.SMB.NegReq .DA SMB.NegReq -L.SMB.SessSetup .DA SMB.SessSetup -L.SMB.TreeConnReq .DA SMB.TreeConnReq -L.SMB.QueryPathInfo .DA SMB.QueryPathInfo -L.SMB.FindFirstReq .DA SMB.FindFirstReq +L.MSG.CONNECTED .DA MSG.CONNECTED .DA 0 *-------------------------------------- * Called once at process creation @@ -108,7 +99,7 @@ CS.RUN lda hSocket bcs .9 sta hSMBContext - >DEBUG + >PUSHB hSocket >PUSHB hSMBContext >PUSHWI 0 @@ -224,12 +215,13 @@ CS.RUN.CheckArgs >SYSCALL ArgV clc +CS.RUN.CheckArgs.RTS rts *-------------------------------------- CS.RUN.Connect >PUSHBI 0 no protocol lda #S.SOCKET.T.SEQPKT >LIBCALL hLIBTCPIP,LIBTCPIP.Socket - bcs .9 + bcs CS.RUN.CheckArgs.RTS sta hSocket @@ -266,188 +258,14 @@ CS.RUN.Connect >PUSHBI 0 no protocol .7 >SYSCALL Freemem -.8 clc - -.9 rts -*-------------------------------------- -CS.RUN.Negotiate - lda #TIMEOUT.MAX - sta TimeOut - -.1 >PUSHWI SMB.NegReq.end-SMB.NegReq - >PUSHW L.SMB.NegReq - lda hSocket - >LIBCALL hLIBTCPIP,LIBTCPIP.Send - bcc .2 - - >SLEEP - ldx TimeOut - bne .1 - - bra .99 - -.2 >SLEEP - - lda hSocket - >LIBCALL hLIBTCPIP,LIBTCPIP.Recv - bcc .3 - - cmp #E.NODATA - beq .2 - - bra .99 - -.3 sta hResp - >SYSCALL GetMemPtr - >STYA ZPRespPtr - - ldy #$3f - lda (ZPRespPtr),y - bne .9 - - ldy #$5B - lda (ZPRespPtr),y - cmp #5 - bne .9 - - - lda hResp - >SYSCALL FreeMem -* clc - rts - -.9 lda hResp - >SYSCALL FreeMem - -.99 lda #MLI.E.INVPATH - sec - rts -*-------------------------------------- -CS.RUN.SessSetup - lda #TIMEOUT.MAX - sta TimeOut - -.1 >PUSHWI SMB.SessSetup.end-SMB.SessSetup - >PUSHW L.SMB.SessSetup - lda hSocket - >LIBCALL hLIBTCPIP,LIBTCPIP.Send - bcc .2 - - >SLEEP - ldx TimeOut - bne .1 - - bra .99 - -.2 >SLEEP - - lda hSocket - >LIBCALL hLIBTCPIP,LIBTCPIP.Recv - bcc .3 - - cmp #E.NODATA - beq .2 - - bra .99 - -.3 sta hResp - >SYSCALL GetMemPtr - >STYA ZPRespPtr - - ldy #$3f - lda (ZPRespPtr),y - bne .9 - - ldy #$56 - lda (ZPRespPtr),y - sta SMB.TreeConnReq.UID - iny - lda (ZPRespPtr),y - sta SMB.TreeConnReq.UID+1 - - >PUSHW L.MSG.SESSION - lda #$63 - clc - adc ZPRespPtr - tay - lda #0 - adc ZPRespPtr+1 +.8 >PUSHW L.MSG.CONNECTED + lda #1 + >SYSCALL ArgV >PUSHYA - >PUSHBI 2 >SYSCALL PrintF - lda hResp - >SYSCALL FreeMem -* clc - rts - -.9 lda hResp - >SYSCALL FreeMem - -.99 lda #MLI.E.INVPATH - sec - rts -*-------------------------------------- -CS.RUN.TreeConn lda #TIMEOUT.MAX - sta TimeOut - -.1 >PUSHWI SMB.TreeConnReq.end-SMB.TreeConnReq - >PUSHW L.SMB.TreeConnReq - lda hSocket - >LIBCALL hLIBTCPIP,LIBTCPIP.Send - bcc .2 - - >SLEEP - ldx TimeOut - bne .1 - - bra .99 - -.2 >SLEEP - - lda hSocket - >LIBCALL hLIBTCPIP,LIBTCPIP.Recv - bcc .3 - - cmp #E.NODATA - beq .2 - - bra .99 - -.3 sta hResp - >SYSCALL GetMemPtr - >STYA ZPRespPtr - - ldy #$3f - lda (ZPRespPtr),y - bne .9 - - ldy #$52 - lda (ZPRespPtr),y - sta SMB.FindFirstReq.TID - iny - lda (ZPRespPtr),y - sta SMB.FindFirstReq.TID+1 - - ldy #$56 - lda (ZPRespPtr),y - sta SMB.FindFirstReq.UID - iny - lda (ZPRespPtr),y - sta SMB.FindFirstReq.UID+1 - - lda hResp - >SYSCALL FreeMem -* clc - rts - -.9 lda hResp - >SYSCALL FreeMem - -.99 lda #MLI.E.INVPATH - sec - rts +.9 rts *-------------------------------------- CS.DOEVENT lda (pEvent) bpl .9 is it a TIMER event? @@ -459,9 +277,6 @@ CS.DOEVENT lda (pEvent) .9 sec do not discard TIMER event rts *-------------------------------------- -* Called once, when RUN exited with CS -* Put code for unloading LIB here -*-------------------------------------- CS.QUIT lda hMount beq .1 @@ -493,231 +308,10 @@ LIBTCPIP .AZ "libtcpip" hLIBTCPIP .BS 1 LIBCIFS .AZ "libcifs" hLIBCIFS .BS 1 -MSG.TCPIPERR .AZ "CIFSD:TCP/IP Not initialized properly." MSG.USAGE .AZ "Usage : CIFSD sharename mountpoint" +MSG.TCPIPERR .AZ "CIFSD:TCP/IP Not initialized properly." MSG.UNKNOWN .AZ "CIFSD:%s: Unknown host\r\n" -MSG.SESSION .AZ "CIFSD:Connected to: %s\r\n" -*-------------------------------------- -SMB.NegReq .DA #0 DIRECT TCP TRANSPORT - .DA #0 24 BITS LENGTH - .DA /SMB.NegReq.end-1-* - .DA #SMB.NegReq.end-1-* - .DA #$FF - .AS "SMB" - .DA #S.SMB.H.CMD.NEGOTIATE - .HS 00000000 - .DA #0 S.SMB.H.FLAGS - .DA S.SMB.H.FLAGS2.LONGNAMES - .DA 0 PIDHI - .HS 0000000000000000 SECFEAT - .DA 0 RSVD - .DA $FFFF TID - .DA $FEFF PIDLO - .DA 0 UID - .DA 0 MID - - .DA #0 WORD COUNT - - .DA #SMB.NegReq.end-2-* - .DA /SMB.NegReq.end-2-* - - .DA #2 - .AZ "PC NETWORK PROGRAM 1.0" - .DA #2 - .AZ "LANMAN1.0" - .DA #2 - .AZ "Windows for Workgroups 3.1a" - .DA #2 - .AZ "LM1.2X002" - .DA #2 - .AZ "LANMAN2.1" - .DA #2 - .AZ "NT LM 0.12" - .DA #2 - .AZ "SMB 2.002" - .DA #2 - .AZ "SMB 2.???" -SMB.NegReq.end .EQ * -*-------------------------------------- -SMB.SessSetup .DA #0 DIRECT TCP TRANSPORT - .DA #0 24 BITS LENGTH - .DA /SMB.SessSetup.end-1-* - .DA #SMB.SessSetup.end-1-* - .DA #$FF - .AS "SMB" - .DA #S.SMB.H.CMD.SESSION.SETUP.ANDX - .HS 00000000 - .DA #0 S.SMB.H.FLAGS - .DA S.SMB.H.FLAGS2.LONGNAMES - .DA 0 PIDHI - .HS 0000000000000000 SECFEAT - .DA 0 RSVD - .DA $FFFF TID - .DA $FEFF PIDLO - .DA 0 UID - .DA 0 MID - - .DA #13 WORD COUNT - - .HS FF000000 NO MORE CMD - .DA 1280 MAX BUFFER - .DA 2 MAX MPX COUNT - .HS 0000 VC NUMBER - .HS 00000000 SESSION KEY - .DA 0 CI PASS LEN - .DA 0 CS PASS LEN - .HS 00000000 - .HS 00000000 CAPABILITIES - - .DA #SMB.SessSetup.end-2-* - .DA /SMB.SessSetup.end-2-* - -* .AZ "" Password - .AZ "Guest" Account Name - .AZ "?" Primary Domain - .AZ "A2osX" Native OS - .AZ "A2osX-CIFSD" Native LANMAN -SMB.SessSetup.end .EQ * -*-------------------------------------- -SMB.TreeConnReq .DA #0 DIRECT TCP TRANSPORT - .DA #0 24 BITS LENGTH - .DA /SMB.TreeConnReq.end-1-* - .DA #SMB.TreeConnReq.end-1-* - .DA #$FF - .AS "SMB" - .DA #S.SMB.H.CMD.TREE.CONNECT.ANDX - .HS 00000000 - .DA #0 S.SMB.H.FLAGS - .DA S.SMB.H.FLAGS2.LONGNAMES - .DA 0 PIDHI - .HS 0000000000000000 SECFEAT - .DA 0 RSVD -SMB.TreeConnReq.TID - .DA $FFFF TID - .DA $FEFF PIDLO -SMB.TreeConnReq.UID - .DA 0 UID - .DA 0 MID - - .DA #4 WORD COUNT - .HS FF000000 NO MORE CMD - .DA 0 - .DA 1 PASSWORD LEN - - .DA #SMB.TreeConnReq.end-2-* - .DA /SMB.TreeConnReq.end-2-* - - .AZ "" PASSWORD - .AZ "_temp" PATH - .AZ "?????" -SMB.TreeConnReq.end .EQ * -*-------------------------------------- -* https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-cifs/9b171bbf-c6d8-4c88-ac85-23c795cbb5d3 -*-------------------------------------- -SMB.QueryPathInfo - .DA #0 DIRECT TCP TRANSPORT - .DA #0 24 BITS LENGTH - .DA /SMB.QueryPathInfo.end-1-* - .DA #SMB.QueryPathInfo.end-1-* - .DA #$FF - .AS "SMB" - .DA #S.SMB.H.CMD.TRANSACTION2 - .HS 00000000 - .DA #0 S.SMB.H.FLAGS - .DA S.SMB.H.FLAGS2.LONGNAMES - .DA 0 PIDHI - .HS 0000000000000000 SECFEAT - .DA 0 RSVD -SMB.QueryPathInfo.TID - .DA $FFFF TID - .DA $FEFF PIDLO -SMB.QueryPathInfo.UID - .DA 0 UID - .DA 0 MID -* Trans2 - .DA #15 WORD COUNT - .DA SMB.QueryPathInfo.PrmCnt TotalParamCount - .DA 0 TotalDataCount - .DA 10 MaxParameterCount - .DA 460 MaxDataCount - .DA #1 MaxSetupCount - .HS 00 Reserved1 - .DA 0 Flags - .HS 00000000 Timeout - .HS 0000 Reserved2 - .DA SMB.QueryPathInfo.PrmCnt ParameterCount - .DA 66 ParameterOffset - .HS 0000 DataCount - .HS 0000 DataOffset - - .DA #1 SetupCount - .HS 00 Reserved3 -* TRANS2_QUERY_PATH_INFORMATION - .DA 5 TRANS2_QUERY_PATH_INFORMATION - - .DA SMB.QueryPathInfo.PrmCnt+1 INCLUDING Padding byte below - .HS 00 Padding - -SMB.QueryPathInfo.Prm - .DA $0001 InformationLevel - .HS 00000000 SearchStorageType - .AZ "server.met" FileName -SMB.QueryPathInfo.PrmCnt .EQ *-SMB.QueryPathInfo.Prm -SMB.QueryPathInfo.end -*-------------------------------------- -SMB.FindFirstReq - .DA #0 DIRECT TCP TRANSPORT - .DA #0 24 BITS LENGTH - .DA /SMB.FindFirstReq.end-1-* - .DA #SMB.FindFirstReq.end-1-* - .DA #$FF - .AS "SMB" - .DA #S.SMB.H.CMD.TRANSACTION2 - .HS 00000000 - .DA #0 S.SMB.H.FLAGS - .DA S.SMB.H.FLAGS2.LONGNAMES - .DA 0 PIDHI - .HS 0000000000000000 SECFEAT - .DA 0 RSVD -SMB.FindFirstReq.TID - .DA $FFFF TID - .DA $FEFF PIDLO -SMB.FindFirstReq.UID - .DA 0 UID - .DA 0 MID -* Trans2 - .DA #15 WORD COUNT - .DA SMB.FindFirstReq.PrmCnt TotalParamCount - .DA 0 TotalDataCount - .DA 10 MaxParameterCount - .DA 460 MaxDataCount - .DA #1 MaxSetupCount - .HS 00 Reserved1 - .DA 0 Flags - .HS 00000000 Timeout - .HS 0000 Reserved2 - .DA SMB.FindFirstReq.PrmCnt ParameterCount - .DA 66 ParameterOffset - .HS 0000 DataCount - .HS 0000 DataOffset - - .DA #1 SetupCount - .HS 00 Reserved3 -* FIND_FIRST2 - .DA 1 TRANS2_FIND_FIRST2 - - .DA SMB.FindFirstReq.PrmCnt+1 INCLUDING Padding byte below - .HS 00 Padding - -SMB.FindFirstReq.Prm - .DA $0016 SearchAttributes - .DA 1024 SearchCount - .DA 3 Flags - .DA $0001 InformationLevel - .HS 00000000 SearchStorageType - .AZ "\*.*" FileName -SMB.FindFirstReq.PrmCnt .EQ *-SMB.FindFirstReq.Prm -SMB.FindFirstReq.end +MSG.CONNECTED .AZ "CIFSD:Connected to: %s\r\n" *-------------------------------------- .DUMMY .OR 0