Content by David L. Beem (original HERE). Modified by Major Tom.
Hidden away on one of the support diskettes, IBM has a small program named SCSILEVL.COM. It reports the microcode firmware version on most of the different IBM SCSI controllers used on Micro Channel (MCA) PS/2s (This page does not cover the SCSI RAID controllers that IBM had on it's server models nor the rebranded Future Domain controller IBM called the Patriot). Besides being a little too simplistic for my tastes, the program doesn't work on a few IBM models (Industrial Gearbox 800 & 8556/8557 & 9556/9557 PS/2s) that have SCSI implemented on the system planar.
I intend to expand the program somewhat, as well as document how it works. Most of the code is fairly easy to understand for those fluent in Assembler. For some sections you may have to see a debugging program (like Microsoft's CodeView for DOS) single-step through the code on a system with IBM SCSI. I recommend running the programs only in a pure DOS environment!
The original SCSILEVL.COM program doesn't even check if it is running on a MCA system (the things IBM takes for granted)! I just find some areas worth improving, mainly to make it check all the IBM SCSI microcode versions. The interface can also be changed to be more grammatically correct (i.e. not identifying a planar SCSI controller as being on a "slot").
IBM made three different families of non-RAID Micro Channel SCSI controllers, mainly distinguished by the microcontroller or microprocessor of the circuit that controlled the SCSI bus. Even though some of the controllers could use the same microcode firmware, I have separated them by how I see those series laid out. The functionality among the families is largely the same, with the members having similar capabilities.
I don't profess to know what the different microcode versions added or fixed, but it is helpful to know if there is a later version for an upgrade (I will have some microcode images of the non-Flash series up soon so you can burn your own EPROMs if you have the equipment). Generally it is advised to have the latest firmware possible. I have charted all the versions I have found so far. If you have an unlisted version or one marked as Unknown, please notify me to add it.
8032-based SCSI Controllers
Based on the Intel-designed 8032 microcontroller. It is "Narrow" SCSI able to do a 5Mbps transfer rate. All models of this series have no controller cache. The microcode is on a single 64Kb x 8-bit EPROM. When the series was renumbered to version 02 and 03, it supports the SCSI-2 command set.
80188-based SCSI Controllers
Based on the Intel-designed 80188 microprocessor. It is "Narrow" SCSI able to do a 5Mbps transfer rate. Most models of this series have a base 512Kb controller cache, some expandable to 2Mb using proprietary IBM SIMMs. The microcode is on a single 64Kb x 8-bit EPROM.
80186-based SCSI Controllers
Based on the Intel-designed 80186 microprocessor. It is "Fast/Wide" SCSI able to do a 20Mbps transfer rate. All models of this series have no controller cache. The microcode is on two Flash 32Kb x 8-bit chips able to be upgraded with software.