Ethernet options?

Started by nikoniko, June 22, 2007, 10:09 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

nikoniko

Other than the Lantronix serial-to-ethernet devices, what ethernet options are available in 128 mode? I'm wondering if RR-Net through Retro Replay would work, since I believe the Retro Replay's registers still map into 128 memory even though the cartridge's functions only work in 64 mode.

nikoniko

Frustrated with the precious few options available for ethernet on the 128, it occured to me today that there might be a relatively inexpensive (albeit inelegant) approach that builds upon software and hardware that a number of enthusiasts already have.

I believe several of you use or have used 64HDD, and as I was reading through the docs recently there was a bit about connecting 64HDD to a network share that caught my eye, and I thought, "Ah ha! Here we have the beginning's of a poor man's ethernet solution."

Roughly:

When the 128 wishes to request something from or send something to the internet, it will open a file on the network share and write its instructions there. It could actually be several files comprising packets of information. Software on the networked computer would monitor the share for new files, read each request, and act on the instructions accordingly, or reply with an error. If it needed to fetch something from the net, it would do so and write a new file or files containing the data requested. Or if something was being sent to the net, it would do so and write the response to the share to be retrieved by the 128. Filenames would be generated algorithmically, so the 128 would always know what files to be expecting and could poll until they exist. The networked PC would only post full files or packets to the share directory, so one wouldn't have to worry about the 128 trying to read them before all the data is there. Of course, some sort of CRC would also be necessary to ensure reliable transmissions both ways.

The networked computer could handle all the nitty gritty of TCP/IP and all that, translating and directing the 128's requests appropriately, and only sending back to the 128 information that's going to be meaningful. If you were doing web browsing, you might want the PC to clean up the HTML a bit (eg. strip out Javascript, do PETSCII conversion, etc) rather than making the 128 deal with it all. Or translate the HTML to a more compact, easier to process format. The PC could handle SSL with ease, so one could even access secure pages. The 128 wouldn't need to know anything about SSL itself, though you could implement some sort of encryption between the 128 and the share if you're worried about security. Presumably you'd be behind a firewall providing some protection, but you can never be too careful.

One nice thing is that this could work with any system that Networking for DOS can connect to, so the network share and proxy could even be on Mac or Linux using appropriate drivers. Also, any Commodore computer compatible with 64HDD could use the technique, so not only 128 users, but 64, VIC-20 and C16/+4 users could take advantage of it. Though I don't really care about the 64 users since they've already had a number of ethernet options for a while now. :P

Anyway, it's 2:30AM here and this probably makes little sense. I'm sure I've left things out, mixed things up, and made a general mess of my description, but regardless I'll put the general idea of using the 64HDD for networking out there and see what people think and what ideas you have for how it could (or why it couldn't... or shouldn't) be done.

MachineDr

Quote from: nikonikoOther than the Lantronix serial-to-ethernet devices, what ethernet options are available in 128 mode? I'm wondering if RR-Net through Retro Replay would work, since I believe the Retro Replay's registers still map into 128 memory even though the cartridge's functions only work in 64 mode.
I spoke w/ Dragos earlier this week and he told me that Ethernet was available BUT didn't go into detail about how it was done.

Maybe he will see this and chime in, if not I suggest you drop him a message and ask him to elaborate on the subject. He seemed VERY knowledgeable about what hardware is available AND what hardware is under development. Anpther plus is that he was just at te C=Expo in Chicago within the last two weeks and probably has seen the latest generation of C= Hardware and prototypes.

-Jim

airship

I can run 64HDD in DOS and network in a separate shell. All I've tried is ping, but it works. I suppose you could write an interface that would treat it as just another serial device...

How hard would it be to tell the C128 to assign device 2 to the serial bus? Then you could just use the built-in RS232 ops with any comm program.
Serving up content-free posts on the Interwebs since 1983.
History of INFO Magazine

nikoniko

Well, the idea is to allow the 128 to do more than just run a text shell over an existing comm program, which can already be done easily with a modem or a Lantronix interface.

airship

Grr... lost my post! Try again:

I think you misunderstood me. I really think we're on the same page, nikoniko. Here's what I had in mind:

(a) a wedge on the C128 side that would map device 2 to the serial bus and emulate all the RS232 stuff. It could use appropriate Kernal routines and zero page locations, of course.
(b) a driver for 64HDD that would make the network connection available as device 2.

It would run as fast as a 1541. I'm not sure what that baud rate would be? But 64HDD also supports fast serial transfers, which would make it as fast as a 1571.
Serving up content-free posts on the Interwebs since 1983.
History of INFO Magazine