IBM 600 manual

1
2
3
4
5
6
7
8
9
10
11
12
13
14
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147

Go to page of

A good user manual

The rules should oblige the seller to give the purchaser an operating instrucion of IBM 600, along with an item. The lack of an instruction or false information given to customer shall constitute grounds to apply for a complaint because of nonconformity of goods with the contract. In accordance with the law, a customer can receive an instruction in non-paper form; lately graphic and electronic forms of the manuals, as well as instructional videos have been majorly used. A necessary precondition for this is the unmistakable, legible character of an instruction.

What is an instruction?

The term originates from the Latin word „instructio”, which means organizing. Therefore, in an instruction of IBM 600 one could find a process description. An instruction's purpose is to teach, to ease the start-up and an item's use or performance of certain activities. An instruction is a compilation of information about an item/a service, it is a clue.

Unfortunately, only a few customers devote their time to read an instruction of IBM 600. A good user manual introduces us to a number of additional functionalities of the purchased item, and also helps us to avoid the formation of most of the defects.

What should a perfect user manual contain?

First and foremost, an user manual of IBM 600 should contain:
- informations concerning technical data of IBM 600
- name of the manufacturer and a year of construction of the IBM 600 item
- rules of operation, control and maintenance of the IBM 600 item
- safety signs and mark certificates which confirm compatibility with appropriate standards

Why don't we read the manuals?

Usually it results from the lack of time and certainty about functionalities of purchased items. Unfortunately, networking and start-up of IBM 600 alone are not enough. An instruction contains a number of clues concerning respective functionalities, safety rules, maintenance methods (what means should be used), eventual defects of IBM 600, and methods of problem resolution. Eventually, when one still can't find the answer to his problems, he will be directed to the IBM service. Lately animated manuals and instructional videos are quite popular among customers. These kinds of user manuals are effective; they assure that a customer will familiarize himself with the whole material, and won't skip complicated, technical information of IBM 600.

Why one should read the manuals?

It is mostly in the manuals where we will find the details concerning construction and possibility of the IBM 600 item, and its use of respective accessory, as well as information concerning all the functions and facilities.

After a successful purchase of an item one should find a moment and get to know with every part of an instruction. Currently the manuals are carefully prearranged and translated, so they could be fully understood by its users. The manuals will serve as an informational aid.

