mirror of
https://github.com/RaySollium99/libpicofe.git
synced 2025-09-05 06:47:45 -04:00
bugfix/improvement
git-svn-id: file:///home/notaz/opt/svn/PicoDrive/platform@290 be3aeb3a-fb24-0410-a615-afba39da0efa
This commit is contained in:
parent
4b8f4f3c0d
commit
c93fb19e8f
3 changed files with 33 additions and 8 deletions
16
gp2x/emu.c
16
gp2x/emu.c
|
@ -104,12 +104,23 @@ static void find_combos(void)
|
|||
combo_keys = combo_acts = 0;
|
||||
for (act = 0; act < 32; act++)
|
||||
{
|
||||
int keyc = 0;
|
||||
int keyc = 0, keyc2 = 0;
|
||||
if (act == 16 || act == 17) continue; // player2 flag
|
||||
for (u = 0; u < 32; u++)
|
||||
if (act > 17)
|
||||
{
|
||||
for (u = 0; u < 32; u++)
|
||||
if (currentConfig.KeyBinds[u] & (1 << act)) keyc++;
|
||||
}
|
||||
else
|
||||
{
|
||||
for (u = 0; u < 32; u++)
|
||||
if ((currentConfig.KeyBinds[u] & 0x30000) == 0 && // pl. 1
|
||||
(currentConfig.KeyBinds[u] & (1 << act))) keyc++;
|
||||
for (u = 0; u < 32; u++)
|
||||
if ((currentConfig.KeyBinds[u] & 0x30000) == 1 && // pl. 2
|
||||
(currentConfig.KeyBinds[u] & (1 << act))) keyc2++;
|
||||
if (keyc2 > keyc) keyc = keyc2;
|
||||
}
|
||||
if (keyc > 1)
|
||||
{
|
||||
// loop again and mark those keys and actions as combo
|
||||
|
@ -122,6 +133,7 @@ static void find_combos(void)
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
// printf("combo keys/acts: %08x %08x\n", combo_keys, combo_acts);
|
||||
}
|
||||
|
||||
|
|
17
psp/emu.c
17
psp/emu.c
|
@ -794,12 +794,23 @@ static void find_combos(void)
|
|||
combo_keys = combo_acts = 0;
|
||||
for (act = 0; act < 32; act++)
|
||||
{
|
||||
int keyc = 0;
|
||||
int keyc = 0, keyc2 = 0;
|
||||
if (act == 16 || act == 17) continue; // player2 flag
|
||||
for (u = 0; u < 32; u++)
|
||||
if (act > 17)
|
||||
{
|
||||
for (u = 0; u < 32; u++)
|
||||
if (currentConfig.KeyBinds[u] & (1 << act)) keyc++;
|
||||
}
|
||||
else
|
||||
{
|
||||
for (u = 0; u < 32; u++)
|
||||
if ((currentConfig.KeyBinds[u] & 0x30000) == 0 && // pl. 1
|
||||
(currentConfig.KeyBinds[u] & (1 << act))) keyc++;
|
||||
for (u = 0; u < 32; u++)
|
||||
if ((currentConfig.KeyBinds[u] & 0x30000) == 1 && // pl. 2
|
||||
(currentConfig.KeyBinds[u] & (1 << act))) keyc2++;
|
||||
if (keyc2 > keyc) keyc = keyc2;
|
||||
}
|
||||
if (keyc > 1)
|
||||
{
|
||||
// loop again and mark those keys and actions as combo
|
||||
|
@ -867,6 +878,8 @@ void emu_Loop(void)
|
|||
sound_prepare();
|
||||
}
|
||||
|
||||
sceDisplayWaitVblankStart();
|
||||
|
||||
// loop?
|
||||
while (engineState == PGS_Running)
|
||||
{
|
||||
|
|
|
@ -991,7 +991,7 @@ static void menu_opt3_cust_draw(const menu_entry *entry, int x, int y, void *par
|
|||
char *val = " never";
|
||||
if (currentConfig.EmuOpt & 0x2000)
|
||||
val = (currentConfig.EmuOpt & 0x10000) ? "sometimes" : " always";
|
||||
text_out16(x, y, "Wait for vsync %s", val);
|
||||
text_out16(x, y, "Wait for vsync (slow) %s", val);
|
||||
break;
|
||||
}
|
||||
default: break;
|
||||
|
@ -1045,7 +1045,7 @@ static void draw_dispmenu_options(int menu_sel)
|
|||
static void dispmenu_loop_options(void)
|
||||
{
|
||||
static int menu_sel = 0;
|
||||
int menu_sel_max, is_32col = 0;
|
||||
int menu_sel_max, is_32col = (Pico.video.reg[12]&1)^1;
|
||||
unsigned long inp = 0;
|
||||
menu_id selected_id;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue