Re: An S-100 Board to convert IBM PC keyboard data to parallel ASCII
- From: Allison@xxxxxxxxxxxxx
- Date: Sun, 03 Jan 2010 09:00:23 -0500
On Sat, 2 Jan 2010 23:41:59 -0800 (PST), monahanz
<monahan@xxxxxxxxxxxx> wrote:
An S-100 Board to convert IBM PC keyboard data to parallel ASCII
Many S-100 users have/had some kind of ASCII style parallel port
keyboard attached to their system. The interface was just a simple 8
bit parallel input port with a second port single strobe bit. Most of
these keyboards came from old mini computer systems or simple CRT
terminals. Today they are now quite difficult to find. If there are
any parallel port keyboards on eBAY etc. from Atari systems and the
like, they are usually not in ASCII format but instead deliver key
press data in X,Y coordinates etc. Today almost all PC systems
interface the user via an IBM PC (AT) type keyboard. This is in fact
may be the single most lasting effect the IBM PC has had on the PC
business in the past 30 years.
However the IBM keyboard does not return data to the computer via a
parallel port. Instead it does so in a more sophisticated manner via a
bidirectional serial communication mode. Each key returns its own
(single or multiple 8 bit code) which is different on the key down and
up strokes. It also depends on the status of the Ctrl, Num, Alt and
other keys.
I wanted a way to get simple ASCII code from the keyboard.
Over the years many have tackled this challenge in various ways to
hammer an ASCII code out of these keyboards. Some use elegant single
chip CPU/IO chips, others various TTL logic chips. I decide to tackle
the problem head on by using the age old Z80 CPU, RAM/ROM and a few
Zilog PIO's. (They cost next to nothing these days). This not only
allows one to completely control the data sent from each and every key
combination simply (lookup tables), but the keys can be dynamic,
function keys can return varying strings depending on the application
etc. I chose the Z80 because almost everybody in the S-100 bus world
knows the opcodes and can easily program a simple common 2716 EPROM or
the like, for their own specific applications/desires. They can test
and modify my code under CPM and in general play around with the
system.
I put together an S-100 prototype board that is described here:-
http://s100computers.com/My%20System%20Pages/IBM%20Keyboard/IBM%20Keyboard.htm
It has been working daily now for 6 months.
With Andrew Lynch (see http://n8vem-sbc.pbworks.com/) we have designed
and are about to fabricate a few commercial style S-100 boards. Fun
stuff, but not for everybody!
BTW, we are also doing another run of the IDE S-100 board.
Great work,
This problem has been solved before by many typically using Atmega or
PIC cpus to go from the ps2 keyboard to a parallel or serial port.
This solution is nice in that you get to keep your existing keyboard
port and the cost (pic, support and a tiny board) is far lower than
the cost of a full sized s100 board. The last time I did it the
code it came right off the net (one of the PIC sites).
For those that do not wnat a whole board in the system your software
could easily be integrated into a BIOS and save hardware.
Allison
.
- References:
- Prev by Date: An S-100 Board to convert IBM PC keyboard data to parallel ASCII
- Next by Date: SBC FERGUSON BIGBOARD 1 - Help Request
- Previous by thread: An S-100 Board to convert IBM PC keyboard data to parallel ASCII
- Next by thread: SBC FERGUSON BIGBOARD 1 - Help Request
- Index(es):
Relevant Pages
|