Copyright 1995 Chips and Technologies, Inc. ALL RIGHTS RESERVED.
This manual is copyrighted by Chips and Technologies, Inc. You may not reproduce, transmit, transcribe,
store in a retrieval system, or translate into any language or computer language, in any form or by any
means, electronic, mechanical, magnetic, optical, chemical , manual, or otherwise, any part of this
publication without the express written permission of Chips and Technologies, Inc.
Restricted Rights Legend
Use, duplication, or disclosure by the Government is subject to restrictions set forth in subparagraph
(c)(1)(ii) of the Rights in Technical Data and Computer Software clause at 252.277-7013.
Trademark Acknowledgment
CHIPS logotype, CHIPSlink, CHIPSPort, ELEAT, LeAPSet, NEAT, NEATsx, PEAK, SCAT,
SuperMathDX, SuperState, PRINTGINE, and WINGINE are registered trademarks of Chips and
Technologies, Inc.
CHIPSet, SuperMath, WinPC, and XRAM Video Cache are trademarks of Chips and Technologies,
Incorporated.
IBM®, is a registered trademarks of International Business Machines Corporation.
IBM® AT, XT, PS/2, Micro Channel, Enhanced Graphics Adapter, Color Graphics Adapter, Video
Graphics Adapter, IBM Color Display and IBM Color Display and IBM Monochrome Display are
trademarks of International Business Machines Corporation.
TRI-STATE® is a registered trademark of National Semiconductor Corporation.
VESA® is a registered trademark of Video Electronics Standards Association.
VL-Bus is a trademark of Video Electronics Standards Association.
All other trademarks are the property of their respective holders.
Disclaimer
This document is provided for the general information of the customer. Chips and Technologies, Inc.,
reserves the right to modify the information contained herein as necessary and the customer should ensure
that they have the most recent revision of the document. CHIPS makes no warranty for the use of its
products and bears no responsibility for any errors which may appear in this document. The customer
should be on notice that the field of personal computers is the subject of many patents held by different
parties. Customers should ensure that they take appropriate action so that their use of the products does not
infringe upon any patents. It is the policy of Chips and Technologies, Inc. to respect the valid patent rights
of third parties and not to infringe upon or assist others to infringe upon such rights.
Page 3
Confidential InformationRevision History
Revision History
RevisionDate By Comment
0.14/24/95RNPreliminary Release
1.07/12/95RN/lcOfficial Release
1.18/21/95SH/BB/lcUpdated PCI Data Structure Table, removed reference to Emulation Registers
Updated Extended Mode Parameter Tables
Terminology And Conventions .............................................................................................................................. 1
About This Manual .................................................................................................................................................1
CHAPTER 1 - INTRODUCTION TO THE VGA BIOS ............................................................. 2
Customization Support ...........................................................................................................................................2
Customer Support ................................................................................................................................................... 3
CHAPTER 2 - BIOS FEATURES ................................................................................................. 4
AT Compatibility ............................................................................................................................................. 4
Multiple Bus Support.............................................................................................................................................. 4
Monitor Support ..................................................................................................................................................... 4
Display Boot/Display Type Configurations ............................................................................................................ 4
Extended Video Modes........................................................................................................................................... 5
Flat-Panel Support .................................................................................................................................................. 7
8x19 Font Support (Tall Fonts) ........................................................................................................................ 7
Inverse Video Switching .................................................................................................................................. 7
Extended Save and Restore .............................................................................................................................. 8
SMI and Hot Key Support ......................................................................................................................................8
PCI Support ............................................................................................................................................................ 9
Video BIOS...................................................................................................................................................... 9
System BIOS....................................................................................................................................................9
Color Palette RAMDAC .......................................................................................................................................10
Memory Clock and Dot Clock .............................................................................................................................. 10
Revision 1.110/2/95ivOC65548
Subject to change without notice
Page 5
Confidential InformationTable of Contents
CHAPTER 4 - BIOS FUNCTION CALLS ................................................................................. 11
Standard VGA BIOS Functions ............................................................................................................................ 11
Standard VGA BIOS Function Extensions ...........................................................................................................11
Set Video Mode - 00h ....................................................................................................................................11
Get Video State - 0Fh.....................................................................................................................................11
Save/Restore Video State - 1Ch ..................................................................................................................... 11
Get Save/Restore Buffer Size - 00h ................................................................................................................11
Save Video State - 01h ...................................................................................................................................12
Restore Video State - 02h .............................................................................................................................. 12
Get Controller Information - 00h ................................................................................................................... 13
Set Clock - 02h .............................................................................................................................................. 14
Get Refresh Rate Information - 04h (44KB BIOS only) ................................................................................ 14
Set Refresh Rate Information - 05h (44KB BIOS only) .................................................................................15
Get Linear Display Memory Information - 10h ............................................................................................. 15
Get Memory Map I/O Information - 11h (65548-PCI BIOS only) ................................................................ 16
Set Up Video Memory For Save/Restore - 13h (44K BIOS only) .................................................................16
Notify Video BIOS for 3.3V/5V mixed mode switch - 15h ........................................................................... 19
Notify Video BIOS for 5V mode switch - 15h ............................................................................................... 19
Get F65548 Information - 50h ....................................................................................................................... 20
Get Panel Type - 56h ..................................................................................................................................... 22
Set Flat-Panel Video Polarity - 5Ah ...............................................................................................................22
Set Vertical Compensation - 5Ch ................................................................................................................... 23
Set Horizontal Compensation - 5Fh ............................................................................................................... 25
Extended BIOS Save/Restore State - A0h ...................................................................................................... 26
Save Video State - A1h ..................................................................................................................................26
Restore Video State - A2h.............................................................................................................................. 27
VESA Extended VGA BIOS Functions (44KB BIOS Only) ................................................................................ 27
Return VBE Controller Information - 00h ..................................................................................................... 28
Return VBE Mode Information - 01h ............................................................................................................28
Set VBE Mode - 02h ......................................................................................................................................30
Get Current VBE Mode - 03h ........................................................................................................................ 30
Save/Restore Video State - 04h ...................................................................................................................... 31
Display Window Control - 05h ...................................................................................................................... 32
Get/Set Logical Scan Line Length - 06h ........................................................................................................ 33
Flat Panel and Simultaneous Video Parameters ............................................................................................. 52
Flat Panel and Simultaneous Video Parameters (Panel Type) ........................................................................52
Panel Control Parameters ............................................................................................................................... 53
Example ......................................................................................................................................................... 57
Revision 1.110/2/95viOC65548
Subject to change without notice
Page 7
Confidential InformationTable of Contents
APPENDIX A - BUILDING THE VGA BIOS ........................................................................... 58
APPENDIX B - E XTENDED CONTROL REGISTERS AND PARAMETER TABLES...... 59
Memory Control Registers 1 and 2 (XR04 and XR05) ......................................................................................... 59
Video Interface Register (XR28) .......................................................................................................................... 59
This manual provides Original Equipment Manufacturers (OEMs) and end-users with information describing the
functions and features of the OC65548 and OC65548-PCI VGA BIOS.
Terminology And Conventions
COURIER FONTThis font is used to specify commands typed by the user, as well as output produced
by the system.
Italic TypeThis type style is used to denote titles. It is also used to denote computer program
names, menu alternatives and other items at their first occurrence.
[]Items enclosed in square brackets are optional and may be ignored.
<>Items enclosed in less than and greater than symbols are keystrokes the user should
type.
hAn “h” which immediately follows a number indicates the value is hexadecimal.
BorderedDenotes important points.
About This Manual
This manual contains five chapters and three appendices. The purpose of each is as follows:
Chapter 1This chapter summarizes the features of the VGA BIOS and the BIOS kits.
Chapter 2This chapter describes the features of the VGA BIOS.
Chapter 3This chapter explains the hardware requirements of the VGA BIOS.
Chapter 4This chapter describes the standard function calls, extensions to the standard function calls and
extended function calls of the VGA BIOS.
Chapter 5This chapter explains use of the OEM utility programs provided in the BIOS kits.
Appendix AThis appendix explains how to create a binary version of the VGA BIOS from source code.
Appendix BThis appendix explains how to determine and program extended control registers. Parameter tables
are also listed in this appendix.
Appendix CThis appendix explains how to implement the Suspend/Resume Procedure in the system BIOS.
Revision 1.110/2/951OC65548
Subject to change without notice
Page 9
Confidential InformationOEM Reference Guide
CHAPTER 1 - INTRODUCTION TO THE VGA BIOS
VGA BIOS
The OC65548, and OC65548-PCI VGA BIOS (hereafter referred to as 65548 BIOS) is an enhanced, high performance
BIOS that is used with the 65548 VGA Flat-Panel/CRT Controller to provide an integrated Flat-Panel VGA solution.
The BIOS supports the following features:
Full compatibility with the IBM VGA BIOS
Optimized for the 65548 VGA Flat-Panel/CRT controller
Support for monochrome LCD, 640x480 STN or TFT, 800x600 STN or TFT, and 1024x768 TFT
displays. Optional support for other displays.
Supports VESA BIOS Extensions, including VBE 2.0, VBE/DDC 1.0, and VBE/PM 1.0.
Supports either VESA local bus or PCI bus
Extended BIOS functions which offer easy access to 65548 features and capabilities
Support for simultaneous display
Customization Support
The 65548 BIOS design to allows the user to customize of values in the binary version of the BIOS. This capability
enables an OEM to create a custom version of the BIOS without access to the source code. Customization is
accomplished with the BMP548 utility included with the BIOS kits.
BIOS Kits
The 65548 BIOS is available in three kit formats. These kits and their contents are as follows:
SE65548 VGA BIOS Evaluation Kit:
•Evaluation diskette (Evaluation copy of BIOS and utility programs)
•OC65548 VGA BIOS OEM Reference Guide
•Release notes
•Software Incident Report (SIR) forms
SK65548 VGA BIOS Binary Kit:
•Binary diskette (Master copy of BIOS and utility programs)
•OC65548 VGA BIOS OEM Reference Guide
•Release notes
•Software Incident Report (SIR) forms
SC65548 VGA BIOS Source Code Kit:
•Source code diskette
•SK65548 VGA BIOS binary kit
Revision 1.110/2/952OC65548
Subject to change without notice
Page 10
Confidential InformationOEM Reference Guide
Licensing
Please contact your Chips and Technologies, Inc. representative for information on how to obtain a production copy of
the software.
Customer Support
CHIPS software products are supported by field application engineers located in each sales office. If you encounter a
problem, or have any questions regarding a CHIPS software product, please complete a copy of the Software Incident
Report form included with your product. Forward the completed form to the local CHIPS sales office or to the
following address:
Chips and Technologies, Inc.
2950 Zanker Road
San Jose, CA 95134
Attn.: Software Product Support
FAX SIR forms to:
(408) 894-2086
Revision 1.110/2/953OC65548
Subject to change without notice
Page 11
Confidential InformationOEM Reference Guide
CHAPTER 2 - BIOS FEATURES
The 65548 BIOS is fully compatible with the IBM VGA BIOS and contains many additional features that support the
65548 Flat-Panel/CRT VGA controller.
VGA BIOS Compatibility Target
The 65548 BIOS can be configured to operate in a manner compatible with an IBM PS/2 motherboard VGA BIOS or
IBM AT VGA adapter BIOS. The compatibility target can be configured with the BMP548 utility program.
PS/2 Compatibility
If PS/2 BIOS compatibility is selected, direct switching between color and monochrome video modes is supported
when the VGA is the only adapter in the system. The 65548 BIOS supports color modes when a secondary
monochrome display adapter or Hercules adapter is installed in the system. The BIOS supports monochrome modes
when a secondary CGA is installed in the system. This is the default operating mode.
AT Compatibility
If AT BIOS compatibility is selected, direct switching between color and monochrome video modes is NOT supported
when the VGA is the only adapter in the system. The equipment byte must be set for color before switching from a
monochrome mode to a color mode and vice-versa. The 65548 BIOS supports color modes when a secondary MDA or
Hercules adapter is installed in the system. In addition, the BIOS supports monochrome modes when a secondary
CGA is installed in the system.
Multiple Bus Support
The 65548 BIOS supports multiple bus specifications:
•VESA Local Bus
•PCI Local Bus, Revision 2.0
Monitor Support
The 65548 BIOS supports interlaced and non-interlaced analog monitors (VGA color, VGA monochrome), but the
65548 does not support digital monitors.
Note: Multiple frequency monitors are supported as analog monitors.
Display Boot/Display Type Configurations
The 65548 BIOS can be configured to boot on a CRT, Flat-Panel, or Simultaneous display (CRT and Flat-Panel are
both active). The OEM may select the display boot device by changing BIOS parameters with the BMP548 utility
program. The parameters which select the boot display device also select the CRT configuration. The available display
boot devices are:
•CRT Boot
•Flat-Panel Boot
•Simultaneous Display Boot
Revision 1.110/2/954OC65548
Subject to change without notice
Page 12
Confidential InformationOEM Reference Guide
Extended Video Modes
The 65548 BIOS supports all standard modes and the following extended modes for analog monitors. If the total video
memory size is less than the memory required by the given mode, the 65548 BIOS will not switch to that mode.
Note: 1. The Flat Panel cannot support Interlaced modes. All modes are Non-Interlaced. The default Flat-Panel size
is 640x480.
2. The Flat-Panel clock value shown in the preceding table is for a 640x480 DD Panel. It may require
different clock values for different Flat-Panel resolutions.
3. VESA modes may use either a linear or a paged frame buffer. See the VBE 2.0 function documentation for
more information on specifying the frame buffer format for a mode.
4. (I) = Interlaced
Audible Signals
If an error is encountered when the 65548 Flat-Panel/CRT VGA controller is initialized, the 65548 BIOS will return a
beep pattern consisting of one long beep and several short beeps. (See Table 3.)
The 65548 BIOS provides support for features used in conjunction with a Flat-Panel display. The type of Flat-Panel
display can be changed with the BMP548 utility program. The default Flat-Panel type is a 640x480 monochrome dualdrive LCD.
Flat-Panel BIOS Operation
The 65548 BIOS operates as if the Flat-Panel is a VGA display independent of the display size. This allows display of
all video modes (00h - 13h). Flat-Panels of lower resolution than the video mode will display a partial image that is left
and top justified.
Vertical Compensation
The 65548 BIOS supports the following vertical compensation modes for Flat-Panel operation:
•NoneImage is top justified.
•Automatic CenteringImage is automatically centered vertically.
•Non-Automatic CenteringImage display start location is specified.
•Tall Font/Text CompensationText is compensated by stretching the font in the hardware.
•Line Replication/Graphic CompensationLine replication stretches graphics im age to fill the display.
The Vertical Compensation can be set by using function 5F5Eh (Enable/Disable Vertical Compensation). Vertical
Compensation status can be read by using function 5F50h, (See F65548 Information).
Horizontal Compensation
The 65548 BIOS supports the following horizontal compensation modes for Flat-Panel operation:
•NoneImage is left justified.
•Automatic CenteringImage is automatically centered horizontally.
•Non-Automatic CenteringImage display start location is specified.
•Text Compression720 dot wide Hercules applications can be compressed to fit on 640
horizontal resolution panels by either adding the eighth and ninth
pixels or deleting the ninth pixel.
•Automatic Horizontal Doubling640 dot wide images can be automatically doubled to fill 1280 dot
wide flat panels.
The Horizontal Compensation can be set with function 5F5Fh.
8x19 Font Support (Tall Fonts)
The 65548 BIOS supports a special Tall Font in Flat-Panel operation which provides a larger, more readable font
without the distortion that can be caused by graphics/text compensation. The Tall Font replaces the standard 8x16
VGA font and can be enabled or disabled with function 5F5Eh (Enable/Disable Text Compensation).
Inverse Video Switching
The 65548 BIOS supports inverted and non-inverted video display. The BIOS directly initializes the video polarity on
boot. The video polarity can be switched with function 5F5Ah (Set Flat-Panel Video Polarity).
Revision 1.110/2/957OC65548
Subject to change without notice
Page 15
Confidential InformationOEM Reference Guide
Display Switching
The 65548 BIOS provides support for switching among a Flat-Panel, CRT, CRT Zoom and Simultaneous display at
run time. Function 5F51h (Switch Display Device) performs the switching function.
Simultaneous Display
The 65548 BIOS can be configured to operate an analog CRT monitor and monochrome 640x480 flat panel at the same
time. Function 5F51h (Switch Display Device) enables and disables Simultaneous display operation.
Extended Save and Restore
The 65548 BIOS provides functions to save and restore the state of the 65548 Flat-Panel/CRT VGA controller. This
includes all standard and extended registers, the memory latches and the attribute flip/flop state. The functions
provided are 5FA0h (Extended BIOS Save/Restore State), 5FA1h (Save Video State), and 5FA2h (Restore Video
State).
SMI and Hot Key Support
An alternate INT 10h entry point (word pointer) is located at 8Bh in the BIOS which will bypass the STI instruction at
the beginning of the usual INT 10h handler. STI instructions are not allowed during processing of an SMI, or System
Management Interrupt.
The CHIPS 65548 BIOS and CHIPS Flat-Panel Windows drivers are designed to support display switching with hot
keys. The following describes how to use the video BIOS to implement hot key display switching. The system BIOS
hot key function handler should call the video BIOS switch display function (INT 10h, function 5F51h) when the
switch display hot key is pressed.
If the processor is an xSL CPU, the SMI normally handles the hot key. The system BIOS must temporarily patch the
INT 10h entry point prior to calling the video BIOS during the SMI. The INT 10h vector should be set to the point to
offset 8Bh in the video BIOS, bypassing the STI instruction at the beginning of the usual entry point. After the INT
10h returns to the system BIOS, the system BIOS should restore the original INT 10h vector prior to returning from the
hot key interrupt.
The video BIOS switch display function will switch the displays and program a flag in bits 0-3 of extended register
XR1F of the 65548 chip. These bits are dedicated to the CHIPS Flat-Panel Windows display drivers.
Hardware Pop-Up Window Interface
The 65548 VGA Flat-Panel/CRT Controller has the capability of overlaying a 32x32 / 64x64 / 128x128 area of screen
with the off-screen data stored in different formats. The off-screen data could be an AND/XOR format cursor
(Windows or OS/2), or a monochrome - 2 bit per pixel format bit map. The 65548 can enable both the pop-up or
hardware cursor function, but not both at the same time. SMI hot key function controls the switching. Under Windows
and OS/2, the display driver has to know when to switch to the software cursor or the hardware cursor. The hot-key
usually generates an SMI, and the SMI handler must inform driver about this change. The 65548 BIOS provides an
interface between the driver and SMI to support the pop-up through the 5F14H function.
Revision 1.110/2/958OC65548
Subject to change without notice
Page 16
Confidential InformationOEM Reference Guide
PCI Support
Video BIOS
The 65548-PCI Video BIOS is developed for use with PCI Local Bus board configurations as defined in the PCI Local
Bus Specification, Rev 2.0. The 65548-PCI BIOS has Word Pointers to the PCI Data Structure at offset
C000:18h/E000:18h. The PCI Data Structure is defined as follows:
Table 4: PCI Data Structure
OffsetLengthDataDescription
04PCIRSignature
42102ChVendor ID
6200DChDevice ID
820000hPointer to vital product data
A20018hPCI data structure length
C100hPCI structure revision
D300h,00h,03hClass code
102????Image Length in 512 Byte units:
0040h = 32KB
0050h = 40KB
0058h = 44KB
1220000hRevision level of code/data
14100hCode Type
15180hIndicator
1620000hReserved
System BIOS
The 65548 PCI Flat Panel/CRT controller does not support expansion ROM Base Address at offset 30h in the
configuration space. The video BIOS is usually merged with the system BIOS and is located at Address E000:0 in the
system. To find the video device during power up, the system BIOS reads Class Code at offset 09h (00h,00h,3h) in the
configuration space . The system BIOS then looks for PCIR signatures in the C000/E000 segment (Word Pointer to the
PCIR string is at C000:18h/E000:18h) followed by the video device Class Code (00h,00h,03h) at offset 0Dh in the PCI
Data Structure of the video BIOS. When the system BIOS finds the video device, it should map the video BIOS at a
very high address, then copy the video BIOS at Address C000:0/E000:0.
Note: The PCI BIOS should be BMPed for the correct segment.
Revision 1.110/2/959OC65548
Subject to change without notice
Page 17
Confidential InformationOEM Reference Guide
CHAPTER 3 - HARDWARE REQUIREMENTS
This chapter describes the external hardware requirements for the 65548 BIOS. For more information regarding
hardware implementation, please refer to the 65548 High Performance Flat-Panel/CRT VGA Controllers Data Sheet,
Chips & Technologies, Inc.
65548 VGA Flat-Panel/CRT Controller
The 65548 BIOS requires a Chips and Technologies 65548 VGA Flat-Panel/CRT Controller.
Color Palette RAMDAC
The 65548 BIOS assumes that the 65548 on-chip color palette/DAC is used.
Monitor Detection Circuitry
The monitor detection circuitry should be implemented in a manner compatible with the IBM AT VGA adapter. The
65548 BIOS assumes that the monitor detection circuitry, if present, is attached to the SENSE pin of the 65548 FlatPanel/CRT VGA controller.
Pixel Clocks
The 65548 BIOS requires specific clock frequencies to operate. The 65548 BIOS assumes that the on-chip clock
synthesizer generates the clock signals.
Table 5 specifies the values for the Clock Select and Feature Control outputs necessary to use the specified clock
source and the frequencies expected by the 65548 BIOS.
Table 5: Pixel Clock Selection Values and Frequencies
MSR=Miscellaneous Output Register (Write at 3C2h, Read at 3CCh)
Flat-Panel/Simultaneous Mode:
XR54=Extended Register (Read/Write at 3D6h-3D7h)
Pixel Clock
Selection
Pixel Clock
FrequencyComments
Memory Clock and Dot Clock
The 65548 BIOS allows the user to program the Dot Clock (Pixel Clock) and the Memory Clock using the on-chip
clock synthesizer.
Revision 1.110/2/9510OC65548
Subject to change without notice
Page 18
Confidential InformationOEM Reference Guide
CHAPTER 4 - BIOS FUNCTION CALLS
Standard VGA BIOS Functions
The 65548 BIOS uses the same function and sub-function calls that are implemented in the IBM VGA BIOS.
Standard VGA BIOS Function Extensions
The 65548 BIOS provides a set of extended functions that are implemented as extensions to the standard Set Video
Mode (00h), Get Video State (0Fh) (see Table 6), and Save/Restore Video State (1Ch) functions. They are fully
supported by the other standard VGA BIOS function calls.
Set Video Mode - 00h
The Set Video Mode function sets the display mode used by the 65548 Flat-Panel/CRT VGA controller.
Calling Registers:
AH-00hSet Video Mode
AL-Display Mode
Return Registers:
Nothing
Get Video State - 0Fh
The Get Video State function returns the screen width in character columns, video display mode, and active display
page.
Calling Registers:
AH-0FhGet Video State
Return Registers:
AH-Number of Character Columns
AL-Display Mode
BH-Active Display Page
Save/Restore Video State - 1Ch
This function and its sub-functions save and restore specified video environment parameters (BIOS data area, color
palette, and registers). The 65548 BIOS also allows the extended registers and emulation mode registers to be saved.
This is specified by CX:Bit 15.
Get Save/Restore Buffer Size - 00h
Calling Registers:
AH-1ChSave/Restore Video State Function
AL-00hGet Save/Restore Buffer Size
CX-Save/Restore Options:
Bit 0Video Hardware State
Bit 1Video BIOS Data Areas
Bit 2Video DAC State and Color Registers
Bit 15Extended Registers
Return Registers:
AL-1ChFunction was successful
BX-Buffer Size Required in 64 byte blocks
Revision 1.110/2/9511OC65548
Subject to change without notice
Page 19
Save Video State - 01h
Calling Registers:
AH-1ChSave/Restore Video State Function
AL-01hSave Video State
CX-Save/Restore Options:
ES-Segment of Save Area
BX-Offset of Save Area
Return Registers:
AL-1ChFunction was successful
Restore Video State - 02h
Calling Registers:
AH-1ChSave/Restore Video State Function
AL-02hSave Video State
CX-Save/Restore Options:
ES-Segment of Restore Area
BX-Offset of Restore Area
Return Registers:
AL-1ChFunction was successful
Confidential InformationOEM Reference Guide
Bit 0Video Hardware State
Bit 1Video BIOS Data Areas
Bit 2Video DAC State and Color Registers
Bit 15Extended Registers
Bit 0Video Hardware State
Bit 1Video BIOS Data Areas
Bit 2Video DAC state and Color Registers
Bit 15Extended Registers
Revision 1.110/2/9512OC65548
Subject to change without notice
Page 20
Confidential InformationOEM Reference Guide
Extended BIOS Functions
The 65548 BIOS provides a set of function calls to control operation of the extended features of the 65548 FlatPanel/CRT VGA Controller. These function calls are implemented as sub-functions under the extended VGA control
function (5Fh).
Table 6: 65548 BIOS Extended Functions
AHALFunctionAHALFunction
5Fh00hGet Controller Information5Fh15hNotify Video BIOS of 5V mode switch
5Fh02hSet Clock5Fh50hGet F65548 Information
5Fh04hGet Refresh Rate Information5Fh51hSwitch Display Device
5Fh05hSet Refresh Rate Information5Fh54hSet Panel ON/OFF
5Fh10hGet Linear Display Memory Information5Fh55hMonitor Detect
5Fh11hGet Memory Map I/O Information (PCI)5Fh56hGet Panel Type
5Fh13hSet Up Video Memory for Save/Restore5Fh5AhSet Flat-Panel Video Polarity
5Fh14hSet Pop-Up Memory Mode5Fh5ChSet Vertical Compensation
5Fh14hReset Pop-Up Memory Mode5Fh5EhEnable/Disable Vertical Compensation
5Fh14hEnable Pop-Up5Fh5FhSet Horizontal Compensation
5Fh14hDisable Pop-Up5FhA0hExtended BIOS Save/Restore State
5Fh14hGet Pop-up Memory Offset5FhA1hSave Video State
5Fh15hNotify Video BIOS of 3.3V/5V mixed5FhA2hRestore Video State
Get Controller Information - 00h
This sub-function returns configuration information about the 65548 VGA system.
Calling Registers:
AH-5FhExtended VGA Control Function
AL-00hGet controller information
11010b F65540
11011b F65545
110111b F65548
D1-D0 = Revision number (65548)
D2-D0 = Revision number (other)
BHVideo memory available
0 = 256KB
1 = 512KB
2 = 1MB
3 = Reserved
Set Clock - 02h
This sub-function is used to program the internal clock synthesizer with a given frequency. The selected list of
frequencies is shown below.
Calling Registers:
AH-5FhExtended VGA Control Function
AL-02hSet Dot Clock/Memory Clock
IFBH-02Set Dot Clock
03Set Memory Clock
BL-12 to 80 MHz (decimal)
IFBH-FFhProgram Default Dot and Memory Clocks
Return Registers:
AL-5Fh
AH-Return Status:
00hFunction failed
01hFunction was successful
Get Refresh Rate Information - 04h (44KB BIOS only)
This sub-function returns the current setting of the vertical refresh rate for the given mode, and the list of available
vertical refresh rates for the mode.
Calling Registers:
AH-5FhExtended VGA BIOS Function
AL-04hGet refresh rate
BL-Mode Number
Return Registers:
BL-Available refresh rates, indicated by setting one or more bits as follows:
Bit7Reserved
BH-Currently set refresh rate, one bit set as above
CX-Reserved
AL-5FhExtended VGA BIOS Function Supported
AH-Function Return Status:
00hFunction failed
01hFunction was successful
Revision 1.110/2/9514OC65548
Subject to change without notice
Page 22
Confidential InformationOEM Reference Guide
Set Refresh Rate Information - 05h (44KB BIOS only)
This sub-function sets a new vertical refresh rate for the given mode. If the mode is currently active, the BIOS will
program the CRT controller for the new refresh rate. If the mode is not active, the new refresh rate will be programmed
the next time this mode is set. The refresh rates are effective in the CRT modes only.
Calling Registers:
AH-5FhExtended VGA BIOS Function
AL-05hSet Refresh Rate
BL-Mode Number
BH-Set refresh rate, indicated by setting one bit as follows:
Bit0Interlaced
Bit156Hz
Bit260Hz
Bit370Hz
Bit472Hz
Bit575Hz
Bit6Reserved
Bit7Reserved
CX-Reserved
Return Registers:
AL-5FhExtended VGA BIOS Function Supported
AH-Function Return Status:
00hFunction failed
01hFunction was successful
Get Linear Display Memory Information - 10h
This sub-function returns information regarding the linear memory starting address, size and width.
Calling Registers:
AH-5FhExtended VGA Control Function
AL-10hGet Linear Display Memory Information
Return Registers:
AL-5Fh
AH-Return Status:
00hFunction failed
01hFunction was successful
BX-Display Memory Base Address (High)
CX-Display Memory Base Address (Low)
SI-Display Memory Size (High)
DI-Display Memory Size (Low)
DX-Display Width in bytes
Revision 1.110/2/9515OC65548
Subject to change without notice
Page 23
Confidential InformationOEM Reference Guide
Get Memory Map I/O Information - 11h (65548-PCI BIOS only)
This sub-function returns information regarding memory mapped I/O on a PCI configuration.
Calling Registers:
AH-5FhExtended VGA Control Function
AL-11hGet Memory Mapped I/O Information
Return Registers:
AL-5Fh
AH-Return Status:
00hFunction failed
01hFunction was successful
BX-Memory Mapped I/O Base Address (High)
CX-Memory Mapped I/O Base Address (Low)
SI-Reserved
DI-Reserved
DX-Reserved
Set Up Video Memory For Save/Restore - 13h (44K BIOS only)
This sub-function sets up for saving/restoring all of the video memory in 64KB blocks (the appropriate 64KB block is
made available at location A000:0000 for reading/writing).
Calling Registers:
AX-5F13h
BX-0000h
CX-nth 64K block to save/restore where (n = 0,1,2,....)
Return Registers:
64K block of video memory will be mapped to A000:0000 for saving/restoring.
This sub-function sets the pop-up memory mode. The Video BIOS saves the necessary registers in the 32-byte buffer
passed by the SMI, and then sets up registers for dumping the pop-up bit map into the off-screen video memory. If the
BLTer is in System to Screen BLT mode, the Video BIOS may return with an error to indicate that video memory
cannot be accessed at this time, and that the SMI handler should exit SMI mode in this situation. Note: If the
function is successful, then the SMI must call the Video BIOS with AX = 5F14h, BL = 01h to restore video controller
registers after the SMI loads the pop-up screen into the video memory.
Calling Registers:
AX-5F14h Set Pop-Up Function
BL-00hSet Pop-Up Memory Mode
ES:DX -Pointer to 32 byte buffer for Video BIOS in SMI
Return Registers:
ES:DI-Pointer to Pop-up screen memory @ A000h
BL-00hFunction Error (System to Screen BLT mode)
This sub-function resets the pop-up memory mode. The Video BIOS restores all the registers changed by the Set PopUp Memory Function from the buffer passed by the SMI.
Calling Registers:
AX-5F14h Set Pop-Up Function
BL-01hReset Pop-Up Memory Mode
ES:DX -Pointer to 32 byte buffer for Video BIOS in SMI
This sub-function returns pop-up memory offset. This offset should be added to the video memory start address to get
the absolute pop-up memory address.
Calling Registers:
AX-5F14h Set Pop-Up function
BL-04hGet Pop-Up memory offset
Notify Video BIOS for 3.3V/5V mixed mode switch - 15h
This sub-function notifies the Video BIOS to switch to 3.3V/5V mixed mode. If the Video BIOS cannot switch
immediately, then it will set an internal flag to perform the switch later, when switching is possible.
Calling Registers:
AX-5F15h
BH-00h
BL-55h
Return Registers:
BL-00hFunction supported, but cannot change to 3.3V at this time
01hFunction supported, switched to 3.3V
55hFunction not supported
Notify Video BIOS for 5V mode switch - 15h
This sub-function notifies the Video BIOS to switch to 5V mode. If the Video BIOS cannot switch immediately, then
it will set an internal flag to perform the switch later, when switching is possible.
Calling Registers:
AX-5F15h
BH-01h
BL-55h
Return Registers:
BL-01hFunction Supported, switched to 5V
-55hFunction not Supported
Revision 1.110/2/9519OC65548
Subject to change without notice
Page 27
Confidential InformationOEM Reference Guide
Get F65548 Information - 50h
This sub-function returns the current CRT/Flat-Panel information.
Calling Registers:
AH-5FhExtended VGA Control Function
AL-50hGet F65548 Information
Return Registers:
AL-5Fh
AH-Return Status:
00hFunction failed
01hFunction was successful
BX-Flat-Panel Horizontal size in pixels
CX-Flat-Panel Vertical size in pixels
DX-F65548 status
This sub-function sets the polarity of the video output to the Flat-Panel in monochrome panels only. In graphics
modes, the 65548 BIOS sets/resets XR63 bit 7 to change Video Output Polarity. In Text modes, the 65548 BIOS
sets/resets XR61 bit 7 to change Video Output Polarity.
Calling Registers:
AH-5FhExtended VGA Control Function
AL-5AhSet Flat-Panel video stream polarity
BL-0Normal polarity
1Inverted polarity
2Toggle polarity
Return Registers:
AL-5Fh
AHFunction Return Status:
00hFunction failed
01hFunction was successful
Revision 1.110/2/9522OC65548
Subject to change without notice
Page 30
Confidential InformationOEM Reference Guide
Set Vertical Compensation - 5Ch
This sub-function sets the type of vertical compensation used.
Calling Registers:
AH-5FhExtended VGA Control Function
AL-5ChSet Vertical Compensation
BL-00hNo Vertical Compensation
Program:
XR57(bit 0) = 0
01hAutomatic Vertical Centering
Program:
XR51(bit 6) = 1
XR57(bit 0) = 1
XR57(bit 1) = 1
02hSet Vertical Centering Register
Program:
XR59(bit 6-5) = DX(bit 9-8)
XR58 = DL
03hNon Automatic Vertical Centering
Program:
XR51(bit 6) = 1
XR57(bit 0) = 1
XR57(bit 1) = 0; Start from Top
This sub-function enables or disables Tall Font. If Text Compensation is enabled (XR0F bit 7 = 1) and in mode 0*, 1*,
2*, 3*, 7, 0+, 1+, 2+, 3+ or 7+, the BIOS will use the hardware Tall Font. Use function 5F50h to receive compensation
status.
Calling Registers:
AH-5FhExtended VGA Control Function
AL-5EhEnable/Disable Vertical Compensation
BL-0Enable Text (Tall Font) Compensation
This sub-function sets the type of horizontal compensation used. In Flat-Panel mode, the 65548 BIOS uses an 8-dot
font, or a 9-dot font if XR55 bit 2 is programmed to 0. The 65548 BIOS enables Horizontal Text Compression
(default) upon power up (see XR55 value) for a 640x480 Flat-Panel so that the 9-dot font will be compressed to 8 dots.
The 9-dot font should be used for horizontal panel sizes of 720 pixels or greater.
Calling Registers:
AH-5FhExtended VGA Control Function
AL-5FhSet Horizontal Compensation
BL-00hNo Horizontal Compensation
XR55(bit 2) = 1; Force 8 dot mode
05hDisable Text Compression
Program:
XR55(bit 2) = 0
06hEnable Horizontal Auto Doubling
Program:
XR51(bit 6) = 1
XR55(bit 0) = 1
XR55(bit 5) = 1; Set Auto Doubling
07hDisable Horizontal Auto Doubling
Program:
XR55(bit 5) = 0
0FhDisable All Horizontal & Vertical C ompensation
Program:
XR51(bit 6) = 0
Return Registers:
AL-5Fh
AH-Function Return Status:
00hFunction failed
01hFunction was successful
Revision 1.110/2/9525OC65548
Subject to change without notice
Page 33
Confidential InformationOEM Reference Guide
Extended BIOS Save/Restore State - A0h
This sub-function returns the size of the buffer needed for saving the state of the video system. The user may specify
which aspects of the video system are to be saved.
Calling Registers:
AH-5FhExtended VGA Control Function
AL-A0hReturn Save/Restore buffer size
CX-Requested state:
Bit 0Video hardware state
Bit 1Video BIOS data state
Bit 2DAC state & Color Registers
Bit 15Extended registers
Return Registers:
BX-Number of 64 Byte blocks required
AL-5Fh
AH-Function Return Status:
00hFunction failed
01hFunction was successful
Save Video State - A1h
This sub-function saves information on the current state of the video system.
Calling Registers:
AH-5FhExtended VGA Control Function
AL-A1hSave Video State
CX-Save/Restore Options:
ES-Segment of Save Area
BX-Offset of Save Area
Return Registers:
AL-5FhExtended VGA Control Function Supported
AH-Function Return Status:
Bit 0Video Hardware State
Bit 1Video BIOS Data Areas
Bit 2Video DAC state and Color Registers
Bit 15Extended Registers
00hFunction failed
01hFunction was successful
Revision 1.110/2/9526OC65548
Subject to change without notice
Page 34
Confidential InformationOEM Reference Guide
Restore Video State - A2h
This sub-function restores a previous state of the video system from stored information.
Calling Registers:
AH-5FhExtended VGA Control Fun ction
AL-A2hSave Video State
CX-Save/Restore Options:
Bit 0Video Hardware State
Bit 1Video BIOS Data Areas
Bit 2Video DAC state and Color Registers
Bit 15Extended Registers
ES-Segment of Restore Area
BX-Offset of Restore Area
Return Registers:
AL-5FhExtended VGA Control Function Supported
AH-Function Return Status:
00hFunction failed
01hFunction was successful
VESA Extended VGA BIOS Functions (44KB BIOS Only)
The 65548 VGA BIOS provides a set of extended function calls as defined by the Video Electronics Standards
Association to support Super VGA modes. More information about these functions can be found in the VESA BIOSExtension Version 2.0 document. These function calls are implemented as sub-functions under the VESA Extended
VGA Control Function (4Fh).
Table 7: VESA Extended VGA BIOS Functions
AHALFunction
4Fh00hReturn VBE Controller Information
4Fh01hReturn VBE Mode Information
4Fh02hSet VBE Mode
4Fh03hGet Current VBE Mode
4Fh04hSave/Restore Video State
4Fh05hDisplay Window Control
4Fh06hGet/Set Logical Scan Line Length
4Fh07hGet/Set Display Start
4Fh09hGet/Set Palette Data
4Fh0AhReturn VBE Protected Mode Interface
4Fh10hDisplay Power Management Extensions
Revision 1.110/2/9527OC65548
Subject to change without notice
Page 35
Confidential InformationOEM Reference Guide
Return VBE Controller Information - 00h
This sub-function returns information about capabilities of the 65548 VGA system.
Calling Registers:
AH-4FhVESA Extended VGA Function
AL-00hReturn VBE Controller Information
ES:DI-Pointer to a 512 byte buffer for the VbeInfoBlock
Return Registers:
AL-4FhVESA extended function supported
-not 4FhFunction not supported
AH-00hFunction was successful
-01hFunction failed
-02hFunction is not supported in current hardware configuration
-03hFunction is invalid in current video mode
The information block has the following structure:
VbeInfoBlock struc
VbeSignaturedb‘VESA’;4 signature bytes
VbeVersiondw200h;VESA version number 2.0
OEMStringPtrdd?;pointer to OEM string
Capabilitiesdb4 dup(?);capabilities of the video environment
VideoModePtrdd?;pointer to supported VBE modes
TotalMemorydw?;number of 64KB memory blocks on board
OemSoftwareRevdw?;VBE implementation software revision
OemVendorNamePtrdd?;Pointer to vendor name string
OemProductNamePtrdd?;Pointer to product name string
OemProductRevPtrdd?;Pointer to product revision string
Reserveddb222 dup(?);Reserved for VBE implementation scratch area
OemDatadb256 dup(?);Data for OEM strings
VbeInfoBlock ends
Return VBE Mode Information - 01h
This sub-function returns information about a specific VBE mode.
Calling Registers:
AH-4FhVESA Extended Function
AL-01hReturn VBE mode information
CX-Video mode number
ES:DI-Pointer to a 256 byte buffer for the ModeInfoBlock
Return Registers:
AL-4FhVESA extended VGA function supported
-not 4FhFunction not supported
AH-StatusSee function 00 for status codes
Revision 1.110/2/9528OC65548
Subject to change without notice
Page 36
Confidential InformationOEM Reference Guide
The mode information block has the following structure:
ModeInfoBlock struc
ModeAttributesdw?;mode attributes
WinAAttributesdb?;window A attributes
WinBAttributesdb?;window B attributes
WinGranularitydw?;window granularity
WinSizedw?;window size
WinASegmentdw?;window A start segment
WinBSegmentdw?;window B start segment
WinFuncPtrdd?;pointer to window function
BytesPerScanLinedw?;bytes per scan line
XResolutiondw?;horizontal resolution
YResolutiondw?;vertical resolution
XCharSizedb?;character cell width
YCharSizedb?;character cell height
NumberOfPlanesdb?;number of memory planes
BitsPerPixeldb?;bits per pixel
NumberOfBanksdb?;number of banks
MemoryModeldb?;memory model type
BankSizedb?;bank size in KB
NumberOfImagePagesdb?;Number of images
Reserveddb1;reserved for page function
RedMaskSizedb?;size if direct color red mask in bits
RedFieldPositiondb?;bit position of lsb of red mask
GreenMaskSizedb?;size of direct color green mask in bits
GreenFieldPositiondb?;bit position of lsb of green mask
BlueMaskSizedb?;size of direct color blue mask in bits
BlueFieldPositiondb?;bit position of lsb of blue mask
RsvdMaskSizedb?;size of direct color reserved mask in bits
RsvdFieldPositiondb?;bit position of lsb of reserved mask
DirectColorModeInfodb?;direct color mode attributes
PhysBasePtrdd?;physical address for linear frame buffer
OffScreenMemOffsetdd?;pointer to start of offscreen memory
OffScreenMemSizedw?;amount of offscreen memory in 1K units
Reserveddb206 dup(?);remainder of ModeInfoBlock
ModeInfoBlock ends
Revision 1.110/2/9529OC65548
Subject to change without notice
Page 37
Confidential InformationOEM Reference Guide
Set VBE Mode - 02h
This sub-function sets a given super VGA mode.
Calling Registers:
AH-4FhVESA Extended BIOS Function
AL-02hSet VBE video mode
BX-D0-D13 -video mode number
D14-0 = use windowed (paged) frame buffer
D15-0 = c lear video memory
Return Registers:
AL-4FhVESA extended VGA function supported
-not 4FhFunction not supported
AH-StatusSee function 00 for status codes
Get Current VBE Mode - 03h
This sub-function returns the current video mode.
Calling Registers:
AH-4FhVESA Extended BIOS Function
AL-03hGet current video mode
Return Registers:
AL-4FhVESA extended VGA function supported
-not 4FhFunction not supported
AH-StatusSee function 00 for status codes
BX-Current video mode number
D0-13 -mode number
D14-0 = use windowed (paged) frame buffer
D15-0 = clear video memory
1 = use linear (flat) frame buffer
1 = do not clear video memory
1 = use linear (flat) frame buffer
1 = do not clear video memory
Revision 1.110/2/9530OC65548
Subject to change without notice
Page 38
Confidential InformationOEM Reference Guide
Save/Restore Video State - 04h
These sub-functions provide a mechanism for saving and restoring the video state. The functions are a superset of the
three sub-functions under the standard VGA BIOS function 1Ch.
Calling Registers:
AH-4FhVESA Extended BIOS Function
AL-04hSave/restore video state
DL-00hReturn save/restore state buffer size
CX-Requested states
D0 -Save/restore video hardware state
D1 -Save/restore video BIOS data state
D2-Save/restore video DAC state
D3-Save/restore extended video state
Return Registers:
AL-4FhVESA extended VGA function supported
-not 4FhFunction not supported
AH-StatusSee function 00 for status codes
BX-Number of 64 byte blocks needed to hold the state buffer
Calling Registers:
AH-4FhVESA Extended BIOS Function
AL-04hSave/restore video state
DL-01hSave video state
CX-Requested states
D0 -Save/restore video hardware state
D1 -Save/restore video BIOS data state
D2-Save/restore video DAC state
D3-Save/restore extended video state
ES:BX -Pointer to state buffer
Return Registers:
AL-4FhVESA extended BIOS function supported
-not 4FhFunction not supported
AH-StatusSee function 00 for status code s
Revision 1.110/2/9531OC65548
Subject to change without notice
Page 39
Confidential InformationOEM Reference Guide
Calling Registers:
AH-4FhVESA Extended BIOSction
AL-04hSave/restore video state
DL-02hRestore video state
CX-Requested states
D0 -Save/restore video hardware state
D1 -Save/restore video BIOS data state
D2-Save/restore video DAC state
D3-Save/restore extended video state
ES:BX -Pointer to state buffer
Return Registers:
AL-4FhVESA extended BIOS function supported
-not 4FhFunction not supported
AH-StatusSee function 00 for status codes
Display Window Control - 05h
These sub-functions set or get the position of the specified window in the video memory.
Calling Registers:
AH-4FhVESA Extended BIOS Function
AL-05hDisplay window control
BH-00hSelect display window
BL-Window number
0 = Window A
1 = Window B
DX-Window position in video memory (in window granularity units)
Return Registers:
AL-4FhVESA extended BIOS function supported
-not 4FhFunction not supported
AH-StatusSee function 00 for status codes
Calling Registers:
AH-4FhVESA Extended BIOS Function
AL-05hDisplay window control
BH-01hReturn display window
BL-Window number
0 = Window A
1 = Window B
Return Registers:
AL-4FhVESA extended VGA function supported
-not 4FhFunction not supported
AH-StatusSee function 00 for status codes
DX-Window position in video memory (in window granularity units)
Revision 1.110/2/9532OC65548
Subject to change without notice
Page 40
Confidential InformationOEM Reference Guide
Get/Set Logical Scan Line Length - 06h
These sub-functions set or get the length of a logical scan line.
Calling Registers:
AH-4FhVESA Extended BIOS Function
AL-06hLogical scan line length control
BL -00hSet logical scan line length in pixels
-01hReturn logical scan line length
-02hSet logical scan line length in bytes
-03hGet maximum scan line length
CX-If BL=00h, desired scan line length in pixels
If BL=02h, desired scan linelength in bytes
(ignored for get functions)
Return Registers:
AL-4FhVESA extended BIOS functio n supported
-not 4FhFunction not supported
AH-StatusSee function 00 for status codes
BX-Bytes per scan line
CX-Actual pixels per scan line
DX-Maximum number of scan lines
Get/Set Display Start - 07h
These sub-functions set or get the pixel to be displayed in the upper left corner of the display from the logical page.
Calling Registers:
AH-4FhVESA Extended BIOS Function
AL-07hDisplay start control functions
BH-00hReserved, must be 0
BL-00hSet display start
-01hGet display start
-80hSet display start during vertical retrace
CX-First displayed pixel in the scan line (Set only)
DX-First displayed scan line (Set only)
Return Registers:
AL-4FhVESA extended VGA function supported
-not 4FhFunction not supported
AH-StatusSee function 00 for status codes
CX-First displayed pixel in scan line (Get only)
DX-First displayed scan line (Get only)
Revision 1.110/2/9533OC65548
Subject to change without notice
Page 41
Confidential InformationOEM Reference Guide
Get/Set Palette Data - 09h
These functions are used to get or set the palette registers in the RAMDAC.
Calling Registers:
AH-4FhVESA Extended BIOS Function
AL-09hGet/Set Palette Data
BL-00hSet Palette Data
-01hGet Palette Data
CX-Number of palette registers to update (max 255)
DX-First palette register index to update
ES:DI-Table of palette values, in the format:
Alignment byte, red byte, green byte, blue byte
Return Registers:
AL-4FhVESA extended BIOS function supported
-not 4FhFunction not supported
AH-StatusSee function 00 for the possible return codes
Return VBE Protected Mode Interface - 0Ah
This function returns a pointer to a table that contains code for a 32-bit protected mode interface that can be either
copied into local 32-bit memory space or can be executed from ROM providing the calling application sets all required
selectors and I/O access correctly.
Calling Registers:
Return Registers:
Table format:
ES:DIWord offset in table of protected mode code for the Set Window portion of Function 05h.
ES:DI+2 Word offset in table of protected mode code for the Set Displa y Start portion of Function 07h.
ES:DI+4 Word offset in table of protected mode code for the Set Palette Data portion of Function 09h.
ES:DI+6 Word offset in table of a list of ports and memory locations that the calling application may need
ES:DI+? Variable length remainder of table, including code.
AH-4FhVESA Extended BIOS Function
AL-0AhReturn VBE protected mode information
BL-00hReturn VBE protected mode information
AL-4FhVESA extended BIOS function supported
-not 4FhFunction not supported
AH-StatusSee function 00 for a list of possible return codes
ES-Real mode segment of table
DI-Offset of table
CX-Length of table including protected mode code,
in bytes
I/O privilege for.
Revision 1.110/2/9534OC65548
Subject to change without notice
Page 42
Confidential InformationOEM Reference Guide
Display Power Management Extensions - 10h (44KB BIOS Only)
The VESA BIOS Extension sub-function 10h is used to implement power management services.
Calling Registers:
AH-4FhVESA Extended BIOS Function
AL-10hPower management services
BL-00hReport VBE/Power Management capabilities
ES:DI-Null pointer, must be 0000:0000 in version 1.0,
reserved for future use
Return Registers:
AL-4FhVESA extended BIOS function supported
-not 4FhFunction not supported
AH-00hFunction was successful
-01hFunction failed
BH -Power saving state signals supported by the controller.
1 = supported, 0 = not supported
bit 0STANDBY
bit 1SUSPEND
bit 2OFF
bit 3REDUCED ON
bits 4-7Reserved for future use.
BL-VBE/PM version number
bits 0-3Minor version number
bits 4-7Major version number
ES:DIUnchanged
Calling Registers:
AH-4FhVESA Extended BIOS Function
AL-10hPower management services
BL-01hSet display power state
BH-Requested power state
00hON
01hSTANDBY
02hSUSPEND
04hOFF
08hREDUCED ON
Return Registers:
AL-4FhVESA extended BIOS function supported
-not 4FhFunction not supported
AH-00hFunction was successful
-01hFunction failed
BH-Unchanged
Revision 1.110/2/9535OC65548
Subject to change without notice
Page 43
Confidential InformationOEM Reference Guide
Calling Registers:
AH-4FhVESA Extended BIOS Function
AL-10hPower management services
BL-02hGet display power state
Return Registers:
AL-4FhVESA extended BIOS function supported
-not 4FhFunction not supported
AH-00hFunction was successful
-01hFunction failed
BH-Power state currently requested by the controller
00hON
01hSTANDBY
02hSUSPEND
04hOFF
08hREDUCED ON
INT 15h/INT 42h Hooks for the System BIOS
The video BIOS performs several types of INT 15h function calls. Each function provides the system BIOS with the
opportunity to gain control at specific times to perform any custom processing that may be required during video POST
or mode changes. With all the INT 15h/INT 42h functions described here, the system BIOS must return to the video
BIOS at the conclusion of the function. Some functions can be BMPed to INT 15h/INT 42h/Disabled. These functions
are implemented at the discretion of the system BIOS designer.
Table 8: INT 15h/INT 42h Hooks for the System BIOS
AHALFunctionHook (INT) / BMP option
5Fh31hPOST Completion Notification15h
5Fh33hHook After Mode SetSet INT 15h or INT 42h, AX = 5F33/38/39h
5Fh34hMultiple Panel Support (32KB BIOS)15h
5Fh34hSet Panel Type (44KB BIOS)15h
5Fh40hSet Panel Type (44KB BIOS)
Alternate Method
5Fh38hHook Before Mode SetSet INT 15h or INT 42h, AX = 5F33/38/39h
5Fh39h3.3V/5V Power Switching
(32KB & 44KB BIOS)
5Fh42h3.3V/5V Power Switching
(44KB BIOS) Alternate Method
15h
Enable/Disable 5F42h, INT 15h Voltage Switching
POST Completion Notification - 5F31h (INT 15h Hook)
This function signals the completion of the video BIOS power-up initialization procedure. The function executes just
before the sign-on message is displayed, allowing the OEM’s system BIOS to switch to a different display before
attempting to display the sign-on message.
Calling Registers:
AX-5F31h
Return Registers:
None required.
Revision 1.110/2/9536OC65548
Subject to change without notice
Page 44
Confidential InformationOEM Reference Guide
Hook After Mode Set - 5F33h (BMP option: Set INT 15h or INT 42h, AX = 5F33/38/39h)
This function allows the system BIOS to intercept the video BIOS at the end of a mode set. The OEM has the option of
enabling this feature in the BMP to specify whether the interrupt call is INT 15h or INT 42h. Whichever interrupt is
chosen, the calling registers remain the same. This function is blocked during power up.
Calling Registers:
AX-5F33h
BH-Number of character columns
BL-Current mode number
CH-Active display page
Return Registers:
None required.
Multiple Panel Support - 5F34h (INT 15h Hook for 32KB BIOS only)
This function allows the OEM’s system BIOS to support multiple flat panel types. During POST, the VGA BIOS calls
INT 15h with AX=5F34h. To take advantage of this feature, the OEM determines the flat panel type by special
switches, circuitry, CMOS configuration, or other methods. The OEM can then load the correct panel parameters into
the video BIOS. To work, the system BIOS must load the video BIOS into shadow RAM and enable writes to the
shadow RAM. Enabling the system BIOS to write to a programmable EPROM is another alternative. The BIOS
provides the following pointers at the specified offsets into the video BIOS:
(The BMS file for each flat panel contains the appropriate values to be loaded into these tables for that flat panel)
Seven data locations for memory clock & dot clock from 188h to 18Eh:
(All table entries in the BMS file are in Decimal)
Flat panel mode Dot clock freq FP_Dot at 188h.
Flat panel mode Mem clock freq FP_MCLK at 189h.
Simultaneous mode Dot clock freq SM_Dot at 18Ah.
Simultaneous mode Mem clock freq SM_MCLK at 18Bh.
Flat panel 15/16 bpp mode Dot clock freq FP_Dot_15_16Bit at 18Ch.
Simultaneous 15/16bpp mode Dot clock freq SM_Dot_15_16Bit at 18Dh.
15/16bpp mode Mem clock freq Mem_15_16_Bit at 18Eh.
Panel Table Pointers: (All table entries in the BMS file are in Hex)
Pointer of ControlPtr1 table at location 1E7h.
Pointer of FPSimBootPtr table at location 1EDh.
Pointer of SMCommonPtr table at location 1F3h.
Pointer of FPCommonPtr table at location 1F9h.
NOTE: (32KB & 44KB BIOS)
1. If the new panel tables are loaded into the video BIOS space, the checksum (in bytes) of the BMP needs to
be adjusted at location C000:6Bh/E000:6Bh. The BMP structure starts at location C000:47h/E000:47h and
the length (in words) of the BMP structure is available at location C000:68h/E000:68h.
2. The panel table pointer points to a structure that consists of a list of pairs of bytes. The first byte contains
the index of the XR register and the second byte contains the value. These table entries are in the .BMS
file under corresponding sections.
Revision 1.110/2/9537OC65548
Subject to change without notice
Page 45
Confidential InformationOEM Reference Guide
Set Panel Type - 5F34h (INT 15h Hook for 44KB BIOS only)
This function call allows the OEM to select one of eight panel types upon power up. The VGA BIOS calls INT 15h
with AX = 5F34h. The system BIOS should modify C000:185h/E000:185h for the correct panel type. The system
BIOS is also required to adjust checksum. (See Note in 32KB Multiple Panel Support - 5F34h description).
Table 9: Panels
Panel #Panel Type
1640x480 Dual Scan Monochrome Panel
2640x480 Dual Scan Monochrome Panel No Accel
3640x480 Dual Scan Color Panel
4800x600 Dual Scan Color Panel
5640x480 Sharp TFT Color
6640x480 18-bit TFT Color
71024x768 TFT Color
8800x600 TFT Color
Set Panel Type - 5F40h (Alternate Method - INT 15h Hook for 44KB BIOS only )
This function call allows the system BIOS to select one of eight LCD panel types upon power up (see Table 9). The
VGA BIOS calls INT 15h with AX = 5F40h and CL = 55h. Upon exit, the system BIOS will return in CL a panel type
value between 0 and 7. A value of 0 in CL corresponds to Panel #1. This function does not require the system BIOS to
modify C000:185h/E000:185, unlike 5F34h (44KB BIOS).
Calling Registers:
AX-5F40h
CL-55h
Return Registers:
CL -0 - 7 (panel type)
Monitor Sensing Hook - 5F35h (INT 15h Hook)
This function call allows the system BIOS to perform monitor sensing and to override the setting in the BMP. The
system BIOS will then boot from the display type specified in the return from this call.
Calling Registers:
AX-5F35h
DL-Invalid return code
Return Registers:
DL-If unchanged, boot according to the BMP setting
-If changed, boot from the following display:
0 - set to CRT mode
1 - set to flat panel mode
2 - set to simultaneous mode
Revision 1.110/2/9538OC65548
Subject to change without notice
Page 46
Confidential InformationOEM Reference Guide
Hook Before Mode Set - 5F38h (BMP option: Set INT 15h or INT 42h, AX = 5F33/38/39h)
This function call allows the system BIOS to intercept the video BIOS before setting the mode. The OEM has the
option of enabling this feature in the BMP, and if enabled, of specifying whether the interrupt call is INT 15h or INT
42h. Whichever interrupt is chosen, the calling registers remain the same. This function is blocked during power up.
Calling Registers:
AX-5F38h
CL-New Video Mode To Be Set
3.3V/5V Power Switching - 5F39h (For dual power supply systems - 32KB and 44KB BIOS)
(BMP option: Set INT 15h or INT 42h, AX=5F33/38/39h)
The 65548 supports dual voltage (3.3V/5V) switching. This function allows the system BIOS to switch between a
3.3V and 5V power supply depending on the video mode and display type (CRT, LCD, or simultaneous). The video
BIOS calls 5F39h during Mode Set and display type switching. The system BIOS should program XR6C Bit 1 and
switch the power supply to the correct voltage (3.3V or 5V). The system BIOS also requires the 3.3V and 5V mode
tables to switch to the correct voltages. This function is blocked during power up.
Calling Registers:
AX-5F39h
CL -Current Video Mode
INT 15h/INT 42h/Disabled (BMP Option)
Return Registers:
The system BIOS should program XR6C Bit 1 and switch the power supply to the correct voltage.
(Example: Run all Extended Modes in 5V and run all Standard Modes 0-13h in 3.3 V)
0 - 3.3V
1 - 5.0V
3.3V/5V Power Switching - 5F42h (For dual power supply systems - Alternate Method for
44KB BIOS only) (BMP option: Enable/Disable 5F42h, INT 15h Voltage Switching)
This function call allows the system BIOS to switch between a 3.3V and 5V power supply. This function does not
require 3.3V and 5V mode determination support (unlike 5F39h) in the system BIOS.
Calling Registers:
INT 15h
AX-5F42h
BH-00hSwitch from 5V to 3.3V
-01hSwitch from 3.3V to 5V
-02hDesire to switch to 5V
BL-55h
Return Registers:
BL-01hFunction supported and switch su ccessful
-00hFunction supported, but switch unsuccessful
-55hFunction not supported
Note:The following steps are required to enable voltage switching:
1. Use the BMP to set up tables in the BIOS for 3.3/5V operation.
2. Enable the mixed mode of operation with INT 15h AX=5F15 BX=0055
3. Monitor 5F42h function call for BH=02h, return BL=01h if the function is supported.
4. Monitor 5F42h function call for BH=00h or 01h. Make appropriate voltage switch and return BL=01h.
The OEM utility programs allow the OEM to prepare the 65548 VGA BIOS for use. The BMP utility program enables
the OEM to prepare a custom version of the BIOS. The ROMUTIL utility program allows the OEM to modify a binary
version of the BIOS into the proper form for programming into one or more EPROMs.
Note: These programs may not be reproduced or distributed by the OEM.
BMP
The BMP548 (32KB BIOS) and BMPLARGE (44KB BIOS) enables OEMs to customize the 65548 BIOS for their
own specific requirements. The BMP allows the OEM to modify certain parameters of a binary version of the BIOS to
be modified. The parameters that the BMP can modify include:
•Sign-on message
•General and Flat-Panel BIOS Features
•Display type determination
•Set FP Dot Clock
•Set FP Memory Clock
•Extended display modes
•65548 register tables
The BMP may only be used once on a copy of the BIOS. The OEM should make a backup copy of the original
diskette(s) before using any of the OEM utilities. Once the BIOS is changed and saved from the BMP, it cannot be
modified again.
Usage
BMP548 [File] or
BMPLARGE [File]
[File]Optional filename of the BIOS file input to the BMP. A default extension of .DAT is
assumed if no extension is specified. A default filename of VGA548.DAT
(VGALARGE.DAT) or is assumed if no filename is specified.
Filenames
Default filenames for the standard 32KB 65548 BIOS are:
•BMP548.EXE
•VGA548.DAT
•RAM548.DAT
Default filenames for the extended 44KB 65548 BIOS are:
•BMPLARGE.EXE
•VGALARGE.DAT
•RAMLARGE.DAT
Revision 1.110/2/9542OC65548
Subject to change without notice
Page 50
Confidential InformationOEM Reference Guide
Examples
ROM Binary:
BMP548 [VGA548.DAT]
BMPLARGE [VGALARGE.DAT]
Executes BMP548 (BMPLARGE) with the default file VGA548.DAT (VGALARGE.DAT) as the input file.
RAM Executable:
BMP548 RAM548.EXE
BMPLARGE RAMLARGE.EXE
Executes BMP548 (BMPLARGE) with the RAM548.EXE (RAMLARGE.EXE) or utility program as the input file.
Commands
BMP548 or (32KB BIOS) and BMPLARGE (44KB BIOS) organizes the modifiable parameters of the 65548 BIOS
into several windows. Some values are entered as text or as hexadecimal values within these windows. The following
keys are used to change fields or edit values:
<Tab>Go to next window.
<Shift Tab> Go to previous window.
<PgUp>Move up one page within a window.
<PgDn>Move down one page within a window.
<↑↑>,<↓↓>Move up or down one line or field.
<←←>,<→→>Move left or right one character or field.
<+>,<->Enable/disable parameter. Increment/decrement a value in the field.
<F1>Help.
<F5>Save BMS file.
<F6>Load BMS file.
<F10>Save changes to the BIOS file.
<Esc>Exit program.
Help
Help messages can be displayed by moving to the parameter that requires further explanation and pressing the <F1>
key. A pop-up window will be displayed describing the parameter.
BMS Files
BMP548 and BMPLARGE provide the capability to save and load custom files (BMS Files) that contain all of the
65548 BIOS parameters that can be modified. There is no limit to the number of custom files that user may save.
Revision 1.110/2/9543OC65548
Subject to change without notice
Page 51
Confidential InformationOEM Reference Guide
Error Messages
If BMP548 encounters an error during operation, a red window will appear which will contain the error condition.
Table 12 lists these errors, the possible cause, and recommended solution.
Use original BIOS fileThe file has already been modified and saved. Use the binary
file that was supplied on the original disk. If this does not
work, contact local CHIPS sales representative.
Editable Structure not foundThe file can not be modified. This is the wrong file. The
binary file that was supplied on the original disk should be
used.
This program is unable to edit the BMP structure in
that file
Bad BMP structure, Old version was Num, header
version was Num
There is an incompatible version of BMP and binary file. Use
the binary file and BMP program supplied on the original disk.
This is an incompatible version of BMP or binary file. Use the
binary file and BMP program supplied on original disk.
Unable to allocate memoryThere is not enough system memory. Remove all unnecessary
resident programs and reboot the system. BMP requires
approximately 300K of memory.
Binary file File not foundBMP could not find the specified file. Verify that the specified
file exists.
Unable to read binary file FileBMP could not read the specified file. Specified file may be
corrupted, use backup copy.
Unable to write to FileThere was an error during write to specified file. The file may
be marked read-only. Try making changes to a file that has
read and write access.
Unable to reopen File for savingUnable to re-open binary file. The file may be a read-only file.
Try making changes to a file with read and write access.
Unable to open my own .EXE file FileUnable to open BMP548.exe for reading. This may be due to
insufficient memory, or because the BMP548.exe filename has
been changed. Use the BMP and binary files from the original
disk.
Unable to open BMS file BMSfileUnable to find or read BMS file. Try specifying a file that does
exist.
Unable to create file BMSfileUnable to write a BMS file. There may be insufficient disk
Note: FileBinary filename used.
NumVersion number of BMP structure in BMP and/or binary file.
BMSfileBMS filename used.
Revision 1.110/2/9544OC65548
space, or an existing file has read-only access.
Subject to change without notice
Page 52
Message Options
Confidential InformationOEM Reference Guide
Sign-On Message
This sign-on message can be up to 5 lines of 159 characters. Trailing blank lines of the sign-on message are not
displayed. Blank lines between lines of text are displayed.
Enable All Sign-on Messages
If this option is set to Yes, the editable message is displayed upon system boot. The message is displayed for
approximately three seconds.
Clear Screen After Sign-on Message
If this option is set to Yes, the Video BIOS clears the screen after the sign-on messages are displayed.
No Sign-On Messages when Resuming
This option relates to the Laptop System BIOS Suspend/Resume feature. Setting this field to Yes causes the video
BIOS to test during POST whether the BIOS is cold-booting or resuming after a suspend. This field must be set to Yes
only when the system BIOS is a Chips and Technologies, Inc. Laptop System BIOS.
Revision 1.110/2/9545OC65548
Subject to change without notice
Page 53
BIOS Features (32KB BIOS)
Confidential InformationOEM Reference Guide
BIOS Features (32KB BIOS)
Revision 1.110/2/9546OC65548
Subject to change without notice
Page 54
Confidential InformationOEM Reference Guide
ROM Segment Address
The 65548 BIOS can be configured to reside at an address other than C000:0h depending on hardware configuration.
The default value is C000h, the standard location of a video adapter BIOS.
Flat Panel Width and Flat Panel Height
This option configures the BIOS for a panel of a different size.
Perform DAC Test
The 65548 BIOS can be set to skip the DAC test during power up initialization.
Skip Memory Test
This option allows the BIOS to skip testing of video memory and just clear memory during POST.
Enable/Disable 5F42h, INT 15h Functions (44KB BIOS)
This option allows the user to enable or disable voltage switching.
Set INT 15h or INT 42h, AX = 5F33/38/39h
This option allows the OEM to enable or disable a call from the BIOS to either INT 15h or INT 42h before mode set,
after mode set and before power switching (5F39h). This gives the system BIOS an opportunity to perform any special
processing that might be required with a customized system. See the “INT 15h Hooks” section in Chapter 4 for details
about the calling parameters.
Enable/Disable 5F36h, INT42h (44KB BIOS)
This INT42h hook is reserved for block cursor support in text mode through the system BIOS.
Adjust Pop Up Position (44KB BIOS)
This option allows the system BIOS to take control over the position of the pop up window.
XRAM Video Cache Feature (44KB BIOS)
This option allows the OEM to enable or disable the use of XRAM Video Cache. Refer to the 65548 Data Sheet for
more information on XRAM Video Cache option.
Select MCLK in Standard CRT Modes
This option selects the speed of the memory clock in standard CRT modes.
Select MCLK in Extended CRT Modes
This option selects the speed of the memory clock in extended CRT modes.
This option selects the speed of the memory clock in 4 or 8 bit per pixel CRT modes.
Select MCLK in 15 or 16 bit/pixel (5V) CRT Modes
This option selects the speed of the memory clock in 15 or 16 bit per pixel CRT modes.
Select MCLK in 24 bit/pixel (5V) CRT Modes
This option selects the speed of the memory clock in 24 bit per pixel CRT modes.
Revision 1.110/2/9547OC65548
Subject to change without notice
Page 55
BIOS Features (44KB BIOS)
Confidential InformationOEM Reference Guide
Analog Display Boot Type (32KB BIOS)
This option selects the boot-up display type: CRT, Flat-Panel or Simultaneous.
Analog Display Boot Type (44KB BIOS)
This option allows the user to select whether to boot automatically on flat panel/simultaneous or flat panel/CRT, or to
choose an override which forces the BIOS to boot on one of the three display types as specified in the following option.
Analog Display Boot Type Override (44KB BIOS only)
This option specifies the display type to boot on when the override option is chosen in the previous line. The type may
be flat panel, CRT, or simultaneous.
Video Linear Start Address
This option allows the Video Linear Start Address to begin on various 2MB boundaries while in graphics linear modes
20h-50h. The hardware must correlate with the Video Linear Start Address. The 65548 PCI BIOS does not use this
option but it calls the system BIOS with AX=B109H, INT 1AH to get Video Linear Start Address.
Panel Type (44KB BIOS only)
Please refer to Table 9. (page 38) for the different options.
Adjust Shift in 40 Column and Pack Pixel Modes
This option allows adjustments of Flat-Panel Horizontal Sync Start and Horizontal Start registers for simultaneous
display operation.
Revision 1.110/2/9548OC65548
Subject to change without notice
Page 56
Enable/Disable Modes
Confidential InformationOEM Reference Guide
This window allows the OEM to enable or disable the extended display modes which can be accessed by application
programs. If the mode is disabled, the BIOS set mode command will return an “unsupported mode” status.
Revision 1.110/2/9549OC65548
Subject to change without notice
Page 57
Confidential InformationOEM Reference Guide
CRT Registers and Dot Clocks For All Extended Modes
This is an example of the set of windows that allows the OEM to adjust the CRT register values for all extended modes.
In addition, the dot clock frequency can be specified for each mode (except modes 60 and 61). There is one screen for
each distinct table of CRT register values that the video BIOS uses. Often, more than one mode uses a table, and the
dot clock frequencies can be set separately for each of these modes.
Revision 1.110/2/9550OC65548
Subject to change without notice
Page 58
Confidential InformationOEM Reference Guide
CRT, Flat Panel and Simultaneous Boot Parameters
This window is used to change the extended register values for use at boot time.
CRT Parameters
This window is used to change the extended registers for CRT mode.
Revision 1.110/2/9551OC65548
Subject to change without notice
Page 59
Confidential InformationOEM Reference Guide
Flat Panel and Simultaneous Video Parameters
This window is used to change the extended registers for Flat-Panel and Simultaneous modes.
Flat Panel and Simultaneous Video Parameters (Panel Type)
Revision 1.110/2/9552OC65548
Subject to change without notice
Page 60
Confidential InformationOEM Reference Guide
This window is used to change the various Dot and Memory clocks for Flat-Panel and Simultaneous display modes.
For the standard 32KB BIOS, only one type of flat panel is defined in the BIOS at any one time. The type of panel can
be changed by adjusting the parameters defining the panel, or by loading a .BMS file containing the parameters of a
new panel type. This last method is the easiest, and is discussed in the "BMS Files" section which follows.
The extended 44KB BIOS has 8 of these screens, one for each of the pre-defined flat panel types.
Panel Control Parameters
This window is used to change the extended registers for the panel selected.
The extended 44KB BIOS has 8 of these screens, one for each of the pre-defined flat panel types.
Revision 1.110/2/9553OC65548
Subject to change without notice
Page 61
Flat Panel Parameters
Confidential InformationOEM Reference Guide
This window is used to change the extended registers for the panel selected. For the 44KB BIOS, these parameters
apply to the pre-defined panel type shown at the top of the screen.
Simultaneous Video Parameters
This window is used to change the extended registers for the panel selected in simultaneous mode. For the 44KB
BIOS, these parameters apply to the pre-defined panel type shown at the top of the screen.
Revision 1.110/2/9554OC65548
Subject to change without notice
Page 62
Confidential InformationOEM Reference Guide
BMS Files (32 KB BIOS Only)
This manual documents one panel type. There are twelve additional panels located in .BMS files that can be used by
executing the Load <F6> command.
1640x480 Dual Scan Monochrome Panel
2640x480 Dual Scan Monochrome Panel No Accel
3640x480 Dual Scan Color Panel
4800x600 Dual Scan Color Panel
5640x480 Sharp TFT Color
6640x480 18-bit TFT Color
71024x768 TFT Color
8800x600 TFT Color
ROMUTIL
The ROMUTIL program modifies the binary ROM files (.DAT). ROMUTIL can handle from one to four binary files
and produce either binary files or an Intel hex format file as output.
Usage
Note:All command line parameters can be omitted, in which case ROMUTIL will run in interactive mode and
prompt for action, options, and filenames.
ROMUTIL
- OR -
ROMUTIL [Action][File(s)][Options][Outfile]
[Action]This parameter may be one of the following:
/A2Add 2 binary files to form 1 file (interleave even/odd).
/A4Add 4 binary files to form 1 file (interl eave every fourth byte).
/S2Split a binary file into 2 files (every other byte).
/S4Split a binary file into 4 files (every fourth byte).
/CConvert a binary file into an Intel hex file.
/DDivide a binary file into 2 files (first half/second half).
Revision 1.110/2/9556OC65548
Subject to change without notice
Page 64
Confidential InformationOEM Reference Guide
[File(s)]Filenames to be used as input.
[Options]This parameter may be one of the following:
/B<Num.>Number of data bytes to generate per line (valid only with Convert).
Number must be 16 (default), 32, 48 or 64.
/L<Addr.>Set starting address (default is 0000h) Valid only with Convert.
/P<Size>Pad with 0xFF up to the end of <Rom size>. The number must be 2, 4, 8,
16, 32, 64 or 128. Only valid with Add and Split.
[Outfile]Filename of destination file.
Example
ROMUTIL /A2 ROM.1 ROM.2 NEWROM.BIN
Adds ROM.1 and ROM.2 to form the combined file NEWROM.BIN. If the output file is not specified, ROM.BIN will
be created by default.
Revision 1.110/2/9557OC65548
Subject to change without notice
Page 65
Confidential InformationOEM Reference Guide
APPENDIX A - BUILDING THE VGA BIOS
This appendix describes the process for creating a binary BIOS from source code. Building, modifying, or updating the
BIOS Source Code requires the following software utilities:
•A text editor capable of editing ASCII files
•Microsoft Macro Assembler (MASM) version 5.0 or later
•Microsoft Linker (LINK) version 3.60 or later
•Microsoft MAKE utility
•Microsoft C Compiler (CL) version 5.1 or 7.0
The INSTALL.BAT file on the source code diskette will install all the files necessary to create a binary version of the
BIOS. Use the following command line to install:
A:INSTALL C:\VGA548
INSTALL.BAT will create the directory \VGA548 on drive C:. The following subdirectories will also be created:
\OBJ
\OBJLG
\LST
The BIOS source files will be placed in the \VGA548 or directory, along with batch files for assembling and linking the
BIOS. INSTALL.BAT will then copy the binary files into the \OBJ subdirectory. A .LNK file used in linking the
BIOS modules is also placed in the \OBJ subdirectory.
To create the binary copy of the BIOS, run the Microsoft Make utility with the following command line:
MAKE VGA548.MAK or
MAKE VGALARGE.MAK
Note: Several “warning” messages may appear while Make is assembling certain source modules. These warning
messages should be ignored. However, there should be no “error” messages from the assembler.
Revision 1.110/2/9558OC65548
Subject to change without notice
Page 66
Confidential InformationOEM Reference Guide
APPENDIX B - E XTENDED CONTROL REGISTERS AND PARAMETER TABLES
Memory Control Registers 1 and 2 (XR04 and XR05)
The 65548 BIOS uses Memory Mode Register (XR04) to determine and program how much memory is installed on the
board. The F65548 will support up to 1MB of RAM memory configuration.
D0 DATA PATH MEMORY INTERFACE
032-bit1 MB DRAM
116-bit512 KB DRAM
The BIOS uses the Memory Control Register 2 to further specify the memory configuration:
The 65548 BIOS Set Mode function programs bit 5 of this register to value 1 for Interlace and 0 for Non-Interlace
modes.
Mode Register (XR2B)
The BIOS programs the software register with the current mode number. It can be used to find out the existing mode,
but cannot change it.
Software Flag Register (XR1F)
Bits 0 and 1 of this register are used by the BIOS to indicate the current display type. Bit 2 of this register is used by
the BIOS to indicate to the driver any pop-up update.
D2STATUS
0No pop-up update
1Pop-up update
Setup Registers
The 65548 BIOS programs register 102 as standard VGA, register 3C3h to value 01h and register XR70 to value 80h
(in this order) upon power-up, and hereafter does not update registers 46E8, 102, 3C3 or XR70.
Half-Line Compare Register (XR19)
This register generates the Half Line Compare signal that controls the positioning of the VSync for odd frames when
interlaced video output is enabled. The 65548 BIOS programs XR19 = 4Ch in Interlace mode. The Flat-Panel
supports Non-Interlaced modes only (e.g. Modes 24h, 34h, 72h/75h and 7Eh will be displayed in NonInterlace/Interlace mode on the CRT, but Non-Interlace mode on the Flat-Panel).
Higher Page Map (XR10) and Lower Page Map (XR11)
Higher Page Map and Lower Page Map are 8 bits in the 65548 VGA controller. Page map should start on the 1K
boundary for Planar modes and the 4K boundary for Packed Pixel modes when the 65548 BIOS accesses extended
mode functions.
Revision 1.110/2/9559OC65548
Subject to change without notice
Page 67
Confidential InformationOEM Reference Guide
132 Column Mode on 1024x768 Panel
The 65548 VGA BIOS programs CR01 = 7Fh (128 columns) in Flat-Panel Mode or in Simultaneous Display Mode
and CR01 = 83h (132 columns) in the CRT Mode.
Software Flag Register (XR0F)
This register is reserved for the 65548 BIOS flags. Bits 0 and 1 are used to save memory size upon power-up.
The BIOS reads XR0F bit 4 to enable/disable accelerator support:
XR0F bit 4 = 1 15/16 bit-per-pixel modes
XR0F bit 4 = 0 All other modes
The BIOS reads XR0F bit 7 to enable/disable 8x19 font:
XR0F bit 7 = 0 8x19 font Disabled (Text Compensation Disabled)
XR0F bit 7 = 1 8x19 font Enabled (Text Compensation Enabled)
Software Flag Register (XR44)
The BIOS sets bits 2 - 0 for the panel type (1,2,3...8) (44KB BIOS only).
The BIOS reads XR44 bit 4 to enable/disable optimal compensation upon power up only:
XR44 bit 4 = 0 Disabled optimal compensation on power up
XR44 bit 4 = 1 Enabled optimal compensation on power up
If Optimal Compensation is enabled, the BIOS activates Tall Font in modes 0*, 0+, 1*, 1+, 2*, 2+, 3*, 3+, 7, 7+ and
60, and also activates Line Replication in modes 4, 5, 6, D, E, 13 and 78. In other modes, automatic centering is
activated if XR57 bits 0 and 1 are set to “1”.
Software Flag Register (XR45)
The BIOS uses this register for the software flag as follows:
D0 - D2For BIOS Internal Use only
D3CRT Zoom
0CRT Zoom Disabled
1CRT Zoom Enabled
D5 - D4Pop - Up Position
00Top Left
01Bottom Left
1XReserved
D6Pop - Up Status
0Pop - Up Disabled
1Pop - Up Enabled
Revision 1.110/2/9560OC65548
Subject to change without notice
Page 68
Confidential InformationOEM Reference Guide
D7Set 5V or 3V/5V Mixed Voltage Mode -
Note:5F42h must be Enabled in BMP
0Set 5V mode only
1Set 3V/5V mixed voltage mode
Revision 1.110/2/9561OC65548
Subject to change without notice
Page 69
Confidential InformationOEM Reference Guide
Extended Linear Mode Parameter Tables
Table 14: Extended Linear Mode Parameter Tables for F65548 VGA Controller
The following section describes the Suspend/Resume procedure required for the Chips and Technologies 65548 High
Performance Flat Panel/CRT VGA Controllers.
Following this procedure will allow the 65548 to perform optimally during Suspend/Resume operations. Ignoring this
procedure will result in rare intermittent failures during Suspend/Resume operations. Chips and Technologies cannot
be responsible for the operation of the 65548 during Suspend/Resume if this procedure is not properly followed.
This section contains brief description of the procedure followed by an example code. The actual method which
implements this Suspend/Resume procedure depends on the system logic chip set as well as the power management
software. Please remember that it is only an example code. If you have questions regarding this procedure, please
contact your local Chips and Technologies, Inc. sales office.
Operation
In Standby mode, the 65548 suspends all CPU, memory, and display activities. It places the DRAM(s) in slow- or selfrefresh mode (XR52[6]), and may shut off the 14.31818MHz reference clock and/or the 32KHz depending on the
configuration of the chip during Standby.
In slow-refresh mode (XR52[6] = 1), using the internal RCLK (XR33[6] = 0) for slow-refresh timing, the
14.31818MHz clock cannot be turned off. The 14.31818MHz clock generates the 37.5KHz RCLK used in the Standby
slow-refresh timing. If the chip is using the external 32KHz on pin 154 (AA9) as the slow-refresh timing reference
clock, then the 14.31818MHz clock can be shut off.
In self-refresh mode (XR52[6] = 0), the 14.31818MHz clock can be shut off. If the external 32KHz is also used, it can
also be shut off during Standby.
The external 32KHz or internal RCLK is used for slow-refresh and panel power sequencing timing (XR33[6]).
If the clock(s) may be shut off, they must be shut off after waiting twice the time programmed in XR5B[3-0] (Panel
Power Sequencing Delay Register - Power Down Delay) after the STNDBY# pin is asserted. This will allow the chip
to completely finish all housekeeping activities after the STNDBY# pin is asserted.
When exiting Standby mode (Resume), the clocks must be applied (if turned off) to the chip and be stable before the
STNDBY# pin may be de-asserted. After the STNDBY# pin has been de-asserted, the chip can be accessed after
waiting twice the value time programmed in XR5B[7-4] (Power Up Delay). This will allow the chip to fully come out
of Standby.
The VGA subsystem dissipates a minimum amount of power during Standby. Since the 65548 is a fully static device,
the contents of the controller’s registers and on-chip palette are maintained during Standby. Therefore, Standby mode
provides fast Suspend/Resume operations. Standby mode may be activated by asserting the STNDBY# pin low or
programming XR52[4] = 1. The only way to come out of Standby is by de-asserting the STNDBY# pin.
The 65548 has been designed to minimize power consumption during Standby in either Panel-only or Simultaneous
modes. During these modes, it is assumed that AC power is not available and the system is running on batteries.
During CRT-only mode, it is assumed that AC power is available and therefore power consumption does not need to be
minimized.
Revision 1.110/2/9576OC65548
Subject to change without notice
Page 84
Confidential InformationOEM Reference Guide
To minimize power consumption during CRT-only mode, then it is recommended that the chip switch to Panel only
mode before entering Standby.
The 65548 has also been designed to enter Standby mode only from Normal operation mode, therefore the 65548
cannot enter Standby mode when in the Panel-Off mode (XR52[3] = 1). To enter Standby mode from Panel-Off mode,
it is recommended that it first come out of Panel-Off mode (Panel-On mode - XR52[3] = 0) then enter Standby mode.
It must be remembered that after setting XR52[3] = 0 (Panel-On mode), the chip cannot enter Standby mode until
waiting twice the value time programmed into XR5B[7-4]. This will allow the chip to fully come out of Panel-Off
mode.
The following example procedure and code assumes the chip is in Panel-only or Simultaneous modes and Normal
operation before entering Standby.
Procedure
In order to provide optimal Suspend/Resume operation (Standby mode) with the Chips and Technologies 65548, the
following software procedure must be implemented in either the system BIOS or the power management software.
1. Before Entering Suspend Mode
Software must execute the following procedure before asserting the STNDBY# pin of the 65548:
a. SAVE the contents of register 3C6h (Color Palette Pixel Mask Register).
b. PROGRAM register 3C6h to 00 - Disabling access to palette contents.
c. SAVE all DAC registers (Video DAC State and Color Registers) using the Video BIOS function call 5FA1h.
d. SAVE the GR (Graphics Register) Index.
e. SAVE the contents of register GR06 (Mi scellaneous Register).
f. PROGRAM register GR06 bit 0 to 0 - Setting controller to text mode.
g. READ double word FFFF FFFFh from Video memory (see Example Code for procedure).
h. Enter Standby mode by asserting the STNDBY# pin of the 65548.
Wait a minimum time delay of twice the value programmed into register XR5B[3..0] (Panel Power Sequencing
Register - Power Down) in msec. before turning off the external 14.31818MHz oscillator (if applicable). This is
to allow the 65548 to completely finish all activities (‘house keeping’) after the STNDBY# pin is asserted .
2. After Exiting Suspend Mode (Resume)
After de-asserting the STNDBY# pin of the 65548, the software must execute the following procedure:
The 14.31818MHz external oscillator must be applied to the 65548 and stable before de-asserting the STNDBY# pin (if
applicable).
Revision 1.110/2/9577OC65548
Subject to change without notice
Page 85
Confidential InformationOEM Reference Guide
Wait a minimum time delay of twice the value programmed into register XR5B[7..4] (Power Up) in msec. This is to
allow the 65548 to completely come out of Standby after the STNDBY# pin is de-asserted.
a. RESTORE the saved contents of register GR06 (Miscellaneous Register).
b. RESTORE the saved GR (Graphics Register) Index.
c. RESTORE all DAC registers (Video DAC State and Color Registers) using the Video BIOS function call 5FA2h.
d. RESTORE the saved contents of register 3C6h (Color Palette Pixel Mask Register).
Example Code
;---------------------------------------------------------------------------; Module Name: STANDBY.asm
; Program Name: STANDBY.com
; Description: Standby (540/545)
; Date: Dec. 20, 1994
; Version: 1.3
; Programmer: Chips and Technologies, Inc.
; (C) 1994 Chips and Technologies, Inc.
;----------------------------------------------------------------------------; Code Segment Starts
codesegment
assume cs:code, ds:code, ss:code, es:code
org100h; for making program .COM type
begin:
STANDBY proc near
;*****************************************************************************************
; This delay routine is in case the system is already in Standby.
;*****************************************************************************************
movdx,3d6h; Set to XR Index
inal,dx; Read XR Index
pushax; Save XR Index
moval,5Bh; Set Index to 5B
outdx,al
inax,dx; Read contents of XR5B (Panel Power Sequencing Delay Register)
movCS:XR5B,ax; Save XR5B
popax
outdx,al; Restore XR Index
callWdelay; delay
Revision 1.110/2/9578OC65548
Subject to change without notice
Page 86
Confidential InformationOEM Reference Guide
;PREPARE FOR STANDBY
movdx,3c6h
inal,dx; Read Color Palette Pixel Mask Register
movCS:D_3c6,al; Save Color Palette Pixel Mask Register
moval,0
outdx,al; Disable access to Palette contents
movax,5fa1h; Video BIOS function call to Save Video State
movcx,04h; Video DAC state
pushcs
popes
movbx,offset Buff_DAC; Set Correct buffer
int10h; Save
movdx,3ceh
inal,dx; Read GR Index
movcs:GR_Index,al; Save GR Index
moval,6
outdx,al; Set GR Index to GR06 (Miscellaneous Register)
inax,dx; Read contents of GR06
movcs:GR06_Data,ax; Save GR06 Index, Data
;;andah,not 01h
;;outdx,ax; Set for Text Mode
.386
pusheax
pushecx
movah,04h
outdx,ax; Write 04 to GR06 (Set to Text Mode)
outdx,al; Set GR Index to GR05 (Graphics Mode Register)
inax,dx; Read contents of GR05
movCS:GR05,ax; Save contents of GR05
movah,00
outdx,ax; Set GR05 to 00 (Write Mode 0)
movdx,3c4h
inal,dx; Read SR Index
movCS:SR_Index,al; Save SR Index
moval,04h
outdx,al; Set SR Index to SR04 (Memory Mode Register)
inax,dx; Read contents of SR04
movCS:SR04,ax; Save contents of SR04
movah,0EH
outdx,ax; Set to Packed Pixel Mode
moval,02h
Revision 1.110/2/9579OC65548
Subject to change without notice
Page 87
Confidential InformationOEM Reference Guide
outdx,al; Set SR Index to SR02 (Sequencer Plane/Map Mask Register)
inax,dx; Read contents of SR02
movCS:SR02,ax; Save contents of SR02
movah,0FH
outdx,ax; Enable all color planes
movdx,3d6h
inal,dx; Read XR Index
movCS:XR_Index,al; Save XR Index
moval,0Bh
outdx,al
inax,dx; Read contents of XR0B (CPU Paging Register)
movCS:XR0B,ax; Save contents of XR0B
movah,05H
outdx,ax; Set Memory for Extended Packed Pixel Non-Linear Mode
movax,0A000H
moves,ax
xorsi,si
movecx,DWord Ptr es:[si]
moveax,0FFFFFFFFH
movDWord Ptr es:[si],eax; Write double word FFFF FFFFh to Video memory
moveax,DWord Ptr es:[si]; Read double word FFFF FFFFh from Video memory
movDWord Ptr es:[si],ecx
popecx
popeax
.286
movdx,3ceh; Set to GR Index
movax,CS:GR06_Data; Restore GR06
andah,not 01h
outdx,ax ; Flip to Text Mode
movax,CS:GR05
outdx,ax; Restore GR05
movdx,3c4h; Set to SR Index
movax,CS:SR04
outdx,ax; Restore SR04
movax,CS:SR02
outdx,ax; Restore SR02
moval,SR_Index
outdx,al; Restore SR Index
movdx,3d6h; Set to XR Index
movax,CS:XR0B
outdx,ax; Restore XR0B
moval,XR_Index
outdx,al; Restore XR Index
Revision 1.110/2/9580OC65548
Subject to change without notice
Page 88
Confidential InformationOEM Reference Guide
; [ A ] STANDBY
;*****************************************************************************************
;
; Code to enter Standby should be placed here. This code depends on the Standby
; implementation in the System
;
;*****************************************************************************************
; [ B] WAKE UP
;*****************************************************************************************
;
; Code to exit Standby should be placed here. This code depends on the Standby
; implementation in the System.
;
;*****************************************************************************************
callWdelay;delay
; RESTORE STATE AFTER WAKEUP
movdx,3ceh; Set to GR Index
movax,cs:GR06_Data
outdx,ax; Restore GR06
moval,cs:GR_Index
outdx,al; Restore GR Index
movax,5fa2h; Video BIOS function call to Restore Video State
movcx,04h; Video DAC state and Color Registers
pushcs
popes
movbx,offset Buff_DAC; From buffer
int10h; Restore
movdx,3c6h; Set to Color Palette Pixel Mask Register
moval,CS:D_3c6
outdx,al; Restore Color Palette Pixel Mask Register
ret; Terminate
STANDBYendp
; Wake-up delay routine
Wdelay Procnear
Revision 1.110/2/9581OC65548
Subject to change without notice
Page 89
movax,CS:XR5B
andah,0f0h; Select Power Up Delay (bits 4 - 7)
.386
shrah,1; 8 times
.286
xorcx,cx
movcl,ah; CX = delay count in msec
calldelay; Call User System Specific Delay Routine
ret
Wdelay endp
; Standby delay routine
Sdelay Procnear
movax,CS:XR5B
andah,0fh; Select Power Down Delay (bits 3 - 0)
moval,ah
movah,2*29; msec
mulah
movcx,ax; CX = delay count in msec
calldelay; Call User Specific Delay Routine
ret
Confidential InformationOEM Reference Guide
Sdelay endp
; [C] User Specific Delay Routine
;*****************************************************************************************
; Code to implement User Specific Delay Routine goes here.
; This is to allow User to implement the delay routine based on the system requirements.
;
; Entry: CX = delay count in msec
;*****************************************************************************************
delayProcnear; Delay