--- np2/x11/np2.c 2004/06/16 12:50:49 1.18 +++ np2/x11/np2.c 2004/07/26 15:53:26 1.22 @@ -38,6 +38,7 @@ #include "toolwin.h" #include "viewer.h" #include "debugwin.h" +#include "skbdwin.h" #include "commng.h" #include "joymng.h" @@ -68,9 +69,19 @@ NP2OSCFG np2oscfg = { 0, /* F12KEY */ 0, /* MOUSE_SW */ + 0, /* JOYPAD1 */ 0, /* JOYPAD2 */ - { 0, 0, 0, 0 }, /* JOY1BTN */ + { 1, 2, 5, 6 }, /* JOY1BTN */ + { + { 0, 1 }, /* JOYAXISMAP[0] */ + { 0, 1 }, /* JOYAXISMAP[1] */ + }, + { + { 0, 1, 0xff, 0xff }, /* JOYBTNMAP[0] */ + { 0, 1, 0xff, 0xff }, /* JOYBTNMAP[1] */ + }, + { "", "" }, /* JOYDEV */ { COMPORT_MIDI, 0, 0x3e, 19200, "", "", "", "" }, /* mpu */ { @@ -112,7 +123,7 @@ NP2OSCFG np2oscfg = { FALSE, /* shared_pixmap */ }; -BOOL np2running = FALSE; +volatile BOOL np2running = FALSE; BYTE scrnmode = 0; UINT framecnt = 0; @@ -140,7 +151,7 @@ char fontfilename[MAX_PATH] = FONTNAME_D char timidity_cfgfile_path[MAX_PATH]; -BOOL use_shared_pixmap; +BOOL use_shared_pixmap = FALSE; UINT32 @@ -310,7 +321,7 @@ mainloop(void *p) UNUSED(p); if (np2oscfg.NOWAIT) { - joy_flash(); + joymng_sync(); mousemng_callback(); pccore_exec(framecnt == 0); if (np2oscfg.DRAW_SKIP) { @@ -329,7 +340,7 @@ mainloop(void *p) } else if (np2oscfg.DRAW_SKIP) { /* frame skip */ if (framecnt < np2oscfg.DRAW_SKIP) { - joy_flash(); + joymng_sync(); mousemng_callback(); pccore_exec(framecnt == 0); framecnt++; @@ -340,7 +351,7 @@ mainloop(void *p) /* auto skip */ if (waitcnt == 0) { UINT cnt; - joy_flash(); + joymng_sync(); mousemng_callback(); pccore_exec(framecnt == 0); framecnt++; @@ -378,6 +389,9 @@ havemmx(void) { int rv; +#if defined(GCC_CPU_ARCH_AMD64) + rv = 1; +#else /* !GCC_CPU_ARCH_AMD64 */ asm volatile ( "pushf;" "popl %%eax;" @@ -398,7 +412,8 @@ havemmx(void) "andl $0x00800000, %0;" ".nocpuid:" : "=a" (rv)); - +#endif /* GCC_CPU_ARCH_AMD64 */ return rv; } + #endif /* GCC_CPU_ARCH_IA32 */