Hi Klemens,
Re:
We have working copies of these games: Keep on
Drivin', Pong, Hacman
and Space Invaders run on our hp 2648 with a 8080 processor, and we
also have a version of Pong for hp 2644 with 8008 processor. Naturally
we saved them on our ftp-server. I never tried to load them via the
serial line, but would be interested to do that, because the cassettes
IIRC, we simply did the equivalent of "cat space.oct" or "cat
pong.oct".
(It was from MPE, so it was probably: FCOPY FROM=space.oct;to=
)
I noticed in your README you mentioned overflowing the terminal at serial
speeds ... that's solved by using enq/ack pacing, a strap you can enable
on HP terminals (also called "flow control").
It's been awhile since I've used it, but I found a writeup here:
http://docs2.attachmate.com/verastream/vhi/7.1/en/index.jsp?topic=%2Fcom.at…
And, from Robelle's website at
http://www.robelle.com/smugbook/network.html we see:
ENQ/ACK is a proprietary method of flow control used on
Classic MPE V systems and is still built-in to most HP terminals
and enabled by default. The transmitter sends an ENQ (Enquiry, decimal 5,
Control-E) every 80 characters (or so). When the receiver is ready
for more data, it replies with an ACK (Acknowledge, decimal 6, Control-F).
If there is no reply in 10 seconds, MPE V resumes printing printing (Term Type 10).
If you disable ENQ/ACK on your terminal, you will see output interspersed with pauses.
MPE/iX and HP-UX normally use XON/XOFF Flow Control instead of ENQ/ACK.
So...you could have a little C program that loops:
while data left > 0
if >= 80 bytes then
write 80 bytes of data
write an ENQ (decimal 5)
read, waiting for an ACK (decimal 6)
(preferably with a timeout of a second or two, in case ENQ/ACK
isn't enabled on the terminal)
else
write remaining data
Stan