• Please review our updated Terms and Rules here

8 bit isa lava parallel card in vintage ibm5155

Hugo Holden

Veteran Member
Joined
Dec 23, 2015
Messages
4,724
Location
Australia
Hello,

I have fitted an 8 bit ISA LAVA bidirectional parallel card to my IBM5155. I want to read 8 bit data into the computer for use in some BASIC computer programs. I have set the card to LPT1 and when I write to the address &H378 (for example with the Basic command OUT &H378,X where X is some number 0 to 255) the output works fine with the correct binary values on pins 2 to pins 9 of the parallel connector on the card, so the output side of things works fine.

Then when I put the card into "input mode" by writing to bit 5 of the register &H37A (with the Basic command OUT &H37A,32 ) the connector pins for the 8 data bits appear to go into a high impedance state and I can apply +5V or ground to any of them without the pins drawing any significant current. So all that is what it appears it should be.....

However when I apply some binary values to those 8 bit inputs on the connector, and go to read them and print them to the screen with the Basic command PRINT INP (&H378) the value returned to the screen is 255, regardless of the value on the 8 bits of the connector pins 2 to 9 (or D0 to D7). It is as though the connector pins in some way are not coupled with the register I'm reading, or is there another register I should be reading ?
Thanks for any help with this problem. (PS the card has the correct jumper settings for bidirectional operation and LPT1 jumper selected)
 
Unless you or someone has modified the 5155 parallel card to be bi-directional, the card will be unidirectional only. Modification is pretty simple--usually just involves a cut and jumper on the card.

Not all cards can be so modified, however. Which card do you have?
 
Unless you or someone has modified the 5155 parallel card to be bi-directional, the card will be unidirectional only. Modification is pretty simple--usually just involves a cut and jumper on the card.

Not all cards can be so modified, however. Which card do you have?

Hello,

I have fitted an 8 bit ISA LAVA bidirectional parallel card to my IBM5155....(PS the card has the correct jumper settings for bidirectional operation and LPT1 jumper selected)
Chuck,
It appears you did not read his entire post.
 
The IBM parallel port has a self-test feature. When in output-only mode, you should be able to read back the written value.

The way this was originally done on on the IBM parallel port was to use a latch for output (74LS374) and an octal driver (74LS244) to read those same pins and gate them back on a read operation. The various output control signals, such as /STROBE are managed through a 74LS174 hex latch, while the status signals from the printer (/PAPER OUT) are handled by a 74LS240 octal line driver. Aside from the port address decoding, you can't get much simpler than that.

Around 1985 or so, I was playing with interfacing GPIB (HPIB, IEEE-488 ) devices with the parallel port. I could get an HP plotter to work, but that's a write-only device. I had access to an HP voltmeter, but no way to get the reading back in. Obviously, the printer port needed to be (just like the Victor 9000 parallel port) bidirectional. On the 5150 tech ref schematic for the parallel printer adapter, I noticed a very peculiar thing--all 6 inputs to the 74LS174 were shown, but only 5 outputs! A look at the board showed that the bit 5 output went nowhere. So, if I lifted pin 1 of the LS374 (/OE), which was hard-wired to ground, and connected it to the unused 6th bit output of the LS174, I could control the direction of the parallel port. It worked--and then I did the same change to the printer port on the monochrome display adapter--and it worked also. Curiously, when the PS/2 came out, the ports worked exactly the same way.

I suspect that this was a change independently discovered by several people. At any rate, my original notes on this are probably buried deep in the SIMTEL archives. I recall that someone in the late 80s dug it up and mentioned it in Nuts and Volts and I responded with a letter that essentially said "that's my baby!" which was published.

So--now you know how it should work. I suspect that something isn't working with your line receivers (the LS244 in my example)--you should be able to read what you've written to the output port in "normal" mode.

Of course, we now have "modern" PCs that have dropped the most useful GPIO interface of the PC era. A USB parallel adapter isn't quite the same...
 
Hello again, his is the 8 bit bidirectional Lava card I am trying, It was the only bidirectional card I could easily find:

http://www.cablesonline.com/lavparbidisa.html

I gave some thought to making a custom 8 bit input card, with an address decoder and some tri-state buffers, but the Lava card promised to do the job. But there must be something about it I don't understand yet.

Thank you for the help.
 
If your card is fitted to slot 8, try a different slot.

