Retrieving IDs of Installed Adapters

BASIC Routine
Program Output

Content by Peter H. Wendt (original HERE). Edited by Tomáš Slavotínek.
Last update: 01 May 2022


Assuming you have a machine which refuses to boot from a floppy and hard drive and you land in IBM ROM BASIC after pressing the [F1] function key, you can use the following code to identify the installed adapters.

To run the program press [F2].

BASIC Routine

10 cls
20 for q=15 to 8 step -1
30 out(&H96),q
40 print q-7;": ";hex$(inp(&h101));"-";hex$(inp(&h100))
50 next q

Program Output

The output will be a list of adapter IDs, starting with slot #8. On machines with less than 8 slots, only the lower positions are valid. Empty (or missing) slot will show as ID = FFFF.

It might look like this:

8: 8E-FE  (IBM SCSI without cache)
7: F-1F   (Adaptec AHA-1640 SCSI)
6: E0-1   (IBM 16/4 Mb/s Token Ring)
5: FF-FF  (*empty slot*)
4: 8F-DA  (IBM XGA-2 Video)
3: FF-FF  (*empty slot*)
2: FF-FF  (*empty slot*)
1: FC-FF  (IBM 2-8MB 386 Memory)

Note: The text enclosed in brackets is not part of the program output.

Note: Leading zeros for the individual ID bytes are not printed. I.e. F-1F means ID 0F1F and E0-1 means ID E001.

Use one of the adapter lists to map the IDs to adapter names — ADF List, QCONFIG Adapter List, SIT Adapter List, or MCA.DAT from the QBMCA utility.

Content created and/or collected by:
Louis Ohland, Peter Wendt, David Beem, William Walsh, Tatsuo Sunagawa, Jim Shorney, Tim Clarke, Kevin Bowling, Tomáš Slavotínek, and many others.

Ardent Tool of Capitalism - MAD Edition! is maintained by Tomáš Slavotínek.
Last update: 30 Jul 2023 - Changelog | Legal Info & Contact