• Please review our updated Terms and Rules here

Serial COM1 problems on an IBM AT

SteveG

Experienced Member
Joined
Sep 30, 2020
Messages
176
Location
Millmeece Near Stafford UK
I have a working serial interface board that interfaces to a serial mouse on an IBM XT PC where it works well.

When I move this board into my IBM AT PC it fails to see the mouse.

I have run various serial port tests on COM1 (CHECKIT, SERTEST, COMTEST) and various versions of DOS 2, 3.1 etc. and they all pass the internal tests but fail the loop back tests.

I have purchased a new SERIAL & PARALLEL adaptor and it has the same problem.

I HAVE RUN OUT OF IDEAS CAN ANYONE HELP !
 
Steve,

The thing that I would check first would be interrupt clashes with other devices within the machine.

Dave
 
Failing a loopback could simply be handshaking lines not set correctly. You know the serial card is ok; you know the computer is ok; and as far as dos is concerned the serial routines are in the bios so you can be confident they're ok. That leaves handshaking and interrupts as Dave suggests. Try a comms program such as Telix, Procomm or Teraterm, with hankshaking turned off? I used to run a TSR called COMBIOS which gave much better control of the serial port and also provided a receive buffer.
 
Last edited:
I HAVE RUN OUT OF IDEAS CAN ANYONE HELP !
I see two symptoms:
#1. A {serial card + mouse + mouse aware software} that works in an IBM XT, but the identical combination does not work in an IBM AT.
#2. Failure of diagnostic loopback tests.

Those two symptoms can have different causes. For example, faulty/incorrect loopback connector. We should not assume that they are related.

I have a working serial interface board that interfaces to a serial mouse on an IBM XT PC where it works well.
When I move this board into my IBM AT PC it fails to see the mouse.
I have run various serial port tests on COM1 (CHECKIT, SERTEST, COMTEST) and various versions of DOS 2, 3.1 etc. and they all pass the internal tests but fail the loop back tests.
I am the author of SERTEST.

It doesn't make sense to me that {internal tests = pass, external loopback tests = pass} when the 'serial interface board' is in the IBM XT, but {internal tests = pass, external loopback tests = fail} when the same card is in the IBM AT.

1. So, are you saying that the external loopback tests only fail when the 'serial interface board' is in the IBM AT, or are you saying that the external loopback tests always fail (i.e. in both IBM XT and IBM AT) ?

2. In using SERTEST, are all five of the subtests of the external loopback test failing, or just, say, one ?

I have purchased a new SERIAL & PARALLEL adaptor and it has the same problem.
3. Only one of the above two symptoms that I listed above, or both ?


1720609991148.png
 
NB. The External loop back test on the XT passes most of the tests.

It’s on another working serial card. I think my loopback plug does not loop all the lines which explains the two FAIL’s:-

1720616466652.jpeg
 
NB. The External loop back test on the XT passes most of the tests.

It’s on another working serial card. I think my loopback plug does not loop all the lines which explains the two FAIL’s:-
Also, when using serial diagnostics, keep in mind that some RS-232 serial ports are not what might be called 'standard' ports. For example, the optional serial port on the second release of the VCF XT-IDE card. That port is intended for accessing a 'serial drive', and consequently, the DTR, DSR, RI, and DCD lines, were not implemented. Not needed.

And there may be cards where a level-converter chip has failed, and the connected serial device is still working, because that device does not require the affected handshaking line to be operational.
 
The loop back plug is 25 way but a 9 way to 25 way adaptor is used to connect to the COM 1 mouse port.

The photo below shows the loop back plug connected to a 25 way COM1 serial port which also fails on my AT.

See photo:-

1720675441175.jpeg
 
The photo below shows the loop back plug connected to a 25 way COM1 serial port which also fails on my AT.
That does not look like a loopback plug to me.
That looks just like pass-though monitoring devices that I have: All lines from one connector go to the other (pass-though), with LED's monitoring the state of some of the lines.

A loopback plug only needs one connector - it is not passing signals/data to another device.
Professional serial loopback plugs looks like those shown in the photo below, which are the plugs supplied in a Micro 2000 diagnostic kit that I have.
A handmade serial loopback plug is shown at [here].

1720678005380.png
 
I have used a Multi Meter to check my loop back plug:-

Shorted are 2-3 4-5 6-20 15-17

NB. The 2 25 Way ends are not used to pass through a signal they are to allow you to loop back on either a male or female 25 way connector.

See photo:-

1720684229080.jpeg
 
NB. The 2 25 Way ends are not used to pass through a signal they are to allow you to loop back on either a male or female 25 way connector.
Now that the photo is in focus, I see "LOOPBACK". I have never seen a loopback plug like that before.

I have used a Multi Meter to check my loop back plug:-
Shorted are 2-3 4-5 6-20 15-17
That explains failure of the 'DTR to RI' and 'DTR to CD' loopback subtests in SERTEST, and loopback failure in CheckIt.

Whilst I had the MICRO 2000 loopback plugs out, I quickly metered them, and saw a minor difference to what CheckIt and SERTEST use.
 
I am beginning to suspect the BIOS on the AT.
Some background info:

- The hardware interface to the serial port is a few I/O ports and an interrupt.
-A lot of software does not use the interrupt.
-Software does not need to interact with the serial port via the BIOS. SERTEST is an example.

However, SERTEST and CheckIt do rely on something that the POST within the BIOS does. One of the things that the POST in the IBM 51xx does is a search for serial ports at the base I/O addresses (base I/O ports) of 3F8 and 2F8. Only those two base I/O addresses. If the POST finds either or both, it puts the base I/O addresses into an area of the BIOS Data Area (BDA) reserved for that purpose. Per [here], you can use DEBUG to view that.

SERTEST and CheckIt also use the BDA to inform them of the presence/absence of serial ports at 3F8 and 2F8.

DOS assigns COM1 and COM2 according to what the POST stored in the BDA, per [here].
Some software does not give a stuff about what COM1/COM2 assignment that DOS gave to the serial ports; they consider any port at 3F8 as COM1 and consider any port at 2F8 as COM2.

When I enable the COM2 port on the new serial card I purchased the XT sees it and the AT does not !
I/O base address 2F8. Correct?

So, if you use the DEBUG method that I wrote of earlier, you see 2F8 listed when (and only when) the new serial card is fitted in the IBM XT, and you do not see 2F8 when when the new serial card is fitted in the IBM AT. Correct ?
 
I have done the debug command as you suggested.

It confirms that the AT PC does not detect the COM2 port on the same serial card transferred between the two PC’s.

The first screen phot was taken on the XT and the second on the AT.
 

Attachments

  • IMG_3958.jpeg
    IMG_3958.jpeg
    1.5 MB · Views: 9
  • IMG_3960.jpeg
    IMG_3960.jpeg
    1.9 MB · Views: 9
Can you repeat the same test with the XT but WITHOUT the serial card fitted to the machine and post the results. Let's see that 02F8 is NOT detected.

Also, are you using the same expansion slot in the AT when you install the serial card? It could be a faulty slot...

Let's try and be absolutely logical about what test conditions we are using.

Dave
 
Dave I have performed the test you suggested see the results in the photos below.
The first photo shows that after a reboot the debug indicates that the XT has detected the missing serial card.
The second photo shows that the AT debug screen still shows the debug screen with a single COM1 address.
So this indicates that either the BIOS is faulty or some other device is sitting on this address (NB. I have removed all non essential cards such as Ethernet before these tests). I think it is likely that the BIOS is faulty as the XT boots from cold 1st time every time. The AT always takes several boot attempts until it warms up. The AT also occasionally objects to the floppy drive format being invalid for no reason.
I guess the next step is to try and replace the BIOS.
NB. original IBM AT PC 5170’s are a lot harder to find in the U.K. than IBM XT 5160 PC’s I assume because of the number of cheaper clones available at the time.
 

Attachments

  • IMG_1106.jpeg
    IMG_1106.jpeg
    3.3 MB · Views: 3
  • IMG_1084.jpeg
    IMG_1084.jpeg
    2.8 MB · Views: 3
I am still confused Steve (unless VCFED has re-ordered the photographs as it sometimes does - hence naming the images as p1, p2 is helpful).

The first photograph (IMG_1106.jpeg) - which I assume is of the XT - shows NO serial ports at all.

If the AT is 'iffy' - how do you expect it to work properly with any cards you are plugging in there I ask myself... It may not be the BIOS that is faulty - but the CPU, RAM, etc. etc. etc.

What EXACTLY is the serial card you are using? Does it have two (2) serial ports on it?

Dave
 
Back
Top