Переглянути джерело

some tweaks for win32 version

git-svn-id: file:///home/notaz/opt/svn/PicoDrive@806 be3aeb3a-fb24-0410-a615-afba39da0efa
notaz 14 роки тому
батько
коміт
ba86b61e50

+ 12 - 11
platform/common/input.c

@@ -4,6 +4,7 @@
 
 #include "input.h"
 #include "plat.h"
+#include "lprintf.h"
 #include "../linux/in_evdev.h"
 #include "../gp2x/in_gp2x.h"
 #include "../win32/in_vk.h"
@@ -90,7 +91,7 @@ void in_register(const char *nname, int drv_id, int drv_fd_hnd, void *drv_data,
 		for (i = 0; i < IN_MAX_DEVS; i++)
 			if (!in_devices[i].probed) break;
 		if (i >= IN_MAX_DEVS) {
-			printf("input: too many devices, can't add %s\n", name);
+			lprintf("input: too many devices, can't add %s\n", name);
 			return;
 		}
 		in_free(&in_devices[i]);
@@ -112,7 +113,7 @@ void in_register(const char *nname, int drv_id, int drv_fd_hnd, void *drv_data,
 	if (i + 1 > in_dev_count)
 		in_dev_count = i + 1;
 
-	printf("input: new device #%d \"%s\"\n", i, name);
+	lprintf("input: new device #%d \"%s\"\n", i, name);
 update:
 	in_devices[i].probed = 1;
 	in_devices[i].does_combos = combos;
@@ -227,7 +228,7 @@ void in_probe(void)
 	}
 
 	if (in_have_async_devs)
-		printf("input: async-only devices detected..\n");
+		lprintf("input: async-only devices detected..\n");
 }
 
 /* async update */
@@ -342,7 +343,7 @@ int in_update_keycode(int *dev_id_out, int *is_down_out, int timeout_ms)
 
 	if (count == 0) {
 		/* don't deadlock, fail */
-		printf("input: failed to find devices to read\n");
+		lprintf("input: failed to find devices to read\n");
 		exit(1);
 	}
 
@@ -604,7 +605,7 @@ int in_config_parse_dev(const char *name)
 	}
 
 	if (drv_id < 0) {
-		printf("input: missing driver for %s\n", name);
+		lprintf("input: missing driver for %s\n", name);
 		return -1;
 	}
 
@@ -622,7 +623,7 @@ int in_config_parse_dev(const char *name)
 		for (i = 0; i < IN_MAX_DEVS; i++)
 			if (in_devices[i].name == NULL) break;
 		if (i >= IN_MAX_DEVS) {
-			printf("input: too many devices, can't add %s\n", name);
+			lprintf("input: too many devices, can't add %s\n", name);
 			return -1;
 		}
 	}
@@ -701,7 +702,7 @@ int in_config_bind_key(int dev_id, const char *key, int acts, int bind_type)
 	}
 
 	if (kc < 0 || kc >= dev->key_count) {
-		printf("input: bad key: %s\n", key);
+		lprintf("input: bad key: %s\n", key);
 		return -1;
 	}
 
@@ -762,12 +763,12 @@ void in_debug_dump(void)
 {
 	int i;
 
-	printf("# drv probed binds name\n");
+	lprintf("# drv probed binds name\n");
 	for (i = 0; i < IN_MAX_DEVS; i++) {
 		in_dev_t *d = &in_devices[i];
 		if (!d->probed && d->name == NULL && d->binds == NULL)
 			continue;
-		printf("%d %3d %6c %5c %s\n", i, d->drv_id, d->probed ? 'y' : 'n',
+		lprintf("%d %3d %6c %5c %s\n", i, d->drv_id, d->probed ? 'y' : 'n',
 			d->binds ? 'y' : 'n', d->name);
 	}
 }
@@ -830,12 +831,12 @@ int main(void)
 	while (1) {
 		int dev = 0, down;
 		ret = in_update_keycode(&dev, &down);
-		printf("#%i: %i %i (%s)\n", dev, down, ret, in_get_key_name(dev, ret));
+		lprintf("#%i: %i %i (%s)\n", dev, down, ret, in_get_key_name(dev, ret));
 	}
 #else
 	while (1) {
 		ret = in_menu_wait_any();
-		printf("%08x\n", ret);
+		lprintf("%08x\n", ret);
 	}
 #endif
 

+ 1 - 1
platform/win32/Makefile

@@ -15,7 +15,7 @@ STRIP = $(CROSS)strip
 DEFINES = _UNZIP_SUPPORT IN_VK
 CFLAGS += -O2 -Wall -falign-functions=2 -ffast-math
 CFLAGS += -I../.. -I. -I../../zlib/ -Idirectx/include/
-LDFLAGS += -L. -Ldirectx/lib/ -lgdi32 -lcomdlg32 -lddraw -ldsound -ldxguid
+LDFLAGS += -mwindows -L. -Ldirectx/lib/ -lgdi32 -lcomdlg32 -lddraw -ldsound -ldxguid
 
 # frontend
 OBJS += main.o plat.o direct.o dsnd.o in_vk.o

+ 4 - 0
platform/win32/in_vk.c

@@ -216,6 +216,10 @@ static const struct {
 	{ 'D',		IN_BINDTYPE_PLAYER12, 5 },	/* C */
 	{ 'A',		IN_BINDTYPE_PLAYER12, 6 },	/* A */
 	{ VK_RETURN,	IN_BINDTYPE_PLAYER12, 7 },
+	{ 'E',		IN_BINDTYPE_PLAYER12, 8 },	/* Z */
+	{ 'W',		IN_BINDTYPE_PLAYER12, 9 },	/* Y */
+	{ 'Q',		IN_BINDTYPE_PLAYER12,10 },	/* X */
+	{ 'R',		IN_BINDTYPE_PLAYER12,11 },	/* M */
 /*
 	{ BTN_SELECT,	IN_BINDTYPE_EMU, PEVB_MENU },
 //	{ BTN_Y,	IN_BINDTYPE_EMU, PEVB_SWITCH_RND },

+ 2 - 2
platform/win32/plat.c

@@ -41,7 +41,7 @@ void plat_wait_till_us(unsigned int us)
 {
 	int msdiff = (int)(us - plat_get_ticks_us()) / 1000;
 	if (msdiff > 6)
-;//		Sleep(msdiff - 6);
+		Sleep(msdiff - 6);
 	while (plat_get_ticks_us() < us)
 		;
 }
@@ -216,7 +216,7 @@ const char *plat_get_credits(void)
 		"Chui: Fame/C\n"
 		"NJ: CZ80\n"
 		"MAME devs: YM2612, SN76496 and SH2 cores\n"
-		"Stéphane Dallongeville: base of Fame/C (C68K), CZ80\n\n"
+		"Stéphane Dallongeville: base of Fame/C (C68K), CZ80\n\n"
 		"Special thanks (ideas, valuable information and stuff):\n"
 		"Charles MacDonald, Eke, Exophase, Haze, Lordus, Nemesis,\n"
 		"Pierpaolo Prazzoli, Rokas, Steve Snake, Tasco Deluxe.\n";

+ 1 - 0
platform/win32/readme.txt

@@ -36,6 +36,7 @@ Enter:  Start
 A:      A
 S:      B           red button
 D:      C           pen push
+Q,W,E:  X,Y,Z
 TAB:            (reset)
 Esc:           (load ROM)
 Arrows:          D-pad