AMI Plus BIOS: Difference between revisions

From SoftHistory
No edit summary
No edit summary
Line 88: Line 88:


== Identification string ==
== Identification string ==
AMI Plus BIOS also introduced a new 16/17-character identification string, different from the older format used with [[AMIBIOS 2.2x]]. The first (or on 17 character strings, first two) character of the string indicates the CMOS setup type. D indicates built-in AMIDIAG diagnostics, E indicates no AMIDIAG but extended CMOS setup, S indicates no AMIDIAG or extended setup (standard setup only). "DE" was also occassionally used (for 17 character strings), indicating both built-in AMIDIAG and extended CMOS setup are available.
AMI Plus BIOS also introduced a newer format for the identification string which is different from the older formats. These strings are usually formatted as either one of the following:


The new string is formatted as the following:
=== 16-character ===
<code>DCCC-MMMM-SSSSSS-KK</code>
 
* '''D:''' CMOS setup type
** "D" indicates the ROM contains the trial version of AMIDIAG alongside the standard setup utility
** "E" indicates the ROM contains an extended setup utility alongside instead of AMIDIAG
** "S" indicates the ROM contains only contains the standard setup utility
 
* '''CCC:''' Chipset/platform type
** "286" indicates either a VLSI or G2/Headland chipset, or just discrete logic (without a chipset) for a 286 based processor
** "386" indicates either a Texas Instruments TACT83000 or a VLSI chipset, or just discrete logic for a 386 based processor
** "486" indicates a TriGem 486 based motherboard (with the TriGem fork)
** "AMI" indicates a 386 based motherboard made by American Megatrends
** "C&T" indicates a Chips & Technologies chipset for a 386 based processor (usually CS823x series)
** "EMI" indicates an Elite Eagle chipset
** "INT" indicates a ZyMOS POACH series chipset
** "NET" or "NSX" indicate a Chips & Technologies NEAT chipset
** "PAQ" indicates a motherboard used/made by COMPAQ, although this code was also used for a non-COMPAQ 486 motherboard with the ZyMOS POACH chipset<ref>https://theretroweb.com/motherboards/s/genoa-unknown-486-01-00024-01</ref>
** "SUN" indicates a SUNTAC chipset


'''D:''' CMOS setup type, '''CCC:''' Chipset type, '''MMMM:''' Manufacturer/OEM identification code, '''SSSSSS:''' BIOS subcore release date, '''KK:''' Keyboard controller (KBC) ID (with second character indicating the model).
* '''MMMM:''' OEM identification code
** ''Please refer to [[Document:AMIBIOS string codes|AMIBIOS string codes]] for a list''


<code>DCCC-MMMM-SSSSSS-KK</code>
* '''SSSSSS:''' BIOS core release date
 
* '''KK:''' Keyboard controller ID (second character indicates the model)
** ''Please refer to [[Document:AMIBIOS string codes|AMIBIOS string codes]] for a list''
 
=== 17-character ===
<code>DDCCC-MMMM-SSSSSS-KK</code>
 
The 17-character format is almost identical to the 16-character format, except that the CMOS Setup Type section is two characters instead of one (and therefore the first part of the string is five characters instead of four).


'''Note:''' As stated above, occasionally 17 character strings (instead of 16) were also used, where one extra character is used to indicate the CMOS setup type "DE" (for built-in AMIDIAG diagnostics and extended CMOS setup)
On these strings, the CMOS Setup Type section is always "DE", indicating that the ROM has both AMIDIAG and extended setup in addition to the standard setup utility.


'''Example string''': D286-1277-043089-K0
All other sections are exactly the same as the 16-character format, so the codes for that format also apply here.


This string is for a 04/30/89 (April 30, 1989; date is in American format) dated revision AMI Plus BIOS with regular CMOS setup and built-in diagnostics ("D") for a machine with a discrete i286 logic ("286") and a default/unknown keyboard controller (K"0") for Trangg Bow Co. ("1277").
=== '''Example string''' ===
<code>D286-1277-043089-K0</code>


The manufacturer, chipset and keyboard controller codes can be found [[Document:AMIBIOS string codes|here.]]
This string is for a ROM based on '''the April 30, 1989 core''' ("043089") of the AMI Plus BIOS with '''built-in AMIDIAG''' ("D"), with the ROM being for a '''286-based discrete logic''' ("286") machine with '''a generic/unknown keyboard controller''' (K"0") for '''Trangg Bow Co.''' ("1277").

Revision as of 15:30, 23 November 2024

POST screen for AMI Plus BIOS

AMI Plus BIOS, unofficially nicknamed AMI Pre-Color BIOS (as it is the predecessor of Hi-Flex BIOS, the first version with a colorful setup utility), is a version of AMIBIOS released by American Megatrends (AMI) in 1987.

It is the first version of AMIBIOS with a built-in setup utility for configuring the CMOS settings without having to use a separate program (usually distributed on a floppy disk by the OEM), although this is not present on all instances. It is also the first and only version to include a built-in diagnostic utility, specifically a limited version of AMIDIAG. However, like with the built-in setup utility, this is not present on all instances. The identification string of instances with built-in AMIDIAG usually starts with "D" (or "DE" if the first section of the string is five characters long).

Setup utility

Majority of the Plus BIOS instances include a built-in setup utility, with AMI offering two different utilities over the time period that were available to OEMs by default.

The old default setup utility (usually found on instances from 1987 or early 1988) was quirkier and somewhat limited as it displayed all options one-by-one (with the exit prompt displayed last) and required a value to be entered for each of them, rather than displaying them all at once and allowing the user to navigate between them so that only the necessary options could be changed. Because of this, to change a particular setting, the user had to go through all the options in the utility. Sometime in 1988, this utility was replaced with a new one that displayed all options at once and allowed the user to freely navigate between them so that only the necessary options could be changed, making it more convenient to use.

Aside from these utilities, some OEMs (such as PCChips) used their own setup utilities in their instances of Plus BIOS. These utilities are different from the ones included by default.

AMIDIAG

Limited version of AMIDIAG included with some AMI Plus BIOSes

Main page: AMIDIAG

AMIDIAG is a system diagnostics utility developed by American Megatrends for DOS based operating systems. A limited version of the program was included with some instances of Plus BIOS.

The following diagnostics are included in the Plus BIOS version:

Hard Disk

Note: Hard disk diagnostics are only accessible when a hard disk is detected

  • Hard disk format
  • Automatic interleave
  • Locate and mark bad sectors (labeled as "Media analysis")
  • Performance test
  • Seek test
  • Read/verify test
  • Cylinder read/write test (labeled as "Check test cyl.")
  • List bad tracks (labeled as "Force bad tracks")

Floppy

  • Floppy format
  • Drive speed test
  • Random read and write test
  • Disk change line test

Keyboard

  • Scan/ASCII code test

Video

  • Sync test
  • Adapter test
  • Attribute test
  • 80x25 display test
  • 40x25 display test
  • 320x200 graphics test
  • 640x200 graphics test
  • Page selection test
  • Colour test

Miscellaneous

  • Printer adapter test
  • Communication adapter test

Code forks

TriGem fork (early-90s - 1995)

The POST screen of a TriGem fork instance from 1995 on the 486G motherboard

Although TriGem began using AMI Plus BIOS in the late-80s, noticeable differences between their version and the standard version only started appearing in the early-90s, likely in 1990 when Plus BIOS was replaced by Hi-Flex BIOS by AMI. TriGem likely began developing their own fork around this time, adding various custom features such as LBA (Logical Block Addressing) support, default quick memory test, easy setup mode and Energy Star logo (often called an "EPA") in the POST screen.

This fork of AMI Plus BIOS also contains the earliest known instance of an Easy Mode in its setup utility, albeit only in Korean (while the standard utility supports both Korean and English). While it is a pretty common feature today, it only started becoming as common on UEFI firmwares in the early-2010s.

This fork was replaced with the AMIBIOS 6 fork in around 1995.

Technical limitations

Lack of Logical Block Addressing (LBA)

While the default setup utilities included with Plus BIOS support configuring storage devices up to 32 gigabytes in size, only up to 504 megabytes of this size can be used due to a lack of LBA (Logical Block Addressing) support. Later instances of the TriGem code fork are not affected by this problem as they properly support LBA.

Various workarounds exist to address this limitation, such as using BIOS storage overlay utilities (like Ontrack Disk Manager) for LBA support.

Identification string

AMI Plus BIOS also introduced a newer format for the identification string which is different from the older formats. These strings are usually formatted as either one of the following:

16-character

DCCC-MMMM-SSSSSS-KK

  • D: CMOS setup type
    • "D" indicates the ROM contains the trial version of AMIDIAG alongside the standard setup utility
    • "E" indicates the ROM contains an extended setup utility alongside instead of AMIDIAG
    • "S" indicates the ROM contains only contains the standard setup utility
  • CCC: Chipset/platform type
    • "286" indicates either a VLSI or G2/Headland chipset, or just discrete logic (without a chipset) for a 286 based processor
    • "386" indicates either a Texas Instruments TACT83000 or a VLSI chipset, or just discrete logic for a 386 based processor
    • "486" indicates a TriGem 486 based motherboard (with the TriGem fork)
    • "AMI" indicates a 386 based motherboard made by American Megatrends
    • "C&T" indicates a Chips & Technologies chipset for a 386 based processor (usually CS823x series)
    • "EMI" indicates an Elite Eagle chipset
    • "INT" indicates a ZyMOS POACH series chipset
    • "NET" or "NSX" indicate a Chips & Technologies NEAT chipset
    • "PAQ" indicates a motherboard used/made by COMPAQ, although this code was also used for a non-COMPAQ 486 motherboard with the ZyMOS POACH chipset[1]
    • "SUN" indicates a SUNTAC chipset
  • SSSSSS: BIOS core release date
  • KK: Keyboard controller ID (second character indicates the model)

17-character

DDCCC-MMMM-SSSSSS-KK

The 17-character format is almost identical to the 16-character format, except that the CMOS Setup Type section is two characters instead of one (and therefore the first part of the string is five characters instead of four).

On these strings, the CMOS Setup Type section is always "DE", indicating that the ROM has both AMIDIAG and extended setup in addition to the standard setup utility.

All other sections are exactly the same as the 16-character format, so the codes for that format also apply here.

Example string

D286-1277-043089-K0

This string is for a ROM based on the April 30, 1989 core ("043089") of the AMI Plus BIOS with built-in AMIDIAG ("D"), with the ROM being for a 286-based discrete logic ("286") machine with a generic/unknown keyboard controller (K"0") for Trangg Bow Co. ("1277").