More actions
TWiLight Menu++ | |
---|---|
General | |
Author | DS-Homebrew |
Type | Title Launchers |
Version | 27.11.1 |
License | GPL-3.0 |
Last Updated | 2024/11/02 |
Links | |
Download | |
Website | |
Source | |
Support Author | |
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: Using GBARunner2 or native GBA mode.
- 3DS/2DS users: Play DS games in 16:10 widescreen! Not all games will work with this feature.
Installation
Release includes nds-bootstrap.
User guide
Useful links
- TWiLight Menu++ DS Compatibility List.
- TWiLight Menu++ official website.
- Tutorials from CFWaifu.
- TwilightBoxart (Box Art downloader for TWL++ by KirovAir) and Manual.
- Homebrew Video Players for the Nintendo DS(i).
Emulators on the DS/DSi
Below is the list of emulators and loaders that have been bundled into TWiLight Menu++ (in /_nds/TWiLightMenu/emulators/). They can be run on DS/DSi/3DS (in DS/DSi mode).
Format | Loader | Extensions | Save file |
---|---|---|---|
ARGV1 | Native | .argv | |
Atari 2600 | StellaDS | .a26 | |
Atari 5200 | A5200DS | .a52 | |
Atari 7800 | A7800DS | .a78 | |
Atari XEGS | A8DS (XEGS-DS) | .xex, .atr | |
ColecoVision | S8DS, ColecoDS | .col | |
DS | nds-bootstrap, flashcard kernel, native | .nds, .dsi, .ids, .srl, .app | saves/[rom name].sav2 |
DSiWare | Unlaunch, nds-bootstrap | .nds, .dsi, .ids, .srl, .app | saves/[rom name].pub, saves/[rom name].prv |
DSTWO Plugin | DSTWO3 | .plg | |
Game Boy (Color) | GameYob DS | .gb, .sgb, .gbc | [rom name].sav |
Game Boy Advance | GBARunner24, native5 | .agb, .gba, .mb | [rom name].sav |
Game Gear | S8DS | .gg | [rom name].gg.sav |
Genesis/Mega Drive | jEnesisDS, PicoDriveTWL | .gen | [rom name].srm6 |
Intellivision | Nintellivision | .int | |
Master System | S8DS | .sms | [rom name].sms.sav |
Neo Geo Pocket (Color) | NGPDS | .ngp, .ngc | /data/ngpds/[rom name].ngp.fla |
Fast Video | FastVideoDS | .fv | |
NES/Famicom | nesDS | .nes, .fds | [rom name].sav |
PC Engine/TurboGrafx-16 | NitroGrafx | .pce | |
Rocket Video | Rocket Video Player | .rvid | |
SG-1000 | S8DS, ColecoDS | .sg | |
Sord M5 | ColecoDS | .m5 | |
SNES | SNEmulDS | .smc, .sfc | [rom name].srm |
WonderSwan (Color) | NitroSwan | .ws, .wsc | ??? |
Xvid | tuna-viDS | .avi |
- Text files containing the path to a DS homebrew app and arguments to launch it with, see nds-hb-menu’s README for more info
- Only for retail ROMs, homebrew do not have specific save files
- Only works from a SuperCard DSTWO flashcard as it has additional processing power and RAM inside the flashcard
- When running in DSi Mode, it can use the DSP for better sound
- Requires a Slot-2 flashcart and thus only works on DS Phat and DS Lite
- jEnesis can only save when running from a flashcard, but PicoDriveTWL can save from SD and flashcard
Notes on specific emulators
RAM Disks:
- In order for jEnesisDS, neoDS and SNEmulDS to work on the DSi SD card, you’ll have to use a RAM disk with nds-bootstrap.
- RAM disk makers exist for jEnesisDS & SNEmulDS and are built into TWiLight Menu++. You will need to create your own RAM disk for neoDS. See Creating RAM Disks on how to do so.
- The reason why RAM disks are used is because these emulators, ARM7 hooks don’t work properly.
Comparison between PicoDriveTWL and jEnesisDS:
PicoDriveTWL | jEnesisDS |
---|---|
Made for DSi. | Made for DS. |
Does not require RAM Disks. | Require RAM Disks. |
Support saving on DSi SD cards, quicker loading time. | Does not support saving on DSi SD cards. |
Support arguments. | Does not support arguments. |
2.5MB limit on Flashcard (can use DSi extra RAM & DS Memory Pak). | 3MB limit on all platforms. |
No sound. | With sound emulation. |
Extremely choppy. | Smooth framerate. |
FAQ
Q. 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.
Q. 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.
Q. 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.
Q. 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/
Q. 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.
Q. 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.
Q. 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.
Q. 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.
Q. 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++.
Q. 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).
Q. Why isn’t touch input working on sudokuhax?
Depending on the save file of sudokuhax, the touch screen inputs may not work.
Q. 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, SEGA Saturn, Homebrew Launcher themes:
Left/Right - Select a game/app
A/Start - Launch game/app
L/R/Select+Left/Right - Switch pages
Select+Up/Down, then release Select (DSi/Saturn/HBL theme) - Switch between SD card and flashcard
X - Delete/hide game
Y - Per-game settings
Select (DSi/Saturn/HBL theme) - The Select menu or DS Classic Menu (Where system menu, TWiLight Menu++ Settings, and GBA Mode can be accessed)
Select+X - Set default starting directory
Per-game setting:
X - Cheat menu
A - Toggle cheat (in cheat menu)
B - Exit cheat menu (in cheat menu)
X - Save and exit cheat menu (in cheat menu)
Y - Show cheat description (in cheat menu)
L - Disable all cheats (in cheat menu)
R4 theme:
Up/Down - Select a game/app
A - Launch game/app
L - Switch between the SD card and flashcard
Y - Per-game settings
Per-game setting:
X - Cheat menu
A - Toggle cheat (in cheat menu)
B - Exit cheat menu (in cheat menu)
X - Save and exit cheat menu (in cheat menu)
Y - Show cheat description (in cheat menu)
L - Disable all cheats (in cheat menu)
Boot shortcuts:
These should be pressed on the TWiLight Menu++ splash screen/right after the Nintendo DSi splash screen.
Select - Open settings
A+B+X+Y - Reset all TWiLight Menu++ settings
B - Boot the last ran ROM
Media
SRLoader (now TWiLight Menu++) - DS and (S)GB(C) from SD Card on DSi (Rojelio Reyes)
Changelog
v27.11.1
Bug fixes
- Fixed the support of 32KB DLDI drivers causing some homebrew apps (ex. dumpTool, Safe NAND Manager, GodMode9i, emulators, etc.) to not work correctly and/or not exit back to TWLMenu++.
- N-Card's DLDI driver is now compressed in the bootstub RAM space.
- Fixed bootstub not being preserved when booting a homebrew app in DS mode (switched from DSi mode) from flashcards.
- @lifehackerhansol: Autobooting is now supported for DSTT and it's clones with a non-SDHC microSD card inserted!
- Wood UI theme: Fixed crash when pressing D-Pad Right with 2 files/folders or less on-screen.
Credits
Main Developers:
- Rocket Robz: Lead Developer.
- 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 skins off the SD card for the R4 theme, implemented sorting & made manuals use PNG, improved font rendering, providing a custom background for Unlaunch, managing translations, and various bug fixes.
Secondary Developers:
- DieGo: Adding support for custom ROM/folder icons and improvements for custom skins.
- lifehackerhansol: Improving support for flashcard autobooting and kernel loading.
- NightScript: Code cleanup, defining code standards, added flashcard functionality for Wood UI theme, manual pages.
App Launchers:
- ahezard, shutterbug2000 and Rocket Robz: nds-bootstrap (used for launching Nintendo DS(i) ROMs off the SD card).
- Alekmaul: AmeDS (used for launching Amstrad CPC ROMs).
- Alekmaul & wavemotion: StellaDS, A5200DS, A7800DS, A8DS (used for launching Atari 2600/5200/7800/XEGS ROMs), and ColecoDS (used for launching ColecoVision, MSX, Sord M5, and Sega SG-1000/SC-3000 ROMs).
- archiede: SNEmulDS (used for launching SNES ROMs).
- chishm: tuna-viDS (used for playing Xvid videos)
- Drenn: GameYob (used for launching Gameboy ROMs).
- FluBBaOfWard: S8DS (used for launching Sega Master System, Game Gear, SG-1000/SG-3000, and ColecoVision ROMs), NitroGrafx (used for launching PC Engine/TurboGrafx-16 ROMs), NitroSwan (used for launching WonderSwan ROMs), and NGPDS (used for launching Neo Geo Pocket ROMs).
- FluBBaOfWard, Coto, and Loopy: nesDS (used for launching NES ROMs).
- Apache Thunder: TWL Edition of nesDS.
- Gericom: FastVideoDSPlayer (used for launching FastVideoDS videos) & GBARunner2 (used for launching GameBoy Advance ROMs outside of the DS Phat/Lite's GBA mode).
- therealteamplayer: Hicode+DSP merged builds of GBARunner2 included for DSi/3DS.
- unresolvedsymbol: rom3M+master "DSL-Enhanced" builds of GBARunner2 included for playing Pokémon: Emerald Version on flashcards.
- Lordus: jEnesisDS (used for launching Sega Mega Drive/Genesis ROMs)
- redbug26: CrocoDS (used for launching Amstrad CPC ROMs).
- Ryan FB, Rocket Robz, and xonn83: PicoDriveTWL (used for launching large Sega Mega Drive/Genesis ROMs).
- wavemotion: Nintellivision/NINTV-DS (used for launching Intellivision ROMs).
Graphics & Themes:
- Absent-Reality: Intellivision icon.
- davi: Border for GBC theme (originally for GameYob).
- fail0verflow, Fluto, and Arkhandar: Homebrew Channel/Launcher graphics.
- FlameKat53: Manual icon for DSi theme's
SELECT
menu. - Mr. Start: Super Nintendo DS splash screen.
- PW5190: Kirby-themed TWLMenu++ splash screen.
- spinal_cord: DSi4DS and DSision2 graphics.
- StarvingArtist: Game Console icons.
Music:
- BlastoiseVeteran: Remastered version of Nintendo DSi Shop music.
- IkaMusumeYiyaRoxie: General N64 MIDI Soundfont, used for the title splash fanfare on old versions.
Sound
- dbry: Xtreme Quality IMA-ADPCM decoder code from adpcm-xq..
- Firexploit: 3DS UI sounds for the 3DS theme, which some are also used in the DSi theme.
Others:
- ahezard: NDMA code from nds-bootstrap.
- Another World & Yellow Wood Goblin: The original akMenu/Wood UI.
- Arisotura: ROM list from melonDS, and BIOS dumper code from dsibiosdumper.
- Dartz150: Provided fix for Iridion II & Top Gun: Combat Zones GBA games.
- devkitPro: Code used in nds-hb-menu, and the use of the bootloader, devkitARM, libnds, and libfat.
- edo9300: DS Phat check code.
- Gericom, TrolleyDave, and FAST6191: GBA SRAM-patching code, used in gbapatcher (SRAM patching thread at GBAtemp)
- Gericom & profi200: GBA color correction code, used in GBARunner3.
- Nikokaro: Found no-tilt patches for WarioWare: Twisted!, and Yoshi Topsy-Turvy. (GBAtemp thread).
- profi200: Improved SD code from fastboot3DS.
- RadDude McCoolguy, fintogive, KazoWAR, Vague Rant, gamemasterplc, Rocket Robz, ChampionLeake, DeadSkullzJr, spellboundtriangle, LedyBacer: Widescreen cheats.
- retrogamefan & Rudolph: Included AP-patches for nds-bootstrap.
- enler: Fixing AP-patch for Pokemon Black 2 (Japan) for DS⁽ⁱ⁾ mode compatibility.
- Rocket Robz: Fixing some DS⁽ⁱ⁾-Enhanced game AP-patches for DS⁽ⁱ⁾ mode compatibility.
- SNBeast: Unlaunch patches.
- Taiju Yamada: Code used to bypass R4i-SDHC boot file protection.
Translators:
- Arabic: Ken Brown, SLG3.
- Bulgarian: Peter0x44, Tescu.
- Catalan:
- Chinese Simplified: cai_miao, Chris, Forbidden, James-Makoto, R-YaTian, Yukino Song, 曾国立, 天天地地人人, 百地 希留耶.
- Chinese Traditional: cai_miao, ccccchoho, James-Makoto, Rintim, 奇诺比奥.
- Czech: Štěpán Dolský.
- Danish: jonata, Michael Millet, Nadia Pedersen.
- Dutch: Arthur, guusbuk, Mikosu, Minionguyjpro, Xtremegamer007.
- French: Arcky, cooolgamer, Dhalian, maximesharp, Ghost0159, Léo, LinuxCat, Martinez, NightScript, SLG3, SombrAbsol, TM-47, Yolopix.
- German: ariebe9115, Blurry Knight, Christian Schuhmann, Dubsenbert Reaches, Fırat Tay, hehe, İlke Hür Eyiol, Julian, Kazuto, malekairmaroc7, Michael Brey, Oleh Hatsenko, SkilLP, SuperSaiyajinStackZ, Tcm0, TheDude, TM-47, Uriki.
- Greek: Anestis1403.
- Hebrew: Barawer, Yaniv Levin.
- Hungarian: Viktor Varga, ハトヴィング -- ハット.
- Indonesian: Cyruz Wings, Farid Irwan, heydootdoot, Shiori.
- Italian: Alessandro Tavolieri, Leonardo Ledda, Mattia, TM-47, Vendicatorealato, xavimel.
- Japanese: Chromaryu, inucat, Pk11, kuragehime, rinrinrin2002, Rintim, Ronny Chan, Uriki.
- Korean: DDinghoya, lifehackerhansol, I'm Not Cry, Myebyeol_NOTE, Oleh Hatsenko, 그그기그.
- Norwegian: Nullified Block.
- Polish: Avginike, gierkowiec tv, Kipi000, Konrad Borowski, MaksCROWDIN0, Mateusz Tobiasz, Michał Słonina, RedstonekPL, TheCasachii.
- Portuguese (Brazil): César Memère, Jeff Sousa, themasterf, Victor Coronado.
- Portuguese (Portugal): bruwyvn, Christopher Rodrigues, Gabz Almeida, jim, joyrv, leteka 1234, Rodrigo Tavares, Tiago Silva, Wodson de Andrade, Wodson de Andrade, Zak.
- Romanian: Tescu.
- Russian: Alexey Barsukov, Ckau, manwithnoface, mbhz, MMR Marler, Nikita, Молодая Кукуруза.
- Ryukyuan: kuragehime.
- Spanish: Adrin Ramen, Adrian Rodriguez, Allinxter, beta215, ccccmark, dimateos, Kaede159, KplyAsteroid, mschifino, Nicolás Herrera Concha, Nintendo R, nuxa17, Radriant, SofyUchiha, TM-47, Uriki, XxPhoenix1996xX.
- Swedish: Max Hambraeus, Nullified Block, TM-47, Victor Ahlin, Walter Lindell.
- Turkish: Alp, Egehan.TWL, Emir, GlideGuy06, Grandmaquil, imbeegboi22, İlke Hür Eyiol, rewix32, rewold20, Yağmur Celep.
- Ukrainian: Oleh Hatsenko, Mykola Pukhalskyi, TM-47, вухаста гітара.
- Valencian: tsolo.
- Vietnamese: Chử Tiến Bình, daicahuyoi Đỗ Minh Hiếu, hotungkhanh, Trương Hồng Sơn.
External links
- Official website - https://wiki.ds-homebrew.com/twilightmenu
- GitHub (TWiLightMenu) - https://github.com/DS-Homebrew/TWiLightMenu
- GitHub (TWLBot) - https://github.com/TWLBot/Builds
- Manual - https://manual.ds-homebrew.com/
- GBAtemp - https://gbatemp.net/threads/ds-i-3ds-twilight-menu-gui-for-ds-i-games-and-ds-i-menu-replacement.472200