Retrieving the Planar ID

"Planar" is IBM-speak for what other computer manufacturers call a motherboard. Starting from the Micro Channel computer systems, which introduced hardware that could be identified and configured with software, IBM (and other licensed manufacturers producing Micro Channel systems or planars) set a semi-unique (there are several duplicates) 16-bit "Planar ID" so that software can identify the planar it is operating on. Most, but not all, systems that have a Planar ID will have a Micro Channel bus (there is also the dual bus MCA/PCI Server 320/520 planar, and the dual bus EISA/PCI Server 320/520 planar, both with Planar IDs) so the CheckMCA routine normally should be run before trying to retrieve a Planar ID. The Planar ID value is gained by clearing the Most Significant Bit ("MSB") on port 94h, getting the high byte value from port 101h, then the low byte value from port 100h. Once you have retrieved the Planar ID, set the MSB for port 94h again.

Assembly Language Routine
BASIC Language Routine
List of Known Planar IDs


Assembly Language Routine

;----------------------------------------------
; 	    PlanarID Assembly routine
; This routine retrieves the MCA planar ID.
; The CheckMCA routine should be run first to
; make sure it is a Micro Channel computer.
; 
;    Entry:
;	None
;
;    Exit:
;	    AX = Planar ID
;
;----------------------------------------------

PlanarID	proc	near
		cli
		out	94h,7Fh
		mov	DX,101h
		in 	AL,DX
		mov	AH,AL
		dec	DX
		in	AL,DX
		out	94h,0FFh
		sti
PlanarID	endp

BASIC Language Routine

'----------------------------------------------
' 	    PlanarID BASIC function
' This function retrieves the MCA planar ID.
'----------------------------------------------
FUNCTION PlanarID
	OUT &H94, &H7F
	HighByte = INP(&H101)
	LowByte = INP(&H100)
	PlanarID = (HighByte * 256) + LowByte
	OUT &H94, &HFF
END FUNCTION

List of Known Planar IDs

All IDs are in hexadecimal format. Duplicates are marked with an asterisk.

IBM
PS/2 Model 50-021FBFF *
PS/2 Model 50ZFBFF *
PS/2 Model N51SXF1FE *
PS/2 Model N51SLCF1FE *
PS/2 Model 53SLC2E3FE *
PS/2 Model 55SXFBFF *
PS/2 Model 55LSF5FF
PS/2 Model 55LS486E3FE *
PS/2 Model 56SX(8556)E6FE *
PS/2 Model 56SLC (8556)E6FE *
PS/2 Model 56SLC2 (9556)E1FE *
PS/2 Model 56SLC3 (9556)E1FE *
PS/2 Model 57SX (8557)E2FE *
PS/2 Model 57SLC (8557)E2FE *
PS/2 Model 57SLC2 (9557)E0FE *
PS/2 Model 57SLC3 (9557)E0FE *
PS/2 Model CL57SXF1EF *
PS/2 Model 60F7FF *
PS/2 Model 65SXE3FF *
PS/2 Model 70 386 (16 MHz)DFFF
PS/2 Model 70 386 (20 MHz)F3FF
PS/2 Model 70 386 (25 MHz)F9FF *
PS/2 Model 70 486 (25 MHz)FCFF
PS/2 Model 70 486 (33 MHz)E3FF *
PS/2 Model P70 (16 MHz)FFAF
PS/2 Model P70 (20 MHz)F4FF
PS/2 Model P75E0FF
PS/2 Model 76 (Bermuda)DFFE
PS/2 Model 76i/s (Lacuna 25/33)EE7B
PS/2 Model 76i/s (Lacuna 33)EE7C
PS/2 Model 77 (Bermuda)DEFE
PS/2 Model 77i/s (Lacuna 25/33)EE79
PS/2 Model 77i/s (Lacuna 33)EE7A
PS/2 Model 80 386 (16 MHz)FDFF *
PS/2 Model 80 386 (20 MHz)FEFF *
PS/2 Model 80 386 (25 MHz)FFF9
PS/2 Model 80 486E2FE *
PS/2 Model 85 (X model)FFDC
PS/2 Model 85 (K/N models)FEDF
PS/2 Model 90 (8590) (any complex)FF6F *
PS/2 Model 90 (9590) (any complex)FF6F *
PS/2 Model 95 (8595) 1S1P planar (any complex)FF9F
PS/2 Model 95 (9595) 2S2P planar (Type 4 complex)E4FE *
PS/55 (Japanese) Model 5550-S, 5550-TFFFA *
PS/55 (Japanese) Model 5554F1EF *
PS/55 (Japanese) Model 5571-TFFFC
ThinkPad 700F1EE
ThinkPad 700CF1EC
ThinkPad 720F1E8
ThinkPad 720CF1E9
7561 Industrial PCFFFA *
7568 Industrial PC ("Gearbox 800")FFE9
PC 730 (2 slot)FED0 *
PC 730 (6876, 3 slot)FED1 *
PC 750 (6886, 5 slot)FED2 *
PC Server 310 (2 slot)FED0 *
PC Server 310 (3 slot)FED1 *
PC Server 310 (5 slot)FED2 *
PC Server 320 (PCI/MCA)FE80 *
PC Server 320 (PCI/EISA)FEBE *
PC Server 500 (Type 4 complex)E4FE *
PC Server 520 (PCI/MCA)FE80 *
PC Server 520 (PCI/EISA)FEBE *
PC Server 720FEE7
Unknown, found in the 85 K/N firmwareFEEB
Reply
Reply 32FEFF *
Reply 55SX planar upgradeE3FE *
Reply 56/57/76/77 Powerboard /w Model 56 riser0F77
Reply 56/57/76/77 Powerboard /w Model 57 riser0F76
Reply 70 TurboboardE3FF *
Reply 80 TurboboardE2FE *
Reply 80 Powerboard0FD5
NCR
NCR System 3220FBFF *
NCR System 3350F9FF *
NCR System 3421FDFF *
NCR System 3433F9FF *
Apricot
Apricot QiF7FF *

Originally created by David Beem. Modified by Tomáš Slavotínek.


9595 Main Page