--- np2/x11/np2.h 2003/11/23 12:45:43 1.2 +++ np2/x11/np2.h 2008/03/13 16:27:39 1.18 @@ -1,3 +1,10 @@ +#ifndef NP2_X11_NP2_H__ +#define NP2_X11_NP2_H__ + +#include + +#include "joymng.h" + typedef struct { BYTE port; BYTE def_en; @@ -21,14 +28,18 @@ typedef struct { BYTE DISPCLK; BYTE KEYBOARD; - BYTE F12COPY; + BYTE F12KEY; BYTE MOUSE_SW; BYTE JOYPAD1; BYTE JOYPAD2; - BYTE JOY1BTN[4]; + BYTE JOY1BTN[JOY_NBUTTON]; + BYTE JOYAXISMAP[2][JOY_NAXIS]; + BYTE JOYBTNMAP[2][JOY_NBUTTON]; + char JOYDEV[2][MAX_PATH]; COMCFG mpu; + COMCFG com[3]; BYTE confirm; @@ -37,19 +48,20 @@ typedef struct { BYTE statsave; BYTE toolwin; BYTE keydisp; + BYTE softkbd; BYTE hostdrv_write; + BYTE jastsnd; BYTE I286SAVE; BYTE snddrv; - char audiodev[MAX_PATH]; char MIDIDEV[2][MAX_PATH]; UINT32 MIDIWAIT; BYTE mouse_move_ratio; - char toolkit[32]; - BYTE disablemmx; + BYTE drawinterp; + BYTE F11KEY; } NP2OSCFG; @@ -66,14 +78,22 @@ enum { MMXFLAG_NOTSUPPORT = 2 }; +enum { + INTERP_NEAREST = 0, + INTERP_TILES = 1, + INTERP_BILINEAR = 2, + INTERP_HYPER = 3 +}; + #ifdef __cplusplus extern "C" { #endif /* np2.c */ -extern BOOL np2running; +extern volatile sig_atomic_t np2running; extern NP2OSCFG np2oscfg; extern BYTE scrnmode; +extern int ignore_fullscreen_mode; extern UINT framecnt; extern UINT waitcnt; @@ -82,12 +102,18 @@ extern UINT framemax; extern BOOL s98logging; extern int s98log_count; +extern int verbose; extern char hddfolder[MAX_PATH]; extern char fddfolder[MAX_PATH]; extern char bmpfilefolder[MAX_PATH]; extern char modulefile[MAX_PATH]; extern char statpath[MAX_PATH]; +extern char fontname[1024]; +extern char fontfilename[MAX_PATH]; + +extern const char np2flagext[]; +extern const char np2resumeext[]; int flagload(const char* ext, const char* title, BOOL force); int flagsave(const char* ext); @@ -96,12 +122,13 @@ void flagdelete(const char* ext); void changescreen(BYTE newmode); void framereset(UINT cnt); void processwait(UINT cnt); +int mainloop(void *); -#if defined(__GNUC__) && (defined(i386) || defined(__i386__)) extern int mmxflag; int havemmx(void); -#endif #ifdef __cplusplus } #endif + +#endif /* NP2_X11_NP2_H__ */