TWiLight Menu++: Difference between revisions

From GameBrew
No edit summary
Line 3: Line 3:
| image      = https://dlhb.gamebrew.org/3dshomebrew/TWiLightMenu.jpg|250px
| image      = https://dlhb.gamebrew.org/3dshomebrew/TWiLightMenu.jpg|250px
| type        = Homebrew Loaders
| type        = Homebrew Loaders
| version    = v13.1.0
| version    = v20.2.1
| licence    = MIT
| licence    = MIT
| author      = RocketRobz
| author      = RocketRobz
| website    = https://github.com/DS-Homebrew/TWiLightMenu
| website    = https://github.com/DS-Homebrew/TWiLightMenu
| download    = https://dlhb.gamebrew.org/3dshomebrew/TWiLightMenu.rar
| download    = https://github.com/DS-Homebrew/TWiLightMenu/releases
| source      = https://dlhb.gamebrew.org/3dshomebrew/TWiLightMenu.rar
| source      = https://github.com/DS-Homebrew/TWiLightMenu/releases
}}
}}


<youtube>BLyZbdWtQIs</youtube>
TWiLight Menu++ is an open-source DSi Menu upgrade/replacement for the Nintendo DSi, the Nintendo 3DS, and Nintendo DS flashcards. It can launch Nintendo DS, SNES, NES, GameBoy (Color), GameBoy Advance, Sega GameGear/Master System & Mega Drive/Genesis ROMs, as well as DSTWO plugins (if you use a DSTWO) and videos.
 
TWiLight Menu++, or TWLMenu++ for short, is a frontend for nds-bootstrap, for DS, DSi and 3DS.


==Features==
==Features==
 
