I have an old DOS (yes, DOS) laptop that I want to use in a project. I want to have two-way communication, but the ONLY port this thing has is a ps/2 port.
I can find lots of info on sending chars TO the PC, but I can't find anything on sending characters OUT the port to my micro. Is there a register I can POKE, an interrupt I need to call?
I have QBasic on the laptop, so I can PEEK and POKE as necessary.
Any advice is greatly appreciated.
Didn't find your answer? Ask the community — no account required.
D
David Eather
The keyboard has very little output capacity but you can send a code out to light the number lock, caps lock and scroll lock leds. Look those up might find some information for you. There was also a hobbyist made usb password dongle on the web. If you can find it, it has information on what codes (and a little of how) are sent. The usb thing is just an interface the registers to poke and peek will be the same. Ideally you should use the serial port.
J
Jasen Betts
the port doesn't communicate in characters it commnicates in bytes, if you haven't got a copy of RBIL yet, get one.
IIRC this is covered in PORTS.TXT
There were things you could do on some keyboards that would crash GW-BASIC, I don't recall if QBASIC was also succeptible,
It it possible you will need to write an ISR, so youd'd need something stronger. I know "Turbo C 2.0" is a free download from Embacadero after registration. or DJGPP if you have a 386
I've seen any number of sites that say you CAN send characters, and that describe the protocol for communicating, but none of them talk about the how-to's from the pc side.
Believe it or not, this laptop only has one i/o port: the ps/2 port. No serial, no lpt.
I will do some searching on the blinking lights thing, though. Thanks.
R
Randy Day
[snip]
Oo! Interesting! There is indeed a section on the 804x keyboard controller.
I'd be ecstatic if all I had to do was check a status bit, drop a byte into
60h, and have the controller handle the actual signalling. Can it really be that simple? Time to fire up the 'scope!
What kind of laptop has no serial port or parallel port, or PCMCIA slot for such an interface?
For that matter, what kind of laptop doesn't have any of that, but has a PS/2 port? The PS/2 port is used for a keyboard, and I can't think of any laptop from back then that had the port for an external keyboard, that sort of thing came only when USB started becomiing the norm. Or PS/2 is used for connecting a mouse, but a DOS laptop isn't likely to have much use for a mouse to have the port, and before mice were standard, often other interfaces were used (like serial port, and a card the expansion bus).
It seems most likely you think you have a ps/2 port but likely it's something else.
If the laptop has a parallel port, back then the parallel port was generally one way, except it had a bunch of status lines to read from the printer, so one could do an odd two-way communcation through a parallel port, there was a whole "standard" for this. If it's serial, then you just communicate over it, everything's in place.
Michael
W
whit3rd
Probably a contracted model that just acts a a terminal to a bar-code scanner. That kind of setup was pretty common for a few years, for inventory and warehouse folk to hang on their necks.
R
Randy Day
It does have 2 pcmcia slots, but I'm not going to spend money on cards or time on finding drivers. The port only has to transmit a few command bytes to the micro once in a while, so emulating a kbd is more than adequate.
The brand may give you a clue to its age: "Digital".
The port does work with an external keyboard, and there's a mouse symbol as well as a kbd symbol next to it, so I assume it can do double duty.
is
No, it works with a keyboard. The machine does have an integrated trackball, but I've never tried to test that.
Now, *maybe* the unit ran an early version of Windows, but it's got DOS loaded, and even navigating menus in QBasic shows some lag, so I don't think it was a speed demon even in its day.
However, the display (320x240!) is flawless, and the unit does a mean spreadsheet, so I'd like to repurpose it; it'd make a good console for a logic analyzer or other uC project.