#include "readpng.h"\r
#include "lprintf.h"\r
#include "common.h"\r
+#include "input.h"\r
#include "emu.h"\r
\r
\r
};\r
\r
\r
+#ifndef UIQ3\r
+\r
static unsigned char menu_font_data[10240];\r
static int menu_text_color = 0xffff; // default to white\r
static int menu_sel_color = -1; // disabled\r
}\r
}\r
\r
-const char *me_region_name(unsigned int code, int auto_order)\r
-{\r
- static const char *names[] = { "Auto", " Japan NTSC", " Japan PAL", " USA", " Europe" };\r
- static const char *names_short[] = { "", " JP", " JP", " US", " EU" };\r
- int u, i = 0;\r
- if (code) {\r
- code <<= 1;\r
- while((code >>= 1)) i++;\r
- if (i > 4) return "unknown";\r
- return names[i];\r
- } else {\r
- static char name[24];\r
- strcpy(name, "Auto:");\r
- for (u = 0; u < 3; u++) {\r
- i = 0; code = ((auto_order >> u*4) & 0xf) << 1;\r
- while((code >>= 1)) i++;\r
- strcat(name, names_short[i]);\r
- }\r
- return name;\r
- }\r
-}\r
-\r
// ------------ debug menu ------------\r
\r
#include <sys/stat.h>\r
#include <sys/types.h>\r
\r
-#include <Pico/Pico.h>\r
-#include <Pico/Debug.h>\r
+#include <pico/pico.h>\r
+#include <pico/debug.h>\r
\r
void SekStepM68k(void);\r
\r
+static void mplayer_loop(void)\r
+{\r
+ emu_startSound();\r
+\r
+ while (1)\r
+ {\r
+ PDebugZ80Frame();\r
+ if (in_menu_wait_any(0) & PBTN_NORTH) break;\r
+ emu_waitSound();\r
+ }\r
+\r
+ emu_endSound();\r
+}\r
+\r
static void draw_text_debug(const char *str, int skip, int from)\r
{\r
const char *p;\r
}\r
menu_draw_end();\r
\r
- inp = read_buttons(BTN_EAST|BTN_SOUTH|BTN_WEST|BTN_L|BTN_R|BTN_UP|BTN_DOWN|BTN_LEFT|BTN_RIGHT);\r
- if (inp & BTN_SOUTH) return;\r
- if (inp & BTN_L) { mode--; if (mode < 0) mode = 3; }\r
- if (inp & BTN_R) { mode++; if (mode > 3) mode = 0; }\r
+ inp = in_menu_wait(PBTN_EAST|PBTN_MBACK|PBTN_WEST|PBTN_NORTH|PBTN_L|PBTN_R|PBTN_UP|PBTN_DOWN|PBTN_LEFT|PBTN_RIGHT);\r
+ if (inp & PBTN_MBACK) return;\r
+ if (inp & PBTN_L) { mode--; if (mode < 0) mode = 3; }\r
+ if (inp & PBTN_R) { mode++; if (mode > 3) mode = 0; }\r
switch (mode)\r
{\r
case 0:\r
- if (inp & BTN_EAST) SekStepM68k();\r
- if ((inp & (BTN_WEST|BTN_LEFT)) == (BTN_WEST|BTN_LEFT)) {\r
+ if (inp & PBTN_EAST) SekStepM68k();\r
+ if (inp & PBTN_NORTH) {\r
+ while (inp & PBTN_NORTH) inp = in_menu_wait_any(-1);\r
+ mplayer_loop();\r
+ }\r
+ if ((inp & (PBTN_WEST|PBTN_LEFT)) == (PBTN_WEST|PBTN_LEFT)) {\r
mkdir("dumps", 0777);\r
PDebugDumpMem();\r
- while (inp & BTN_WEST) inp = read_buttons_async(BTN_WEST);\r
+ while (inp & PBTN_WEST) inp = in_menu_wait_any(-1);\r
dumped = 1;\r
}\r
break;\r
case 1:\r
- if (inp & BTN_LEFT) PicoDrawMask ^= PDRAW_LAYERB_ON;\r
- if (inp & BTN_RIGHT) PicoDrawMask ^= PDRAW_LAYERA_ON;\r
- if (inp & BTN_DOWN) PicoDrawMask ^= PDRAW_SPRITES_LOW_ON;\r
- if (inp & BTN_UP) PicoDrawMask ^= PDRAW_SPRITES_HI_ON;\r
- if (inp & BTN_EAST) {\r
+ if (inp & PBTN_LEFT) PicoDrawMask ^= PDRAW_LAYERB_ON;\r
+ if (inp & PBTN_RIGHT) PicoDrawMask ^= PDRAW_LAYERA_ON;\r
+ if (inp & PBTN_DOWN) PicoDrawMask ^= PDRAW_SPRITES_LOW_ON;\r
+ if (inp & PBTN_UP) PicoDrawMask ^= PDRAW_SPRITES_HI_ON;\r
+ if (inp & PBTN_EAST) {\r
PsndOut = NULL; // just in case\r
PicoSkipFrame = 1;\r
PicoFrame();\r
PicoSkipFrame = 0;\r
- while (inp & BTN_EAST) inp = read_buttons_async(BTN_EAST);\r
+ while (inp & PBTN_EAST) inp = in_menu_wait_any(-1);\r
}\r
break;\r
case 3:\r
- if (inp & BTN_DOWN) spr_offs++;\r
- if (inp & BTN_UP) spr_offs--;\r
+ if (inp & PBTN_DOWN) spr_offs++;\r
+ if (inp & PBTN_UP) spr_offs--;\r
if (spr_offs < 0) spr_offs = 0;\r
break;\r
}\r
}\r
}\r
\r
+#endif // !UIQ3\r
+\r
+// ------------ util ------------\r
+\r
+const char *me_region_name(unsigned int code, int auto_order)\r
+{\r
+ static const char *names[] = { "Auto", " Japan NTSC", " Japan PAL", " USA", " Europe" };\r
+ static const char *names_short[] = { "", " JP", " JP", " US", " EU" };\r
+ int u, i = 0;\r
+ if (code) {\r
+ code <<= 1;\r
+ while((code >>= 1)) i++;\r
+ if (i > 4) return "unknown";\r
+ return names[i];\r
+ } else {\r
+ static char name[24];\r
+ strcpy(name, "Auto:");\r
+ for (u = 0; u < 3; u++) {\r
+ i = 0; code = ((auto_order >> u*4) & 0xf) << 1;\r
+ while((code >>= 1)) i++;\r
+ strcat(name, names_short[i]);\r
+ }\r
+ return name;\r
+ }\r
+}\r
+\r
\r