Good Lord, how did you know that ? I switched the Lava card to slot 5 (where the original IBM parallel printer card was) & performed the tests , its working fine now.
On my computer Slot 8 was the only empty slot because Slot 1 is the CGA card, slot 2 a Six Pac Plus card, Slot 3 a serial card, slot 4 a 256K memory add on card, Slot 5 the original unidirectional parallel (printer) card, slot 6 the hard disk card (my computer has a 40Mb vintage Seagate Hard drive (loaded with DOS 3.3, & Windows v1.0) and slot 7 is the floppy controller card (it has a dual 3.5/5.25 floppy unit). Leaving only slot 8 "free". So I plugged the new Lava card into slot 8, like you suspected.

What is it about slot 8 that causes this problem ?.... and can I plug the original standard IBM parallel output only card into slot 8 and expect it would work normally. I could always remove the serial card to free slot 3 (which I had been using to "mouse windows") because the six pac plus card has another serial input which should work with the mouse.

I'm very grateful for your help.
Hugo.
 
Good Lord, how did you know that ?
I know the IBM 51xx series well. Based on the symptoms (write good, read bad), the 'slot 8' issue was a likely cause.

What is it about slot 8 that causes this problem ? .... and can I plug the original standard IBM parallel output only card into slot 8 and expect it would work normally.
See [here].

That web site (www.minuszerodegrees.net) has additional information about the 5155 that you may find useful.
 
Hardware modifications:

Hardware modifications:

Good Lord, how did you know that ? I switched the Lava card to slot 5 (where the original IBM parallel printer card was) & performed the tests , its working fine now.
On my computer Slot 8 was the only empty slot because Slot 1 is the CGA card, slot 2 a Six Pac Plus card, Slot 3 a serial card, slot 4 a 256K memory add on card, Slot 5 the original unidirectional parallel (printer) card, slot 6 the hard disk card (my computer has a 40Mb vintage Seagate Hard drive (loaded with DOS 3.3, & Windows v1.0) and slot 7 is the floppy controller card (it has a dual 3.5/5.25 floppy unit). Leaving only slot 8 "free". So I plugged the new Lava card into slot 8, like you suspected.

What is it about slot 8 that causes this problem ?.... and can I plug the original standard IBM parallel output only card into slot 8 and expect it would work normally. I could always remove the serial card to free slot 3 (which I had been using to "mouse windows") because the six pac plus card has another serial input which should work with the mouse.

I'm very grateful for your help.
Hugo.

A further note based in the suggestions by mbbrutman, Chuck(G) and modem7; I had a good look at the circuit tracks on the original parallel card in the computer, which I think is probably the original IBM card it came with: Pin 1 of the 74LS374 passes to a track with a via and a short section of track to ground. Pin 15 of the 74LS174 has a track which passes to a via right beside the first via mentioned. So it is clear that the board was intended to be modified by cutting the small earth link track and joining the two nearby vias thereby connecting pin 1 of the '374 to pin 15 of the '174. Also I put the scope on pin 15 of the '174 and indeed it goes high if I enter OUT &H37A,32 which is the usual command to put the port control register into "input mode" and it goes low again with OUT &H37A,0 This extra information is very helpful. Thank you again.
 
The original IBM card was designed as a uni-directional card, but the bi-directional modification is pretty easy to do. The page I linked you to is for the PCjr parallel port adapter, but the IBM adapter modification is similar; just follow the traces and make the same changes. (The PCjr modification was based on the PC modification.)
 
Hardware modifications:

Hardware modifications:

Good Lord, how did you know that ? I switched the Lava card to slot 5 (where the original IBM parallel printer card was) & performed the tests , its working fine now.
On my computer Slot 8 was the only empty slot because Slot 1 is the CGA card, slot 2 a Six Pac Plus card, Slot 3 a serial card, slot 4 a 256K memory add on card, Slot 5 the original unidirectional parallel (printer) card, slot 6 the hard disk card (my computer has a 40Mb vintage Seagate Hard drive (loaded with DOS 3.3, & Windows v1.0) and slot 7 is the floppy controller card (it has a dual 3.5/5.25 floppy unit). Leaving only slot 8 "free". So I plugged the new Lava card into slot 8, like you suspected.

What is it about slot 8 that causes this problem ?.... and can I plug the original standard IBM parallel output only card into slot 8 and expect it would work normally. I could always remove the serial card to free slot 3 (which I had been using to "mouse windows") because the six pac plus card has another serial input which should work with the mouse.

I'm very grateful for your help.
Hugo.

A further note based in the suggestions by mbbrutman, Chuck(G) and modem7; I had a good look at the circuit tracks on the original parallel card in the computer, which I think is probably the original IBM card it came with: Pin 1 of the 74LS374 passes to a track with a via and a short section of track to ground. Pin 15 of the 74LS174 has a track which passes to a via right beside the first via mentioned. So it is clear that the board was intended to be modified by cutting the small earth link track and joining the two nearby vias thereby connecting pin 1 of the '374 to pin 15 of the '174. Also I put the scope on pin 15 of the '174 and indeed it goes high if I enter OUT &H37A,32 which is the usual command to put the port control register into "input mode" and it goes low again with OUT &H37A,0 This extra information is very helpful. Thank you again.
 
Hi again,
There is an interesting twist......I performed the hardware mod on the IBM card, works like a dream, all 8 bits of data easy to input now. However the Lava card (at least the one I have) is a different story. When I first tested it, after the "slot 8 problem" was solved, I only checked it for function on the least significant 4 bits. It turns out that the upper 4 bits are not working as inputs (return a value of 0 regardless of the inputs). To be sure I wasn't getting any spurious effects I grounded each input pin close to the connector and took it high with a clean +5V supply and a 150R current limiting resistor, in case the port got into output mode,on each bit to be tested.
Curiously, at one point testing the Lava card, it swapped around, the lower 4 bits stopped working and the upper 4 started working. Looking at the chips in it, one is the 74ALS244 octal buffer, but it has separate control lines for each nibble, these are pin 1 and 19 and on the pcb these connect to a 74LS125. So clearly on the card it can choose to do different things with each group of 4 bits. So I'm investigating to find out why, the card may have been damaged by static electricity, possibly, I don't know its exact history. If I do find out what is wrong with it I will post it.
 
Last edited:
This is the original parallel card from my computer. And modified to be bidirectional it works perfectly. I need a separate input and output 8 bit port for my project so I would dearly like to get an identical one to this, link to card image: http://worldphaco.com/uploads/CardWanted.pdf
(I seem to prefer vintage PCB's/cards with through hole parts!)
 
Back
Top