Home | History | Annotate | Download | only in fbcon
      1 /*
      2     SDL - Simple DirectMedia Layer
      3     Copyright (C) 1997-2012 Sam Lantinga
      4 
      5     This library is free software; you can redistribute it and/or
      6     modify it under the terms of the GNU Lesser General Public
      7     License as published by the Free Software Foundation; either
      8     version 2.1 of the License, or (at your option) any later version.
      9 
     10     This library is distributed in the hope that it will be useful,
     11     but WITHOUT ANY WARRANTY; without even the implied warranty of
     12     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
     13     Lesser General Public License for more details.
     14 
     15     You should have received a copy of the GNU Lesser General Public
     16     License along with this library; if not, write to the Free Software
     17     Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
     18 
     19     Sam Lantinga
     20     slouken (at) libsdl.org
     21 */
     22 #include "SDL_config.h"
     23 
     24 #ifndef _3DFX_REGS_H
     25 #define _3DFX_REGS_H
     26 
     27 /* This information comes from the public 3Dfx specs for the Voodoo 3000 */
     28 
     29 /* mapped_io register offsets */
     30 #define TDFX_STATUS	0x00
     31 
     32 #define INTCTRL		(0x00100000 + 0x04)
     33 #define CLIP0MIN	(0x00100000 + 0x08)
     34 #define CLIP0MAX	(0x00100000 + 0x0c)
     35 #define DSTBASE		(0x00100000 + 0x10)
     36 #define DSTFORMAT	(0x00100000 + 0x14)
     37 #define SRCCOLORKEYMIN	(0x00100000 + 0x18)
     38 #define SRCCOLORKEYMAX	(0x00100000 + 0x1c)
     39 #define DSTCOLORKEYMIN	(0x00100000 + 0x20)
     40 #define DSTCOLORKEYMAX	(0x00100000 + 0x24)
     41 #define BRESERROR0	(0x00100000 + 0x28)
     42 #define BRESERROR1	(0x00100000 + 0x2c)
     43 #define ROP_2D		(0x00100000 + 0x30)
     44 #define SRCBASE		(0x00100000 + 0x34)
     45 #define COMMANDEXTRA_2D	(0x00100000 + 0x38)
     46 #define PATTERN0	(0x00100000 + 0x44)
     47 #define PATTERN1	(0x00100000 + 0x48)
     48 #define CLIP1MIN	(0x00100000 + 0x4c)
     49 #define CLIP1MAX	(0x00100000 + 0x50)
     50 #define SRCFORMAT	(0x00100000 + 0x54)
     51 #define SRCSIZE		(0x00100000 + 0x58)
     52 #define SRCXY		(0x00100000 + 0x5c)
     53 #define COLORBACK	(0x00100000 + 0x60)
     54 #define COLORFORE	(0x00100000 + 0x64)
     55 #define DSTSIZE		(0x00100000 + 0x68)
     56 #define DSTXY		(0x00100000 + 0x6c)
     57 #define COMMAND_2D	(0x00100000 + 0x70)
     58 #define LAUNCH_2D	(0x00100000 + 0x80)
     59 #define PATTERNBASE	(0x00100000 + 0x100)
     60 
     61 #define COMMAND_3D	(0x00200000 + 0x120)
     62 
     63 /* register bitfields (not all, only as needed) */
     64 
     65 #define BIT(x) (1UL << (x))
     66 
     67 #define COMMAND_2D_BITBLT		0x01
     68 #define COMMAND_2D_FILLRECT		0x05
     69 #define COMMAND_2D_LINE			0x06
     70 #define COMMAND_2D_POLYGON_FILL		0x08
     71 #define COMMAND_2D_INITIATE		BIT(8)
     72 #define COMMAND_2D_REVERSELINE		BIT(9)
     73 #define COMMAND_2D_STIPPLELINE		BIT(12)
     74 #define COMMAND_2D_MONOCHROME_PATT	BIT(13)
     75 #define COMMAND_2D_MONOCHROME_TRANSP    BIT(16)
     76 
     77 #define COMMAND_3D_NOP			0x00
     78 
     79 #define STATUS_RETRACE			BIT(6)
     80 #define STATUS_BUSY			BIT(9)
     81 
     82 #endif /* _3DFX_REGS_H */
     83 
     84