Showing posts with label model 100 file transfer concept. Show all posts
Showing posts with label model 100 file transfer concept. Show all posts

Wednesday, January 3, 2007

Minimal binary file transfer (concept)

From a recent email:

I've been thinking about how to make an absolutely minimal Model 100 file transfer application which requires no client but can transfer a binary file. Basically the idea would be that on the laptop you type

RUN"COM:98N1E"

which accepts and runs a very small program BASIC program that pokes in ML. Real short, fast... just enough code to read in and append raw binary blocks to a RAM file from the COM port and calculate a checksum as it goes. No flow control, the PC side is tuned to send packets at a fixed
rate that the laptop can sustain. No retransmissions supported... at the end of the transfer the decision is made to either keep the saved file or delete it depending on the checksum match. By and large there should be no errors on a local link.

This sidesteps the whole issue of not having a client on the laptop. Since there is no user interface there would be very few dependencies on the ROM so it could be made cross-platform.

On the PC side I would have a really short (probably 20 lines of Perl) command line program that computes the checksums, sends the canned BASIC code and the file. There is a cross-platform serial API for Perl that would work on both Linux and Windows.

The upload to PC would work similarly... RUN"COM:98N1E" on the laptop, and launch the desktop program... it downloads a short BASIC/ML program that can upload one (or all) files from the RAM file system to the desktop.

Comments?