* Launch DS, DS, and DS Ware ROMs from the SD card and/or flashcard, via nds-bootstrap (comes included with the app).
* Launch DS(i) ROMs from the SD card and/or flashcard, via [[nds-bootstrap]] (comes included with the app)!
* For flashcards, the flashcard kernel/firmware can optionally be used to boot the games, but only for regular DS games, and DS⁽ⁱ⁾-Enhanced games in DS mode.
* For flashcards, the flashcard kernel/firmware can optionally be used to boot the games.
* Automatic on-the-fly AP-patching! Drag and drop your ROMs onto the SD card, and play, without any additional steps.
* Automatic on-the-fly AP-patching! Drag and drop your ROMs onto the SD card, and play, without any additional steps!
* The included AP-patches are loaded for a specific game, by nds-bootstrap, and the patching is done in RAM, leaving your original ROM untouched.
** The included AP-patches are loaded for a specific game, by nds-bootstrap, and the patching is done in RAM, leaving your original ROM untouched.
* Bring the DSi Menu to your DS Phat/lite, by putting TWLMenu++ on a flashcard.
* Bring the DSi Menu to your DS Phat/lite, by putting TWLMenu++ on a flashcard!
* First DS flashcard UI to show animated icons from DS-Enhanced, DS-Exclusive, and DS Ware games.
* First DS flashcard UI to show animated icons from DSi-Enhanced, DSi-Exclusive, and DSiWare games!
* For DSi/3DS/2DS users: Overclock your DS games to 133mhz, faster than normal DS clock speed of 67mhz!
* For DSi/3DS/2DS users: Change sound frequency from 32kHz to 48kHz for higher sound quality!
* Directly access the following flashcards' microSD cards, and switch to and from there anytime!
** Acekard 2i (Games cannot be booted)
** R4 Ultra (regular, not R4i) (r4ultra.com)
* Set the language to your preference.
* Set the language to your preference.
* 10 save slots for DS games.
* For DSi/3DS/2DS users: Overclock your DS games to 133mhz, faster than normal DS clock speed of 67mhz.
* For DSi/3DS/2DS users: Change sound frequency from 32kHz to 48kHz for higher sound quality.
* Directly access the flashcard's microSD card, and switch to and from there anytime (Only applies to compatible flashcards).
* Run the last played ROM on TWiLight Menu++ startup.
* Run the last played ROM on TWiLight Menu++ startup.
* Play retro games from these consoles:
* Play retro games from these consoles:
** (Super) GameBoy (Color), via GameYob
** Atari XEGS, via XEGS-DS (.xex and .atr).
** NES/Famicom, via nesDS
** Atari 2600, via StellaDS (.a26 only).
** Sega Master System/Game Gear, via S8DS
** Atari 5200, via A5200DS (.a52 only).
** Sega MegaDrive/Genesis, via jEnesisDS
** Atari 7800, via A7800DS (.a78 only).
** Super Nintendo/Famicom, via SNEmulDS
** NES/Famicom, via nesDS.
** (Super) GameBoy (Color), via GameYob.
** Sega Master System/Game Gear, via S8DS.
** Sega MegaDrive/Genesis, via jEnesisDS (or PicoDriveTWL, if ROM is above 3MB) (.gen only).
** Super Nintendo/Famicom, via SNEmulDS.
** PC-Engine/TurboGrafx-16, via NitroGrafx.
** GameBoy Advance, via GBARunner2 or the DS' native GBA mode, which the latter requires one of these Slot-2 flashcards:
*** M3.
*** G6.
*** SuperCard SD/MiniSD/MicroSD.
*** EZ-Flash (before Omega) (Saving does not work).
* Play videos:
** [https://gbatemp.net/threads/gbarunner2.451970/page-152#post-9189524 Using GBARunner2 or native GBA mode.]
* 3DS/2DS users: Play DS games in 16:10 widescreen! Not all games will work with this feature.
* 3DS/2DS users: Play DS games in 16:10 widescreen! Not all games will work with this feature.


==Installation==
==Installation==
===Non-CFW DSi/3DS/2DS users (Not recommended)===
===Installing on Flashcard (DS/DSi)===
# In the 7z file, extract the "_nds" folder from both the 7z root and the "DSi&3DS - SD card users" folder, to the SD Card root. Merge folders, when asked to.
Download the latest version of TWiLightMenu-Flashcard.7z from the releases page.
# Extract the "boot.nds" file from the "DSi&3DS - SD card users" folder, to the SD Card root.
 
# Put .gb/.gba/.gbc/.gen/.gg/.nes/.nds/.sms/.smc/.sfc ROMs anywhere on your SD card.
Extract TWiLightMenu-Flashcard.7z and copy the _nds folder to your flashcard’s microSD card root.
# Launch your exploted DSiWare game, and TWiLight Menu++ will load!
 
'''NOTE for DSi users:''' If you're using exploits such as Memory Pit, ugopwn, Flipnote Lenny, or 4swordshax to boot TWiLight Menu++ some DS ROMs will not play sound properly.
Copy the BOOT.NDS file to your flashcard’s microSD card root.
 
Copy the roms folder to your flashcard’s microSD card root.
 
If you already have save data, move your .sav files, which are in your DS ROM location, to a new folder called saves, which also goes in the DS ROM location.
 
'''DS Phat / Lite users''' - If booting BOOT.NDS causes a white screen lock-up, insert a DS Memory Expansion Pak, and try again.
 
'''DSi / 3DS users''' - Run TWLMenu++ on the console’s SD card, and turn on SCFG access in Slot-1 and Slot-1: TWL touch mode.
 
This will let you use TWL clock speed and/or VRAM boost on your flashcard games, as well as both accessing the console’s SD card, and running DSi-Enhanced/DSi-Exclusive/DSiWare games in DSi mode from your flashcard.
 
'''To run games using your flashcard firmware (Flashcard):'''
Extract what’s in Flashcart Loader/(your flashcard) to the root of the flashcard’s microSD card.
 
If you done so, continue to step 3. If not, follow the steps below the flashcard list below.
 
For these flashcards:
 
R4i-SDHC<br>
r4isdhc.com cards<br>
r4isdhc.hk cards<br>
R4i SDHC Upgrade Revolution<br>
R4DSiXL3D<br>
R4i Advance<br>
R4-IIIi<br>
R4 SDHC Revolution<br>
R4(i) Pocket<br>
R4i Gold (v1.4.1) (3DS)<br>
R4xDS<br>
DSTT(i)<br>
 
Install YSMenu following the [https://gbatemp.net/threads/retrogamefan-updates-releases.267243/ tutorial].
 
Make sure you have YSMenu.nds (renamed from TTMenu.dat if there isn’t one) and the TTMenu folder on the flashcard microSD root.
 
Set Use nds-bootstrap to No, so the flashcard firmware will be used instead of nds-bootstrap.
 
'''Autobooting TWiLight Menu++:'''
 
Extract the content(s) of Autoboot/(your flashcard) to the root of the flashcard’s microSD card. Skip this, if you don’t see your flashcard.
 
'''DS Phat / DS Lite users''' - Go to settings in the DS menu, and turn on auto-start, so your flashcard will start on boot.
 
'''DSi / 3DS users''' - Run TWLMenu++ on the console’s SD card, and turn on Auto-start Slot-1.
 
===Installing on DSi===
Download the latest TWiLightMenu-DSi.7z from the releases page.
 
Extract TWiLightMenu-DSi.7z and copy the _nds folder to your SD card root.
 
Copy the BOOT.NDS file and the roms folder to your SD card root.
 
For hiyaCFW users: Copy the title folder to your SD card root.
 
Autobooting with Unlaunch.


The following DSiWare exploits are compatible with nds-bootstrap without CFW:
Turn on your DSi while holding A and B.
* sudokuhax (uses GenericTWLPayload)
* fieldrunnerhax (uses GenericTWLPayload)
* grtpwn (uses GenericTWLPayload)
* ugopwn/Flipnote Lenny (only for v0.11.0 and v0.11.2)


----
In the Unlaunch menu, go to OPTIONS.


===DSi users with Unlaunch and/or HiyaCFW===
Set NO BUTTON or a button of your choice to the TWiLight Menu++ that says BOOT.NDS on the bottom screen.
# In the 7z file, extract the "_nds" folder from both the 7z root and the "DSi&3DS - SD card users" folder, to the SD Card root. Merge folders, when asked to.
# Extract the "boot.nds" file from the "DSi&3DS - SD card users" folder, to the SD Card root.
# Extract what's in "DSi - CFW users/SDNAND root" to the root of your SD card.
# Put .gb/.gba/.gbc/.gen/.gg/.nes/.nds/.sms/.smc/.sfc ROMs anywhere on your SD card.
# (Unlaunch users) In Unlaunch menu, go to options, and set the "No button" option to "TWLMENUPP".
# Launch TWiLight Menu++!


----
==User guide==
DS game compatibility list can be found here:
[https://docs.google.com/spreadsheets/d/1LRTkXOUXraTMjg1eedz_f7b5jiuyMv2x6e_jY_nyHSc/edit?usp=sharing List of games that work from SD Card.]


===CFW 3DS users, via Updater===
For more details, please refer to the [https://wiki.ds-homebrew.com/twilightmenu/ official guide] and [https://gbatemp.net/threads/ds-i-3ds-twilight-menu-gui-for-ds-i-games-and-ds-i-menu-replacement.472200/ tutorials].
# Use [[FBI]] to install the [[TWiLight Menu++ Updater]]. You can download it [https://github.com/RocketRobz/TWiLightMenu-Updater/releases here], or with this [https://gbatemp.b-cdn.net/attachments/twlmupdater-qrcode-png.187568/ QR code].
# Launch the updater.
# Touch Release next to TWL Menu++. Extraction may take a while.
# Do Step 3 again, but for nds-bootstrap.


----
===FAQ===
'''How do I fix getting a white screen when booting TWiLight Menu++?'''


===CFW 3DS users, manual method===
First, try putting the console in sleep mode (e.g. closing the console’s lid, or pressing the sleep button on the O2DS), then wake up the console from it. </br>If that doesn’t work, format your SD card to FAT32 with 32 KB cluster/allocation size. If that also doesn’t work, try a different SD card.
# In the 7z file, extract the "_nds" folder from both the 7z root and the "DSi&3DS - SD card users" folder, to the SD Card root. Merge folders, when asked to.
# Extract the "boot.nds" file from the "DSi&3DS - SD card users" folder, to the SD Card root.
# Extract the .cia files from the "3DS - CFW users" folder, to anywhere on the SD Card.
# Put .gb/.gba/.gbc/.gen/.gg/.nes/.nds/.sms/.smc/.sfc ROMs anywhere on your SD card.
# Install the .cia files you extracted. <br> '''NOTE:''' If you're using EmuNAND, then install them to SysNAND as well.
# Launch TWiLight Menu++!


----
'''Where is the Acekard/Wood UI theme?'''


===Flashcard users===
The acekard (also called Wood UI) theme was removed due to its buggy behaviour and causing SD Card corruption. Please wait for a fix. Progress for the return of this theme can be found in this PR.
# In the 7z file, extract the "_nds" folder from both the 7z root and the "Flashcard users" folder, to the flashcard's microSD card root. Merge folders, when asked to.
# Extract the "boot.nds" file from the "Flashcard users" folder, to the flashcard's microSD card root.
# Put .gb/.gba/.gbc/.gen/.gg/.nes/.nds/.sms/.smc/.sfc ROMs anywhere on your flashcard's microSD card.
# (Optional) Using your flashcard firmware to load retail/commercial ROMs instead of nds-bootstrap.
## Download a pack for your flashcard (skip to step 4, if your flashcard is not listed):
##* [[Media:DS Game Forwarder pack (R4iDSN, R4i Gold RTS, R4 Ultra).7z|R4iDSN/R4 Ultra]]
##* [[Media:DS Game Forwarder pack (SC DSTWO).7z|SuperCard DSTWO]]
## Extract what's in "for Slot-1 microSD" to the root of the flashcard's microSD card.
## After this and setting up TWiLight Menu++ on your flashcard, set "Use nds-bootstrap" to "No" so the flashcard firmware will be used instead of nds-bootstrap.
# (Optional) Autobooting to TWiLight Menu++
#* Extract what's in "Flashcard users/Autoboot/(your flashcard)" to the root of the flashcard's microSD card. (Skip this, if you don't see your flashcard.)
# You're good to go! Launch your flashcard, and TWiLight Menu++ will load! (Load "boot.nds", if you're in the regular flashcard menu, or if autobooting doesn't work.)
* You can also set your preferred sound/mic frequency, if you're using a DSi, 3DS, or 2DS.
* If you want to use TWL clock speed and/or VRAM boost on your flashcard games, launch your flashcard using TWiLight Menu++ on the console's SD card, with the "SCFG access in Slot-1" setting turned on.


==Video demonstration==
'''How do I fix TWiLight Menu++ restarting or giving a Guru Meditation Error when launching a game?'''
<youtube>fc9-TtALeA8</youtube>
 
Go into TWLMenu++ Settings, and disable Update recently played list.
 
'''Why do I get a white screen when trying to load a game from SD card?'''
 
First, check the nds-bootstrap compatibility list and make sure your game is compatible. Try with all cheats disabled for that game as some cheats are not compatible with nds-bootstrap at the moment, you can use L to disable all cheats for a game.</br>If it worked before, delete the fatTable and patchOffsetCache folders in sd:/_nds/nds-bootstrap/
 
'''How do I use cheats?'''
 
You need to have a cheat DB in the form of a usrcheat.dat file in the sd:/_nds/TWiLightMenu/extras/ folder. The most updated cheat database is DeadSkullzJr’s. On the 3DS, this database is available in the Universal-Updater app as “NDS Cheat Databases.” This will automatically install it to the required location. Alternatively, you can use r4cce to create your own cheat DB.
 
'''How do I show a custom picture on the top screen of the DSi theme?'''
 
A random .png image in sd:/_nds/TWiLightMenu/dsimenu/photos/ will be shown each time the menu is loaded. The images(s) must be no bigger than 208x156. If you have errors, it’s most likely an error with the image size. Please use tinypng to reduce the size.
 
'''How do I get games?'''
 
You can download homebrew games from Universal-DB and GameBrew. To get dumps of your retail games:
* On DS you can use [[GodMode9i|GodMode9i]] to dump your GBA games and, if you have a Slot-2 flashcard, DS games.
* On DSi you can use [[GodMode9i|GodMode9i]] to dump your DS games and DSiWare.
* On 3DS you can use GodMode9 to dump your DS games, DSiWare, and Virtual Console titles.


NOTE: In this video, loading speed is slower than the current nds-bootstrap version.
'''Can I get the save files from my game cards onto my SD card or vice versa?'''


==Controls==
Yes, you can use GodMode9i on DSi and 3DS or Checkpoint on 3DS.
===DSi, 3DS, and SEGA Saturn themes===
* Left/Right: Select a game/app
* A/START: Launch game/app
* B: Go up one directory
* L/R: Switch pages
* Y: Per-game settings
** X: Cheat menu
* X: Delete/hide game
* (DSi/Saturn theme) SELECT: DS Classic menu
** (Where TWLMenu++ Settings, the Slot-1 game, and the last ran game can be accessed)


----
'''How do I change TWiLight Menu++’s language?'''


===R4 theme===
Open TWiLight Menu++ settings, you can do this by holding SELECT while loading TWiLight Menu++. Press L or Y once (on flashcard / 3DS) or twice (on DSi). Change the first option until you see the language you want, then exit settings. </br>You may also want to change the next two options as they control the language of DS games and their titles in TWiLight Menu++.
''On R4 theme main menu:''
* Left/Right: Select game list, lanch Slot-1, or launch GBARunner2
* A: Open game list, launch Slot-1, or launch GBARunner2
* START/SELECT: Open TWLMenu++ Settings
''In game list:''
* Up/Down: Select a game/app
* A: Launch game/app
* B: Go up one directory
* Y: Per-game settings
** X: Cheat menu
* X: Delete/hide game
* START: Return to R4 theme main menu


----
'''Is this a DS(i) emulator?'''


===Acekard theme===
No, this is not an emulator. The menu and DS games (loaded via nds-bootstrap) are ran natively in the console’s DS/DSi mode. The only consoles emulated are the past consoles, but partially for GBA (as some or all parts like graphics are ran natively).
* Up/Down: Select a game/app
* A: Launch game/app
* B/L: Go up one directory
* Y: Per-game settings
** X: Cheat menu
* START: Options menu
* SELECT: Change list mode


----
'''What systems does TWiLight Menu++ support?'''
{| class="wikitable"
|+
|-
! Format !! Loader !! Extensions !! Save file
|-
| ARGV1 || Native || .argv ||
|-
| Atari 2600 || StellaDS || .a26 ||
|-
| Atari 5200 || A5200DS || .a52 ||
|-
| Atari 7800 || A7800DS || .a78 || Example
|-
| Atari XEGS || XEGS-DS || .xex, .atr || Example
|-
| DS || nds-bootstrap, flashcard kernel, native || .nds, .dsi, .ids, .srl, .app || saves/[rom name].sav
|-
| DSiWare || Unlaunch, nds-bootstrap || .nds, .dsi, .ids, .srl, .app || [rom name].pub, [rom name].prv
|-
| DSTWO Plugin || DSTWO || .plg ||
|-
| Game Boy (Color) || GameYob || .gb, .sgb, .gbc || [rom name].sav
|-
| Game Boy Advance || GBARunner2, native || .agb, .gba, .mb || [rom name].sav
|-
| Game Gear || S8DS || .gg || [rom name].gg.sav
|-
| Genesis / Mega Drive || jEnesisDS, PicoDriveTWL || .gen || [rom name].srm
|-
| Master System || S8DS || .sms || [rom name].sms.sav
|-
| MPEG4 Video || MPEG4 Player || .mp4 ||
|-
| NES / Famicom || nesDS || .nes, .fds || [rom name].sav
|-
| PC Engine / TurboGrafx-16 || NitroGrafx || .pce ||
|-
| RVID Video || Rocket Video Player || .rvid ||
|-
| SNES || SNEmulDS || .smc, .sfc || [rom name].srm
|}


===With CFW: DS ROMs on SD/carts===
'''Why isn’t touch input working on sudokuhax?'''
* L+R+DOWN+B for 2 seconds: Return to TWiLight Menu++.
** (If using an o3DS, then it does not work on all models)


For DS game compatibility, please check this list:
Depending on the save file of sudokuhax, the touch screen inputs may not work.
[https://docs.google.com/spreadsheets/d/1LRTkXOUXraTMjg1eedz_f7b5jiuyMv2x6e_jY_nyHSc/edit?usp=sharing List of games that work from SD Card]


==FAQs==
'''Can The Biggest Loser boot TWiLight Menu++?'''


'''Q: (3DS users) This is a DS(i) emulator, right?'''
No. As The Biggest Loser is a Slot-1 game, and not a DSiWare game, SD access is disabled when running Slot-1 cards.


A: No, this is not an emulator. The menu and DS games (loaded via nds-bootstrap) are ran natively in the console's DS/DSi mode.<br>
==Controls==
The only consoles emulated are NES, Sega MS/GG, GB(C), Sega Gen/MD, SNES, and GBA (but partially, as some parts (such as graphics) are ran natively).
'''DSi, 3DS Menu, SEGA Saturn, and Homebrew Launcher themes:'''


'''Q: After installing the TWiLight Menu++ CIAs, I don't see the app on the 3DS HOME Menu. How can I fix this?'''
Left/Right - Select a game/app


Reboot the console.
A/Start - Launch game/app


'''Q: Why is my 3DS/2DS stuck on black screen when launching TWiLight Menu++? Why is my 3DS/2DS powering off when launching TWiLight Menu++?'''
L/R or Select+Left/Reight - Switch pages


A: TWL_FIRM might've somehow got corrupted.<br>
'''DSi/Saturn/HB theme:'''
Follow this guide to fix the issue: [https://3ds.hacks.guide/troubleshooting#dsi--ds-functionality-is-broken-after-completing-the-guide DSi / DS functionality is broken after completing the guide]


'''Q: I followed all the steps on how to play in widescreen, but the supported games are still running in 4:3, but with glitchiness on the right side. How do I fix this?'''
Select+Up/Down & release Select - Switch between the SD card and flashcard


A: Try re-downloading the patcher, and run "wide.bat" again, and copy the remade/updated .cxi file to "sd:/_nds/TWiLightMenu/TwlBg/", and rename it to "Widescreen.cxi".
Y - Per-game settings


'''Q: I followed all the steps on how to play in widescreen, but the supported games are still running in 4:3, but with hex numbers on the right side. How do I fix this?'''
Y+X - Cheat menu


A: You did not make and/or run "wide.bat". Please do that, and then copy the remade/updated .cxi file to "sd:/_nds/TWiLightMenu/TwlBg/", and rename it to "Widescreen.cxi".
X - Delete/hide game


'''Q: After launching a game in widescreen, the TWLMenu++ GUI is stretched in the top screen! How do I fix this?'''
'''DSi/Saturn/HB theme:'''


A: In FBI, delete both TWiLight Menu++ titles (in purple text) in the title list, then install both the latest TWLMenu++ CIAs.<br>
Select - Seelect menu or DS Classic Menu (Where system menu, TWLMenu++ Settings, and GBA Mode can be accessed)
Back in the title list, launch "TWiLight Menu++ Last-ran ROM".<br>
If this doesn't fix it, delete "TwlBg.cxi" at "sd:/luma/sysmodules/".


'''Q: How do I get past Luma's exception screen when trying to soft-reset the game, or return to TWiLight Menu++?'''
'''R4 theme:'''


A: Enable game patching in Luma settings, or update Luma to v10.0 (or later).
Up/Down - Select a game/app


'''Q: How do I fix TWiLight Menu++ restarting when launching a game? How do I fix TWiLight Menu++ giving a Guru Meditation Error when launching a game?'''
A - Launch game/app


A: Go into TWLMenu++ Settings, and disable "Update recently played list".
L - Switch between the SD card and flashcard


'''Q: Can The Biggest Loser boot TWiLight Menu++?'''
Y - Per-game settings


A: No. As The Biggest Loser is a Slot-1 game, and not a DSiWare game, SD access is disabled when running Slot-1 cards.
Y+X - Cheat menu


'''Q: Why do I get a white screen when trying to load a game from SD Card, and how do I fix it?'''
'''With CFW: DS ROMs (on SD)/carts:'''


A1: You're using an incompatible DSiWare exploit. It should use GenericTWLPayload for DS ROMs to work.
L+R+Down+B (hold 2 seconds) - Return to TWiLight Menu++ (If using an O3DS, then it does not work on all models)


A2: nds-bootstrap shrinks the heap to fit it's own code for arm9, into cached memory. Shrinking the heap breaks some games.<br>
==Media==
To disable heap shrink, hold L immediately after pressing A/START to launch the game.
'''Video demonstration'''<br>
<youtube>fc9-TtALeA8</youtube>


A3: Please note that not all games work from SD Card yet. Check the list above.<br>
'''Note:''' In this video, loading speed is slower than the current nds-bootstrap version.
If it's listed as compatible, try again.


If you're a DSi user, Please check the LED set in TWiLight Menu++ settings.
==Changelog==
* WiFi/Camera: If it's on, that means it's loading from the ROM. If it's off for a while, and the screen is still white, that means the game is unsupported.
[https://github.com/DS-Homebrew/TWiLightMenu/releases Release Notes.]
* Power: If it's purple, that means it's loading from the ROM. If it's blue (or red) for a while, and the screen is still white, that means the game is unsupported.


==Credits==
==Credits==
===Main Developers===
'''Main Developers:'''
* [https://github.com/RocketRobz RocketRobz]: Lead Developer, implementing the auto-reset power button function used in NTR-mode.
* [https://github.com/RocketRobz RocketRobz]: Lead Developer, implementing the auto-reset power button function used in NTR-mode.
* [https://github.com/chyyran chyyran]: Porting the akMenu/Wood UI to TWiLight Menu++ & adding the ability to load sub-themes off the SD card for DSi/3DS themes.
* [https://github.com/chyyran chyyran]: Porting the akMenu/Wood UI to TWiLight Menu++ & adding the ability to load sub-themes off the SD card for DSi/3DS themes.
* [https://github.com/Epicpkmn11 Pk11]: Adding the ability to load sub-themes off the SD card for the R4 theme.
* [https://github.com/Epicpkmn11 Pk11]: Adding the ability to load sub-themes off the SD card for the R4 theme, implemented sorting & made manuals use PNG, improved font rendering, providing a custom background for Unlaunch, and various bug fixes.
===App Launchers===
 
* [https://github.com/ahezard ahezard] & [https://github.com/shutterbug2000 shutterbug2000]: [[nds-bootstrap]] (used to launch Nintendo DS ROMs off the SD card), and NDMA SD read code.
'''App Launchers:'''
* [https://github.com/Drenn1 Drenn]: [[GameYob]] (used to launch Gameboy ROMs)
* [https://github.com/ahezard ahezard] & [https://github.com/shutterbug2000 shutterbug2000]: nds-bootstrap (used to launch Nintendo DS ROMs off the SD card), and NDMA SD read code.
* [https://coto88.bitbucket.io/ Coto]: Working on [[SNEmulDS]] with acheid/Loopy (used to launch SNES ROMs) & [[nesDS]] ([https://github.com/ApacheThunder/NesDS TWL Edition] by [https://github.com/ApacheThunder Apache Thunder]) (used to launch NES ROMs).
* [https://github.com/Drenn1 Drenn]: GameYob (used to launch Gameboy ROMs).
* Lordus: [[jEnesisDS]] (used to launch Sega Mega Drive/Genesis ROMs)
* [https://coto88.bitbucket.io/ Coto]: Working on SNEmulDS with acheid/Loopy (used to launch SNES ROMs) & nesDS (TWL Edition by Apache Thunder) (used to launch NES ROMs).
* [https://github.com/Gericom Gericom]: [[GBARunner2]] (used to load GameBoy Advance ROMs)
* Lordus: jEnesisDS (used to launch Sega Mega Drive/Genesis ROMs).
* [https://gbatemp.net/members/flubba.19963/ FluBBa]: [[S8DS]] (used to launch Sega Master System/Game Gear ROMs)
* Ryan FB & xonn83: PicoDriveDS (used to launch large Sega Mega Drive/Genesis ROMs).
===Graphics & Themes===
* [https://github.com/Gericom Gericom]: GBARunner2 (used to launch GameBoy Advance ROMs outside of the DS Phat/lite's GBA mode).
* [https://gbatemp.net/members/spinal_cord.90607/ spinal_cord]: [[DSi4DS]] and [[DSision2]] graphics.
* [https://gbatemp.net/members/flubba.19963/ FluBBa]: S8DS (used to launch Sega Master System/Game Gear ROMs).
* Alekmaul & wavemotion: StellaDS, A5200DS, A7800DS, and XEGS-DS (used to launch Atari 2600/5200/7800/XEGS ROMs).
 
'''Graphics & Themes:'''
* [https://gbatemp.net/members/spinal_cord.90607/ spinal_cord]: DSi4DS and DSision2 graphics.
* [https://www.deviantart.com/starvingartist/ StarvingArtist]: Game Console icons.
* [https://www.deviantart.com/starvingartist/ StarvingArtist]: Game Console icons.
* [https://github.com/FlameKat53 FlameKat53]: Manual icon for DSi theme's `SELECT` menu.
* [https://github.com/FlameKat53 FlameKat53]: Manual icon for DSi theme's SELECT menu.
===Others===
* fail0verflow, Fluto, and Arkhandar: Homebrew Channel/Launcher graphics.
* [https://github.com/profi200 profi200]: Improved SD code from fastboot3DS.
* davi: Border for GBC theme (originally for GameYob).
* [https://github.com/devkitPro devkitPro]: Code used in [[nds-hb-menu]], and the use of the bootloader, [[devkitARM]], [[libnds]], and [[libfat]].
* [https://github.com/NightYoshi370 NightScript]: Reworked Manual pages.
* Another World and Yellow Wood Goblin: The original akMenu/[[Wood Firmwares|Wood]] UI.
 
* [https://github.com/NightYoshi370 NightYoshi370]: Code cleanup
'''Music:'''
* IkaMusumeYiyaRoxie: General N64 MIDI Soundfont, used for the title splash fanfare.
 
<br>
[[Category:DS homebrew applications]]
[[Category:Utility homebrews on DS]]

Revision as of 02:48, 21 May 2021

TWiLight Menu++
TWiLightMenu.jpg
General
Author(s)RocketRobz
TypeHomebrew Loaders
Versionv20.2.1
LicenceMIT
Links
Download
Website
Source
Advertisements

<htmlet>adsense</htmlet>


TWiLight Menu++ is an open-source DSi Menu upgrade/replacement for the Nintendo DSi, the Nintendo 3DS, and Nintendo DS flashcards. It can launch Nintendo DS, SNES, NES, GameBoy (Color), GameBoy Advance, Sega GameGear/Master System & Mega Drive/Genesis ROMs, as well as DSTWO plugins (if you use a DSTWO) and videos.

Features

  • Launch DS, DS, and DS Ware ROMs from the SD card and/or flashcard, via nds-bootstrap (comes included with the app).
  • For flashcards, the flashcard kernel/firmware can optionally be used to boot the games, but only for regular DS games, and DS⁽ⁱ⁾-Enhanced games in DS mode.
  • Automatic on-the-fly AP-patching! Drag and drop your ROMs onto the SD card, and play, without any additional steps.
  • The included AP-patches are loaded for a specific game, by nds-bootstrap, and the patching is done in RAM, leaving your original ROM untouched.
  • Bring the DSi Menu to your DS Phat/lite, by putting TWLMenu++ on a flashcard.
  • First DS flashcard UI to show animated icons from DS-Enhanced, DS-Exclusive, and DS Ware games.
  • Set the language to your preference.
  • 10 save slots for DS games.
  • For DSi/3DS/2DS users: Overclock your DS games to 133mhz, faster than normal DS clock speed of 67mhz.
  • For DSi/3DS/2DS users: Change sound frequency from 32kHz to 48kHz for higher sound quality.
  • Directly access the flashcard's microSD card, and switch to and from there anytime (Only applies to compatible flashcards).
  • Run the last played ROM on TWiLight Menu++ startup.
  • Play retro games from these consoles:
    • Atari XEGS, via XEGS-DS (.xex and .atr).
    • Atari 2600, via StellaDS (.a26 only).
    • Atari 5200, via A5200DS (.a52 only).
    • Atari 7800, via A7800DS (.a78 only).
    • NES/Famicom, via nesDS.
    • (Super) GameBoy (Color), via GameYob.
    • Sega Master System/Game Gear, via S8DS.
    • Sega MegaDrive/Genesis, via jEnesisDS (or PicoDriveTWL, if ROM is above 3MB) (.gen only).
    • Super Nintendo/Famicom, via SNEmulDS.
    • PC-Engine/TurboGrafx-16, via NitroGrafx.
    • GameBoy Advance, via GBARunner2 or the DS' native GBA mode, which the latter requires one of these Slot-2 flashcards:
      • M3.
      • G6.
      • SuperCard SD/MiniSD/MicroSD.
      • EZ-Flash (before Omega) (Saving does not work).
  • Play videos:
  • 3DS/2DS users: Play DS games in 16:10 widescreen! Not all games will work with this feature.

Installation

Installing on Flashcard (DS/DSi)

Download the latest version of TWiLightMenu-Flashcard.7z from the releases page.

Extract TWiLightMenu-Flashcard.7z and copy the _nds folder to your flashcard’s microSD card root.

Copy the BOOT.NDS file to your flashcard’s microSD card root.

Copy the roms folder to your flashcard’s microSD card root.

If you already have save data, move your .sav files, which are in your DS ROM location, to a new folder called saves, which also goes in the DS ROM location.

DS Phat / Lite users - If booting BOOT.NDS causes a white screen lock-up, insert a DS Memory Expansion Pak, and try again.

DSi / 3DS users - Run TWLMenu++ on the console’s SD card, and turn on SCFG access in Slot-1 and Slot-1: TWL touch mode.

This will let you use TWL clock speed and/or VRAM boost on your flashcard games, as well as both accessing the console’s SD card, and running DSi-Enhanced/DSi-Exclusive/DSiWare games in DSi mode from your flashcard.

To run games using your flashcard firmware (Flashcard): Extract what’s in Flashcart Loader/(your flashcard) to the root of the flashcard’s microSD card.

If you done so, continue to step 3. If not, follow the steps below the flashcard list below.

For these flashcards:

R4i-SDHC
r4isdhc.com cards
r4isdhc.hk cards
R4i SDHC Upgrade Revolution
R4DSiXL3D
R4i Advance
R4-IIIi
R4 SDHC Revolution
R4(i) Pocket
R4i Gold (v1.4.1) (3DS)
R4xDS
DSTT(i)

Install YSMenu following the tutorial.

Make sure you have YSMenu.nds (renamed from TTMenu.dat if there isn’t one) and the TTMenu folder on the flashcard microSD root.

Set Use nds-bootstrap to No, so the flashcard firmware will be used instead of nds-bootstrap.

Autobooting TWiLight Menu++:

Extract the content(s) of Autoboot/(your flashcard) to the root of the flashcard’s microSD card. Skip this, if you don’t see your flashcard.

DS Phat / DS Lite users - Go to settings in the DS menu, and turn on auto-start, so your flashcard will start on boot.

DSi / 3DS users - Run TWLMenu++ on the console’s SD card, and turn on Auto-start Slot-1.

Installing on DSi

Download the latest TWiLightMenu-DSi.7z from the releases page.

Extract TWiLightMenu-DSi.7z and copy the _nds folder to your SD card root.

Copy the BOOT.NDS file and the roms folder to your SD card root.

For hiyaCFW users: Copy the title folder to your SD card root.

Autobooting with Unlaunch.

Turn on your DSi while holding A and B.

In the Unlaunch menu, go to OPTIONS.

Set NO BUTTON or a button of your choice to the TWiLight Menu++ that says BOOT.NDS on the bottom screen.

User guide

DS game compatibility list can be found here: List of games that work from SD Card.

For more details, please refer to the official guide and tutorials.

FAQ

How do I fix getting a white screen when booting TWiLight Menu++?

First, try putting the console in sleep mode (e.g. closing the console’s lid, or pressing the sleep button on the O2DS), then wake up the console from it. If that doesn’t work, format your SD card to FAT32 with 32 KB cluster/allocation size. If that also doesn’t work, try a different SD card.

Where is the Acekard/Wood UI theme?

The acekard (also called Wood UI) theme was removed due to its buggy behaviour and causing SD Card corruption. Please wait for a fix. Progress for the return of this theme can be found in this PR.

How do I fix TWiLight Menu++ restarting or giving a Guru Meditation Error when launching a game?

Go into TWLMenu++ Settings, and disable Update recently played list.

Why do I get a white screen when trying to load a game from SD card?

First, check the nds-bootstrap compatibility list and make sure your game is compatible. Try with all cheats disabled for that game as some cheats are not compatible with nds-bootstrap at the moment, you can use L to disable all cheats for a game.If it worked before, delete the fatTable and patchOffsetCache folders in sd:/_nds/nds-bootstrap/

How do I use cheats?

You need to have a cheat DB in the form of a usrcheat.dat file in the sd:/_nds/TWiLightMenu/extras/ folder. The most updated cheat database is DeadSkullzJr’s. On the 3DS, this database is available in the Universal-Updater app as “NDS Cheat Databases.” This will automatically install it to the required location. Alternatively, you can use r4cce to create your own cheat DB.

How do I show a custom picture on the top screen of the DSi theme?

A random .png image in sd:/_nds/TWiLightMenu/dsimenu/photos/ will be shown each time the menu is loaded. The images(s) must be no bigger than 208x156. If you have errors, it’s most likely an error with the image size. Please use tinypng to reduce the size.

How do I get games?

You can download homebrew games from Universal-DB and GameBrew. To get dumps of your retail games:

  • On DS you can use GodMode9i to dump your GBA games and, if you have a Slot-2 flashcard, DS games.
  • On DSi you can use GodMode9i to dump your DS games and DSiWare.
  • On 3DS you can use GodMode9 to dump your DS games, DSiWare, and Virtual Console titles.

Can I get the save files from my game cards onto my SD card or vice versa?

Yes, you can use GodMode9i on DSi and 3DS or Checkpoint on 3DS.

How do I change TWiLight Menu++’s language?

Open TWiLight Menu++ settings, you can do this by holding SELECT while loading TWiLight Menu++. Press L or Y once (on flashcard / 3DS) or twice (on DSi). Change the first option until you see the language you want, then exit settings. You may also want to change the next two options as they control the language of DS games and their titles in TWiLight Menu++.

Is this a DS(i) emulator?

No, this is not an emulator. The menu and DS games (loaded via nds-bootstrap) are ran natively in the console’s DS/DSi mode. The only consoles emulated are the past consoles, but partially for GBA (as some or all parts like graphics are ran natively).

What systems does TWiLight Menu++ support?

Format Loader Extensions Save file
ARGV1 Native .argv
Atari 2600 StellaDS .a26
Atari 5200 A5200DS .a52
Atari 7800 A7800DS .a78 Example
Atari XEGS XEGS-DS .xex, .atr Example
DS nds-bootstrap, flashcard kernel, native .nds, .dsi, .ids, .srl, .app saves/[rom name].sav
DSiWare Unlaunch, nds-bootstrap .nds, .dsi, .ids, .srl, .app [rom name].pub, [rom name].prv
DSTWO Plugin DSTWO .plg
Game Boy (Color) GameYob .gb, .sgb, .gbc [rom name].sav
Game Boy Advance GBARunner2, native .agb, .gba, .mb [rom name].sav
Game Gear S8DS .gg [rom name].gg.sav
Genesis / Mega Drive jEnesisDS, PicoDriveTWL .gen [rom name].srm
Master System S8DS .sms [rom name].sms.sav
MPEG4 Video MPEG4 Player .mp4
NES / Famicom nesDS .nes, .fds [rom name].sav
PC Engine / TurboGrafx-16 NitroGrafx .pce
RVID Video Rocket Video Player .rvid
SNES SNEmulDS .smc, .sfc [rom name].srm

Why isn’t touch input working on sudokuhax?

Depending on the save file of sudokuhax, the touch screen inputs may not work.

Can The Biggest Loser boot TWiLight Menu++?

No. As The Biggest Loser is a Slot-1 game, and not a DSiWare game, SD access is disabled when running Slot-1 cards.

Controls

DSi, 3DS Menu, SEGA Saturn, and Homebrew Launcher themes:

Left/Right - Select a game/app

A/Start - Launch game/app

L/R or Select+Left/Reight - Switch pages

DSi/Saturn/HB theme:

Select+Up/Down & release Select - Switch between the SD card and flashcard

Y - Per-game settings

Y+X - Cheat menu

X - Delete/hide game

DSi/Saturn/HB theme:

Select - Seelect menu or DS Classic Menu (Where system menu, TWLMenu++ Settings, and GBA Mode can be accessed)

R4 theme:

Up/Down - Select a game/app

A - Launch game/app

L - Switch between the SD card and flashcard

Y - Per-game settings

Y+X - Cheat menu

With CFW: DS ROMs (on SD)/carts:

L+R+Down+B (hold 2 seconds) - Return to TWiLight Menu++ (If using an O3DS, then it does not work on all models)

Media

Video demonstration

Note: In this video, loading speed is slower than the current nds-bootstrap version.

Changelog

Release Notes.

Credits

Main Developers:

  • RocketRobz: Lead Developer, implementing the auto-reset power button function used in NTR-mode.
  • chyyran: Porting the akMenu/Wood UI to TWiLight Menu++ & adding the ability to load sub-themes off the SD card for DSi/3DS themes.
  • Pk11: Adding the ability to load sub-themes off the SD card for the R4 theme, implemented sorting & made manuals use PNG, improved font rendering, providing a custom background for Unlaunch, and various bug fixes.

App Launchers:

  • ahezard & shutterbug2000: nds-bootstrap (used to launch Nintendo DS ROMs off the SD card), and NDMA SD read code.
  • Drenn: GameYob (used to launch Gameboy ROMs).
  • Coto: Working on SNEmulDS with acheid/Loopy (used to launch SNES ROMs) & nesDS (TWL Edition by Apache Thunder) (used to launch NES ROMs).
  • Lordus: jEnesisDS (used to launch Sega Mega Drive/Genesis ROMs).
  • Ryan FB & xonn83: PicoDriveDS (used to launch large Sega Mega Drive/Genesis ROMs).
  • Gericom: GBARunner2 (used to launch GameBoy Advance ROMs outside of the DS Phat/lite's GBA mode).
  • FluBBa: S8DS (used to launch Sega Master System/Game Gear ROMs).
  • Alekmaul & wavemotion: StellaDS, A5200DS, A7800DS, and XEGS-DS (used to launch Atari 2600/5200/7800/XEGS ROMs).

Graphics & Themes:

  • spinal_cord: DSi4DS and DSision2 graphics.
  • StarvingArtist: Game Console icons.
  • FlameKat53: Manual icon for DSi theme's SELECT menu.
  • fail0verflow, Fluto, and Arkhandar: Homebrew Channel/Launcher graphics.
  • davi: Border for GBC theme (originally for GameYob).
  • NightScript: Reworked Manual pages.

Music:

  • IkaMusumeYiyaRoxie: General N64 MIDI Soundfont, used for the title splash fanfare.


Advertising: