ATI mach64 Programmer's Reference Manual Information
ATI Technical Note #080
July 14, 1994      

PROGRAMMING DOCUMENTATION FOR ATI MACH64 ACCELERATORS

Thank you for your interest in obtaining programming documentation
for ATI products based on the ATI mach64 graphics accelerator
chipset. The mach64 is ATI's third generation accelerator which
features a high performance 64-bit architecture, an enhanced
drawing engine capable of accelerating true color graphics, and
larger memory capacity to support very high resolution, true color
graphics modes. The mach64 is the chipset at the heart of the ATI
GRAPHICS PRO TURBO and GRAPHICS XPRESSION products.

ATI is pleased to announce that the mach64 Software Development Kit
(SDK) is now available. A detailed description of the mach64 SDK
and order form is provided. Please read this document carefully
before placing an order.

DESCRIPTION OF MACH64 SDK

The mach64 SDK is composed of the following items:

1.    mach64 Programmer's Guide

   A 130+ page programmer's guide which describes how to program
   the mach64 products as an accelerator at the register level.
   Some of the topics covered include:
     Initialization and mode changing via BIOS
     Memory access via the linear aperture in extended memory or
      via the paged aperture in conventional memory
     Memory mapped register access
     Vector and polygon drawing engine programming
     BitBlit engine programming
     Hardware cursor programming
   
2. mach64 Accelerator Programmer's Guide Companion Disk

   A 3.5" HD diskette containing 29 source code fragments in 'C'
   and x86 Assembler which illustrate many of the topics in the
   Programmer's Guide.

3.    mach64 BIOS Kit

   A 60+ page reference which describes all VGA, VESA VBE and ATI
   extended functions. 
   
4.    mach64 Register Reference

   A 110+ page reference which describes each bit in each of the 71
   accelerator registers.

5.    mach64 VGA Register Guide

   A 120+ page reference which describes the integrated VGA/S-VGA
   controller. There are descriptions of the ATI-specific S-VGA
   modes, the VGA compatible registers and the ATI extended VGA
   registers.

WHAT IS NOT OFFERED IN THE SDK

The mach64 SDK does NOT include the following items:

1.    Initialization without BIOS example disk

   ATI strongly recommends using the on-board BIOS functions to
   initialize the card and to set graphics modes whenever possible.
   However, we are aware that  BIOS services may not be available
   to developers of drivers for some non-DOS operating systems.
   Therefore, sample non-BIOS initialization code is available by
   written request to ATI Developer Relations.  ATI Developer
   Relations can be reached directly at (905)882-2600 extension
   6000.  

   FAXES can be sent to this group via the ATI corporate FAX number
   (905)882-2620.  Please include your company letterhead, and
   state the nature of your project, it's intended market, and the
   specific goals you require assistance in attaining.
   
2.    BIOS Customization Diskette

   The diskette referenced in the BIOS Kit manual is used for
   implementing mach64 chipsets in customized designs. It is only
   available to vendors with whom ATI is under contract to supply
   mach64 chips.
   
3.    High Level Interface

   ATI does not plan to offer a linkable graphics function library
   or a high level interface for the mach64. However, ATI
   encourages and assists developers of commercial graphics library
   packages to support our products. As of the date this brochure
   was written, ATI is not aware of any graphics libraries who have
   announced a version which supports the mach64. If you are a
   current user of a graphics library, please contact the
   manufacturer for information about if & when they plan to
   release a version which supports ATI mach64 products.
   
   
   PLEASE READ BEFORE ORDERING

The mach64 is a highly flexible device which can be programmed as
an S-VGA, as a linear frame buffer display or as an accelerator
card. All retail implementations of the mach64 card contain a VESA
VBE-compliant BIOS and ATI recommends programming to this standard.
S-VGA programming manuals are available through computer
bookstores. 

The mach64 accelerator contains a high performance graphics engine.
This provides hardware assist for vector/polygon drawing, screen to
screen BitBlit, hardware cursor and several other functions.
Programming the graphics engine is very different and more
difficult than any conventional frame buffer card. Only programmers
familiar with implementing graphics primitive functions and writing
device drivers for programmable peripheral devices on the PC should
attempt to access the engine directly.

All examples are written in MS C and MS MASM. Familiarity with the
syntax and conventions of these compilers is required. ATI does not
support other compilers and will not assist with conversion of
sample code to other compilers.

ATI Customer Support will assist with installation, configuration
and basic information but will not be able to answer specific
programming questions.

DISCLAIMER

Please note that the materials within the mach64 SDK are provided
on a "as is" basis although every effort has been made to ensure
that the documents are as complete and as accurate as possible.


The mach64 SDK can be ordered for $US50 plus delivery charge.
Orders can be placed by filling out this form and FAXing or mailing
it to ATI Customer Support at the following address:
      ATI Technologies Inc.
      Customer Support Department
      33 Commerce Valley Drive East
      Thornhill, Ontario
      Canada L3T 7N6
      fax: +1 905 882-0546

Payment will only be accepted with a valid VISA, MasterCard or
American Express number. Customer Support will ship your
programmer's kit as soon as your credit card charge is approved.
Please allow 7-10 days for ground delivery. Allow more time for
mail delivery outside North America. Additional shipping charges
may be applied for faster delivery methods (see below). No refunds
will be offered.

Delivery by (circle one):
Ground Courier ($15, North America Only)
Air Courier ($20, North America Only)
Overseas Courier ($25, All countries outside North America, no overnight
  delivery available)


CREDIT CARD INFORMATION
Circle One:  VISA / MasterCard / American Express
Card Number:
Expiry Date:
Cardholder's Name (exactly as it appears on the card):

First Name:
Last Name:
Title:
Cust# (optional):
Company:
Address:
City:
Prov/State:
Postal/Zip:
Phone:
Alternate Phone:
Fax:
Country:


I DECLARE THAT I HAVE READ AND UNDERSTOOD THIS DOCUMENT AND I AGREE
TO THE TERMS AND CONDITIONS CONTAINED WITHIN.

signed:  ___________________________________       
Dated:  _____/______/___________

