Tosh - 760XL, 760XD, 765L 765D Technical Reference Manual
Tosh - 760XL, 760XD, 765L 765D Technical Reference Manual
servicemanuals4u
06J0537
S30H-2433-02
Note
Before using this information and the product it supports, be sure to read the
general information under Appendix C, “Notices” on page C-1.
Requests for technical information about IBM products should be made to your IBM
Authorized Dealer or your IBM Marketing Representative.
Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
iv
System Information Service . . . . . . . . . . . . . . . . . . B-12
System Configuration Service . . . . . . . . . . . . . . . . . B-21
Power Management Service . . . . . . . . . . . . . . . . . . B-28
Event Bit Definition . . . . . . . . . . . . . . . . . . . . . . . B-33
Samples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-54
Function Declaration . . . . . . . . . . . . . . . . . . . . . . B-58
Installation Check . . . . . . . . . . . . . . . . . . . . . . . . B-59
BIOS Call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-62
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X-1
v
vi
Figures
viii
Preface
Attention
The term Reserved describes certain signals, bits, and registers that
should not be changed. Use of reserved areas can cause
compatibility problems, loss of data, or permanent damage to the
hardware. When the contents of a register are changed, the state of
the reserved bits must be preserved. Read the register first and
change only the bits that must be changed.
x Preface
Section 1. System Overview
Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2
System Board Devices and Features . . . . . . . . . . . . . . . 1-3
System Board I/O Address Map . . . . . . . . . . . . . . . . . . 1-5
Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-7
Performance Specifications . . . . . . . . . . . . . . . . . . 1-7
Physical Specifications . . . . . . . . . . . . . . . . . . . . 1-8
Electrical Specifications . . . . . . . . . . . . . . . . . . . . 1-9
Acoustical Readings . . . . . . . . . . . . . . . . . . . . . . 1-9
Power Supply . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-10
Voltages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-10
Output Protection . . . . . . . . . . . . . . . . . . . . . . . . 1-11
Voltage Sequencing . . . . . . . . . . . . . . . . . . . . . . . 1-11
Power Supply Connector . . . . . . . . . . . . . . . . . . . . 1-11
Battery Pack . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-12
Figure 1-1 lists the model bytes, submodel bytes, and system clock
speed of the system board for each model.
Performance Specifications
Clock Counts
Device/Cycle
(66MHz)
Microprocessor 66/166MHz
L1 cache (64bit)
read/write hit 1 CPUCLK
L2 cache (64bit) (for not all
models) 90ns (60ns)
read hit (back-to-back) 90ns (60ns)
write hit (back-to-back)
Memory (64bit) (*1)
read, page hit 240ns
read, raw miss 285ns
read, page miss 345ns
posted write 90ns
write retire rate from 135ns
write buffer
Note:
*ñ The cycle times shown for access to system
board RAM are based on 70ns EDO memory.
Size
Width: 297 mm (11.7 in.)
Depth: ThinkPad 760XD and 760XL:
210 mm (8.3 in.)
ThinkPad 765D and 765L:
236 mm (9.3 in.)
Height: ThinkPad 760XD:
50.7 mm (2.00 in.)
ThinkPad 760XL:
54.3 mm (2.14 in.)
ThinkPad 765D and 765L:
56.2 mm (2.2 in.)
Weightñ (approximate value)
ThinkPad 760XD:
3.18 kg (7.0 lb) (with Li ion battery & CD-ROM)
ThinkPad 760XL:
3.05 kg (6.7 lb) (with Li ion battery & FDD)
ThinkPad 765D:
3.49 kg (7.7 lb) (with Li ion battery & CD-ROM)
ThinkPad 765L:
3.34 kg (7.4 lb) (with Li ion battery & FDD)
Air Temperature
System on (without diskette)
5.0°C to 35.0°C (41°F to 95°F)
System on (with diskette)
10.0°C to 35.0°C (50°F to 95°F)
System off
5.0°C to 43.0°C (41°F to 110°F)
Humidity
System (without diskette)
8% to 95%
System (with diskette)
8% to 80%
Maximum altitudeò: 3,048 m (10,000 ft) in unpressurized conditions
Heat output: 40 W (136.5 BTUs/hour) at maximum configuration
Acoustical readings (see Figure 1-7 on page 1-9)
Electrical (see Figure 1-6 on page 1-9)
Electromagnetic compatibility: FCC class B
ñ With battery pack installed.
ò This is the maximum altitude at which the specified air temperatures apply. At
higher altitudes, the maximum air temperatures are lower than those specified.
Acoustical Readings
Notes:
LWAd Is the declared sound power level for the random sample of
machines.
LpAm Is the mean value of the A-weighted sound pressure levels at the
operator position (if any) for the random sample of machines.
<LpA>m Is the mean value of the A-weighted sound pressure levels at the
one-meter position for the random sample of machines.
Operate Shows the value while using the hard disk drive.
All measurements made in accordance with ANSI S12.10 and reported in
conformance with ISO 9296.
Voltages
The power supply generates six different dc voltages: VCCCPU,
VCC3A, VCC5M, AVCC, VCCSW, and VCC12M. Figure 1-8 shows
the maximum current for each voltage.
Voltage Sequencing
When power is turned on, the output voltages reach their operational
voltages within 2 seconds.
2
3 1
Refer to Figure 1-9 and Figure 1-10 on page 1-12 for the
appropriate adapter pin assignments.
Pin Voltage
1 +8.0 V dc to +20.0 V dc (depending on charging conditions)
2 Charge mode select signal
3 Ground
4 Communication ground
Figure 1-9. Voltage Pin Assignments for the 40W AC Adapter and Car
Battery Adapter
Figure 1-10. Voltage Pin Assignments for the 35W or 56W AC Adapter
Battery Pack
The ThinkPad computer uses a lithium-ion (Li-ion) or nickel metal
hydride (NiMH) battery pack that meets the following electrical
specifications:
Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2
System Board POS I/O Address Map . . . . . . . . . . . . . . . 2-2
System Board and Subsystem Setup . . . . . . . . . . . . . . . 2-3
System Board Enable/Setup Register (Hex 0094) . . . . . . 2-3
Attention
Set programmable options only through the system configuration
utilities. Directly setting the POS registers or CMOS RAM POS
parameters may cause multiple assignments of the same system
resource, improper operation of the feature, loss of data, or
damage to the hardware.
Application programs should not use the adapter identification
unless absolutely necessary; compatibility problems can result.
After setup operations are complete, the system board
enable/setup register (hex 0094) should be set to hex FF.
Address
(Hex) Function
0094 Enable/Setup register
0096 Reserved
0100 Reserved
0101 Reserved
0102 POS register 2: Option select data byte 1
0103 POS register 3: Option select data byte 2
0104 POS register 4: Option select data byte 3
0105 POS register 5: Option select data byte 4
0106 POS register 6: Option select data byte 5
0107 POS register 7: Option select data byte 6
Bit Function
7 Reserved
6 Reserved
5 Reserved
4 Reserved
3 Enable/Setup DSP subsystem
2 Reserved
1 Reserved
0 Enable/Setup IR subsystem
Bit 7 Reserved.
Bit 6 Reserved.
Bit 5 Reserved.
Bit 4 Reserved.
Bit 3 When this bit is set to 0, the DSP subsystem function is
put in setup mode.
Bit 2 Reserved.
Bit 1 Reserved.
Bit 0 When this bit is set to 0, the IR subsystem function is
put in setup mode.
Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2
Microprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2
Cache Memory Operation . . . . . . . . . . . . . . . . . . . . 3-2
Cacheable Address Space . . . . . . . . . . . . . . . . . . . . 3-3
Bus Adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4
Keyboard/Mouse Connector . . . . . . . . . . . . . . . . . . . . . 3-5
Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-5
Connector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-5
Scan Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6
Keyboard ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-7
Displayable Characters and Symbols . . . . . . . . . . . . . . 3-8
Hard Disk Drive Connector . . . . . . . . . . . . . . . . . . . . . 3-9
External Bus Connector . . . . . . . . . . . . . . . . . . . . . . 3-10
Diskette Drive Connector (UltraBay) . . . . . . . . . . . . . . . 3-13
Pin Assignments for Type A . . . . . . . . . . . . . . . . 3-14
Pin Assignments for Type B . . . . . . . . . . . . . . . . 3-16
Pin Assignments for Type C . . . . . . . . . . . . . . . . 3-18
Diskette Drive and Controller . . . . . . . . . . . . . . . . . . . 3-20
Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-21
ROM Subsystem . . . . . . . . . . . . . . . . . . . . . . . . 3-21
RAM Subsystem . . . . . . . . . . . . . . . . . . . . . . . . . 3-21
System Memory Map . . . . . . . . . . . . . . . . . . . . . . 3-22
System Board Memory Connector for DIMM Adapter Card 3-22
RT/CMOS RAM . . . . . . . . . . . . . . . . . . . . . . . . . 3-23
RT/CMOS Address and NMI Mask Register (Hex 0070) 3-25
RT/CMOS Data Register (Hex 0071) . . . . . . . . . . . 3-25
RT/CMOS RAM I/O Operations . . . . . . . . . . . . . . 3-26
CMOS RAM Configuration . . . . . . . . . . . . . . . . . 3-30
Miscellaneous System Functions and Ports . . . . . . . . . . 3-34
Nonmaskable Interrupt (NMI) . . . . . . . . . . . . . . . . . 3-34
System Control Port B (Hex 0061) . . . . . . . . . . . . . . 3-35
System Control Port A (Hex 0092) . . . . . . . . . . . . . . 3-36
Power-On Password . . . . . . . . . . . . . . . . . . . . . . 3-37
Other Passwords . . . . . . . . . . . . . . . . . . . . . . . . 3-38
Selectable Drive-Startup Sequence . . . . . . . . . . . . . . 3-38
Hardware Compatibility . . . . . . . . . . . . . . . . . . . . . . 3-39
Error Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-40
Microprocessor
The ThinkPad 760XD, 760XL, 765D, or 765L uses the Intel Pentium
166MHz processor with the MMX technology.
The Pentium has a 32-bit address bus and a 64-bit data bus. It is
software-compatible with all previous microprocessors. The Pentium
has an internal, split data and instruction, 32KB write-back cache. It
includes pipelined math coprocessor functions and superscalar
architecture (two execution units).
Signals
The keyboard and mouse signals are driven by open-collector drivers
pulled to 5 V dc through a pull-up resistor. Figure 3-1 lists the
signals.
Connector
The keyboard/mouse connector uses a 6-pin, miniature DIN
connector.
6 5
4 3
2 1
Note: The maximum current for +5 V dc (pin 4) is 0.5 A for both the
mouse and the numeric keypad.
112 113 114 115 116 117 118 119 120 121 122 123 76 81 86
1 2 3 4 5 6 7 8 9 10 11 12 13 15
16 17 18 19 20 21 22 23 24 25 26 27 28 29
30 31 32 33 34 35 36 37 38 39 40 41 43
44 46 47 48 49 50 51 52 53 54 55 57
Fn 58 60 61 62 64
83
79 84 89
Left Right
112 113 114 115 116 117 118 119 120 121 122 123 76 81 86
1 2 3 4 5 6 7 8 9 10 11 12 13 15
16 17 18 19 20 21 22 23 24 25 26 27 28 29
30 31 32 33 34 35 36 37 38 39 40 41 43
44 46 47 48 49 50 51 52 53 54 55 57
Fn 58 60 61 62 64
83
79 84 89
Left Right
Keyboard ID
The keyboard ID consists of 2 bytes: hex 83AB (the built-in keyboard
with the external numeric keypad) or hex 84AB (the built-in keyboard
only). Interrupt 16H, function code (AH)=0AH, returns the keyboard
ID.
90 95 100 105
91 96 101
106
92 97 102
93 98 103
108
99 104
2 60
Type Legend:
A: Audio signal M: PCMCIA control signal
D: Power control signal P: Parallel port signal
F: Diskette drive signal S: Serial port signal
G: Ground T: AT-bus signal
I: IDE hard disk drive signal V: Video signal
K: Keyboard/mouse signal W: Power line
L: LED control signal X: Analog video interface
Figure 3-7. 240-Pin External Bus Connector Pin Assignments
99 1
The UltraBay connector has the following three types of pin
assignments. The appropriate interface selection is automatically
performed through two ID signals.
Figure 3-8 on page 3-14 to Figure 3-10 on page 3-18 show the pin
assignments for each connector type.
Format Size
Diskette Type 720KB 1.2MB 1.44MB 2.88MB
3.5-inch 1.0MB Diskette RWF − − −
3.5-inch 2.0MB Diskette − RWF RWF −
3.5-inch 4.0MB Diskette − − − RWF
Legend::
1KB (kilobyte) 1024 bytes
1MB (megabyte) 1,048,576 bytes
R Read
W Write
F Format
ROM Subsystem
The ROM subsystem consists of four banks of 128KB memory.
ROM is active when power is turned on and is assigned to the top of
the first and last 1MB of address space (hex 000F0000–000FFFFF
and hex FFFF0000–FFFFFFFF). After POST checks that system
memory is operating correctly, the ROM code is copied to RAM at
the same address space, and ROM is disabled.
RAM Subsystem
The RAM subsystem on the system board starts at address
hex 00000000 of the address space. The RAM subsystem for the
ThinkPad 760XD, 760XL, 765D, or 765L is 64 bits wide.
The 8MB base memory is on the system board. The 8MB memory
is on the DIMM adaptor card. Two 144-pin 8 byte dual inline
memory module (DIMM) connectors are provided on the DIMM
adapter card. One connector accepts an 8MB, a 16MB or a 32MB
DIMM. The other connector accepts an 8MB, a 16MB, a 32MB, or a
2-bank-type 64MB DIMM by using a slide switch on the DIMM
adapter card. If a 2-bank-type 64MB DIMM is installed, the 8MB
memory on the DIMM adaptor card becomes disabled. This means
that the memory capacity can be increased up to 104MB when
DIMMs are used (see “System Board Memory Connector for DIMM
Adapter Card” on page 3-22).
Figure 3-13 on page 3-23 shows the pin assignments for the DIMM
adapter card memory connector.
RT/CMOS RAM
The RT/CMOS RAM (real-time clock/complementary metal-oxide
semiconductor RAM) module contains the real-time clock and 128
bytes of CMOS RAM. The clock circuitry uses 14 bytes of this
memory; the remainder is allocated to configuration and
system-status information. A battery is built into the module to keep
the RT/CMOS RAM active when the power supply is not turned on.
In addition to the 128 bytes of CMOS/RAM, a CMOS/RAM extension
of 4KB is provided for configuration and other system information.
The NMI mask register is used with the RT/CMOS data register (hex
0071) to read from and write to the RT/CMOS RAM bytes.
Attention
The operation following a write to hex 0070 should access hex 0071;
otherwise, intermittent failures of the RT/CMOS RAM can occur.
Bit Function
7 NMI mask
6–0 RT/CMOS RAM address
Figure 3-15. RT/CMOS Address and NMI Mask Register (Hex 0070)
The RT/CMOS data register is used with the RT/CMOS address and
NMI mask register (hex 0070) to read from and write to the
RT/CMOS RAM bytes.
Bit Function
7–0 RT/CMOS data
Attention
The operation following a write to hex 0070 should access hex 0071;
otherwise, intermittent failures of the RT/CMOS RAM can occur.
Address
(Hex) Function Byte Number
000 Seconds 0
001 Second alarm 1
002 Minutes 2
003 Minute alarm 3
004 Hours 4
005 Hour alarm 5
006 Day of week 6
007 Date of month 7
008 Month 8
009 Year 9
00A Status register A 10
00B Status register B 11
00C Status register C 12
00D Status register D 13
Bit Function
7 Update in progress (UIP)
6 Countdown chain
1 - resets countdown chain
0 - countdown chain enabled
5 Oscillator enable
0 - oscillator off
1 - oscillator on
4 Bank select
3–0 Rate-selection bits
Bit Function
7 Set
6 Enable periodic interrupt
5 Enable alarm interrupt
4 Enable update-ended interrupt
3 Enable square wave
2 Date mode
1 24-hour mode
0 Enable daylight-saving time
Bit Function
7 Interrupt request flag
6 Periodic interrupt flag
5 Alarm interrupt flag
4 Update-ended interrupt flag
3–0 Reserved
Bit Function
7 Valid RAM
6–0 Reserved
Figure 3-22 shows the bit definitions for the CMOS RAM
configuration bytes.
Bit Function
7 Real-time clock power
6 Configuration record and checksum status
5 Incorrect configuration
4 Memory size mismatch
3 Hard disk controller/drive C initialization status
2 Time status indicator
1, 0 Reserved
Bit 7 When set to 1, this bit indicates that the real-time clock
has lost power.
Bit 6 When set to 1, this bit indicates that the checksum is
incorrect.
Bit 5 This bit indicates the results of a power-on check of the
equipment byte (hex 014). When set to 1, this bit
indicates that the configuration information is incorrect.
Bit 4 When set to 1, this bit indicates that the memory size
does not match the configuration information.
Bit 3 When set to 1, this bit indicates that the controller or hard
disk drive failed initialization.
Bit 2 When set to 1, this bit indicates that the time is invalid.
Bits 1, 0 These bits are reserved.
Hard Disk Drive Type Byte (Hex 011): This byte defines the type
of hard disk drive installed. Hex 00 indicates that no hard disk drive
is installed.
Equipment Byte (Hex 014): This byte defines the basic equipment
in the system for the power-on diagnostic tests.
Bit Description
7, 6 Number of diskette drives
5, 4 Display operating mode
3, 2 Reserved
1 Coprocessor presence
0 Diskette drive 0 presence
Low and High Base Memory Bytes (Hex 015 and Hex 016): The
low and high base memory bytes define the amount of memory
below the 640KB address space.
Low and High Expansion Memory Bytes (Hex 017 and Hex
018): The low and high expansion memory bytes define the amount
of memory above the 1MB address space.
Low and High Usable Memory Bytes (Hex 030 and Hex 031):
The low and high usable memory bytes define the total amount of
contiguous memory from 1MB to 20MB.
The NMI requests from system board channel check are subject to
mask control with the NMI mask bit in the RT/CMOS Address
register. See “RT/CMOS Address and NMI Mask Register (Hex
0070)” on page 3-25. The power-on default of the NMI mask is 1
(NMI disabled).
Attention
The operation following a write to hex 0070 should access hex 0071;
otherwise, intermittent failures of the RT/CMOS RAM can occur.
Bit Function
7–4 Reserved
3 Enable channel check
2 Enable PCI SERR#
1 Enable speaker data
0 Timer 2 gate to speaker
Bit Function
7 PCI SERR# (PCI error) status
6 Channel check status
5 Timer 2 output
4 Toggles with each refresh request
3 Enable channel check
2 Enable PCI SERR# (PCI error) check
1 Enable speaker data
0 Timer 2 gate to speaker
Bit 7 If a system board error occurs and the PCI SERR# line is
activated, this bit is set to 1.
Bit 6 When set to 1, this bit indicates that a channel check has
occurred.
Bit 5 When read, this bit indicates the condition of the
timer/counter 2 ‘output’ signal.
Bit 4 When read, this bit toggles for each refresh request.
Bit 3 When set to 0, this bit enables the channel check. This
bit is set to 1 during a power-on reset.
Bit 2 When set to 0, this bit enables the PCI SERR#.
Bit 1 When set to 1, this bit enables the speaker data.
Bit 0 When set to 1, this bit enables the timer 2 gate.
Bit Function
7–4 Reserved
3 Security lock latch
2 Reserved (must be set to 0)
1 Alternate gate A20
0 Alternate hot reset
Power-On Password
RT/CMOS RAM has 8 bytes reserved for the power-on password
and the check character. The 8 bytes are initialized to hex 00. The
microprocessor can access these bytes only during POST. After
POST is completed, if a power-on password is installed, the
password bytes are locked and cannot be accessed by any program.
Attention
When changing your startup sequence, you must be extremely
careful when doing write operations (such as copying, saving, or
formatting). Your data or programs can be overwritten if you select
the wrong drive.
The functional interfaces for the computer are compatible with the
following:
The Intel 8259 interrupt controllers (edge trigger mode).
The Intel 8254 timers driven from 1.193 MHz (channels 0, 1, and
2).
The Intel 8237 DMA controller-address/transfer counters, page
registers, and status fields only. The command and request
registers, and the rotate and mask functions, are not supported.
The mode register is partially supported.
The NS16550 serial communications controller.
The Intel Pentium microprocessor.
The Intel 8086**, 8088**, 80286**, 80386**, and i486DX
microprocessors.
The Intel 8087**, 80287**, 80387** math coprocessors.
The Intel 82077AA** diskette drive controller.
The keyboard interface at addresses hex 0060 and hex 0064.
Display modes supported by the IBM Monochrome Display and
Printer Adapter, the IBM Color/Graphics Monitor Adapter, and the
IBM Enhanced Graphics Adapter.
The parallel printer ports (Parallel 1, Parallel 2, and Parallel 3) in
compatibility mode.
Error Description
Code
101 Interrupt failure.
102 Timer failure.
103 Timer interrupt failure.
104 Protected mode failure.
105 Last 8042 command not accepted.
107 NMI test failure.
108 Timer bus test failure.
109 Low meg-chip select test.
110 Planar parity.
111 I/O parity.
118 Planar parity error logged.
158 A supervisor password is set, but no hard disk password is set.
159 The hard disk password is not identical to the supervisor password.
161 Dead battery.
163 Date and time are not set; clock not updated.
173 CMOS CRC error.
174 Configuration error.
175 Bad EEPROM CRC 1.
177 Bad supervisor password checksum.
178 EEPROM is not functional.
179 NVRAM error log full.
183 Supervisor password is needed.
184 Bad power-on password checksum.
185 Corrupted startup boot sequence.
186 Inconsistency between EEPROM and security lock latch 2.
188 Bad EEPROM CRC 2.
189 Too many passwords attempted.
190 Critically low battery condition detected.
191XX PM initialization error. (X can be any character.)
195 Configuration mismatch error found during hibernation wake-up.
196 Critical error found during hibernation wake-up.
201 Memory data error.
202 Memory line error 00 through 15.
203 Memory line error 16 through 23.
215 Memory test failure on on-board memory.
221 ROM to RAM remap error.
301 Keyboard error.
This section describes the video, DSP, Audio, IR, Enhanced video,
and PCMCIA subsystems of the ThinkPad computers. It also
provides the Programmable Option Select (POS) information for the
DSP and IR subsystems.
The video subsystem also supports PS/2 analog displays without any
additional adapters.
Note: Use of any video subsystem features not documented in this
book can result in future incompatibility.
Color Resolution
640×480
65,536 colors 800×600
1024×768 *
640×480
16,777,216 colors
800×600 *
* For 2MB video RAM models only.
4-2 Subsystems
Table 4-1. BIOS video VGA modes
Alpha- Buffer Expanded Size
Mode Box Max
Type Colors numeric Start Pels
(Hex) Size Pages SVGA XGA
Format Address
0, 1 A/N 16 40×25 B8000 8×8 8 320×200 800×600 960×600
A/N 16 40×25 B8000 8×14 8 320×350 800×525 960×700
0 ,
*
Video Modes
1*
0#, 1# A/N 16 40×25 B8000 8×16 8 320×400 800×600 960×600
2, 3 A/N 16 80×25 B8000 8×8 8 640×200 800×600 960×600
A/N 16 80×25 B8000 8×14 8 640×350 800×525 960×700
2 ,
*
3*
2#, 3# A/N 16 80×25 B8000 8×16 8 640×400 800×600 960×600
Subsystems
13 APA 256 40×25 A0000 8×8 1 320×200 800×600 960×600
The video subsystem supports the modes listed in Figure 4-1 and
4-3
VESA mode External monitor TFT LCD DSTN TV out**
4-4
Video mode number LCD
87i 96i 56 60 70 72 75 85 SVGA XGA SVGA NTSC PAL
VGA modes — o o o o o o
640x480x256 101h o o o o o o o o o
640x480x64k 111h o o o o o o o1 o o
640x480xTrue 112h o o o o1 o1 o1 o o2
* 800x600x16 102h o o o o o o o
800x600x256 103h o o o o o o o
800x600x64k 114h o o o1 o o o1 o
800x600xTrue 115h o1 o1 o1 o1 o2
Subsystems
* 1024x768x16 104h o o o o o
1024x768x256 105h o o o o o
1024x768x64k 117h o1 o1 o1 o
1024x768xTrue 118h
* 1280x1024x16 106h o o
1280x1024x256 107h o1 o1
1280x1024x64k 11Ah
Note:
*: 16 color modes are not supported.
**: For the Enhanced video model only.
o: Supported by both 2MB and 1MB VRAM model.
o1: Supported by the 2MB VRAM model only.
o2: Supported by the SVGA TFT model only.
System Settings
Mwave DSP
Subsystems 4-5
MIDI Port Function (760XD and 765D)
I/O Address
0300–0302
0330–0332 (default)
Serial Port
COM1 (I/O: 03F8h - IRQ 4)
COM2 (I/O: 02F8h - IRQ 3) (default)
COM3 (I/O: 03E8h - IRQ 4)
COM4 (I/O: 02E8h - IRQ 3)
4-6 Subsystems
– Input impedance:
Microphone: 9 k ohm
Line In: 8 k ohm
Subsystems 4-7
Audio Subsystem
ESS AudioDrive subsystem (for the 760EL and 760ELD only) gives
16-bit stereo audio with high-quality FM music synthesis using four
operators per voice. It can record, compress, and play back voice,
sound, and music with built-in mixer controls.
System Settings
MIDI Port Function
The MIDI port I/O address is as follows (only when docked to the
docking station):
I/O Address
0300–0301
0330–0331 (default)
4-8 Subsystems
Audio Port Specifications
Audio Output:
– ⅛-inch mini-jack for headphone
– Headphone speaker output: 22 mW (32 ohm) maximum
– Maximum output level: 2.4 V pp
– Output impedance: 75 ohm
Audio Input:
– ⅛-inch mini-jack for microphone or line input
– Microphone gain: 26 dB minimum, 48.5 dB maximum
– Maximum input level:
Microphone: 1255 mV pp
Line In: 4.0 V pp
– Input impedance:
Microphone: 47 k ohm
Line In: 30 k ohm
Subsystems 4-9
Infrared (IR) Subsystem
The IR subsystem supports the following functions:
ThinkPad mode
– 1,152,000 bits per second with DMA
– FM/NRZI with flash (1/4) modulation
Generic mode1
– 115,200 bits per second
– Flash (3/16) modulation/1.6 microsecond pulse
Sharp** mode
– 9,600 bits per second
– Digital amplitude shift keying modulation
System Settings
The I/O address can be selected from the following with the system
utility program. The IR subsystem uses one serial port address and
one IR controller register address.
I/O Address
03F8–03FF Serial port 1 (default)
02F8–02FF Serial port 2
03E8–03EF Serial port 3
02E8–02EF Serial port 4
01A0–01AF IR controller register 1 (default)
01B0–01BF IR controller register 2
01C0–01CF IR controller register 3
01D0–01DF IR controller register 4
1 Designed to be compatible with the IrDA** Data Link Specification Version 1.0.
4-10 Subsystems
IRQ Level and DMA Channel
The IR subsystem uses one IRQ level and two DMA channels for
ThinkPad mode. (Generic mode and Sharp mode do not require
DMA channels.)
Subsystems 4-11
PCMCIA Subsystem
The system board has two PCMCIA (Personal Computer Memory
Card International Association) slots that support the following types
of PC Card:
16bit PC Card Type–I, II, III 5V, 3.3V
32bit PC Card Type–I, II, III 5V, 3.3V
However, x.xV, y.yV, DMA and ZV are not supported.
The maximum current allowable for both slots at the same time is:
1.0 A at 5 V dc
0.8 A at 3.3 V dc
0.1 A at 12 V dc
The PCI1130 PCI-TO-CARDBUS CONTROLLER UNIT2 is used as
the PC card controller in the system unit. The available interrupt
levels are IRQ 3, 4, 5, 7, 9, 10, 11, 14, and 15. The IRQ 15 signal is
connected to pin 161 of the PC card controller module at the
controller side. Interrupt levels INTA# and INTB# for PCI bus cannot
be used.
4-12 Subsystems
The PCMCIA slots are designed according to the following PCMCIA
standards and specifications:
Subsystems 4-13
Pin Assignments
Figure 4-4 shows the pin assignments for the PCMCIA slots.
4-14 Subsystems
Pin 16-bit PC Card 32-bit PC Card
31 D1 CAD29
32 D2 Reserved
33 IOIS16# CCLKRUN#
34 Ground Ground
35 Ground Ground
36 CD1# CCD1#
37 D11 CAD2
38 D12 CAD4
39 D13 CAD6
40 D14 Reserved
41 D15 CAD8
42 CE2 CAD10
43 VS1# CVS1
44 IORD# CAD13
45 IOWR# CAD15
46 A17 CAD16
47 A18 Reserved
48 A19 CBLOCK#
49 A20 CSTOP#
50 A21 CDEVSEL#
51 Vcc Vcc
52 Vpp Vpp
53 A22 CTRDY#
54 A23 CFRAME#
55 A24 CAD17
56 A25 CAD19
57 AS2# CVS2
58 RESET CRST#
59 WAIT# CSERR#
60 INPACK# CREQ#
61 REG# CC/BE3#
62 SPKR# CAUDIO
63 STSCHG# CSTSCHG
64 D8 CAD28
65 D9 CAD30
66 D10 CAD31
67 CD2# CCD2#
68 GND GND
The maximum current for +12 V dc is 0.1 A (including both slots and
V pp). When the computer is in suspend mode, it requires a current
of 0.05 A.
Subsystems 4-15
Programmable Option Select (POS)
This section provides the POS information for the DSP and IR
subsystems.
This section describes the setting for the system board DSP
subsystem POS register 2 (hex 0102). When the DSP subsystem is
in setup mode, this read/write register enables or disables the
system board DSP subsystem functions.
Bit Function
7–1 Reserved
0 Enable DSP subsystem functions
Figure 4-5. System Board DSP Subsystem POS Register 2 (Hex 0102)
4-16 Subsystems
IR Subsystem Setup
Take the following precautions before you set individual bits in the
POS registers:
Set bit 0 in the system board Enable/Setup register (hex 0094) to
0 to put the IR subsystem into setup mode.
Set other bits in the system board Enable/Disable register to 1 to
prevent other subsystems from entering setup mode.
Note: During the setup operation, the IR subsystem is disabled.
This section describes the setting for the system board IR subsystem
POS register 2 (hex 0102). When the IR subsystem is in setup
mode, this read/write register enables or disables the system board
IR subsystem functions.
Bit Function
7–1 Reserved
0 Enable IR subsystem functions
Subsystems 4-17
IDE Channel on the UltraBay
A primary IDE channel is provided on the UltraBay connector,
providing two system settings: I/O address and IRQ level.
MIDI/Joystick Port
The MIDI/Joystick port consists of the following functions:
MIDI port (in/out)
Joystick port
MIDI Interface
A MIDI communication function is provided with the DSP subsystem.
The MIDI interface is compatible with MPU-401 (UART mode).
Joystick Interface
A joystick interface is provided at I/O address 0201. You can select
whether to enable or disable it with the ThinkPad Features program.
4-18 Subsystems
Appendix A. System Resources
A-2
System IRQ I/O Address Memory DMA
Resources (Hex) Address (Hex) Channel
PCMCIA None 03E0–03E1 None None
Controller (The PCMCIA
Cartridge
option in the
UltraBay:
13E0–13E1
Docking
station's PC
Card slots:
03E2–03E3)
PC Card (Depends (Depends on (Depends on None
on the the type of PC the type of PC
type of Card) Card)
PC
Card)
Real Time 8 0070–0071 None None
Clock
TrackPoint III 12 0060 and 0064 None None
or Mouse
Math 13 None None None
Coprocessor
Exception
SCSI 11, 3, 5, Noneò CA000–CBFFF, None
Controller in 10, 12, C8000–C9FFF,
Dock Iñ 14, or CE000–CFFFF,
15 or
DE000–DFFFF
SCSI 11, 9, 340–35F or DC000–DFFFF, None
Controller in 10, or 140–14F CC000–CFFFF,
Dock IIñ 12 C8000–CBFFF,
D0000–D3FFF,
D4000–D7FFF,
D8000–DBFFF,
or disabled
SCSI 11, 3, 4, (Automatically None None
Controller in 5, 7, 9, set by the
SelectaDock 10, 15, system)
Docking or
System disabled
IDE Hard Disk 15 0170–0177 None None
Drive or IDE and
CD-ROM Drive 0376–0377
in the docking
station
ISA adapter (Refer to manual that came with the adapter card.)
card (option
card) in the
docking station
A-3
System IRQ I/O Address Memory DMA
Resources (Hex) Address (Hex) Channel
PCI adapter 11, 3, 4, (Refer to manuals that came with the adapter
card (option 5, 7, 9, card.)
card) in the 10, 15,
SelectaDock or
Docking disabledñ
System
Note: Note: Note: Note: Note:
ñ Select an ñ ñ Addresses in ñ Memory ñ When
IRQ and the Enhanced the upper than the you
memory Video parentheses system enable
addresses with features are also used memory will be ECP as
the jumper and and PCI when ECP is automatically the
DIP switches adapter enabled by the set by the printer
on the system card in ThinkPad system. operating
board of the the Features mode
Dock I or Dock SelectaDock program as the by
II. See Dock I Docking printer ThinkPad
User's Guide System operating Features
or Dock II share mode. program,
User's Guide. the one of
ò
Do not select same the
Memory-mapped
Disabled when IRQ11. choices
I/O
OS/2 is used. (including
ò Sound
“disabled”)
Blaster
must be
and
selected.
MIDI
share
the
same
IRQ.
A-4
Appendix B. System Management API
(SMAPI) BIOS Overview
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-3
Header Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-4
Calling Convention . . . . . . . . . . . . . . . . . . . . . . . . . . B-6
Parameter Structure . . . . . . . . . . . . . . . . . . . . . . . B-6
Sample in Assembler Language . . . . . . . . . . . . . . . B-8
Sample in C Language . . . . . . . . . . . . . . . . . . . . B-9
Calling Convention Pseudo Code . . . . . . . . . . . . . . . B-10
Return Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-11
Function Description . . . . . . . . . . . . . . . . . . . . . . . . B-12
System Information Service . . . . . . . . . . . . . . . . . . B-12
Get System Identification . . . . . . . . . . . . . . . . . . B-12
Get CPU Information . . . . . . . . . . . . . . . . . . . . B-13
Get Display Device Information . . . . . . . . . . . . . . B-14
Get Docking Station Information . . . . . . . . . . . . . . B-15
Get UltraBay Information . . . . . . . . . . . . . . . . . . B-16
Get Slave Micro Control Unit Information . . . . . . . . . B-17
Get System Sensor Status . . . . . . . . . . . . . . . . . B-18
Get Video Information . . . . . . . . . . . . . . . . . . . . B-19
Get Refresh Rate Capability . . . . . . . . . . . . . . . . B-20
System Configuration Service . . . . . . . . . . . . . . . . . B-21
Get Display Device State . . . . . . . . . . . . . . . . . . B-21
Set Display Device State . . . . . . . . . . . . . . . . . . B-23
Get Pointing Device State . . . . . . . . . . . . . . . . . . B-24
Set Pointing Device State . . . . . . . . . . . . . . . . . . B-25
Get Hotkey Sticky/Lock . . . . . . . . . . . . . . . . . . . B-26
Set Hotkey Sticky/Lock . . . . . . . . . . . . . . . . . . . B-27
Power Management Service . . . . . . . . . . . . . . . . . . B-28
Get Power Management Mode . . . . . . . . . . . . . . . B-28
Set Power Management Mode . . . . . . . . . . . . . . . B-29
Get Timer Control . . . . . . . . . . . . . . . . . . . . . . B-30
Set Timer Control . . . . . . . . . . . . . . . . . . . . . . B-32
Event Bit Definition . . . . . . . . . . . . . . . . . . . . . . . B-33
Get System Event Global Condition . . . . . . . . . . . . B-34
Set System Event Global Condition . . . . . . . . . . . . B-35
Get System Event 1 Condition . . . . . . . . . . . . . . . B-36
Set System Event 1 Condition . . . . . . . . . . . . . . . B-37
Get System Event 2 Condition . . . . . . . . . . . . . . . B-38
Set System Event 2 Condition . . . . . . . . . . . . . . . B-39
Get System Timer . . . . . . . . . . . . . . . . . . . . . . B-40
Set System Timer . . . . . . . . . . . . . . . . . . . . . . B-41
“Header Image” on page B-4 describes how to use the SMAPI BIOS.
The SMAPI BIOS uses the stack/data area directly with the selector
when the BIOS is invoked. Therefore, the caller needs to define the
same privilege level as the BIOS.
Parameter Structure
The memory allocation for the input/output field should be prepared
by the caller. The input field specifies the function request to the
SMAPI BIOS, and the BIOS fills in the return value to the output
field.
Input Field
;
; Output Parameter Structure
;
SMB_OUTPARM STRUC
@SMBOUT_RC DB ?
@SMBOUT_SUB_RC DB ?
@SMBOUT_PARM_1 DW ?
@SMBOUT_PARM_2 DW ?
@SMBOUT_PARM_3 DW ?
@SMBOUT_PARM_4 DD ?
@SMBOUT_PARM_5 DD ?
SMB_OUTPARM ENDS
//
// Output Parameter Structure
//
typedef struct {
BYTE SMBOUT_RC ;
BYTE SMBOUT_SUB_RC ;
WORD SMBOUT_PARM_1 ;
WORD SMBOUT_PARM_2 ;
WORD SMBOUT_PARM_3 ;
DWORD SMBOUT_PARM_4 ;
DWORD SMBOUT_PARM_5 ;
} OUTPARM, \POUTPARM ;
Assembler Language
InputParm SMB_INPARM < >
OutputParm SMB_OUTPARM < >
16-bit
push ds
mov ax, offset OutputParm
push ax
push ds
mov ax, offset InputParm
push ax
call dword ptr SmapiBios
add sp, 8
32-bit
push ds
mov eax, offset OutputParm
push eax
push ds
mov eax, offset InputParm
push eax
call fword ptr SmapiBios
add sp, 16
C Language
typedef WORD (far \ SMB)(FPINPARM, FPOUTPARM) ;
SMB SmapiBios ;
INPARM InputParm ;
OUTPARM OutputParm ;
WORD RC ;
RC = SmapiBios(&InputParm, &OutputParm) ;
Input Field
Major Function Number - ðð
Minor Function Number - ðð
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Return value format
= ðð - ASCII format
= ð1 - Binary format
Parameter 1 - System ID
Parameter 2 - Country Code
Parameter 3 - System BIOS revision
Parameter 4 - (Bit 16-31) Reserved
- (Bit ð-15) System Management BIOS revision
Parameter 5 - (Bit 16-31) Reserved
- (Bit ð-15) SMAPI BIOS Interface revision
Input Field
Major Function Number - ðð
Minor Function Number - ð1
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - CPU ID
(Bit 15-8) Microprocessor type
(Bit 7-ð) Microprocessor stepping level
= FFFFh : Unknown
Parameter 3 - Clock Information
(Bit 15-8) CPU clock (units: MHz)
= FFh : Unknown
(Bit 7-ð) Internal clock (units: MHz)
= FFh : Unknown
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - ðð
Minor Function Number - ð2
Parameter 1 - (Bit 8) LCD information
(Bit 9) External CRT information
(Bit 15-1ð) Reserved
(Bit 7-ð) Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - (Bit 15-8)
Built-in display device (panel)
information 1
= ðð : Monochrome STN LCD
= ð1 : Monochrome TFT LCD
= ð2 : Color STN LCD
= ð3 : Color TFT LCD
= FF : Unknown
(Bit 7-ð)
Built-in display device (panel)
information 2
= ðð : 64ðx48ð
= ð1 : 8ððx6ðð
= ð2 : 1ð24x768
= FF : Unknown
Parameter 2 - (Bit 15-8) External CRT monitor
information
= ðð : External CRT is not attached
= 1ð : Color monitor
= 2ð : Monochrome monitor
= FF : Unknown
(Bit 7-ð) Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - ðð
Minor Function Number - ð3
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Docking station status
Bit ð - Docking status
= ð : Undock
= 1 : Dock
Bit 5-1 - Reserved
Bit 6 - Security key status
= ð : Lock position
= 1 : Unlock position
Bit 7 - Bus status
= ð : BUS isolated
= 1 : BUS connected
Parameter 1 - Docking station ID
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - ðð
Minor Function Number - ð4
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - (Bit 15-8) UltraBay device information
= ðð : FDD
= ð1 : Serial device
= ð2 : TV tuner
= 1ð : IDE device
= 2ð : PCMCIA adapter
= 3ð : Battery
= 4ð : AC adapter
= FE : No UltraBay
= FF : Unknown
(Bit 7-ð) UltraBay device ID
= ðð : FDD
= ð1 : Cellular
= ð2 : TV tuner
= 1ð : CD-ROM
= 11 : IDE-HDD
= FF : ID is not available
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - ðð
Minor Function Number - ð6
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Return value format
= ðð - ASCII format
= ð1 - Binary format
Parameter 1 - Reserved
Parameter 2 - Slave controller Revision
(= ðFFFF) - Not valid
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - ðð
Minor Function Number - ð7
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Current Status
Bit 8 - LID Status
= ð : Open
= 1 : Close
Bit 9 - Keyboard status
= ð : Close
= 1 : Open
Bit 1ð- AC Adapter
= ð : Not attached
= 1 : Attached
Bit 15-11 : Reserved
(Bit 7-ð) Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - ðð
Minor Function Number - ð8
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Video BIOS revision
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - ðð
Minor Function Number - ð9
Parameter 1 - mode
= ððxxh - VGA modes
(Bit ð-7 is ignored)
= ð1ðð - 64ðx4ððx256
= ð1ð1 - 64ðx48ðx256
= ð11ð - 64ðx48ðx32K
= ð111 - 64ðx48ðx64K
= ð112 - 64ðx48ðx16M
= ð1ð2 - 8ððx6ððx16
= ð1ð3 - 8ððx6ððx256
= ð113 - 8ððx6ððx32K
= ð114 - 8ððx6ððx64K
= ð1ð4 - 1ð24x768x16
= ð1ð5 - 1ð24x768x256
= ð1ð6 - 128ðx1ð24x16
= ð1ð9 - 1ð56x35ðx16
= ð1ðA - 1ð56x473x16
= ð1ðC - 1ð56x48ðx16
= Others : Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Refresh rate capability for
specified mode:
Bit ð - 6ðHz available
Bit 1 - 72Hz available
Bit 2 - 75Hz available
Bit 3 - 43Hz(I) available
Bit 4 - 56Hz available
Bit 5 - 7ðHz available
Bit 6-15 : Reserved (must be B'ð')
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 1ð
Minor Function Number - ðð
Parameter 1 - Request type
= ððððh : Current hardware
= ððð1h : CMOS
(effective after reboot)
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 1ð
Minor Function Number - ð1
Parameter 1 - Request display status
Bit ð - Built-in display (panel) status
= ð : Disable
= 1 : Enable
Bit 1 - External CRT status
= ð : Disable
= 1 : Enable
Bit 2 - TV status
= ð : Disable
= 1 : Enable
Bit 5-3 : Reserved
Bit 6 - Monitor detection ignore
= ð : Do not ignore
= 1 : Ignore
Bit 7 - Dual enable flag
= ð : Disable
= 1 : Enable
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - When parameter 2 (bit 7-ð) is ð1h in return
of “Get Display Device State”:
(Bit 31-16) : Reserved
(Bit 15-ð) : Display selection mode
Bit ð - Display selection mode
= ð : LCD - CRT selection mode
= 1 : LCD - TV selection mode
Bit 7-1 : Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 11
Minor Function Number - ð2
Parameter 1 - (Bit 15-8) Request type
= ððh - Current hardware
= ð1h - CMOS (effective after reboot)
(Bit 7-ð) Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - (Bit 15-8) Pointing device current status
Bit 8 - Built-in pointing device status
= ð : Disable
= 1 : Enable
Bit 9 - External pointing device status
= ð : Disable
= 1 : Enable
Bit 15-1ð: Reserved
(Bit 7-ð) Pointing device capability
Bit ð - Built-in pointing device status
= ð : Status is not controllable
= 1 : Status is controllable
Bit 1 - External pointing device status
= ð : Status is not controllable
= 1 : Status is controllable
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 11
Minor Function Number - ð3
Parameter 1 - Reserved
Parameter 2 - (Bit 15-8)
Pointing device current status
Bit 8 - Built-in pointing device status
= ð : Disable
= 1 : Enable
Bit 9 - External pointing device status
= ð : Disable
= 1 : Enable
Bit 15-1ð: Reserved
(Bit 7-ð) Request type
= ððh - Current hardware
= ð1h - CMOS (effective after reboot)
Bit 7-2: Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Reserved
Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 13
Minor Function Number - ð2
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - (Bit 15-8) Capability
Bit 9-8 - Fn Key Lock
(Bit 9, bit 8) =
(ð, ð) - Not supported
(ð, 1) - Sticky Fn key support
(1, 1) - Sticky and
Lock Fn key support
(1, ð) - Reserved
Bit 15-1ð - Reserved
(Bit 7-ð) Current status
Bit 1-ð - Fn key lock
(Bit 1, bit ð) =
(ð, ð) - Disable
(ð, 1) - Enable sticky
Fn key support
(1, 1) - Enable sticky and
Lock Fn key support
(1, ð) - Reserved
Bit 7-2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 13
Minor Function Number - ð3
Parameter - (Bit 15-8) Reserved
(Bit 7-ð) Request Status
Bit 1-ð - Sticky/lock Fn
key support
(Bit 1, bit ð) =
(ð, ð) - Disable
(ð, 1) - Enable sticky
Fn key support
(1, 1) - Enable sticky and
Lock Fn key support
(1, ð) - Reserved
Bit 7-2 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 22
Minor Function Number - ðð
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - (Bit 15-8) Power management mode
Battery operation
= ððh - High performance mode
= ð1h - Auto power management mode
= ð2h - Manual power management mode
(Bit 7- ð) Power management mode
AC operation
= ððh - High performance mode
= ð1h - Auto power management mode
= ð2h - Manual power management mode
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 22
Minor Function Number - ð1
Parameter 1 - (Bit 15-8) Power management mode
Battery operation
= ððh - High performance mode
= ð1h - Auto power management mode
= ð2h - Manual power management mode
(Bit 7-ð) Power management mode
AC operation
= ððh - High performance mode
= ð1h - Auto power management mode
= ð2h - Manual power management mode
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Reserved
Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 22
Minor Function Number - ð2
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 22
Minor Function Number - ð3
Parameter 1 - (Bit 15-8) Reserved
(Bit 7-ð) Timer control
Bit ð - System
(Hibernation/suspend) timer
= ð : Disable
= 1 : Enable
Bit 1 - Standby timer
= ð : Disable
= 1 : Enable
Bit 2 - LCD off timer
= ð : Disable
= 1 : Enable
Bit 3 - HDD off timer
= ð : Disable
= 1 : Enable
Bit 7-4 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Reserved
Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 3ð
Minor Function Number - ðð
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - (Bit 15-8) Capability for event
Bit 8 - RediSafe is
controlled by global conditions.
(RediSafe bit is ignored
in each event condition.)
= ð - Disable
= 1 - Enable
(Bit 7-ð) Global event condition
Bit ð - Enable RediSafe
if suspend is selected.
= ð - Disable
= 1 - Enable
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 3ð
Minor Function Number - ð1
Parameter 1 - (Bit 15-8) Reserved
(Bit 7-ð) Global condition for event
Bit ð - Enable safe suspend if suspend
is selected.
= ð - Disable
= 1 - Enable
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Reserved
Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 31
Minor Function Number - ðð
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Hardware and software
event definition
Bit 15-8 - Capability
(see page B-33)
Bit 7-ð - Condition
(see page B-33)
Parameter 3 - Reserved
Parameter 4 - (Bit 31-16) Reserved
(Bit 15-ð) Power switch detection
event definition
Bit 15-8 - Capability
(see page B-33)
Bit 7-ð - Condition
(See page B-33)
Parameter 5 - (Bit 31-16) Reserved
(Bit 15-ð) LID close detection
event definition
Bit 15-8 - Capability
(see page B-33)
Bit 7-ð - Condition
(see page B-33)
Input Field
Major Function Number - 31
Minor Function Number - ð1
Parameter 1 - Condition for hardware and software event
Bit 15-8 - Capability
(see page B-33)
Bit 7-ð - Condition
(see page B-33)
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - (Bit 31-16) Reserved
(Bit 15-ð) Condition for power
switch detection
Bit 15-8 - Capability
(see page B-33)
Bit 7-ð - Condition
(see page B-33)
Parameter 5 - (Bit 31-16) Reserved
(Bit 15-ð) Condition for
LID close detection
Bit 15-8 - Capability
(see page B-33)
Bit 7-ð - Condition
(see page B-33)
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 32
Minor Function Number - ðð
Parameter 1 - System timer expiry
event definition
Bit 15-8 - Capability
(see page B-33)
Bit 7-ð - Condition
(see page B-33)
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - (Bit 31-16) Reserved
(Bit 15-ð) Standby timer expiry
event definition
Bit 15-8 - Capability
(see page B-33)
Bit 7-ð - Condition
(see page B-33)
Parameter 5 - (Bit 31-16) Reserved
(Bit 15-ð)
Hibernation timer during suspend
mode expiry event definition.
Bit 15-8 - Capability
(see page B-33)
Bit 7-ð - Condition
(see page B-33)
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 32
Minor Function Number - ð1
Parameter 1 - Condition for system timer expiry
Bit 15-8 - Capability
(see page B-33)
Bit 7-ð - Condition
(see page B-33)
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - (Bit 31-16) Reserved
(Bit 15-ð) Condition for standby
timer expired
Bit 15-8 - Capability
(see page B-33)
Bit 7-ð - Condition
(see page B-33)
Parameter 5 - (Bit 31-16) Reserved
(Bit 15-ð) Condition for hibernation
timer during suspend mode expired
Bit 15-8 - Capability
(see page B-33)
Bit 7-ð - Condition
(see page B-33)
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 32
Minor Function Number - ð2
Parameter 1 - (Bit 15-8) Power mode select
= ððh - Reserved
= ð1h - Manual PM mode (AC)
= ð2h - Manual PM mode (battery)
= F3h - High performance mode
= F4h - Auto pwr mgmt mode
(Bit 7-ð) Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - (Bit 15-8) System timer capability
Bit 8 = ð - Timer cannot be specified
in each power mode
= 1 - Timer can be specified
in each Power mode
Bit 15-9 - Reserved
(Bit 7- ð) Reserved
Parameter 2 - (Bit 15- 8) Reserved
(Bit 7- ð) System timer initial value
(units: minutes)
= ððh - Disable system timer
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 32
Minor Function Number - ð3
Parameter 1 - (Bit 15-8) Power mode select
= ððh - All mode
= ð1h - Manual PM mode (AC)
= ð2h - Manual PM mode (battery)
= F3h - High performance mode
= F4h - Auto pwr mgmt mode
(Bit 7-ð) System timer initial
value (units: minutes)
= ððh - Disable system timer
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Reserved
Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 32
Minor Function Number - ð4
Parameter 1 - (Bit 15-8) Power mode select
= ððh - Reserved
= ð1h - Manual PM mode (AC)
= ð2h - Manual PM mode (battery)
= F3h - High performance mode
= F4h - Auto pwr mgmt mode
(Bit 7-ð) Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - (Bit 15- 8) Standby timer capability
Bit 8 = ð - Timer cannot be specified
in each power mode
= 1 - Timer can be specified
in each power mode
Bit 15-9 - Reserved
(Bit 7-ð) Reserved
Parameter 2 - (Bit 15-8) Reserved
(Bit 7-ð) Standby timer initial
value (units: minutes)
= ððh - Disable standby timer
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 32
Minor Function Number - ð5
Parameter 1 - (Bit 15-8) Power mode select
= ððh - All mode
= ð1h - Manual PM mode (AC)
= ð2h - Manual PM mode (battery)
= F3h - High performance mode
= F4h - Auto pwr mgmt mode
(Bit 7- ð) Standby timer initial value
(units: minutes)
= ððh - Disable standby timer
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Reserved
Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 32
Minor Function Number - ð6
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - (Bit 15-8) Reserved
(Bit 7-ð) Hibernation timer during
suspend mode initial value
(units: minutes)
= ððh - Disable hibernation timer
during suspend mode
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 32
Minor Function Number - ð7
Parameter 1 - (Bit 15-8) Reserved
(Bit 7-ð) Hibernation timer during
suspend mode initial value
(units: minutes)
= ððh - Disable hibernation timer
during suspend mode
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Reserved
Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 33
Minor Function Number - ðð
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Critical low battery condition
detection event definition
Bit 15-8 - Capability
(see page B-33)
Bit 7-ð - Condition
(see page B-33)
Parameter 3 - Reserved
Parameter 4 - (Bit 16-31) Reserved
(Bit ð-15) Out-of-environment condition
detection event definition
Bit 15-8 - Capability
(see page B-33)
Bit 7-ð - Condition
(see page B-33)
Parameter 5 - Reserved
Input Field
Major Function Number - 33
Minor Function Number - ð1
Parameter 1 - (Bit 15-8) Reserved
(Bit 7-ð) Condition for critical
low battery condition detection
Bit 7-ð - Condition
(see page B-33)
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - (Bit 31-8) Reserved
(Bit 7-ð) Condition for out-of-environment
condition detection
Bit 7-ð - Condition
(see page B-33)
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Reserved
Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 34
Minor Function Number - ðð
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Condition for resuming trigger
from system suspend mode
Bit ð - Resume switch by hardware
Bit 1 - LID open detection
Bit 2 - RTC alarm (resume timer)
detection
Bit 3 - RI from the serial device
detection
Bit 15-4 - Reserved
Parameter 3 - Capability for resuming trigger from
the system suspend mode
Bit ð - Resume switch by hardware
Bit 1 - LID open detection
Bit 2 - RTC alarm (resume timer)
detection
Bit 3 - RI from the Serial Device
detection
Bit 15-4 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 34
Minor Function Number - ð1
Parameter 1 - Condition for resuming trigger
from the system suspend mode
Bit ð - Resume switch by hardware
Bit 1 - LID open detection
Bit 2 - RTC alarm (resume timer)
detection
Bit 3 - RI from the serial device
detection
Bit 15-4 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 34
Minor Function Number - ð2
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - TOD of resume timer (BCD format)
Bit 7-ð - Seconds (ð-59)
Bit 15-8 - Minutes (ð-59)
Bit 23-16 - Hours (ð-23)
Bit 31-24 - Reserved
Parameter 5 - Date of resume timer (BCD format)
Bit 7-ð - Day (1-31)
Bit 15-8 - Month (1-12)
Bit 23-16 - Year (ð-99)
Bit 3ð-24 - Reserved
Bit 31 - Resume date validation
= ð - Valid (specified day)
= 1 - Invalid (every day)
Input Field
Major Function Number - 34
Minor Function Number - ð3
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - TOD of resume timer (BCD format)
Bit 7-ð - Seconds (ð-59)
Bit 15-8 - Minutes (ð-59)
Bit 23-16 - Hours (ð-23)
Bit 31-24 - Reserved
Parameter 5 - Date of resume timer (BCD format)
Bit 7-ð - Day (1-31)
Bit 15-8 - Month (1-12)
Bit 23-16 - Year (ð-99)
Bit 3ð-24 - Reserved
Bit 31 - Resume date validation
= ð - Valid (specified day)
= 1 - Invalid (every day)
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 7ð
Minor Function Number - ðð
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 7ð
Minor Function Number - ð1
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 7ð
Minor Function Number - ð2
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Input Field
Major Function Number - 7ð
Minor Function Number - ð3
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Output Field
Return Code - Error status
Auxiliary Return Code - Reserved
Parameter 1 - Reserved
Parameter 2 - Reserved
Parameter 3 - Reserved
Parameter 4 - Reserved
Parameter 5 - Reserved
Assembler Language
;
; Smapi BIOS Header
;
SMB_HEADER STRUC
@SMBHDR_SIG DB 4 dup (?) ; +ðð - Signature
@SMBHDR_VER DB ? ; +ð4 - Major version
@SMBHDR_VER_VER DB ? ; +ð5 - Minor version
@SMBHDR_LEN DB ? ; +ð6 - Length
@SMBHDR_CHKSUM DB ? ; +ð7 - Checksum
@SMBHDR_INFO DW ? ; +ð8 - Information word
@SMBHDR_RSV1 DW ? ; +ðA - Reserve 1
@SMBHDR_R_OFFSET DW ? ; +ðC - Real mode offset
@SMBHDR_R_SEGMENT DW ? ; +ðE - Real mode segment
@SMBHDR_RSV2 DW ? ; +1ð - Reserve 2
@SMBHDR_P16_OFFSET DW ? ; +12 - 16-bit protected mode offset
@SMBHDR_P16_BASE DD ? ; +14 - 16-bit protected mode base address
@SMBHDR_P32_OFFSET DD ? ; +18 - 32-bit protected mode offset
@SMBHDR_P32_BASET DD ? ; +1C - 32-bit protected mode base address
SMB_HEADER ENDS
;
;Output Parameter
;
SMB_OUTPARM STRUC
@SMBOUT_RC DB ?
@SMBOUT_SUB_RC DB ?
@SMBOUT_PARM_1 DW ?
@SMBOUT_PARM_2 DW ?
@SMBOUT_PARM_3 DW ?
@SMBOUT_PARM_4 DD ?
@SMBOUT_PARM_5 DD ?
SMB_OUTPARM ENDS
//
// Output Parameter
//
typedef struct {
BYTE SMBOUT_RC ;
BYTE SMBOUT_SUB_RC ;
WORD SMBOUT_PARM_1 ;
WORD SMBOUT_PARM_2 ;
WORD SMBOUT_PARM_3 ;
DWORD SMBOUT_PARM_4 ;
DWORD SMBOUT_PARM_5 ;
} OUTPARM, \POUTPARM ;
push eax
push cx
push si
push ds
@@:
cmp eax, dword ptr ds:[bx].@SMBHDR_SIG
je short @f
add bx, 1ðh ; Next paragraph
loop @b
stc
jmp short FindSmapiFin
FindSmapiFin:
pop ds
pop si
pop cx
pop eax
ret
FindSmapi Endp
//
// 1) Search for signature first
//
while((cnt++ < ðx1ððð) &&
!(((MyPtr->SMBHDR_SIG)[ð] == '$') &&
((MyPtr->SMBHDR_SIG)[1] == 'S') &&
((MyPtr->SMBHDR_SIG)[2] == 'M') &&
((MyPtr->SMBHDR_SIG)[3] == 'B') )) {
MyPtr++ ;
}
//
// 2) Find the Signature?
//
if (cnt >= ðx1ððð) {
// We cannot find it.
return FALSE ;
} else {
//
// 3) Calculate Checksum
//
for (cnt = ð ; cnt < MyPtr->SMBHDR_LEN ; cnt++)
cksum += (BYTE)((MyPtr->SMBHDR_SIG)[cnt]) ;
if (cksum) {
// Bad Checksum
return FALSE ;
} else {
// Build Return Address
(\pFunc) = ( (DWORD)(MyPtr->SMBHDR_R_OFFSET) +
(((DWORD)(MyPtr->SMBHDR_R_SEGMENT)) << 16) ) ;
return TRUE ;
}
}
}
push ds
mov ax, offset OutputParm
push ax
push ds
;
; Get information from Output Parm
;
or ax, ax
jnz Error
push ds
mov eax, offset OutputParm
push eax
push ds
mov eax, offset InputParm
push eax
call _SmapiBios
add sp, 16
;
; Get information from Output Parm
;
or ax, ax
jnz Error
if (GetSmapiEntry(&SmapiEntry)) {
MyInput.SMBIN_FUNC = ð ;
MyInput.SMBIN_SUB_FUNC = ð ;
if (SmapiEntry(&MyInput, &MyOutput)) {
// No System ID is available
} else {
Rc = MyOutput.SMBOUT_PARM_1 ;
}
} else {
// No Smapi BIOS interface.
// Try to use CBIOS INT 15.
}
return Rc ;
}
AT PS/2
IBM ThinkPad
Mwave TrackPoint III
Personal Computer AT UltraBay
Personal System/2
C-2 Notices
Index
connectors (continued)
A keyboard 3-5
acoustical readings, mouse 3-5
specifications 1-9 PCMCIA 4-12
address 20 gate 3-36 system board memory (DIMM
address and NMI mask register, cards) 3-22
RT/CMOS 3-25 control ports, system 3-35, 3-36
address map, system board I/O 1-5
address map–RT/CMOS RAM 3-24
air temperature, specifications 1-8 D
alternative method of resetting 3-36 data register, RT/CMOS 3-25
altitude, specifications 1-8 date-century byte, RT/CMOS RAM
anticipated page miss 1-7 configuration 3-33
Audio subsystem 4-8 depth, system unit 1-8
devices–system board 1-3
diagnostic status byte, RT/CMOS
B RAM configuration 3-30
battery 3-30 DIMM 3-21, 3-22
battery pack, specifications 1-12 diskette drive connector 3-13
boot diskette drive type byte 3-31
selectable drive-startup diskette drive/controller 3-20
sequence 3-38 display operating mode 3-32
bus adapter 3-4 displayable characters 3-8
bus master access to system board DMA controller 1-3, 1-7
RAM, specifications 1-7 DSP subsystem 1-4, 4-5
display 4-5
DSTN LCD (dual-scan supertwisted
C nematic liquid crystal display) 4-2
cables 1-8
dual-scan supertwisted nematic
cache memory operation 3-2
liquid crystal display (DSTN
CD-ROM drive 1-2
LCD) 4-2
CMOS RAM 3-34
CMOS RAM configuration 3-30
CMOS RAM subsystem 1-3 E
compatibility EEPROM subsystem 1-3
hardware 3-39 electrical specifications 1-8
configuration CRC bytes, RT/CMOS electromagnetic compatibility,
RAM 3-33 specifications 1-8
connectors enable NMI 3-25
diskette drive 3-13 Enhanced video subsystem 4-11
external bus 3-10 display 4-11
hard disk drive 3-9
F L
fault, overvoltage 1-11 LCD (liquid crystal display) 4-2
liquid crystal display (LCD) 4-2
Lithium-ion (Li-ion) battery pack,
G power supply 1-12
gate A20 3-36 low and high base memory bytes,
RT/CMOS RAM
configuration 3-33
H low and high expansion memory
hard disk drive connector 3-9
bytes, RT/CMOS RAM
hard disk password 3-38
configuration 3-33
hardware compatibility 3-39
low and high usable memory bytes,
heat output, specifications 1-8
RT/CMOS RAM
height, system unit 1-8
configuration 3-33
humidity, specifications 1-8
I M
maximum altitude,
identifier, model 1-2
specifications 1-8
infrared subsystem 4-10
measurements, system unit 1-8
interrupt controller 1-4
memory
IR subsystem 4-10
RAM 3-21
display 4-10
ROM 3-21
RT/CMOS 3-23
J system memory map 3-22
microprocessor 1-3
joystick/MIDI port 4-18
cache memory operation 3-2
specifications 1-3, 1-7
K MIDI/joystick port 4-18
key number 3-6 mode switch, protected 3-36
key numbers for the 84-key model identifier 1-2
keyboard 3-6 model/submodel bytes 1-2
key numbers for the 85-key mouse
keyboard 3-7 connector 3-5
key numbers for the external signals 3-5
numeric keypad 3-8
keyboard
connector 3-5
X-2 Index
power-on password 3-36, 3-37
N power-on self-test (POST)
NMI (nonmaskable interrupt) 3-34 cache test 3-2
nonmaskable interrupt (NMI) 3-34 error codes 3-40
memory errors 3-22
password 3-36, 3-37
O reset 3-36
output protection, power
ROM test 3-21
supply 1-11
programmable option select
output voltage sequencing 1-11
(POS) 2-2, 4-16
overvoltage fault 1-11
protected mode switch 3-36
P R
page hit 1-7
RAM (random access
page hit, page miss 1-7
memory) 3-21
page miss 1-7
RAM I/O operations,
parallel controller port 1-4
RT/CMOS 3-26
parallel port 1-4
RAM subsystem 1-3, 3-21
passwords
random access memory
hard disk 3-38
(RAM) 1-3, 3-21
power-on 3-37
read-only memory (ROM) 1-3, 3-21
supervisor 3-38
real mode switch 3-36
PCI error check enable 3-35
real-time clock 3-24
PCMCIA 4-12
real-time clock bytes,
interface 1-6
RT/CMOS 3-27
slots 1-4
refresh rate, specifications 1-7
subsystem 4-12
refresh request 3-35
PCMCIA slots 1-4
register, CD-ROM drive 1-5
Pentium 90/120MHz 1-3
registers
performance, system 1-7
RT/CMOS address and NMI
POS (programmable option
mask 3-25
select) 2-2, 4-16
RT/CMOS data 3-25
POST
status 3-27, 3-28, 3-29
cache test 3-2
system board enable/setup 2-3
error codes 3-40
reserved bytes, RT/CMOS RAM
memory errors 3-22
configuration 3-33
password 3-36, 3-37
reset, alternative method 3-36
reset 3-36
ROM (read-only memory) 3-21
ROM test 3-21
RT/CMOS
power supply 1-10
address and NMI mask register
battery pack (lithium ion) 1-12
(hex 0070) 3-25
connector 1-11
data register (hex 0071) 3-25
output protection 1-11
RAM address map 3-24
output voltages 1-10
RAM configuration
voltage sequencing 1-11
configuration CRC bytes 3-33
Index X-3
RT/CMOS (continued) SMAPI (continued)
RAM configuration (continued) display device, set B-23
date-century byte 3-33 docking station B-15
diagnostic status byte 3-30 event bit definition B-33
diskette drive type byte 3-31 function declaration B-58
equipment byte 3-32 function description B-12
hard disk drive 2, 3 type header image B-4
byte 3-31, 3-32 hotkey sticky/lock, set B-27
low and high base memory installation check B-59
bytes 3-33 parameter structure B-6
low and high expansion pointing device, set B-25
memory bytes 3-33 power management B-28
low and high usable memory processor (CPU) B-13
bytes 3-33 pseudo code B-10
reserved bytes 3-32, 3-33 refresh rate B-20
shutdown status byte 3-30 request system hibernation B-53
RAM I/O operations 3-26 request system off B-53
real-time clock bytes 3-27 request system standby B-52
status register A (hex request system suspend B-52
00A) 3-27 return codes B-11
status register B (hex set hibernation timer B-45
00B) 3-28 set standby timer B-43
status register C (hex set system resume timer B-51
00C) 3-29 slave micro control unit B-17
status register D (hex system identification B-12
00D) 3-29 system information B-12
system sensor B-18
timer control B-30
S UltraBay B-16
scan codes 3-6 video B-19
selectable drive-startup Sound Blaster system settings 4-6,
sequence 3-38 4-8
sequencing, output voltage 1-11 speaker data enable 3-35
serial controller port 1-4 specifications 1-7, 4-12
serial port 1-4 acoustical readings 1-9
shutdown status byte, RT/CMOS air temperature 1-8
RAM configuration 3-30 DMA controller 1-7
size, specifications 1-8 electrical 1-8
SMAPI electromagnetic
assembler sample B-8 compatibility 1-8
BIOS call B-62 heat output 1-8
C language sample B-9 humidity 1-8
calling convention B-6 maximum altitude 1-8
configuration B-21 microprocessor 1-7
display device B-14, B-21 PCMCIA 4-12
X-4 Index
specifications (continued) system timers 1-3
refresh rate 1-7
size 1-8
weight 1-8 T
standards, PCMCIA 4-12 temperature 1-8
status register A (hex 00A) 3-27 TFT LCD (thin-film transistor liquid
status register B (hex 00B) 3-28 crystal display) 4-2
status register C (hex 00C) 3-29 thin-film transistor liquid crystal
status register D (hex 00D) 3-29 display (TFT LCD) 4-2
supervisor password 3-38 time status indicator 3-30
switch to real 3-36 timers, system 1-3
system board type II PC card, PCMCIA 4-12
devices 1-3 type III PC card, PCMCIA 4-12
CMOS RAM subsystem 1-3
diskette drive controller 1-4
DMA controller 1-3
V
video subsystem 1-3, 4-2
EEPROM subsystem 1-3
display 4-2
expansion bus adapter 1-4
mode 4-3
interrupt controller 1-4
TFT LCD 4-2
keyboard/auxiliary device
voltage sequencing, power
controller 1-4
supply 1-11
microprocessor 1-3
voltage specifications 1-8
parallel controller port 1-4
voltages, power supply 1-10
RAM subsystem 1-3
serial controller port 1-4
system timers 1-3
video subsystem 1-3
W
weight, system unit 1-8
DSP subsystem POS register 2 width, system unit 1-8
(hex 0102) 4-16
enable/setup register (hex
0094) 2-3
I/O address map 1-5
IR subsystem POS register 2
(hex 0102) 4-17
system board setup registers
enable/setup register (hex
0094) 2-3
IR subsystem POS register 2
(hex 0102) 4-17
system control port A 3-36
system control port B 3-35
system management API
(SMAPI) B-1
system memory map 3-22
Index X-5
IBM
Part Number: 06J0537