]> icculus.org git repositories - btb/d2x.git/blob - unused/vga/fxdpmi.h
moved old joydefs to main
[btb/d2x.git] / unused / vga / fxdpmi.h
1 /*
2 THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
3 SOFTWARE CORPORATION ("PARALLAX").  PARALLAX, IN DISTRIBUTING THE CODE TO
4 END-USERS, AND SUBJECT TO ALL OF THE TERMS AND CONDITIONS HEREIN, GRANTS A
5 ROYALTY-FREE, PERPETUAL LICENSE TO SUCH END-USERS FOR USE BY SUCH END-USERS
6 IN USING, DISPLAYING,  AND CREATING DERIVATIVE WORKS THEREOF, SO LONG AS
7 SUCH USE, DISPLAY OR CREATION IS FOR NON-COMMERCIAL, ROYALTY OR REVENUE
8 FREE PURPOSES.  IN NO EVENT SHALL THE END-USER USE THE COMPUTER CODE
9 CONTAINED HEREIN FOR REVENUE-BEARING PURPOSES.  THE END-USER UNDERSTANDS
10 AND AGREES TO THE TERMS HEREIN AND ACCEPTS THE SAME BY USE OF THIS FILE.  
11 COPYRIGHT 1993-1999 PARALLAX SOFTWARE CORPORATION.  ALL RIGHTS RESERVED.
12 */
13 #ifndef __FXDPMI_H__
14 #define __FXDPMI_H__
15
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19
20 #ifndef __3DFX_H__
21 #  include "3dfx.h"
22 #endif
23
24 /*
25 ** type definitions
26 */
27 typedef FxI16 DpmiSelector_t;
28
29 typedef struct
30 {
31   FxI32 EDI;
32   FxI32 ESI;
33   FxI32 EBP;
34   FxI32 reserved;
35   FxI32 EBX;
36   FxI32 EDX;
37   FxI32 ECX;
38   FxI32 EAX;
39   FxI16 flags;
40   FxI16 ES, DS, FS, GS, IP, CS, SP, SS;
41 } DpmiRMI;
42
43 /*
44 ** function prototypes
45 */
46 FxU32   DpmiMapPhysicalToLinear( FxU32 paddr, FxU32 length );
47 void   *DpmiAllocDosMem( FxU16 size, DpmiSelector_t *pSel );
48 FxBool  DpmiFreeDosMem( DpmiSelector_t sel );
49
50 void    DpmiExecuteRMI( DpmiRMI *data );
51
52 #ifdef __cplusplus
53 }
54 #endif
55
56 #endif