N64FlashcartMenu/docs/00_getting_started_sd.md
Fazana 2116f6e26b
Add support for inputs from controller ports 2-4 (#141)
<!--- Provide a general summary of your changes in the Title above -->
Title sums it up

## Description
<!--- Describe your changes in detail -->
Adds some extra logic in the controller polling to read from ports 2-4,
letting those controllers input on the menu.

## 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 -->
Port 1 no longer feels alone in the dark, cold world of menu selection.

## How Has This Been Tested?
<!-- (if applicable) -->
<!--- Please describe in detail how you tested your sample/changes. -->
<!--- Include details of your testing environment, and the tests you ran
to -->
<!--- see how your change affects other areas of the code, etc. -->
Same method I used for libdragon's error screen which had the same
issue. Tested on a system with four controllers inserted.

## 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)
- [ ] Bug fix (fixes an issue)
- [ ] Breaking change (breaking change)
- [ ] Documentation Improvement
- [ ] 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.
- [ ] 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.

<!--- 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: FazanaJ <GITHUB_USER_EMAIL>

---------

Co-authored-by: Robin Jones <networkfusion@users.noreply.github.com>
2024-09-16 22:48:28 +02:00

3.1 KiB

First time setup of SD card

Using your PC, insert the SD card and ensure it is formatted for compatibility with your flashcart (FAT32 and EXFAT are fully supported on the SC64).

  • Download the latest sc64menu.n64 (assuming you are using an sc64) file from the releases page, then put it in the root directory of your SD card.
  • Create a folder in the root of your SD card called menu.
  • Place your ROMs on the SD Card, in any folder (except for menu).

Emulator support

Emulators should be added to the /menu/emulators directory on the SD card.

Menu currently supports the following emulators and associated ROM file names:

  • NES: neon64v2 by hcs64 - neon64bu.rom
  • SNES: sodium64 by Hydr8gon - sodium64.z64
  • Game Boy / GB Color: gb64 by lambertjamesd - gb.v64 / gbc.v64 ("Download Emulator" button)

64DD disk support

For the ability to load and run 64DD disk images, you need to place the required 64DD IPL dumps in the /menu/64ddipl folder on the SD card. For more details, follow this guide on the 64dd.org website.

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
│
├── (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) use the .sav extension and match the filename of a ROM.

Each save file can be found in the /saves folder located in the same directory as the ROM and shares the same file name, apart from the extension. These files are created and modified when a "game" saves.

├── (some folder with roms)\
    ├── a_rom.z64
    ├── b_rom.n64
    └── saves\
        ├── a_rom.sav
        └── b_rom.sav

Transfering saves from an ED64

If transferring a file from a different flashcart, such as the ED64, it will be necessary to change the extension of the file to sav.

i.e. for Glover (USA).eep you would need to change the extension to Glover (USA).sav

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 N64 Save converter.

NOTE: certain emulator saves or saves created for a different ROM version or region may be incompatible.