On Tue, 14 Mar 2023, Steve Lewis wrote:
I'm probing two DB25 connectors on the old IBM
5110 to figure out how to
programmatically jiggle some pins and get some serial IO going. I've
This is easy since it is an I/O bus. The instructions are GETB, PUTB, STAT
and CTRL. In any case the corresponding control line is asserted.
This means, a PUTB will put the device address on the X/Y lines, the data
byte onto the Bus Out lines, and assert Put Strobe.
Oh yes, one interesting thing to note: the STAT instruction (usually to
get some status information from the device) will put the register
*number* onto the Bus Out lines. I think IBM did this to be able to select
one from several status bytes. They do this with the Printer Adapter, and
in a completely different and idiotic way with the Diskette Adapter.
I had analysed the bus protocol many years ago, the result can be found
here in the section "External Bus":
http://computermuseum.informatik.uni-stuttgart.de/dev/ibm_5110/technik/en/i…
it wrap around on the screen, instead of actually
scrolling the screen (the
display circuit apparently has no scrolling, you have to DIY).
No, the display circuitry just displays memory addresses $200-$5FF (normal
mode) or $000-$1FF (register display). It can't do anything else.
I've also written a kind of
"synthesizer" to toy around with the timing of
its speaker. It's a video I'll be working on after the "domesticating the
The "problem" with the speaker: it's a "self-beeping" device, i.e.
it
beeps with voltage applied. So you can't use any form of PWM or the like
to have other frequencies. I've tried that with no success.
Christian