Table of contents for the manual

  • Page 1

    [...]

  • Page 2

    Note Before using this information and the product it supports, be sure to read the general information under Appendix C. First Edition (April 1998) The following paragraph does not apply to the United Kingdom or any country where such provisions are inconsistent with local law: INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THIS PUBLICATION [...]

  • Page 3

    Contents Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix Section 1. System Overview . . . . . . . . . . . . . . . . . . . 1-1 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2 System Board Devices and Features .......[...]

  • Page 4

    RT/CMOS RAM . . . . . . . . . . . . . . . . . . . . . . . . . 2-18 Miscellaneous System Functions and Ports .......... 2-28 Nonmaskable Interrupt (NMI) ................. 2-28 System Control Port A (Hex 0092) .............. 2-29 System Control Port B (Hex 0061) .............. 2-30 Power-On Password . . . . . . . . . . . . . . . . . . . . . . 2-31 Ot[...]

  • Page 5

    Power Management Service .................. B-29 Event Bit Definition ....................... B-34 Samples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-53 Function Declaration . . . . . . . . . . . . . . . . . . . . . . B-57 Installation Check . . . . . . . . . . . . . . . . . . . . . . . . B-58 BIOS Call . . . . . . . . . . . . . . [...]

  • Page 6

    vi[...]

  • Page 7

    Figures 1-1. Model and Submodel Bytes ............... 1-2 1-2. System Board Devices and Features .......... 1-3 1-3. System Board I/O Address Map ............. 1-5 1-4. Performance Specifications . . . . . . . . . . . . . . . . 1-7 1-5. Physical Specifications . . . . . . . . . . . . . . . . . . 1-8 1-6. Electrical Specifications . . . . . . . . . [...]

  • Page 8

    2-30. Display Operating Mode Bits .............. 2-26 2-31. System Control Port A (Hex 0092) .......... 2-29 2-32. System Control Port B (Hex 0061, Write) ...... 2-30 2-33. System Control Port B (Hex 0061, Read) ...... 2-30 2-34. Error Codes . . . . . . . . . . . . . . . . . . . . . . . . 2-34 3-1. BIOS Video VGA Modes ................. 3-3 3-2. Vi[...]

  • Page 9

    Preface This technical reference contains hardware and software interface information specific to the IBM ThinkPad 600 computer. This technical reference is intended for those who develop hardware and software products for the computer. Users should understand computer architecture and programming concepts. This publication consists of the followin[...]

  • Page 10

    x Preface[...]

  • Page 11

    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 . . . . . . . . . . . . . . . . . . .[...]

  • Page 12

    Description The IBM ThinkPad 600 computer (hereafter called the ThinkPad computer or the computer ) is a notebook-size computer that features AT bus architecture. Each computer supports one UltraSlim Bay and one internal hard disk drive. The ThinkPad 600 computer also supports an internal CD-ROM drive or a diskette drive in the UltraSlim Bay. Progr[...]

  • Page 13

    System Board Devices and Features Figure 1-2 lists the system board devices and their features. The IBM Personal System/2 Hardware Interface Technical Reference describes devices common to PS/2 products by type number. Figure 1-2 (Part 1 of 2). System Board Devices and Features Device Type Features Microprocessor – Intel Pentium processor with th[...]

  • Page 14

    Figure 1-2 (Part 2 of 2). System Board Devices and Features Device Type Features Interrupt controller 1 15 levels of system interrupts (interrupts are edge-triggered) Keyboard/auxiliary device controller 1 Internal keyboard TrackPoint Auxiliary device connector Password security Diskette drive controller 2 Supports: 3.5-in. diskette (1.44 MB) 3.5-i[...]

  • Page 15

    System Board I/O Address Map Figure 1-3 is the I/O address map. Figure 1-3 (Part 1 of 2). System Board I/O Address Map Address (Hex) Device 0000–001F DMA Controller (0–3) 0020, 0021 Interrupt Controller (Master) 0022–002F Reserved 0040–0043 System Timer 1 0048–004B Reserved 0060 Keyboard, Auxiliary Device 0061 System Control Port B 0062, [...]

  • Page 16

    Figure 1-3 (Part 2 of 2). System Board I/O Address Map Address (Hex) Device 0330–0333 MIDI Port 4 0350–035F ThinkPad Modem 0376, 0377 Secondary IDE Registers 0378–037A Parallel Port 2 037B–037F Reserved 0388–038B Audio Subsystem - FM Synthesizer 0398–0399 Reserved 03B4, 03B5, 03BA Video Subsystem 03BC–03BE Parallel Port 1 03C0–03C5 [...]

  • Page 17

    Specifications Figure 1-4 to Figure 1-7 list the specifications for the computers. Performance Specifications Figure 1-4. Performance Specifications Device/Cycle Clock Counts (66 MHz) Microprocessor 233 or 266 MHz L1 cache (64bit) read/write hit 1 CPUCLK L2 cache (64bit) (for not all models) read hit (back-to-back) write hit (back-to-back) 3-1-1-1([...]

  • Page 18

    Physical Specifications Figure 1-5. Physical Specifications Size Width: 300.0 mm (12 in.) Depth: 240.0 / 254.0 mm (9.6 / 10.16 in.) Height: 36.5 mm (1.46 in.) Weight by model (approximate value) 21U 5.45 lb 31U 5.04 lb 41U 5.47 lb 51U 5.55 lb 61U 5.06 lb Air Temperature System on (without diskette) 5.0°C to 35.0°C (41°F to 95°F) System on (with[...]

  • Page 19

    Electrical Specifications Figure 1-6. Electrical Specifications (56 W) Input voltage (V ac) 100–240 Frequency (Hz) 50/60 Input (kVA) 0.13 Range is automatically selected; sine wave input is required. At maximum configuration. Acoustical Readings Figure 1-7. Acoustical Readings L WAd in bels L pAm in dB < L pA > m in dB Operate Idle Operate [...]

  • Page 20

    Power Supply The power supply converts the ac voltage to dc voltage and provides power for the following: System board set Diskette drive Hard disk drive CD-ROM drive Auxiliary devices Keyboard LCD panel PCMCIA cards Voltages The power supply generates six different dc voltages: VCC5M, VCC3M, VCC12, and VCCSW. Figure 1-8 shows the maximum current f[...]

  • Page 21

    Output Protection A short circuit placed on any dc output (between two outputs or between an output and a dc return) latches all dc outputs into a shutdown state, with no hazardous condition to the power supply. If an overvoltage fault occurs in the power supply, the power supply latches all dc outputs into a shutdown state before any output exceed[...]

  • Page 22

    Battery Pack The ThinkPad computer uses a lithium-ion (Li-ion) battery pack that meets the following electrical specifications: Figure 1-10. Lithium-Ion Battery Pack Specifications Nominal Voltage + 10.8 V dc Capacity (average) 3.2 ampere hours (AH) Protection Overcurrent protection Overvoltage protection Overdischarge protection Thermal protection[...]

  • Page 23

    Section 2. System Board Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2 Microprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2 Cache Memory Operation .................... 2-2 Cacheable Address Space .................... 2-3 Bus Adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3 Ke[...]

  • Page 24

    Description This section describes the microprocessor, connectors, memory subsystems, and miscellaneous system functions and ports for the ThinkPad 600 computer. Microprocessor The ThinkPad 600 uses the Intel Pentium II 233 MHz processor with MMX technology or the Intel Pentium 233 or 266 MHz processor. The processor has a 32-bit address bus and a [...]

  • Page 25

    bus, the cache memory enters “snoop” mode and monitors all write and read operations. If memory data is written to a location in the cache and the cache line is in the “modified” state, the corresponding cache line is written back to system memory and invalidated. When the microprocessor performs a memory read, the data address is used to f[...]

  • Page 26

    Keyboard/Mouse Connector Each ThinkPad computer has a keyboard/mouse connector, where the IBM mouse, keyboard, or numeric keypad is connected. Signals The keyboard and mouse signals are driven by open-collector drivers pulled to 5 V dc through a pull-up resistor. Figure 2-1 lists the signals. Figure 2-1. Keyboard and Mouse Signals Sink current 1 mA[...]

  • Page 27

    Figure 2-3. Key Numbers for the 85-Key Keyboard Figure 2-4 shows the key numbers assigned to keys on the 86-key keyboard (for countries other than the U.S.and Japan). Figure 2-4. Key Numbers for the 86-Key Keyboard Figure 2-5 on page 2-6 shows the key numbers assigned to the keys on the 90-key keyboard (for Japan). System Board 2-5[...]

  • Page 28

    Figure 2-5. Key Numbers for the 90-Key Keyboard For scan codes assigned to each numbered key, refer to the IBM Personal System/2 Hardware Interface Technical Reference . 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[...]

  • Page 29

    Figure 2-6 shows the key numbers assigned to keys on the external numeric keypad. For scan codes assigned to each numbered key, refer to the IBM Personal System/2 Hardware Interface Technical Reference . 90 95 96 97 98 99 100 101 102 103 104 108 105 106 91 92 93 Figure 2-6. Key Numbers for the External Numeric Keypad Displayable Characters and Symb[...]

  • Page 30

    Hard Disk Drive Connector The hard disk drive connected to the system board is removable. Figure 2-7 shows the pin assignments for the connector on the system board. Figure 2-7. Hard Disk Drive Connector Pin Assignments Pin Signal I/O or Feature Pin Signal I/O or Feature 1 RSTDRVI O 2 GND Ground 3 PDD7 I/O 4 PDD8 I/O 5 PDD6 I/O 6 PDD9 I/O 7 PDD5 I/[...]

  • Page 31

    Figure 2-8 (Part 1 of 2). 240-Pin External Bus Connector Pin Assignments Pin Signal Name Pin Signal Name 001 VCC5A 061 Dock-PWR 002 VCC5A 062 Dock-PWR 003 -PCIRST_DOCK 063 Dock-PWR 004 -ACK_DOCK 064 Dock-PWR 005 -CLKRUN_DOCK 065 DOCK-L_OUT 006 GND 066 AGND 007 GND 067 DOCK-L_IN 008 AD30 068 XKBDATA 009 AD28 069 GND 010 AD26 070 GND 011 AD24 071 MSD[...]

  • Page 32

    Figure 2-8 (Part 2 of 2). 240-Pin External Bus Connector Pin Assignments Pin Signal Name Pin Signal Name 121 GND 181 -DOCK_ID2 122 -DOCK_ID1 182 GND 123 IRQSER 183 USBP1- 124 IRQ5 184 UDBP1+ 125 IRQ7 185 GND 126 IRQ10 186 GND 127 IRQ11 187 12C_DATA 128 IRQ14 188 JBCY 129 -INTB_DOCK 189 JBCX 130 -INTC_DOCK 190 JBB2 131 -INTD_DOCK 191 VTTON 132 -DASP[...]

  • Page 33

    UltraSlim Bay Connector The removable diskette drive or CD-ROM drive can be connected to the UltraSlim Bay connector on the system board. This connector has the following pin assignments. System Board 2-11[...]

  • Page 34

    Figure 2-9 (Part 1 of 2). UltraSlim Bay Connector Pin Assignments Pin Signal I/O and Feature 1 -UBAYID1 I 2 -UBAYID2 I 3 GND GND 4 GND GND 5 -INDEX I 6 -DRVSEL0 O 7 -DISKCHG I 8 -DRVID0 I 9N C N/C 10 -MEDID0 I 11 -MONTEN0 O 12 DRATE1 O 13 -DIR O 14 -DRVID1 I 15 -STEP 0 16 GND GND 17 -WRDATA O 18 GND GND 19 -WREN O 20 -MEDID1 I 21 -TRACK0 I 22 DRATE[...]

  • Page 35

    Figure 2-9 (Part 2 of 2). UltraSlim Bay Connector Pin Assignments Pin Signal I/O and Feature 51 SDD15 I/O 52 GND GND 53 UBAYID0 I 54 -SDREQ I 55 GND GND 56 -SDIOW O 57 GND GND 58 -SDIOR O 59 GND GND 60 SIORDY I 61 UBAYSLAVE O 62 -SDACK O 63 IRQ I 64 Reserved I 65 SDA1 O 66 -PDIAGHDD I/O 67 SDA0 O 68 SDA2 O 69 -CS1S O 70 -CS3S O 71 -DASPUBAY I 72 -M[...]

  • Page 36

    Diskette Drive and Controller Figure 2-10 shows the read, write, and format capabilities of the diskette drive for the ThinkPad computer. Figure 2-10. Diskette Drive Read, Write, and Format Capabilities Diskette Type Format Size 720 KB 1.2 MB 1.44 MB 3.5-inch 1.0 MB Diskette RWF − − 3.5-inch 2.0 MB Diskette − RWF RWF Legend: : 1 KB (kilobyte)[...]

  • Page 37

    Memory The ThinkPad computers use the following types of memory: Read-only memory (ROM) Random access memory (RAM) Real-time clock/complementary metal-oxide semiconductor RAM (RT/CMOS RAM) ROM Subsystem The ROM subsystem consists of four banks of 128-KB memory. ROM is active when power is turned on and is assigned to the top of the first and last 1[...]

  • Page 38

    System Memory Map Memory is mapped by the memory controller registers. Figure 2-11 shows the memory map for a correctly functioning system. Memory can be mapped differently if POST detects an error in system board memory or RT/CMOS RAM. In the figure, the variable x represents the number of 1-MB blocks of system board memory starting at or above th[...]

  • Page 39

    System Board Memory for the DIMM Connectors The system board has two DIMM connectors. Figure 2-12 shows the pin assignments for the DIMM connector. Figure 2-12. DIMM Adapter Card Memory Connector Pin Assignments Pin Signal Pin Signal Pin Signal Pin Signal 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 3[...]

  • Page 40

    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 t[...]

  • Page 41

    RT/CMOS Address and NMI Mask Register (Hex 0070) 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. Figure 2-14. RT/CMOS Address and NMI Ma[...]

  • Page 42

    RT/CMOS RAM I/O Operations During I/O operations to the RT/CMOS RAM addresses, you should mask interrupts to prevent other interrupt routines from changing the RT/CMOS address register before data is read or written. After I/O operations, you should leave the RT/CMOS address and NMI mask register (hex 0070) pointing to status register D (hex 00D). [...]

  • Page 43

    Real-Time Clock Bytes (Hex 000–00D): Bit definitions and addresses for the real-time clock bytes are shown in Figure 2-16. Figure 2-16. Real-Time Clock Bytes (Hex 000–00D) 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 Mo[...]

  • Page 44

    Status Register B (Hex 00B) Figure 2-18. Status Register B (Hex 00B) 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 7 If set to 0, this bit updates the cycle, normally by advancing the count at a rate of one cyc[...]

  • Page 45

    Status Register C (Hex 00C) Figure 2-19. Status Register C (Hex 00C) Bit Function 7 Interrupt request flag 6 Periodic interrupt flag 5 Alarm interrupt flag 4 Update-ended interrupt flag 3–0 Reserved Note: Interrupts are enabled by bits 6, 5, and 4 in status register B. Bit 7 If set to 1, this bit indicates that an interrupt has occurred; bits 6, [...]

  • Page 46

    CMOS RAM Configuration Figure 2-21 shows the bit definitions for the CMOS RAM configuration bytes. Diagnostic Status Byte (Hex 00E) Figure 2-21. Diagnostic Status Byte (Hex 00E) 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 initializati[...]

  • Page 47

    Diskette Drive Type Byte (Hex 010): This byte indicates the type of the installed diskette drive. Figure 2-22. Diskette Drive Type Byte (Hex 010) Bit Drive Type 7–4 Diskette drive type 3–0 Reserved Bits 7–4 These bits indicate the diskette drive type. Figure 2-23. Diskette Drive Type Bits 7–4 Bits 7–4 Description 0 1 1 0 0 1 0 0 Diskette [...]

  • Page 48

    Hard Disk Drive Type Byte (Hex 012): This byte defines the type of hard disk drive installed. Hex 00 indicates that no hard disk drive is installed. Figure 2-27. Hard Disk Drive Type Byte Bit Drive Type 7–4 Hard disk drive 0 3–0 Hard disk drive 1 Reserved Bytes (Hex 013): These bytes are reserved. Equipment Byte (Hex 014): This byte defines the[...]

  • Page 49

    Bits 3–2 These bits are reserved. Bit 1 If set to 1, this bit indicates that a coprocessor is installed. Bit 0 If set to 1, this bit indicates that physical diskette drive 0 is installed. 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 640-KB address space. The value i[...]

  • Page 50

    Miscellaneous System Functions and Ports This section provides information about nonmaskable interrupts (NMIs), the power-on password, and hardware compatibility. Nonmaskable Interrupt (NMI) The NMI signals the system microprocessor that a channel check timeout has occurred. This situation can cause lost data or an overrun error on some I/O devices[...]

  • Page 51

    System Control Port A (Hex 0092) Figure 2-31. System Control Port A (Hex 0092) Bit Function 7–4 Reserved 3 Security lock latch 2 Reserved (must be set to 0) 1 Alternate gate A20 0 Alternate hot reset Bits 7–4 These bits are reserved. Bit 3 This bit provides a security lock for the secured area of RT/CMOS. If this bit is set to 1, the 8-byte pow[...]

  • Page 52

    2. Reset the system microprocessor by writing a 1 to bit 0. 3. Issue a Halt instruction to the system microprocessor. 4. Reenable all maskable and nonmaskable interrupts. If you do not follow this procedure, the results are unpredictable. Note: Whenever possible, use BIOS as an interface to reset the system microprocessor to the real mode. For more[...]

  • Page 53

    Bit 6 If set to 1, this bit indicates that a channel check has occurred. Bit 5 If read, this bit indicates the condition of the timer/counter 2 ‘output’ signal. Bit 4 If read, this bit toggles for each refresh request. Bit 3 If set to 0, this bit enables the channel check. This bit is set to 1 during a power-on reset. Bit 2 If set to 0, this bi[...]

  • Page 54

    The supervisor password protects the system information in Easy-Setup from being changed by unauthorized persons. For more information about these passwords, refer to the ThinkPad User's Guide . Selectable Drive-Startup Sequence Selectable drive-startup (selectable boot) allows you to control the startup sequence of the drives in your computer[...]

  • Page 55

    Hardware Compatibility The computer supports most of the interfaces used by the IBM Personal Computer AT* and the Personal System/2* (PS/2*) products. In many cases, the command and status organization of these interfaces is maintained. The functional interfaces for the computer are compatible with the following: The Intel 8259 interrupt controller[...]

  • Page 56

    Error Codes POST returns a three or more character code message to indicate which test failed. Figure 2-34 lists the failure indicated with the associated error code. Figure 2-34 (Part 1 of 2). Error Codes Error Code Description 101 Interrupt failure. 102 Timer failure. 103 Timer interrupt failure. 104 Protected mode failure. 105 Last 8042 command [...]

  • Page 57

    Figure 2-34 (Part 2 of 2). Error Codes Error Code Description 601 Diskette drive or controller error. 602 No valid boot record on diskette. 604 Invalid diskette drive error. 1101 Serial-A test failure. 1201 Serial-B test failure. 1701 Hard disk controller failure. 1780, 1790 Hard disk 0 error. 1781, 1791 Hard disk 1 error. 2401 System board video e[...]

  • Page 58

    2-36 System Board[...]

  • Page 59

    Section 3. Subsystems Video Subsystem . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2 Video Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3 Modem Subsystem . . . . . . . . . . . . . . . . . . . . . . . . . . 3-5 ThinkPad Modem . . . . . . . . . . . . . . . . . . . . . . . . . 3-5 MIDI Port Function ......................[...]

  • Page 60

    Video Subsystem The video subsystem consists of the XGA video controller, which inteprets the monitor buffer. The video subsystem supports an IBM thin-film transistor (TFT) or High Performance Addressing (HPA) as follows: The video subsystem also supports PS/2 analog displays without any additional adapters. LCD Type VRAM Size Color Depth Resolutio[...]

  • Page 61

    Video Modes The video subsystem supports the modes listed in Figure 3-1 and Figure 3-2 on page 3-4: Figure 3-1. BIOS Video VGA Modes Pels 320 × 200 320 × 350 320 × 400 640 × 200 640 × 350 640 × 400 320 × 200 640 × 200 640 × 350 640 × 400 320 × 200 640 × 200 640 × 350 640 × 350 640 × 480 640 × 480 320 × 200 Max Pages 8 8 8 8 8 8 1 1[...]

  • Page 62

    The following shows the video BIOS extended modes for the ThinkPad 600 computer (containing a NeoMagic NM2160 video chip, which inteprets 2 MB VRAM): Figure 3-2. Video BIOS Extended Modes—NeoMagic NM2160 LCD XGA o o o o o o o o o o o o o o o o o o o o o o o External Monitor 60 70 75 85 o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o[...]

  • Page 63

    Modem Subsystem The modem subsystem is composed of a digital signal processor (DSP) and a data access arrangement (DAA): General MIDI-compatible, 40-voice wave table synthesizer 33.6-kbps data/fax modem Full-feature telephone Answering machine Headphone-free, full-duplex speaker phone ThinkPad Modem The modem subsystem provides three system setting[...]

  • Page 64

    Telephony (Modem) Function The telephony (modem) function provides the following settings: Audio Subsystem The crystal audio subsystem provides 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. It consists of an embedd[...]

  • Page 65

    Sound Blaster Support Function The Sound Blaster support function provides three system settings: I/O address, IRQ level, and DMA channel. Audio Port Specifications Audio Output: – -inch mini-jack for headphone – Headphone speaker output: 25 mW (32 ) maximum – Maximum output level: 2.4 V pp – Output impedance: 75 Audio Input: – -inch mini[...]

  • Page 66

    Infrared (IR) Subsystem The IR subsystem supports the following functions: MIF/FIR mode – 9.6 Kbps – 57.6 Kbps – 115.2 Kbps – 1.152 Mbps – 4.0 Mbps Sharp** mode – 9,600 bps 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 addr[...]

  • Page 67

    PC Card Subsystem The system board has two PC Card slots that support the following types of PC Card: 16 bit PC Card Type–I, II, III 5V, 3.3V 32 bit PC Card Type–I, II, III 5V, 3.3V DMA is not supported. The maximum current per slot is: 500 mA at 5 V dc 500 mA at 3.3 V dc 50 mA at 12 V dc The PCI1250 PCI-to-Cardbus Controller Unit 1 is used as [...]

  • Page 68

    Pin Assignments Figure 3-3 shows the pin assignments for the PCMCIA slots. Figure 3-3 (Part 1 of 2). PCMCIA PC Card Slot Pin Assignments Pin 16-Bit PC Card 32-Bit PC Card 1 Ground Ground 2D 3 CAD0 3D 4 CAD1 4D 5 CAD3 5D 6 CAD5 6D 7 CAD7 7 CE1# CC/BE0# 8 A10 CAD9 9O E CAD11 10 A11 CAD12 11 A9 CAD14 12 A8 CC/BE1# 13 A13 CPAR 14 A14 CPERR# 15 WE# CGNT[...]

  • Page 69

    Figure 3-3 (Part 2 of 2). PCMCIA PC Card Slot Pin Assignments 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 CBL[...]

  • Page 70

    IDE Channel on the UltraSlim Bay A primary IDE channel is provided on the UltraSlim Bay connector, providing two system settings: A secondary IDE channel is provided on the UltraSlim Bay connector, providing two system settings: If a hard disk is attached to the hard disk connector, an IDE device on the UltraSlim Bay becomes a primary slave. (The h[...]

  • Page 71

    Joystick Interface A joystick interface is provided at I/O address 0201. You can select whether to enable or disable it with the ThinkPad Configurations program. Subsystems 3-13[...]

  • Page 72

    3-14 Subsystems[...]

  • Page 73

    Appendix A. System Resources The following summarizes the available system resources for the computer and docking stations. Values in parentheses are alternative values that are selectable in the ThinkPad Configuration program or application programs. The default values are highlighted. System Resource IRQ I/O Address (Hex) Memory Address (Hex) DMA[...]

  • Page 74

    System Resource IRQ I/O Address (Hex) Memory Address (Hex) DMA Channel MIDI 5 , 7, 9, 10, 11, 15, or disabled 0330–0332 , 0300–0302, 0310–0313, or 0320–0323 None None MIDI port 5 , 7, 10, 11, or disabled 0330–0332 o r 0300–0302 None None Joystick port None 0201 None None (For models with internal modems only) ThinkPad modem 3 02F8–02F[...]

  • Page 75

    System Resource IRQ I/O Address (Hex) Memory Address (Hex) DMA Channel SCSI controller SelectaDock I, SelectaDock II, SelectaDock III 11 , 3, 4, 5, 7, 9, 10, 15, or disabled Automatically set by the system None None The IDE hard disk drive or IDE CD-ROM drive in the docking station 15 , 10, 11 0170–0177 and 0376, 01F0–01F7 and 3F6, 01E8–01EF [...]

  • Page 76

    A-4[...]

  • Page 77

    Appendix B. System Management API (SMAPI) BIOS Overview Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-3 Header Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-4 Calling Convention . . . . . . . . . . . . . . . . . . . . . . . . . . B-6 Parameter Structure . . . . . . . . . . . . . . . . . . . . . . . B[...]

  • Page 78

    Get Hibernation Timer .................... B-43 Set Hibernation Timer .................... B-44 Get System Event 3 Condition ............... B-45 Set System Event 3 Condition ............... B-46 Get System Resume Condition .............. B-47 Set System Resume Condition ............... B-48 Get System Resume Timer ................. B-49 Set System[...]

  • Page 79

    Overview The ThinkPad Basic Input/Output System (BIOS) provides a special software interface, called the System Management Application Program Interface (SMAPI) BIOS, to control the following unique features of the ThinkPad system: System Information This BIOS provides unique ThinkPad information, such as the system identifier (system ID). System C[...]

  • Page 80

    Header Image Systems that support SMAPI BIOS must provide the following header image in the F000 segment system ROM area at the 16-byte boundary. The client needs to search and find this SMAPI BIOS header image to get the entry point for the service. Field Offset (in Hex) Length Value Signature 00 4 bytes ' $SMB ' (ASCII) Version (Major) [...]

  • Page 81

    Information Word This area identifies the following BIOS service level: Information Word Bit : Real/V86 mode interface support Bit 1 : 16-bit protected mode support Bit 2 : 32-bit protected mode support Bit 3-15 : Reserved Real Mode Entry Point The entry point is specified in segment, offset format. Clients using Real/V86 mode can use this area for[...]

  • Page 82

    Calling Convention The client can invoke the SMAPI BIOS with a far-call to the entry point that is specified in the header file. All parameters for the BIOS and other results are stored in the client data area; the client needs to prepare an input parameter and output parameter area in its data area, and informs this area by pushing those pointers [...]

  • Page 83

    Output Field Field Offset (in Hex) Length Return Code 00 Byte Auxiliary Return Code 01 Byte Parameter 1 02 Word Parameter 2 04 Word Parameter 3 06 Word Parameter 4 08 Double word Parameter 5 0C Double word SMAPI BIOS B-7[...]

  • Page 84

    Sample in Assembler Language ; ; Input Parameter Structure ; SMB_INPARM STRUC @SMBIN_FUNC DB ? @SMBIN_SUB_FUNC DB ? @SMBIN_PARM_1 DW ? @SMBIN_PARM_2 DW ? @SMBIN_PARM_3 DW ? @SMBIN_PARM_4 DD ? @SMBIN_PARM_5 DD ? SMB_INPARM ENDS ; ; Output Parameter Structure ; SMB_OUTPARM STRUC @SMBOUT_RC DB ? @SMBOUT_SUB_RC DB ? @SMBOUT_PARM_1 DW ? @SMBOUT_PARM_2 D[...]

  • Page 85

    Sample in C Language / / // Input Parameter Structure / / typedef struct { BYTE SMBIN_FUNC ; BYTE SMBIN_SUB_FUNC ; WORD SMBIN_PARM_1 ; WORD SMBIN_PARM_2 ; WORD SMBIN_PARM_3 ; DWORD SMBIN_PARM_4 ; DWORD SMBIN_PARM_5 ; } INPARM, PINPARM ; / / // Output Parameter Structure / / typedef struct { BYTE SMBOUT_RC ; BYTE SMBOUT_SUB_RC ; WORD SMBOUT_PARM_1 ;[...]

  • Page 86

    Calling Convention Pseudo Code The following describes the calling convention using pseudo code. 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 pus[...]

  • Page 87

    Return Codes The following hexadecimal return codes are stored in both the AL (AX) register and the return code field of the output parameter: No error 53 SMAPI function is not available 81 Invalid parameter 86 Function is not supported 9 System error 91 System is invalid 92 System is busy A Device error (disk read error) A1 Device is busy A2 Devic[...]

  • Page 88

    Function Description System Information Service Get System Identification 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 [...]

  • Page 89

    Get CPU Information 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 (Bits 15-8) Microprocessor type (Bit[...]

  • Page 90

    Get Display Device Information Input Field Major Function Number - Minor Function Number - 2 Parameter 1 - (Bit 8) LCD information (Bit 9) External CRT information (Bits 15-1 ) Reserved (Bits 7- ) Reserved Parameter 2 - Reserved Parameter 3 - Reserved Parameter 4 - Reserved Parameter 5 - Reserved Output Field Return Code - Error status Auxiliary Re[...]

  • Page 91

    Get Docking Station Information 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 Bits 5-1 - [...]

  • Page 92

    Get UltraBay II Information 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 - (Bits 15-8) UltraBay device informa[...]

  • Page 93

    Get Slave Micro Control Unit Information 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[...]

  • Page 94

    Get System Sensor Status 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 = : [...]

  • Page 95

    Get Video Information 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 - Reserve[...]

  • Page 96

    Get Refresh Rate Capability Input Field Major Function Number - Minor Function Number - 9 Parameter 1 - mode = xxh - VGA modes (Bits -7 are ignored) = 1 - 64 x4 x256 = 1 1 - 64 x48 x256 = 1 2 - 8 x6 x16 = 1 3 - 8 x6 x256 = 1 4 - 1 24x768x16 = 1 5 - 1 24x768x256 = 1 6 - 128 x1 24x16 = 1 7 - 128 x1 24x256 = 1 9 - 1 56x35 x16 = 1 A - 1 56x473x16 = 1 C[...]

  • Page 97

    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 - 85Hz available Bit 7 - 48Hz(I) available Bits 8-15 : Reserved [...]

  • Page 98

    System Configuration Service Get Display Device State 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 B-22 SMAPI BIOS[...]

  • Page 99

    Output Field Return Code - Error status Auxiliary Return Code - Reserved Parameter 1 - Bits 15-8 : Reserved Bits 7- : Capability of display device function Bit - Display function type = : Not support = 1 : Support Bits 7-1 : Reserved Parameter 2 - Bits 15-8 Display current status Bit - Built-in display (panel) status = : Disable = 1 : Enable Bit 1 [...]

  • Page 100

    Set Display Device State 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 Bits 5-3 : Reserved Bit 6 - Monitor detection ignore = : Do not i[...]

  • Page 101

    Get Pointing Device State Input Field Major Function Number - 11 Minor Function Number - 2 Parameter 1 - Bits 15-8 Request type = h - Current hardware = 1h - CMOS (effective after reboot) Bits 7- Reserved Parameter 2 - Reserved Parameter 3 - Reserved Parameter 4 - Reserved Parameter 5 - Reserved Output Field Return Code - Error status Auxiliary Ret[...]

  • Page 102

    Set Pointing Device State Input Field Major Function Number - 11 Minor Function Number - 3 Parameter 1 - Reserved Parameter 2 - Bits 15-8 Pointing device current status Bits 1 , 8 - Built-in pointing device auto control = : Disable = 1 : Enable = 1 : Auto = 11 : Reserved Bit 9 - External pointing device status = : Disable = 1 : Enable Bits 15-11: R[...]

  • Page 103

    Get Hotkey Sticky/Lock 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 - Bits 15-8 Capability Bit 8 - Sticky F[...]

  • Page 104

    Set Hotkey Sticky/Lock Input Field Major Function Number - 13 Minor Function Number - 3 Parameter 1 - Bits 15-8 Reserved Bits 7- Request Status = : Disable = 1 : Sticky Fn key = 3 : Sticky & Lock Fn key Parameter 2 - Reserved Parameter 3 - Reserved Parameter 4 - Reserved Parameter 5 - Reserved Output Field Return Code - Error status Auxiliary R[...]

  • Page 105

    Power Management Service Get Power Management Mode 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 - Bits 15-8 P[...]

  • Page 106

    Set Power Management Mode Input Field Major Function Number - 22 Minor Function Number - 1 Parameter 1 - Bits 15-8 Power management mode Battery operation = h - High performance mode = 1h - Auto power management mode = 2h - Manual power management mode Bits 7- Power management mode ac operation = h - High performance mode = 1h - Auto power manageme[...]

  • Page 107

    Get Timer Control 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 SMAPI BIOS B-31[...]

  • Page 108

    Output Field Return Code - Error status Auxiliary Return Code - Reserved Parameter 1 - Reserved Parameter 2 - Bits 15-8 Capability of timer control Bit 8 - System (Hibernation/suspend) timer = : Not support = 1 : Support Bit 9 - Standby timer = : Not support = 1 : Support Bit 1 - LCD off timer = : Not support = 1 : Support Bit 11 - HDD off timer = [...]

  • Page 109

    Set Timer Control Input Field Major Function Number - 22 Minor Function Number - 3 Parameter 1 - Bits 15-8 Reserved Bits 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 Bits [...]

  • Page 110

    Event Bit Definition Bits 2- - Reserved Bit 3 - Standby Bit 4 - Suspend Bit 5 - RediSafe Bit 6 - Hibernation Bit 7 - Power off Note: If bits are duplicated, the highest bit is available. B-34 SMAPI BIOS[...]

  • Page 111

    Get System Event Global Condition 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 - Bits 15-8 Capability for even[...]

  • Page 112

    Set System Event Global Condition Input Field Major Function Number - 3 Minor Function Number - 1 Parameter 1 - Bits 15-8 Reserved Bits 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 Retu[...]

  • Page 113

    Get System Event 1 Condition 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 defin[...]

  • Page 114

    Set System Event 1 Condition Input Field Major Function Number - 31 Minor Function Number - 1 Parameter 1 - Condition for hardware and software event Bits 15-8 - Capability (see page B-34) Bits 7- - Condition (see page B-34) Parameter 2 - Reserved Parameter 3 - Reserved Parameter 4 - Bits 31-16 : Reserved Bits 15- Condition for power switch detecti[...]

  • Page 115

    Get System Event 2 Condition Input Field Major Function Number - 32 Minor Function Number - Parameter 1 - System timer expiration event definition Bits 15-8 - Capability (see page B-34) Bits 7- - Condition (see page B-34) Parameter 2 - Reserved Parameter 3 - Reserved Parameter 4 - Bits 31-16 : Reserved Bits 15- Standby timer expiration event defini[...]

  • Page 116

    Set System Event 2 Condition Input Field Major Function Number - 32 Minor Function Number - 1 Parameter 1 - Condition for system timer expiration Bits 15-8 - Capability (see page B-34) Bits 7- - Condition (see page B-34) Parameter 2 - Reserved Parameter 3 - Reserved Parameter 4 - Bits 31-16 : Reserved Bits 15- Condition for standby timer expired Bi[...]

  • Page 117

    Get System Timer Input Field Major Function Number - 32 Minor Function Number - 2 Parameter 1 - Bits 15-8 Power mode select = h - Reserved = 1h - Manual PM mode (ac) = 2h - Manual PM mode (battery) = F3h - High performance mode = F4h - Auto power management mode Bits 7- Reserved Parameter 2 - Reserved Parameter 3 - Reserved Parameter 4 - Reserved P[...]

  • Page 118

    Set System Timer Input Field Major Function Number - 32 Minor Function Number - 3 Parameter 1 - Bits 15-8 Power mode select = h - All mode = 1h - Manual PM mode (AC) = 2h - Manual PM mode (battery) = F3h - High performance mode = F4h - Auto power management mode Bits 7- System timer initial value (units: minutes) = h - Disable system timer Paramete[...]

  • Page 119

    Get Hibernation Timer 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 - Bits 15-8 : Reserved Bits 7- Hibernati[...]

  • Page 120

    Set Hibernation Timer Input Field Major Function Number - 32 Minor Function Number - 7 Parameter 1 - Bits 15-8 : Reserved Bits 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 [...]

  • Page 121

    Get System Event 3 Condition 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 de[...]

  • Page 122

    Set System Event 3 Condition Input Field Major Function Number - 33 Minor Function Number - 1 Parameter 1 - Bits 15-8 : Reserved Bits 7- Condition for critical low battery condition detection Bits 7- - Condition (see page B-34) Parameter 2 - Reserved Parameter 3 - Reserved Parameter 4 - Bits 31-8 : Reserved Bits 7- Condition for out-of-environment [...]

  • Page 123

    Get System Resume Condition 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 fro[...]

  • Page 124

    Set System Resume Condition 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 Bits 15-4 : Reserved Parameter 2 - Re[...]

  • Page 125

    Get System Resume Timer 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 Para[...]

  • Page 126

    Set System Resume Timer 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) Bits 7- - Seconds ( -59) Bits 15-8 - Minutes ( -59) Bits 23-16 - Hours ( -23) Bits 31-24 - Reserved Parameter 5 - Date of resume timer (BCD forma[...]

  • Page 127

    Request System Standby 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 Paramete[...]

  • Page 128

    Request System Hibernation 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 Pa[...]

  • Page 129

    Samples Data Structure 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 - Reserv[...]

  • Page 130

    Parameters ; ;Input Parameter ; SMB_INPARM STRUC @SMBIN_FUNC DB ? @SMBIN_SUB_FUNC DB ? @SMBIN_PARM_1 DW ? @SMBIN_PARM_2 DW ? @SMBIN_PARM_3 DW ? @SMBIN_PARM_4 DD ? @SMBIN_PARM_5 DD ? SMB_INPARM 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 D[...]

  • Page 131

    C Language // // SMAPI BIOS Header // typedef struct { BYTE SMBHDR_SIG ] 4 [ ; // Signature BYTE SMBHDR_VER ; // Major version BYTE SMBHDR_VER_VER ; // Minor version BYTE SMBHDR_LEN ; // Length BYTE SMBHDR_CHKSUM ; // Checksum WORD SMBHDR_INFO ; // Information word WORD SMBHDR_RSV1 ; // Reserve 1 WORD SMBHDR_R_OFFSET ; // Real mode offset WORD SMBH[...]

  • Page 132

    Parameters / / // Input Parameter / / typedef struct { BYTE SMBIN_FUNC ; BYTE SMBIN_SUB_FUNC ; WORD SMBIN_PARM_1 ; WORD SMBIN_PARM_2 ; WORD SMBIN_PARM_3 ; DWORD SMBIN_PARM_4 ; DWORD SMBIN_PARM_5 ; } INPARM, PINPARM ; / / // Output Parameter / / typedef struct { BYTE SMBOUT_RC ; BYTE SMBOUT_SUB_RC ; WORD SMBOUT_PARM_1 ; WORD SMBOUT_PARM_2 ; WORD SMB[...]

  • Page 133

    Function Declaration C Language / / // SMAPI BIOS function / / typedef WORD (far SMB)(FPINPARM, FPOUTPARM) ; SMAPI BIOS B-57[...]

  • Page 134

    Installation Check Assembler Language: Real Mode ; ; FindSmapi ; ----------- ; ; On Entry : None ; On Exit : CF = .. Find out ; DX - Segment ; BX - Pointer to header ; ; CF = 1 .. No SMAPI BIOS ; FindSmapi Proc Near push eax push cx push si push ds mov ax, BIOS_SEG ; F Segment mov ds, ax mov bx, ; Start point mov cx, SMB_CAND_CNT ; Total check coun[...]

  • Page 135

    @@: ; Find Smapi Head mov dx, BIOS_SEG ; Calculate Checksum.. next. pushf ; Save direction flag cld ; Clear it mov si, bx xor ax, ax movzx cx,byte ptr ds: [ bx ] .@SMBHDR_LEN @@: lodsb add ah, al loop @b popf ; Restore Direction flags cmp ah, 1 ; Checksum is OK? cmc FindSmapiFin: pop ds pop si pop cx pop eax ret FindSmapi Endp SMAPI BIOS B-59[...]

  • Page 136

    C Language typedef struct { BYTE SMBHDR_SIG [ 4 ] ; // Signature BYTE SMBHDR_VER ; // Major version BYTE SMBHDR_VER_VER ; // Minor version BYTE SMBHDR_LEN ; // Length BYTE SMBHDR_CHKSUM ; // Checksum WORD SMBHDR_INFO ; // Information word WORD SMBHDR_RSV1 ; // Reserve 1 WORD SMBHDR_R_OFFSET ; // Real mode offset WORD SMBHDR_R_SEGMENT ; // Real mode[...]

  • Page 137

    BOOLEAN GetSmapiEntry(PSMB pFunc) { PFSMB_HEADER_REAL MyPtr = xF ; WORD cnt = ; BYTE cksum = ; / / // 1) Search for signature first / / while((cnt++ < x1 ) && !(((MyPtr->SMBHDR_SIG) [] == '$') && ((MyPtr->SMBHDR_SIG) [ 1 ] == 'S') && ((MyPtr->SMBHDR_SIG) [ 2 ] == 'M') && ((My[...]

  • Page 138

    BIOS Call Assembler Language: 16-Bit Protected Mode ; ; Build Input Parameter Field ; mov al, SMB_GET_SYSID mov [ bx ] .@Func, al push ds mov ax, offset OutputParm push ax push ds mov ax, offset InputParm push ax call _SmapiBios add sp, 8 ; ; Get information from Output Parm ; or ax, ax jnz Error mov bx, offset OutputParm mov al, [ bx ] .@Parm1 B-6[...]

  • Page 139

    32-Bit Protected Mode ; ; Build Input Parameter Field ; mov ebx, offset InputParm mov al, SMB_GET_SYSID mov [ ebx ] .@Func, al 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 mov ebx, offset OutputParm mov ax, [ ebx ] .@Parm1[...]

  • Page 140

    C Language WORD GetSystemID() { SMB SmapiEntry ; INPARM MyInput ; OUTPARM MyOutput ; WORD Rc = -1 ; 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 t[...]

  • Page 141

    Appendix C. Appendix C :subject=Notices. The following paragraph does not apply to the United Kingdom or any country where such provisions are inconsistent with local law : INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THIS PUBLICATION “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMP[...]

  • Page 142

    C-2 SMAPI BIOS[...]

  • Page 143

    Index A acoustical readings, specifications 1-9 address 20 gate 2-29 address and NMI mask register, RT/CMOS 2-19 address map, system board I/O 1-5 address map–RT/CMOS RAM 2-18 air temperature, specifications 1-8 alternative method of resetting 2-29 altitude, specifications 1-8 anticipated page miss 1-7 audio subsystem 3-6 B battery 2-23 battery p[...]

  • Page 144

    G gate A20 2-29 H hard disk drive connector 2-8 hard disk password 2-31 hardware compatibility 2-33 heat output, specifications 1-8 height, system unit 1-8 humidity, specifications 1-8 I identifier, model 1-2 infrared subsystem 3-8 interrupt controller 1-4 IR subsystem 3-8 display 3-8 J joystick/MIDI port 3-12 K key number 2-4 key numbers for the 8[...]

  • Page 145

    O output protection, power supply 1-11 output voltage sequencing 1-11 overvoltage fault 1-11 P page hit 1-7 page miss 1-7 parallel controller port 1-4 passwords hard disk 2-31 power-on 2-31 supervisor 2-31 PC Card subsystem 3-9 PCI error check enable 2-31 PCMCIA 3-9 interface 1-6 slots 1-4 Pentium 90/120 MHz 1-3 performance, system 1-7 POST cache t[...]

  • Page 146

    RT/CMOS (continued) real-time clock bytes (continued) status register B (hex 00B) 2-22 status register C (hex 00C) 2-23 status register D (hex 00D) 2-23 S scan codes 2-4 selectable drive-startup sequence 2-32 sequencing, output voltage 1-11 serial port 1-4 shutdown status byte, RT/CMOS RAM configuration 2-24 size, specifications 1-8 SMAPI assembler[...]

  • Page 147

    system board (continued) devices (continued) parallel controller port 1-4 RAM subsystem 1-3 serial controller port 1-4 system timers 1-3 video subsystem 1-3 I/O address map 1-5 system control port A 2-29 system control port B 2-30 system management API (SMAPI) B-1 system memory map 2-16 system resources A-1 system timers 1-3 T temperature 1-8 TFT L[...]