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