Subject: Re: tseng et4000 registers memory map?
To: Todd Whitesel <toddpw@best.com>
From: Julian Coleman <J.D.Coleman@newcastle.ac.uk>
List: port-atari
Date: 09/18/1999 16:58:39
Todd Whitesel wrote:
> I have started on a generic version of pci_tseng.c and friends, but the
> card still isn't displaying anything and I am beginning to suspect that
> it is because I can't find a good description of how the card's 16 meg
> PCI address space is laid out.

I had great fun trying to work out what registers needed to be set in order
to get the display to work.

> The atari code is full of mempory mapping and hardcoded numbers, and is
> very confusing to read. So far my best guess is that the VGA IO shows up
> at 0003c0-0003df or thereabouts, and the text screen shows up at 0a0000.
> This would all be inside the 16 meg region specified by PCI configuration
> register 0x10 for the card.

I used the xfree sources and the VGADOC (http://www.datashopper.dk/~finth/)
archive as my 'documentation'.  The summary I have (at the top of some test
code I wrote) is :

/* Registers are :
 * Attribute controller (ATC) : 0x00 - 0x16
 *      Index   0x3c0,  Read    0x3c1,  Write   0x3c0
 *
 * Video system enable
 *      Read    0x3c3,  Write   0x3c3
 *      (Should always be 0x01)
 *
 * Sequencer (TS) : 0x00 - 0x07
 *      Index   0x3c4,  Read    0x3c5,  Write   0x3c5
 *
 * Graphics Controller (GDC) : 0x00 - 0x08
 *      Index   0x3ce,  Read    0x3cf,  Write   0x3cf
 *
 * Miscellaneous
 *      Read    0x3cc,  Write   0x3c2
 *
 * 64K segment select
 *      Read    0x3cd,  Write   0x3cd
 *
 * CRT Controller (CRTC) : 0x00 - 0x3f
 *      Index   base + 0x04,    Read    base + 0x05,    Write   base + 0x05
 *
 * Display Mode Controller
 *      Read    base + 0x08,    Write   base + 0x08
 *
 * Colour Select
 *      Read    base + 0x09,    Write   base + 0x09
 *
 * AT&T Mode Controller
 *      Read    base + 0x0e,    Write   base + 0x0e
 */

Let me know if you want the code (although it's a bit VME ET4000 specific).
Apologies that the reply is a bit rushed - I'm just packing as I'm away for
a week from tomorrow.  

J

-- 
                         Of course it runs NetBSD
                          http://www.netbsd.org/