CIFS implementation for the Apple IIGS using Marinetti TCP/IP stack
Go to file
Christopher Shepherd 27a6288355 add some screenshots
2015-05-25 02:06:42 -04:00
bin/.AppleDouble first commit for github 2015-05-09 15:40:04 -04:00
Library first commit for github 2015-05-09 15:40:04 -04:00
reference/libtinysmb first commit for github 2015-05-09 15:40:04 -04:00
screenshots add some screenshots 2015-05-25 02:06:42 -04:00
src SMB_Read_ANDX works; We read and display a file now. 2015-05-25 01:26:05 -04:00
latest_tcpdump.txt documentation etc update 2015-05-25 01:41:48 -04:00
README.md SMB_Read_ANDX works; We read and display a file now. 2015-05-25 01:26:05 -04:00
testfile documentation etc update 2015-05-25 01:41:48 -04:00

CIFS / SMB1 navel gazing, in 65816 assembly.

5/26/2015 - Current status: Connects on port 445, completes Protocol Negotiation, successfully sends login (on Setup_ANDX message), obsolete LM (DES) style password. Sends successful Tree_ANDX message, thus connecting to a remote share. Sends Open_ANDX message, successfully opening a file. Sends Read_ANDX message, successfully reading a file and displaying its contents.

Build 'CMD.S' with Merlin32 and the included Library directory.

Whatever, play along, but no apologies for lack of optimization and style yet. You'll see I don't dynamically allocate some things I should. At the moment I'm more interested in digging through tcpdumps and making things act right.

You'll see I'm just trying to copy the 'libtinysmb' portion of libogc from the Nintendo Wii because it's pretty easy to follow. It is in the 'reference' folder for you to check out. Also if you haven't yet, read all of http://www.ubiqx.org/cifs/SMB.html ... There, now you know exactly as much as me (probably more, I'm old and I forget things, I've probably forgotten it already).

Oh and we're only working with port 445 (naked SMB over TCP) at the moment. port 139 NBT is really not much harder, but at the moment is just another thing to do for potentially better compatibility(?)

As you can see, the hope here is to make 'SMBDEMO' S16 program connect to a CIFS server, mount a share, and maybe download a file. Only then do we worry about fancier things (breaking CIFS into its own library, making a FST, figuring out how much federal and state tax we owe on $2500).

I mostly only hack on weekends, but can test and merge all week long.

If this is not your style, fork it or start over, but at least try.

Oh and the .AppleDouble files are because I build to an AppleShare target. Then I boot up the IIGS and double-click to run it.