Does anyone know how to send a file over a serial port on Linux? I cannot for the life of me figure out how to send an Intel Hex file to Small Computer Monitor on my RC2014.

Copying-and-pasting into picocom or screen doesn't work (stops sending after like 1/4 the data), configuring the port and using cat file > /dev/ttyUSB0 doesn't work (breaks the serial connection and requires restarting the RC2014, and yes I triple-checked the baud and parameters and everything), and picocom's “Send File” feature only works over x/zmodem or similar. Trying picocom noninteractively like picocom [args & stuff] < file also doesn't work.

This is getting really irritating at this point.

@nytpu I believe @vertigo wrote a program to get around the serial buffer issues you're running into, iirc

@djsundog @nytpu You are referring to this: github.com/sam-falvo/RC2014-mi

If you're using 8086 Consultant's RS232/USB adapter modules for serial communications, be aware that Linux device drivers for the chip used in those modules do not support hardware handshaking, and thus, both Linux and the RC2014 see the connection as always free to transmit.

The software I wrote requires MBASIC under CP/M to run, because I haven't bothered to translate it to native Z80 code yet. But, if you could translate it (I'm unlikely to get to it because of time constraints imposed from work), it might be useful for you.

Of course, there is a chicken and egg problem here. This protocol requires software on both Linux and the Z80 side, so getting the data into the Z80 in the first place is going to be somewhat of a challenge.

Also, the software above is written specifically for WBW BIOS, which has a 32-byte FIFO in software. This is the critical point of failure for me. I don't know what SCM uses, if it even depends on any kind of BIOS in the first place. So, even my software might not work for your needs.

This is unabashedly a design defect. But, since so many people building RC2014s use Windows, and the Windows drivers appears to support hardware handshakes, I doubt this will be resolved any time soon.

Follow

@djsundog @nytpu If it's helpful, the end effect of my protocol is to send a file at about 100 bytes per second, at 8 bytes at a time using explicit handshakes. If you could somehow convince PicoTerm to send data at 100 bytes per second, then that might be slow enough for SCM to handle the data being sent to it even without relying on flow control.

@vertigo @djsundog At this point I'm just giving up and waiting for my EEPROMs and burner to arrive. I was hoping that SCM would make it easier to test and debug but I guess not since I can't even get the program into it in the first place. For rapid testing I guess I'll try to rig up this RC2024 emulator: github.com/EtchedPixels/RC2014

Sign in to participate in the conversation
hackers.town

A bunch of technomancers in the fediverse. Keep it fairly clean please. This arcology is for all who wash up upon it's digital shore.