From e1ae1e879537e203d0fbd0eea25a98d699f9e16e Mon Sep 17 00:00:00 2001 From: Sterophonick <34801996+Sterophonick@users.noreply.github.com> Date: Tue, 20 Aug 2019 12:45:47 -0700 Subject: [PATCH] Update to v2.5 --- SYSTEM/PLUG/arc.mb | Bin 86220 -> 87044 bytes SYSTEM/PLUG/sb.gba | Bin 0 -> 13832 bytes SYSTEM/PLUG/vga.gba | Bin 0 -> 15104 bytes SYSTEM/PLUG/vgl.gba | Bin 0 -> 15104 bytes SYSTEM/PLUG/vgm.gba | Bin 0 -> 15104 bytes source/draw.c | 2 +- source/ezkernel.c | 66 ++++++++++++++++++++++++++++++++------------ source/ezkernel.h | 1 + source/lang.c | 10 +++---- source/setwindow.c | 1 + source/showcht.c | 8 +++--- 11 files changed, 61 insertions(+), 27 deletions(-) create mode 100644 SYSTEM/PLUG/sb.gba create mode 100644 SYSTEM/PLUG/vga.gba create mode 100644 SYSTEM/PLUG/vgl.gba create mode 100644 SYSTEM/PLUG/vgm.gba diff --git a/SYSTEM/PLUG/arc.mb b/SYSTEM/PLUG/arc.mb index 2600c236dd3d492b1b745358696a49a3bd717fc7..68755c3f9b603a23db79bf702dba3065f666c803 100644 GIT binary patch delta 9386 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 delta 8666 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å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 literal 0 HcmV?d00001 diff --git a/SYSTEM/PLUG/vga.gba b/SYSTEM/PLUG/vga.gba new file mode 100644 index 0000000000000000000000000000000000000000..b8026cbbd60b4bb9bdf5f3dc4fb15df9cbe23b3e GIT binary patch literal 15104 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 H*Ps6b(N(X@ literal 0 HcmV?d00001 diff --git a/SYSTEM/PLUG/vgl.gba b/SYSTEM/PLUG/vgl.gba new file mode 100644 index 0000000000000000000000000000000000000000..b8026cbbd60b4bb9bdf5f3dc4fb15df9cbe23b3e GIT binary patch literal 15104 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 H*Ps6b(N(X@ literal 0 HcmV?d00001 diff --git a/SYSTEM/PLUG/vgm.gba b/SYSTEM/PLUG/vgm.gba new file mode 100644 index 0000000000000000000000000000000000000000..b8026cbbd60b4bb9bdf5f3dc4fb15df9cbe23b3e GIT binary patch literal 15104 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 H*Ps6b(N(X@ literal 0 HcmV?d00001 diff --git a/source/draw.c b/source/draw.c index 7d63489..44313ac 100644 --- a/source/draw.c +++ b/source/draw.c @@ -6,7 +6,7 @@ #include #include "lang.h" -#include "hzk12.h" +#include "HZK12.h" #include "asc126.h" diff --git a/source/ezkernel.c b/source/ezkernel.c index a791066..458df4a 100644 --- a/source/ezkernel.c +++ b/source/ezkernel.c @@ -69,6 +69,7 @@ //Second Page for settings //Start Random Game option //Launching .mbz file +//Toggleable cheats in-game char *mod_ee; @@ -101,6 +102,7 @@ u16 gl_select_lang; u16 gl_engine_sel; u16 gl_show_Thumbnail; +u16 gl_toggle_reset; u16 gl_ingame_RTC_open_status; @@ -1277,6 +1279,10 @@ void CheckSwitch(void) if( (gl_show_Thumbnail != 0x0) && (gl_show_Thumbnail != 0x1)) { gl_show_Thumbnail = 0x0; } + gl_toggle_reset = Read_SET_info(14); + if( (gl_toggle_reset != 0x0) && (gl_toggle_reset != 0x1)) { + gl_toggle_reset = 0x0; + } gl_ingame_RTC_open_status = Read_SET_info(13); if( (gl_ingame_RTC_open_status != 0x0) && (gl_ingame_RTC_open_status != 0x1)) { gl_ingame_RTC_open_status = 0x1; @@ -1514,7 +1520,7 @@ u32 IWRAM_CODE LoadEMU2PSRAM(TCHAR *filename,u32 is_EMU) Address=blocknum; while(Address>=0x400000) { Address-=0x400000; - page+=0x8000; + page+=0x800; } SetPSRampage(page); dmaCopy((void*)pReadCache,PSRAMBase_S98 + rom_start_address + Address, 0x20000); @@ -1550,6 +1556,7 @@ void save_set_info_SELECT(void) SET_info_buffer[address] = Read_SET_info(address); } SET_info_buffer[12] = gl_show_Thumbnail; + SET_info_buffer[14] = gl_toggle_reset; //save to nor Save_SET_info(SET_info_buffer,0x200); } @@ -1757,6 +1764,8 @@ int main(void) u32 shift; u32 short_filename=0; u8 error_num; + gl_show_Thumbnail = Read_SET_info(12); + gl_toggle_reset = Read_SET_info(14); gl_currentpage = 0x8002 ;//kernel mode SetMode (MODE_3 | BG2_ENABLE ); SD_Disable(); @@ -1821,6 +1830,16 @@ int main(void) memset(pNorFS,00,sizeof(FM_NOR_FS)*MAX_NOR); Save_NOR_info(pNorFS,sizeof(FM_NOR_FS)*MAX_NOR); } + else { + VBlankIntrWait(); + scanKeys(); + if(keysDownRepeat() & KEY_L || keysDown() & KEY_L) + { + page_num = NOR_list; + goto load_file; + } + } + refind_file: if(page_num== SD_list) { folder_total = 0; @@ -2113,12 +2132,23 @@ int main(void) Show_MENU_btn(); u8 MENU_line = 0; u8 re_menu=1; - u8 MENU_max = 0; + u8 MENU_max = 1; + u16 name_color = 0; while(1) { if(re_menu == 1) { Show_Extra_Menu(MENU_line); + if(MENU_line== 1) { + name_color = gl_color_selected; + } + else { + name_color = gl_color_text; + } + if(gl_toggle_reset) + DrawHZText12("(ON)", 32, 60+(6*13), 44, name_color, 1); + else + DrawHZText12("(OFF)", 32, 60+(6*13), 44, name_color, 1); re_menu=0; } re_menu = 0; @@ -2131,20 +2161,12 @@ int main(void) MENU_line++; re_menu=1; } - else if(MENU_line == MENU_max) { - MENU_line=0; - re_menu=1; - } } else if(keysdown & KEY_UP) { - if (MENU_line ) { + if (MENU_line > 0) { MENU_line--; re_menu=1; } - else if(MENU_line == 0) { - MENU_line=MENU_max; - re_menu=1; - } } else if(keysup & KEY_B) { gl_cheat_count = 0; @@ -2161,10 +2183,17 @@ int main(void) gl_show_Thumbnail = !gl_show_Thumbnail; save_set_info_SELECT(); updata=1; - Refresh_filename(show_offset,file_select,updata,gl_show_Thumbnail&&is_GBA); - goto refind_file; + Refresh_filename(show_offset,file_select,updata,gl_show_Thumbnail&&is_GBA); + goto refind_file; } else if(MENU_line==1) { + gl_toggle_reset = !gl_toggle_reset; + save_set_info_SELECT(); + updata=1; + Refresh_filename(show_offset,file_select,updata,gl_show_Thumbnail&&is_GBA); + goto refind_file; + } + else if(MENU_line==2) { //StartRandomROM(currentpath); } } @@ -2375,6 +2404,9 @@ int main(void) } ShowTime(page_num,page_mode); } //3 +load_file: + + Clear(0, 0, 240, 160, gl_color_cheat_black, 1); DrawHZText12(gl_Loading,0,(240-strlen(gl_Loading)*6)/2,74, gl_color_text,1); u32 gamefilesize=0; @@ -2567,7 +2599,7 @@ int main(void) int bootmode=((is_EMU > 3)&&(is_EMU < 9)) ? ((is_EMU == 6) ? 2 : (is_EMU == 7) ? 4 - : ((is_EMU == 8) ? 5 : 3)) : !key_L; + : ((is_EMU == 8) ? 5 : 3)) : gl_toggle_reset; SetRompageWithHardReset(0x200, bootmode); while(1) { VBlankIntrWait(); @@ -2598,7 +2630,7 @@ int main(void) Send_FATbuffer(FAT_table_buffer,0); GBApatch_Cleanrom(PSRAMBase_S98,gamefilesize); //wait_btn(); - SetRompageWithHardReset(0x200,!key_L); + SetRompageWithHardReset(0x200,gl_toggle_reset); break; case 1://PSRAM BOOT WITH ADDON gl_reset_on = Read_SET_info(1); @@ -2650,7 +2682,7 @@ int main(void) Make_pat_file(pfilename); } //wait_btn(); - SetRompageWithHardReset(0x200,!key_L); + SetRompageWithHardReset(0x200,gl_toggle_reset); break; case 2://WRITE TO NOR CLEAN f_chdir(currentpath);//return to game folder @@ -2717,4 +2749,4 @@ void IWRAM_CODE StartRandomROM(TCHAR path) char* msg; sprintf(msg,"%d",randfile); DrawHZText12(msg,0,3,20, 0x7FFF,1); -} \ No newline at end of file +} diff --git a/source/ezkernel.h b/source/ezkernel.h index 25d0e23..00611d1 100644 --- a/source/ezkernel.h +++ b/source/ezkernel.h @@ -98,6 +98,7 @@ extern u16 gl_color_NORFULL; extern u16 gl_color_btn_clean; u32 Setting_window(void); +extern u16 gl_toggle_reset; u32 LoadRTSfile(TCHAR *filename); diff --git a/source/lang.c b/source/lang.c index eca1c7b..1c8b886 100644 --- a/source/lang.c +++ b/source/lang.c @@ -164,7 +164,7 @@ const char zh_language[]=" LANGUAGE"; const char zh_error_6[]="RTSÎļþ´íÎó"; const char zh_theme_credit[]="SterophonickµÄSimpleLightÖ÷"; -const char zh_theme_credit2[]="î}2.3"; +const char zh_theme_credit2[]="î}2.5"; const char zh_copying_data[]="¸´ÖÆROM ..."; @@ -184,10 +184,9 @@ const char *zh_nor_op[3]={ const char *zh_more_options[2]={ "Çл»ËõÂÔͼ", - "", + "Çл»ÖØÖÃ", }; - //Ó¢ÎÄ const char en_init_error[]="Failed to initialize microSD card."; const char en_power_off[]="Power off the console."; @@ -224,7 +223,7 @@ const char en_ok_btn[]=" OK"; const char en_formatnor_info1[]="Sure? This will be"; const char en_formatnor_info2[]=" about 4 minutes."; -const char en_theme_credit[]="SimpleLight theme 2.3 by"; +const char en_theme_credit[]="SimpleLight theme 2.5 by"; const char en_theme_credit2[]="Sterophonick."; const char en_check_sav[]="Checking Save Data..."; @@ -285,7 +284,8 @@ const char *en_nor_op[3]={ }; const char *en_more_options[2]={ "Toggle thumbnail", - "",//Start Random Game + "Toggle reset", + //Start Random Game }; //--------------------------------------------------------------------------------- diff --git a/source/setwindow.c b/source/setwindow.c index 5035b22..6155ba3 100644 --- a/source/setwindow.c +++ b/source/setwindow.c @@ -1209,6 +1209,7 @@ void save_set_info(void) SET_info_buffer[12] = gl_show_Thumbnail; SET_info_buffer[13] = gl_ingame_RTC_open_status; + SET_info_buffer[14] = gl_toggle_reset; //save to nor Save_SET_info(SET_info_buffer,0x200); diff --git a/source/showcht.c b/source/showcht.c index 7a88eea..46ccbdd 100644 --- a/source/showcht.c +++ b/source/showcht.c @@ -488,13 +488,13 @@ void Show_KEY_val(u32 total,u32 Select,u32 showoffset) if(line== Select) name_color = gl_color_selected; else - name_color = gl_color_text; + name_color = 0x7FFF; u8 select = ((FM_CHT_LINE*)pCHTbuffer)[showoffset+line].select; if( ((FM_CHT_LINE*)pCHTbuffer)[showoffset+line].is_section==1) { - Clear(X_offset+3, Y_offset+line*line_x+4, 4, 4, gl_color_text, 1);//section flag + Clear(X_offset+3, Y_offset+line*line_x+4, 4, 4, 0x7FFF, 1);//section flag sprintf(msg,"%s",((FM_CHT_LINE*)pCHTbuffer)[showoffset+line].LINEname); @@ -833,7 +833,7 @@ void Show_num(u32 totalcount,u32 select) Clear(186, 3, 7*6, 15, gl_color_chtBG, 1); sprintf(msg,"[%03lu/%03lu]",select,totalcount); - DrawHZText12(msg,0,182,3, gl_color_text,1); + DrawHZText12(msg,0,182,3, 0x7FFF,1); } //------------------------------------------------------------------ void Open_cht_file(TCHAR *gamefilename,u32 havecht) @@ -873,7 +873,7 @@ void Open_cht_file(TCHAR *gamefilename,u32 havecht) Get_KEY_val(&gfile,"GameInfo","Name",buffer); sprintf(msg,"%s ",buffer); - DrawHZText12(msg,30,2,4, gl_color_text,1); + DrawHZText12(msg,30,2,4, 0x7FFF,1); u32 all_count = Get_all_Section_val(&gfile); u32 Select = 1;