updating win32 port
[picodrive.git] / platform / win32 / GenaDrive / app.h
1 \r
2 #include <stdio.h>\r
3 \r
4 #ifdef _XBOX\r
5 #include <xtl.h>\r
6 #endif\r
7 \r
8 #ifndef _XBOX\r
9 #define WIN32_LEAN_AND_MEAN\r
10 #include <windows.h>\r
11 #include <d3d8.h>\r
12 #endif\r
13 \r
14 #include <d3dx8.h>\r
15 \r
16 #include <Pico/Pico.h>\r
17 \r
18 #define PI 3.14159265f\r
19 \r
20 #define RELEASE(x) if (x) x->Release();  x=NULL;\r
21 \r
22 #ifdef _XBOX\r
23 #define HOME "d:\\"\r
24 #else\r
25 #define HOME ".\\"\r
26 #endif\r
27 \r
28 // Emu.cpp\r
29 extern unsigned short *EmuScreen;\r
30 extern int EmuWidth,EmuHeight;\r
31 int EmuInit();\r
32 void EmuExit();\r
33 int EmuRomLoad(char *name);\r
34 int EmuFrame();\r
35 \r
36 // Input.cpp\r
37 struct Input\r
38 {\r
39   short axis[4];\r
40   unsigned char button[16];\r
41   unsigned char held[16]; // How long has the button been held\r
42   char repeat[16]; // Auto-repeat\r
43 };\r
44 extern struct Input Inp;\r
45 int InputInit();\r
46 void InputExit();\r
47 int InputUpdate();\r
48 int InputLightCal(int cx,int cy,int ux,int uy);\r
49 \r
50 // LightCal.cpp\r
51 int LightCalReset();\r
52 int LightCalUpdate();\r
53 int LightCalRender();\r
54 \r
55 // Loop.cpp\r
56 extern char LoopQuit;\r
57 extern int LoopMode;\r
58 \r
59 int LoopInit();\r
60 void LoopExit();\r
61 int LoopCode();\r
62 //extern "C" int dprintf(char *format, ...);\r
63 extern "C" int dprintf2(char *format, ...);\r
64 \r
65 // Main.cpp\r
66 extern HWND FrameWnd;\r
67 extern int MainWidth,MainHeight;\r
68 extern char AppName[];\r
69 extern void error(char *text);\r
70 \r
71 // Rom.cpp\r
72 extern unsigned char *RomData;\r
73 extern int RomLen;\r
74 extern char RomName[260];\r
75 int RomLoad();\r
76 void RomFree();\r
77 \r
78 // --------------------------------------------\r
79 // Direct.cpp\r
80 extern IDirect3DDevice8 *Device;\r
81 extern IDirect3DSurface8 *DirectBack; // Back Buffer\r
82 int DirectInit();\r
83 int DirectClear(unsigned int colour);\r
84 int DirectScreen();\r
85 int DirectPresent();\r
86 void DirectExit();\r
87 \r
88 // DSound.cpp:\r
89 int DSoundInit();\r
90 void DSoundExit();\r
91 int DSoundUpdate();\r
92 extern short *DSoundNext; // Buffer for next sound data to put in loop\r
93 //extern int DSoundSeg; // Seg length in samples\r
94 void DSoundMute();\r
95 void DSoundUnMute();\r
96 \r
97 // Font.cpp\r
98 int FontInit();\r
99 void FontExit();\r
100 int FontSetColour(unsigned int colour);\r
101 int FontText(WCHAR *,int,int);\r
102 \r
103 // TexScreen.cpp\r
104 extern IDirect3DTexture8 *TexScreen;\r
105 extern int TexWidth,TexHeight;\r
106 int TexScreenInit();\r
107 void TexScreenExit();\r
108 int TexScreenSwizzle();\r
109 int TexScreenLinear();\r