OSX Serial terminal program
Posted: Sat Jun 22, 2019 3:12 am
I started using using Serial as a terminal program on OSX as a console for my 65C02 SBC boards some time ago. I like the simple interface, easy configuration and high function that it provides. It also supports Xmodem and other serial data transfer protocols, which I've also written into my Monitor. However, I recently added an (Xmodem) upload function to my Monitor and found some odd funtion with Serial. The odd function being that Serial didn't appear to release the port (back to use as a console) after the transfer was completed. My Monitor shows a file transfer competed or error message based on the completion, but the message was never showing up. In short, Serial was simply ignoring input after the transfer. After completed, if I hit a key on the keyboard, it would come back and function normally.
I also alerted Decisive Tactics (author of Serial) (https://www.decisivetactics.com/products/serial/) about this odd behavior and they did respond, but to date no new updates have been made available. So I decided to perform some additional testing and found out what was going on... unfortunately, no easy workaround.
In short, Serial completes the Xmodem receive and then prompts the user (dialogue box) for a filename to save the data to. During the time you fill out the filename and optional path information, any data sent to Serial via the serial port is simply ignored/lost. Once the the filename is entered and finished, Serial once again starts listening to the serial port. As a workaround, I simply added a 15 seconds delay after the EOT and ACK (which completes the transfer) and so long as the filename entry is completed before the delay ends, I get the complete message from my Monitor program.
I have sent their support group a new email detailing the problem in hopes that they will fix this issue. A simple recommended fix would be to prompt for the filename before receiving the data, while an optional fix would be to buffer any received data once the transfer is complete and the user is entering the filename. I'm hoping they fix it in a future release so I can remove the band-aid!
I also alerted Decisive Tactics (author of Serial) (https://www.decisivetactics.com/products/serial/) about this odd behavior and they did respond, but to date no new updates have been made available. So I decided to perform some additional testing and found out what was going on... unfortunately, no easy workaround.
In short, Serial completes the Xmodem receive and then prompts the user (dialogue box) for a filename to save the data to. During the time you fill out the filename and optional path information, any data sent to Serial via the serial port is simply ignored/lost. Once the the filename is entered and finished, Serial once again starts listening to the serial port. As a workaround, I simply added a 15 seconds delay after the EOT and ACK (which completes the transfer) and so long as the filename entry is completed before the delay ends, I get the complete message from my Monitor program.
I have sent their support group a new email detailing the problem in hopes that they will fix this issue. A simple recommended fix would be to prompt for the filename before receiving the data, while an optional fix would be to buffer any received data once the transfer is complete and the user is entering the filename. I'm hoping they fix it in a future release so I can remove the band-aid!