mirror of https://github.com/parasyte/alt64
Make user interface much more responsive
things werent being cleared correctly or displayed correctly. Mempack menu is still laggy but it pops up first try
This commit is contained in:
parent
7f472a3266
commit
aa1af6a8cc
129
src/main.c
129
src/main.c
|
@ -49,6 +49,9 @@
|
|||
#include "menu.h"
|
||||
#include "cic.h"
|
||||
|
||||
#define ED64PLUS
|
||||
#define USE_TRUETYPE
|
||||
|
||||
#ifdef ED64PLUS
|
||||
#define ED64_FIRMWARE_PATH "ED64P"
|
||||
#else
|
||||
|
@ -1135,7 +1138,6 @@ void loadgbrom(display_context_t disp, TCHAR *rom_path)
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
void loadmsx2rom(display_context_t disp, TCHAR *rom_path)
|
||||
{
|
||||
|
||||
|
@ -1319,7 +1321,7 @@ void loadnesrom(display_context_t disp, TCHAR *rom_path)
|
|||
f_close(&romfile);
|
||||
|
||||
boot_cic = CIC_6102;
|
||||
boot_save = 2; //For new neon64
|
||||
boot_save = 2; //SRAM
|
||||
force_tv = 0; //no force
|
||||
cheats_on = 0; //cheats off
|
||||
checksum_fix_on = 0;
|
||||
|
@ -2340,7 +2342,11 @@ void drawTextInput(display_context_t disp, char *msg)
|
|||
}
|
||||
|
||||
void drawConfirmBox(display_context_t disp)
|
||||
{
|
||||
{ while (!(disp = display_lock()))
|
||||
;
|
||||
new_scroll_pos(&cursor, &page, MAX_LIST, count);
|
||||
clearScreen(disp); //part clear?
|
||||
display_dir(list, cursor, page, MAX_LIST, count, disp);
|
||||
drawBoxNumber(disp, 5);
|
||||
display_show(disp);
|
||||
|
||||
|
@ -2361,8 +2367,14 @@ void drawConfirmBox(display_context_t disp)
|
|||
}
|
||||
|
||||
void drawShortInfoBox(display_context_t disp, char *text, u8 mode)
|
||||
{
|
||||
{ while (!(disp = display_lock()))
|
||||
;
|
||||
new_scroll_pos(&cursor, &page, MAX_LIST, count);
|
||||
clearScreen(disp); //part clear?
|
||||
display_dir(list, cursor, page, MAX_LIST, count, disp);
|
||||
|
||||
if (mode == 0)
|
||||
|
||||
drawBoxNumber(disp, 7);
|
||||
else if (mode == 1)
|
||||
drawBoxNumber(disp, 8);
|
||||
|
@ -2787,7 +2799,7 @@ void drawRomConfigBox(display_context_t disp, int line)
|
|||
rom_config[0]--;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
drawBoxNumber(disp, 6);
|
||||
|
||||
drawConfigSelection(disp, rom_config[0]);
|
||||
|
@ -3025,6 +3037,11 @@ void drawSet4(display_context_t disp)
|
|||
|
||||
void showAboutScreen(display_context_t disp)
|
||||
{
|
||||
while (!(disp = display_lock()))
|
||||
;
|
||||
new_scroll_pos(&cursor, &page, MAX_LIST, count);
|
||||
clearScreen(disp); //part clear?
|
||||
display_dir(list, cursor, page, MAX_LIST, count, disp);
|
||||
drawBoxNumber(disp, 2);
|
||||
display_show(disp);
|
||||
|
||||
|
@ -3266,7 +3283,7 @@ void handleInput(display_context_t disp, sprite_t *contr)
|
|||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (keys.c[0].down || keys_held.c[0].down || keys_held.c[0].y < -25)
|
||||
{
|
||||
switch (input_mapping)
|
||||
|
@ -3522,7 +3539,11 @@ void handleInput(display_context_t disp, sprite_t *contr)
|
|||
printText(" ", 9, -1, disp);
|
||||
printText("search...", 9, -1, disp);
|
||||
mpk_to_file(disp, input_text, 0);
|
||||
|
||||
while (!(disp = display_lock()))
|
||||
;
|
||||
new_scroll_pos(&cursor, &page, MAX_LIST, count);
|
||||
clearScreen(disp); //part clear?
|
||||
display_dir(list, cursor, page, MAX_LIST, count, disp);
|
||||
drawShortInfoBox(disp, " done", 0);
|
||||
sleep(1000);
|
||||
|
||||
|
@ -3556,6 +3577,12 @@ void handleInput(display_context_t disp, sprite_t *contr)
|
|||
|
||||
input_mapping = mempak_menu;
|
||||
|
||||
while (!(disp = display_lock()))
|
||||
;
|
||||
new_scroll_pos(&cursor, &page, MAX_LIST, count);
|
||||
clearScreen(disp); //part clear?
|
||||
display_dir(list, cursor, page, MAX_LIST, count, disp);
|
||||
|
||||
drawBoxNumber(disp, 2);
|
||||
|
||||
display_show(disp);
|
||||
|
@ -3606,9 +3633,14 @@ void handleInput(display_context_t disp, sprite_t *contr)
|
|||
case mempak_menu:
|
||||
|
||||
//c-up or A
|
||||
drawConfirmBox(disp);
|
||||
//confirm format mpk
|
||||
input_mapping = mpk_format;
|
||||
while (!(disp = display_lock()))
|
||||
;
|
||||
new_scroll_pos(&cursor, &page, MAX_LIST, count);
|
||||
clearScreen(disp); //part clear?
|
||||
display_dir(list, cursor, page, MAX_LIST, count, disp);
|
||||
drawConfirmBox(disp);
|
||||
//confirm format mpk
|
||||
input_mapping = mpk_format;
|
||||
break;
|
||||
|
||||
case char_input:
|
||||
|
@ -3641,21 +3673,26 @@ void handleInput(display_context_t disp, sprite_t *contr)
|
|||
switch (input_mapping)
|
||||
{
|
||||
case file_manager:
|
||||
|
||||
|
||||
if (list[cursor].type != DT_DIR && empty == 0)
|
||||
{
|
||||
{
|
||||
while (!(disp = display_lock()))
|
||||
;
|
||||
new_scroll_pos(&cursor, &page, MAX_LIST, count);
|
||||
clearScreen(disp); //part clear?
|
||||
display_dir(list, cursor, page, MAX_LIST, count, disp);
|
||||
drawBoxNumber(disp, 11);
|
||||
|
||||
display_show(disp);
|
||||
char *part;
|
||||
|
||||
part = malloc(slen(list[cursor].filename));
|
||||
sprintf(part, "%s", list[cursor].filename);
|
||||
part[31] = '\0';
|
||||
|
||||
|
||||
printText(part, 4, 14, disp);
|
||||
|
||||
if (slen(list[cursor].filename) > 31)
|
||||
{
|
||||
{
|
||||
sprintf(part, "%s", list[cursor].filename + 31);
|
||||
part[31] = '\0';
|
||||
printText(part, 4, -1, disp);
|
||||
|
@ -3694,6 +3731,11 @@ void handleInput(display_context_t disp, sprite_t *contr)
|
|||
|
||||
case mpk_format:
|
||||
// format mpk
|
||||
while (!(disp = display_lock()))
|
||||
;
|
||||
new_scroll_pos(&cursor, &page, MAX_LIST, count);
|
||||
clearScreen(disp); //part clear?
|
||||
display_dir(list, cursor, page, MAX_LIST, count, disp);
|
||||
drawBoxNumber(disp, 2);
|
||||
display_show(disp);
|
||||
|
||||
|
@ -3717,6 +3759,11 @@ void handleInput(display_context_t disp, sprite_t *contr)
|
|||
}
|
||||
else
|
||||
{
|
||||
while (!(disp = display_lock()))
|
||||
;
|
||||
new_scroll_pos(&cursor, &page, MAX_LIST, count);
|
||||
clearScreen(disp); //part clear?
|
||||
display_dir(list, cursor, page, MAX_LIST, count, disp);
|
||||
drawShortInfoBox(disp, " done", 0);
|
||||
input_mapping = abort_screen;
|
||||
}
|
||||
|
@ -3734,6 +3781,11 @@ void handleInput(display_context_t disp, sprite_t *contr)
|
|||
|
||||
case mpk_restore:
|
||||
//restore mpk
|
||||
while (!(disp = display_lock()))
|
||||
;
|
||||
new_scroll_pos(&cursor, &page, MAX_LIST, count);
|
||||
clearScreen(disp); //part clear?
|
||||
display_dir(list, cursor, page, MAX_LIST, count, disp);
|
||||
drawBoxNumber(disp, 2);
|
||||
display_show(disp);
|
||||
|
||||
|
@ -3741,7 +3793,11 @@ void handleInput(display_context_t disp, sprite_t *contr)
|
|||
printText(" ", 9, -1, disp);
|
||||
|
||||
file_to_mpk(disp, rom_filename);
|
||||
|
||||
while (!(disp = display_lock()))
|
||||
;
|
||||
new_scroll_pos(&cursor, &page, MAX_LIST, count);
|
||||
clearScreen(disp); //part clear?
|
||||
display_dir(list, cursor, page, MAX_LIST, count, disp);
|
||||
drawShortInfoBox(disp, " done", 0);
|
||||
sleep(1000);
|
||||
|
||||
|
@ -3752,6 +3808,11 @@ void handleInput(display_context_t disp, sprite_t *contr)
|
|||
|
||||
case mpk_quick_backup:
|
||||
//quick-backup
|
||||
while (!(disp = display_lock()))
|
||||
;
|
||||
new_scroll_pos(&cursor, &page, MAX_LIST, count);
|
||||
clearScreen(disp); //part clear?
|
||||
display_dir(list, cursor, page, MAX_LIST, count, disp);
|
||||
drawBoxNumber(disp, 2);
|
||||
display_show(disp);
|
||||
|
||||
|
@ -3760,7 +3821,11 @@ void handleInput(display_context_t disp, sprite_t *contr)
|
|||
printText("search...", 9, -1, disp);
|
||||
|
||||
mpk_to_file(disp, list[cursor].filename, 1); //quick
|
||||
|
||||
while (!(disp = display_lock()))
|
||||
;
|
||||
new_scroll_pos(&cursor, &page, MAX_LIST, count);
|
||||
clearScreen(disp); //part clear?
|
||||
display_dir(list, cursor, page, MAX_LIST, count, disp);
|
||||
drawShortInfoBox(disp, " done", 0);
|
||||
sleep(1000);
|
||||
input_mapping = abort_screen;
|
||||
|
@ -3812,6 +3877,12 @@ void handleInput(display_context_t disp, sprite_t *contr)
|
|||
|
||||
//preload config or file header
|
||||
readRomConfig(disp, rom_filename, name_file);
|
||||
while (!(disp = display_lock()))
|
||||
;
|
||||
new_scroll_pos(&cursor, &page, MAX_LIST, count);
|
||||
clearScreen(disp); //part clear?
|
||||
display_dir(list, cursor, page, MAX_LIST, count, disp);
|
||||
|
||||
|
||||
drawRomConfigBox(disp, 0);
|
||||
display_show(disp);
|
||||
|
@ -3919,7 +3990,14 @@ void handleInput(display_context_t disp, sprite_t *contr)
|
|||
if (!strcmp(extension, "Z64") || !strcmp(extension, "V64") || !strcmp(extension, "N64"))
|
||||
{ //rom
|
||||
//load rom
|
||||
while (!(disp = display_lock()))
|
||||
;
|
||||
new_scroll_pos(&cursor, &page, MAX_LIST, count);
|
||||
clearScreen(disp); //part clear?
|
||||
display_dir(list, cursor, page, MAX_LIST, count, disp);
|
||||
|
||||
drawBoxNumber(disp, 3); //rominfo
|
||||
display_show(disp);
|
||||
|
||||
u16 msg = 0;
|
||||
evd_ulockRegs();
|
||||
|
@ -3981,6 +4059,11 @@ void handleInput(display_context_t disp, sprite_t *contr)
|
|||
case mempak_menu:
|
||||
if (sound_on)
|
||||
playSound(2);
|
||||
while (!(disp = display_lock()))
|
||||
;
|
||||
new_scroll_pos(&cursor, &page, MAX_LIST, count);
|
||||
clearScreen(disp); //part clear?
|
||||
display_dir(list, cursor, page, MAX_LIST, count, disp);
|
||||
|
||||
drawBoxNumber(disp, 4);
|
||||
display_show(disp);
|
||||
|
@ -4047,9 +4130,14 @@ void handleInput(display_context_t disp, sprite_t *contr)
|
|||
case mempak_menu:
|
||||
{
|
||||
//open up charinput screen
|
||||
while (!(disp = display_lock()))
|
||||
;
|
||||
new_scroll_pos(&cursor, &page, MAX_LIST, count);
|
||||
clearScreen(disp); //part clear?
|
||||
input_mapping = char_input;
|
||||
input_text[0] = '\0';
|
||||
graphics_draw_sprite(disp, 0, 0, contr);
|
||||
display_show(disp);
|
||||
break;
|
||||
}
|
||||
case char_input:
|
||||
|
@ -4112,7 +4200,11 @@ void handleInput(display_context_t disp, sprite_t *contr)
|
|||
);
|
||||
|
||||
f_close(&file);
|
||||
|
||||
|
||||
while (!(disp = display_lock()))
|
||||
;
|
||||
drawRomConfigBox(disp, 0);
|
||||
display_show(disp);
|
||||
drawShortInfoBox(disp, " done", 0);
|
||||
toplist_reload = 1;
|
||||
}
|
||||
|
@ -4233,6 +4325,7 @@ void handleInput(display_context_t disp, sprite_t *contr)
|
|||
;
|
||||
|
||||
graphics_set_color(graphics_make_color(0xFF, 0xFF, 0xFF, 0xFF), graphics_make_color(0x00, 0x00, 0x00, 0x00));
|
||||
new_scroll_pos(&cursor, &page, MAX_LIST, count);
|
||||
clearScreen(disp);
|
||||
display_show(disp);
|
||||
|
||||
|
|
Loading…
Reference in New Issue