⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cmos.lst

📁 A Programmer s Reference to BIOS, DOS, and Third-Party Calls
💻 LST
📖 第 1 页 / 共 5 页
字号:
 3-0	second floppy disk drive type (see #C0008)

(Table C0008)
Values for floppy drive type:
 00h	no drive
 01h	360 KB 5.25 Drive
 02h	1.2 MB 5.25 Drive - note: not listed in PS/2 technical manual
 03h	720 KB 3.5 Drive
 04h	1.44 MB 3.5 Drive
 05h	2.88 MB 3.5 drive
 06h-0Fh unused
SeeAlso: #C0007
----------R11--------------------------------
CMOS 11h - IBM PS/2 - FIRST FIXED DISK DRIVE TYPE BYTE (00-FFh)
Note:	if IBM ESDI or SCSI drive controller is used, CMOS drive type will be
	  zero (00 - no drive) and INT 13h will be directed to controller ROM.
----------R11--------------------------------
CMOS 11h - older AMI Hi-Flex BIOS - KEYBOARD TYPEMATIC DATA 

Bitfields for AMI Hi-Flex BIOS keyboard typematic data:
Bit(s)	Description	(Table C0009)
 7	enable Typematic
 6-5	Typematic Delay (wait before begin repeating)
	00b 250 ms
	01b 500 ms
	10b 750 ms
	11b 100 ms
 4-0	Typematic Rate (char/sec)
	00000b - 30.0	 01000b - 15.9	10000b - 7.5  11000b - 3.7
	00001b - 26.7	 01001b - 13.3	10001b - 6.7  11001b - 3.3
	00010b - 24.0	 01010b - 12.0	10010b - 6.0  11010b - 3.0
	00011b - 21.8	 01011b - 10.9	10011b - 5.5  11011b - 2.7
	00100b - 20.0	 01100b - 10.0	10100b - 5.0  11100b - 2.5
	00101b - 18.5	 01101b -  9.2	10101b - 4.6  11101b - 2.3
	00110b - 17.1	 01110b -  8.6	10110b - 4.3  11110b - 2.1
	00111b - 16.0	 01111b -  8.0	10111b - 4.0  11111b - 2.0
----------R11--------------------------------
CMOS 11h - AMI - ADVANCED SETUP OPTIONS

Bitfields for AMI advanced setup options:
Bit(s)	Description	(Table C0010)
 7	mouse enabled
 6	test memory above 1 megabyte
 5	generate clicks during memory test
 4	enable memory parity check
 3	display key for Setup while booting
 2	store user-defined disk data at top of memory instead of 0030h:0000h
 1	request F1 keypress on boot error
----------R11--------------------------------
CMOS 11h - AMI WinBIOS - BOOT OPTIONS
SeeAlso: CMOS 13h"AMI"

Bitfields for AMI WinBIOS boot options:
Bit(s)	Description	(Table C0011)
 7	systems boots with high CPU speed
 6	memory test above 1MB enabled
 5	memory test tick sound enabled
 4	floppy drive seek at boot enabled
 3	"Hit <Del>" message enabled
 2	BIOS extended RAM area takes 1K at top of memory instead of 30h:0000h
 1	wait for F1 key on error
 0	NumLock enabled at boot
----------R11--------------------------------
CMOS 11h - AWARD - CONFIGURATION BITS
SeeAlso: CMOS 5Eh"AWARD"

Bitfields for AWARD configuration bits:
Bit(s)	Description	(Table C0012)
 7	NumLock ON at reboot
 6	IDE Block Mode enabled
 5	???
 4	Shadow ROM BIOS at CC00-CFFF
 3	Shadow ROM BIOS at C800-CBFF
 2	???
 1	BIOS Password Enabled (supervisor)
 0	0 = Password controls BIOS Setup Only
	1 = Password required to enter System
SeeAlso: #C0083

Code snippet by Jens Rehsack:
   FUNCTION CalcPossiblePassword( PasswordValue: WORD ): STRING[8];
   VAR
	    I			   :  BYTE;
	    C			   :  CHAR;
	    S			   :  STRING[8];

   BEGIN
     I := 0;
     WHILE PasswordValue <> 0 DO
     BEGIN
       Inc( I );
       IF $263 > PasswordValue THEN
       BEGIN
	 IF $80 > PasswordValue THEN
	   S[I] := CHAR( PasswordValue )
	 ELSE IF $B0 > PasswordValue THEN
	   S[I] := CHAR( PasswordValue AND $77 )
	 ELSE IF $11D > PasswordValue THEN
	   S[I] := CHAR( $30 OR ( PasswordValue AND $0F ) )
	 ELSE IF $114 > PasswordValue THEN
	 BEGIN
	   S[I] := CHAR( $64 OR ( PasswordValue AND $0F ) );
	   IF '0' > S[I] THEN
	     S[I] := CHAR( BYTE( S[I] ) + 8 );
	 END ELSE IF $1C2 > PasswordValue THEN
	   S[I] := CHAR( $70 OR ( PasswordValue AND $03 ) )
	 ELSE IF $1E4 > PasswordValue THEN
	   S[I] := CHAR( $30 OR ( PasswordValue AND $03 ) )
	 ELSE
	 BEGIN
	   S[I] := CHAR( $70 OR ( PasswordValue AND $0F ) );
	   IF 'z' < S[I] THEN
	     S[I] := CHAR( BYTE( S[I] )	 - 8 );
	 END;
       END ELSE
	 S[I] := CHAR( $30 OR ( PasswordValue AND $3 ) );
       PasswordValue := ( PasswordValue - BYTE( S[I] ) ) SHR 2;
     END;

     S[0] := CHAR( I );
     PasswordValue := I SHR 1;
     WHILE PasswordValue < I DO
     BEGIN {this is to do because award starts calculating with the last letter}

       C := S[BYTE( S[0] ) - I + 1];
       S[BYTE( S[0] ) - I + 1] := S[I];
       S[I] := C;
       Dec( I );
     END;

     CalcPossiblePassword := S;
   END;

"Okay, the algorithms based on the knowlege, that the award-bios' 4.50 and 4.51
 but not (seems to) with earlier versions stores only the last 2 bit of every
 character typed in..."

   int CalcPasswordCRC( char pw[8] ): word
   {
     register int i = 8;
     register unsigned w = 0;
     while( i-- )
       w |= ( unsigned( pw[i] ) & 0x3 ) << ( i * 2 );
     return w;
   }
----------R11--------------------------------
CMOS 11h - Quadtel HT12 BIOS 03.05.03 - CONFIGURATION BITS

Bitfields for Quadtel HT12 configuration bits:
Bit(s)	Description	(Table C0013)
 7	640K RAM present
 6	extension type (=CPU's Machine Status Word)
 3-2	NumLock state at boot time
	00 Auto
	01 NumLock on
	10 Numlock off
 0	384K RAM relocated to top of memory
----------R12--------------------------------
CMOS 12h - IBM - HARD DISK DATA
Notes:	A PC with a single type 2 (20 Mb ST-225) hard disk will have 20h in
	  byte 12h
	some PCs utilizing external disk controller ROMs will use type 0 to
	  disable ROM BIOS (e.g. Zenith 248 with Plus HardCard).

Bitfields for IBM hard disk data:
Bit(s)	Description	(Table C0014)
 7-4	First Hard Disk Drive
	00	No drive
	01-0Eh	Hard drive Type 1-14
	0Fh	Hard Disk Type 16-255
		(actual Hard Drive Type is in CMOS RAM 19h)
 3-0	Second Hard Disk Drive Type
	(same as first except extrnded type will be found in 1Ah).
----------R12--------------------------------
CMOS 12h - IBM PS/2 - SECOND FIXED DISK DRIVE TYPE (00-FFh)
SeeAlso: CMOS 11h"IBM PS/2"
----------R13--------------------------------
CMOS 13h - AMI Hi-Flex BIOS - ADVANCED SETUP OPTIONS
SeeAlso: CMOS 11h"WinBIOS"

Bitfields for AMI Hi-Flex BIOS advanced setup options:
Bit(s)	Description	(Table C0015)
 7	Mouse Enabled (1 = On)
 6	Test Memory above 1 MB (1 = On)
 5	Memory Test Tick Sound (1 = On)
 4	Memory Parity Error Check (1 = On)
 3	Press <Esc> to Disable Memory Test (1 = On)
 2	User-Defined Hard Disk (1 = Type 47 data area at address 0:300h)
 1	Wait for <F1> Message if Error (1 = On)
 0	Turn Num Lock On at boot (1 = On)
----------R13--------------------------------
CMOS 13h - AMI WinBIOS - PERIPHERAL OPTIONS

Bitfields for AMI WinBIOS peripheral options:
Bit(s)	Description	(Table C0016)
 7-5	typematic rate
	000-111 = 6,8,10,12,15,20,24,30 cps
 4	numeric processor test enabled
----------R13--------------------------------
CMOS 13h - PS/2 MCA - INTERNAL POST OPERATIONS

Bitfields for PS/2 MCA internal POST operations:
Bit(s)	Description	(Table C0017)
 7	POST sets VGA pel information
 6	RTC battery OK
 5	invoke ROM BASIC from POST
 4	POST sets typematic to 30cps/250ms delay instead of 10.9cps/500ms
 3-2	unused or unknown
 1	network password installed
 0	power-on password installed
----------R13--------------------------------
CMOS 13h - AWARD - Configuration Bits

Bitfields for AWARD configuration bits:
Bit(s)	Description	(Table C0018)
 7	set keyboard typematic rate
 4-6	keyboard repeat rate
	000 =  6 cps
	001 =  8 cps
	010 = 10 cps
	011 = 12 cps
	100 = 15 cps
	101 = 20 cps
	110 = 24 cps
	111 = 30 cps
 2-3	keyboard typematic delay
	00 =  250 Msec
	01 =  500 Msec
	10 =  750 Msec
	11 = 1000 Msec
 1	???
 0	boot up floppy seek
----------R14--------------------------------
CMOS 14h - IBM - EQUIPMENT BYTE 

Bitfields for IBM equipment byte:
Bit(s)	Description	(Table C0019)
 7-6	number of floppy drives (system must have at least one)
	00b   1 Drive
	01b   2 Drives
	10b ??? 3 Drives
	11b ??? 4 Drives
 5-4	monitor type
	00b Not CGA or MDA (observed for EGA & VGA)
	01b 40x25 CGA
	10b 80x25 CGA
	11b MDA (Monochrome)
 3	display enabled (turned off to enable boot of rackmount)
 2	keyboard enabled (turn off to enable boot of rackmount)
 1	math coprocessor installed
 0	floppy drive installed (turned off for rackmount boot)
----------R14--------------------------------
CMOS 14h - AMSTRAD - BYTE user RAM checksum
Desc:	LSB of sum of all user bytes should be AAh
----------R15--------------------------------
CMOS 15h - IBM - BASE MEMORY IN KB (low byte)
----------R1516------------------------------
CMOS 15h-16h - AMSTRAD - Enter key scancode/ASCII code
Size:	WORD
Desc:	specify the BIOS keycode for keyboard scancode 74h
Note:	default: 1C0Dh	- emulates Return key
SeeAlso: INT 09,CMOS 17h"AMSTRAD"
----------R16--------------------------------
CMOS 16h - IBM - BASE MEMORY IN KB (high byte)
Note:	The value in 15h-16h should be the same as in 0:413h and that
	  returned by INT 12h. A PC having 640k (280h) of conventional
	  memory will return 80h in byte 15h and 02h in byte 16h.
----------R17--------------------------------
CMOS 17h - IBM - EXTENDED MEMORY IN KB (low byte)
----------R1718------------------------------
CMOS 17h-18h - AMSTRAD - Forward delete key scancode/ASCII code
Size:	WORD
Desc:	specify the BIOS keycode for keyboard scancode 70h
Note:	default: 2207h	- emulates ^G (bell/beep)
SeeAlso: INT 09,CMOS 15h"AMSTRAD",CMOS 19h"AMSTRAD"
----------R18--------------------------------
CMOS 18h - IBM - EXTENDED MEMORY IN KB (high byte)
Notes:	some systems will only accommodate 15 MB extended (16 MB total)
	Format is the same as in 15h-16h
----------R19--------------------------------
CMOS 19h - IBM - FIRST EXTENDED HARD DISK DRIVE TYPE
Note:	not in original AT specification but now nearly universally used
	  except for PS/2.

(Table C0020)
Values for extended hard disk drive type:
  00-0Fh unused (would not require extension. Note: this has the effect of
	  making type 0Fh (15d) unavailable.
  10h-FFh First Extended Hard Drive Type 16d-255d
Note: For most manufacturers the last drive type (typically either 47d or 49d)
	is "user defined" and parameters are stored elsewhere in the CMOS.
----------R19--------------------------------
CMOS 19h - MCA - SLOT 0 ADAPTER CARD ID
----------R19--------------------------------
CMOS 19h - AMI - ???

Bitfields for AMI location 19h:
Bit(s)	Description	(Table C0021)
 3-0	???
 7-4	???
----------R191A------------------------------
CMOS 19h-1Ah - AMSTRAD - Joystick fire button 1 scancode/ASCII code
Size:	WORD
Desc:	specify the BIOS keycode for keyboard scancode 77h
Note:	default: FFFFh	- (no translation)
SeeAlso: INT 09,CMOS 17h"AMSTRAD",CMOS 1Bh"AMSTRAD"
----------R1A--------------------------------
CMOS 1Ah - SECOND EXTENDED HARD DISK DRIVE TYPE
SeeAlso: CMOS 19h"IBM",#C0020
----------R1A--------------------------------
CMOS 1Ah - MCA - SLOT 0 ADAPTER CARD ID
----------R1B--------------------------------
CMOS 1Bh - MCA - SLOT 1 ADAPTER CARD ID
----------R1B--------------------------------
CMOS 1Bh - AMI - First Hard Disk (type 47) user defined: # of Cylinders, LSB
Note:	this byte is also supported by Compaq machines with dual hard disk
	  controllers
SeeAlso: MEM F000h:FFE8h
----------R1B1C------------------------------
CMOS 1Bh-1Ch - AMSTRAD - Joystick fire button 2 scancode/ASCII code
Size:	WORD
Desc:	specify the BIOS keycode for keyboard scancode 78h
Note:	default: FFFFh	- (no translation)
SeeAlso: INT 09,CMOS 19h"AMSTRAD",CMOS 1Dh"AMSTRAD"
----------R1B--------------------------------
CMOS 1Bh - PHOENIX - LSB of Word to 82335 RC1 roll compare register
----------R1B--------------------------------
CMOS 1Bh - AWARD - CONFIGURATION BITS

Bitfields for AWARD shadow RAM configuration bits:
Bit(s)	Description	(Table C0022)
 7-4	???
 3	Shadow ROM BIOS at DC00-DFFF
 2	shadow	    "	 "   " D800-DBFF
 1	shadow	    "	 "   " D400-D7FF
 0	shadow	    "	 "   " D000-D3FF
----------R1C--------------------------------

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -