CompaqTechRef
CompaqTechRef
This guide presents hardware and firmware (ROM) information for the COMPAQ
LTE Lite Family of Personal Computers for developers, engineers,
technicians, and programmers who need technical information in order to
design products for or maintain the system.
This guide covers the following 386-based models of the COMPAQ LTE Lite
Family of Personal Computers:
Values
I/O addresses and other values are in hexadecimal notation when shown with
the letter h after them. Memory addresses are in hexadecimal when
expressed as SSSS:OOOO (SSSS 16-bit segment, OOOO 16-bit offset). All
other numbers are in decimal notation.
Ranges
Signal Labels
Signal values are labeled A0, A1, A15, etc. Signal names are in uppercase
letters. Signals that are negative true, or active low, are indicated by a
dash (-) suffix.
The standard Intel naming conventions are used for the 386SX registers. The
names of the general registers when used as word-length (16-bit) registers
are AX, BX, CX, and DX. The names of the general registers when they are
used as byte-length (8-bit) registers are AH, AL, BH, BL, CH, CL, DH, and
DL.
SI, DI, and BP denote the Source Index, Destination Index, and Base Pointer
registers, respectively.
CS, DS, SS, and ES denote the four segment registers: Code Segment, Data
Segment, Stack Segment, and Extra Segment, respectively. CS is used with
the IP (Instruction Pointer) register, and SS is used with the SP (Stack
Pointer) register.
Bit values are labeled so that bit <0> represents the least-significant bit
and bit <7> the most-significant bit of a byte.
Bit fields within a byte or word are shown as a range of decimal numbers
separated by two dots enclosed in angle brackets with the higher number,
representing the most-significant bit, on the left. For example, <15..12>
refers to the four most-significant bits in a word.
The following acronyms and abbreviations are used throughout this guide:
AC alternating current
ACK acknowledge
CF Carry Flag
CH channel
cm centimeter
CNTLR controller
DC direct current
DF direction flag
---------------------------------------------------------------------------
Acronym/Abbreviation Meaning
---------------------------------------------------------------------------
DRQ data request
GB gigabyte
h hexadecimal
HW hardware
Hz Hertz
IF interrupt flag
I/F interface
in inch
INT interrupt
kg kilogram
kHz kilohertz
kv kilovolt
lb pound
m meter
mA milliampere
MHz megahertz
ms millisecond [10(-3)]
N variable parameter/value
NiCd nickel-cadmium
---------------------------------------------------------------------------
Acronym/Abbreviation Meaning
---------------------------------------------------------------------------
NMOS N-channel metal-oxide semiconductor
ns nanosecond [10(-9)]
PF parity flag
pF picofarad
PTR pointer
RF resume flag
SF sign flag
SW software
TF trap flag
us microsecond [10(-6)]
V volt
W watt
ZF zero flag
=======================================================
====================
2.1 INTRODUCTION
This chapter describes the key design and technical features of 386-based
COMPAQ LTE Lite products.
The COMPAQ LTE Lite Personal Computer, shown in Figure 2-1, is a laptop
computer weighing 6 pounds and providing over three hours of continuous use
on a single battery charge. The computer incorporates special features that
allow the user to conserve battery power while maintaining operating
efficiency. The computer may be connected to the optional Desktop Expansion
Base to become a system with full desktop functionality.
The following features are standard on all 386-based COMPAQ LTE Lite
Personal Computers:
o 386SL microprocessor
o Auxiliary battery that allows battery pack changes without shutting down
the system
Table 2-1 lists the differences in functionality among the various COMPAQ
LTE Lite products.
Integrated Track
Ball No No Yes Yes
COMPAQ LTE Lite products feature the Intel SL Superset that includes the
386SL Microprocessor and the 82360SL ISA Peripheral Controller. The 386SL
microprocessor provides processing, power management, memory management,
ISA bus control, and, on 25-MHz versions, cache memory control. The 82360SL
peripheral controller provides peripheral power management, real-time
clock, and memory map functions. The 82360SL also includes the DMA and
interrupt controllers and the serial and parallel ports.
The diskette and hard drive interfaces, enhanced option slot interface, and
keyboard/pointing device interfaces are contained in a custom
application-specific integrated circuit (ASIC). This ASIC also provides
distribution control of DMA and interrupt functions
The subsystems of the COMPAQ LTE Lite are described in the paragraphs
following Figure 2-2.
Microprocessor
The COMPAQ LTE Lite Family of Personal Computers uses the 386SL
microprocessor. The 386SL microprocessor is similar to the 386SX
microprocessor. The architecture provides 32-bit processing internally
while interfacing with external subsystems over a 16-bit data bus. The
386SL also includes an integrated bus controller, memory controller, and,
in the 25-MHz version, a cache controller. The 386SL microprocessor employs
a static design that allows the system clock to be shut off to preserve
battery power. The 386SL is compatible with software written for 386DX,
286, and 8086 microprocessors.
All 386-based COMPAQ LTE Lite products include a socket for the 387SL math
coprocessor. When installed, the math coprocessor provides accelerated
performance for numeric-intensive applications.
The Basic Input/Output System (BIOS) is contained in flash ROM. Flash ROM
retains data without power just like standard ROM. Unlike standard ROM,
however, data can be rewritten into flash ROM. This allows the BIOS to be
easily updated as necessary by using special BIOS update utility software.
The COMPAQ LTE Lite/25 features a 16-Kbyte cache memory. The COMPAQ LTE
Lite/25e and COMPAQ Lite/25C feature a 64-Kbyte cache memory. The cache
memory is arranged into four degrees of associativity as opposed to the
normal one or two degrees offered by other cache designs. For most
situations, the four-way set-associative cache design provides the
performance of larger cache memories and services over 90 percent of
processor requests with zero wait-state performance.
System Memory
The system memory provides temporary storage of programs and data being
used. The COMPAQ LTE Lite Family of Personal Computers uses 70-ns enhanced
page RAM that operates at processor speed. Up to 20-megabytes of memory may
be installed using 2-, 4-, 8-, and 16-megabyte 70-ns extended refresh
memory cards that are easily installed without disassembling the unit.
NOTE: COMPAQ LTE Lite products will accept the 4-megabyte 80-ns (normal
refresh) memory card designed for the COMPAQ LTE 386s/20 Personal
Computer. However, memory access times will be extended and power
consumption will be increased. Conversely, all memory cards designed
for COMPAQ LTE Lite products will work in the COMPAQ LTE 386s/20 with
no degradation in performance.
Mass Storage
The COMPAQ LTE Lite Personal Computer comes standard with a 3 1/2-Inch
1.44-Megabyte Diskette Drive. The 3 1/2-Inch 1.44-Megabyte Diskette Drive
reads and writes to both 1.44-megabyte and 720-Kbyte diskettes. The COMPAQ
LTE Lite Personal Computer accommodates one internal hard drive. Original
models of the COMPAQ LTE Lite Family include a 40-, 60-, 84-, or
120-megabyte hard drive.
The optional External Storage Module, which connects to the rear of the
COMPAQ LTE Lite, allows an additional diskette drive or tape drive to be
added to the system.
Video Subsystem
The COMPAQ LTE Lite video subsystem consists of a VGA controller, 256- or
512-Kbytes of video RAM, and a liquid crystal display (LCD). The COMPAQ LTE
Lite/20 and COMPAQ Lite/25 feature a video subsystem that supports VGA,
EGA, and CGA video modes and provides up to 64 shades of gray. The COMPAQ
LTE Lite/25e features an active matrix black and white video subsystem that
provides high contrast gray scaling (up to 64 shades). The COMPAQ LTE
Lite/25C features an active matrix color video subsystem that supports
between 256 simultaneous colors in 640 x 480 VGA resolution.
In addition to the integrated LCD, the video controller on all models can
simultaneously support either the Reduced Emissions Video Graphics Color
Monitor, the Video Graphics Color Monitor, or the Video Graphics Monochrome
Monitor. The video controller supports:
Serial/Parallel Interfaces
The COMPAQ LTE Lite Personal Computer includes a serial interface and a
parallel interface.
2.5 SPECIFICATIONS
Table 2-3 lists the electrical specifications of the COMPAQ LTE Lite.
Power Consumption
Average 10.0 W
Peak 21.0 W
======================================
Tables 2-4 and 2-5 list the physical specifications of the COMPAQ LTE Lite
products.
Table 2-4. COMPAQ LTE Lite/20 and COMPAQ LTE Lite/25 Physical
Specifications (Closed)
=======================================================
=======
English Metric
--------------------------------------------------------------
Dimension
Height 1.75 in 4.45 cm
Width 11.0 in 27.9 cm
Depth 8.5 in 21.6 cm
3.1 INTRODUCTION
This chapter describes the system processor (Figure 3-1), which includes
the elements listed below.
o Microprocessor [3.2]
o Math coprocessor [3.3]
3.2 MICROPROCESSOR
All models of the COMPAQ LTE Lite Family are based on the Intel 386SL
Microprocessor. The 386SL microprocessor contains all the functionality of
the 386SX microprocessor with additional functions and enhancements. The
386SL microprocessor uses a 32-bit internal architecture while interfacing
with external functions and subsystems on 16-bit data buses. The 386SL
includes a static CPU core, ISA bus control logic, a system memory
controller, special power management logic, and, in the 25-MHz version, a
cache memory controller. The 80386SL is compatible with software written
for the 8088/8086, the 80286, and the 80386DX.
External Interfacing
The 80386SL uses three 16-bit data buses for external data transfers: a
cache memory/coprocessor bus, a memory bus, and a system bus. The cache
memory/coprocessor bus handles data transfers at processor speed between
the microprocessor and either the cache memory (on 25-MHz models) or the
math coprocessor (if installed). The cache memory is discussed in detail in
Chapter 4 "Memory." More information on the math coprocessor is included
later in this chapter.
The memory bus provides data transfers at processor speed between the
microprocessor and system memory. The 386SL includes an integrated memory
controller that performs address translation according to the
Lotus/Intel/Microsoft (LIM) Expanded Memory Specification (EMS) 4.0
standard. The system memory is discussed in detail in Chapter 4, "Memory."
The system bus handles data transfers between the 386SL microprocessor and
the peripheral subsystems. The system bus has the functionality of two
buses: the peripheral bus, where transactions occur at processor speed; and
the ISA expansion bus, which provides full support of ISA transactions at
8-MHz speed. In the COMPAQ LTE Lite, the system bus operates as a
peripheral bus during video operations and as an ISA expansion bus for all
other functions. Table 3-1 lists the signals that are shared by peripheral
and ISA operations on the system bus.
Table 3-2 shows control signals used by the system bus operating in
peripheral mode.
For a complete list and description of system bus signals used for ISA
expansion bus operations, refer to Chapter 5, "ISA Expansion Bus."
Software Concepts
When power is applied or a reset operation occurs, the 80386SL enters the
Real mode. The 80386SL then provides all the capabilities and limitations
of Real mode, including compatibility with the 8086 and the 80286. The Real
mode allows only one megabyte of physical memory to be addressed and does
not provide any memory protection features. Memory is addressed via the
segment registers with the traditional 64-Kbyte limitation on segment size.
The major distinction between the Real mode of the 80386SL and that of the
80286 microprocessor is that 32-bit operands can be used with the extended
instruction set of the 80386SL. This superset of the 80286 instruction set
allows operations, such as multiplication, to use 32-bit register or memory
operands.
The Protected mode offers features compatible with the 80286 and fully
supports the following 80286 features: memory protection, addressing via
segment selectors, and 16-bit instruction set. Protected mode also allows
for improved functions unique to the 80386 that are beyond the capability
of the 80286 segment sizes (that is, 4 gigabytes on the 80386 as compared
to 64 Kbytes on the 80286). The improved functions are memory paging, I/O
protection, Virtual 8086 mode, and Protected mode's full 32-bit extended
instruction set.
The 80386SL also offers the Virtual mode to provide significantly improved
compatibility with, and protection for, concurrent execution of Real mode
applications with Protected mode operating systems. The Virtual mode allows
applications written for 8088, 8086, or 80286 Real mode to be executed
within the privilege levels defined by Protected mode. In contrast, the
80286 does not allow for security in real mode applications because the
microprocessor must be in the Real mode to execute these applications.
The Virtual mode, in combination with memory paging, allows the Real mode
address space to be simulated anywhere in the physical address space of the
80386SL. In addition, the I/O protection features permit the operating
system to trap all or a selected set of I/O ports for device protection.
The COMPAQ Expanded Memory Manager (CEMM) enables the innovative use of
these features.
Speed Control
The COMPAQ LTE Lite Personal Computer implements an innovative feature that
simulates system speeds less than the (micro)processor speed. This feature
has been implemented to provide compatibility with a small number of
software products that contain programs dependent on certain system speeds.
Typically, these programs contain timing idiosyncrasies associated with the
diskette copy protection mechanisms. The processor speed can be slowed when
the program accesses the diskette drive to allow for compatibility with
these copy protection schemes.
The processor and system memory operate at processor (CPU) speed. Access to
the expansion bus and I/O devices always occurs at 8 MHz. The expansion bus
and I/O accesses are not affected by simulated changes in CPU operating
speed.
This simulated speed control is also useful for adjusting the COMPAQ LTE
Lite to handle action software games written for 8088-based personal
computers. Reduction of the system speed to simulate the system speed of an
8088-based personal computer allows these games to be played at a realistic
speed. Many games require the user to boot from the game diskette. The
COMPAQ LTE Lite accommodates this requirement by allowing the user to
restart the system, using CTRL + ALT + DEL, without affecting the selected
system speed. The system remains at the selected speed until a new speed
has been selected or a power-on reset occurs.
The COMPAQ LTE Lite system speed can be set to values that correspond to
the equivalent speeds of an 8088-based personal computer and 6- and 8-MHz
80286-based products. These values can be entered with the Mode command
(MODE SPEED=xx) from either Microsoft MS-DOS or MS OS/2 as published by
Compaq Computer Corporation, or can be used with the "Set System Speed"
BIOS function (CX=xx) to simulate the computing speed (that is, the
processor/memory system speed) of other personal computer products.
Table 3-3 lists the values that can be used to control CPU speed with the
"MODE SPEED=" command and the resulting CPU speeds.
NOTE: In order to have the correct support, use the version of MODE that
comes on the User Programs diskette packaged with the computer.
The 80286-based product equivalent speed values are listed for relative
reference to other speed values.
The 386-based COMPAQ LTE Lite includes a socket for the optional Intel
387SL math coprocessor. The 387SL math coprocessor provides floating point,
extended integer, and binary-coded decimal (BCD) data-type support. The
386SL microprocessor checks for the presence of the 387SL by sampling the
ERROR- input line after a reset. If a low is detected, the 386SL
microprocessor will be set to make use of the 387SL when applicable. A high
indicates to the 386SL that the math coprocessor is not installed.
The ERROR- signal is connected to IRQ13 (INT 75h). The BIOS interrupt
handler for INT 75h routes this interrupt to INT 02h, which is the actual
routine for coprocessor exceptions. This method is used to provide
compatibility with 8088/8086 coprocessor exceptions. See Chapter 7, "BIOS,"
chapter for further information.
The 386SL provides a programmable idle clock signal to the 387SL math
coprocessor. When the 387SL is active, math coprocessing is performed at
processor (386SL) speed. The 386SL can be programmed to provide either no
idle clock signal at all or an idle clock of 1/16, 1/8, 1/4, 1/2, or at
processor frequency.
In 25-MHz 386SL-based models, the 387SL math coprocessor shares the address
and data bus used by the cache memory subsystem.
Table 3-4 defines the port addresses used by the coprocessor on the system
board.
4.1 INTRODUCTION
The COMPAQ LTE Lite Personal Computer contains a memory subsystem
(Figure 4-1) that includes the following:
The Basic Input/Output System (BIOS) and video firmware are contained in a
single 128K x 8 Flash Read Only Memory (ROM). Flash ROM operates like
standard ROM, providing nonvolatile storage of data, but has the added
convenience of being easily reprogrammable. Without removing the ROM chip,
the BIOS can be updated with appropriate utility software that will write
the new BIOS firmware into the ROM.
The BIOS Flash ROM is accessed through the X-bus (which is off the system
bus) during the power-on self test (POST) routine (read cycle) and when the
BIOS is being updated (write cycle). Since system memory RAM provides
higher performance than the Flash ROM, the contents of the Flash ROM are
copied into system memory (between F0000h and FFFFFh) during POST. All
subsequent BIOS calls are serviced as system memory (RAM) accesses.
The configuration memory contains real-time clock (RTC) data and data
pertaining to the configuration of the system. This CMOS-type memory along
with the RTC circuitry is kept nonvolatile when the system unit is turned
off by means of a dedicated lithium battery.
The configuration memory for the COMPAQ LTE Lite is contained within the
82360SL peripheral controller.
04h Hour
08h Month
09h Year
11h Reserved
---------------------------------------------------------------------------
Register Function
---------------------------------------------------------------------------
19h Drive C Extended Fixed Disk Drive Value
1Bh Reserved
20h Reserved
21h Reserved
22h Reserved
23h Reserved
25h Reserved
26h Reserved
2Ah Reserved
The first ten bytes, 00h through 09h, hold time, calendar, and alarm
information; the contents may be in either binary or BCD format, but not a
mixture. For the format to be switched, all ten bytes must be
re-initialized in the new format.
These bytes are updated once a second, at which time alarm conditions are
also checked. Attempts to read any of the ten bytes during an update
result in undefined data output(s). Status register B-Byte, discussed
later in this section, defines the parameters. Before initializing the
internal registers, Bit <7> of Status register B should be set to "1" to
prevent updates during initialization. This bit can then be cleared to
permit regular updating.
BIT FUNCTION
----------------
7 0 = All right to read device
1 = Time update in progress; device read not all right.
6..4 These bits specify the time base frequency. The default value
is 010 (32.768 KHz).
3..0 These bits specify the divider frequency for the clock. The
default value is 0110 (1.024 KHz).
BIT FUNCTION
----------------
7 0 = Normal operation (default)
1 = Disable time updating so that time can be set
1 0 = 12-hour mode
1 = 24-hour mode (default)
BIT FUNCTION
----------------
7 1 = Interrupt Output signal active
3..0 Reserved
BIT FUNCTION
----------------
7 0 = Real-Time Clock has lost power
1 = Real-Time Clock has not lost power
6..0 Reserved
The diagnostic status byte tells the system when there is a problem (time
invalid, faulty fixed disk drive controller, etc.) with the configuration
of the subsystems.
BIT FUNCTION
----------------
7 1 = Real-Time Clock has lost power
1,0 Reserved
The reset code tells the system what to do after the CPU is reset. The
reset code identifies the type of, or reason for, the reset. It also
provides a method of resetting the system without losing previously-stored
data or of returning the system to Real mode from Protected mode.
BIT FUNCTION
----------------
7..0 00h = Normal power-on reset
04h = Proceed to load DOS from fixed disk
05h = Jump to reset vector 0040:0067; initialize interrupt
controllers
09h = Block move return
0Ah = Jump to reset vector 0040:0067; do not initialize interrupt
controllers
Configuration Byte Register 10h -- Diskette Drive Type
This byte keeps track of drive types for two diskette drives including an
optional diskette drive installed in the External Storage Module or the
Desktop Expansion Base.
BIT FUNCTION
----------------
7..4 Primary diskette drive type:
0100 = 1.44-megabyte diskette drive only
The COMPAQ LTE Lite system unit supports only one fixed disk drive, which
is designated the primary drive.
BIT FUNCTION
----------------
7..4 Primary fixed disk drive type:
0000 = No fixed disk drive type
0001 = Type 1
0010 = Type 2
0011 = Type 3
:
1110 = Type 14
1111 = Other type (see Configuration Byte 19h)
3..0 Reserved
This byte contains the password and network server mode status.
BIT FUNCTION
----------------
7..2 Reserved
1 Password
1 = Exists
0 = not available
This byte tells the system the type of equipment installed in the unit.
BIT FUNCTION
----------------
7,6 Number of diskette drives installed:
00 = 1 drive
01 = 2 drives
10 = Reserved
11 = Reserved
3,2 Reserved
1 0 = No coprocessor installed
1 = Coprocessor installed
Bytes 15h and 16h comprise a 16-bit value that specifies the base memory
size in increments of one Kbyte. The word is stored with the
least-significant byte at the lower address (in this case, 15h).
Bytes 17h and 18h comprise a 16-bit value that specifies the extended
memory size in increments of one Kbyte (1024 bytes). The word is stored
with the least-significant byte at the lower address (in this case, 17h).
Table 4-3 defines the extended memory sizes for memory on all memory option
boards.
This byte contains the type number. If the fixed disk drive is an extended
drive type (type 15 or greater), bits <7..4> of byte 12h contain 1111
(binary). If it is a type 59, then 59 (3Bh) is contained in this byte.
(Type 60 is also a valid drive for the COMPAQ LTE 386s/20.)
Since the COMPAQ LTE 386s/20 system allows the user to have an additional
external diskette drive (installed in the optional Desktop Expansion Base
or External Storage Module) which may be configured as drive A or B, bits
<1,0> are used to keep track of this information. Bits <5..2> store
diskette drive type(s) from Configuration Byte register 10h. Bit <6> keeps
track of CPU speed.
BIT FUNCTION
----------------
7 Reserved
6 CPU speed
0 = Auto
1 = High
5..2 Configuration Byte register 10h save value
Bit 7 defines the source of hardware interrupt IRQ12. Bits <6,5> hold the
Base Memory Size and indicate how much of base memory (640 Kbytes,
512 Kbytes, or 256 Kbytes) to enable. The system ROM writes out this amount
to the Memory Installed register (I/O port 1065h).
BIT FUNCTION
----------------
7 IRQ12 select:
0 = Pointing device (mouse)
1 = Expansion bus
4..0 Reserved
This register contains information about the desired configuration for the
system's peripheral devices. Included are the serial, modem, printer, and
fixed disk drive devices. The ROM writes the value from CMOS into the
Peripheral Configuration register (I/O port 0465h).
BIT FUNCTION
----------------
7 Printer Interrupt Select
0 - Printer = IRQ5
1 - Printer = IRQ7 (default)
2 Modem State
0 = OFF (default)
1 = ON
1 Serial State
0 = OFF
1 = ON (default)
This register is also used to determine the power-on state of the Power
Control register (I/O port 0865h), specifically for the fixed disk drive
and modem devices.
BIT FUNCTION
----------------
7 Reverse video
0 = White on black
1 = Black on white
BIT FUNCTION
----------------
7,6 Power Conservation power-on condition
00 - PC AUTO (enable after 70 seconds)
01 - PC ON
10 - PC OFF
5 Run-Time Beep
0 = Enable 1 = Enable
4..0 System inactivity timeout (minutes)
00000 - No timeout
00001 - 1 minute
00010 - 2 minutes
:
10101 - 21 minutes
The first 6 bits of this byte, <5..0>, hold a Power Conservation parameter,
which determines in 1-minute increments how long a period of keyboard
inactivity will elapse before the Backlit Display goes blank. Bit <6>
determines the Num Lock key status.
BIT FUNCTION
----------------
7 Reserved
This byte allows the configuration of special video features and disables
or enables keyclicking.
BIT FUNCTION
----------------
7..3 Reserved
1 0 = Disable keyclick
1 = Enable keyclick
=======================================================
====================
Byte 31h Byte 30h Memory Size
(in Kbytes)
---------------------------------------------------------------------------
02h 00h 512
This is the century part of the current time and date encoded in BCD
(binary-coded decimal). The BIOS sets and reads this value.
BIT FUNCTION
----------------
7 1 = More than 1 megabyte of memory installed
0 = Less than 1 megabyte of memory installed
6 Used by SETUP procedures
5 Reserved
4 Coprocessor
1 = Installed
0 = Not installed
3 Run-Time Beep
1 = Disabled
0 = Enabled
2..0 Reserved
The cache memory subsystem of 25-MHz COMPAQ LTE Lite models consists of a
cache controller and 16- or 64-Kbytes of SRAM and provides zero-wait state
performance for most memory accesses. The cache controller is integrated
into the 386SL microprocessor and is programmed by BIOS at power-up to use
four-way set-associative mapping. Four-way set-associative mapping is the
most efficient caching scheme for most applications.
The cache memory uses the write-through mode of operation. In this mode of
operation, any data written into cache memory is also written into system
memory, ensuring that system memory always contains valid data.
For caching purposes, the system memory is organized into lines, blocks,
and pages. A line consists of two bytes and is the unit of transfer between
system memory and cache memory. These lines are grouped into blocks of 16
lines each. A 30-bit cache tag, which is used to determine the location,
validity, and frequency of use of data stored in the cache, is associated
with each block. The cache tags are stored in a 2-Kbyte RAM that is an
integrated part of the cache controller. In four-way set-associative
mapping, the cache tags are arranged into four sets that correspond to four
areas of the cache memory. Each area of cache memory can hold an amount of
data equal to one page of system memory data. The size of the cache memory
determines the size of a page of system memory.
Figure 4-2 shows the relationship between 16 kilobytes of cache memory and
4 megabytes system memory. The blocks of cache memory and system memory are
relative, i.e., locations in a block 0 of system memory will be mapped into
block 0 of area A, B, C, or D.
Cache Flushing
Flushing the cache invalidates data held in the cache memory. The cache can
be flushed by disabling then re-enabling the cache, and by booting or
resetting the system. Following a cache flush, all subsequent memory
accesses will be cache misses until a particular location is accessed a
second time.
Non-Cacheable Addresses
The cache memory can be enabled or disabled by the following DOS commands.
COMPAQ LTE Lite models come standard with two or four megabytes of 70-ns
enhanced-page Dynamic Random Access Memory (DRAM) as standard system
memory. The system memory controller is integrated into the 386SL
microprocessor. This controller supports LIM 4.0 EMS mapping and permits
traditional Direct Memory Access (DMA). The 82360SL provides local memory
refresh support and allows bus master control of memory.
Figure 4-4 shows the arrangement of the standard four megabytes of system
memory of 25 MHz COMPAQ LTE Lite models.
ILLUSTRATION OF Figure 4-4. 25-Mhz COMPAQ LTE Lite Models System Memory
Block Diagram
Figure 4-5 shows the arrangement of the standard two megabytes of system
memory of the COMPAQ LTE Lite/20.
ILLUSTRATION OF Figure 4-5. COMPAQ LTE Lite/20 System Memory Block Diagram
Memory Expansion
* The 16-Megabyte Memory Card is not supported by the COMPAQ LTE Lite/20.
NOTE: COMPAQ LTE Lite products will accept the 4-megabyte 80-ns (normal
refresh) memory card designed for the COMPAQ LTE 386s/20 Personal
Computer. However, memory access times will be extended and power
consumption will be increased. Conversely, all memory cards designed
for COMPAQ LTE Lite products will work in the COMPAQ LTE 386s/20 with
no degradation in performance.
Memory Control
The 386SL microprocessor accesses data from system memory as bytes (8 bits)
or words (16 bits). When it accesses a word on an even boundary, the CPU
gives that word an even-numbered address and simultaneously reads from or
writes to, as appropriate, that address and the one above it.
Memory Refresh
If an external bus master wants to control the bus for an extended period,
that bus master must perform the refresh or risk losing the contents of
dynamic memory. The external bus master performs the refresh by developing
its own refresh request timer and internal arbitration.
Memory Map
The system memory is typically configured with 640 Kbytes of base memory
with the extended memory mapped as shown in Figure 4-6.
ILLUSTRATION OF Figure 4-6. System Memory Map with 640-Kbyte Base Memory
5.1 INTRODUCTION
This chapter describes the expansion capability of the COMPAQ LTE Lite as
provided through the 198-pin external interface connector on the back of
the system unit. This connector allows optional peripherals such as the
Desktop Expansion Base, External Storage Module, or an external keyboard
and mouse to be added to the system unit.
The ISA expansion bus, which operates at 8-MHz, is intended primarily for
use by I/O devices. Accessing memory via the ISA expansion bus degrades the
performance of the COMPAQ LTE Lite. For best system performance, the
memory expansion slot, which operates at processor speed, should be used
for all memory expansion.
Logic contained within the 386SL and the 82360SL provide all control
functions of the ISA expansion bus, which exists as a shared function of
the system bus described in Chapter 3 "Processor." The ISA expansion bus
provides 8- and 16-bit data transfers with integrated peripherals as well
as expansion devices installed in the Desktop Expansion Base.
Expansion boards that do not strictly conform to ISA specifications may not
function properly. Boards most likely to fall into this category are bus
masters that are capable of gaining control of the ISA expansion bus. If an
external bus master is accessing internal memory and the SL chipset
deasserts BUSRDY (adds a wait state), the bus master should not sample the
system data (SD) lines when the BUSRDY signal is reasserted but should
sample the SD lines when the data is valid.
For more information regarding ISA expansion operations and timing, refer
to the documentation listed in Chapter 1, "Introduction."
---------------------------------------------------------------------------
Signal I/O Pin Description
Name
---------------------------------------------------------------------------
ISA Expansion Bus Signals
---------------------------------------------------------------------------
SD7 I/O 88 These bidirectional signals are the
SD6 I/O 89 low 8 bits of the system data bus.
SD5 I/O 91 They should be used exclusively by all
SD4 I/O 92 8-bit devices to transfer data. Also,
SD3 I/O 93 16-bit devices should use these lines
SD2 I/O 95 to transfer the low byte of a data word
SD1 I/O 96 when the address line A0 is low. These
SD0 I/O 97 signals can be driven by an expansion
board acting as a bus master. An
expansion card should have no more
than two low-power Schottky loads
(0.8 mA low, 400 uA high, 50 pF) on
this bus.
---------------------------------------------------------------------------
IRQ3 I 197 These input signals interrupt the CPU
IRQ4 I 195 to request some service. The interrupt
IRQ5 I 194 is recognized when a line goes from a
IRQ6 I 193 low to a high state and remains there
IRQ7 I 191 until the appropriate interrupt
IRQ9 I 190 service routine is executed.
IRQ10 I 189
IRQ11 I 188
IRQ12 I 186
IRQ14 I 185
IRQ15 I 184
---------------------------------------------------------------------------
DRQ0 I 61 These input signals (Dma ReQuest) are
DRQ1 I 53 used to request a DMA service from
DRQ2 I 59 the DMA subsystem or to gain control
DRQ3 I 58 of the system bus from the main CPU.
DRQ5 I 57 The request is made when a line goes
DRQ6 I 55 from a low to a high state and
DRQ7 I 54 remains there until the appropriate
DAKx (Dma AcKnowledge) line goes
active.
---------------------------------------------------------------------------
Signal I/O Pin Description
Name
---------------------------------------------------------------------------
ISA Expansion Bus Signals
---------------------------------------------------------------------------
DAK0* O 33 These output signals (Dma
DAK1* O 32 AcKnowledge) indicate that a request
DAK2* O 31 for a DMA service from the DMA
DAK3* O 66 subsystem has been recognized. The
DAK5* O 65 acknowledge is indicated by a LOW on
DAK6* O 63 this line. Use this line with the
DAK7* O 62 IORC- or IOWC- line to decode the
desired DMA device. If used to signal
acceptance of a bus-master request,
this signal indicates when it is
legal to pull GRAB- low.
---------------------------------------------------------------------------
RESETDRV O 76 This signal (bus reset) is driven
active when the unit is powered up
and when the unit exits from a low
power suspended state (Standby or
sleep condition) When high, this
output signal indicates that the
terminal count of a DMA operation has
been reached. It should be decoded
with the appropriate DAKx line for
proper operation.
---------------------------------------------------------------------------
TC O 99 This input signal is used to signal
the CPU about parity or other serious
errors on expansion memory boards
plugged into the expansion bus.
---------------------------------------------------------------------------
IOCHCK* I 110 This signal should be driven low by
an open-collector output capable of
sinking 20 mA when an uncorrectable
system error occurs.
---------------------------------------------------------------------------
NOWS- I 143 This input signal (No Wait State)
informs the system that standard wait
states can be deleted for cycles when
this signal is made active. If a
16-bit memory device wants to prevent
the standard wait state then it must
pull the NOWS- line low (active)
before BCLK falls after the falling
edge of BALE. (Note that this is not
possible on 16-bit I/O cycles because
it is not known that an I/O cycle
exists until the required time.) If
an 8-bit device wants to prevent the
standard wait states then it must
pull the NOWS- line low (active)
within one BCLK time from the falling
edge of the command. The decode logic
to drive NOWS- should use the device
address and MRDC-, MWTC-, IORC- or
IOWC- as inputs. If less than the
four standard wait states normally
used on 8-bit bus cycles is desired,
then the NOWS- line can be used to
provide 1, 2, or 3 wait states by
delaying the activation of NOWS-. The
NOWS- line is sampled at
approximately the falling edge of
BCLK. It should be driven by an
open-collector device capable of
sinking 20 mA.
---------------------------------------------------------------------------
Signal I/O Pin Description
Name
---------------------------------------------------------------------------
ISA Expansion Bus Signals
---------------------------------------------------------------------------
BUSRDY I/O 144 This input signal lengthens a bus
cycle from its standard time when an
expansion board cannot respond
quickly enough. It should be pulled
low by an open-collector device as
soon as a slow-addressed device is
selected and held low until the
device has responded. Bus cycles are
lengthened by an integral number of
(BCLK) cycles. If a 16-bit device
wants to add an additional wait
state, then it must pull the BUSRDY
low (inactive) before 1.5 BCLK cycles
after the falling edge of BALE. To
add only one wait state, BUSRDY must
return to the high state during the
second BCLK cycle after the falling
edge of BALE. If an 8-bit device
wants to add an additional wait
state, then it must pull the BUSRDY
low (inactive) before 4.5 BCLK cycles
after the falling edge of BALE. To
add only one wait state, BUSRDY must
return to the high state during the
fifth BCLK cycle after the falling
edge of BALE. The decode logic to
drive BUSRDY should use the device
address and MRDC-, MWTC-, IORC- or
IOWC- as inputs. Synchronous
peripherals usually use the falling
edge of BCLK as the time to change
the state of BUSRDY. This line should
not be held low for more than 2.5 us.
This line should be driven by an
open-collector device capable of
sinking 20 mA.
---------------------------------------------------------------------------
Signal I/O Pin Description
Name
---------------------------------------------------------------------------
ISA Expansion Bus Signals
---------------------------------------------------------------------------
IOR- I/O 146 This output signal (I/O Read)
indicates when an I/O device is to
send data to the data bus. It can be
driven by an expansion board acting
as a bus master.
---------------------------------------------------------------------------
IOW- I/O 147 This output signal (I/O Write)
indicates (when low) when an I/O
device is to accept the data from the
data bus. It can be driven by an
expansion bus adapter acting as a bus
master.
---------------------------------------------------------------------------
BCLK O 148 This output signal allows
synchronization with the main
processor clock. Its frequency is
approximately 8 MHz with a duty cycle
of 50 percent.
---------------------------------------------------------------------------
BALE O 150 When high, this output signal
indicates that a valid address is
present on the LAxx address lines.
The LAxx address lines or any decodes
developed from them should be latched
at the falling edge of BALE. This
line is always high when a DMA or bus
master operation is occurring.
---------------------------------------------------------------------------
AEN O 151 This signal (Address Enabled)
indicates a valid DMA or refresh
address.
---------------------------------------------------------------------------
Signal I/O Pin Description
Name
---------------------------------------------------------------------------
ISA Expansion Bus Signals
---------------------------------------------------------------------------
IO16- I/O 173 This input signal (I/O is 16 bits)
notifies the system that the
addressed I/O device is capable of
transferring 16 bits of data at once.
When this line is made active during
an I/O read or write, the standard, 1
wait state I/O cycle is run. The
system board will only use this
signal if the current cycle is an I/O
cycle. The addressed peripheral on
the bus must pull the IO16- line low
as soon as the SAxx address is
decoded and hold it low until the
address becomes invalid. The IO16-
line must be correct at the end of
the first BCLK cycle after BALE goes
away to insure that it is latched by
the system board latch. Pulling this
line low prevents the 16-bit to 8-bit
bus conversion logic from being
activated. This line should be driven
low by an open-collector device
capable of sinking 20 mA.
---------------------------------------------------------------------------
LOWMEM- O 174 This signal (low memory) indicates
that the memory being addressed is
below one megabyte.
---------------------------------------------------------------------------
MEMR- I/O 176 When low, this output signal (Memory
Read) indicates that a memory device
is to send data to the data bus. This
signal is active over the entire
address space.
---------------------------------------------------------------------------
MEMW- I/O 177 When low, this output signal (Memory
Write) indicates that a memory device
is to accept the data from the data
bus. This signal is active over the
entire address space.
---------------------------------------------------------------------------
Signal I/O Pin Description
Name
---------------------------------------------------------------------------
ISA Expansion Bus Signals
---------------------------------------------------------------------------
M16- O 178 This input signal (memory is 16 bits)
notifies the system that the
addressed memory is capable of
transferring 16 bits of data at once.
When this line is made active during
a memory read or write, the standard,
1-wait-state memory cycle is run.
This line should be derived from the
LAxx address lines. Do NOT decode the
M16- line with any of the SAxx lines
or BALE for full compatibility with
COMPAQ products. The M16- line must
be correct before BALE goes inactive
to ensure that it is latched by the
system board latch. Pulling this line
low prevents the 16-bit to 8-bit bus
conversion logic from being
activated. It should be driven low by
an open-collector device capable of
sinking 20 mA.
---------------------------------------------------------------------------
GRAB- I 180 This input signal indicates that a
board-mounted bus master is
controlling the bus. A board pulls
this line low when the appropriate
DAKx line is made active, signaling
that a master request is granted. The
system address, data, and control
lines are floated, allowing the board
to begin controlling them one full
BCLK period after GRAB- becomes
active. At least one more full BCLK
period should be allowed after
putting a valid address on the bus
before activating any of the control
lines. On release, the control lines
should be driven inactive, then all
lines should be floated. After this,
the GRAB- and DRQx lines can be made
inactive. This line should be driven
by an open-collector device capable
of sinking 20 mA.
---------------------------------------------------------------------------
SBHE- I/O 181 This signal (byte high enable)
indicates, when low, that data is
being transferred on the high byte of
the data bus (SD15..8).
---------------------------------------------------------------------------
REFRESH- I/O 182 This signal indicates a refresh cycle
is in progress.
---------------------------------------------------------------------------
Signal I/O Pin Description
Name
---------------------------------------------------------------------------
Keyboard/Mouse Interface Signals
---------------------------------------------------------------------------
Mouse Data I/O 13 Data line from mouse plugged into the
PS2 connector of the adapter for the
optional external keyboard/mouse.
---------------------------------------------------------------------------
Signal I/O Pin Description
Name
---------------------------------------------------------------------------
Video Interface Signals
---------------------------------------------------------------------------
R Data O 15 Red video data
HS O 18 Horizontal sync
VS O 19 Vertical sync
---------------------------------------------------------------------------
Signal I/O Pin Description
Name
---------------------------------------------------------------------------
Serial Interface Signals
---------------------------------------------------------------------------
DTR O 21 Data terminal ready
RI I 22 Ring indicate
TXD O 23 Transmit data
CD I 28 Carrier detect
---------------------------------------------------------------------------
Signal I/O Pin Description
Name
---------------------------------------------------------------------------
Parallel Interface Signals
---------------------------------------------------------------------------
SLCT I 1 Select
STB- O 8 Strobe
ACK- I 36 Acknowledge
D1 I/O 7
D2 I/O 40
D3 I/O 6
D4 I/O 38
D5 I/O 4
D6 I/O 37
D7 I/O 3
---------------------------------------------------------------------------
Signal I/O Pin Description
Name
---------------------------------------------------------------------------
External Storage Device Interface Signals
---------------------------------------------------------------------------
WRTPROT- I 71 Write protect
TRK0- I 75 Track 0
-- O 168 Reserved.
6.1 INTRODUCTION
o Serial port
o Parallel port
o Enhanced option slot
The COMPAQ LTE Lite includes as standard one serial port for connection to
an asynchronous communications device. The serial port connector is located
on the back of the system unit and is duplicated on the back of the
optional Desktop Expansion Base. The serial port function is provided by
the 82360SL peripheral controller and a RS-232-C driver/receiver that
includes a low-power shut down feature.
The COMPAQ LTE Lite includes one parallel port primarily for connection to
a printer. The parallel port, located on the back of the system unit and
duplicated on the optional Desktop Expansion Base, also supports PS2
operations and high-speed bidirectional data transfers with devices using a
compatible parallel interface. The parallel port can be mapped at addresses
3BCh..3BEh for LPT1, 378h..37Ah for LPT2, or 278h..27Ah for LPT3. The
parallel port function is contained completely within the 82360SL
peripheral controller. For detailed programming information, refer to the
documents listed in Chapter 1, "Introduction."
The enhanced option slot provides the COMPAQ LTE Lite with internal
expansion of communications capabilities. The enhanced option slot is a
programmable interface that can be adapted to accommodate a variety of
peripherals such as modems, modem/faxes, second serial port modules, etc.
Configuration Registers
BIT FUNCTION
----------------
7 Slot IRQ Printer Interrupt Mapping
0 = SLOTIRQB mapped to IRQ7
1 = SLOTIRQB mapped to IRQ5
6..4 RESERVED
BIT FUNCTION
----------------
7,6 RESERVED
=======================================================
====================
Peripheral Configuration Option Slot Configuration IRQB
Register Register
------------------------ ------------------------
Bit 7 Bit 3 Bit 1 Bit 3 Bit 2
---------------------------------------------------------------------------
1 0 0 0 0 Disabled
1 0 0 0 1 IRQ3
1 0 0 1 0 IRQ5
1 0 0 1 1 IRQ9
1 0 1 0 0 Disabled
1 0 1 0 1 Disabled
1 0 1 1 0 IRQ5
1 0 1 1 1 IRQ9
1 1 0 0 0 Disabled
1 1 0 0 1 IRQ4
1 1 0 1 0 IRQ5
1 1 0 1 1 IRQ9
1 1 1 0 0 Disabled
1 1 1 0 1 Disabled
1 1 1 1 0 IRQ5
1 1 1 1 1 IRQ9
=======================================================
====================
The Option Slot Address Decode Register defines the base address to be used
when the enhanced option slot is used for a function other than COM1 or
COM2. The 10-line address bus (SA9..SA0) is programmable for address range
lengths of 8, 16, 32, or 64 bytes as defined by the Option Slot
Configuration Register. The Option Slot Address Decode Register further
defines address decoding by specifying the LAx bit(s) to be compared for
generating the SLOT CS- signal, which indicates that the enhanced option
slot logic has performed a valid I/O address decode.
BIT FUNCTION
----------------
7 Programmable address decode enable
0 = Address determined by Peripheral Configuration Register
1 = Address determined by Option Slot Address and Option Slot
Configuration Registers
6..3 Starting address bits 9-6. These are compared to bits SA9..SA6 in a
64-byte decode range. SLOT-CS is generated if these and all other
bits compare
BIT FUNCTION
----------------
7..4 RESERVED
3 Force Disk Change
0 = Disk change clear enable
1 = Force disk change
2 Option Slot On
0 = SLOT ON signal low
1 = SLOT ON signal high
The base address of the enhanced option slot may be set to COM1, COM2, or
programmed for decoding any value in an 8-, 16-, 32-, or 64-byte address
range length as defined by bits <3> and <2> of the Peripheral Configuration
Register. Decoding is enabled/disabled by the status of bit <2> of the
Peripheral Configuration register and bit <7> of the Option Slot Address
Decode Register. The relationship between the registers defining the
enhanced option slot addressing is shown in Table 6-2.
x x 1 0 0 COM1 port
x x 1 1 0 COM2 port
---------------------------------------------------------------------------
Pin I/O Signal Name Function
---------------------------------------------------------------------------
21 I COMMCLK 1.8432 MHz clock, 50 percent duty
cycle. Not present when the computer
is in a Standby or sleep condition.
---------------------------------------------------------------------------
22 -- Reserved Not used
---------------------------------------------------------------------------
23 O WAKEUP- This signal, when low, brings the
system out of Standby.
---------------------------------------------------------------------------
24 I SLOT ON This signal can be used to control an
option slot device's low power (sleep)
mode capabilities.
---------------------------------------------------------------------------
25 O MSPKDRV Audio output to system speaker (5 volts
RMS maximum into 10K ohm load).
---------------------------------------------------------------------------
28 I DMA This signal, when active (high),
indicates a DMA cycle is in progress.
---------------------------------------------------------------------------
44 O SLOT DMA- This signal, when active (low),
indicates to the system that the option
slot interface device is capable of DMA
operations. It should be driven by an
open collector device capable of
sinking 20 mA.
---------------------------------------------------------------------------
45 I T-C When high, this signal indicates that
the terminal count of a DMA operation
has been reached.
---------------------------------------------------------------------------
46 O SLOT IRQB Interrupt request for option slot
interface devices using programmable
address decoding. This signal may be
programmed as IRQ3, IRQ4, IRQ5, IRQ7,
or IRQ9.
---------------------------------------------------------------------------
47 O I/O16- This signal, when low, notifies the
system that the addressed device is
capable of supporting 16-bit transfers.
It should be driven by an open
collector device capable of sinking
20 mA.
---------------------------------------------------------------------------
48 O SLOT DRQ DMA request. This signal may be
configured as DRQ1, DRQ3, or DRQ5.
---------------------------------------------------------------------------
49 O SLOT IOEN- I/O enable. This signal indicates, when
low, that the option slot device has a
valid I/O address decode.
---------------------------------------------------------------------------
50 I SLOT DAK DMA acknowledge. This signal indicates
to the option slot that the system has
recognized the SLOT DRQ.
=======================================================
====================
7.1 INTRODUCTION
When the processor is operating in Real mode, the system stores a software
interrupt memory location table in RAM, starting at address 0000:0000
(segment:offset). A vector is a pointer to another location. For example,
memory locations 40h..43h contain a vector to the video interrupt service
routine; when INT 10h (video I/O) is called, the processor looks to memory
locations 40h..43h for the address of that routine. In the Protected mode,
the vector table can begin anywhere in physical memory as defined by the
Interrupt Descriptor Table (IDT) base register in the processor.
Some interrupt calls have more than one function available, requiring some
method of specifying which function is desired. This information is
provided by loading the AH register with the number of the desired function
before the INT instruction is issued.
In some cases, more than one parameter (value) must be loaded into the
processor's registers before the INT instruction is issued. Before using a
software INT instruction, always ensure that all registers are properly
set.
All register contents, except for the AX register and any other register
specifically mentioned in the corresponding INT section, are preserved when
the interrupt service calls return to the calling program.
BIOS Initialization
The BIOS senses an initial "power-on" condition when the system flag
(bit <2>) in the 8042 keyboard controller status port is "0." Subsequent
power-on functions performed by the BIOS consist of EISA expansion board
initialization, device initialization, diagnostic tests, configuration
sensing and verification, and bootstrapping from either the diskette drive
or a hard drive.
Normal Reset
Normal reset includes the following operations:
o RAM test
o Cache test
o Initialization and test of keyboard, diskette drive, and hard drive (and
their respective controllers)
Software Reset
Several reset codes have been set aside for use when system software needs
to switch from Protected mode to Real mode. These are listed in Table 7-1.
Other reset codes are reserved by the BIOS, but they should not be used. On
return to the destination environment, the stack segment (SS) and stack
pointer (SP) registers point to an area in BIOS RAM for all reset codes
except for code 09h, return from block move. This function uses the reset
vector at 0040:0067 as a save area for SS:SP, a stack frame pointer. The
stack frame stores the processor's registers in the following order,
beginning at offset +00h (top of stack): DS, ES, DI, SI, BP, SP, BX, DX,
CX, AX, IP, CS, and flags.
This section summarizes the interrupt calls used for each system function
and the memory locations used by the BIOS for those functions.
o PTR interrupts are not used to transfer program control; they are 4-byte
pointers in low-address memory named for the interrupt vector location
they occupy. These pointers typically point to video, diskette drive, or
hard drive controller parameters, character dot-pattern tables, or tables
of other pointers.
Table 7-2 summarizes all the BIOS interrupts in ascending order by hex
number. Where two interrupts share a single address, both are listed at the
appropriate hex number. All the interrupts listed occupy 4 bytes.
---------------------------------------------------------------------------
INT Type Function RAM Location
Address
---------------------------------------------------------------------------
0Eh HW IRQ6, Diskette drive 0000:0038
0Fh HW IRQ7, Printer 0000:003C
---------------------------------------------------------------------------
INT Type Function RAM Location
Address
---------------------------------------------------------------------------
40h SW Diskette drive I/O 0000:0100
In addition to using a section of RAM for the vector table, the system BIOS
uses another section for status information and buffers for data transfers.
Table 7-3 lists these locations.
Table 7-3. RAM Locations Used by the BIOS for Status Information and
Buffers
=======================================================
====================
Address Bytes Function
---------------------------------------------------------------------------
0040:0000 2 Base address of Comm Port 0 (COM1)
---------------------------------------------------------------------------
Address Bytes Function
---------------------------------------------------------------------------
0040:001E 32 Keyboard type-ahead buffer -- 16 entries
---------------------------------------------------------------------------
Address Bytes Function
---------------------------------------------------------------------------
0040:0071 1 Break bit
0040:0077 1 Reserved
0040:007B 1 Reserved
0040:0084 7 Reserved
---------------------------------------------------------------------------
Address Bytes Function
---------------------------------------------------------------------------
0040:008E 1 Interrupt occurred flag
0040:00A1 95 Reserved
o System
o Real-Time Clock (RTC)
o Processor
o Math Coprocessor
o Cache Memory
o Diskette Drive
o Hard Drive
o Keyboard
o Parallel Port
o Serial Port
o Video
o Miscellaneous
84h Joystick
INT 15h, AH = C1h returns the segment of the extended BIOS data area in ES.
INPUT: AH = C1h
INPUT: AH = C2h
AL = 00h
BH = 00h, Disable auxiliary pointing device
= 01h, Enable auxiliary pointing device
INT 15h, AH = C2h, AL = 01h resets the pointing device, returns the sample
rate, resolution and scaling to the default values (100 reports/sec, 4
counts/mm, and 1:1 scaling, respectively). The return from this call leaves
the data packet size unchanged and the pointing device disabled.
INPUT: AH = C2h
AL = 01h
INT 15h, AH = C2h, AL = 02h sets the sample rate of the pointing device.
INPUT: AH = C2h
AL = 02h
BH = Sample rate
00h, 10 reports/second
01h, 20 reports/second
02h, 40 reports/second
03h, 60 reports/second
04h, 80 reports/second
05h, 100 reports/second
06h, 200 reports/second
INT 15h, AH = C2h, AL = 03h sets the resolution of the pointing device.
INPUT: AH = C2h
AL = 03h
BH = Resolution
00h, 1 count/mm
01h, 2 counts/mm
02h, 4 counts/mm
03h, 8 counts/mm
INPUT: AH = C2h
AL = 04h
INPUT: AH = C2h
AL = 00h
BH = Data Packet Size
00h, Reserved
01h, 1 byte
02h, 2 bytes
03h, 3 bytes
04h, 4 bytes
05h, 5 bytes
06h, 6 bytes
07h, 7 bytes
08h, 8 bytes
INT 15h, AH = C2h, AL = 06h returns the three-byte status from the pointing
device or will set the scaling factor, depending on the value passed in BH.
INPUT: AH = C2h
AL = 06h
BH = 00h, Return status
= 01h, Set 1:1 scaling factor
= 02h, Set 2:1 scaling factor
BL BIT FUNCTION
----------------
7 Reserved
6 Mode
0 = Stream mode
1 = Remote mode
4 Scaling Factor
0 = 1:1 scaling
1 = 2:1 scaling
3 Reserved
1 Reserved
INT 15h, AH = C2h, AL = 07h stores the location of the pointing device
driver in the extended BIOS data area.
INPUT: AH = C2h
AL = 07h
BX = Offset of device driver address
ES = Code segment of device driver address
OUTPUT: AH = 00h, No error
= 01h, Invalid function call
= 02h, Invalid input
= 03h, Interface error
= 04h, Resend command error
= 05h, No far call installed error
CF = 0, Successful completion
= 1, Unsuccessful operation
o The tick counter is one counter of the 8254 Programmable Interval Timer
(or equivalent), and is provided chiefly for compatibility with software
written for 8088/8086-based products.
o The real-time clock is part of the RTC and Configuration Memory device
which is powered by its own battery. The RTC provides battery backed-up
time-of-day information and alarm service in a binary-coded decimal (BCD)
format. The RTC maintains its function no matter what the power condition
of the computer itself.
During power-on, the BIOS uses the RTC to initialize the tick counter.
Thereafter, the tick counter maintains a 32-bit counter in the BIOS RAM
area that contains the number of ticks since midnight. Ticks arrive from
hardware interrupt IRQ0 and are vectored through INT 08h at a rate of
approximately 18.2 ticks per second (18.2 Hz). When the counter reaches
1573040 (24 hours), it rolls over to zero and sets a rolled-over flag in
BIOS RAM.
RTC BIOS support provides an interface to the real-time clock device. This
device maintains the time of day and an alarm function in hardware. When
enabled, it also interrupts the processor on IRQ8 vectored through INT 70h
at a rate of 1024 interrupts per second (one every 976 us).
Three software services are driven by the RTC hardware interrupt to IRQ8:
Table 7-7 lists the system interrupts used by the Tick Counter/Real-Time
Clock interrupts.
Table 7-8 lists additional memory locations used by the tick counter and
RTC functions.
Table 7-8. Other Memory Locations Affected By Tick Counter and RTC
Functions
=======================================================
====================
Address Bytes Contents
---------------------------------------------------------------------------
0040:0040 1 Motor off counter
Table 7-9 lists the memory locations used by the processor interrupts.
INT 16h, AH = F0h changes the value of the Interval Timer 2, Counter 2 to
specify the simulated CPU speed.
INPUT: AH = F0h
AL = 00h Sets speed to the equivalent of a 286-based system at 6 MHz
(COMMON)
= 01h Sets speed to the equivalent of a 286-based system at 8 MHz
(FAST)
= 02h Sets speed to maximum speed (HIGH)
= 03h Toggles speed between AUTO and HIGH
= 08h Sets speed to switch between the 286 8-MHz equivalent
speed and maximum speed during diskette operations (AUTO)
= 09h Sets system speed to a value between 1 and 50 decimal. A
value of 1 is the slowest speed possible, and 50
approximates the maximum speed.
OUTPUT: None
INPUT: AH = F1h
The BIOS provides two areas of basic support for a math coprocessor, which
is also known as a floating point unit (FPU):
o The BIOS transfers INT 75h (IRQ13, FPU error) to INT 02h for
compatibility with software written for 8088/8086-based products. After
initialization, coprocessor interrupts INT 07h (FPU not present) and
INT 09h (FPU segment overrun) are normally supported by system software
operating systems and are not handled by the BIOS.
The cache memory subsystem uses software interrupt INT 16h, AH = F4h. It is
used to return the status of the cache controller and to enable or disable
the cache controller. The functions of the cache memory interrupts are
listed in Table 7-11 and described in the following paragraphs.
INPUT: AH = F4h
AL = 00h
OUTPUT: AH = E2h
AL = Cache controller status
00h = Cache controller not present
01h = Cache controller enabled
02h = Cache controller disabled
INPUT: AH = F4h
AL = 01h
OUTPUT: AH = E2h
AL = 01h, Successful completion
= 00h, No Cache controller available
INPUT: AH = F4h
AL = 02h
OUTPUT: AH = E2h
AL = 02h, Successful completion
= 00h, No Cache controller available
All communication between the user and the diskette drive is via a single
ROM call (INT 13h). When the system contains a hard drive, INT 13h
interrupts are vectored to INT 40h. The user can perform any of several
functions.
Table 7-12 lists the BIOS diskette drive interrupts and memory locations
used.
40h SW
0000:0100 4 Diskette I/O (refer to INT13h
above)
=======================================================
====================
Table 7-13 shows the memory locations that are affected by the diskette
drive functions.
The diskette drive BIOS uses INT 0Eh (IRQ6) and DMA channel 2 of the
system. There are six possible combinations of diskette drives and
diskettes that can be used together. The BIOS must be able to determine the
combination being used in order to supply the appropriate parameters. The
parameters for each combination are stored in a table referred to as the
Diskette Drive Parameter Table (DDPT) that is called with INT 1Eh.
Common Operations
Determining Media
1 5 1/4-in 360-KB
2 5 1/4-in 1.2-MB
3 3 1/2-in 720-KB
4 3 1/2-in 1.44-MB
==============================================
Diskette Change
Whenever an access of the diskette drive for read, write, verify, or format
is requested by a BIOS interrupt, the BIOS checks the DISKETTE CHANGE-
signal status. If the DISKETTE CHANGE- signal is active (door has been
opened), the BIOS checks to see whether the door is still open.
Formatting a Diskette
The hard drive BIOS supports two hard drives, Drive 1 (80h) and Drive 2
(81h). Use INT 13h, AH = 08h to determine their individual capacities, or
use the parameter tables pointed to by INT 41h and INT 46h. Do not use the
hard drive types stored in the CMOS configuration memory to determine the
capacities.
The hard drive Wait and POST functions are supported via INT 15h. The hard
drive Wait function call is AH = 90h with AL = 00h. The function call for
Power-On Self-Test (POST) is AH = 91h with AL = 00h. Wait is performed to
wait for a hard drive interrupt.
To format a hard drive with more than eight heads, recalibrate (INT 13h,
AH = 11h) head 0, then format heads 0 through 7. Next, recalibrate head 8
and format heads 8 through 15.
When using the Read or Write functions, the most significant bit (MSB) of
the drive control byte (at offset +08h) of the hard drive parameter table
(at INT 41h or INT 46h) can be set to "1" to disable the hard drive
controller internal retry function.
These interrupts use the standard ISA interface. For greater performance
use the 32-bit bus master interface, if available.
Table 7-17 shows the memory locations used by hard drive functions.
The BIOS generally controls all interactions with the keyboard. However,
the interrupts and memory locations used for the keyboard make it very easy
to change the keyboard functions.
Table 7-18 lists the BIOS keyboard interrupts and memory locations used.
Table 7-19 shows other memory locations used by the keyboard functions.
The SYS REQ key is a special key. It is not encoded, nor is anything placed
in the keyboard queue when it is pressed.
Pressing the SYS REQ key invokes INT 15h with AH = 85h, AL = 00h (SYS REQ
Make code). Releasing the SYS REQ key invokes INT 15h with AH = 85h,
AL = 01h (SYS REQ Break code).
The SYS REQ key does not interact with any other key and is not repeating.
An application must trap INT 15h in order to make use of the SYS REQ key.
RAM location 0040:0018 stores the SYS REQ key status. If bit <2> in the
status byte at 0040:0018 is set, the SYS REQ key is currently held down.
The bit is cleared when the SYS REQ key is released.
Keyboard Indicators
The BIOS normally controls the state of the keyboard LED indicators. It
automatically changes the state of the LED indicators to reflect the
current status of CAPS LOCK, NUM LOCK, and SCROLL LOCK keyboard functions.
All communications to the keyboard occur through ports 60h and 64h of the
8042 keyboard controller.
To change the keyboard LED state, use the IN and OUT instructions of the
processor to:
1. Read port 64h to determine the input/output status of the 8042, making
sure the input buffer is empty.
2. Write the disable keyboard (ADh) command to port 64h to disable the
keyboard interface. Read the scan code from port 60h.
3. Wait until the 8042 input buffer is empty. Output EDh to the keyboard
assembly using port 60h. Wait until an ACK (the first of two ACK bytes)
is received from port 60h.
4. Write the LED data byte when the 8042 input buffer is empty. Wait until
the second ACK byte is received.
5. When the 8042 buffer is empty, write the enable keyboard (AEh) command
to the 8042 to reenable the keyboard interface.
Enhanced Keyboard
BIT FUNCTION
----------------
7 Read ID command in progress
BIT FUNCTION
----------------
7 Reserved
3 Reserved
The ability to adjust the volume of the key click is a BIOS feature unique
to COMPAQ personal computers. Two RAM locations are associated with the key
click as shown in Table 7-20.
Immediately after placing a key in the keyboard queue, INT 15h is called
with AH = 91h, AL = 02h. (See "Device Wait" and "Device Post" under INT 15h
functions.)
Keys and key combinations that do not cause something to be placed in the
keyboard queue (such as simply pressing and releasing the Caps Lock key) do
not cause a Device Post. Pause (Ctrl + Num Lock) does not perform either a
Device Wait or a Device Post.
Decimal keyboard codes can be entered by holding down the Alt key, entering
the number on the numeric keypad, then releasing the Alt key. This feature
works regardless of the state of the Num Lock key. For example, to enter
the PI character, hold down the Alt key, type 227 on the numeric keypad,
then release the Alt key.
The Get Key function (INT 16h, AH = 00h or AH = 10h) executes a Device Wait
(INT 15h, AH = 90h, AL = 02h), if a key code is not currently available in
the keyboard queue.
The following key combinations do not place scan codes in the keyboard
type-ahead buffer:
To indicate receive time-out errors, parity errors, and overrun errors, the
8042 places a scan code of FFh in its output buffer. The system beeps once
when it receives the FFh from the keyboard.
To indicate transmit time-out errors, the 8042 places a scan code of FEh in
its output buffer.
INPUT: AH = F2h
OUTPUT: AL = 00h
INT 1Bh is called from the ROM when the Ctrl + Break keys are pressed. INT
1Bh is provided to allow operating systems and user programs a way to exit
a program.
USE: The vector for this interrupt is normally used by the operating
system. It can be changed to point to a user-supplied routine.
INT 14h SW
0000:0050 4 Serial port I/O function
determined by AH:
00h = Initialize port
01h = Transmit character
02h = Receive character
03h = Sense communications
status
04h = Extended initialize
05h = Extended port control
=======================================================
====================
The BIOS provides a simplified interface to the parallel printer port. BIOS
functions include initializing a printer, printing characters, and checking
the printer status.
During power-on, the BIOS searches for parallel printer interfaces at three
standard port locations: 3BCh, 378h, and 278h. When an interface is found,
the BIOS places the printer port base address in BIOS memory, beginning at
0040:0008. Therefore, when programming a printer port, use the address
extracted from the table in BIOS memory, rather than a hard-coded address.
Table 7-23 lists the BIOS printer interrupts. For a detailed explanation of
each interrupt, refer to the Intel Programmer's Reference Manuals.
INT 17h SW
0000:005C 4 Printer I/O function
determined by AH:
00h = Print character
01h = Initialize printer
02h = Get printer status
=======================================================
====================
The BIOS video interrupts provide access to the video display controller
using software interrupt INT 10h. Many functions are provided, including:
Two other interrupts, INT 1Dh and INT 1Fh contain pointers to tables. These
interrupts are provided for altering the CRT controller parameters and
providing an extension to the graphics mode dot table.
The BIOS can support either a color graphics display (using memory
addresses beginning at 0B8000h) or a monochrome text controller (using
memory addresses beginning at 0B0000h). Video graphics displays that use
memory beginning at A0000h are supported as well. Remember that only one
graphics controller can be supported at a time.
During power-on, the BIOS checks the configuration memory, and sets
bits <5, 4> byte (0040:0010), to determine the type of display used
initially. The initial display mode can be either:
Whether to use BIOS or to directly access the screen memory depends on how
much software portability or application performance is needed.
---------------------------------------------------------------------------
INT 10h Function
---------------------------------------------------------------------------
AH=10h Set Palette registers
AL=00h Set Individual Attribute Controller register
AL=01h Set Overscan Color
AL=02h Set All Attribute Controller registers
AL=03h Program Blink/Intensity
AL=07h Read Individual Attribute Controller register
AL=08h Read Overscan
AL=09h Read All Attribute Controller registers and Overscan
AL=10h Set Individual RAM DAC Color register
AL=12h Set Block of RAM DAC Color registers
AL=13h
BL=00h Select Color Paging mode
BL=01h Select Color Page
AL=15h Read Individual RAM DAC Color register
AL=17h Read Block of RAM DAC Color registers
AL=1Ah Read Current Color Page
AL=1Bh Sum RAM DAC Color Values to Gray Shades
Interrupts remain enabled and execution may be suspended if the Ctrl + Num
Lock keys are pressed. Functions and their related parameters are
individually described below.
When the system encounters the SW video interrupt, it jumps to the address
pointed to by the vector for that interrupt. Table 7-26 lists the memory
locations where these vectors reside.
INT 1Fh points to a user-supplied dot table used to generate and read 8 x
8-dot graphics characters in modes 4, 5, and 6. This table is needed only
for those characters within the range of 80h..FFh.
ROM ACTION: INT 1Fh is used exclusively by the INT 05h Print Screen and INT
10h Video I/O routines, and then only in the graphics modes for the
upper-128 character set.
INPUT: None
OUTPUT: None
USE: The user must set INT 1Fh to point to a supplied table as shown.
INT 43h points to the dot table used to generate and read dot graphics
characters. In 8 x 14- and 8 x 16-dot modes, it points to the table for all
characters. In the 8 x 8-dot modes, it points to the table for the
first-128 characters (00h..7Fh).
INT 10h, AH = BFh adds extensions to the video BIOS needed for sensing or
altering the hardware environment. These interrupts are unique to COMPAQ
personal computers.
INPUT: AH = BFh
AL = 00h = Turn External Display on
01h = Turn Internal Display on
03h = Get Video Environment
05h = Enable/Disable Video Display
0Ch = Set DAC to 6-bit mode
0Dh = Set DAC to 8-bit mode
0Eh = Get DAC 6-/8-bit mode
0Fh = Set High Address Map Register Value
10h = Get High Address Map Register Value
11h = Get Extended Environment
12h = Set Active Display
INPUT: AH = BFh
AL = 00h, Turn External Display On
OUTPUT: None
INPUT: AH = BFh
AL = 01h, Turn Internal Display On
OUTPUT: None
INT 10h, AH = BFh, AL = 03h returns the control mode, the active monitor
selection, and the internal and external display types of the currently
active video controller. This function is unique to the COMPAQ BIOS.
INPUT: AH = BFh
AL = 03h = Get Video Environment
BX = 0000h (see NOTE)
NOTE: BX should be set to 0000h for full compatibility with previous video
BIOS.
BIT FUNCTION
----------------
7 8-bit DAC mode available
3..0 Reserved
INT 10h, AH = BFh, AL = 05h turns the video display ON or OFF. This
function is unique to the COMPAQ BIOS.
INPUT: AH = BFh
AL = 05h
BL = ON/OFF
00h = Video OFF
01h = Video ON
INT 10h, AH = BFh, AL = 0Ch provides the ability to switch the Video DAC to
6-bit mode. This function is unique to the COMPAQ BIOS.
INPUT: AH = BFh
AL = 0Ch Set DAC to 6-bit mode
INT 10h, AH = BFh, AL = 0Dh provides the ability to switch the Video DAC to
8-bit mode. This function is unique to the COMPAQ BIOS.
INPUT: AH = BFh
AL = 0Dh Set DAC to 8-bit mode
INT 10h, AH = BFh, AL = 0Eh -- Get DAC 6-/8-Bit Mode
INT 10h, AH = BFh, AL = 0Eh returns the current mode of the Video DAC. This
function is unique to the COMPAQ BIOS.
INPUT: AH = BFh
AL = 0Dh Get DAC 6-/8-bit mode
INT 10h, AH = BFh, AL = 0Fh -- Set High Address Map Register Value
INT 10h, AH = BFh, AL = 0Fh provides the ability to enable and locate the
high address map buffer. This function is unique to the COMPAQ BIOS.
INPUT: AH = BFh
AL = 0Fh Set High Address Map Register Value
BX = 0000h Disable high address map
000nh Set high address map location to megabyte n.
FFFFh ROM configures high address map.
AL BIT FUNCTION
----------------
7..4 Reserved
INT 10h, AH = BFh, AL = 10h -- Get High Address Map Register Value
INT 10h, AH = BFh, AL = 10h provides the ability to determine the current
location of the high address map buffer. This function is unique to the
COMPAQ BIOS.
INPUT: AH = BFh
AL = 10h Get High Address Map Register
INPUT: AH = BFh
AL = 11h Get Extended Environment
INT 10h, AH = BFh, AL = 11h is used in portable systems for turning on the
internal display, external display, or both. This call is also used to
toggle the external or internal display on or off. This function is unique
to the COMPAQ BIOS.
INPUT: AH = BFh
AL = 11h Set Active Monitor
BH = Reserved
BL = See bit map below. Bit <7> is the command mode bit.
If bit <7> = 0, a 1 in bits <1,0> makes the corresponding display
active.
If bit <7> = 1, a 1 in bits <1,0> toggles the active state of the
corresponding display. Refer to bit map on below.
BL BIT FUNCTION
----------------
7 On/Off or toggle
1 = Toggles active state of corresponding display
0 = Makes corresponding display active
6..2 Reserved
When the system encounters one of these interrupts, it jumps to the address
pointed to by the vector for that interrupt. Table 7-28 lists the memory
locations where these vectors reside.
INT 71h receives the interrupts from IRQ9. On 8088/8086-based products, bus
pin B04 of the expansion bus is connected to IRQ2, which is vectored
through INT 0Ah. On COMPAQ 286-, 386-, and 486-based products, bus pin B04
is connected to IRQ9, which is vectored through INT 71h. For system
compatibility with 8088/8086-based products, interrupts vectored through
INT 71h are redirected by the BIOS to INT 0Ah.
ROM ACTION: The IRQ9 handler points to the IRQ2 vector, which points to an
interrupt return.
INT 72h is not processed by the BIOS other than to return control to the
calling program.
ROM ENTRY: Points to an interrupt return
INT 73h is not processed by the BIOS, other than to return control to the
calling program.
INT 74h occurs each time a byte is received from the pointing device. INT
74h normally handles the pointing device interrupts from IRQ12.
ROM ACTION: The interrupt routine reads the pointing device from the 8042
registers, takes special action if required, notifies the 8042 that the
port has been read, clears the 8259A interrupt controller, and loads the
device data into the extended BIOS data area until the specific packet size
is built. The packet size is determined by INT 15h, AH = C2h. Once the
packet size is reached, INT 74h calls the device driver.
USE: The vector for this interrupt can be changed to select a user-supplied
input device handler.
INT 77h is not processed by the BIOS other than to return control to the
calling program.
The ROM memory locations described in the following sections are supplied
in COMPAQ products.
F000:FFEA 6 Machine ID
The BIOS ROM contains a 1-byte product family code at address F000:FFE4.
The contents of this memory location is listed in Table 7-30.
Machine ID
LTE 286 N 01 FC
SLT 286 B 01 FC
DESKPRO 286 G 01 FC
DESKPRO 286e F 01 FC
DESKPRO 286N D 01 FC
LTE 386s/20 B1 03 FC
SLT 386s/20 B 03 FC
DESKPRO 386N D 03 FC
DESKPRO 386s/20N D 03 FC
DESKPRO 386s F 03 FC
DESKPRO 386s * R 03 FC
DESKPRO 386s/20 R 03 FC
PORTABLE 386 P 03 FC
DESKPRO 386 G 03 FC
DESKPRO 386/20 G 03 FC
DESKPRO 386/20e H 03 FC
DESKPRO 386/20e * H1 03 FC
DESKPRO 386/25 G 03 FC
---------------------------------------------------------------------------
* Models which support 256 colors
---------------------------------------------------------------------------
COMPAQ Product Family Code BIOS Type Code Machine Type Code
---------------------------------------------------------------------------
DESKPRO 386/25e H 03 FC
DESKPRO 386/25e * H1 03 FC
DESKPRO 386/33 L 03 FC
DESKPRO 386/33L E1 03 FC
DESKPRO 486/25 E 03 FC
DESKPRO 486/33L E1 03 FC
PORTABLE 486/33c E3 03 FC
DESKPRO 486/50L E1 03 FC
DESKPRO/M Family E2 03 FC
SYSTEMPRO E 03 FC
SYSTEMPRO/LT Family E2 03 FC
---------------------------------------------------------------------------
* Models which support 256 colors
=======================================================
====================
;*************************************************************************
; The following routines are written in 386 assembly language. The code is
; assembled and linked using 386 Protected mode addressing. However, the
; code modules themselves are executed while the 386 CPU is in the 8086
; Real mode.
;
; These subroutines are provided to help programmers detect a COMPAQ
; personal computer. Under no circumstances should these routines be used
; to exclude the use of applications software on computer products
; manufactured by others.
;
;*************************************************************************
LISTING
; PUBLIC _cpuvendor
; _cpuvendor DW 0 ; Global reference for vendor, 1 == COMPAQ
; PUBLIC _cputype
_cputype DW 0 ; Global reference for CPU, 86H, 286H, 386H
; COMPAQ EQU 1
; OTHER EQU 0
;*************************************************************************
; MAIN ROUTINE
;
; Real mode initialization for operating system start-up. Must be called
; after boot but before transition to Protected mode. This routine
; performs specific initialization for COMPAQ personal computers only
;
; Other systems may also require specific initialization procedures.
; Determine CPU type and update _cputype flag.
; Determine whether or not vendor is Compaq and update _cpuvendor
; Use those flags to perform COMPAQ and/or 386-specific initialization
; If (cpuvendor == Compaq){
; hi_speed( );
; if(cpu_type == 0x386) {
; egavec( ) ; /* re-init VGA font vectors */
; romoff( ) ; /* unprotect highest 128K 32-bit RAM */
; }
;}
;*************************************************************************
;
; PUBLIC oemreal
oemreal proc near
call cpu_type ; Determine CPU, ax=type
mov _cputype],ax ; Update flag
call cpu_vendor ; Determine machine vendor
mov [ _cpuvendor],ax ; Update flag
cmp ax,COMPAQ ; Q: Is machine a COMPAQ?
jnz not386 ; N: Don't attempt high speed or
; high RAM
call hi_speed ; Y: Set speed to highest
; possible
mov ax,[ _cputype] ; Get flag
cmp ax,0386h ; Q: Is machine a 386?
jnz not386 ; N: Don't attempt to enable
; high RAM
call egavec ; Y: Fix ROM pointers for VGA
call romoff ; Y: Unprotect highest memory
; not 386:
; Other OS-specific Real mode
; init code goes here
ret ; Real mode init completed
oemreal endp
;*************************************************************************
; ROUTINE TO DETERMINE WHETHER OR NOT MACHINE IS A COMPAQ PRODUCT
; cpu_vendor
; Determines whether or not Compaq is CPU vendor by looking at ROM
; Must be executed in Real mode
; Pointer to COMPAQ string must be derived at runtime. Although the
; assembler uses Protected mode addressing, this code runs in Real mode.
; AX = CPU vendor value
; 0 = Indeterminate (not manufactured by Compaq)
; 1 = COMPAQ
;*************************************************************************
PUBLIC cpu_vendor
cmpqstr DB `COMPAQ'
pBegin cpu_vendor near
;*************************************************************************
; ROUTINE TO DISABLE ROM REPLACEMENT
;
; Disable ROM Replacement and make high memory 0FE0000h to FFFFFFh
; writable. Use the ROM BIOS Move Block INT 15h (see GDT format below)
; to write 0FFh to the memory-mapped control register at 80C00000h.
; This is the simplest way to get a 32-bit GDT in 286 Protected mode.
; (Protected mode 286 GDTs are only 24-bit.)
;
; The following routine enables and disables gate A20. Therefore, the
; operating system must enable gate A20 after completion of the routine.
;
; Must be called from Real mode
;
; Move Block Calling Arguments
; INPUT: None
; OUTPUT: AH = 0, If operation successful
; 1, If parity error occurred
; 2, If exception error occurred
; 3, If gate A20 failed
; move_block - Move (copy) a block of data to or from anywhere in physical
; or from extended memory (beyond 1 MB) because Real mode
; addressing can address only the first MB of RAM.
; ENTRY: CX = number of words to move (max 8000h)
; ES:SI = Pointer to descriptor table (refer to following diagram)
; EXIT: AH = 00, If OK
; 01, If parity error
; 02, If exception error
; 03, If gate address bit A<20> fails
; Flags are unaffected
; USED: AX
; NOTE: The Block Move is performed with interrupts disabled.
;
;
; GDT
; ES:SI --> +---------------------------------+
; | Dummy descriptor | GDT (0)
; +---------------------------------+
; | GDT descriptor | GDT (1)
; +---------------------------------+
; | Source segment descriptor | GDT (2)
; +---------------------------------+
; | Target segment descriptor | GDT (3)
; +---------------------------------+
; | BIOS CS segment descriptor | GDT (4)
; +---------------------------------+
; | BIOS SS segment descriptor | GDT (5)
; +---------------------------------+
; Entries 0, 1, 4, and 5 should all be initialized by the caller to
; 8 bytes of 0 each. Entries 2 and 3 must be valid descriptors
; containing the appropriate base addresses, limit values, and access
; rights.
;
;*************************************************************************
; Definition of a descriptor
;
desc struc
limit dw 0 ; Offset of last byte in segment
base_low dw 0 ; Low 16 bits of 24-bit address
base_high db 0 ; High 8 bits of 24-bit address
rights db 0 ; Access rights byte
ext_lim db 0 ; 386 limit <19..16>
ext_base db 0 ; 386 extended base
desc ends
;
; Define fixed GDT selector values for Block Move routine
;
ROMDUM_SEL equ 0 * size desc ; GDT(0) = Dummy selector
;*************************************************************************
;
; ROUTINE TO RELOCATE VGA FONT VECTORS
;
; egavec
;
; This code relocates VGA vectors at 0440:00xxh for the COMPAQ VGA.
; Normally, the ROM BIOS copies the VGA ROM to 32-bit RAM at FE0000h,
; then (using special hardware) remaps this RAM to 0E0000h. Thus, we have
; fast 32-bit RAM in an unused ROM location to speed up VGA ROM calls.
;
; Because that high memory is allocated for use as operating system RAM,
; the VGA font vector must point back to the real VGA ROM at 0C0000h.
;
;*************************************************************************
; PUBLIC egavec
VGA_VIDEO_IO equ 10h
VGA_DOT_VEC equ 1Fh
VGA_FONT_VEC equ 43h
VGA_SEGMENT equ 0C000h
;*************************************************************************
; PROTECTED MODE INITIALIZATION CODE SAMPLE
;
; The following memory-sizing code finds the highest RAM at 0XFA0000 to
; 0XFFFFFF on COMPAQ DESKPRO
; Personal Computers. This module is written in C and should be called
; during Protected mode initialization.
;
; The "ROMOFF" routine in Real mode initialization has removed write
; protection on the highest 128 Kbytes of 32-bit RAM (used as a ROM copy)
; before this code executes.
;
; Highest memory grows from the top (0XFFFFFF) downward; low memory
; grows from the bottom upward with a break occurring from 640 Kbytes to
; 1 megabyte. COMPAQ Personal Computers always have a minimum of 384 Kbytes
; of memory at 0XFA0000 to 0XFFFFFF. Other configuration ranges are:
;
; 16 MB 0XFFFFFF
; 128 KB (ROM/RAM) 0XFE0000
; 256 KB 0XFA0000
; 128 KB 0XF80000
; 256 KB 0XF40000
; 14 MB .... 0XE00000
; 1 MB 13 MB RAM 0X100000
; 640 KB ROM/VIDEO 0X0A0000
; 640 KB 0X000000
;
; NOTE: This code assumes that a bug in freerange ( ) causes it to look
; 512 bytes beyond the highest address given. The bug manifests
; itself only at the 16-Megabyte address boundary, hence the search
; recognizes 0XFFFDFF, rather than 0XFFFFFF, as the highest address.
; If freerange ( ) is altered, then the calling arguments presented
; here should also be altered.
;
; Debug printf's should be removed for production code.
; atoml macro divides by 512
;
; freerange (start, length); Verifies existence of RAM and adds
; it to the system freelist
;*************************************************************************
pages = 0;
while (cputype == 0x386)
{
pages = freerange(*atoml(0xF40000), *atoml(0xFFFDFF));
if (pages)
{
printf("Kbytes at 0xF40000 = %d \ n", pages / 2);
break;
}
pages = freerange(*atoml(0xF80000), *atoml(0xFFFDFF));
if (pages)
{
printf("Kbytes at 0xF80000 = %d \ n", pages / 2);
break;
}
pages = freerange(*atoml(0xFA0000), *atoml(0xFFFDFF));
if (pages)
{
printf("Kbytes at 0xFA0000 = %d \ n", pages / 2);
break;
}
pages = freerange(*atoml(0xFE0000), *atoml(0xFFFDFF));
if (pages)
{
printf("Kbytes at 0xFE0000 = %d \ n", pages / 2);
}
break;
}
npages += pages;
printf("Total Kbytes = %d \ n", npages / 2);
return (npages);
}
8.1 INTRODUCTION
o Backlit active matrix black and white VGA display using thin-film
transistor (TFT) technology
o Backlit active matrix color VGA display using thin-film transistor (TFT)
technology
This chapter provides information on the following topics. The bracketed
numbers indicate the section in which each topic is discussed:
The VGC drives the internal LCD and supports simultaneous operation of an
optional external VGA monitor that can be connected to the back of the
system unit. The LCD is toggled on and off by the Ctrl + Alt + > command.
The external monitor is toggled on and off by the Ctrl + Alt + < command.
The video subsystem for the COMPAQ LTE Lite/20, COMPAQ LTE Lite/25, and
COMPAQ LTE Lite/25e supports MDA, CGA, EGA, and VGA modes in up to 64
shades of gray. Up to 256-color VGA and Accelerated VGA modes are also
supported with an external VGA monitor attached.
The video subsystem on the COMPAQ LTE Lite/25C supports MDA, CGA, EGA, VGA,
and Advanced VGA modes with up to 256 colors. Accelerated VGA modes are
also supported with an external VGA monitor attached.
Figure 8-1 presents a block diagram of the COMPAQ LTE Lite video subsystem.
The video graphics controller (VGC) components include the video ASIC,
video memory, video DAC, and video BIOS. The video subsystem interfaces
with the rest of the system over the system bus, which, for video
operations, uses peripheral bus cycles at processor speed. Most of the
functionality of the VGC is contained in the video ASIC, which operates
according to instructions received from the video BIOS ROM.
Although not considered a part of the video subsystem, the BIOS provides a
power-on diagnostic test of the VGC as well as the firmware needed to
initialize the VGC for the different video BIOS modes. Refer to Chapter 7,
"BIOS," for information on the video BIOS calls.
The COMPAQ LTE Lite/20 and COMPAQ LTE Lite/25 include 256 Kbytes of video
memory and use a monochrome edgelit LCD that supports VGA text and graphics
modes in up to 64 shades of gray (high or low resolution respectively).
The COMPAQ LTE Lite/25e contains 512 Kbytes of video memory and an active
matrix black and white LCD to provide high contrast gray scaling in up to
64 shades of gray.
The COMPAQ LTE Lite/25C contain 512 Kbytes of video memory and an active
matrix LCD to provide simultaneous 256-color support in 640 x 480
resolution.
ILLUSTRATION OF Figure 8-1. COMPAQ LTE Lite Video Subsystem Block Diagram
The dual scanning of the LCD occurs in parallel. Data is applied as two
4-bit packages and displayed two lines at a time (i.e., lines 1 and 241 are
scanned simultaneously, followed by lines 2 and 242).
Unlike a CRT, the number of lines and columns of the LCD cannot be varied.
Selection of an operating mode utilizing less than the full 480 lines will
result in unused lines. During normal operating mode, the panel divides any
unused lines evenly between the top and bottom of the panel so that the
active display is always centered vertically. The scanning rate is always
constant because the display scan goes through all 480 lines on each frame
regardless of the number of active lines. This means that graphics modes
using 360 or 720-pixel wide resolution are not support by the LCD (but will
be displayed on a connected external monitor).
Since the horizontal dot count is fixed at 640, 9-dot text modes are
displayed in 8-dot format. The display has an 8-bit wide character cell
instead of the normal 9-bit cell for a VGA monitor. In text mode, the ROM
alters certain characters to permit their display in this format without
distortion. For more information, see "Text Attribute Implementation" in
this chapter and in the BIOS chapter.
The aspect ratio of the LCD display is fixed at 1:1. The resulting "square
pixels" have an effect on images appearing on the screen. The 640 x 480
modes will appear normal.
The 640 x 400 and 640 x 350 modes may appear to be flattened vertically
which can cause a change in the appearance of the shapes on the screen. The
modes will have their images centered on the screen.
The 360- and 720-pixel wide graphics modes and 132-column text modes are
not compatible with this active matrix LCD (but will be displayed on a
connected external VGA color monitor).
o Display panel with data connector, backlight power cable, and one or two
fluorescent tubes
Be aware that voltages as great as 350 volts are present on the power
connectors and Backlight Inverter Board when the unit is on.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<
NOTE: Any disassembly of the LCD assembly can affect performance and will
void your warranty for this component.
The COMPAQ LTE Lite/20 and COMPAQ LTE Lite/25 use an edgelit passive matrix
monochrome LCD that provides VGA support in the following resolutions:
The COMPAQ LTE Lite/25e and COMPAQ LTE Lite/25C feature an active matrix
LCD that uses Amorphous Silicon thin film transistor (TFT) technology that
provides higher contrast and a sharper image. The active matrix LCD is
backlit with hot cathode fluorescent tubes to enhance brightness.
The COMPAQ LTE Lite/25e uses an active matrix black and white LCD featuring
TFT technology for a truer black and white effect and wider viewing angle.
This 9.5-inch (diagonal) LCD supports the following Advanced VGA and VGA
modes:
The COMPAQ LTE Lite/25C uses an active matrix color LCD featuring TFT
technology. This LCD supports the following Advanced VGA and VGA modes:
As shown in Figure 8-1, the VGC consists of the video ASIC, video memory,
and video DAC.
Video ASIC
The video ASIC contains most of the functionality of the VGC. A block
diagram of the video ASIC is shown in Figure 8-4. The following paragraphs
describe the key functions of the video ASIC.
Bus Interface -- The Bus Interface handles all interaction between the
system bus and the video subsystem. Once permission has been granted by the
Sequencer, address and data information is passed to the appropriate Video
ASIC function.
Sequencer -- The Sequencer takes the output of the master clock and
generates timing, address and control signals used by other video subsystem
functions.
BitBLT Engine -- The Bit Block Transfer (BitBLT) engine provides hardware
support for moving blocks of data in video memory.
LCD Controller -- The LCD controller processes video data for display on
the LCD screen and provides power sequencer and screen save functions. In
the COMPAQ LTE Lite/20, COMPAQ LTE Lite/25, and COMPAQ LTE Lite/25e, the
LCD controller also provides the color-to-gray scale conversions. In the
COMPAQ LTE Lite/25C, the LCD controller provides RAMDAC and TFT processor
functions.
Colors written to the palette of the video DAC are translated by the LCD
interface logic to the nearest shades of gray. Software can reduce the
chance of different colors resulting in the same shade of gray by changing
values in the red, green, and blue (RGB) weighting registers (refer to the
Register Programming section).
The color LCD controller supports the 512-color TFT panel. Two functions
unique for color support are provided: the RAMDAC function and the TFT
processor function.
RAMDAC Function
The RAMDAC function provides a 256 x 18-color palette and the control logic
that allows it to emulate the palette functions of the video DAC chip (that
supports the external VGA monitor). Normally the LCD controller RAMDAC
shadows video DAC writes. However, if the RAMDAC Emulation bit in the DAC
Control register is active, then the LCD controller RAMDAC takes over all
of the external RAMDAC's palette functionality.
The TFT Processor function takes the 18-bit palette color from the palette
RAM and produces 9 bits of color data (3 bits of red, green, and blue) for
the TFT panel. Normally this would produce 512 colors. However, the VGC
circuitry is able to display 4096 colors in high resolution mode and 256K
colors in low resolution mode by using frame rate modulation.
The TFT Modulation bit in the DAC Control register, TFTMOD, provides a way
to turn off the frame rate modulation associated with the COL1_2 bit. If
this bit is active then there is no modulation in high resolution mode and
only 512 colors can be displayed. In low resolution mode only the half tone
signals (HT1OF4, HT1OF2, and HT3OF4) are used and 32 colors are produced
for red, green, and blue resulting in 32768 total colors.
The Round and Resolve bits in the DAC Control register operate on different
portions of the three 6-bit palette colors depending on whether the TFT
processor is in high or low resolution mode and whether the TFT Modulation
bit is active. If the VGC is in high resolution mode and the TFT Modulation
bit is inactive then frame rate modulation is disabled and the upper 3 bits
<5..3> of each color are sent unmodified to the panel. In this case,
bit <2> is used for rounding and bits <2..0> are used for resolving.
If the VGC is in high resolution mode and the TFT Modulation bit is active,
then bit <2> is used for frame rate modulation. In this case rounding is
based on bit <1> and resolving on bits <1> and <0>. If the VGC is in low
resolution mode and the TFT modulation bit is inactive then bits <2> and
<1> are used to select the alternating signals. Both rounding and resolving
use bit <0> in this case. If the VGC is in low resolution mode and the TFT
Modulation bit is active then bit <2> is used for frame rate modulation and
bits <1> and <0> are used to select the alternating signals. Round and
resolve have no effect in this case since all of the bits are being used.
Video Memory
A block diagram of video memory of the video system is shown in Figure 8-5.
The video memory is arranged into four RAM planes.
The COMPAQ LTE Lite/20 and /25 include 256 Kbytes of video memory. The
COMPAQ LTE Lite/25e and COMPAQ LTE Lite/25C feature 512 Kbytes of video
memory that allows for 256 colors to be displayed simultaneously in 640 x
480 resolution on an optional external monitor. The COMPAQ LTE Lite/25C can
also display 256 colors on its color LCD.
The frame buffer can be accessed through traditional DOS video space or
through the High Address Map. The DOS video space (two areas known as DOS
apertures) is always enabled and the High Address Map is enabled if there
is room in the extended memory address space.
DOS Apertures
The video memory can be accessed as one full frame buffer (up to 1
megabyte) at addresses above 1 megabyte. The High Address Map Register
(3CF.48 - 049h) specifies the CPU physical address corresponding to the
start of the video memory and may be read by software to determine the
location of video memory. Mapping is disabled when this register is
programmed with zeros. It is enabled when programmed with a non-zero
value. If the High Address Map is enabled, for every CPU memory read/write,
address bits 20 to 23 of the CPU are compared against the least-significant
four bits of the High Address Map Register. If they match, the frame buffer
is selected with the low 20 CPU address lines.
NOTE: Both the DOS Aperture and the High Address Map have the same view as
selected by bit 1 of the Control Register 0. Figure 8-8, High Address
Mapping, illustrates this mapping scheme.
In ISA-based systems, High Address Map is disabled. Software must query the
system for memory availability and set the High Address Map as desired. A
BIOS call is provided to support this query.
The High Address Map Register is reset to "0" when the sequencer is reset,
thus destroying any value stored. Before resetting the sequencer, the high
address must be saved and then later restored.
Video DAC
Color Lookup Table (Palette RAM) -- Color bits from the attribute
controller provide a selection of 256 from a palette of 16,777,216 colors.
Each of the 256 locations in the palette RAM defines a color derived from 8
bits of red, green, and blue. If fewer than 256 colors are needed, the
palette can be subdivided into four palettes (for 64 colors) or even 16
palettes (for 16 colors). There are 6- and 8-bit modes for 218 or 224
palettes.
00111100 25 0.17
01010100 33 0.23
01111100 50 0.34
10101000 67 0.46
10111100 75 0.52
11111111 100 0.70
=======================================================
====================
The video graphics system provides one of two types of displays: text or
graphics. The video graphics system can be configured a number of ways
depending on the type of display desired and the operating and specific
BIOS mode selected.
Text Configurations
NOTE: The LCD screen does not support 132-column text modes. An external
VGA monitor must be used to view 132-column text modes. In such a
configuration, the LCD will be blanked.
Graphics Configurations
BIOS Modes D, E, F, and 10 are provided for compatibility with the EGA
standard. BIOS Modes 11 and 12 provide the highest LCD graphics resolution,
640 x 480.
Multiplane Configuration
In the Multiplane configuration, each plane supplies one bit of the code
that selects a color from the palette (Figure 8-10). When all four planes
are used, 16 (24) colors are possible for each pixel. Four write modes and
two read modes are employed in multiplane configurations, as listed in
Table 8-4.
Write Mode 1 Write Mode 1 allows copying a byte from one screen
location to several (or all) other screen locations.
Data comes from the Read Data Latch, in the read logic
in the graphics controller, rather than from the
system.
Read Mode 0 Read Mode 0 is a normal read mode. It allows any one of
the four planes to be read back to the system. Each
byte in the plane is read directly to the system
without processing.
NOTE: Video BIOS uses only Write Mode 0 and Read Mode 0. If software needs
to change modes, the Graphics Controller Mode register must be
changed. (See "Graphics Controller Registers.")
The Packed Pixel configuration allows the CPU to have direct access to all
the bits that control a pixel. Depending on the BIOS mode, each pixel is
controlled by 1, 2, or 8 bits. Accordingly, each byte of video memory can
control one, four, or eight pixel(s).
1. 256-colors, BIOS Modes 2Eh (COMPAQ LTE Lite/25C only) and 13 @ 8 bits
per pixel
The planar view of the video memory enables the programmer to access bit
planes of the pixel data for read and write operations. Note that although
the pixel data is accessed as bit planes, it is still stored in video
memory in a packed-pixel format. In addition, two other write modes permit
the modification of eight pixels for each byte transferred. These two write
modes are referred to as "color-expand write modes" since each bit of data
written to the graphics controller is "expanded" into one pixel of data in
the frame buffer. This is useful in graphic rendering operations where one
byte of data can modify eight pixels on the screen; whereas the
packed-pixel view would require eight bytes to modify the same eight
pixels. During these write operations, back-end circuitry performs the
required operations to write/read the appropriate bits in video memory.
This operation is performed transparent to the programmer.
In planar view, the first byte of video memory (A000:0) corresponds to the
first eight pixels of the display. The second byte corresponds to the next
consecutive eight pixels and so on. The most significant bit of the byte is
the left-most pixel on the display.
There is one read mode and three write modes for this view. They are
referred to as Planar Read Mode, Planar Write Mode, Foreground/Background
Color-Expand Write Mode, and Foreground/Transparent Color-Expand Write
Mode.
The Read Control Register (3CF.41h) specifies the "color bit plane" to be
read. Since data in physical memory is packed, a byte read at "color plane
n" means extracting bit n from eight consecutive 8-bit pixels. For an
example of this read mode, refer to Figure 8-12, Planar Read Mode.
Write Modes
The planar view for BIOS Mode 2Eh includes three write modes. These modes
are selected with bits <3, 2> of Control Register 0.
Writes to individual pixels are selected through the Pixel Write Mask
Register (3C5.02h). This register is the VGA Sequencer Write Plane Mask
extended to eight bits. Bit 7 affects the leftmost pixel on the screen (CPU
data bit 7). It is still a 4-bit register in VGA standard modes for
compatibility reasons.
The Color Plane Write Mask Register (3CF.08h) specifies which color bit
planes are to be written (this is the VGA Bit Mask register). Bits with the
value of 1 in the write mask allow writes; bits with the value of 0
preserve the contents of the corresponding bit planes. Figure 8-13 (Planar
Write Mode Byte Write) and Figure 8-14 (Planar Write Mode Word Write)
illustrate this write mode.
Table 8-5 lists the Control and Status registers and their addresses.
Table 8-5. Control and Status Registers
=======================================================
====================
Address Register Read/Write
---------------------------------------------------------------------------
102h Option Select R/W
Only bit <0> of port 102h is used for Card Enable. Read/write access to
this register is allowed only when the setup bit <4> of the Video Enable
Register (46E8h) is asserted.
BIT FUNCTION
----------------
7..1 Reserved
0 0 = Disabled
The VGC does not respond to commands, data, or addresses on the
data bus.
1 = Enabled
The VGC responds to commands issued to VGC valid addresses.
Input Status 0, Port 3C2h, Read Only
This register contains the status of the analog comparator and of the
Vertical Retrace Interrupt.
BIT FUNCTION
----------------
7 Vertical Retrace Interrupt (IRQ9) status
0 = Interrupt cleared
1 = Interrupt pending
6,5 Reserved
3..0 Reserved
BIT FUNCTION
----------------
7 Vertical Sync Polarity
0 = (+)
1 = (-)
4 Reserved
The Display Enable signal bit indicates active display times. This signal
combines the horizontal and vertical sync and other blanking periods.
Bits <5, 4> of the Color Plane Enable register select which two of the
eight Color Lookup Table address bits will appear on bits <5, 4> of Input
Status 1 register.
=============================================
Color Plane Input Status 1
Enable Register Register
---------------------------------------------
Bits <5> <4> <5> <4>
0 0 P2 P0
0 1 P5 P4
1 0 P3 P1
1 1 P7 P6
=============================================
BIT FUNCTION
----------------
7,6 Reserved
2,1 Reserved
0 Display Enable (Real-time status of inverted Display Enable)
0 = Video active
1 = Video blanked
NOTE: MUX = Bits <5, 4> of the Color Plane Enable register in the attribute
controller. The colors listed are for EGA modes only.
This register specifies the state of the FC0 and FC1 signals.
BIT FUNCTION
----------------
7..0 Reserved
The Compaq Configuration Register is used to enable the VGA for proper
operation depending on the environment and other configuration purposes.
This register is initialized to 00h and write-protected (locked) on
power-up. To write to these bits, Register 03CF.0F must be loaded with the
value 05h. This register will read 0Fh when locked.
BIT FUNCTION
----------------
7..4 For READ: Return power-up jumper configuration for bits 7..4.
For WRITE: Bits 5..7: Reserved
Bit 4 = 1: Enable 0 wait state signal for I/O and memory
if applicable.
Bit 4 = 0: Disable 0 wait state signal.
0 BIOS Disable
1 = Disabled
0 = Enabled
BIT FUNCTION
----------------
7..3 Project number
00011 = Accelerated VGA
00101 = Advanced VGA
The environment status bits <7..4> are read-only at 03CF.0F. These status
bits are loaded at power-on to identify the VGA board level configuration
and installation, and are used by the POST software to configure the VGA
for 8- or 16-bit operation. These configuration bits are read protected and
may only be read when the lock register 03CF.0F (bits <3, 2>) is loaded
with the value 05h. Otherwise, this register will read back as 0Fh for
compatibility.
BIT FUNCTION
----------------
7 Installed ROM BIOS Size (Read only)
1 = 8-bit
0 = 16-bit
BIT FUNCTION
----------------
7 TRI-STATE (TS)
This bit, when "1", tri-states all video memory data, address, and
control lines.
BIT FUNCTION
----------------
7 Reserved
1 View enable
1 = Enable planar view (color-expand write modes)
0 = Enable packed pixel view
This bit affects both DOS video space and high address map. Packed
pixel mode must be enabled for BitBLTs, except for CPU-to-Screen
BitBLTs where planar view must be enabled. Page Register 0 and Page
Register 1 must be set and restored when switching between packed
pixel and planar modes.
This 16-bit register is divided into two 8-bit read/write registers. The
low byte is at index 48h and the high byte is at index 49h. It specifies
where the frame buffer is mapped in CPU address space.
BIT FUNCTION
----------------
15..4 Reserved (Write "0" to these bits)
BIT FUNCTION
----------------
7..5 Reserved
2..0 Reserved
Sequencer Registers
Table 8-6 lists the Sequencer registers, their addresses, and their
indexes.
The sequencer uses two I/O (port) addresses for register access. Port 3C4h
is the Sequencer Index register. Port 3C5h interacts with one of five
Sequencer registers pointed to by the Sequencer Index register.
BIT FUNCTION
----------------
7..3 Reserved
2..0 Index
000 = Reset
001 = Clocking Mode
010 = Write Plane Mask
011 = Character Font Select
100 = Memory Mode
Bits <0> and <1> must both be set to "1" for the sequencer to run.
To change the contents of the Sequencer Clocking Mode register, halt the
sequencer synchronously, make the change, then restart the sequencer.
BIT FUNCTION
----------------
7,6 Reserved
1 Reserved
The dot clock bit (bit <3>) generates the 320-/360-dot modes by halving the
master clock input.
Sequencer Write Plane Mask, Port 3C5h, Index 02h, Read/Write
BIT FUNCTION
----------------
7..4 VGA: Reserved (all modes except as noted below)
Mode 2Eh: Extension for 256-color packed pixel modes
When odd/even modes (16-bit chaining) are selected, planes 0 and 1 should
have the same value, and planes 2 and 3 should have the same Plane Mask
values. For 32-bit chaining mode, the value of this register should be 0Fh.
This register specifies which two fonts are used at any one time as the
source of the dot patterns for the character generator. In Text mode,
plane 2 is divided into eight 8-Kbyte banks. Each bank contains one
256-character font.
This register also specifies which 8-Kbyte bank of video memory is the
source of the dot patterns for the character generator.
=======================================================
====================
MAP A MAP B
---------------------------------------------------------------------------
Bit Bit
3 2 5 1 0 4
---------------------------------------------------------------------------
0 0 0 1st 8 KB Map 0 0 0 1st 8 KB Map
0 0 1 2nd 8 KB Map 0 0 1 2nd 8 KB Map
0 1 0 3rd 8 KB Map 0 1 0 3rd 8 KB Map
0 1 1 4th 8 KB Map 0 1 1 4th 8 KB Map
1 0 0 5th 8 KB Map 1 0 0 5th 8 KB Map
1 0 1 6th 8 KB Map 1 0 1 6th 8 KB Map
1 1 0 7th 8 KB Map 1 1 0 7th 8 KB Map
1 1 1 8th 8 KB Map 1 1 1 8th 8 KB Map
=======================================================
====================
BIT FUNCTION
----------------
7,6 Reserved
3,2 Font Map A select. Bits <3, 2> specify which 8-Kbyte bank
to use when the text-attribute byte, bit <3> = 1
00 = 1st or 2nd 8-Kbyte Map
01 = 3rd or 4th 8-Kbyte Map
10 = 5th or 6th 8-Kbyte Map
11 = 7th or 8th 8-Kbyte Map
1,0 Font Map B select. Bits <1, 0> specify which 8-Kbyte bank
to use when the text-attribute byte, bit <3> = 0
00 = 1st or 2nd 8-Kbyte Map
01 = 3rd or 4th 8-Kbyte Map
10 = 5th or 6th 8-Kbyte Map
11 = 7th or 8th 8-Kbyte Map
Bit <3> of the text-attribute byte specifies whether the text (foreground)
is in highlight or whether an alternate character font (shown above) is
used. To allow bit <3> of the text-attribute byte to select dual-character
sets, set Map A not equal to Map B.
Bit <5> character map selects low bit A (extension for bits <3, 2>).
Bit <4> character map selects low bit B (extension for bits <1, 0>).
This register controls CPU access to the video memory and enables the
Character Font Select function, allowing dual-character sets.
BIT FUNCTION
----------------
7..4 Reserved
3 Chain 4
0 = Enables normal operation
1 = Two address LSBs select the map to be addressed. This bit
controls the map selected in the graphics subsystem during CPU
reads
1 Extended Memory
0 = CPU address bits A <15,14> are ignored. All video memory
accesses are forced to the first 16 Kbytes of display memory
1 = Access is allowed to all 64 Kbytes of display memory
Bit <2> (odd/even bit) controls only the CPU write accesses. CPU read
accesses are controlled by the odd/even bit in the Graphics Controller Mode
register.
Bit <3> controls the map selected in the graphics subsystem during CPU
reads.
Table 8-7 lists the Graphics Controller registers, their addresses, and
their indexes.
Port 3CEh serves as the Index register for both graphics controllers.
BIT FUNCTION
----------------
7..0 Index:
00h = Data Set/Reset
01h = Enable Bit Set/Reset
02h = Color Compare
03h = Data Rotate
04h = Read Plane Select
05h = Mode
06h = Miscellaneous
07h = Color Don't Care
08h = Bit Mask
41h = Read Control
43h = Foreground Color
44h = Background Color
BIT FUNCTION
----------------
7..4 Reserved
Graphics Controller Enable Bit Set/Reset, Port 3CFh, Index 01h, Read/Write
BIT FUNCTION
----------------
7..4 Reserved
BIT FUNCTION
----------------
7..4 Reserved
3..0 These four bits define the color to compare with the colors in
video memory.
Read Mode 1 must be in effect for the Graphics Controller Color Compare
register to be used. The color compare feature in Read Mode 1 is not
affected by the Graphics Controller Read Plane Select register; however, it
is affected by the Graphics Controller Color Don't Care register.
This register specifies the number of bits to rotate data and/or the type
of logic operation to perform on data during a CPU write to video memory.
BIT FUNCTION
----------------
7..5 Reserved
2..0 These bits specify the number of bits to rotate data. Data is
rotated to the right.
Data rotation is performed before the logic operation and is done only in
Multiplane Graphics Configuration Write Mode 0. When the data source is
latched data, the logic operation is not applied and latch data is
unmodified.
Graphics Controller Read Plane Select, Port 3CFh, Index 04h, Read/Write
This register determines the bit plane read. This determination occurs by
loading a value into bits <1, 0>, depending on the input conditions (CPU
address line A0 and Graphics Controller mode register odd/even bit <4>).
This register and these input conditions are valid in Read Mode 0 only,
unless bit <3> of Sequencer Memory mode = 1 (chain 4 bits).
BIT FUNCTION
----------------
7..2 Reserved
=======================================================
============
Address Result
Plane Chain Line Odd/ (Plane
Select 4 A0 Even Read)
-------------------------------------------------------------------
00 0 XX 0 0
01 0 XX 0 1
10 0 XX 0 2
11 0 XX 0 3
00 0 X0 1 0
01 0 X0 1 0
10 0 X0 1 2
11 0 X0 1 2
00 0 X1 1 1
01 0 X1 1 1
10 0 X1 1 3
11 0 X1 1 3
XX 1 00 X 0
XX 1 01 X 1
XX 1 10 X 2
XX 1 11 X 3
-------------------------------------------------------------------
Legend: X = Don't care
=======================================================
============
This register defines the current operating modes for the VGC.
BIT FUNCTION
----------------
7 Reserved
6 256-Color Mode
0 = Bit <5> controls shift register loading
1 = Shift registers loaded in 256-color format (8 shift registers x
4 bits)
4 Odd/Even Bit
0 = CPU reads data sequentially from the planes
1 = Even CPU addresses access planes 0 and 2. Odd CPU addresses
access planes 1 and 3. Normally, this value is the same as
bit <2> of the Sequencer Memory Mode register.
2 Reserved
In Write Modes 0 and 3, the rotate count from the Graphics Controller Data
Rotate register is applied to the CPU data.
The logic function specified in the Data Rotate register is applied to the
data and latches in all write modes except Write Mode 1, in which data is
not affected.
Except in Mode 3, bits not selected by the Graphics Controller Bit Mask
register receive their value from the latches. The latches are loaded when
the CPU performs a video memory read operation.
Setting bit <5> to "1," facilitates the bit packing required by BIOS
Modes 4 and 5 (320 x 200).
BIT FUNCTION
----------------
7..4 Reserved
Starting Memory
Address Size (KB)
--------------------------
00 = A0000h 128
01 = A0000h 64
10 = B0000h 32
11 = B8000h 32
If the video display controller is mapped at A0000h and the video memory
size is 128 Kbytes, no other video display controller board can be in the
system because video memory conflict occurs.
Graphics Controller Color Don't Care, Port 3CFh, Index 07h, Read/Write
This register specifies which planes are ignored during a color comparison
between the Graphics Controller Color Compare register and the value in
video memory. When a plane is ignored, the comparison result is always a
match for that plane.
This register is used only when the graphics controller is in Read Mode 1.
BIT FUNCTION
----------------
7..4 Reserved
3 0 = Plane 3 is ignored
1 = Plane 3 is included in the comparison
2 0 = Plane 2 is ignored
1 = Plane 2 is included in the comparison
1 0 = Plane 1 is ignored
1 = Plane 1 is included in the comparison
0 0 = Plane 0 is ignored
1 = Plane 0 is included in the comparison
This register contains a mask pattern that determines whether CPU data or
graphics controller latch data is written to video memory.
Any bit rotations or logic operations occur before the masking operation
and before the write to video memory takes place.
In Mode 12, the programmer may need to mask certain planes with the VGA bit
mask. It is necessary to set the appropriate bits in the VGA bit mask,
perform a CPU read to load the read latches with video memory data, and
then perform the CPU write. The VGA bit mask then selects between data in
the read latches and CPU data.
BIT FUNCTION
----------------
7..3 Reserved
BIT FUNCTION
----------------
7..4 Reserved
3 RB3
2 RB2
1 RB1
0 RB0
This register specifies the two-operand ROP for combining source pixels
with destination pixels of plane 2. The result of the ROP is the same as
ROP3.
BIT FUNCTION
----------------
7..4 Reserved
3 RB3
2 RB2
1 RB1
0 RB0
This register specifies the two operand ROP for combining source pixels
with destination pixels of plane 1. The result of the ROP is the same as
ROP3.
BIT FUNCTION
----------------
7..4 Reserved
3 RB3
2 RB2
1 RB1
0 RB0
This register specifies the two-operand ROP for combining source pixels
with destination pixels of plane 0. The result of the ROP is the same as
ROP3.
BIT FUNCTION
----------------
7..4 Reserved
3 RB3
2 RB2
1 RB1
0 RB0
The data written to this address is written to all four ROP registers. This
allows the programmer a way to fast load the ROP registers if the same data
is needed for all four planes.
BIT FUNCTION
----------------
7..4 Reserved
3 RB3
2 RB2
1 RB1
0 RB0
The CRT controller contains internal working registers and counters that
are not accessible by the CPU. The values in the CRT controller's counters
are continually compared with the values written to the indexed registers.
When the counter value matches the value of the indexed register, a signal
or process begins or ends.
Most of the CRT controller registers control the placement of the display
on the screen: centering, number of characters, scanlines, amount of
blanking, and so on.
Table 8-9 lists the CRT Controller registers, their addresses, and their
indexes.
BIT FUNCTION
----------------
7,6 Reserved
The values for bits <4..0> and their associated functions are shown in
Table 8-10.
CRT Controller Horizontal Display End, Port 3x5h, Index 01h, Read/Write
BIT FUNCTION
----------------
7..0 Total number of character times, (n) minus 1
CRT Controller Start Horizontal Blank, Port 3x5h, Index 02h, Read/Write
BIT FUNCTION
----------------
7..0 Horizontal blanking begins when these bits equal the value in the
internal horizontal-character counter.
CRT Controller End Horizontal Blank, Port 3x5h, Index 03h, Read/Write
BIT FUNCTION
----------------
7 1 (Test bit for IC testing; writable)
4..0 Horizontal blanking ends when these five bits equal the last five
bits of the horizontal-character counter.
The maximum blanking signal width (difference between blank start and end)
is 31 character times.
CRT Controller Start Horizontal Sync, Port 3x5h, Index 04h, Read/Write
This register specifies, in character times, the starting point for the
horizontal sync period. This register centers the display horizontally by
changing the horizontal sync position.
BIT FUNCTION
----------------
7..0 Horizontal sync period begins when these bits equal the value in
the internal horizontal-character counter.
CRT Controller End Horizontal Sync, Port 3x5h, Index 05h, Read/Write
This register specifies, in character times, the point where the horizontal
sync period ends, and a skew amount for the horizontal sync signal.
BIT FUNCTION
----------------
7 Bit <5> of End Horizontal Blank (other five bits in R03)
4..0 The horizontal sync period ends when these five bits equal the
last five bits of the horizontal-character counter.
This register contains the eight least-significant bits of the 10-bit total
number of horizontal scans in a vertical interval (display plus retrace).
Bits <8, 9> are defined in the CRT Controller Overflow register. The value
loaded into this register is n - 2, where n is the total number of
horizontal scanlines.
BIT FUNCTION
----------------
7..0 Eight least-significant bits of total vertical scanline counter
This register contains bit <8>, or bit <8> and bit <9>, the
most-significant bits of other CRT Controller registers.
BIT FUNCTION
----------------
7 Bit <9> of the Start Vertical Sync register R10
BIT FUNCTION
----------------
7 Reserved
4..0 The scanline counter is loaded with this value when Display Enable
becomes active.
NOTE: The value in the Preset Row Scan register is latched in the CRT
controller at the start of vertical retrace. Therefore, this register
should be updated by software prior to the start of the vertical
retrace period.
In multiple shift modes, the Byte Panning Control bits are extensions of
pixel panning functions. This allows panning across the width of the video
in larger increments.
BIT FUNCTION
----------------
7 Line double bit for 200 - 400 line conversions
0 = Normal, HS = Row scanline counter clock
1 = Line double, row scan count clock = HS/2
This register defines the starting scanline for the cursor. If the starting
scanline exceeds the maximum scanline, the cursor is invisible.
BIT FUNCTION
----------------
7,6 Reserved
5 Cursor Enable
1 = Cursor OFF
0 = Cursor ON
This register specifies the last scanline for the cursor and a skew amount
for the cursor signal. If n equals the ending scanline value for the
cursor, load bits <4..0> of the Cursor End register with n + 1. When n + 1
exceeds the maximum scanline (as defined in the Maximum Scanline register),
and the starting scanline value is non-zero, load bits <4..0> with zero.
BIT FUNCTION
----------------
7 Reserved
4..0 The cursor ends when these five bits equal the n character scanline
counter.
CRT Controller Start Address High, Port 3x5h, Index 0Ch, Read/Write
This register specifies the eight most significant bits of the 16-bit
starting address of displayed video memory. The eight least significant
bits are stored in the Start Address Low register, Index 0Dh (see NOTE).
BIT FUNCTION
----------------
7..0 Most significant byte of video memory start address
NOTE: The values in the Start Address High and Start Address Low registers
are latched in the CRT controller at the end of vertical retrace.
Therefore, these registers should be updated by software prior to the
end of the vertical retrace period.
CRT Controller Start Address Low, Port 3x5h, Index 0Dh, Read/Write
This register specifies the eight least significant bits of the 16-bit
starting address of displayed video memory. The eight most significant bits
are stored in the Start Address High register, Index 0Ch (see NOTE).
BIT FUNCTION
----------------
7..0 Least significant byte of video memory start address
NOTE: The values in the Start Address High and Start Address Low registers
are latched in the CRT controller at the end of vertical retrace.
Therefore, these registers should be updated by software prior to the
end of the vertical retrace period.
CRT Controller Cursor Location High, Port 3x5h, Index 0Eh, Read/Write
This register defines the eight most significant bits of the 16-bit video
memory address for the cursor. The eight least significant bits of this
register are in the Cursor Location Low register, Index 0Fh.
BIT FUNCTION
----------------
7..0 Most significant byte of the cursor video memory address
CRT Controller Cursor Location Low, Port 3x5h, Index 0Fh, Read/Write
This register defines the eight least significant bits of the 16-bit video
memory address for the cursor. The eight most significant bits of this
register are in the Cursor Location High register, Index 0Eh.
BIT FUNCTION
----------------
7..0 Least significant byte of the cursor video memory address
CRT Controller Vertical Sync Start, Port 3x5h, Index 10h, Read/Write
This register contains the eight least significant bits of the 10-bit value
that specifies the starting scanline for the vertical sync period.
This value can be used to center the screen vertically by changing the
vertical sync position. Bits <8> and <9> of this value are located in the
Overflow register R07.
BIT FUNCTION
----------------
7..0 The vertical sync period begins when the 10-bit Vertical Sync start
address bits equal the last 10 bits of the scanline counter.
CRT Controller Vertical Sync End, Port 3x5h, Index 11h, Read/Write
This register contains the 4-bit value that specifies the ending scanline
for the vertical sync period.
BIT FUNCTION
----------------
7 Protect R00 through R07
0 = Enable write access to R0 through R7
1 = Write protect R0 through R7
3..0 The vertical sync period ends when this 4-bit value equals the four
LSBs of the scanline counter after VS has started.
When bits <4> and <5> are being changed, the other bits should not be
changed.
CRT Controller Vertical Display End, Port 3x5h, Index 12h, Read/Write
This register contains the eight least significant bits of the 10-bit value
that specifies the total number of displayed scanlines. If n equals the
total number of displayed scanlines, load this register with n - 1.
BIT FUNCTION
----------------
7..0 Eight least significant bits of 10-bit value
This register defines the logical line width or logical window size. The
starting memory address for the next displayable row, character, or
scanline is greater than the current row address by this amount. The value
is in words or double-words (dword), based on the CRT clocking mode. This
register is used in conjunction with the Horizontal Panning registers to
provide smooth panning.
BIT FUNCTION
----------------
7..0 Value specifies logical window width
6 Double-word mode
0 = Addressing controlled by bit <6> of R17
1 = Memory addresses or double-word addresses, causes address to be
divided by four, and overrides bit <6> of R17
5 Count by four
0 = Memory address counter is clocked by character clock
1 = Memory address counter is clocked by character clock/4.
Use only when double-word address is used.
4..0 Value specifies which character scanline is used for the underline.
CRT Controller Start Vertical Blank, Port 3x5h, Index 15h, Read/Write
This register contains the eight least significant bits of the 10-bit Start
Vertical Blank value. Bit <8> is stored in the Overflow register. Vertical
blanking begins when the 10-bit value is one less than the last 10 bits of
the scanline counter. Bit <9> is located in the Maximum Scanline register
(Port 3x5h, Index 09h).
BIT FUNCTION
----------------
7..0 Eight least significant bits of 10-bit Start Vertical Blank value.
It is loaded with n - 1, where n is the Start Vertical Blank value.
CRT Controller End Vertical Blank, Port 3x5h, Index 16h, Read/Write
BIT FUNCTION
----------------
7..0 The vertical blanking period ends when these bits coincide with the
eight least significant bits of the scanline counter.
BIT FUNCTION
----------------
7 0 = Horizontal and vertical syncs are disabled
1 = Horizontal and vertical syncs are enabled
4 Reserved
1 0 = Substitute address bit <1> for bit <14> during active display
cycles
1 = No substitution
0 0 = Substitute address bit <0> for bit <13> during active display
cycles
1 = No substitution
For normal non-split display, this 10-bit value should be set to its
maximum (3FFh). Bit <8> of this register is located in the Overflow
register. Bit <9> is in the Maximum Scanline register, (Port 3x5h,
Index 09h).
BIT FUNCTION
----------------
7..0 Eight least significant bits of the 10-bit scanline compare value
This 8-bit register extends the CRTC offset and CRTC start address VGA
registers so that up to 1 megabyte of video memory can be addressed. The
bits are defined as shown below.
BIT FUNCTION
----------------
7..4 Reserved
3,2 Extended bits 17-16 of the CRTC Start Address Register. Allows
paging through the entire frame buffer. Cleared by resetting the
Sequencer to be compatible with standard VGA modes.
1,0 Extended bits 9-8 of the CRTC Offset Register. Allows the line
pitch to be set to 1024 bytes. Cleared by resetting the Sequencer
to be compatible with standard VGA modes.
The Attribute Controller Index and Data registers are accessed through a
single port, 3C0h. An internal latch in the attribute controller determines
whether the Index register or the Data register is being accessed. Accesses
to this port alternate on output to 3C0h between the Index and Data
registers. Before accessing port 3C0h, reset the internal latch to a known
state by reading port 3xAh (Input Status 1 register). The first write to
the attribute controller is to the Index register.
NOTE: Reads from port 3C1h do not toggle the latch to point back to the
Index register for the next write. Therefore, the sequence for
reading attribute controller registers sequentially is as follows:
Table 8-11 lists the Attribute Controller registers, their addresses and
their indexes. The data register value can be read from port 3C1h.
3C0h Data W
00h Palette 0 W
01h Palette 1 W
02h Palette 2 W
03h Palette 3 W
04h Palette 4 W
05h Palette 5 W
06h Palette 6 W
07h Palette 7 W
08h Palette 8 W
09h Palette 9 W
0Ah Palette 10 W
0Bh Palette 11 W
0Ch Palette 12 W
0Dh Palette 13 W
0Eh Palette 14 W
0Fh Palette 15 W
If the Palette registers are accessed by the system, all the color outputs
go to zero, thereby blanking the display.
BIT FUNCTION
----------------
7,6 00 Reserved
Attribute Controller Palette 0..15, Port 3C0h, Index 00h..0Fh, Write Only
(Read at 3C1h)
This palette is included for compatibility with software written for the
EGA and its monitors. For full-range control of colors, alter the Color
Select register and Color Lookup Table.
Sixteen 6-bit registers compose the color palette. Each register specifies
which color (or monochrome intensity) is to be displayed for a given
attribute or color code. Depending on the operating mode, the Palette
register bits can specify one of 64 colors in an enhanced color (RrGgBb)
mode, one of 16 colors in an RGBI color mode, or one of three intensities
in a monochrome mode.
BIT FUNCTION
----------------
7,6 P6/P7 Reserved
EGA Operating Mode
-----------------------------------------------
Enhanced RGBI Monochrome
Color Color
-----------------------------------------------
5 Secondary Red P5 0 0
In the text modes, the intensity/blink select bit changes the meaning of
bit <7> of the character-attribute byte, so that bit <7> is either the
background intensity bit or the blink bit.
In the graphics modes, the intensity/blink select bit changes the meaning
of bit <3>, so that it is either part of the color information or the blink
bit.
The blink rate is fixed at 32 vertical periods.
BIT FUNCTION
----------------
7 P4, P5 Select
0 = Palette
1 = Color Select register, R14h, bits <0> and <1>
6 Pixel Width
0 = All modes except mode 13
1 = Mode 13; eight bits to VDAC for 256-color mode
3 Intensity/Blink Bit
In the Text mode (background)
0 = Intensity attribute selected
1 = Blink attribute selected
Attribute Controller Overscan Color, Port 3C0h, Index 11h, Write Only (Read
at 3C1h)
BIT FUNCTION
----------------
7..0 Color code (00h..FFh)
Attribute Controller Color Plane Enable, Port 3C0h, Index 12h, Write Only
(Read at 3C1h)
This register controls access to the color planes and selects which color
planes are read from Input Status 1 register.
If bit <4> of this register is set, all six color outputs are high
impedance (all white video); however, the values gated to Input Status 1
register will be correct, because they are gated before the high-impedance
buffers.
The values loaded into Input Status 1 register are gated after the blanking
logic; during a blanking period the gated values are blanked (reset to
zero) also.
BIT FUNCTION
----------------
7,6 Reserved
5,4 Video bit MUX select. These two bits control which two video bits
are reflected in bits <5> and <4> of the Input Status 1 register.
Attribute Controller Horizontal Pixel Panning, Port 3C0h, Index 13h, Write
Only (Read at 3C1h)
BIT FUNCTION
----------------
7..4 Reserved
3..0 Values range from 0 to 7 for 8-dot display modes and from 0 to 8
for 9-dot modes.
8-Dot 9-Dot
Mode Mode Mode 13
--------------------------------
Pixels Pixels Pixels
Value Shifted Shifted Shifted
0 0 1 0
1 1 2 -
2 2 3 1
3 3 4 -
4 4 5 2
5 5 6 -
6 6 7 3
7 7 8 -
8 - 0 -
The Horizontal Pixel Panning register should be updated only during the
vertical retrace period.
Attribute Controller Color Select, Port 3C0h, Index 14h, Write Only (Read
at 3C1h)
BIT FUNCTION
----------------
7..4 Reserved
3, 2 P7, P6
These are the two high-order bits to the VDAC (P6, P7) except in
Mode 13. They allow switching between four sets of palettes.
1 P5 substitute
Refer to bit <7> of the Attribute Mode Control register. They (P4
and P5) allow rapid color switching.
0 P4 substitute
In all modes except 13, there are two high-order bits (P6, P7) to the VDAC.
These bits allow four sets of palettes.
Bits <0> and <1> substitute for P4 and P5 (see Attribute Mode Control
register R10h, bit <7>). They allow rapid color switching, especially with
16-color CGA applications.
The Video DAC provides analog RGB signal capability, allowing up to 224
possible color combinations to be displayed on an analog RGB monitor. The
Video DAC registers provide three functions to be performed on the Video
DAC palette: reading the palette, writing to the palette, and masking the
palette. Table 8-14 lists the VDAC registers and their addresses.
The Video DAC State register (3C7h Read) is not a function of the video DAC
chip; it is an extra function provided by the VGC circuitry.
For compatibility with EGA modes, the first 16-palette map locations
produce EGA-compatible colors. The next 16-palette map locations produce 16
evenly spaced gray shades. The rest of the palette is loaded with colors
based on a hue-saturation-intensity model which provides a wide range of
generic color sets.
Writes to video DAC at 3C8h indicate that a write sequence will occur,
consisting of three successive writes at 3C9h: six (or 8) LSBs of red, then
of green, then of blue. Video DAC then transfers 18 (or 24) bits to a
location in the palette pointed to by the Address register. The Address
register auto-incrementing can repeat if desired.
Writes to video DAC at 3C7h indicate that a read sequence will occur,
consisting of three successive reads at 3C9h: six (or 8) LSBs of red, then
of green, then of blue. Video DAC then transfers 18 (or 24) bits to a
temporary Read register pointed to by the Address register. The Address
register auto-incrementing can repeat if desired.
Read at 3C7h
Reading at 3C8h or 3C7h has no effect on video DAC operations and may occur
at any time.
The unit may first need to be disabled, in case any concurrently running
programs change the state of the video DAC.
1. Disable interrupts
2. Set 6- or 8-bit DAC Mode
3. Address --> Address register at 3C8h
4. Read or write 3 bytes of data at 3C9h
5. Repeat process as desired
6. Enable interrupts
When writing to the Palette registers, it is recommended that you wait for
assertion BLANK to DAC retrace interval (Input Status 1 register) or screen
off bit (Sequencer Clock Mode R01). Note that BIOS provides Read/Write
interfaces to the video DAC. Writing to Mask registers may cause corruption
of palette data.
The first 16 locations are compatible with the other modes (that is, are
not changed). The second 16 locations are 16 evenly spaced gray shades. The
next 216 locations are loaded based on a hue-saturation-intensity model,
which provides a wide-range generic color set.
The Pixel Mask register is used to mask selected bits of the Pixel Address
value applied to the Pixel Address input. A "0" in any bit of the Mask
register will mask the respective address bit to a zero, while a "1" will
leave the bit unaltered. This register does not affect the Pixel Address
generated by the microprocessor interface when the Lookup Table is being
accessed.
BIT FUNCTION
----------------
7..0 Pixel Address Mask
0 = Address bit masked to 0
1 = Address bit unaltered
The Video DAC State register is an extension of the Video DAC feature. It
provides status information on the current Video DAC read or write state.
BIT FUNCTION
----------------
7..2 Reserved
Writing to the Video DAC Pixel Address (Read mode) will initiate a read
cycle from the address value written. The next three read operations from
the Video DAC Data register will contain the 18-bit (or 24-bit) data from
the Color Palette. (Refer to the Video DAC Data register for details.)
After the three data bytes are read, the palette address will increment,
and the next three bytes of palette data can be read.
BIT FUNCTION
----------------
7..0 Palette address where data is to be read
Writing to the Video DAC Pixel Address (Write mode) will initiate a write
cycle to the address value written. The next three write operations to the
Video DAC Data register will contain the 18-bit (or 24-bit) data to the
Color Palette. (Refer to the Video DAC Data register for details.) After
the three data bytes are written, the palette address will increment, and
the next three bytes of palette data can be written.
Reading this register will provide the current palette address being read
from or written to.
BIT FUNCTION
----------------
7..0 Palette address where data is to be written
The Video DAC Pixel Data register is used to read or write 18 (or 24) bits
of palette data, depending on the mode of operation. The mode of operation
is determined by a previous write to the Read Mode Pixel Address or the
Write Mode Pixel Address. Data access to and from this register is in
groups of three bytes. The first byte contains the value for the red
signal, the second byte for the green signal, and the third byte for the
blue signal. Only the six least-significant bits (in 6-bit DAC mode)
contain data for each byte access. In 8-bit DAC mode, all 8 bits are used
for pixel data.
BIT FUNCTION
----------------
7,6 Reserved
The Video DAC Command Register at address 83C6h is used to select 6-/8-bit
mode. The appropriate settings are indicated below.
BIT FUNCTION
----------------
7..2 Reserved
0 Reserved
In switching between 6-bit and 8-bit modes, the Video DAC Command Register
must be read first, bit 1 modified as desired, and then the new register
contents written back to the register. This preserves the other bit
settings of the Command Register. Switching to VGA modes other than
mode 2Eh (through BIOS) causes this bit to be reset to 0.
This is the low 16 bits of the dword address of the beginning of the source
bitmap. The high order 2 bits are in BitBLT Height Register bits[15,14].
For Mode 12: This register contains the byte address for the beginning of
the source bitmap.
BIT FUNCTION
----------------
15..0 Address of source bitmap
For Mode 12: This register contains the width of the bitmap, in bytes,
along a scan line.
BIT FUNCTION
----------------
15..0 Destination bitmap width
This is the height, in scan lines, of both the source and destination
bitmap. For Mode 2Eh, the six most significant bits are the high bits of
the source address, destination address, and bitmap pitch, respectively.
BIT FUNCTION
----------------
15,14 Mode 2Eh: Bit 16, 17 of BitBLT source address
Mode 12: Reserved
This is the low 16 bits of the bitmap pitch in dwords (dword-aligned). The
high order 2 bits are in BitBLT Height Register bits[11,10]. The bitmap
pitch is equal to the number of dwords from the beginning of one scan line
to the beginning of the next scan line. This pitch can be programmed to
cause the address to wrap, which effectively causes the direction of the
BLT to go up the screen instead of down.
This is a twos complement value. Negative values cause the BLT direction to
proceed up the screen.
This register contains the bitmap pitch in bytes for Mode 12. The value is
represented within the full 16 bits of the register.
BIT FUNCTION
----------------
15..0 Bitmap pitch
This is the low 16 bits of the 18-bit twos complement destination offset
value. This register is programmed with the number of dwords from the
dword-aligned source start byte address to the dword-aligned destination
start byte address. The high order 2 bits are in BitBLT Height Register
bits [13,12].
For Mode 12: This register contains the byte offset from the beginning of
the source address to the destination bitmap.
BIT FUNCTION
----------------
15..0 Offset to destination bitmap
The four least significant bits serve as a byte mask for the first dword of
the BitBLT transferred.
For Mode 12: Pixel mask for first byte transferred. Only those specified
pixels are modified in the first destination byte written for each scan
line.
BIT FUNCTION
----------------
7..0 Mode 12:
Pixel mask for first byte
1 = Byte in destination modified
0 = Byte in destination unmodified
The four least significant bits serve as a byte mask for the last dword of
the BitBLT transferred.
For Mode 12: Pixel mask for last byte transferred. Only those specified
pixels are modified in the last destination byte written for each scan
line.
BIT FUNCTION
----------------
7..0 Mode 12
Pixel mask for last byte
1 = Bits in destination modified
0 = Bits in destination unmodified
This register provides phase alignment between the byte address of the
source and the byte address of the destination. For both Modes 2Eh and 12,
these three bits are the same bits as the least-significant bits located in
the current VGA register 3CF.03. This is programmed with a value of:
For Mode 12: Phase alignment between the bit address of the source and the
bit address of the destination, modulo 8. The value of this register is
equal to (8 - ((SRCX-DESX)&7))&7.
The four least significant bits select current or previous source data. A
"0" selects a current byte; a "1" selects a previous byte (of the four
current bytes and four previous bytes source read).
For Mode 12: This register does a bit-by-bit select between the current and
previous source data. A "0" selects current data, while a "1" selects
previous data.
Plane (PReg0, PReg1, PReg2, PReg3) Registers, Ports 33CAh, 33CBh, 33CCh,
33CDh, Read/Write
There are two sets of PReg0, PReg1, PReg2, PReg3. One is the primary set
and the other is the secondary set. The two sets are located at 33CA, 33CB,
33CC, 33CD. Writing to these I/O locations results in the secondary set
being loaded with previous values of the primary set and the primary set
being loaded with the values programmed (providing that the source MUX
selection SMX[3..0] is programmed with zeros).
Only the primary set is accessed directly by the CPU. During the BitBLT
process, the BLT engine alternately selects these two sets for pattern fill
BLTs. The primary set is selected for the first memory transfer of a scan
line. This way, a full eight 8-bit pixel pattern can be implemented using
the BitBLT engine. Note that the secondary set is physically the same as
the previous source data latches. (See the advanced VGC BitBLT engine block
diagram for details.) As a result, their contents are destroyed after a
screen-to-screen BLT.
For Mode 12: These registers are used to store the source data for Plane n
during screen-to-screen copies. During block fills, this register is loaded
with the pattern that is block transferred to Plane n.
This register contains part of the control codes for the current engine
operation.
BIT FUNCTION
----------------
7 Reserved. Must write zeros.
1 PRELOAD (PL)
When set to a "1" tells the BLT engine that it should read two
source bytes before doing a destination write. When set to a "0",
only one source read is needed before a destination write can
begin.
0 START/STOP (SS)
When programmed to a "1", this causes the currently defined BLT to
start. This bit is also the status of the current operation. It
will be reset by the control engine back to a "0" when the current
operation is finished. Programming this bit to a "0" will cause the
BLT engine to halt at the next scanline, with this bit going to a
"0" when that state has been reached.
This register contains part of the control codes for the current engine
data path configuration.
BIT FUNCTION
----------------
7,6 Reserved. Must write zeros.
COMPAQ-Specific Registers
This section describes video-related I/O mapped registers that are specific
to the COMPAQ LTE Lite Family.
The Screen Save Timeout register is an 8-bit register that controls how
long AVG circuitry will wait in the absence of system activity before
blanking the CRT or powering down the panels. The Timeout Occurred bit goes
active (1) if an event does not happen in time.
BIT FUNCTION
----------------
7 Timeout occurred (read only)
6 Reserved (1)
This 7-bit register controls the type of panel/CRT combination that AVG
circuitry will use to display video. It should be written at system
configuration time to identify the panel type and mode of operation.
BIT FUNCTION
----------------
6 Eliminate 7<->5
5,4 Modulation
0 Panel Active:
0 = CRT display only
1 = LCD and/or CRT
BIT FUNCTION
----------------
7 Color Round:
0 = Not to round (default)
1 = Output of the gray scale logic and input to the TFT processor
are rounded toward positive infinity instead of being
truncated.
6 Color Resolve:
0 = Not to resolve (default)
1 = Slightly non-zero output of the palette that normally would be
truncated to produce black is mapped instead to produce the
lowest color value.
5 Palette Coherency:
0 = Coherency disabled
1 = Palette RAM maintains coherency with external RAMDAC palette.
4,3 Reserved
2 TFT Modulation:
0 = Modulation disabled
1 = Modulation enabled (default)
1 RAMDAC Emulation:
0 = No emulation (default)
1 = All RAMDAC palette writes and reads are performed to and from
palette RAM and external RAMDAC signals VWR and VRD are
inhibited.
AVG circuitry Miscellaneous Register, Port 03CF.8D, Read/Write
BIT FUNCTION
----------------
7 Panel Powerdown/Screen Blank
0 = No powerdown or blanking
1 = CRT is blanked, (panel drivers are turned off, signal OF5 is
active, and signal 26V (enable) is inactive. (default)
5 Reserved
4 Panel Driver
0 = Drivers are off during blanking (default)
1 = Drivers are on during blanking
3..0 Reserved
BIT FUNCTION
----------------
7 Reserved
6 Clock Enable
0 = Normal operation
1 = Inhibit clocking
5 Setup Select
0 = Setup pedestal is 0 IRE
1 = Setup pedestal is 7.5 IRE
4 Blue Sync
0 = Disabled
1 = Enabled
3 Green Sync
0 = Disabled
1 = Enabled
2 Red Sync
0 = Disabled
1 = Enabled
1 6-Bit/8-Bit
0 = 6-bit
1 = 8-bit
0 Sleep Enable
0 = Normal operation
1 = Sleep mode
NOTE: A zero must be written to bit 7 when writing to this register to
ensure proper operation. This register is not initialized during the
RAMDAC powerup and is undefined until the first write access.
This section contains tables showing the specific values written by the
BIOS to the registers for each of the BIOS modes. These values are provided
for reference for the systems developer, who needs working examples of
register programming. For proper operation, be sure that the environment is
understood (that is, know the types of monitors connected to the controller
and the timing that each display requires) before changing any of the
default parameters in the registers.
Table 8-16 and Table 8-17 show the initial register values for the BIOS
modes. Table 8-17 shows the values specific to the 132-column modes. Cursor
positions and other read only register values are not shown.
Miscellaneous
Output 3C2h -- W 63 63 63 63 63 63 63 A6 63 63 63 63 63 63 63
Feature
Control 3xAh -- W NP NP NP NP NP NP NP NP NP NP NP NP NP NP NP
Input
Status 0 3C2h -- R NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
Input
Status 1 3xAh -- R NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
Video Subsystem
Enable 46E8h -- R/W NP NP NP NP NP NP NP NP NP NP NP NP NP NP NP
COMPAQ
Config. 3CF 0B R/W NP NP NP NP NP NP NP NP NP NP NP NP NP NP NP
Environment
Status 3CF 0F R/W 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F
---------------------------------------------------------------------------
Register BIOS Modes
Group/Name Port Index Type F 10 F+ 10+ 0* 1* 2* 3* 0+ 2+ 7+ 11 12 13 2E
---------------------------------------------------------------------------
Control and Status Registers (Part 2 of 2):
Miscellaneous
Output 3C2h -- W A2 A7 A2 63 63 63 A3 A3 63 63 63 67 E3 63 E3
Feature
Control 3xAh -- W NP NP NP NP NP NP NP NP NP NP NP NP NP NP 00
Input
Status 0 3C2h -- R NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
Input
Status 1 3xAh -- R NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
Video Subsystem
Enable 46E8h -- R/W NP NP NP NP NP NP NP NP NP NP NP NP NP NP NP
COMPAQ
Config. 3CF 0B R/W NP NP NP NP NP NP NP NP NP NP NP NP NP NP NP
Environment
Status 3CF 0F R/W 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 05
---------------------------------------------------------------------------
Legend:
NP - This register is not programmed during the setting of a BIOS mode.
This register is set during the POST process and is never programmed
by the BIOS again.
NA - This is a read only type register that is not and cannot be programmed
at any time since it is read only.
3xAh - This is the feature control port/input status one register address
which is dependent on the mode of the adapter. The following shows
the possible address values and the corresponding modes:
3BA - If the adapter is in the monochrome mode.
3DA - If the adapter is in the color/graphics mode.
=======================================================
====================
Sequencer
Index 3C4h -- R/W IX IX IX IX IX IX IX IX IX IX IX IX IX IX IX
Reset 3C5h 00h R/W 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03
Clocking
Mode 3C5h 01h R/W 09 09 01 01 09 09 01 00 01 01 01 01 01 09 01
Character Map
Select 3C5h 03h R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Memory
Mode 3C5h 04h R/W 02 02 02 02 02 02 06 02 02 02 02 02 02 06 06
---------------------------------------------------------------------------
Register BIOS Modes
Group/Name Port Index Type F 10 F+ 10+ 0* 1* 2* 3* 0+ 2+ 7+ 11 12 13 2E
---------------------------------------------------------------------------
Sequencer Registers (Part 2 of 2):
Sequencer
Index 3C4h -- R/W IX IX IX IX IX IX IX IX IX IX IX IX IX IX IX
Clocking
Mode 3C5h 01h R/W 05 05 01 01 09 09 01 01 09 00 00 00 01 01 01
Character Map
Select 3C5h 03h R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Memory
Mode 3C5h 04h R/W 06 06 06 06 02 02 02 02 02 02 02 02 06 0E 0E
---------------------------------------------------------------------------
Legend:
IX - This is an index type register; that is, this register is used to
determine which of the other registers is accessed. This register
changes continually during the programming process to access the other
registers.
=======================================================
====================
Horizontal Display
End 3x5h 01h R/W 27 27 4F 4F 27 27 4F 4F 4F 4F 4F 4F 4F 27 4F
Start Horizontal
Blanking 3x5h 02h R/W 28 28 50 50 28 28 50 50 50 50 50 50 50 28 50
End Horizontal
Blanking 3x5h 03h R/W 90 90 82 82 90 90 82 82 82 82 82 82 82 90 82
Start Horizontal
Retrace 3x5h 04h R/W 2B 2B 55 55 2B 2B 54 55 55 55 55 55 55 2B 54
End Horizontal
Retrace 3x5h 05h R/W A0 A0 81 81 80 80 80 81 81 81 81 81 81 80 80
Vertical
Total 3x5h 06h R/W BF BF BF BF BF BF BF BF BF BF BF BF BF BF BF
Preset
Row Scan 3x5h 08h R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
---------------------------------------------------------------------------
Register BIOS Modes
Group/Name Port Index Type 0 1 2 3 4 5 6 7 8 9 A B C D E
---------------------------------------------------------------------------
Maximum
Scanline 3x5h 09h R/W C7 C7 C7 C7 C1 C1 C1 4D C7 C7 C7 C7 C7 C0 C0
Cursor
Start 3x5h 0Ah R/W 06 06 06 06 00 00 00 0B 06 06 06 06 06 00 00
Start Address
High 3x5h 0Ch R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Start Address
Low 3x5h 0Dh R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Cursor Location
High 3x5h 0Eh R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Cursor Location
Low 3x5h 0Fh R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Start Vertical
Retrace 3x5h 10h R/W 9C 9C 9C 9C 9C 9C 9C 83 9C 9C 9C 9C 9C 9C 9C
---------------------------------------------------------------------------
Register BIOS Modes
Group/Name Port Index Type 0 1 2 3 4 5 6 7 8 9 A B C D E
---------------------------------------------------------------------------
End Vertical
Retrace 3x5h 11h R/W 8E 8E 8E 8E 8E 8E 8E 85 8E 8E 8E 8E 8E 8E 8E
Vertical Display
End 3x5h 12h R/W 8F 8F 8F 8F 8F 8F 8F 5D 8F 8F 8F 8F 8F 8F 8F
Underline
Location 3x5h 14h R/W 1F 1F 1F 1F 00 00 00 0D 1F 1F 1F 1F 1F 00 00
Start Vertical
Blanking 3x5h 15h R/W 96 96 96 96 96 96 96 63 96 96 96 96 96 96 96
End Vertical
Blanking 3x5h 16h R/W B9 B9 B9 B9 B9 B9 B9 BA B9 B9 B9 B9 B9 B9 B9
Mode
Control 3x5h 17h R/W A3 A3 A3 A3 A2 A2 C2 A3 A3 A3 A3 A3 A3 E3 E3
Line
Compare 3x5h 18h R/W FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
---------------------------------------------------------------------------
Legend:
3x4h - This is the CRT controller index register address which is dependent
on the mode of the adapter. The following shows the possible
address values and corresponding mode:
3B4 - If the adapter is in the monochrome mode.
3D4 - If the adapter is in the color/graphics mode.
3x5h - This is the CRT controller data register address which is dependent
on the mode of the adapter. The following shows the possible
address values and corresponding mode:
3B5 - If the adapter is in the monochrome mode.
3D5 - If the adapter is in the color/graphics mode.
IX - This is an index type register; that is, this register is used to
determine which of the other registers is accessed. This register
changes continually during the programming process to access the other
registers.
---------------------------------------------------------------------------
Register BIOS Modes
Group/Name Port Index Type F 10 F+ 10+ 0* 1* 2* 3* 0+ 2+ 7+ 11 12 13 2E
---------------------------------------------------------------------------
CRT Controller Registers (Part 2 of 2):
Horizontal
Total 3x5h 00h R/W 5F 5F 5F 5F 2D 2D 5F 5F 2D 5F 5F 5F 5F 5F C3
Horizontal Display
End 3x5h 01h R/W 4F 4F 4F 4F 27 27 4F 4F 27 4F 4F 4F 4F 4F 9F
Start Horizontal
Blanking 3x5h 02h R/W 56 53 50 50 28 28 50 50 28 50 50 50 50 50 A1
End Horizontal
Blanking 3x5h 03h R/W 1A 17 82 82 90 90 82 82 90 82 82 82 82 82 85
Start Horizontal
Retrace 3x5h 04h R/W 50 50 54 54 2B 2B 55 55 2B 55 55 55 54 54 A6
End Horizontal
Retrace 3x5h 05h R/W E0 BA 80 80 A0 A0 81 81 A0 81 81 81 80 80 1F
Vertical
Total 3x5h 06h R/W 70 6C BF BF BF BF BF BF BF BF BF BF 0B BF 0B
Preset
Row Scan 3x5h 08h R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
---------------------------------------------------------------------------
Register BIOS Modes
Group/Name Port Index Type F 10 F+ 10+ 0* 1* 2* 3* 0+ 2+ 7+ 11 12 13 2E
---------------------------------------------------------------------------
Maximum Scan
Line 3x5h 09h R/W 00 00 40 40 4D 4D 4D 4D 4F 4F 4F 4F 40 41 40
Cursor
Start 3x5h 0Ah R/W 00 00 00 00 0B 0B 0B 0B 0D 0D 0D 00 00 00 00
Start Address
High 3x5h 0Ch R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Start Address
Low 3x5h 0Dh R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Cursor Location
High 3x5h 0Eh R/W 00 00 00 00 00 00 00 00 00 00 00 07 00 00 00
Cursor Location
Low 3x5h 0Fh R/W 00 00 00 00 00 00 00 00 00 00 00 9E 00 00 00
Start Vertical
Retrace 3x5h 10h R/W 5E 5E 83 83 83 83 83 83 9C 9C 9C 9C EA 9C EA
---------------------------------------------------------------------------
Register BIOS Modes
Group/Name Port Index Type F 10 F+ 10+ 0* 1* 2* 3* 0+ 2+ 7+ 11 12 13 2E
---------------------------------------------------------------------------
End Vertical
Retrace 3x5h 11h R/W 2E 2B 85 85 85 85 85 85 8E 8E 8E 8E 8C 8E 8C
Vertical Display
End 3x5h 12h R/W 5D 5D 5D 5D 5D 5D 5D 5D 8F 8F 8F 8F DF 8F DF
Underline
Location 3x5h 14h R/W 00 0F 0F 0F 1F 1F 1F 1F 1F 1F 0F 1F 00 40 40
Start Vertical
Blanking 3x5h 15h R/W 5E 5F 63 63 63 63 63 63 96 96 96 96 E7 96 E7
End Vertical
Blanking 3x5h 16h R/W 6E 0A BA BA BA BA BA BA B9 B9 B9 B9 04 B9 04
Mode
Control 3x5h 17h R/W 8B 8B E3 E3 A3 A3 A3 A3 A3 A3 A3 A3 E3 A3 E3
Line
Compare 3x5h 18h R/W FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
---------------------------------------------------------------------------
Legend:
3x4h - This is the CRT controller index register address which is dependent
on the mode of the adapter. The following shows the possible
address values and corresponding mode:
3B4 - If the adapter is in the monochrome mode.
3D4 - If the adapter is in the color/graphics mode.
3x5h - This is the CRT controller data register address which is dependent
on the mode of the adapter. The following shows the possible
address values and corresponding mode:
3B5 - If the adapter is in the monochrome mode.
3D5 - If the adapter is in the color/graphics mode.
IX - This is an index type register; that is, this register is used to
determine which of the other registers is accessed. This register
changes continually during the programming process to access the other
registers.
=======================================================
====================
Attribute
Index 3C0h -- R/W IX IX IX IX IX IX IX IX IX IX IX IX IX IX IX
Palette
Register 0 3C0h 00h R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Palette
Register 1 3C0h 01h R/W 01 01 01 01 13 13 17 08 01 01 01 01 01 01 01
Palette
Register 2 3C0h 02h R/W 02 02 02 02 15 15 17 08 02 02 02 02 02 02 02
Palette
Register 3 3C0h 03h R/W 03 03 03 03 17 17 17 08 03 03 03 03 03 03 03
Palette
Register 4 3C0h 04h R/W 04 04 04 04 02 02 17 08 04 04 04 04 04 04 04
Palette
Register 5 3C0h 05h R/W 05 05 05 05 04 04 17 08 05 05 05 05 05 05 05
---------------------------------------------------------------------------
Register BIOS Modes
Group/Name Port Index Type 0 1 2 3 4 5 6 7 8 9 A B C D E
---------------------------------------------------------------------------
Palette
Register 6 3C0h 06h R/W 06 06 06 06 06 06 17 08 06 06 06 06 06 06 06
Palette
Register 7 3C0h 07h R/W 07 07 07 07 07 07 17 08 07 07 07 07 07 07 07
Palette
Register 8 3C0h 08h R/W 10 10 10 10 10 10 17 10 10 10 10 10 10 10 10
Palette
Register 9 3C0h 09h R/W 11 11 11 11 11 11 17 18 11 11 11 11 11 11 11
Palette
Register A 3C0h 0Ah R/W 12 12 12 12 12 12 17 18 12 12 12 12 12 12 12
Palette
Register B 3C0h 0Bh R/W 13 13 13 13 13 13 17 18 13 13 13 13 13 13 13
Palette
Register C 3C0h 0Ch R/W 14 14 14 14 14 14 17 18 14 14 14 14 14 14 14
Palette
Register D 3C0h 0Dh R/W 15 15 15 15 15 15 17 18 15 15 15 15 15 15 15
---------------------------------------------------------------------------
Register BIOS Modes
Group/Name Port Index Type 0 1 2 3 4 5 6 7 8 9 A B C D E
---------------------------------------------------------------------------
Palette
Register E 3C0h 0Eh R/W 16 16 16 16 16 16 17 18 16 16 16 16 16 16 16
Palette
Register F 3C0h 0Fh R/W 17 17 17 17 17 17 17 18 17 17 17 17 17 17 17
Mode
Control 3C0h 10h R/W 08 08 08 08 01 01 01 0E 08 08 08 08 08 01 01
Color Plane
Enable 3C0h 12h R/W 0F 0F 0F 0F 03 03 01 0F 0F 0F 0F 0F 0F 0F 0F
Horizontal
Panning 3C0h 13h R/W 00 00 00 00 00 00 00 08 00 00 00 00 00 00 00
Color
Select 3C0h 14h R/W NP NP NP NP NP NP NP NP NP NP NP NP NP NP NP
---------------------------------------------------------------------------
Legend:
NP - This register is not programmed during the setting of a BIOS mode.
This register is set during the POST process and is never programmed
by the BIOS again.
IX - This is an index type register; that is, this register is used to
determine which of the other registers is accessed. This register
changes continually during the programming process to access the other
registers.
---------------------------------------------------------------------------
Register BIOS Modes
Group/Name Port Index Type F 10 F+ 10+ 0* 1* 2* 3* 0+ 2+ 7+ 11 12 13 2E
---------------------------------------------------------------------------
Attribute Registers (Part 2 of 2):
Attribute
Index 3C0h -- R/W IX IX IX IX IX IX IX IX IX IX IX IX IX IX IX
Palette
Register 0 3C0h 00h R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Palette
Register 1 3C0h 01h R/W 08 01 08 01 01 01 01 01 01 01 08 01 01 01 01
Palette
Register 2 3C0h 02h R/W 00 00 00 02 02 02 02 02 02 02 08 02 02 02 02
Palette
Register 3 3C0h 03h R/W 00 00 00 03 03 03 03 03 03 03 08 03 03 03 03
Palette
Register 4 3C0h 04h R/W 18 04 18 04 04 04 04 04 04 04 08 04 04 04 04
---------------------------------------------------------------------------
Register BIOS Modes
Group/Name Port Index Type F 10 F+ 10+ 0* 1* 2* 3* 0+ 2+ 7+ 11 12 13 2E
---------------------------------------------------------------------------
Palette
Register 5 3C0h 05h R/W 18 07 18 05 05 05 05 05 05 05 08 05 05 05 05
Palette
Register 6 3C0h 06h R/W 00 00 00 14 14 14 14 14 14 14 08 14 14 06 06
Palette
Register 7 3C0h 07h R/W 00 00 00 07 07 07 07 07 07 07 08 07 07 07 07
Palette
Register 8 3C0h 08h R/W 00 00 00 38 38 38 38 38 38 38 10 38 38 08 08
Palette
Register 9 3C0h 09h R/W 08 01 08 39 39 39 39 39 39 39 18 39 39 09 09
Palette
Register A 3C0h 0Ah R/W 00 00 00 3A 3A 3A 3A 3A 3A 3A 18 3A 3A 0A 0A
Palette
Register B 3C0h 0Bh R/W 00 00 00 3B 3B 3B 3B 3B 3B 3B 18 3B 3B 0B 0B
Palette
Register C 3C0h 0Ch R/W 00 04 00 3C 3C 3C 3C 3C 3C 3C 18 3C 3C 0C 0C
---------------------------------------------------------------------------
Register BIOS Modes
Group/Name Port Index Type F 10 F+ 10+ 0* 1* 2* 3* 0+ 2+ 7+ 11 12 13 2E
---------------------------------------------------------------------------
Palette
Register D 3C0h 0Dh R/W 18 07 18 3D 3D 3D 3D 3D 3D 3D 18 3D 3D 0D 0D
Palette
Register E 3C0h 0Eh R/W 00 00 00 3E 3E 3E 3E 3E 3E 3E 18 3E 3E 0E 0E
Palette
Register F 3C0h 0Fh R/W 00 00 00 3F 3F 3F 3F 3F 3F 3F 18 3F 3F 0F 0F
Mode
Control 3C0h 10h R/W 0B 01 0B 01 08 08 08 08 0C 0C 0E 0C 01 41 41
Color Plane
Enable 3C0h 12h R/W 05 05 05 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F
Horizontal
Panning 3C0h 13h R/W 00 00 00 00 00 00 00 00 00 08 08 08 00 00 00
Color
Select 3C0h 14h R/W NP NP NP NP NP NP NP NP NP NP NP NP NP NP NP
---------------------------------------------------------------------------
Legend:
NP - This register is not programmed during the setting of a BIOS mode.
This register is set during the POST process and is never programmed
by the BIOS again.
IX - This is an index type register; that is, this register is used to
determine which of the other registers is accessed. This register
changes continually during the programming process to access the other
registers.
=======================================================
====================
Set/
Reset 3CFh 00h R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Enable Set/
Reset 3CFh 01h R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Color
Compare 3CFh 02h R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Data
Rotate 3CFh 03h R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Read Map
Select 3CFh 04h R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Color Don't
Care 3CFh 07h R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 0F 0F
Set/
Reset 3CFh 00h R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Enable Set/
Reset 3CFh 01h R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Color
Compare 3CFh 02h R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Data
Rotate 3CFh 03h R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Read Map
Select 3CFh 04h R/W 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Color Don't
Care 3CFh 07h R/W 0F 0F 05 0F 00 00 00 00 00 00 00 00 0F 0F 0F
DAC
State 3C7h -- R NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
PEL Address
Read 3C7h -- W IX IX IX IX IX IX IX IX IX IX IX IX IX IX IX
PEL Address
Write 3C8h -- R/W IX IX IX IX IX IX IX IX IX IX IX IX IX IX IX
VDAC
Command 83C6 -- R/W * * * * * * * * * * * * * * *
---------------------------------------------------------------------------
Register BIOS Modes
Group/Name Port Index Type F 10 F+ 10+ 0* 1* 2* 3* 0+ 2+ 7+ 11 12 13 2E
---------------------------------------------------------------------------
Video DAC Registers (Part 2 of 2):
DAC
State 3C7h -- R NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
PEL Address
Read 3C7h -- W IX IX IX IX IX IX IX IX IX IX IX IX IX IX IX
PEL Address
Write 3C8h -- R/W IX IX IX IX IX IX IX IX IX IX IX IX IX IX IX
VDAC
Command 83C6 -- R/W * * * * * * * * * * * * * * NP
---------------------------------------------------------------------------
Legend:
IX - This is an index type register; that is, this register is used to
determine which of the other registers is accessed. This register
changes continually during the programming process to access the other
registers.
NP - This register is not programmed during the setting of a BIOS mode.
This register is set during the POST process and is never programmed
by the BIOS again.
NA - This is a read only type register that is not and cannot be programmed
at any time since it is read only.
PR - The video DAC color registers are programmed during a mode set to the
correct color values for that mode. See the color programming table
for the values programmed to these color registers.
* Only 1 bit changes (reset to zero). All other bits are unchanged.
=======================================================
====================
Table 8-17. 132 Column Initial Register Values (in Hexadecimal Notation)
=======================================================
====================
Register BIOS Modes
Group/Name Port Index Type 18 19 1A 1B 1C 22 23 24 27 28
=======================================================
====================
Control and Status Registers:
Miscellaneous
Output 3C2h -- W AA 6A 6A 6A EA AB 6B 6B 6B EB
Feature
Control 3xAh -- W NP NP NP NP NP NP NP NP NP NP
Input
Status 0 3C2h -- R NA NA NA NA NA NA NA NA NA NA
Input
Status 1 3xAh -- R NA NA NA NA NA NA NA NA NA NA
Video
Subsystem
Enable 46E8h -- R/W NP NP NP NP NP NP NP NP NP NP
---------------------------------------------------------------------------
Sequencer Registers:
Sequencer
Index 3C4h -- R/W IX IX IX IX IX IX IX IX IX IX
Clocking
Mode 3C5h 01h R/W 01 01 01 01 01 01 01 01 01 01
Character
Map
Select 3C5h 03h R/W 00 00 00 00 00 00 00 00 00 00
Memory
Mode 3C5h 04h R/W 02 02 02 02 02 02 02 02 02 02
---------------------------------------------------------------------------
LEGEND:
NP - This register is not programmed during the setting of a BIOS mode.
This register is set during the POST process and is never programmed
by the BIOS again.
NA - This is a read only type register that is not and cannot be programmed
at any time since it is read only.
3xAh - This is the feature control port/input status one register address,
which is dependent on the mode of the adapter. The following shows
the possible address values and the corresponding modes:
3BA - If the adapter is in the monochrome mode.
3DA - If the adapter is in the color/graphics mode.
IX - This is an index type register; that is, this register is used to
determine which of the other registers is accessed. This register
changes continually during the programming process to access the other
registers.
---------------------------------------------------------------------------
Register BIOS Modes
Group/Name Port Index Type 18 19 1A 1B 1C 22 23 24 27 28
---------------------------------------------------------------------------
CRT Controller Registers:
Horizontal
Total 3x5h 00h R/W A0 A0 A0 A0 A0 A0 A0 A0 A0 A0
Horizontal Display
End 3x5h 01h R/W 83 83 83 83 83 83 83 83 83 83
Start Horizontal
Blanking 3x5h 02h R/W 84 84 84 84 84 84 84 84 84 84
End Horizontal
Blanking 3x5h 03h R/W 83 83 83 83 83 83 83 83 83 83
Start Horizontal
Retrace 3x5h 04h R/W 8D 8D 8D 8D 8D 8D 8D 8D 8D 8D
End Horizontal
Retrace 3x5h 05h R/W 9B 9B 9B 9B 9B 9B 9B 9B 9B 9B
Vertical
Total 3x5h 06h R/W BF BF BF BF 8 BF BF BF BF 8
Preset
Row Scan 3x5h 08h R/W 00 00 00 00 00 00 00 00 00 00
Maximum
Scanline 3x5h 09h R/W 47 4F 4D 47 47 47 4F 4D 47 47
---------------------------------------------------------------------------
LEGEND:
IX - This is an index type register; that is, this register is used to
determine which of the other registers is accessed. This register
changes continually during the programming process to access the other
registers.
3x4h - This is the CRT controller index register address, which is
dependent on the mode of the adapter. The following shows the
possible address values and corresponding mode:
3B4 - If the adapter is in the monochrome mode.
3D4 - If the adapter is in the color/graphics mode.
3x5h - This is the CRT controller data register address, which is dependent
on the mode of the adapter. The following shows the possible address
values and corresponding mode:
3B5 - If the adapter is in the monochrome mode.
3D5 - If the adapter is in the color/graphics mode.
---------------------------------------------------------------------------
Register BIOS Modes
Group/Name Port Index Type 18 19 1A 1B 1C 22 23 24 27 28
---------------------------------------------------------------------------
CRT Controller Registers (continued):
Cursor
Start 3x5h 0Ah R/W 06 0D 0B 06 06 06 0D 0B 06 06
Start Address
High 3x5h 0Ch R/W 00 00 00 00 00 00 00 00 00 00
Start Address
Low 3x5h 0Dh R/W 00 00 00 00 00 00 00 00 00 00
Cursor Location
High 3x5h 0Eh R/W 00 00 00 00 00 00 00 00 00 00
Cursor Location
Low 3x5h 0Fh R/W 00 00 00 00 00 00 00 00 00 00
Start Vertical
Retrace 3x5h 10h R/W 83 9C 9C 9C EA 83 9C 9C 9C EA
End Vertical
Retrace 3x5h 11h R/W 85 8E 8E 8E 8C 85 8E 8E 8E 8C
Vertical Display
End 3x5h 12h R/W 57 8F 87 8F DF 57 8F 8F 87 DF
Underline
Location 3x5h 14h R/W 1F 1F 1F 1F 1F 1F 1F 1F 1F 1F
Start Vertical
Blanking 3x5h 15h R/W 63 96 96 96 E7 63 96 96 96 E7
End Vertical
Blanking 3x5h 16h R/W BA B9 B9 B9 04 BA B9 B9 B9 04
Mode
Control 3x5h 17h R/W A3 A3 A3 A3 A3 A3 A3 A3 A3 A3
Line
Compare 3x5h 18h R/W FF FF FF FF FF FF FF FF FF FF
---------------------------------------------------------------------------
LEGEND:
3x5h - This is the CRT controller data register address, which is dependent
on the mode of the adapter. The following shows the possible
address values and corresponding mode:
3B5 - If the adapter is in the monochrome mode.
3D5 - If the adapter is in the color/graphics mode.
---------------------------------------------------------------------------
Register BIOS Modes
Group/Name Port Index Type 18 19 1A 1B 1C 22 23 24 27 28
---------------------------------------------------------------------------
Attribute Registers:
Attribute
Index 3C0h -- R/W IX IX IX IX IX IX IX IX IX IX
Palette
Register 0 3C0h 00h R/W 00 00 00 00 00 00 00 00 00 00
Palette
Register 1 3C0h 01h R/W 08 08 08 08 08 01 01 01 01 01
Palette
Register 2 3C0h 02h R/W 08 08 08 08 08 02 02 02 02 02
Palette
Register 3 3C0h 03h R/W 08 08 08 08 08 03 03 03 03 03
Palette
Register 4 3C0h 04h R/W 08 08 08 08 08 04 04 04 04 04
Palette
Register 5 3C0h 05h R/W 08 08 08 08 08 05 05 05 05 05
Palette
Register 6 3C0h 06h R/W 08 08 08 08 08 14 14 14 14 14
Palette
Register 7 3C0h 07h R/W 08 08 08 08 08 07 07 07 07 07
---------------------------------------------------------------------------
LEGEND:
IX - This is an index type register; that is, this register is used to
determine which of the other registers is accessed. This register
changes continually during the programming process to access the other
registers.
3x5h - This is the CRT controller data register address, which is dependent
on the mode of the adapter. The following shows the possible
address values and corresponding mode:
3B5 - If the adapter is in the monochrome mode.
3D5 - If the adapter is in the color/graphics mode.
---------------------------------------------------------------------------
Register BIOS Modes
Group/Name Port Index Type 18 19 1A 1B 1C 22 23 24 27 28
---------------------------------------------------------------------------
Attribute Registers (continued):
Palette
Register 8 3C0h 08h R/W 10 10 10 10 10 38 38 38 38 38
Palette
Register 9 3C0h 09h R/W 18 18 18 18 18 39 39 39 39 39
Palette
Register A 3C0h 0Ah R/W 18 18 18 18 18 3A 3A 3A 3A 3A
Palette
Register B 3C0h 0Bh R/W 18 18 18 18 18 3B 3B 3B 3B 3B
Palette
Register C 3C0h 0Ch R/W 18 18 18 18 18 3C 3C 3C 3C 3C
Palette
Register D 3C0h 0Dh R/W 18 18 18 18 18 3D 3D 3D 3D 3D
Palette
Register E 3C0h 0Eh R/W 18 18 18 18 18 3E 3E 3E 3E 3E
Palette
Register F 3C0h 0Fh R/W 18 18 18 18 18 3F 3F 3F 3F 3F
Mode
Control 3C0h 10h R/W 0E 0E 0E 0E 0E 0C 0C 0C 0C 0C
Color Plane
Enable 3C0h 12h R/W 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F
Horizontal
Panning 3C0h 13h R/W 00 00 00 00 00 00 00 00 00 00
Color
Select 3C0h 14h R/W NP NP NP NP NP NP NP NP NP NP
---------------------------------------------------------------------------
LEGEND:
NP - This register is not programmed during the setting of a BIOS mode.
This register is set during the POST process and is never programmed
by the BIOS again.
---------------------------------------------------------------------------
Register BIOS Modes
Group/Name Port Index Type 18 19 1A 1B 1C 22 23 24 27 28
---------------------------------------------------------------------------
Graphics Controller Registers:
Set/
Reset 3CFh 00h R/W 00 00 00 00 00 00 00 00 00 00
Enable Set/
Reset 3CFh 01h R/W 00 00 00 00 00 00 00 00 00 00
Color
Compare 3CFh 02h R/W 00 00 00 00 00 00 00 00 00 00
Data
Rotate 3CFh 03h R/W 00 00 00 00 00 00 00 00 00 00
Read Map
Select 3CFh 04h R/W 00 00 00 00 00 00 00 00 00 00
Color Don't
Care 3CFh 07h R/W 00 00 00 00 00 00 00 00 00 00
DAC
State 3C7h -- R NA NA NA NA NA NA NA NA NA NA
PEL Address
Read 3CFh -- W IX IX IX IX IX IX IX IX IX IX
PEL Address
Write 3C8h -- R/W IX IX IX IX IX IX IX IX IX IX
9.1 INTRODUCTION
The CD-ROM Adapter connects directly to the computer via the 198-pin
expansion connector.
Data transfers between the external CD-ROM drive and the CD-ROM Adapter are
provided by an 8-bit SCSI interface. A SCSI-2 type 50-pin connector is
provided on the CD-ROM Adapter. The adapter is I/O mapped at addresses
(3E0h - 3EFh). Internal hardware interrupt level (IRQ9) and DMA channel (3)
are used during data transfers.
The adapter is powered from the computer power supply once the adapter is
connected. The external CD-ROM drive is provided with its own power supply.
NOTE: The computer and the CD-ROM drive must not have power applied to them
until after all connections have been made. To ensure that the
computer recognizes the external CD-ROM drive, power must be applied
to the CD-ROM drive before turning on the computer.
All CD-ROM Adapter to CD-ROM drive communications are under the control of
a specific device driver. Each device driver is written specifically for
the drive being used. The device driver works with the adapter to build
SCSI command descriptor blocks (CDBs) and then programs the SCSI protocol
chip to issue the CDB to the attached drive.
The CD-ROM device driver must be in the CONFIG.SYS file at "BOOT" time. A
copy of MSCDEX.EXE and CDSETUP.EXE are included on the CD-ROM Utilities
Diskette. The CDSETUP.EXE utility must be run prior to CD-ROM use and
MSCDEX.EXE must be loaded prior to using the CD-ROM drive.
CDPLAY Utility
The CDPLAY utility supports playing music from audio compact discs in a
CD-ROM drive. The CDPLAY utility allows you to play, stop, and restart
music from a digital audio disc under computer control. A copy of
CDPLAY.EXE is included on the CD-ROM utilities diskette.
This register is the low byte of the 16-bit transfer count that is used for
DMA transfers to or from the adapter. Writing zeros to both the high and
low bytes of this register specifies the maximum count of 65536. This
register counts down as each byte is transferred. When the count reaches
zero, the Transfer Count Zero bit in the Status Register is set.
This register is the high byte of the 16 bits of the 16-bit transfer count
that is used for DMA transfers to or from the adapter. Writing zeros to
both the high and low bytes of this register specifies the maximum count of
65536. This register counts down as each byte is transferred. When the
count reaches zero, the Transfer Count Zero bit in the Status Register is
set.
BIT FUNCTION
----------------
7 1 = Enable DMA
6 1 = Disconnected Mode
4 1 = Initiator Mode
Table 9-2 lists the Command codes used with the CD-ROM Adapter.
Enable Reselection No 44 C4
Set ATN No 1A --
---------------------------------------------------------------------------
MISCELLANEOUS
---------------------------------------------------------------------------
NOP No 00 --
Reset Adapter No 02 --
The Status Register contains status information for the SCSI protocol
device and the phase of the SCSI bus. Bits 3 through 7 are reset whenever
the Interrupt Register is read.
BIT FUNCTION
----------------
7 1 = Interrupt
6 1 = Gross Error
5 1 = Parity Error
2 MSG
1 C/D
0 I/O
Bits 0 through 2 are inverted, real time versions of the SCSI bus signals,
I-/O, C-/D, and MSG-, which determine the bus phase. The bus phases
indicated by these bits, all of which are collectively termed Information
Phases, are listed below:
==========================
Bits Phase
210
--------------------------
000 Data Out
001 Data In
010 Command
011 Status
111 Message In
==========================
Bit 6, Gross Error, is set when the FIFO port overflows or underflows, or
when the DMA transfer direction does not match the SCSI bus phase.
This register holds the SCSI bus ID of the CD-ROM drive. The ID is loaded
into bits 0 through 2. This ID is used when the adapter selects the CD-ROM
drive. Bits 3 through 7 must be set to zero.
The Interrupt Register contains information, used along with the Status
Register, to determine the cause of an interrupt. The Interrupt Register
should only be read in response to an interrupt because reading this
register clears bits in the Status and Sequence Step Registers, and
deasserts the system interrupt, IRQ9.
BIT FUNCTION
----------------
7 1 = SCSI Bus Reset Detected
6 1 = Invalid Opcode
5 1 = Disconnect
4 1 = Bus Service
3 1 = Function Complete
2 1 = Reselected
Bit 5, Disconnect, is asserted when the CD-ROM drive disconnects from the
bus and the SCSI bus is free, or when a selection timeout occurs.
Bit 7, SCSI Bus Reset Detected, is asserted when reset is detected only if
SCSI reset interrupts are enabled in Configuration Register 1.
This register is written with 9Bh to establish a 250-ms timeout period for
Target selection. The timeout value is fixed for this adapter. If the
CD-ROM drive does not respond to selection within this timeout period, the
Disconnect bit will be set in the Interrupt Register.
This register contains opcode sequence information that may be used for
driver debugging purposes. It is used for normal operations.
This register specifies the transfer period for Synchronous SCSI data
transfers. It is not used for CD-ROM transfers.
The FIFO Flags Register holds the count of bytes currently in the FIFO
Port. The count read from this register may not be accurate during a
transfer, because the register bits may be in transition.
The sequence Step Bits contain opcode sequence information that may be used
for driver debugging purposes. They are not used for normal operation.
BIT FUNCTION
----------------
7..5 Sequence Step Bits
This register specifies the transfer offset for synchronous SCSI data.
BIT FUNCTION
----------------
7 1 = Slow Cable Mode
4 1 = Parity Enable
3 1 = Test Mode
This register is written with 03h to specify basic adapter timing. This
value is fixed for this adapter.
This register is used to put the adapter into one of several test modes.
These test modes must be disabled for normal operation by writing all bits
in this register to zero.
BIT FUNCTION
----------------
7..5 Reserved
4 1 = Tristate DRQ3
3 1 = SCSI 2 Mode
1,0 Reserved
The CD-ROM Adapter contains a single SCSI Protocol Processor chip to handle
communications with an attached CD-ROM drive. Issuing commands via the
CD-ROM Adapter requires detailed familiarity with the SCSI specification.
SCSI Command Descriptor Blocks (CDBs) must be built and various SCSI bus
phases must be managed. A single command to the CD-ROM drive requires a
number of separate adapter operations, depending on the specific command
issued. Each adapter operation involves loading the necessary adapter
registers with parameter or control bytes, writing the adapter command
register to issue the command, waiting for the interrupt. Most adapter
operations return an interrupt when they are complete.
Reset Procedure
To reset the CD-ROM Adapter, CD-ROM drive, and SCSI bus, the proper reset
opcode must be written to the Command Register.
System Actions
Load the Destination Bus ID Register and prepare for the transfer of the
SCSI CDB. If Direct Memory Access (DMA) is not used for the CDB transfer,
load the CDB into the adapter FIFO Port Register. If DMA is used for the
CDB transfer, load the Transfer Count Register with the number of bytes in
the CDB and program the system DMA controller to send the CDB to the
adapter. Write the selected operation code to the Command Register.
Adapter Actions
Arbitrate for the SCSI bus, select the CD-ROM drive, send the CDB to the
drive, and generate an interrupt.
System Actions
Load the transfer length (number of bytes per CD-ROM block times the number
of blocks to be read) into the Transfer Count Registers, program the system
DMA controller, and write the Transfer Information opcode into the Command
Register.
Adapter Actions
Transfer the data bytes from the CD-ROM drive to the system via DMA. Send
an interrupt to the system.
System Actions
When the data transfer from the CD-ROM drive is complete, write the Command
Complete Sequence opcode into the Command Register.
Adapter Actions
Transfer the SCSI status and Message bytes and generate an interrupt.
System Actions
Read the Status and Message bytes from the FIFO port, validate the message,
write the Message Accepted opcode to the Command Register.
Adapter Actions
Release the ACK signal on the SCSI bus, wait for Bus Free Phase, and
interrupt the system.
9.6 CONNECTOR
10.1 INTRODUCTION
Functional Description
The keyboard controller has both a first-in, first-out (FIFO) buffer and a
repeating key function. Both Make and Break codes are generated when keys
are used. Make codes are transmitted when a key is pressed, Break codes
when it is released. This combination of codes is referred to collectively
as the "scan codes" of a key.
If the system cannot immediately accept scan codes when they are generated,
scan codes for up to a maximum of 24 bytes (8 characters) are stored in the
FIFO buffer. If two or more keys are pressed simultaneously, the keyboard
processes the first scan code detected and stores the others in the buffer
in the order in which they are detected. If a key is pressed when the
buffer is full, no scan code is generated; an overrun code is stored in the
last buffer location, which is reserved for overrun conditions.
Modes of Operation
The keyboard controller has two modes of operation. The default mode at
power-up is the Normal mode. Enhanced operation is available in the Normal
mode. QWERTY, numeric pad, and separate cursor key functions are available.
The Select mode is the other available mode that allows any or all keys to
be reassigned to make only, make/break or Typematic operation.
Normal Mode
The Normal mode allows compatibility with a standard 11-bit serial keyboard
interface. Each key has a unique make and break code. The make code is
transmitted when the key is pressed and the break code is transmitted after
the key is released. The resulting codes are jointly referred to as scan
codes.
Select Mode
The Select mode also uses an 11-bit bidirectional interface and different
scan codes. The select mode is system selectable via software and allows
for any individual key or all keys to be reassigned to one of the following
states:
Typematic Function
Break codes of keys released are sent during the typematic transmission.
The typematic action consists of multiple transmissions of the make code.
Enhanced Operation
NOTE: The keyboard sub-system is not capable of transmitting the scan codes
for a Ctrl+Alt+Delete sequence from the embedded keypad.
o Num Lock Off (LED off): Operation of the Fn key and an embedded numeric
key transmits the enhanced numeric scan code of a key or the screen
control code of a cursor key.
o Num Lock On (LED on): Operation of the Fn key and an embedded numeric key
transmits the default (alpha) scan code of a key or the screen control
code of a cursor key.
All scan codes accessed via the Fn key will send complete make/break codes.
For example, if the Fn key is released while an embedded numeric key is
still pressed, the break code of the embedded character must be transmitted
before any subsequent make code is sent. This will occur regardless of the
state of the Num Lock key or keypad presence.
The following tables describe the combined effects of the optional keypad,
Fn key, and Num Lock key on the keyboard controls.
=======================================================
====================
NUM LOCK = On NUM LOCK = Off
---------------------------------------------------------------------------
Embedded Numerics Active Embedded Numerics None
The embedded numeric keypad is a 16-key set of keys, shown on the U.S.
English keyboard in Figure 10-2.
The embedded numeric keypad is enabled and disabled by the Num Lock key. If
Num Lock is ON, the embedded numeric keypad is enabled; if Num Lock is OFF,
the keypad is disabled. When enabled, the embedded keypad transmits the
scan codes of the enhanced numeric keypad. In this mode, the Shift key
enables the cursor-control functions instead of the numeric functions as it
would on an enhanced keyboard.
If Num Lock is OFF, the embedded keypad may also be enabled if the Fn key
and the Shift key are pressed simultaneously. When these keys are released,
the keyboard returns to the QWERTY mode. If the Fn key alone is depressed,
the embedded keypad functions as cursor-control keys.
If Num Lock is ON (embedded numeric keypad enabled), pressing the SHIFT key
enables these functions. Releasing the Shift key returns the keypad to
numeric keypad operations.
Figure 10-4 shows the key results when cursor- and screen-control functions
are enabled.
NOTE: Some applications require the use of the cursor- and screen-control
functions in the embedded numeric keypad rather than in the
cursor-control cluster.
Resetting the system (warm boot) requires use of the Delete key in the
upper right corner of the keyboard rather than the delete function on the
embedded numeric keypad.
LED Indicators
The two green LED indicators, Caps Lock and Scroll Lock, will be OFF at
power-on and after each keyboard initialization. Each time the associated
key is pressed, the LED changes state. The Num Lock LED will be off after
each keyboard initialization and will be off at power-on unless Num Lock is
enabled by the Setup utility.
The Scroll Lock and Num Lock LEDs are accessed by pressing the Function
(Fn) key and the appropriate key.
The only exception is the (Ctrl + associated LED key) combination, which
will not cause a state change of the LED.
A change of state of the Num Lock key from off to on activates the Enhanced
operation mode if the optional numeric keypad is attached, otherwise it
will enable the embedded numeric pad.
The power-on LED will turn on when power is applied to the computer. The
standby LED will turn on when the computer is in the standby mode.
The optional 24-key External Numeric Keypad duplicates the function of the
embedded keypad contained on the Laptop Enhanced Keyboard. The External
Numeric Keypad is shown below.
The keyboard controller must detect the presence of the external numeric
keypad. With the keypad connected, the numeric function of each embedded
numeric key shall be disabled. Keyboard cursor control keys remain
functional.
2 Signal Ground
===========================================
The keyboard controller is located on the system board inside the case of
the computer. It provides control for the following:
o Computer reset
o Computer system address line A20
o Keyboard communication
o System LED control
o Low battery detection
o Standby Mode
LED Control
The keyboard controller provides control of the standby LED (STBLED) and
power-on LED (PWRLED) indicators. A signal is provided to the keyboard
controller which indicates normal or standby mode of operation.
Low Battery 1:
LBAT1 active and Flash Off Off Flash
LBAT2 inactive 1 Hz 2 Hz
Low Battery 2:
LBAT1 active and Flash Off Flash Flash
LBAT2 active 2 Hz 2 Hz 2 Hz
=======================================================
====================
The keyboard controller is I/O mapped at port addresses 60h and 64h. The
controller's communication interface to the computer consists of an input
buffer, an output buffer, and a system interrupt signal. Data or commands
written from the computer to the controller are put into the controller's
input buffer. Data returned to the computer from the controller are put
into the output buffer.
The keyboard controller Data I/O register is used to send and receive data
from the keyboard, to send the second byte of multi-byte commands to the
keyboard controller, and to receive responses from the keyboard controller
for commands that return a response.
Use the IN Instruction to read data from the controller output. Data in the
Data I/O register are from the keyboard, unless the controller has been
given a command that returns a response, such as 20h, Read Command Byte.
When data are read from the output buffer, the controller resets the
"Output Buffer Full" flag in the Status register.
Use the OUT Instruction to send data to the keyboard. All data written to
the Data I/O register are transmitted to the keyboard, except for data
written after the controller has been given the first byte of a multi-byte
command, such as 60h, Write Command byte. To give a multi-byte command to
the system keyboard controller, write the first command byte to port 64h
and the second byte to port 60h. Be sure the "Input Buffer Empty" condition
exists before writing each byte.
The following bit map shows what each bit represents in the Command/Status
register.
BIT FUNCTION
----------------
7 1 = Parity error detected -- RESEND command is sent to the keyboard
once only, as an attempt to recover.
4 Reserved
The data byte described in the following table is put into the controller's
output buffer. No "Output Buffer Full" is generated.
BIT FUNCTION
----------------
7 0 = Keyboard Data signal low (logic 0)
1 = Keyboard Data signal high (logic 1)
3,2 Reserved
Directs the controller to pulse (strobe low) the RESET signal for
approximately 5 us. No other outputs are modified.
BIT FUNCTION
----------------
7 0 = Keyboard Data signal low (logic 0)
1 = Keyboard Data signal high (logic 1)
3,2 Reserved
1,0 Reserved
Directs the controller to set the FORCE A20 signal either high or low
according to bit <1> of the next byte written to the controller's input
buffer. No other controller outputs are modified.
BIT FUNCTION
----------------
7..2 Reserved
0 Reserved
Put the current command byte in the controller's Data I/O register.
Load the next byte put into the controller's Data I/O register as the
command byte. The command byte controls the system keyboard controller
operation as shown in the table below.
BIT FUNCTION
----------------
7 Reserved
3 Reserved
2 Type of reset
0 = Power on (cold boot)
1 = Software reset (warm boot)
Directs the controller to test the data and clock signals of the external
keyboard interface. The output buffer receives the test results as follows:
Sets bit <4> of the controller's command byte, which disables the external
keyboard interface. Data is not received until the external keyboard is
enabled again.
Resets bit <4> of the controller's command byte, which enables the keyboard
interface.
Directs the controller to put the current state of the external keyboard
clock and external keyboard data signals into the output buffer.
Scan codes for the keyboard subsystem, including the optional external
numeric keypad, are given in Tables 10-3, 10-4, and 10-5.
Normal Mode
Normal mode is the default mode of the enhanced keyboard. In this mode, the
keyboard controller translates the Make codes generated by the keyboard and
converts them to the system codes required by the system BIOS.
Table 10-3 lists the Make codes for the keyboard operating in Normal mode.
In the Normal mode, the keyboard generates the Break code, a 2-byte
sequence that consists of a Make code immediately preceded by F0h.
Table 10-3. Keyboard Scan Codes (Hex) for the Normal Mode
=======================================================
====================
Key Key Cap Make Code Break Code System
Location Legend (NOTE 1) (NOTE 1) Code NOTES
---------------------------------------------------------------------------
1 ' 0E 29
2 1 16 02
3 2 1E 03
4 3 26 04
5 4 25 05
6 5 2E 06
7 6 36 07
8 7 3D 08
9 8 3E 09
10 9 46 0A
11 0 45 0B
12 - 4E 0C
13 + 55 0D
15 Backspace 66 0E
16 Tab 0D 0F
17 Q 15 10
18 W 1D 11
19 E 24 12
20 R 2D 13
21 T 2C 14
---------------------------------------------------------------------------
NOTES: 1. All scan codes listed are for Shift, Alt, and Ctrl inactive and
unless noted, the Break code is the Make code preceded by F0h.
2. Scan codes listed are for Num Lock inactive.
3. A numeric cluster key.
4. NA means no legend.
5. No key number is assigned for the Break key. Break =
Ctrl + Pause or Fn + Key 86. Break key is make only with no
break code.
6. No key is assigned for the Sys Req key. Sys Req = Alt+ Print
Screen or Fn + key 76.
---------------------------------------------------------------------------
Key Key Cap Make Code Break Code System
Location Legend (NOTE 1) (NOTE 1) Code NOTES
---------------------------------------------------------------------------
22 Y 35 15
23 U 3C 16
24 I 43 17
25 O 44 18
26 P 4D 19
27 [ 54 1A
28 ] 5B 1B
29 \ 5D 2B 5
30 Caps Lock 58 3A
31 A 1C 1E
32 S 1B 1F
33 D 23 20
34 F 2B 21
35 G 34 22
36 H 33 23
37 J 3B 24
38 K 42 25
39 L 4B 26
40 ; 4C 27
41 ' 52 28
42 \ 5D 2B 4
---------------------------------------------------------------------------
NOTES: 1. All scan codes listed are for Shift, Alt, and Ctrl inactive and
unless noted, the Break code is the Make code preceded by F0h.
2. Scan codes listed are for Num Lock inactive.
3. A numeric cluster key.
4. NA means no legend.
5. No key number is assigned for the Break key. Break =
Ctrl + Pause or Fn + Key 86. Break key is make only with no
break code.
6. No key is assigned for the Sys Req key. Sys Req = Alt+ Print
Screen or Fn + key 76.
---------------------------------------------------------------------------
Key Key Cap Make Code Break Code System
Location Legend (NOTE 1) (NOTE 1) Code NOTES
---------------------------------------------------------------------------
43 Enter 5A 1C
44 (Left) Shift 12 2A
45 \ 61 56 4
46 Z 1A 2C
47 X 22 2D
48 C 21 2E
49 V 2A 2F
50 B 32 30
51 N 31 31
52 M 3A 32
53 , 41 33
54 . 49 34
55 / 4A 35
57 (Right) Shift 59 36
58 (Left) Ctrl 14 1D
60 (Left) Alt 11 38
61 (Space) 29 39
62 (Right) Alt E0 11 E0 F0 11 E0 38
75 Ins E0 70 E0 F0 70 E0 52 2
76 Del E0 71 E0 F0 71 E0 53 2
---------------------------------------------------------------------------
NOTES: 1. All scan codes listed are for Shift, Alt, and Ctrl inactive and
unless noted, the Break code is the Make code preceded by F0h.
2. Scan codes listed are for Num Lock inactive.
3. A numeric cluster key.
4. NA means no legend.
5. No key number is assigned for the Break key. Break =
Ctrl + Pause or Fn + Key 86. Break key is make only with no
break code.
6. No key is assigned for the Sys Req key. Sys Req = Alt+ Print
Screen or Fn + key 76.
---------------------------------------------------------------------------
Key Key Cap Make Code Break Code System
Location Legend (NOTE 1) (NOTE 1) Code NOTES
---------------------------------------------------------------------------
79 (Left Arrow) E0 6B E0 F0 6B E0 4B 2
80 Home E0 6C E0 F0 6C E0 47 2
81 End E0 69 E0 F0 69 E0 4F 2
83 (Up Arrow) E0 75 E0 F0 75 E0 48 2
84 (Down Arrow) E0 72 E0 F0 72 E0 50 2
85 Page Up E0 7D E0 F0 7D E0 49 2
86 Page Down E0 7A E0 F0 7A E0 51 2
89 (Right Arrow) E0 74 E0 F0 74 E0 4D 2
90 Num Lock 77 45 3
91 7 6C 47 3
92 4 6B 4B 3
93 1 69 4F 3
95 / E0 4A E0 F0 4A E0 35 3
96 8 75 48 3
97 5 73 4C 3
98 2 72 50 3
99 0 70 52
100 * 7C 37 3
101 9 7D 49 3
102 6 74 4D 3
103 3 7A 51 3
---------------------------------------------------------------------------
NOTES: 1. All scan codes listed are for Shift, Alt, and Ctrl inactive and
unless noted, the Break code is the Make code preceded by F0h.
2. Scan codes listed are for Num Lock inactive.
3. A numeric cluster key.
4. NA means no legend.
5. No key number is assigned for the Break key. Break =
Ctrl + Pause or Fn + Key 86. Break key is make only with no
break code.
6. No key is assigned for the Sys Req key. Sys Req = Alt+ Print
Screen or Fn + key 76.
---------------------------------------------------------------------------
Key Key Cap Make Code Break Code System
Location Legend (NOTE 1) (NOTE 1) Code NOTES
---------------------------------------------------------------------------
104 . 71 53 3
105 - 7B 4A 3
106 + 79 4E 3
108 Enter E0 5A E0 F0 5A E0 1C 3
110 Esc 76 01
112 F1 05 3B
113 F2 06 3C
114 F3 04 3D
115 F4 0C 3E
116 F5 03 3F
117 F6 0B 40
118 F7 83 41
119 F8 0A 42
120 F9 01 43
121 F10 09 44
122 F11 78 57
123 F12 07 58
126 Pause E1 14 77 E1 E0 1D 45
F0 14 F0 77 E1 9D C5
Break 14 E0 7E E0 1D E0 46 5
F0 7E FD 14 E0 C6 9D
SYS REQ 84 54 6
---------------------------------------------------------------------------
NOTES: 1. All scan codes listed are for Shift, Alt, and Ctrl inactive and
unless noted, the Break code is the Make code preceded by F0h.
2. Scan codes listed are for Num Lock inactive.
3. A numeric cluster key.
4. NA means no legend.
5. No key number is assigned for the Break key. Break =
Ctrl + Pause or Fn + Key 86. Break key is make only with no
break code.
6. No key is assigned for the Sys Req key. Sys Req = Alt+ Print
Screen or Fn + key 76.
=======================================================
===================
The following keys have special codes during Normal mode operation
depending on the state of the Shift, Num Lock, Alt, and Ctrl keys.
Table 10-4 gives the scan codes generated by these keys.
76 Del E0 F0 12 E0 71 E0 F0 71 E0 12
79 (Left Arrow) E0 F0 12 E0 6B E0 F0 6B E0 12
80 Home E0 F0 12 E0 6C E0 F0 6C E0 12
81 End E0 F0 12 E0 69 E0 F0 69 E0 12
83 (Up Arrow) E0 F0 12 E0 75 E0 F0 75 E0 12
84 (Down Arrow) E0 F0 12 E0 72 E0 F0 72 E0 12
85 Page Up E0 F0 12 E0 7D E0 F0 7D E0 12
86 Page Down E0 F0 12 E0 7A E0 F0 7A E0 12
89 (Right Arrow) E0 F0 12 E0 74 E0 F0 74 E0 12
---------------------------------------------------------------------------
Key Location Key Cap Scan Code Break Code
Shift Active with Legend
Num Lock ON:
---------------------------------------------------------------------------
75 Ins E0 12 E0 70 E0 F0 70 E0 F0 12
76 Del E0 12 E0 71 E0 F0 71 E0 F0 12
79 (Left Arrow) E0 12 E0 6B E0 F0 6B E0 F0 12
80 Home E0 12 E0 6C E0 F0 6C E0 F0 12
81 End E0 12 E0 69 E0 F0 69 E0 F0 12
83 (Up Arrow) E0 12 E0 75 E0 F0 75 E0 F0 12
84 (Down Arrow) E0 12 E0 72 E0 F0 72 E0 F0 12
85 Page Up E0 12 E0 7D E0 F0 7D E0 F0 12
86 Page Down E0 12 E0 7A E0 F0 7A E0 F0 12
89 (Right Arrow) E0 12 E0 74 E0 F0 74 E0 F0 12
---------------------------------------------------------------------------
Key Location Key Cap Scan Code Break Code
Shift Active with Legend
Num Lock OFF:
---------------------------------------------------------------------------
95 Keypad E0 F0 12 E0 4A E0 F0 4A E0 12
Shift Active or
Ctrl Active:
124 Print Scrn E0 7C E0 F0 7C
NOTE 2
124 SYS REQ 84 F0 84
NOTE 3
126 Break E0 7E E0 F0 7E
---------------------------------------------------------------------------
NOTES: 1. Key 126 is not repeating; it generates a scan code only on the
Make condition.
2. No key number is assigned for SYS REQ.
3. No key number is assigned for Break.
=======================================================
====================
Select Mode
The second keyboard mode, Select mode, generates a unique set of scan
codes. In this mode, the keyboard controller translations must be disabled,
because the controller is not capable of translating the scan code set
generated. Applications using the enhanced keyboard in the Select mode must
select this mode via the F0h keyboard command.
In the Select mode, the keyboard generates the Break code, a 2-byte
sequence that consists of a Make code immediately preceded by F0h.
Table 10-5 lists the scan codes for the keyboard operating in the Select
mode.
2 1 16 4
3 2 1E 4
4 3 26 4
5 4 25 4
6 5 2E 4
7 6 36 4
8 7 3D 4
9 8 3E 4
10 9 46 4
11 0 45 4
12 - 4E 4
13 + 55 4
15 Backspace 66 4
16 Tab 0D 4
17 Q 15 4
18 W 1D 4
---------------------------------------------------------------------------
NOTES: 1. All scan codes listed are for Shift, Alt, and Ctrl inactive.
2. NA means no legend.
3. A numeric cluster key.
4. Typematic function default.
5. Make/Break function default.
6. Make only default.
---------------------------------------------------------------------------
Key Key Cap Make Code NOTES
Location Legend (NOTE 1)
---------------------------------------------------------------------------
19 E 24 4
20 R 2D 4
21 T 2C 4
22 Y 35 4
23 U 3C 4
24 I 43 4
25 O 44 4
26 P 4D 4
27 [ 54 4
28 ] 5B 4
29 \ 5C 5
30 Caps Lock 14 4
31 A 1C 4
32 S 1B 4
33 D 23 4
34 F 2B 4
---------------------------------------------------------------------------
NOTES: 1. All scan codes listed are for Shift, Alt, and Ctrl inactive.
2. NA means no legend.
3. A numeric cluster key.
4. Typematic function default.
5. Make/Break function default.
6. Make only default.
---------------------------------------------------------------------------
Key Key Cap Make Code NOTES
Location Legend (NOTE 1)
---------------------------------------------------------------------------
35 G 34 4
36 H 33 4
37 J 3B 4
38 K 42 4
39 L 4B 4
40 ; 4C 4
41 ' 52 4
42 \ 53 4,7
43 Enter 5A 4
44 (Left) Shift 12 5
45 \ 13 5,7
46 Z 1A 4
47 X 22 4
48 C 21 4
49 V 2A 4
50 B 32 4
51 N 31 4
52 M 3A 4
53 , 41 4
54 . 49 4
55 / 4A 4
---------------------------------------------------------------------------
NOTES: 1. All scan codes listed are for Shift, Alt, and Ctrl inactive.
2. NA means no legend.
3. A numeric cluster key.
4. Typematic function default.
5. Make/Break function default.
6. Make only default.
---------------------------------------------------------------------------
Key Key Cap Make Code NOTES
Location Legend (NOTE 1)
---------------------------------------------------------------------------
57 (Right) Shift 59 5
58 (Left) Ctrl 11 5
60 (Left) Alt 19 5
61 (Space Bar) 29 4
62 (Right) Alt 39 6
75 Ins 67 6
76 Del 64 4
79 (Left Arrow) 61 4
80 Home 6E 6
81 End 65 6
83 (Up Arrow) 63 4
84 (Down Arrow) 60 4
85 Page Up 6F 6
86 Page Down 6D 6
89 (Right Arrow) 6A 4
91 7 6C 3&6
92 4 6B 3&6
93 1 69 3&6
95 / 77 3&6
96 8 75 3&6
---------------------------------------------------------------------------
NOTES: 1. All scan codes listed are for Shift, Alt, and Ctrl inactive.
2. NA means no legend.
3. A numeric cluster key.
4. Typematic function default.
5. Make/Break function default.
6. Make only default.
---------------------------------------------------------------------------
Key Key Cap Make Code NOTES
Location Legend (NOTE 1)
---------------------------------------------------------------------------
97 5 73 3&6
98 2 72 3&6
99 0 70 3&6
100 * 7E 3&6
101 9 7D 3&6
102 6 74 3&6
103 3 7A 3&6
104 . 71 3&6
105 - 84 3&6
106 + 7C 3&6
110 Esc 08 6
112 F1 07 6
113 F2 0F 6
114 F3 17 6
115 F4 1F 6
116 F5 27 6
117 F6 2F 6
118 F7 37 6
119 F8 3F 6
120 F9 47 6
121 F10 4F 6
122 F11 56 6
123 F12 5E 6
126 Pause 62 6
---------------------------------------------------------------------------
NOTES: 1. All scan codes listed are for Shift, Alt, and Ctrl inactive.
2. NA means no legend.
3. A numeric cluster key.
4. Typematic function default.
5. Make/Break function default.
6. Make only default.
=======================================================
====================
The Keyboard controller can send commands to the external device at any
time. When the external keyboard or pointing device is transmitting to the
system, the system first clamps the CLOCK signal line to request a device
transmission halt. To ensure that the external device recognizes the system
request, the clock line must remain low (0) for at least 60 us. When the
device transmission is past the rising edge of the parity bit Clock pulse,
the external device completes its transmission before clocking out the
controller command.
After all data bits are clocked out of the controller, the controller
places an odd parity bit on the Data line. The external device repeats its
clocking of the parity bit as before. The external device then sets the
Data line low and clocks this line to the keyboard controller for a stop
bit. When the external device receives the stop bit, the controller sets
the Clock line low to inhibit the device while it is processing the
received data.
Connector
The external keyboard cable or external pointing device has a 6-pin
circular-type DIN connector that plugs into a dedicated connector.
Table 10-6 lists the keyboard/pointing device connector signals.
2 NC
3 GND
4 +5VDC
5 Clock
6 NC
10.7 TRACKBALL
The COMPAQ LTE Lite/25C and COMPAQ LTE Lite/25e both incorporate a built-in
EasyPoint trackball. The trackball is a serial device that is fully
compatible with the Microsoft serial mouse.
Acceleration Function
Data Format
The data transmitted by the trackball to the system consists of the X/Y
coordinates of the ball, and the status of the buttons. This data is
transmitted in a three-byte serial data packet that is compatible with the
Microsoft serial mouse.
Trackball Initialization
Tables 10-7 through 10-9 show the COM port assignments for the trackball
and when an external mouse is present or the Options slot (Modem or serial
board) is installed.
11.1 INTRODUCTION
The power supply system consists of the External AC Adapter, Internal Power
Supply, Battery Pack, and Auxiliary Battery. Optional equipment includes
the External Battery Charger and the Automobile Adapter.
The internal power supply is a DC/DC converter that converts the input DC
voltage to the voltages required by the computer and display circuitry. An
external AC Adapter provides power for the computer and power to recharge
both the battery pack and auxiliary battery. Refer to Figure 11-1.
The auxiliary battery powers the computer for a short period of time in a
reduced power state or standby mode. This reduced power state occurs when
the main battery pack is removed in order to replace it with another
battery pack.
Figure 11-1 shows a block diagram of the power supply system.
The computer has an internal power supply that converts the AC Adapter DC
output voltage or battery pack voltage to levels required by the circuitry
of the computer and display. The internal power supply provides +5 volts
output.
Powergood
The powergood signal indicates that the +5 volt output is within the
required operating limits. This signal is initially low and remains low for
approximately 200 milliseconds after the +5 volt output reaches its
specified limits. The signal then goes high which indicates the computer is
ready to operate. When the Powergood signal is low, the computer is in a
reset condition.
Power-on
The Power-on signal activates the internal power supply when it is driven
low (0). Poweron is normally high and is held high by a 40Kohm pullup
resistor to the battery voltage. This signal is normally driven low by the
computer or can be driven low with external circuitry to control the
computer remotely. The internal circuitry (Power-On Switch) is prevented
from driving this signal low if the Expandb signal on the expansion
connector is connected to ground.
The AC Adapter and internal power supply can provide a maximum of 350
milliamps of current at +5 volts to any external equipment connected to the
computer. The battery pack can supply a maximum of 250 milliamps of current
to external equipment.
NOTE: The length of time that the battery pack can maintain power during
the low power or standby mode is dependent on many factors. The
condition of the battery, the amount of battery charge, the amount of
load that internal and external devices place on the battery will
affect the amount of time that power is sustained in the standby or
low power mode.
Specifications
Specifications for the internal power supply are shown in Table 11-1.
Power Output:
Steady State 18.5W
Peak 21.0W
Voltage Regulation:
Output Nominal Regulation
+5VDC +5.075 VDC 3% of Nominal Voltage
=======================================================
====================
The standard battery pack for the COMPAQ LTE Lite/25C, COMPAQ LTE Lite/25E,
and COMPAQ LTE Lite/25 is the Nickel Metal Hydride (NiMH) type. The
standard battery pack for the COMPAQ LTE Lite/20 is the Nickel Cadmium
(NiCd) type. Both battery packs provide the same operating voltage and have
the same physical dimensions. The Nickel Metal Hydride battery pack has a
higher energy density and will provide more power.
The battery pack is charged at two different rates, fast charge and trickle
charge. The charge rate is dependent on the charge level of the battery
pack and the internal temperature of the battery pack.
The battery packs have an amber LED on the front. The LED indicates when
the battery pack is in a fast charge condition and is not fully charged.
Specifications
The electrical specifications of the Nickel Cadmium battery pack are shown
in Table 11-2.
Charge rate:
Fast 2.2A Typical
Trickle 0.1A Typical
Temperature:
Charge 10oC to 40oC
Storage 0oC to 50oC
The electrical specifications of the Nickel Metal Hydride battery pack are
shown in Table 11-3.
Charge rate:
Fast 2.2A Typical
Trickle 0.1A Typical
Temperature:
Charge 10oC to 40oC
Storage 0oC to 50oC
The physical specifications for both types of battery packs are shown in
Table 11-4.
The auxiliary battery is charged whenever the computer is operating and not
in Standby and when the AC Adapter is powering the system. The charging
system is designed to recharge the auxiliary battery in three hours if the
battery was discharged for one minute at 250 milliamps.
11.6 AC ADAPTER
Connector
Table 11-5 shows the signals for the 3-pin AC Adapter connector.
2 Ground Ground
3 NC No Connection
=======================================================
====================
Specifications
AC Input:
Voltage 100 - 120/220 - 240 Volts AC
Frequency 50 - 60 Hz
Current 0.8 /0.4 amps
DC Output:
Voltage 18 VDC maximum
Current 2.5 amps maximum
Power 35 watts maximum
=======================================================
====================
Specifications
Dimensions
Height 1.5 in (3.8 cm)
Depth 3.9 in (9.9 cm)
Width 1.5 in (3.8 cm)
When two batteries are installed, the charger completes the charge of one
battery then begins the charge of the second battery. The charger controls
the sequence of charging for the two batteries and provides signals to the
AC Adapter to control the output of the adapter.
When two battery packs are being charged at the same time, they need not be
the same type of battery pack. Both types of battery packs can be charged
in the charger.
Specifications
Power
Operating Voltage 10.0 to 18.3 VDC
Operating Current 2.0A
Peak Power 60.0w
=======================================================
====================
12.1 INTRODUCTION
The computer comes equipped with one 3 1/2-inch diskette drive with 1.44
megabytes of data storage possible per diskette. Optional 5 1/4-inch
diskette drives with 1.2 megabytes or 360 Kbytes of data storage per
diskette may be added with the optional External Storage Module or the
Desktop Expansion Base.
To read or write to 48-tpi media, the software must step the 96-tpi drive
head twice between each 48-tpi track. Because the track width of the 96-tpi
diskette drive is half the track width of the 48-tpi diskette drive,
standard 48-tpi diskette drives may not be able to reliably read diskettes
written by the 96-tpi drive in the 48-tpi format.
360-Kbyte Diskette Drive
Table 12-1 lists the port addresses of the diskette drive controller.
Table 12-1. Port Addresses for the Diskette Drive Controller Circuits
=======================================================
====================
Port Read/Write Register Function
----
1 2
---------------------------------------------------------------------------
3F1h R Media ID
BIT FUNCTION
----------------
7 LOW DENSITY- media ID bit
6..0 Reserved
2. Set the data rate to 250 kilobits per second (Kb/s) by writing 02h to
3F7h.
4. Read bit <7> at 3F1h LOW DENSITY-. If LOW DENSITY- is low, the drive
(type) is a 3 1/2-inch diskette drive. If LOW DENSITY- is high, the
drive is indeterminate and the media ID bit cannot be used to determine
the type of media installed.
(If the drive is determined not to be a 3 1/2-inch diskette drive using the
above procedure, the media type is indeterminate. If the drive is a 3
1/2-inch diskette drive, the following procedure can be used.)
4. Read bit <7> at location 3F1. If the bit is low, 720-megabyte media
is installed. If the bit is high then 1.44-megabyte media is installed.
The Drive Control register controls the functions of interrupt and DMA
enable, Drive Motor ON, Drive Select, and controller reset. The format for
this register is:
BIT FUNCTION
----------------
7,6 Reserved
The Main Status register of the diskette drive controller IC is used as the
Diskette Drive Status register.
Data (3F5h)
Commands and data are written to this port. Data and status bytes are read
from this port.
This register contains the current data transfer rate in kilobits per
second (Kb/s). The format for this register is:
BIT FUNCTION
----------------
7..2 Reserved
Diskette Drive and Fixed Disk Drive Status (3F7h, Read Only)
This register provides both diskette drive status information (bit <7>) and
fixed disk drive status information (bits <6..0>). The format for this
register is as follows:
BIT FUNCTION
----------------
7 Diskette change
Drive Controller
The drive controller accepts commands from the computer that control most
drive functions and transfers of data to the drives.
The drive controller operates in the ISA-compatible DMA mode for data
transfers to and from the system. It issues a DMA request (DRQ2) signal and
receives a DMA acknowledge (DACK2-) signal for each byte transferred.
o The command phase, in which the drive controller receives the command
from the system
o The execution phase, in which the drive controller carries out the
command
o The results phase, in which the status and results are read back from the
drive controller to the system
The system can transfer data at various rates depending on the drive and
the type of media being used.
The Data Transfer Rate Control register (3F7h) contains the bits that
specify the transfer rate. Table 12-2 lists the data transfer rates of
various peripheral devices and medias.
Write Precompensation
The internal diskette drive has one connector. This connector supplies both
power and control signals. Table 12-3 describes the diskette drive control
signals.
12.5 SPECIFICATIONS
Table 12-4 lists the physical and electrical specifications for the
1.44-megabyte, 1.2-megabyte and the 360-Kbyte diskette drives that are
installable in the External Storage Module.
Size
Width 4.8 in 5.8 in 5.8 in
(10.2 cm) (14.6 cm) (14.6 cm)
Height 1.0 in 1.0 in 1.0 in
(2.5 cm) (2.5 cm) (2.5 cm)
Depth 6.056 in 8.0 in 8.0 in
(15.4 cm) (20.3 cm) (20.3 cm)
Capacity
Unformatted 2,000,000 bytes 1,600,000 bytes 500,000 bytes
Formatted 1,474,560 bytes 1,228,800 bytes 368,640 bytes
Flux reversal
density 17,434 FRPI 9875 FRPI 5876 FRPI
(Track 79) (Track 79) (Track 39)
Sectors/track
high/low density 18/9 15/9 9
Seek time
Track-to-track 3 ms 3 ms 6 ms
Average 80 ms 80 ms 80 ms
Settling time 15 ms 15 ms 15 ms
Rotational speed 300 RPM +/- 1.0% 360 RPM +/- 1.0% 300 RPM +/- 1.5%
13.1 INTRODUCTION
The computer accommodates one hard drive. The four hard drive sizes
available are 120-MB, 84-MB, 60-MB, or 40-MB. One additional hard drive a
210-MB, 120-MB, or 84-MB may be added externally by using the optional
Desktop Expansion Base.
This chapter provides the following information about the hard drive
subsystem:
Integrated hard drives are used with this computer. The hard drive and
controller are contained in one assembly. The assembly includes the
following components:
o A printed circuit board containing the drive electronics and the hard
drive controller
o A spindle motor
o A head-positioning mechanism
o Connects directly to the system board for data buffering and I/O address
decoding
o Has its drive control circuitry I/O mapped into specific I/O addresses
Figure 13-1 shows a functional block diagram of the Hard Drive subsystem.
All COMPAQ hard drive controllers are fully compatible. The addresses,
registers, and command structures are identical.
Registers
Table 13-1 lists the standard and alternate I/O addresses for the hard
drive controller.
Data (1F0h)
All data sent to the hard drive controller must pass through the Data
register. The Data register is also the port to which the sector table is
transferred during format commands. All transfers are high-speed 16-bit I/O
operations except for Error Correction Code (ECC) bytes transferred during
Read/Write Long commands.
The Error register contains an error status from the last command executed
by the hard drive controller. The contents of this register are valid when
both the following conditions exist:
BIT FUNCTION
----------------
7 1 = A bad-block mark was detected in the requested sector
ID field
5 Reserved
3 Reserved
2 1 = The requested command has been aborted because the hard drive
status is invalid or because the command code is invalid
0 1 = The data address mark has not been found after finding the
correct ID field
BIT FUNCTION
----------------
7 1 = 29
6 1 = 28
5 1 = 27
4 1 = 26
3 1 = 25
2 1 = 24
1 1 = 23
0 1 = 22
The following tabulation gives some bit values and the resulting starting
cylinders for write precompensation:
==========================
Bit Values Starting
Cylinder
--------------------------
00000001 4
00000010 8
00000100 16
00001000 32
00010000 64
00100000 128
01000000 256
10000000 512
==========================
First, the Sector Count register defines either the number of sectors of
data to be read or written or the number of sectors per track for format
commands. If the value in this register is zero, a count of 256 sectors is
specified. The sector count is decremented as each sector is accessed. The
Sector Count register contains the number of sectors left to access when an
error occurs in a multisector operation. During the Initialize Drive
Parameters command, the Sector Count register contains the number of
sectors per track.
The Sector Number register contains the starting sector number for any hard
drive access.
BIT FUNCTION
----------------
7..0 Starting sector number
At the completion of each sector and at the end of the command, this
register is updated to reflect the last sector correctly read or the sector
on which an error occurred.
The Cylinder Low and Cylinder High registers contain the starting cylinder
number for any hard drive access.
The Cylinder Low register is for the least-significant 8 bits of the 11-bit
cylinder number. The three most-significant bits of the cylinder number,
bits <10..8>, should be loaded into the Cylinder High register. Bit <2> of
the Cylinder High register is the most-significant bit of the 11-bit
cylinder address. At the completion of a command, these registers are
updated to reflect the current cylinder number.
BIT FUNCTION
----------------
7..0 Least-significant 8 bits of 11-bit cylinder numbers
BIT FUNCTION
----------------
7..3 Reserved
2..0 Most-significant 3 bits of 11-bit cylinder number
BIT FUNCTION
----------------
7 Reserved
4 Drive select
0 = Drive 1
1 = Drive 2
NOTE: Setting bit <4> (Drive Select 2) to 1 when no Drive 2 is present may
cause the remaining Controller registers not to respond until Drive 1
is selected again.
This register contains the hard drive controller and hard drive status. The
contents of this register are updated at the completion of each command. If
the Busy bit is set, no other bits are valid. Reading this register clears
the hardware interrupt line, IRQ14.
BIT FUNCTION
----------------
7 1 = Controller is busy executing a command. Other hard drive
controller register contents are not valid until this bit is
reset (= 0).
0 1 = Error has been detected. Examine Error register and the other
bits in this register to determine the source.
NOTE: When an error exists, the state of the signals does not change until
the error is read by the system.
=======================================================
====================
Command Command Code Parameters Used
---------------------- ------------------
BIT 7 6 5 4 3 2 1 0 PC SC SN CY DH
---------------------------------------------------------------------------
Initialize Drive
Parameters 1 0 0 1 0 0 0 1 N Y N N Y
Seek 0 1 1 1 X X X X N N N Y Y
Recalibrate 0 0 0 1 X X X X N N N N D
Read Sector(s) 0 0 1 0 0 0 L R N Y Y Y Y
Write Sector(s) 0 0 1 1 0 0 L R Y Y Y Y Y
The contents of this register are similar to those of the Status register,
except in the timing and latch control of the specified signals. Reading
this register does not clear any hardware conditions.
BIT FUNCTION
----------------
7 1 = Controller is busy (executing a command). The contents of the
other registers are not valid until this bit is reset (= 0)
0 1 = Error has been detected. Examine the Error register and the
other register bits to determine source.
The Drive Control register defines several functions of the hard drive
controller.
BIT FUNCTION
----------------
7..3 Reserved
2 1 = Resets controller
0 = Reenables the controller
1 0 = Enables interrupts
1 = Disables interrupts
0 Reserved
This register loops back the drive select and head select addresses of the
most recently selected hard drive.
BIT FUNCTION
----------------
7 Reserved for the diskette drive controller.
1 0 = Drive 1 selected
0 0 = Drive 0 selected
Commands
Seek 7xh
Recalibrate 1xh
Identify ECh
The Initialize Drive Parameters command enables the host to configure the
controller to work with hard drives that have different capacities and
characteristics.
Before this command is executed the Drive Select/Head register must contain
the maximum head number and the Sector Count register must contain the
number of sectors per track.
The parameters loaded into the register prior to issuance of the command
define the drive configuration for the specified hard drive.
Seek (7xh)
The Seek command initiates a seek to the track and selects the head
specified. The hard drive need not be formatted for a seek to execute
properly. The controller supports buffered step seeks, allowing overlapped
seeks on the drives.
After initiating a seek on one hard drive, another command can be issued to
the other drive. If a new command is received for a hard drive with an
outstanding seek, then the controller waits, with the Busy bit in the
Status register active, for the seek to complete before executing the new
command. There is no time-out condition in the controller while waiting for
buffered-step seeks to complete.
Recalibrate (1xh)
The Read Sectors command reads from 1 to 256 sectors as specified in the
Sector Count register, beginning at the specified sector. If the hard drive
is not already on the requested track, an implied seek is performed at the
stepping rate defined in the last Recalibrate command.
After reaching the specified track, the controller begins searching for the
appropriate ID field. If retries are enabled (20h), 16 revolutions are
taken before reporting an ID Not Found error. If retries are disabled
(21h), a maximum of 2 revolutions are taken. If the ID is read correctly,
the data address mark must be recognized within a fixed number of bytes, or
the Data Address Mark Not Found error will be reported.
After the data address mark is found, the data field is read and the sector
read is finished with either no error, a correctable data error, or a
non-correctable data error, depending on whether or not the ECC bytes are
correct for the preceding data field.
A Read Long command returns the data field and the ECC bytes contained in
the data field of the desired sector.
During a Read Long operation, the controller does not check the ECC bytes
to determine if there has been any type of data error. The data bytes are
read out of the sector buffer at the completion of the command, which is
signaled by an interrupt. All data transfers are high-speed 16-bit
operations, all ECC byte transfers on Read Long commands are slower 8-bit
operations.
The Write Long command writes the data field and the ECC bytes directly
from the sector buffer; the controller does not generate the ECC bytes. All
data transfers are high-speed 16-bit operations; all ECC byte transfers on
Write Long commands are slower 8-bit operations.
This command is identical to the Read Sectors command, except that no data
are transferred back to the system and no Read Long operations are
permitted. The read procedure described in the Read command is followed and
any errors encountered are reported to the system.
This command executes retries the same as the Read command does, whether
enabled (40h) or disabled (41h).
This command formats the track specified by the head and cylinder
parameters in the Cylinder High (1F5h) and Cylinder Low (1F4h) registers
and the Drive Select/Head register (1F6h). Once the command is issued, a
sector table is output to the Data register; additional bytes should be
loaded into the buffer until it is full (512 bytes). If the hard drive is
not already on the specified track, an implied seek is performed at the
last Recalibrate command. After the specified track is reached, the ID and
data fields are written using the sector table in the sector buffer.
The sector table contains 2 bytes per sector on the track. The first byte
is 00h if the sector is to be formatted normally, or 80h if the sector is
formatted "bad." The second byte is the logical sector number of the
sector.
As soon as the hard drive controller senses the index pulse from the hard
drive, formatting begins by writing the first physical sector with the
logical sector number in the first entry of the sector table.
Subsequent physical sectors are formatted in turn from the sector table.
The order of the sector table entries will correspond to the interleave
factor of the track. Media defects may be marked bad on a sector level,
allowing the remainder of the track to be used.
Table 13-3 lists the error codes and the corresponding description.
The Enter Low Power command immediately puts the hard drive into Low Power
without waiting for the hard drive Inactivity time-out.
The Enter Idle command immediately puts the hard drive into Idle from Low
Power. At this point the hard drive spins up to speed and is ready to be
accessed.
The Enter Low Power and Enable/Disable time-out command immediately puts
the hard drive into Low Power without waiting for the hard drive Inactivity
time-out. It disables the time-out if the Sector Count register value = 0
or enables the time-out if the Sector Count register value = other than 0.
The length of the hard drive Inactivity time-out is the Sector Count
register value times 5 seconds. The programmable range is from 12 (60
seconds) to 220 (1100 seconds).
This command immediately puts the hard drive into Idle from Low Power. It
disables the time-out if the Sector Count register value = 0 or enables the
time-out if the Sector Count register value = other than 0. The length of
the hard drive inactivity time-out is the Sector Count register value times
5 seconds. The programmable range is from 12 (60 seconds) to 220 (1100
seconds).
The Check Status command allows determination of status of the hard drive.
If the drive is in Low Power, the value 00h is loaded into the Sector Count
register. Otherwise the value FFh is loaded.
Identify (ECh)
The Identify command allows the host to receive parameter information from
the hard drive. When the command is issued, the controller gets the
parameters from the hard drive, stores them in the sector buffer, sets the
DRQ bit in the Status register, and allows the host to read the information
out of the sector buffer. The parameter words in the buffer are described
in Table 13-4.
2 Reserved
3 Number of heads
20 Controller type:
0000 Not specified
0001 Single ported single sector buffer
0003 Dual ported multiple sector buffer with a look-ahead read
all other values are RESERVED
47..255 Reserved
=======================================================
====================
1 1 = Hard-sectored
2 1 = Soft-sectored
6 1 = hard drive
The Read Buffer command allows the system to read the current contents of
the controller's sector buffer. When this command is issued, the controller
goes busy, sets up the sector buffer for a read operation, sets the Data
Request bit (DRQ), and goes not busy. The system can then read as many as
512 bytes of data.
The Write Buffer command allows the system to overwrite the contents of the
controller sector buffer with any data pattern desired. When this command
is issued, the controller goes busy, sets up the sector buffer for a write
operation, sets the DRQ bit, and goes busy. The system can then write as
many as 512 bytes of data.
13.4 CONNECTOR
13.5 SPECIFICATIONS
Drives Supported 1
Physical Configuration
Cylinders 1122
Heads 4
Sectors/Track 53 + 1 spare
Bytes/Sector 512
Logical Configuration
Cylinders 760
Heads 8
Sectors/Track 39
Bytes/Sector 512
=======================================================
====================
Drives Supported 1
Physical Configuration
Cylinders 1097
Heads 6
Sectors/Track 33 + 1 spare
Bytes/Sector 512
Logical Configuration
Cylinders 832
Heads 6
Sectors/Track 33
Bytes/Sector 512
=======================================================
====================
Drives Supported 1
Physical Configuration
Cylinders 823
Heads 4
Sectors/Track 38 + 1
Bytes/Sector 512
Logical Configuration
Cylinders 820
Heads 4
Sectors/Track 38
Bytes/Sector 512
=======================================================
====================
Drives Supported 1
Drive Type(s) Supported 53
Physical Configuration
Cylinders 1097
Heads 4
Sectors/Track 38 + 1
Bytes/Sector 512
Logical Configuration
Cylinders 548
Heads 4
Sectors/Track 38
Bytes/Sector 512
=======================================================
====================
14.1 INTRODUCTION
The computer system supports one tape drive. The 60-megabyte and the
80-/120-megabyte drives, both with compression, are available for use in
the External Storage Module or the Desktop Expansion Base. Refer to Chapter
15, "Desktop Expansion Base," or Chapter 16, "External Storage Module," for
more information.
The following five fundamental processes are performed by the commands sent
to the tape drive:
2. Tape Format, which writes block, sector, and track information onto the
tape. This information joins the indexing information previously
written by Servo Write. This process prepares the data areas consistent
with the Diskette Controller Chip (DCC) data format.
4. Read Data, which reads information in the same layout as the diskette
tracks.
5. Erase, which erases all information on tape (including servo and data
information).
NOTE: Tape cartridges that are preformatted for 60- and 80-/120-megabyte
capacities are recommended for use with COMPAQ drives.
NOTE: If the Servo Write operation is interrupted, the tape cartridge must
be fully erased before it can be used again.
The format operation for tape is similar to the format process for diskette
drives. To format the tape, the integrated fixed disk drive controller on
the system board takes control of the interface and supplies the track and
sector data for every block on the track. The data format on the tape has
the characteristics of a diskette.
The tape drive accepts commands as pulses on the step line. The number of
pulses determines the desired command. Any number of pulses not recognized
as commands are ignored. The tape drive does not recognize the step pulses
unless the DCC is programmed for a 3- or 6-ms gap between pulses.
---------------------------------------------------------------------------
Step Command Action
Pulses
---------------------------------------------------------------------------
6 Move Tape Physically This command moves the tape at 60 ips
Reverse toward the Physical BOT position. BUSY- is
active during the Reverse execution of this
command. If the tape is at BOT when this
command is issued, the drive responds with
a 2-ms pulse on the BUSY- line.
---------------------------------------------------------------------------
Step Command Action
Pulses
---------------------------------------------------------------------------
13 Report New Cartridge Causes drive to activate the BUSY- line if
Present the Cartridge Present indication on the
drive has been active, gone inactive, and
come back active again. If this sequence
has not occurred, BUSY- remains inactive.
If this status is TRUE, it will be cleared
by executing this command.
16 Enter Format Mode Puts the drive in the mode where INDEX
pulses are generated at both the beginning
and end of each tape block. The drive
issues a 2-ms pulsed response to this
command.
17 Enter Normal Mode Puts the drive in the mode where INDEX
pulses are generated only at the beginning
of each tape block. The drive issues a 2-ms
pulsed response to this command.
---------------------------------------------------------------------------
Step Command Action
Pulses
---------------------------------------------------------------------------
19 Status The drive gives a positive (TRUE) 2-ms
pulsed response. The user responds with "N"
step pulses to query the inserted tape
cartridge.
=======================================================
============
"N" Command Description
-------------------------------------------------------------------
4 True DC2000 cartridge installed
False DC1000 cartridge installed
=======================================================
============
---------------------------------------------------------------------------
Step Command Action
Pulses
---------------------------------------------------------------------------
19 Status (Continued)
N = 12 through 16 For a second set of commands (N = 12, 13,
14, 15, 16), the drive will give a
multiple-bit response. After receipt of the
initial commands (19 step pulses), the
drive will give a positive (TRUE) 2-ms
pulse response. The user responds with "N"
step pulses to query the desired status.
The drive will then give a positive (TRUE)
latched response, indicating the start of
the reporting sequence. The user will then
send a Pause/Continue (three step pulses)
command to increment the drive to the next
bit in the sequence, which is bit <0> (LSB)
of the status response. A positive (TRUE)
latched response on the BUSY- line
indicates a "1" bit, while a negative
(FALSE) response indicates a "0" bit. The
user continues to read the status bits and
to increment to the next bit with the
Pause/Continue Command until all of the
status bits have been reported. The number
of bits in the response is dependent upon
the command being used.
Drive Type
===========================================
B4 B3 B2 B1 B0 Drive Type
-------------------------------------------
0 0 0 0 0 110/210
0 0 0 0 1 120/220
0 0 0 1 0 125/225
0 0 0 1 1 145/245
0 0 1 0 0 146/246
0 0 1 0 1 165/265
0 0 1 1 0 Reserved
: : : : :
1 1 1 1 1 Reserved
===========================================
Tape Format
===========================================
B4 B3 B2 B1 B0 Tape Format
-------------------------------------------
0 0 0 0 0 No cartridge
installed
0 0 0 0 1 110 (6,440 bpi,
8-track)
0 1 0 1 0 Reserved
: : : : :
1 1 1 1 1 Reserved
===========================================
---------------------------------------------------------------------------
Step Command Action
Pulses
---------------------------------------------------------------------------
19 Status (Continued)
N = 13 Provides the general status of the drive as
follows:
BIT FUNCTION
----------------
7 1 = Cartridge installed, long length
6 1 = DC2000 cartridge
4 1 = Track found
3 1 = Cartridge present
2 1 = Tape at BOT
1 1 = Tape at EOT
0 1 = Normal completion
===========================================
N = 14 This command has an 8-bit response:
Dec. B7 B6 B5 B4 B3 B2 B1 B0
-------------------------------------------
00 0 0 0 0 0 0 0 0
Error: Normal status -- no error already
reported
01 0 0 0 0 0 0 0 1
Error: Tape format not allowed for this
drive
02 0 0 0 0 0 0 1 0
Error: Undefined tape format encountered.
03 0 0 0 0 0 0 1 1
Error: Drive failed to reach operating
speed.
04 0 0 0 0 0 1 0 0
Error: After reaching speed, tape speed
below error limit.
07 0 0 0 0 0 1 1 1
Error: No tape in cartridge when attempted
load point.
08 0 0 0 0 1 0 0 0
Error: Failed to find the load point hole
in load point.
09 0 0 0 0 1 0 0 1
Error: Illegal cartridge found on load
point.
10 0 0 0 0 1 0 1 0
Error: Load point stall occurred.
11 0 0 0 0 1 0 1 1
Error: Tape run-off in load point.
12 0 0 0 0 1 1 0 0
Error: BOT double hole encountered while
searching for ID bursts.
13 0 0 0 0 1 1 0 1
Error: Illegal attempt to servo-write a
300 foot tape.
14 0 0 0 0 1 1 1 0
Error: Failed conventional edge of tape
test.
15 0 0 0 0 1 1 1 1
Error: Failed head travel test.
16 0 0 0 1 0 0 0 0
Error: Invalid servo-write attempt
255 1 1 1 1 1 1 1 1
Error: No errors since processor power-up
or reset.
===========================================
---------------------------------------------------------------------------
Step Command Action
Pulses
---------------------------------------------------------------------------
19 Status (Continued)
N = 15 Provides various drive operation
information
BIT FUNCTION
----------------
7 Reserved
6 Track-Following Limit
0 = Limiter ON
1 = Limiter OFF
5 Format Mode
0 = Normal mode
1 = Format mode
3 Mapper State
0 = Mapper OFF
1 = Mapper ON
19 Status (Continued)
N = 16 Provides firmware revision level:
This command gives a 10-bit response for
the firmware revision level. The revision
level is defined by a two-digit code, which
can contain letters, numbers or both. The
most-significant digits are represented by
bits <9..5>. The least-significant digits
are represented by bits <4..0>.
===========================================
Bits Bits
9..5/ 9..5/
4..0 Digit 4..0 Digit
-------------------------------------------
00000 0 10000 G
00001 1 10001 H
00010 2 10010 J
00011 3 10011 K
00100 4 10100 L
00101 5 10101 M
00110 6 10110 N
00111 7 10111 P
01000 8 11000 Q
01001 9 11001 R
01010 A 11010 S
01011 B 11011 T
01100 C 11100 U
01101 D 11101 V
01110 E 11110 W
01111 F 11111 X
===========================================
---------------------------------------------------------------------------
Step Command Action
Pulses
---------------------------------------------------------------------------
20 Seek Track 0 Initiates tape motion at 50 ips and
positions the head over Track 0. While the
positioning operation is taking place,
INDEX pulses are inhibited. Once the
destination track is reached, INDEX pulses
are reenabled and tape motion continues at
50 ips to allow reading or writing.
---------------------------------------------------------------------------
Step Command Action
Pulses
---------------------------------------------------------------------------
25 Seek Track 5 Initiates tape motion at 50 ips and
positions the head over Track 5. While the
positioning operation is taking place,
INDEX pulses are inhibited. Once the
destination track is reached, INDEX pulses
are reenabled and tape motion continues at
50 ips to allow reading or writing.
---------------------------------------------------------------------------
Step Command Action
Pulses
---------------------------------------------------------------------------
29 Erase Tape Moves the tape to the LOAD POINT with the
head at the edge of the tape and then
erases the entire tape. If a cartridge is
not present or is write-protected, this
command will be ignored. BUSY- is active
during execution of this command and a
continuous 250-KHz clock is transmitted
over the Read Data Line. Immediately prior
to issuing this command, an ENTER FORMAT
MODE command must be issued. If not
preceded by the ENTER FORMAT MODE command,
the erase tape command will be ignored.
30 Diagnostic Type "N" The drive will give a positive (TRUE) 2-ms
pulsed response. The user will respond to
Type "N" with "N" step pulses indicating
the type of action to be taken by the
drive. The drive will then give a positive
(TRUE) response indicating receipt of the
command.
=======================================================
============
"N" Command Description
-------------------------------------------------------------------
1 Invalid command
2 Terminate command sequence
3 Invalid command
4 Margin verify off
5 Margin verify on
6 Lock head positioner
7 Step head up
8 Step head down
9 Unlock head positioner
10 Indicate edge of tape algorithm
11 Set drive transfer rate:
1 = Invalid
2 = Terminate command
3 = Invalid
4 = 250 Kb/s
5 = 500 Kb/s
6 = Reserved Kb/s
7 = 1.0 Mb/s
12 Reserved
13 Enable track following limit
14 Disable track following limit
=======================================================
============
31 Servo Write Moves the tape to the LOAD POINT with the
cartridge head over Track 0, then writes
the servo information used for head
positioning on all 20 tracks. If a
cartridge is not present or is
write-protected, this command will be
ignored. BUSY- is active during execution
of this command. Immediately prior to
issuing this command, an ENTER FORMAT MODE
command must be issued. If not preceded by
the ENTER FORMAT MODE command, the SERVO
WRITE command will be ignored. The drive
will only execute this command when a
DC2000 cartridge is installed (cartridge
presence status is true).
All blocks after "0" and "1" on Track 0 contain directory and file
information. If the backup spanned multiple directories, the first sector
of the Save Set would contain directory information. This information tells
the tape utility which directories to create on the destination disk during
the tape restore process. These sectors are marked as allocated in the File
Allocation Table.
Reserved 2
Directory name N 78
Reserved 2
============================================
Reserved --
=======================================================
====================
Example: The following directory names are generated for the directory
shown in Figure 14-2:
\DOS
\TOOLS\EDITOR
\MISC\REPORTS\TEMP
\MISC\MEMOS
\MISC\EXPENSE
Following the directory information are the sectors containing the file
information. The first sector of each file contains a header, which
contains various information about the file.
Filename 108
File attribute 2
Backup time 2
Backup date 2
Backup time and date The date and time the file was backed up. This value
is the same as the corresponding value in the
headers of all the other files that were part of
the same backup.
Aux file attribute 1 Used with MS-DOS only. Not used in COMPAQ TAPE
Utility prior to Version 1.10. In Version 1.10 and
later: Bit <0>, if set (= 1), means that this file
is continued on the next tape. In this case, the
file size indicates only the portion of the file
that is on this tape.
Tape drives use the same cable, connectors, and pin arrangements as the
diskette drives use, for the connections to the main circuit board and the
DC power supply.
The signal functions are different, and special software drivers are used
to control the tape drive. Table 14-6 describes the signal functions.
READ DATA- The data stream of data and clock pulses from the
Tape Drive
14.5 SPECIFICATIONS
The following tables show the physical and electrical specifications for
the tape drives.
Tape speed:
Read/Write 50 ips
Rewind/Fast Forward 60 ips
Tape end-to-end
positioning time: DC1000 DC2000
Read/Write 44 sec 49 sec
Forward/Reverse 35 sec 35 sec
Number of tracks 20
Blocks/track 124/186
Bytes/sector 1024
=======================================================
====================
Tape end-to-end
positioning time: DC 2080 DC 2120
Read/Write 29 sec 43 sec
Forward/Reverse 29 sec 43 sec
Number of tracks 32
Blocks/track 86/130
Bytes/sector 1024
=======================================================
====================
15.1 INTRODUCTION
The Desktop Expansion Base (Figure 15-1) provides the COMPAQ LTE Lite with
full desktop computer capabilities. The COMPAQ LTE Lite system unit easily
plugs (docks) into the Desktop Expansion Base using a 198-pin connection.
When the system unit is connected and the Desktop Expansion Base is turned
on, any optional boards or peripherals installed in or connected to the
Desktop Expansion Base are fully integrated into the system unit.
ILLUSTRATION OF Figure 15-1. Desktop Expansion Base with COMPAQ LTE Lite
Installed and External Keyboard and Video Monitor Attached
Figure 15-2 shows a functional block diagram of the Desktop Expansion Base.
The following paragraphs provide a discussion of the functions of the
Desktop Expansion Base.
The Desktop Expansion Base provides mounting bays for two mass storage
devices; one 1/3 height device (such as a diskette drive) and one 1/2
height (such as a tape drive). When a diskette drive is installed in the
Desktop Expansion Base, an A/B switch on the rear panel allows the
selection of that drive as being either drive A (boot disk) or drive B.
The Desktop Expansion Base can accommodate two full-size 8-/16-bit ISA
expansion boards. A detailed description of ISA expansion bus operation is
provided in Chapter 5, "Expansion Support."
Power Supplies
The Desktop Expansion Base contains two separate power supplies. One power
supply provides DC power and battery charging for a docked system unit.
This power supply is active as long as the Desktop Expansion Base is
plugged into an AC outlet and in effect replaces the AC Adapter of the
system unit.
The second power supply provides DC power to the fan, external keyboard,
pointing device, and any ISA expansion boards and mass storage devices that
may be installed in the Desktop Expansion Base. This power supply is
controlled by the power switch at the front of the Desktop Expansion Base.
When this power switch is turned on, a Power On signal is applied to the
system unit (if docked), logically overriding the power switch on the
system unit and forcing the system unit to a powered up condition.
Connectors
When a COMPAQ LTE Lite system unit is docked with the Desktop Expansion
Base, a 198-pin connection is made that allows the transfer of DC-power and
ISA expansion bus signals, and allows duplication of the following I/O
interfaces of the system unit:
o Serial interface
o Parallel interface
o Keyboard interface
o VGA monitor interface
For pinouts of the 198-pin External Options Interface Connector and the
duplicated connectors refer to Appendix B, "Connectors."
The Desktop Expansion Base provides two full size ISA expansion bus slots
to accommodate 8-/16-bit ISA expansion boards. Figure 15-3 shows the ISA
connectors and pinouts for these slots. Refer to Chapter 5, "Expansion
Support," for a description of the expansion bus signals.
Switches
A DIP switch located on the system board of the Desktop Expansion Base
provides control of optional mass storage devices. Table 15-1 lists the
functions of the DIP switch positions.
3 Reserved n/a
The External Storage Module (Figure 16-1) supports one of the following
options:
A block diagram for the External Storage Module is shown in Figure 16-3.
The External Storage Module includes a self-contained AC power supply and
supports one diskette or tape drive.
The External Storage Module comes with a 24-inch long cable and a 28-pin
SCSI-type connector that attaches to the External Options Adapter. Signal
descriptions are given in Table 16-1.
16 -- GND Ground
2 LOWDEN- 19 GND
3 GND 20 STEP-
4 LOWDENMEDIA- 21 GND
5 GND 22 WRTDATA-
6 DRVSEL4- 23 GND
7 GND 24 WRTGATE-
8 INDEX- 25 GND
10 Reserved 27 GND
11 GND 28 WRTPROT-
12 DSEL-EV- 29 GND
13 GND 30 RDATA-
14 Reserved 31 GND
15 GND 32 HEAD1SEL-
16 MOTOR- 33 GND
16.4 SPECIFICATIONS
Table 16-3 gives the specifications for the External Storage Module.
Weight
Without storage device 2.6 lb (1.2 kg)
With drive installed 4.5 lb (2.0 kg)
Power requirements
Input voltage 110 to 240 VAC
Output power 5 VDC at 0.6A continuous
0.8A peak (100 ms)
12 VDC at 1.0A continuous
2.5A peak (1.8 sec)
Temperature
Operating 50oF to 95oF (10oC to 39oC)
Non-operating -22oF to 140oF (-30oC to 60oC)
Shock
Operating 5 G 0.5 sine, 11 ms, any axis
Non-operating 30 G 0.5 sine, 11 ms, any axis
The following tables list the error codes and a brief description of the
probable source of the error. Your computer will generate only those codes
applicable to your configuration and options.
Table A-1 lists error messages that may occur as part of the Power-On
Self-Test (POST).
102-System or Memory
Board failure None High-order addresses
---------------------------------------------------------------------------
NOTE: XX000Y ZZ = Address (XX), byte (Y), data bit (ZZ) of failed memory
test
---------------------------------------------------------------------------
Message Beeps Probable Cause
---------------------------------------------------------------------------
205-Cache Memory Failure None Cache Memory Failure
303-Keyboard Controller
Error None Keyboard controller
304-Keyboard or System
Unit Error None Keyboard interface
601-Diskette Drive
Controller Error None Diskette drive controller
702-Coprocessor Detection
Error None Configuration error
The following tables list error messages that may occur during Diagnostics
testing.
Processor
Table A-2 lists error messages that relate to the system processor or to
other system board devices.
Memory
205-02 Error while saving block under test in walking I/O test
205-03 Error while restoring block under test in walking I/O test
---------------------------------------------------------------------------
206-xx Increment pattern test failed
---------------------------------------------------------------------------
210-01 Memory increment pattern test
Keyboard
Printer
Diskette Drive
Serial Communications
Modem Communications
Hard Drive
Tape Drive
Video
Table A-11 lists the error codes for the Video subsystem.
B.1 INTRODUCTION
This appendix describes the connectors used in the COMPAQ LTE Lite Family
of Personal Computers.
B.2 CONNECTORS
o Parallel connector
o Serial connector
o Pointing Device/External Keyboard connector
o External Numeric Keypad connector
o VGA monitor connector
o AC Adapter connector
o External Options connector
Figure B-1 shows the location of all of the connectors found on the rear
panel of the computer.
Connector Locations
Figures B-2 through B-8 detail each connector found on the rear panel of
the computer.
Parallel Connector
Serial Connector
AC Adapter Connector
The COMPAQ LTE Lite contains power conservation features that are designed
to extend operating time while running under battery power. These features
are user-controllable with hotkey combinations and though the SETUP and
PWRCON utilities. Note that when the system unit is powered from an AC
source, the power conservation features are not available.
o Battery condition
o Power conservation level setting
o Mode of reduced power operation.
A new feature, Hibernation, has been added that provides data loss
security, protection from battery rundown, and a "bookmark" function.
The computer recognizes two battery conditions: low battery 1 and low
battery 2.
Low Battery 1 -- In this condition, the battery pack has approximately six
percent of its charge remaining. The computer indicates this condition by
flashing the power/low battery light once every second and, initially,
beeping the speaker six times (if the speaker is enabled).
Low Battery 2 -- When this condition is reached, the battery pack has only
two percent of its charge remaining. This condition is indicated by the
power/low battery light flashing twice every second, and the speaker (if
enabled), initially beeping twice per second.
The COMPAQ LTE Lite features user-selectable power conservation levels. The
power conservation level determines parameters such as subsystem timeouts,
display brightness, and processor speed, all which affect the amount of
drain the system places on the battery pack. The power conservation levels
are selected with hotkey combinations (from the integrated keyboard only).
Table C-1 shows the power conservation level settings.
Processor speed:
LTE Lite/25 and
LTE Lite/25C 12.5 MHz 25 MHz 25 MHz 3, 6, 12, 25 MHz
System Idle
The computer achieves the system idle condition when various subsystems,
after a period of inactivity, are placed in a reduced power mode. A power
management firmware routine is then run that clears timer registers, slows
the CPU clock speed, and dims the LCD panel. The subsystems that determine
the status of system idle condition are then monitored for I/O port or IRQ
activity, which, if detected, results in a System Management Interrupt
(SMI) being generated and immediately brings the computer out of the system
idle condition. Table C-2 lists the subsystems and respective ports/IRQs
that are monitored.
During system idle, the CPU speed is slowed to 1/8 of normal speed. This is
accomplished by firmware placing 11b into the Fast CPU field of the
CPUWRMODE register. Processing continues during system idle, but at
reduced performance.
NOTE: The turbo pin of the 386SL is permanently pulled up in the COMPAQ LTE
Lite so that the processor, in normal operation, always runs in turbo
mode.
The inactivity timers of the traps are set with the value of the system
idle timeout value selected by the user. Note that in the case for the
global traps, activity detected from the keyboard (IRQ1), mouse (IRQ12), or
the diskette drive controller (IRQ6) will cause an SMI that results in the
inactivity register being reset for all three subsystems.
In the system idle condition, the brightness of the LCD is dimmed. This is
achieved by the firmware setting the pulse width modulation (PWM1) signal
(that controls the LCD back or edge lighting) to a duty cycle that
corresponds to the user-selected dim level. The PWM1 Compare (System
Processor Index 87h, R/W) and the PW Prescaler (System Processor Index 97h,
R/W) registers are used to determine the amount of dimming (percentage of
PWM1's duty cycle) desired.
The operating mode of the hard drive is basically independent of the system
idle condition of the computer, except when a drive access occurs, which
will bring the computer out of the system idle condition. The hard drive
has four operating modes:
o Normal
o Idle
o Spin Down
o Off
In Normal mode, the hard drive circuitry is completely powered up and the
platters are spinning.
The hard drive has its own Idle mode, during which time no read, write, or
seek operations are occurring and part of the drive circuitry is turned off.
This Idle mode is controlled by the drive itself, completely independent of
other system hardware and firmware.
The hard drive Spin Down mode is determined by the hard drive timeout
parameter set by the user. After a predefined period of drive inactivity,
the drive motors and a large portion of the drive circuitry are turned off.
A drive access request will bring the hard drive out of the Spin Down mode,
but requires approximately 10 seconds for the drive platters to spin up to
speed before the request is serviced. The hard drive can exit the Spin Down
mode by entering the Off mode, being activated by a read/write request, or
as the result of the system unit being plugged into AC power with the AC
Adapter (this last situation will be discussed later).
The hard drive enters an Off mode after two minutes of inactivity in the
Spin Down mode. In the Off mode, the hard drive interface signals are
tristated and the circuitry turned off. For the hard drive to achieve
the Off mode, two trap timers (one to monitor ports 1F0h - 1F7h and the
other to monitor ports 3F6h and 3F7h) must both time out. The firmware then
sets bit 6 of the SMOUT_CNTRL register (of the 386SL), resulting in the
following:
o Signals HD7, HDCS0-, and HDCS1- (data bit 7 and chip selects) from the
82360SL are tristated
o Signals HDENL- and HDENH- are driven high to disable the data buffers
o DEV1 signal driven low to remove power from the hard drive circuitry
The hard drive can still, in the "off" mode, detect a request for drive
access, in which case the drive becomes fully operational (after a spin up
time of about 10 seconds). After the access is complete, the inactivity
(trap) timers are reset and the drive returns to its own "idle" mode.
Another situation that will bring the hard drive out of the "off" mode is
when AC power is connected to the system unit through the AC Adapter. Refer
to the section "Exiting Standby by Connecting AC Power" later in the
appendix.
During the system idle condition, the diskette controller disables the
internal clock signal and powers down a portion of the drive circuitry. An
access (writing to the diskette controller data register or to the main
status register) will bring the diskette controller out of its low power
mode, requiring several milliseconds delay while the clock is enabled. An
access brings the computer out of system idle by generating an IRQ6 that is
detected by global trap/timer registers of the 386SL chipset.
The inactivity timers of the traps are set with the value of the system
idle timeout value selected by the user. Note that in the case for the
global traps, activity detected from the keyboard (IRQ1), mouse (IRQ12), or
the diskette drive controller (IRQ6) will cause an SMI that results in the
inactivity register being reset for all three subsystems.
The serial interface is monitored during system idle by two sets of local
trap/timer registers of the 386SL chipset. The trap/timer registers monitor
the I/O port ranges of 3F8h - 3FFh and 2F8h - 2FFh. The inactivity timers
of the traps are set with the value of the system idle timeout value
selected by the user.
The enhanced option slot interface is monitored during system idle by local
trap/timer registers of the 386SL chipset. The trap/timer registers monitor
the I/O port ranges of either COM1, COM2, or the programmed ranged address
range (see Table C-2). The inactivity timers of the traps are set with the
value of the system idle timeout value selected by the user.
The modems currently available to use in the option slot include power
management logic that acts independently of the system firmware (i.e., they
can power themselves down).
The option slot includes an output signal, SLOTON-, which can be used to
turn off a modem or other peripheral device that is installed in the
enhanced option slot IF the peripheral device is designed to support this
feature. The SLOTON- signal can be driven low by firmware to turn off the
peripheral device to conserve power, and then driven high again to turn on
the peripheral if needed.
System Standby
In system Standby, processing is stopped and a large portion of the system
is either powered off or placed in a low power mode (Table C-3). In this
condition, the LCD is completely turned off and the system memory is held
active so that data in memory is not lost. The system Standby condition is
entered usually from the system idle condition and uses the least amount of
battery power. The computer may sustain the system Standby condition for
up to 48 hours for the COMPAQ LTE Lite/20 and COMPAQ LTE Lite/25, and up to
80 hours for the COMPAQ LTE Lite/25E and COMPAQ LTE Lite/25C, depending on
battery condition at the time Standby is entered.
Entering Standby
The computer can be placed in the system Standby condition by one of four
methods:
In any case, the computer must be operating from battery power in order to
enter the Standby condition. Regardless of how the "entry into standby"
procedure is initiated, the basic procedure is the same.
The system monitors the same subsystems for Standby that it does for system
idle (see Table C-2). If all peripheral timers expire (indicating no
peripheral activity), then the system firmware implements the standby
procedure. If the system detects activity in a monitored peripheral, an SMI
for that activity will not be generated and the system will remain in the
normal operating mode until that SMI is generated.
The video controller status is not saved to SMRAM because data is held by
the video controller during Standby. The video ASIC, upon receiving a low
DEV 4 signal from the 82360SL, enters its low power mode and turns off the
LCD. The video RAM data is preserved. If an external monitor is being
used, the display will be blanked in the Standby condition due to the video
(RAM) DAC being placed in a low power mode by the video ASIC.
Cache memory data is not saved to the SMRAM because when the computer exits
Standby, a CPU reset occurs that invalidates the cache anyway.
The 82360SL peripheral controller provides a group of signals that are used
to power down various subsystems while entering the system Standby
condition. These signals are controlled by local Standby registers also
contained within the 82360SL. The register that directly controls the
subsystem (device) power, the SMOUT_CNTL (CMOS 0FEh) register, is shown
below with which subsystems the outputs affect.
BIT FUNCTION
----------------
7,6 Reserved
0 DEV 0 -- Unused
The final step in achieving system Standby is for the firmware to set the
SUS_STAT bit of the SPND_STS register (of the 82360SL). This action results
in the 386SL chipset being placed in its suspend mode and the SUS_STAT- pin
being driven low to power-off clock logic, the diskette drive controller,
the math coprocessor, the cache memory, and the amplifier for the speaker.
Entering Standby With The Standby Button
When the Standby button is pressed, the keyboard processor detects the
generated pulse and a suspend warning timer is set to run. After this timer
has timed out (allowing the processor to finish any CPU cycles that need to
be finished), the SMI handler routine is invoked. The system firmware then
configures the peripheral activity local/global trap timers to four
seconds. Once all monitored subsystems have been detected as inactive for
four seconds, the firmware continues with the procedure (as described
earlier) of placing the computer into the Standby condition.
When the inactivity timers monitoring peripherals all timeout, the system
firmware immediately turns off the LCD and resets the inactivity timers to
four seconds. If the timers are allowed to count down four seconds and
timeout, the firmware proceeds to place the computer into the system
Standby condition.
When the battery status byte equals or is less than the LBAT1SP value, the
battery check process continues for ten more seconds. This ten second
"grace" period prevents a sudden current surge from prematurely placing the
computer in a low battery condition. If, after the grace period the system
condition has not changed, the EXTSMI- input pin of the 82360SL is driven
low and the suspend warning timer is loaded with the value of the
SUS_WRN_TMR register of the 82360SL. When the suspend warning timer times
out, an SMI is generated. The 82360SL then determines the cause of the SMI
as being the low battery 1 condition, and the SMI handler configures all of
the local and global trap/timer registers for a timeout value of two
minutes. If an activity occurs, the timers are reset again and the process
continues.
Exiting Standby
When the standby button or any key on the keyboard is pressed, the SRBTN-
input signal of the 82360SL is driven low. The 82360SL then generates a
CPU reset and also drives the SUS_STAT- signal high. This action re-enables
the system clock sources. The CPU reset brings the 386SL chipset out of the
suspend mode. Following the CPU reset, the SUS_STAT bit of the SPND_STS
register is read, which in this case should be set indicating the CPU reset
is due to the Standby exit routine and not from another situation.
The firmware then clears the SUS_STAT bit and restores the system to the
condition it was in prior to entering the Standby condition. This involves
powering up devices and subsystems that were shut off, and re-enabling
components that were in a low power mode. Device configurations are then
restored to the pre-Standby state.
It should be noted that the hard drive is not powered up and re-enabled
during the Standby exit routine. The hard drive remains powered down until
an access is requested with the computer in the normal condition
The computer can be brought out of the Standby condition by the modem
(connected to the serial port or installed in the option slot) receiving a
ring on the line. For this to occur, the RING_MSK bit of the RESUME_MASK
register (of the 82360SL) must be set by firmware. In the case of a modem
connected to the serial port, a ring received by the modem will result in
the COMARI- input to the 82360SL to go low and initiating the CPU reset
routine described in the previous paragraph. In the case of a modem
installed in the option slot, a ring received by the modem generates an
IRQA that initiates the CPU reset routine by driving the COMBRI- input to
the 82360SL low.
The user can configure the computer to enter the Hibernation condition
after being in Standby for a certain period of time. The Hibernation
routine is discussed in the following section.
C.5 HIBERNATION
o With the Fn key and standby button (valid under battery or external
power, but NOT while using the system unit docked in the Desktop
Expansion Base)
SMI Generation
This function loads timer values into the appropriate CMOS locations.
BIT FUNCTION
----------------
7..5 Reserved
BIT FUNCTION
----------------
7..5 Reserved
The timer value stored in CMOS during SETUP will be loaded into the
screen save timer register and used.
I/O Port 10h
OUTPUT: 03h
BIT FUNCTION
----------------
7..5 Reserved
The speaker volume value stored in CMOS during SETUP will be loaded into
the speaker volume register and used.
The backlight intensity value stored in CMOS during SETUP will be used.
BIT FUNCTION
----------------
7..0 Backlight intensity value
The power conservation value stored in CMOS with SETUP or PWRCON are
transferred to the proper hardware registers and used.
The beeps enabled value stored in CMOS with SETUP are used.
The value for the size of the popup windows set with SETUP are used.
The value for the location of the popup windows set with SETUP are used.
This value is not checked.
BIT FUNCTION
----------------
7..3 Reserved
The processor speed value loaded into CMOS with SETUP is transferred into
the appropriate hardware register and used.
The value loaded into CMOS with SETUP is transferred into the appropriate
hardware register and used. This value controls the SLOT ON signal of the
enhanced option slot.
CMOS Location 72h, Bits 7..0: Total memory size in 256 Kbyte increments.
D.1 INTRODUCTION
The following paragraphs describe the security and network features and how
they are used.
Power-On Password
Keyboard Password
This feature can be invoked to disable the keyboard and pointing device
during system operation and, to regain system control, require the user to
enter a password specified through the KP Utility on the User Programs
diskette. (The KP Utility operates in the MS-DOS and OS/2 operating system
environments. This feature is sustained only as long as the unit is powered
up. When the unit is turned off, the KP Utility must be executed when the
unit is powered back up.)
QuickLock/QuickBlank
The QuickLock feature allows a user to lock the keyboard while within an
application by invoking a hotkey combination. This action guards against
tampering with a system while the user is away from the workstation. When
enabling the QuickLock feature, the user has the additional option of
enabling/disabling the QuickBlank feature.
The QuickBlank feature, when enabled, blanks the screen when the QuickLock
feature is invoked. The user reaccesses the system by entering the power-on
password, which must also be enabled for this feature to function. The
QuickLock/QuickBlank feature is enabled/disabled through the SETUP utility.
The Network Server Mode, when enabled, allows the system to completely boot
up, but the keyboard is locked until the power-on password is entered. This
feature is useful for units being used as network servers. The Network
Server Mode is enabled/disabled through the SETUP utility. The network
server mode can only be invoked if the power-on password is set.
DriveLock
The fixed disk drive may be locked to prevent read/write access to data on
that drive. The DriveLock feature is configured with the COMPAQ SETUP
utility.
The user has three options of configuring the fixed disk drive password
feature:
o NONE (No security, password disabled) -- The fixed disk drive is unlocked
following POST. All operating system commands dealing with the fixed disk
drive are usable.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> CAUTION
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<
NOTE: The DriveLock feature cannot be used with the Network Server Mode.
The system unit includes a slot on the side of the chassis that facilitates
the use of a cable lock. A cable lock allows the system administrator to
secure the system unit to a desk or table, discouraging the unauthorized
removal or theft of the system unit.
This section describes I/O ports and memory locations that are used by
security and network features. During the boot sequence, the BIOS ROM
reads the parameters stored in the RTC configuration (non-volatile) memory
by the COMPAQ SETUP utility. Additionally, software programs may access the
configuration memory and certain I/O ports to read the status of the
security features.
The byte at RTC configuration memory location 13h includes the status of
the security features as shown below:
BIT FUNCTION
----------------
7..3 Reserved -- DO NOT CHANGE (Bits used for other functions.)
0 Power-on password
0 = Disabled (default)
1 = Enabled
NOTICE
The supplement covers the following 486SL-based models of the Compaq LTE
Lite Family of Personal Computers:
For information on the 386SL-based members of the Compaq LTE Lite Family
and for subjects common to all models refer to the Compaq LTE Lite Family
of Personal Computers Technical Reference Guide, part number
(PN 140097-001).
The following features are standard on all 486SL-based Compaq LTE Lite
products:
o 486SL microprocessor
o Integrated coprocessor
o 4 megabytes of 32-bit system memory expandable to 20 megabytes
o 8-Kbyte integrated cache
o EasyPoint trackball
o Support for the Optional Desktop Expansion Base and QuickConnect Options
o Advanced Power Management features
o Nickel Metal Hydride (NiMH) battery pack
o Auxiliary battery
DIFFERENCE DATA
Table 1-1 lists the differences among the 486SL-based Compaq LTE Lite
products.
---------------------------------------------------------------------------
Feature: Cache Memory
---------------------------------------------------------------------------
Feature: Math coprocessor
---------------------------------------------------------------------------
Feature: Standard 32-bit Memory
---------------------------------------------------------------------------
Feature: Maximum Memory
---------------------------------------------------------------------------
Feature: LCD
---------------------------------------------------------------------------
Feature: Integrated Track Ball
2.1 INTRODUCTION
This chapter describes the key design and technical features of the
486SL-based Compaq LTE Lite Family of Personal Computers.
The 486SL-based Compaq LTE Lite products are notebook computers weighing
between 6.3 and 6.5 pounds. The computers will operate for 2 to 5 hours of
continuous use on a single battery charge, depending upon which computer
and peripheral combination is chosen. The computer incorporates several
features that allow the user to conserve battery power while maintaining
operating efficiency. The computer may be connected to an optional Desktop
Expansion Base or QuickConnect option to expand it's functionality.
The 486SL-based Compaq LTE Lite products feature the Intel 486SL
microprocessor and the 82360SL ISA peripheral controller. The core logic
of the 486SL microprocessor requires only 3.3 volts to operate thus
lowering the demand on the battery supply. The 486SL microprocessor
provides full 486DX processing capability with system power management,
32-bit memory management, ISA bus control, status, address, and data
interface logic added. The 82360SL peripheral controller provides
peripheral power management, real-time clock, and memory map functions.
The 82360SL also controls the DMA and interrupt controllers, and the
serial and parallel ports.
The video subsystem includes a video controller ASIC, 512 Kbytes of video
RAM, and either a monochrome or color liquid crystal display (LCD).
Figure 2-1 shows a block diagram of the 486SL-based Compaq LTE Lite
computers.
Microprocessor
The Basic Input/Output System (BIOS) is contained in flash ROM. Flash ROM
retains data without power applied just like standard ROM. Unlike standard
ROM, data can be rewritten into flash ROM. This allows the BIOS to be
easily updated as necessary by using dedicated BIOS update utility
software.
System Memory
The system memory provides temporary storage of programs and data. The
486SL-based models have 4 megabytes of 80-ns enhanced page Dynamic Random
Access Memory (DRAM) that operates at processor speed. A maximum of 20
megabytes of memory may be installed using optional 4-,8-, or 16-megabyte
extended refresh memory cards that are easily installed without
disassembling the unit.
Mass Storage
The 486-based Compaq LTE Lite computers accommodate one internal hard
drive. Two hard drive capacities, 209-megabytes and 120-megabytes, are
available. Both hard drive types have 2 1/2-inch platters to save space
and limit weight. Refer to Chapter 6, "Hard Drive Subsystem", for
additional information.
Video Subsystem
The Compaq LTE Lite 4/25E features an active matrix black and white VGA
display and video subsystem that provides high contrast scaling with up to
64 shades of gray.
The Compaq LTE Lite 4/25C and Compaq LTE Lite 4/33C feature a color TFT
active matrix VGA display with a color video subsystem that supports 256
simultaneous colors in 640 x 480 VGA resolution.
In addition to the integrated LCD, the video controller on all models can
simultaneously support either the Reduced Emissions Video Graphics Color
Monitor, the Video Graphics Color Monitor, or the Video Graphics
Monochrome Monitor. The video controller supports:
2.3 SPECIFICATIONS
Power Consumption
Average 10.0W
Peak 21.0W
=====================================
Table 2-3 lists the physical specifications (closed) of the 486SL-based
Compaq LTE Lite computers.
Weight
Lite 4/25C and Lite 4/33C 6.5 lb 2.93 kg
Lite 4/25E 6.4 lb 2.88 kg
Lite 4/25 6.3 lb 2.84 kg
=======================================================
====================
3.1 INTRODUCTION
This chapter briefly describes the Intel 486SL microprocessor. The CPU
core is similar to the 486DX microprocessor with system power management
features added. Full programming compatibility across the entire 80X86
microprocessor family is standard.
All 486SL-based Compaq LTE Lite computers were designed using the Intel
486SL microprocessor. The 486SL microprocessor has a 32-bit internal
architecture and interfaces with external functions and subsystems having
a 32-bit data bus. The 486SL includes a static CPU core, ISA bus control
logic, a 32-bit system memory controller, power management logic, and an
integrated cache controller with an 8-Kbyte 4-way set-associative cache.
Integrated Cache
The cache controller also has bus-snooping logic to help maintain cache
coherency. The cache controller monitors the system address bus and
invalidates any cache data present that corresponds to newly overwritten
data in system memory.
External Interfacing
The 486SL microprocessor uses three data buses for external data
transfers. A memory bus, a peripheral interface bus, and an ISA bus are
required for external data transfers.
The memory bus provides data transfers at processor speed between the
microprocessor and system memory. The 486SL microprocessor includes an
integrated memory controller that supports up to 20 megabytes of physical
memory with optional 4-, 8- or 16-MB memory cards.
The system bus handles data transfers between the 486SL microprocessor and
the peripheral subsystems. The system bus has the functionality of two
buses: the peripheral bus, where transactions occur at processor speed,
and the ISA expansion bus, which provides full support of ISA transactions
at 8-MHz speed. The system bus operates as a peripheral bus during video
operations and as an ISA expansion bus for all other functions.
Table 3-1 lists the signals shared by peripheral and ISA operations on the
system bus.
Table 3-2 shows control signals used by the system bus operating in the
peripheral mode.
Software Concepts
When power is applied or a reset operation occurs, the 486SL enters the
Real mode. The 486SL then provides all the capabilities and limitations
of Real mode, including compatibility with the 8086 and the 80286. The
Real mode allows only one megabyte of physical memory to be addressed and
does not provide any memory protection features. Memory is addressed via
the segment registers with the traditional 64-Kbyte limitation on segment
size. The major distinction between the Real mode of the 486SL and that of
the 80286 microprocessor is that 32-bit operands can be used with the
extended instruction set of the 486SL. This superset of the 80286
instruction set allows operations, such as multiplication, to use 32-bit
register or memory operands.
The Protected mode offers features compatible with the 80286 and fully
supports the following 80286 features: memory protection, addressing via
segment selectors, and 16-bit instruction set. Protected mode also allows
for improved functions unique to the 80386 that are beyond the capability
of the 80286 segment sizes (that is, 4 gigabytes on the 80386 as compared
to 64 Kbytes on the 80286). The improved functions are memory paging, I/O
protection, Virtual 8086 mode, and Protected mode's full 32-bit extended
instruction set.
The Virtual mode, in combination with memory paging, allows the Real mode
address space to be simulated anywhere in the physical address space of
the 486SL. In addition, the I/O protection features permit the operating
system to trap all or a selected set of I/O ports for device protection.
The Compaq Expanded Memory Manager (CEMM) enables the use of these
features.
Speed Control
The processor and system memory operate at processor (CPU) speed. Access
to the expansion bus and I/O devices always occurs at 8 MHz. The expansion
bus and I/O accesses are not affected by simulated changes in CPU
operating speed.
This simulated speed control is also useful for adjusting the computer to
handle action software games written for 8088-based personal computers.
Reduction of the system speed to simulate the system speed of an
8088-based personal computer allows these games to be played at a
realistic speed. Many games require the user to boot from the game
diskette. The computer accommodates this requirement by allowing the user
to restart the system, using Ctrl + Alt + Delete, without affecting the
selected system speed. The system remains at the selected speed until a
new speed has been selected or a power-on reset occurs.
The speed of the computer can be set to values that correspond to the
equivalent speeds of an 8088-based personal computer and 6- and 8-MHz
80286-based products. These values can be entered with the Mode command
(MODE SPEED = xx) from Microsoft MS-DOS or can be set with the "Set System
Speed" BIOS function (CX=xx) to simulate the computing speed of other
personal computer products.
4.1 INTRODUCTION
Figure 4-1 shows the 486SL-based Compaq LTE Lite memory subsystem block
diagram.
The Basic Input/Output System (BIOS) and video firmware are contained in a
single 128K x 8 Flash Read Only Memory (ROM). Flash ROM operates like
standard ROM, providing nonvolatile storage of data, but has the added
convenience of being easily reprogrammed. Without removing the ROM chip,
the BIOS can be updated with appropriate utility software that will write
the new BIOS firmware into the ROM.
The BIOS Flash ROM is accessed through the X-bus (which is off the system
bus) during the power-on self-test (POST) routine (read cycle) and when
the BIOS is being updated (write cycle). Since system memory provides
higher performance than the Flash ROM, the contents of the Flash ROM are
copied into system memory (between F0000h and FFFFFh) during POST. All
subsequent BIOS calls are serviced as system memory accesses.
The configuration memory contains real-time clock (RTC) data and data
pertaining to the configuration of the system. This CMOS-type memory along
with the RTC circuitry is kept nonvolatile when the system unit is turned
off by means of a dedicated lithium battery.
02h Minutes
04h Hour
08h Month
09h Year
11h Reserved
20h Reserved
21h Reserved
22h Reserved
23h Reserved
25h Reserved
26h Reserved
2Ah Reserved
The first ten bytes, 00h through 09h, hold time, calendar, and alarm
information. The contents of these bytes may be in either binary or BCD
format, but not a mixture. For the format to be switched, all ten bytes
must be re-initialized in the new format.
These bytes are updated once a second, at which time alarm conditions are
also checked. Attempts to read any of the ten bytes during an update
result in undefined data output(s). Status register B-Byte, discussed
later in this section, defines the parameters. Before initializing the
internal registers, Bit <7> of Status register B should be set to "1" to
prevent updates during initialization. This bit can then be cleared to
permit regular updating.
The status and configuration bytes contain parameters that are stored in
configuration memory and used by the ROM BIOS to determine system
configuration during the boot sequence.
BIT FUNCTION
----------------
7 0 = All right to read device
1 = Time update in progress; device read not all right.
6..4 These bits specify the time base frequency. The default value is
010 (32.768 KHz).
3..0 These bits specify the divider frequency for the clock. The
default value is 0110 (1.024 KHz).
BIT FUNCTION
----------------
7 0 = Normal operation (default)
1 = Disable time updating so that time can be set
1 0 = 12-hour mode
1 = 24-hour mode (default)
0 0 = No Daylight Savings Time (default)
1 = Daylight Savings Time selected
BIT FUNCTION
----------------
7 1 = Interrupt Output signal active
3..0 Reserved
BIT FUNCTION
----------------
7 0 = Real-Time Clock has lost power
1 = Real-Time Clock has not lost power
6..0 Reserved
The diagnostic status byte tells the system when there is a problem (time
invalid, faulty fixed disk drive controller, etc.) with the configuration
of the subsystems.
BIT FUNCTION
----------------
7 1 = Real-Time Clock has lost power
1,0 Reserved
The reset code tells the system what to do after the CPU is reset. The
reset code identifies the type of, or reason for, the reset. It also
provides a method of resetting the system without losing previously-stored
data or of returning the system to Real mode from Protected mode.
BIT FUNCTION
----------------
7..0 00h = Normal power-on reset
04h = Proceed to load DOS from fixed disk
05h = Jump to reset vector 0040:0067; initialize interrupt
controllers
09h = Block move return
0Ah = Jump to reset vector 0040:0067; do not initialize interrupt
controllers
This byte keeps track of drive types for two diskette drives including an
optional diskette drive installed in the External Storage Module or the
Desktop Expansion Base.
BIT FUNCTION
----------------
7..4 Primary diskette drive type:
0100 = 1.44-megabyte diskette drive only
The computer supports only one fixed disk drive, which is designated the
primary drive.
BIT FUNCTION
----------------
7..4 Primary fixed disk drive type:
0000 = No fixed disk drive type
0001 = Type 1
0010 = Type 2
0011 = Type 3
:
1110 = Type 14
1111 = Other type (see Configuration Byte 19h)
3..0 Reserved
This byte contains the password and network server mode status.
BIT FUNCTION
----------------
7..2 Reserved
1 Password
1 = Exists
0 = not available
This byte tells the system the type of equipment installed in the unit.
BIT FUNCTION
----------------
7,6 Number of diskette drives installed:
00 = 1 drive
01 = 2 drives
10 = Reserved
11 = Reserved
3,2 Reserved
1 0 = No coprocessor installed
1 = Coprocessor installed
Bytes 15h and 16h comprise a 16-bit value that specifies the base memory
size in increments of one Kbyte. The word is stored with the
least-significant byte at the lower address (in this case, 15h).
Bytes 17h and 18h comprise a 16-bit value that specifies the extended
memory size in increments of one Kbyte (1024 bytes). The word is stored
with the least-significant byte at the lower address (in this case, 17h).
Table 4-3 defines the extended memory sizes for memory on all memory
option boards.
This byte contains the type number. If the fixed disk drive is an extended
drive type (type 15 or greater), bits <7..4> of byte 12h contain 1111
(binary).
BIT FUNCTION
----------------
7 Reserved
6 CPU speed
0 = Auto
1 = High
Bit 7 defines the source of hardware interrupt IRQ12. Bits <6,5> hold the
Base Memory Size and indicate how much base memory (640 Kbytes, 512
Kbytes, or 256 Kbytes) to enable. The system ROM writes out this amount to
the Memory Installed register (I/O port 1065h).
BIT FUNCTION
----------------
7 IRQ12 select:
0 = Pointing device (mouse)
1 = Expansion bus
4..0 Reserved
This register contains information about the desired configuration for the
system's peripheral devices. Included are the serial, modem, printer, and
fixed disk drive devices. The ROM writes the value from CMOS into the
Peripheral Configuration register (I/O port 0465h).
BIT FUNCTION
----------------
7 Printer Interrupt Select
0 -- Printer = IRQ5
1 -- Printer = IRQ7 (default)
2 Modem State
0 = OFF (default)
1 = ON
1 Serial State
0 = OFF
1 = ON (default)
This Power Conservation variable determines how much time, in one minute
multiples, before the fixed disk drive enters low power mode where power
to the motor is turned off.
This register is also used to determine the power-on state of the Power
Control register (I/O port 0865h), specifically for the fixed disk drive
and modem devices.
BIT FUNCTION
----------------
7 Reverse video
0 = White on black
1 = Black on white
BIT FUNCTION
----------------
7,6 Power Conservation power-on condition
00 = PC AUTO (enable after 70 seconds)
01 = PC ON
10 = PC OFF
5 Run-Time Beep
0 = Enable
1 = Disable
BIT FUNCTION
----------------
7 Reserved
This byte allows the configuration of special video features and disables
or enables keyclicking.
BIT FUNCTION
----------------
7..3 Reserved
1 0 = Disable keyclick
1 = Enable keyclick
This is the century part of the current time and date encoded in BCD
(binary-coded decimal). The BIOS sets and reads this value.
BIT FUNCTION
----------------
7 1 = More than 1 megabyte of memory installed
0 = Less than 1 megabyte of memory installed
5 Reserved
4 Coprocessor
1 = Installed
0 = Not installed
3 Run-Time Beep
1 = Disabled
0 = Enabled
2..0 Reserved
Compaq LTE Lite computers come with four megabytes of 80-ns enhanced-page
Dynamic Random Access Memory (DRAM) as standard system memory. The memory
controller is integrated into the 486SL microprocessor. This controller
supports LIM 4.0 EMS mapping and permits traditional Direct Memory Access
(DMA). The 82360SL provides local memory refresh support and allows bus
master control of memory.
Figure 4-2 shows the arrangement of the standard four megabytes of system
memory.
Memory Map
System memory is typically configured with 640 Kbytes of base memory with
the extended memory mapped as shown in Figure 4-3.
Memory Expansion
Memory Control
Memory Refresh
If an external bus master wants to control the bus for an extended period,
that bus master must perform the refresh or risk losing the contents of
dynamic memory. The external bus master performs the refresh by developing
its own refresh request timer and internal arbitration.
The standard DRAM used in Compaq LTE Lite computers feature low power
consumption and slow refresh times to provide longer battery usage. The
optional memory cards specifically designed for Compaq LTE Lite computers
also share the low power and slow refresh characteristics. The refresh
rates are dependent on the configuration of the system and whether or not
the system is in Standby.
Table 4-4 shows the system memory refresh rates for the various system
configurations.
5.1 INTRODUCTION
The power supply system for the 486SL-based Compaq LTE Lite products is
similar to the 386SL-based models with the addition of a 3.3 volt output,
required to power the 486SL microprocessor.
The external AC Adapter provides power for the internal power supply
(DC/DC converter) and power to recharge both the battery pack and
auxiliary battery.
The internal power supply is a DC/DC converter that converts the input DC
voltage, from the AC Adapter or battery pack, to the voltages required by
the computer, memory, and display circuitry. The power supply provides an
additional 3.3-volt output. This voltage is required to power the low
power 486SL microprocessor.
The auxiliary battery operates the computer for a short period of time in
a reduced power state or standby mode. This reduced power state occurs
when the main battery pack is removed in order to replace it with another
battery pack.
5.3 SPECIFICATIONS
Power supply specifications for the 486SL-based Compaq LTE Lite computers
are shown in Table 5-1.
Power Output:
Steady State 16.5W
Peak 20.OW
6.1 INTRODUCTION
This chapter describes the hard drives available for the 486SL-based
Compaq LTE Lite products. The 486SL-based Compaq LTE Lite products
accommodate one internal hard drive. Two hard drive capacities, 209-MB and
120-MB, are available. Both hard drive types have 2 1/2-inch platters.
One additional hard drive, a 1/2 height 210-MB, 120-MB, or 84-MB may be
added externally when using the optional Desktop Expansion Base.
For additional information about the Compaq LTE Lite Hard Drive Subsystem,
refer to the Compaq LTE Lite Technical Reference Guide (PN 140097-001).
6.2 SPECIFICATIONS
The following specifications are for the 209-MB and 120-MB hard drives
available in the 486SL-based Compaq LTE Lite computers.
Drives Supported: 1
Physical Configuration:
Cylinders 1024
Heads 6
Sectors/Track 37 - 51
Bytes/Sector 512
Logical Configuration:
Cylinders 983
Heads 13
Sectors/Track 32
Bytes/Sector 512
=======================================================
====================
Drives Supported: 1
Physical Configuration
(Drives installed from
either supplier):
Cylinders 1065 1122
Heads 6 4
Sectors/Track 34 - 47 (3 zones) 53
Bytes/Sector 512 512
Logical Configuration:
Cylinders 760
Heads 8
Sectors/Track 39
Bytes/Sector 512
=======================================================
====================
6.3 CONNECTOR
Table 6-3 lists the 44-pin hard drive Power/Interface connector signals.
7.1 INTRODUCTION
The 486SL-based Compaq LTE Lite computers, like the 386SL-based Compaq LTE
Lite computers, have power conservation features that are designed to
extend operating time while running under battery power. These features
are user-controllable with hotkey combinations and through the SETUP and
PWRCON utilities. Note that when the computer is powered from an AC
source, the power conservation features are not available.
For additional information on power conservation for the Compaq LTE Lite
computers, refer to the Compaq LTE Lite Family of Personal Computers
Technical Reference Guide (PN 140097-001).
Processor speed:
LTE Lite 4/25 12.5 MHz 25 MHz 25 MHz 3, 6, 12.0, 25 MHz
LTE Lite 4/25E 12.5 MHz 25 MHz 25 MHz 3, 6, 12.0, 25 MHz
LTE Lite 4/25C 12.5 MHz 25 MHz 25 MHz 3, 6, 12.0, 25 MHz
LTE Lite 4/33C 16.5 MHz 33 MHz 33 MHz 4, 8, 16.5, 33 MHz
---------------------------------------------------------------------------
* Default at power-up
# Configured with PWRCON utility or SETUP
=======================================================
====================