mirror of
https://github.com/Polprzewodnikowy/N64FlashcartMenu.git
synced 2024-11-23 11:09:19 +01:00
Merge remote-tracking branch 'upstream/main' into develop-gdb
This commit is contained in:
commit
4af1bac873
79
README.md
79
README.md
@ -1,13 +1,8 @@
|
|||||||
|
![Build](https://github.com/polprzewodnikowy/N64FlashcartMenu/actions/workflows/build.yml/badge.svg)
|
||||||
|
|
||||||
# N64 Flashcart Menu
|
# N64 Flashcart Menu
|
||||||
An open source menu for N64 flashcarts.
|
An open source menu for N64 flashcarts.
|
||||||
|
|
||||||
## Aims
|
|
||||||
* Support as many N64 FlashCarts as possible.
|
|
||||||
* Be open source, using permissive licensed third party licensed libraries.
|
|
||||||
* Be testable, using unit and smoke tests in ares emulated environment.
|
|
||||||
* Encourage active development from community members and N64 FlashCart owners.
|
|
||||||
* Support as many common mods and features as possible.
|
|
||||||
|
|
||||||
|
|
||||||
## Current (notable) menu features
|
## Current (notable) menu features
|
||||||
* Fully Open Source.
|
* Fully Open Source.
|
||||||
@ -21,45 +16,33 @@ An open source menu for N64 flashcarts.
|
|||||||
* Real Time Clock support.
|
* Real Time Clock support.
|
||||||
* Music playback (MP3).
|
* Music playback (MP3).
|
||||||
|
|
||||||
## Video showcase (as of Oct 12 2023)
|
|
||||||
|
### Video showcase (as of Oct 12 2023)
|
||||||
|
|
||||||
[![N64FlashcartMenu Showcase](http://img.youtube.com/vi/6CKImHTifDA/0.jpg)](http://www.youtube.com/watch?v=6CKImHTifDA "N64FlashcartMenu Showcase (Oct 12 2023)")
|
[![N64FlashcartMenu Showcase](http://img.youtube.com/vi/6CKImHTifDA/0.jpg)](http://www.youtube.com/watch?v=6CKImHTifDA "N64FlashcartMenu Showcase (Oct 12 2023)")
|
||||||
|
|
||||||
|
|
||||||
|
## Aims
|
||||||
|
* Support as many N64 FlashCarts as possible.
|
||||||
|
* Be open source, using permissive licensed third party licensed libraries.
|
||||||
|
* Be testable, using unit and smoke tests in ares emulated environment.
|
||||||
|
* Encourage active development from community members and N64 FlashCart owners.
|
||||||
|
* Support as many common mods and features as possible.
|
||||||
|
|
||||||
|
|
||||||
## Getting started
|
## Getting started
|
||||||
|
Using your PC, insert the SD card and ensure it is formatted for compatibility (We recommend FAT32 in most instances).
|
||||||
### 64drive
|
|
||||||
Ensure the cart has the latest [firmware](https://64drive.retroactive.be/support.php) installed.
|
|
||||||
Download the latest `menu.bin` file from the releases page, then put it in the root directory of your SD card.
|
|
||||||
|
|
||||||
### SC64
|
|
||||||
Ensure the cart has the latest [firmware](https://github.com/Polprzewodnikowy/SummerCart64/releases/latest) installed.
|
|
||||||
Download the latest `sc64menu.n64` file from the releases page, then put it in the root directory of your SD card.
|
|
||||||
|
|
||||||
#### 64DD disk support
|
|
||||||
For the ability to load and run 64DD disk images, you need to add the folder `/menu/64ddipl` on the SD card.
|
|
||||||
Download and add the relevant ipl files and rename them before adding them to the folder:
|
|
||||||
- `NDDE0.n64` the US Prototype IPL can be downloaded from [here](https://64dd.org/dumps/64DD_IPL_US_MJR.n64)
|
|
||||||
- `NDXJ0.n64` the JPN Development IPL can be downloaded from [here](https://64dd.org/dumps/64DD_IPL_DEV_H4G.n64)
|
|
||||||
- `NDDJ2.n64` the JPN Retail IPL can be downloaded from [here](https://64dd.org/dumps/N64DD_IPLROM_(J).zip)
|
|
||||||
|
|
||||||
Note: to load an expansion disk (e.g. F-Zero X) browse to the N64 ROM and load it (but not start it) and then browse to the DD expansion file and press the `R` button.
|
|
||||||
|
|
||||||
### ED64 & ED64P
|
|
||||||
Currently not supported, but there is an aim to do so.
|
|
||||||
|
|
||||||
The aim is to replace [Altra64](https://github.com/networkfusion/altra64) and [ED64-UnofficialOS](https://github.com/n64-tools/ED64-UnofficialOS-binaries).
|
|
||||||
|
|
||||||
|
|
||||||
### Common to all flashcarts
|
### ROM Boxart
|
||||||
|
|
||||||
#### ROM Boxart
|
|
||||||
To use boxart, you need to place png files of size 158x112 in the folder `/menu/boxart` on the SD card.
|
To use boxart, you need to place png files of size 158x112 in the folder `/menu/boxart` on the SD card.
|
||||||
Each file must be named according to the 2 letter ROM ID, or 3 letter ROM ID including media type.
|
Each file must be named according to the 2 letter ROM ID, or 3 letter ROM ID including media type.
|
||||||
i.e. for GoldenEye 2 letters, this would be `GE.png`.
|
i.e. for GoldenEye 2 letters, this would be `GE.png`.
|
||||||
i.e. for GoldenEye 3 letters, this would be `NGE.png`.
|
i.e. for GoldenEye 3 letters, this would be `NGE.png`.
|
||||||
A known set of PNG files using 2 letter ID's can be downloaded [here](https://mega.nz/file/6cNGwSqI#8X5ukb65n3YMlGaUtSOGXkKo9HxVnnMOgqn94Epcr7w).
|
A known set of PNG files using 2 letter ID's can be downloaded [here](https://mega.nz/file/6cNGwSqI#8X5ukb65n3YMlGaUtSOGXkKo9HxVnnMOgqn94Epcr7w).
|
||||||
|
|
||||||
#### Emulator support
|
|
||||||
|
### Emulator support
|
||||||
Emulators should be added to the `/menu/emulators` directory on the SD card.
|
Emulators should be added to the `/menu/emulators` directory on the SD card.
|
||||||
|
|
||||||
Menu currently supports the following emulators and associated ROM file names:
|
Menu currently supports the following emulators and associated ROM file names:
|
||||||
@ -69,8 +52,32 @@ Menu currently supports the following emulators and associated ROM file names:
|
|||||||
- **Sega Master System** / **Sega Game Gear** / **Sg1000**: [TotalSMS](https://github.com/ITotalJustice/TotalSMS) - `TotalSMS.z64` (Currently broken)
|
- **Sega Master System** / **Sega Game Gear** / **Sg1000**: [TotalSMS](https://github.com/ITotalJustice/TotalSMS) - `TotalSMS.z64` (Currently broken)
|
||||||
|
|
||||||
|
|
||||||
|
### SC64 Specific
|
||||||
|
- Ensure the cart has the latest [firmware](https://github.com/Polprzewodnikowy/SummerCart64/releases/latest) installed.
|
||||||
|
- Download the latest `sc64menu.n64` file from the releases page, then put it in the root directory of your SD card.
|
||||||
|
|
||||||
|
##### 64DD disk support
|
||||||
|
For the ability to load and run 64DD disk images, you need to add the folder `/menu/64ddipl` on the SD card.
|
||||||
|
Download and add the relevant ipl files and rename them before adding them to the folder:
|
||||||
|
- `NDDE0.n64` the US Prototype IPL can be downloaded from [here](https://64dd.org/dumps/64DD_IPL_US_MJR.n64)
|
||||||
|
- `NDXJ0.n64` the JPN Development IPL can be downloaded from [here](https://64dd.org/dumps/64DD_IPL_DEV_H4G.n64)
|
||||||
|
- `NDDJ2.n64` the JPN Retail IPL can be downloaded from [here](https://64dd.org/dumps/N64DD_IPLROM_(J).zip)
|
||||||
|
|
||||||
|
Note: to load an expansion disk (e.g. F-Zero X) browse to the N64 ROM and load it (but not start it) and then browse to the DD expansion file and press the `R` button.
|
||||||
|
|
||||||
|
|
||||||
|
### 64drive Specific
|
||||||
|
- Ensure the cart has the latest [firmware](https://64drive.retroactive.be/support.php) installed.
|
||||||
|
- Download the latest `menu.bin` file from the releases page, then put it in the root directory of your SD card.
|
||||||
|
|
||||||
|
|
||||||
|
### ED64 & ED64P Specific
|
||||||
|
Currently not supported, but work is in progress (See [PR's](https://github.com/Polprzewodnikowy/N64FlashcartMenu/pulls)).
|
||||||
|
|
||||||
|
The aim is to replace [Altra64](https://github.com/networkfusion/altra64) and [ED64-UnofficialOS](https://github.com/n64-tools/ED64-UnofficialOS-binaries).
|
||||||
|
|
||||||
|
|
||||||
# Developer documentation
|
# Developer documentation
|
||||||
**Work in progress!**
|
|
||||||
|
|
||||||
You can use a dev container in VSCode to ease development.
|
You can use a dev container in VSCode to ease development.
|
||||||
|
|
||||||
@ -81,7 +88,7 @@ You can use a dev container in VSCode to ease development.
|
|||||||
* Extract and place `sc64deployer.exe` in the `tools/sc64` directory.
|
* Extract and place `sc64deployer.exe` in the `tools/sc64` directory.
|
||||||
|
|
||||||
Make sure that your firmware is compatible (currently v2.17.0+)
|
Make sure that your firmware is compatible (currently v2.17.0+)
|
||||||
See: https://github.com/Polprzewodnikowy/SummerCart64/blob/v2.17.0/docs/00_quick_startup_guide.md#firmware-backupupdate
|
See: [here](https://github.com/Polprzewodnikowy/SummerCart64/blob/v2.17.0/docs/00_quick_startup_guide.md#firmware-backupupdate)
|
||||||
|
|
||||||
|
|
||||||
#### From the devcontainer
|
#### From the devcontainer
|
||||||
|
@ -1 +1 @@
|
|||||||
Subproject commit 2c3cbdb825048178729fccd992114ba70de89dad
|
Subproject commit 4b38fd5618007e7ed9040107d0f7e52f2de81a22
|
2
src/libs/mini.c
vendored
2
src/libs/mini.c
vendored
@ -1 +1 @@
|
|||||||
Subproject commit f713e3c98ee2340a90334da6084c34ec2109a7e6
|
Subproject commit 6229658b9d275fb760bcee119104bdbd7873536e
|
2
src/libs/miniz
vendored
2
src/libs/miniz
vendored
@ -1 +1 @@
|
|||||||
Subproject commit 9ae305f6e109f8f1fbd2130458f1ee6197269b3b
|
Subproject commit 18795fa61e590521381ba9e1fa4a4ab362b095f6
|
@ -55,7 +55,7 @@ void settings_save (settings_t *settings) {
|
|||||||
// mini_set_bool(ini, "menu_beta_flag", "sound_enabled", init.sound_enabled);
|
// mini_set_bool(ini, "menu_beta_flag", "sound_enabled", init.sound_enabled);
|
||||||
// mini_set_bool(ini, "menu_beta_flag", "rumble_enabled", init.rumble_enabled);
|
// mini_set_bool(ini, "menu_beta_flag", "rumble_enabled", init.rumble_enabled);
|
||||||
|
|
||||||
mini_save(ini);
|
mini_save(ini, MINI_FLAGS_SKIP_EMPTY_GROUPS);
|
||||||
|
|
||||||
mini_free(ini);
|
mini_free(ini);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user