From f299bdcac913cf55e25219742bab07051341fc97 Mon Sep 17 00:00:00 2001 From: Robin Jones Date: Wed, 17 Jul 2024 23:01:22 +0100 Subject: [PATCH] Rom info improvements (controller pak) (#123) ## Description Show whether a ROM supports (or requires) a controller pak Builds on #122 ## Motivation and Context ## How Has This Been Tested? ## Screenshots ![image](https://github.com/Polprzewodnikowy/N64FlashcartMenu/assets/11439699/2a83965e-c92a-408f-bb9e-af693b63f738) ![image](https://github.com/Polprzewodnikowy/N64FlashcartMenu/assets/11439699/e9bb0d12-6ec0-4737-80f8-62bfa75944cb) ![image](https://github.com/Polprzewodnikowy/N64FlashcartMenu/assets/11439699/0897f55f-fb01-4bbe-b6d6-b51aaff6e13c) ## Types of changes - [x] Improvement (non-breaking change that adds a new feature) - [ ] Bug fix (fixes an issue) - [ ] Breaking change (breaking change) - [ ] Config and build (change in the configuration and build system, has no impact on code or features) ## Checklist: - [ ] My code follows the code style of this project. - [ ] My change requires a change to the documentation. - [ ] I have updated the documentation accordingly. - [ ] I have added tests to cover my changes. - [ ] All new and existing tests passed. Signed-off-by: GITHUB_USER --- src/menu/views/load_rom.c | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/src/menu/views/load_rom.c b/src/menu/views/load_rom.c index ee60b4a7..c408b47c 100644 --- a/src/menu/views/load_rom.c +++ b/src/menu/views/load_rom.c @@ -66,16 +66,16 @@ static const char *format_rom_destination_market (rom_destination_type_t market_ } } -static const char *format_rom_save_type (rom_save_type_t save_type) { +static const char *format_rom_save_type (rom_save_type_t save_type, bool supports_cpak) { switch (save_type) { - case SAVE_TYPE_NONE: return "None"; - case SAVE_TYPE_EEPROM_4KBIT: return "EEPROM 4kbit"; - case SAVE_TYPE_EEPROM_16KBIT: return "EEPROM 16kbit"; - case SAVE_TYPE_SRAM_256KBIT: return "SRAM 256kbit"; - case SAVE_TYPE_SRAM_BANKED: return "SRAM 768kbit / 3 banks"; - case SAVE_TYPE_SRAM_1MBIT: return "SRAM 1Mbit"; - case SAVE_TYPE_FLASHRAM_1MBIT: return "FlashRAM 1Mbit"; - case SAVE_TYPE_FLASHRAM_PKST2: return "FlashRAM (Pokemon Stadium 2)"; + case SAVE_TYPE_NONE: return supports_cpak ? "Controller PAK" : "None"; + case SAVE_TYPE_EEPROM_4KBIT: return supports_cpak ? "EEPROM 4kbit | Controller PAK" : "EEPROM 4kbit"; + case SAVE_TYPE_EEPROM_16KBIT: return supports_cpak ? "EEPROM 16kbit | Controller PAK" : "EEPROM 16kbit"; + case SAVE_TYPE_SRAM_256KBIT: return supports_cpak ? "SRAM 256kbit | Controller PAK" : "SRAM 256kbit"; + case SAVE_TYPE_SRAM_BANKED: return supports_cpak ? "SRAM 768kbit / 3 banks | Controller PAK" : "SRAM 768kbit / 3 banks"; + case SAVE_TYPE_SRAM_1MBIT: return supports_cpak ? "SRAM 1Mbit | Controller PAK" : "SRAM 1Mbit"; + case SAVE_TYPE_FLASHRAM_1MBIT: return supports_cpak ? "FlashRAM 1Mbit | Controller PAK" : "FlashRAM 1Mbit"; + case SAVE_TYPE_FLASHRAM_PKST2: return supports_cpak ? "FlashRAM (Pokemon Stadium 2) | Controller PAK" : "FlashRAM (Pokemon Stadium 2)"; default: return "Unknown"; } } @@ -238,16 +238,16 @@ static void draw (menu_t *menu, surface_t *d) { "\n" "\n" "Description:\n None.\n\n\n\n\n\n\n\n" - "Expansion PAK: %s\n" - "Save type: %s\n" - "TV type: %s\n" - "CIC: %s\n" - "GS/AR Cheats: Off\n" - "Patches: Off\n", + "Expansion PAK: %s\n" + "TV type: %s\n" + "CIC: %s\n" + "GS/AR Cheats: Off\n" + "Patches: Off\n" + "Save type: %s\n", format_rom_expansion_pak_info(menu->load.rom_info.features.expansion_pak), - format_rom_save_type(rom_info_get_save_type(&menu->load.rom_info)), format_rom_tv_type(rom_info_get_tv_type(&menu->load.rom_info)), - format_cic_type(rom_info_get_cic_type(&menu->load.rom_info)) + format_cic_type(rom_info_get_cic_type(&menu->load.rom_info)), + format_rom_save_type(rom_info_get_save_type(&menu->load.rom_info), menu->load.rom_info.features.controller_pak) ); component_actions_bar_text_draw(