lots of win32 port work
[picodrive.git] / platform / win32 / GenaDrive / app.h
1 \r
2 #include <stdio.h>\r
3 \r
4 #define WIN32_LEAN_AND_MEAN\r
5 #include <windows.h>\r
6 #include <d3d8.h>\r
7 \r
8 #include <d3dx8.h>\r
9 \r
10 #include <Pico/Pico.h>\r
11 \r
12 #define PI 3.14159265f\r
13 \r
14 #define RELEASE(x) if (x) x->Release();  x=NULL;\r
15 \r
16 #ifndef __FUNCTION__\r
17 #define __FUNCTION__ ""\r
18 #endif\r
19 \r
20 #define LOGFAIL() dprintf2("fail: %s %s:%i\n", __FUNCTION__, __FILE__, __LINE__)\r
21 \r
22 \r
23 // Emu.cpp\r
24 extern unsigned short *EmuScreen;\r
25 extern int EmuWidth,EmuHeight;\r
26 extern RECT EmuScreenRect;\r
27 int EmuInit();\r
28 void EmuExit();\r
29 int EmuRomLoad(char *name);\r
30 int EmuFrame();\r
31 \r
32 // Input.cpp\r
33 struct Input\r
34 {\r
35   short axis[4];\r
36   unsigned char button[16];\r
37   unsigned char held[16]; // How long has the button been held\r
38   char repeat[16]; // Auto-repeat\r
39 };\r
40 extern struct Input Inp;\r
41 int InputInit();\r
42 void InputExit();\r
43 int InputUpdate();\r
44 int InputLightCal(int cx,int cy,int ux,int uy);\r
45 \r
46 // Loop.cpp\r
47 extern char LoopQuit,LoopWait,LoopWaiting;\r
48 extern int LoopMode;\r
49 \r
50 int LoopInit();\r
51 void LoopExit();\r
52 int LoopCode();\r
53 //extern "C" int dprintf(char *format, ...);\r
54 extern "C" int dprintf2(char *format, ...);\r
55 \r
56 // Main.cpp\r
57 extern char *romname;\r
58 extern HWND FrameWnd;\r
59 extern RECT FrameRectMy;\r
60 extern int MainWidth,MainHeight;\r
61 extern int lock_to_1_1;\r
62 extern void error(char *text);\r
63 \r
64 // --------------------------------------------\r
65 // Direct.cpp\r
66 extern IDirect3DDevice8 *Device;\r
67 extern IDirect3DSurface8 *DirectBack; // Back Buffer\r
68 int DirectInit();\r
69 int DirectClear(unsigned int colour);\r
70 int DirectScreen();\r
71 int DirectPresent();\r
72 void DirectExit();\r
73 \r
74 // DSound.cpp:\r
75 int DSoundInit();\r
76 void DSoundExit();\r
77 int DSoundUpdate();\r
78 extern short *DSoundNext; // Buffer for next sound data to put in loop\r
79 \r
80 // TexScreen.cpp\r
81 extern IDirect3DTexture8 *TexScreen;\r
82 extern int TexWidth,TexHeight;\r
83 int TexScreenInit();\r
84 void TexScreenExit();\r
85 int TexScreenSwizzle();\r
86 int TexScreenLinear();\r