
<!--- Provide a general summary of your changes in the Title above --> ## Description <!--- Describe your changes in detail --> ### Release Notes 2025-03-31 - **New Features** - Introduced tabs in main menu for ROM favorites and recently played ROM history. - Introduced first run check to ensure users are aware of latest changes. - Introduced ability to turn off GUI loading bar. - BETA_FEATURE: Introduces ROM descriptions from files. - BETA_FEATURE: Enabled setting for fast ROM reboots on the SC64. - Add macOS metadata to hidden files. - Added settings schema version for future change versioning. - Added setting for PAL60 compatibility mode (see breaking changes). - BETA_FEATURE: Added setting for line doublers that need progressive output, enable using "force_progressive_scan" setting in `config.ini`. - **Bug Fixes** - Menu sound FX issues (hissing, popping and white noise). - RTC not showing or setting correct date parameters in certain circumstances. - GB / GBC emulator not saving in certain circumstances. - **Documentation** - Re-orginised and improved user documentation. - Added a lot of doxygen compatible code comments. - Added project license. - **Refactor** - RTC subsystem (align with libDragon improvements). - Boxart images (Deprecates old boxart image folder layout). - Settings (PAL60 compatibility, schema version, fast reboot, first run, progress bar). - **Other** - Updated libDragon SDK. - Updated miniz library. ### Breaking changes * GB /GBC emulator changed save type to SRAM (from FRAM) to improve compatibility with Summercart64 (which only uses H/W compatible FRAM), this may break your ability to load existing saves. * For similar PAL60 functionality, you may need to also enable the new "pal60_compatibility_mode" setting in `config.ini`. ### Current known Issues * The RTC UI requires improvement (awaiting UI developer). * Menu sound FX may not work properly when a 64 Disk Drive is also attached (work around: turn sound FX off). * Fast Rebooting a 64DD disk once will result in a blank screen. Twice will return to menu. This is expected until disk swapping is implemented. * MP3 Player crashes menu if the MP3 file's sample rate is less than 44100 hz. ### Deprecation notices * Autoload ROM's will be deprecated in favor of Fast Reboot in a future menu version. * Old boxart images using filenames for game ID is deprecated and the compatibility mode will be removed in a future release. ## Motivation and Context <!--- What does this sample do? What problem does it solve? --> <!--- If it fixes/closes/resolves an open issue, please link to the issue here --> Works towards next release to main. ## How Has This Been Tested? On a SummerCart64 ## Screenshots <!-- (if appropriate): --> ## Types of changes <!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: --> - [x] Improvement (non-breaking change that adds a new feature) - [x] Bug fix (fixes an issue) - [x] Breaking change (breaking change) - [x] Documentation Improvement - [x] Config and build (change in the configuration and build system, has no impact on code or features) ## Checklist: <!--- Go over all the following points, and put an `x` in all the boxes that apply. --> <!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> - [x] My code follows the code style of this project. - [x] My change requires a change to the documentation. - [x] I have updated the documentation accordingly. - [ ] I have added tests to cover my changes. - [ ] All new and existing tests passed. <!--- It would be nice if you could sign off your contribution by replacing the name with your GitHub user name and GitHub email contact. --> Signed-off-by: GITHUB_USER <GITHUB_USER_EMAIL> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit ## Summary by CodeRabbit - **New Features & Enhancements** - Introduced dynamic history and favorites management for ROM and disk selections with a new tabbed interface. - Added support for autoloading ROMs, 64DD disk emulation, emulator integration, MP3 playback, and custom background images. - Expanded settings options—including PAL60 compatibility and fast ROM reboots—and improved startup behavior with an introductory credits display. - Added a feature to toggle the loading progress bar and enhanced the display of ROM information. - Implemented a bookkeeping system for managing history and favorites, along with new context menu entries for toggling settings. - Added a new user guide for N64FlashcartMenu and introduced a FAQ section addressing common issues. - Enhanced the user interface with new tabs for managing ROM favorites and recently played ROMs. - Introduced first run checks for user awareness of changes. - **Bug Fixes** - Resolved issues related to menu sound effects, RTC date parameters, and saving functionality in the GB/GBC emulator. - **Documentation** - Overhauled and expanded user guides, FAQs, and README materials to provide clearer instructions on ROM configuration, cheats, flashcart support, and new features. - Added detailed documentation comments throughout the codebase to improve clarity and maintainability, including updates to the pull request template and license information. - Included a new section in the CHANGELOG detailing various updates and breaking changes. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: GITHUB_USER <GITHUB_USER_EMAIL> Co-authored-by: Suprapote <111246491+Suprapote@users.noreply.github.com> Co-authored-by: Christopher Bonhage <me@christopherbonhage.com> Co-authored-by: Mateusz Faderewski <sc@mateuszfaderewski.pl> Co-authored-by: Fazana <52551480+FazanaJ@users.noreply.github.com> Co-authored-by: Guillermo Horacio Romero Villa <65469983+E1ite007@users.noreply.github.com> Co-authored-by: Ross Gouldthorpe <github@thegouldfish.co.uk> Co-authored-by: Víctor "IlDucci <IlDucci@users.noreply.github.com> Co-authored-by: XLuma <39510265+XLuma@users.noreply.github.com> Co-authored-by: thekovic <72971433+thekovic@users.noreply.github.com>
3.6 KiB
Initial Setup of an SD Card
First steps
Connect the SD card to your PC and ensure it is properly formatted to be compatible with your flashcart.
WARNING: Filenames are expected to be written in ASCII, with Western Europe characters fully compatible. Other Unicode characters, such as those from Eastern Europe, Russia, Asia or Middle East regions (to name just a few examples) are not fully supported and may not be displayed.
Note: It is advised to use ROM files in the Big Endian (default, also called "non-byteswapped") format. Although the menu auto-converts byteswapped ROM files, the load time will increase.
Preparations for SC64
- FAT32 and EXFAT are fully supported.
- An SD formatted with 128 kiB cluster size is recommended.
- Download the latest
sc64menu.n64
file from the releases page, then put it in the root directory of your SD card. - Place your ROM files on the SD card, in any folder except
menu
. NOTE: byteswapped ROM's will increase load times.
Preparations for other supported flashcarts
- FAT32 recommended.
- An SD formatted with the default cluster size is recommended.
- Download the latest menu file specific for your flashcart and place it in the expected location.
Emulator support
See the Emulators page.
64DD Disk support
See the 64DD page.
So what would the layout of the SD card look like?
SD:\
│
├── sc64menu.n64
│
│
├── menu\
│ │
│ │
│ ├── 64ddipl\
│ │ ├── NDDE0.n64
│ │ ├── NDDJ2.n64
│ │ └── NDXJ0.n64
│ │
│ └── emulators\
│ ├── neon64bu.rom
│ ├── sodium64.z64
│ ├── gb.v64
│ ├── gbc.v64
│ ├── smsPlus64.z64
│ └── Press-F.z64
│
├── (a rom).z64
├── (a rom).n64
├── (some folder with ROMs)\
│ └── (some folder with ROMs)\
| └── (some supported ROM files)
│
├── (some supported ROM files)
|
└── (some folder with 64DD disk images)\
└── (some 64DD disk images)
Save Files
All save files (whether FlashRam
, SRAM
or EEPROM
) will be read from a /saves
folder located in the same directory as the ROM
and they must share the same file name, but use the .sav
extension. .sav
files will be created and modified whenever a ROM file saves to
the "cartridge save memory".
├── (some folder with ROMs)\
├── a_rom.z64
├── b_rom_whatever.n64
└── saves\
├── a_rom.sav
└── b_rom_whatever.sav
Transferring saves from an ED64
If you are transferring a file from a different flashcart, such as the ED64, you must change the file extension to sav
.
For example, a save file called Glover (USA).eep
should have its extension changed to Glover (USA).sav
to work with N64FlashcartMenu.
You may also need to pad/trim the files to their original size:
- For EEPROM 4Kbit games, remove the padding.
- For others, use a tool such as Ninjiteu's N64SaveConverter.
WARNING: Saves created with certain emulators, or created for a different ROM version (as in revisions of the same game) or region (as in between NTSC and PAL versions of a same game) may be incompatible.