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