TWiLight Menu++ ist ein Open-Source-DSi-Menü-Upgrade/-Ersatz für die Lernkarten Nintendo DSi, Nintendo 3DS und Nintendo DS. Es kann Nintendo DS(i), SNES, NES, GameBoy (Color), GameBoy Advance, Sega GameGear/Master System, SG-1000/SC-3000 & Mega Drive/Genesis, Atari 2600/5200/7800/XEGS, MSX starten , Intellivision, Neo Geo Pocket, Sord M5, PC Engine/TurboGrafx-16, WonderSwan und ColecoVision ROMs sowie DSTWO-Plugins (wenn Sie ein DSTWO verwenden).
Zum Kompilieren dieser App sind devkitPros devkitARM, libnds, grit und mmutil erforderlich. Diese können mit devkitPro pacman mit dem folgenden Befehl installiert werden:
sudo dkp-pacman -S nds-dev
(Hinweis: Der Befehl variiert je nach Betriebssystem, sudo wird möglicherweise nicht benötigt und es kann stattdessen nur pacman
sein.)
Das Repository enthält Submodule, daher müssen Sie rekursiv klonen:
git clone --recursive https://github.com/DS-Homebrew/TWiLightMenu.git
Wenn Sie die Submodule geklont haben, ohne sie abzurufen, können Sie sie anschließend aktualisieren:
git submodule update --init --recursive
Sobald Sie die Toolchains von devkitPro installiert haben, können Sie das gesamte TWiLight Menu++ erstellen, indem Sie einfach make package
im Stammverzeichnis des Repositorys ausführen. Wenn Sie nur einen bestimmten Teil von TWiLight Menu++ erstellen möchten, können Sie cd
in diesen Ordner wechseln und make dist
ausführen.
Sobald die Erstellung abgeschlossen ist, befinden sich die Ausgabedateien im Ordner 7zfile
und folgen derselben Verzeichnisstruktur wie die offiziellen TWiLightMenu.7z
Builds.
Mit dem mitgelieferten Docker-Image können Sie TWiLight Menu++ einfach kompilieren, ohne die erforderliche Version von devkitARM mithilfe der bereitgestellten PowerShell-Skripte ( .ps1
) manuell einrichten zu müssen.
Das Skript akzeptiert auch make
Argumente. Beispielsweise bereinigt .compile_docker.ps1 clean
die Verzeichnisse vom gesamten kompilierten Code. Wenn Sie alle Artefakte erstellen möchten, führen Sie .compile_docker.ps1 package
aus.
Bitte beachten Sie, dass die Docker-Kompilierung nicht mit der nativen Kompilierung unter Windows kompatibel ist. Sie sollten .compile_docker.ps1 clean
ausführen, um die Artefakte zu bereinigen, bevor Sie versuchen, mit Docker zu erstellen. Wenn Sie in einer Benachrichtigung aufgefordert werden, Ihr Laufwerk freizugeben, müssen Sie die Laufwerksfreigabe aktivieren, damit Docker unter Windows funktioniert.
Die Handbuchseiten werden in einem separaten Repository gespeichert und beim Erstellen von TWiLight Menu++ von einer Version heruntergeladen. Weitere Informationen finden Sie im twilight-manual-Repository.
TWiLight Menu++ besteht aus mehreren „Unterprojekten“, die alle zusammenarbeiten, um den DSi-Menü-Ersatz zu erstellen. Die meisten Unterordner im Repository enthalten ihren eigenen Code, der eine xxx.nds
Datei kompiliert, die im Allgemeinen nach /_nds/TWiLightMenu/xxx.srldr
innerhalb der 7z
-Datei (oder 7zfile
Ordners) kopiert wird.
3dssplash : öffnet 3ds- und CIA-Dateien (?)
Kompiliert nach /_nds/TWiLightMenu/3dssplash.srldr
booter : Haupteinstiegspunkt, die erste von der Konsole geladene Datei, wenn eine SD-Karte oder CFW verwendet wird
Erstellt /BOOT.nds
und /title/00030004/53524c41/content/00000000.app
(gleiche Datei).
booter_fc : Haupteinstiegspunkt für Lernkarten
Erstellt _DS_MENU.dat
, dsedgei.dat
, akmenu4.nds
, _DSMENU.nds
, SCFW.SC
und andere.
gbapatcher
Bildansicht : Bildbetrachter ähnlich der DSi-Kamera (GIF, PNG, BMP)
/_nds/TWiLightMenu/imageview.srldr
Handbuch : Bedienungsanleitung für TWiLight Menu++
Erstellt /_nds/TWiLightMenu/manual.srldr
Quickmenu : DS Lite-Menü, die alte klassische Benutzeroberfläche
Erstellt /_nds/TWiLightMenu/mainmenu.srldr
Ressourcen : Führt die Antipiraterie- und Widescreen-Patches in einer Paketdatei zusammen
/_nds/TWiLightMenu/extras/apfix.pck
und /_nds/TWiLightMenu/extras/widescreen.pck
romsel_aktheme : Menü für das Wood UI-Theme
Erstellt /_nds/TWiLightMenu/akmenu.srldr
romsel_dsimenutheme : Menü für das DSi-Design, das von „Nintendo DSi“, „Nintendo 3DS“, „SEGA Saturn“ und „Homebrew Launcher“ verwendet wird.
Erstellt /_nds/TWiLightMenu/dsimenu.srldr
romsel_r4theme : Menü für das R4-Theme, das von „R4 Original“ und „Gameboy Color“ verwendet wird
Erstellt /_nds/TWiLightMenu/r4menu.srldr
Einstellungen : Einstellungsmenü
Erstellt /_nds/TWiLightMenu/settings.srldr
Slot1launch :
Erstellt /_nds/TWiLightMenu/slot1launch.srldr
Titel : Boot-Begrüßungsbildschirm (standardmäßig Nintendo-Logo)
Erstellt /_nds/TWiLightMenu/main.srldr
Sie können bei der Übersetzung von TWiLight Menu++ im Crowdin-Projekt helfen. Wenn Sie das Hinzufügen einer neuen Sprache anfordern möchten, fragen Sie bitte auf dem Discord-Server nach.
Rocket Robz: Hauptentwickler
Chyyran: Portierung der akMenu/Wood-Benutzeroberfläche auf TWiLight Menu++ und Hinzufügen der Möglichkeit, Unterthemen von der SD-Karte für DSi/3DS-Themen zu laden
Pk11: Hinzufügen der Möglichkeit, Skins für das R4-Design von der SD-Karte zu laden, Sortierung implementiert und Handbücher auf PNG umgestellt, verbesserte Schriftartenwiedergabe, Bereitstellung eines benutzerdefinierten Hintergrunds für Unlaunch, Verwaltung von Übersetzungen und verschiedene Fehlerbehebungen
DieGo: Unterstützung für benutzerdefinierte ROM-/Ordnersymbole und Verbesserungen für benutzerdefinierte Skins hinzugefügt
lifehackerhansol: Verbesserung der Unterstützung für Flashcard-Autobooting und Kernel-Laden sowie libnds32-Fork für 32-KB-DLDI-Treiberunterstützung
NightScript: Codebereinigung, Definition von Codestandards, hinzugefügte Flashcard-Funktionalität für das Wood UI-Theme, Handbuchseiten
ahezard, Shutterbug2000 und Rocket Robz: nds-bootstrap (wird zum Starten von Nintendo DS(i)-ROMs von der SD-Karte verwendet)
Alekmaul: AmeDS (wird zum Starten von Amstrad CPC ROMs verwendet)
Alekmaul & wavemotion: StellaDS, A5200DS, A7800DS, A8DS (zum Starten von Atari 2600/5200/7800/XEGS-ROMs verwendet) und ColecoDS (zum Starten von ColecoVision-, MSX-, Sord M5- und Sega SG-1000/SC-3000-ROMs)
Archie: SNEmulDS (wird zum Starten von SNES-ROMs verwendet)
Coto: SNEmulDS Revival
chishm: tuna-viDS (wird zum Abspielen von Xvid-Videos verwendet)
Drenn: GameYob (wird zum Starten von Gameboy-ROMs verwendet)
FluBBaOfWard: S8DS (wird zum Starten von Sega Master System-, Game Gear-, SG-1000/SG-3000- und ColecoVision-ROMs verwendet), NitroGrafx (wird zum Starten von PC Engine/TurboGrafx-16-ROMs verwendet), NitroSwan (wird zum Starten von WonderSwan-ROMs verwendet), und NGPDS (wird zum Starten von Neo Geo Pocket ROMs verwendet)
FluBBaOfWard, Coto und Loopy: nesDS (wird zum Starten von NES-ROMs verwendet)
Apache Thunder: TWL-Edition von nesDS
Gericom: FastVideoDSPlayer (zum Starten von FastVideoDS-Videos) und GBARunner2 (zum Starten von GameBoy Advance-ROMs außerhalb des GBA-Modus des DS Phat/Lite)
therealteamplayer: Zusammengeführte Hicode+DSP-Builds von GBARunner2 für DSi/3DS enthalten
unresolvedsymbol: rom3M+master „DSL-Enhanced“-Builds von GBARunner2 zum Spielen von Pokémon: Emerald Version auf Karteikarten enthalten
Lordus: jEnesisDS (wird zum Starten von Sega Mega Drive/Genesis-ROMs verwendet)
xonn83: GBMacro-Version von jEnesisDS
redbug26: CrocoDS (wird zum Starten von Amstrad CPC ROMs verwendet)
Ryan FB, Rocket Robz und xonn83: PicoDriveTWL (wird zum Starten großer Sega Mega Drive/Genesis-ROMs verwendet)
wavemotion: Nintellivision/NINTV-DS (wird zum Starten von Intellivision-ROMs verwendet)
Absent-Reality: Intellivision-Symbol
davi: Rahmen für GBC-Theme (ursprünglich für GameYob)
fail0verflow, Fluto und Arkhandar: Homebrew Channel/Launcher-Grafiken
FlameKat53: Manuelles Symbol für SELECT
-Menü des DSi-Themes
Mr. Start: Begrüßungsbildschirm des Super Nintendo DS
PW5190: TWLMenu++-Begrüßungsbildschirm im Kirby-Stil
spinal_cord: DSi4DS- und DSision2-Grafiken
StarvingArtist: Spielekonsolen-Symbole
BlastoiseVeteran: Remasterte Version der Nintendo DSi Shop-Musik
IkaMusumeYiyaRoxie: Allgemeiner N64-MIDI-Soundfont, der für die Titel-Splash-Fanfare in alten Versionen verwendet wird
dbry: Xtreme Quality IMA-ADPCM-Decodercode von adpcm-xq.
Firexploit: 3DS-UI-Sounds für das 3DS-Theme, die teilweise auch im DSi-Theme verwendet werden.
ahezard: NDMA-Code von nds-bootstrap
Another World & Yellow Wood Goblin: Die ursprüngliche akMenu/Wood-Benutzeroberfläche
Arisotura: ROM-Liste von melonDS und BIOS-Dumper-Code von dsibiosdumper
Dartz150: Korrektur für die GBA-Spiele Iridion II und Top Gun: Combat Zones bereitgestellt
devkitPro: Im nds-hb-menu verwendeter Code und die Verwendung des Bootloaders, devkitARM, libnds und libfat
edo9300: DS Phat-Prüfcode
Gericom, TrolleyDave und FAST6191: GBA SRAM-Patching-Code, verwendet in gbapatcher (SRAM-Patching-Thread bei GBAtemp)
Gericom & profi200: GBA-Farbkorrekturcode, verwendet in GBARunner3
Nikokaro: No-Tilt-Patches für WarioWare: Twisted gefunden! , und Yoshi Topsy-Turvy . (GBAtemp-Thread)
profi200: Verbesserter SD-Code von fastboot3DS
RadDude McCoolguy, Fintogive, KazoWAR, Vague Rant, Gamemasterplc, Rocket Robz, ChampionLeake, DeadSkullzJr, Spellboundtriangle, LedyBacer: Widescreen-Cheats
retrogamefan & Rudolph: Enthaltene AP-Patches für NDS-Bootstrap
enler: Korrektur des AP-Patches für Pokemon Black 2 (Japan) für DS⁽ⁱ⁾-Modus-Kompatibilität
Rocket Robz: Korrektur einiger DS⁽ⁱ⁾-verbesserter Spiel-AP-Patches für die DS⁽ⁱ⁾-Modus-Kompatibilität
SNBeast: Patches veröffentlichen
Taiju Yamada: Code zur Umgehung des R4i-SDHC-Bootdateischutzes
Arabisch: Ken Brown, SLG3
Bulgarisch: Peter0x44, Tescu
Katalanisch:
Vereinfachtes Chinesisch: cai_miao, Chris, Forbidden, James-Makoto, R-YaTian, Yukino Song, 曾国立, 天天地地人人, 百地 希留耶
Traditionelles Chinesisch: cai_miao, ccccchoho, James-Makoto, Rintim, 奇诺比奥
Tschechisch: Štěpán Dolský
Dänisch: Jonata, Michael Millet, Nadia Pedersen
Niederländisch: Arthur, guusbuk, Mikosu, Minionguyjpro, Xtremegamer007
Französisch: Arcky, Cooolgamer, Dhalian, Maximesharp, Ghost0159, Léo, LinuxCat, Martinez, NightScript, SLG3, SombrAbsol, TM-47, Yolopix
Deutsch: 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
Griechisch: Anestis1403
Hebräisch: Barawer, Yaniv Levin
Ungarisch: Viktor Varga, ハトヴィング – ハット
Indonesisch: Cyruz Wings, Farid Irwan, heydootdoot, Shiori
Italienisch: Alessandro Tavolieri, Leonardo Ledda, Mattia, TM-47, Vendicatorealato, xavimel
Japanisch: Chromaryu, inucat, Pk11, kuragehime, rinrinrin2002, Rintim, Ronny Chan, Uriki
Koreanisch: DDinghoya, lifehackerhansol, I'm Not Cry, Myebyeol_NOTE, Oleh Hatsenko, 그그기그
Norwegisch: Aufgehobener Block
Polnisch: Avginike, gierkowiec tv, Kipi000, Konrad Borowski, MaksCROWDIN0, Mateusz Tobiasz, Michał Słonina, RedstonekPL, TheCasachii
Portugiesisch (Brasilien): César Memère, Jeff Sousa, themasterf, Victor Coronado
Portugiesisch (Portugal): bruwyvn, Christopher Rodrigues, Gabz Almeida, jim, joyrv, leteka 1234, Rodrigo Tavares, Tiago Silva, Wodson de Andrade, Wodson de Andrade, Zak
Rumänisch: Tescu
Russisch: Alexey Barsukov, Ckau, manwithnoface, mbhz, MMR Marler, Nikita, Молодая Кукуруза
Ryukyuan: Kuragehime
Spanisch: Adrin Ramen, Adrian Rodriguez, Allinxter, beta215, ccccmark, dimateos, Kaede159, KplyAsteroid, mschifino, Nicolás Herrera Concha, Nintendo R, nuxa17, Radriant, SofyUchiha, TM-47, Uriki, XxPhoenix1996xX
Schwedisch: Max Hambraeus, Nullified Block, TM-47, Victor Ahlin, Walter Lindell
Türkisch: Alp, Egehan.TWL, Emir, GlideGuy06, Grandmaquil, imbeegboi22, İlke Hür Eyiol, rewix32, rewold20, Yağmur Celep
Ukrainisch: Oleh Hatsenko, Mykola Pukhalskyi, TM-47, вухаста гітара
Valencianisch: tsolo
Vietnamesisch: Chử Tiến Bình, daicahuyoi Đỗ Minh Hiếu, hotungkhanh, Trương Hồng Sơn