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/index.html

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

Reply via email to