X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=platform%2Fgizmondo%2Femu.c;h=3a5c23cbe7ef85e57a1fdd8a7ab8ec36a694fa87;hb=d34a42f93fdb8e0dc66875a08571cae2135b14cf;hp=ee5a1058c5ed8b327f037e68777b6309f379deea;hpb=ca482e5de8bacb70db55f43afe02f93fe6fe3f16;p=picodrive.git diff --git a/platform/gizmondo/emu.c b/platform/gizmondo/emu.c index ee5a105..3a5c23c 100644 --- a/platform/gizmondo/emu.c +++ b/platform/gizmondo/emu.c @@ -16,7 +16,7 @@ #include "giz.h" #include "asm_utils.h" -#include +#include #ifdef BENCHMARK #define OSD_FPS_X 220 @@ -26,8 +26,6 @@ // main 300K gfx-related buffer. Used by menu and renderers. unsigned char gfx_buffer[321*240*2*2]; -char romFileName[MAX_PATH]; -int engineState; unsigned char *PicoDraw2FB = gfx_buffer; // temporary buffer for alt renderer ( (8+320)*(8+240+8) ) int reset_timing = 0; @@ -40,8 +38,9 @@ static int snd_cbuf_samples = 0, snd_all_samples = 0; static void blit(const char *fps, const char *notice); static void clearArea(int full); -void emu_noticeMsgUpdated(void) +void plat_status_msg(const char *format, ...) { + /* TODO */ noticeMsgTime = GetTickCount(); } @@ -390,10 +389,10 @@ static void RunEvents(unsigned int which) { int keys; blit("", (which & 0x1000) ? "LOAD STATE? (PLAY=yes, STOP=no)" : "OVERWRITE SAVE? (PLAY=yes, STOP=no)"); - while( !((keys = Framework_PollGetButtons()) & (BTN_PLAY|BTN_STOP)) ) + while( !((keys = Framework_PollGetButtons()) & (PBTN_PLAY|PBTN_STOP)) ) Sleep(50); - if (keys & BTN_STOP) do_it = 0; - while( ((keys = Framework_PollGetButtons()) & (BTN_PLAY|BTN_STOP)) ) // wait for release + if (keys & PBTN_STOP) do_it = 0; + while( ((keys = Framework_PollGetButtons()) & (PBTN_PLAY|PBTN_STOP)) ) // wait for release Sleep(50); clearArea(0); } @@ -448,40 +447,13 @@ static void updateKeys(void) static unsigned int prevEvents = 0; int i; + /* FIXME: port to input fw, merge with emu.c:emu_update_input() */ keys = Framework_PollGetButtons(); - if (keys & BTN_HOME) + if (keys & PBTN_HOME) engineState = PGS_Menu; keys &= CONFIGURABLE_KEYS; - for (i = 0; i < 32; i++) - { - if (keys & (1 << i)) - { - int pl, acts = currentConfig.KeyBinds[i]; - if (!acts) continue; - pl = (acts >> 16) & 1; - if (kb_combo_keys & (1 << i)) - { - int u = i+1, acts_c = acts & kb_combo_acts; - // let's try to find the other one - if (acts_c) { - for (; u < 32; u++) - if ( (keys & (1 << u)) && (currentConfig.KeyBinds[u] & acts_c) ) { - allActions[pl] |= acts_c & currentConfig.KeyBinds[u]; - keys &= ~((1 << i) | (1 << u)); - break; - } - } - // add non-combo actions if combo ones were not found - if (!acts_c || u == 32) - allActions[pl] |= acts & ~kb_combo_acts; - } else { - allActions[pl] |= acts; - } - } - } - PicoPad[0] = allActions[0] & 0xfff; PicoPad[1] = allActions[1] & 0xfff; @@ -550,7 +522,6 @@ void emu_Loop(void) else PicoOpt&=~0x4000; Pico.m.dirtyPal = 1; oldmodes = ((Pico.video.reg[12]&1)<<2) ^ 0xc; - emu_findKeyBindCombos(); // pal/ntsc might have changed, reset related stuff target_fps = Pico.m.pal ? 50 : 60;