TWiLight Menu++ est une mise à niveau/remplacement du menu DSi open source pour les cartes flash Nintendo DSi, Nintendo 3DS et Nintendo DS. Il peut lancer 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. , Intellivision, Neo Geo Pocket, Sord M5, PC Engine/TurboGrafx-16, WonderSwan et ColecoVision, ainsi que les plugins DSTWO (si vous utilisez un DSTWO).
La compilation de cette application nécessite devkitARM, libnds, grit et mmutil de devkitPro. Ceux-ci peuvent être installés à l'aide de devkitPro pacman avec la commande suivante :
sudo dkp-pacman -S nds-dev
(Remarque : la commande varie selon le système d'exploitation, sudo peut ne pas être nécessaire et il peut s'agir simplement pacman
à la place.)
Le référentiel contient des sous-modules, vous devez donc cloner de manière récursive :
git clone --recursive https://github.com/DS-Homebrew/TWiLightMenu.git
Si vous avez cloné sans extraire les sous-modules, vous pouvez les mettre à jour par la suite :
git submodule update --init --recursive
Une fois que vous avez installé les chaînes d'outils de devkitPro, vous pouvez créer l'intégralité de TWiLight Menu++ en exécutant simplement make package
à la racine du référentiel. Si vous souhaitez uniquement créer une partie spécifique de TWiLight Menu++, vous pouvez cd
à ce dossier et exécuter make dist
.
Une fois la construction terminée, les fichiers de sortie seront dans le dossier 7zfile
suivant la même structure de répertoires que les versions officielles TWiLightMenu.7z
.
À l'aide de l'image Docker incluse, vous pouvez facilement compiler TWiLight Menu++ sans avoir à configurer manuellement la version requise de devkitARM à l'aide des scripts PowerShell ( .ps1
) fournis.
Le script accepte également make
des arguments. Par exemple, .compile_docker.ps1 clean
nettoiera les répertoires de tout le code compilé. Si vous souhaitez créer tous les artefacts, exécutez .compile_docker.ps1 package
.
Veuillez noter que la compilation Docker n'est pas compatible avec la compilation native sous Windows. Vous devez exécuter .compile_docker.ps1 clean
pour nettoyer les artefacts avant de tenter de créer avec Docker. Si une notification apparaît vous demandant de partager votre lecteur, vous devez choisir d'activer le partage de lecteur pour que Docker fonctionne sous Windows.
Les pages de manuel sont stockées dans un référentiel séparé et téléchargées à partir d'une version lors de la création de TWiLight Menu++. Pour plus d'informations, consultez le référentiel twilight-manual.
TWiLight Menu++ est composé de plusieurs « sous-projets » qui travaillent tous ensemble pour créer le remplacement du menu DSi. La plupart des sous-dossiers du référentiel contiennent leur propre code qui compilera un fichier xxx.nds
, qui est généralement copié dans /_nds/TWiLightMenu/xxx.srldr
à l'intérieur du fichier 7z
(ou du dossier 7zfile
).
3dssplash : ouvre les fichiers 3ds et cia (?)
Compilé dans /_nds/TWiLightMenu/3dssplash.srldr
booter : point d'entrée principal, le premier fichier chargé par la console si vous utilisez une carte SD ou CFW
Crée /BOOT.nds
et /title/00030004/53524c41/content/00000000.app
(même fichier).
booter_fc : point d'entrée principal pour les flashcards
Crée _DS_MENU.dat
, dsedgei.dat
, akmenu4.nds
, _DSMENU.nds
, SCFW.SC
et autres.
gbapatcher
imageview : visionneuse d'images similaire à la caméra DSi (gif, png, bmp)
/_nds/TWiLightMenu/imageview.srldr
manuel : manuel d'instructions pour TWiLight Menu++
Crée /_nds/TWiLightMenu/manual.srldr
quickmenu : menu DS Lite, l'ancienne interface utilisateur classique
Crée /_nds/TWiLightMenu/mainmenu.srldr
ressources : fusionne les correctifs antipiratage et grand écran dans un fichier de package
/_nds/TWiLightMenu/extras/apfix.pck
et /_nds/TWiLightMenu/extras/widescreen.pck
romsel_aktheme : menu pour le thème Wood UI
Crée /_nds/TWiLightMenu/akmenu.srldr
romsel_dsimenutheme : menu pour le thème DSi utilisé par "Nintendo DSi", "Nintendo 3DS", "SEGA Saturn" et "Homebrew Launcher"
Crée /_nds/TWiLightMenu/dsimenu.srldr
romsel_r4theme : menu du thème R4 utilisé par "R4 Original" et "Gameboy Color"
Crée /_nds/TWiLightMenu/r4menu.srldr
paramètres : menu paramètres
Crée /_nds/TWiLightMenu/settings.srldr
slot1lancement :
Crée /_nds/TWiLightMenu/slot1launch.srldr
titre : écran de démarrage (logo Nintendo par défaut)
Crée /_nds/TWiLightMenu/main.srldr
Vous pouvez aider à traduire TWiLight Menu++ sur le projet Crowdin. Si vous souhaitez demander l'ajout d'une nouvelle langue, veuillez la demander sur le serveur Discord.
Rocket Robz : développeur principal
chyyran : portage de l'interface utilisateur akMenu/Wood vers TWiLight Menu++ et ajout de la possibilité de charger des sous-thèmes depuis la carte SD pour les thèmes DSi/3DS
Pk11 : Ajout de la possibilité de charger des skins à partir de la carte SD pour le thème R4, mise en œuvre du tri et création de manuels utilisant PNG, rendu des polices amélioré, fourniture d'un arrière-plan personnalisé pour le lancement, gestion des traductions et diverses corrections de bugs.
DieGo : ajout de la prise en charge des icônes de ROM/dossier personnalisées et améliorations des skins personnalisés
lifehackerhansol : amélioration de la prise en charge du démarrage automatique de la carte flash et du chargement du noyau, ainsi que du fork libnds32 pour la prise en charge du pilote DLDI de 32 Ko
NightScript : nettoyage du code, définition des normes de code, ajout d'une fonctionnalité de carte mémoire pour le thème Wood UI, pages de manuel
ahezard, Shutterbug2000 et Rocket Robz : nds-bootstrap (utilisé pour lancer les ROM Nintendo DS(i) à partir de la carte SD)
Alekmaul : AmeDS (utilisé pour lancer les ROM Amstrad CPC)
Alekmaul & wavemotion : StellaDS, A5200DS, A7800DS, A8DS (utilisés pour lancer les ROM Atari 2600/5200/7800/XEGS) et ColecoDS (utilisés pour lancer les ROM ColecoVision, MSX, Sord M5 et Sega SG-1000/SC-3000)
archiede : SNEmulDS (utilisé pour lancer les ROM SNES)
Coto : la renaissance de SNEmulDS
chishm : tuna-viDS (utilisé pour lire des vidéos Xvid)
Drenn : GameYob (utilisé pour lancer les ROM Gameboy)
FluBBaOfWard : S8DS (utilisé pour lancer les ROM Sega Master System, Game Gear, SG-1000/SG-3000 et ColecoVision), NitroGrafx (utilisé pour lancer les ROM PC Engine/TurboGrafx-16), NitroSwan (utilisé pour lancer les ROM WonderSwan), et NGPDS (utilisé pour lancer les ROM Neo Geo Pocket)
FluBBaOfWard, Coto et Loopy : nesDS (utilisé pour lancer les ROM NES)
Apache Thunder : édition TWL de nesDS
Gericom : FastVideoDSPlayer (utilisé pour lancer des vidéos FastVideoDS) & GBARunner2 (utilisé pour lancer des ROM GameBoy Advance en dehors du mode GBA de DS Phat/Lite)
Therealteamplayer : versions fusionnées Hicode+DSP de GBARunner2 incluses pour DSi/3DS
symbole non résolu : versions rom3M+master "DSL-Enhanced" de GBARunner2 incluses pour jouer à Pokémon : Version Émeraude sur des flashcards
Lordus : jEnesisDS (utilisé pour lancer les ROM Sega Mega Drive/Genesis)
xonn83 : version GBMacro de jEnesisDS
redbug26 : CrocoDS (utilisé pour lancer les ROM Amstrad CPC)
Ryan FB, Rocket Robz et xonn83 : PicoDriveTWL (utilisé pour lancer de grandes ROM Sega Mega Drive/Genesis)
wavemotion : Nintellivision/NINTV-DS (utilisé pour lancer les ROM Intellivision)
Absence-Réalité : icône Intellivision
davi : Thème Border pour GBC (à l'origine pour GameYob)
fail0verflow, Fluto et Arkhandar : graphiques Homebrew Channel/Launcher
FlameKat53 : icône manuelle pour le menu SELECT
du thème DSi
Mr. Start : écran de démarrage de la Super Nintendo DS
PW5190 : écran de démarrage TWLMenu++ sur le thème de Kirby
spinal_cord : graphiques DSi4DS et DSision2
StarvingArtist : icônes de la console de jeu
BlastoiseVeteran : version remasterisée de la musique de la boutique Nintendo DSi
IkaMusumeYiyaRoxie : General N64 MIDI Soundfont, utilisé pour la fanfare du titre sur les anciennes versions
dbry : code du décodeur IMA-ADPCM de qualité Xtreme d'adpcm-xq.
Firexploit : des sons de l'interface utilisateur 3DS pour le thème 3DS, dont certains sont également utilisés dans le thème DSi.
ahezard : code NDMA de nds-bootstrap
Another World & Yellow Wood Goblin : l'interface utilisateur originale akMenu/Wood
Arisotura : liste ROM de melonDS et code de dumper du BIOS de dsibiosdumper
Dartz150 : correctif fourni pour les jeux Iridion II et Top Gun : Combat Zones GBA
devkitPro : code utilisé dans nds-hb-menu et utilisation du chargeur de démarrage, devkitARM, libnds et libfat
edo9300 : code de vérification DS Phat
Gericom, TrolleyDave et FAST6191 : code de correctif GBA SRAM, utilisé dans gbapatcher (thread de correctif SRAM chez GBAtemp)
Gericom & profi200 : code de correction des couleurs GBA, utilisé dans GBARunner3
Nikokaro : J'ai trouvé des correctifs sans inclinaison pour WarioWare : Twisted ! , et Yoshi à l'envers . (thème GBAtemp)
profi200 : code SD amélioré de fastboot3DS
RadDude McCoolguy, fintogive, KazoWAR, Vague Rant, gamemasterplc, Rocket Robz, ChampionLeake, DeadSkullzJr, charmboundtriangle, LedyBacer : astuces pour écran large
retrogamefan & Rudolph : patchs AP inclus pour nds-bootstrap
enler : Correction du patch AP pour Pokemon Black 2 (Japon) pour la compatibilité du mode DS⁽ⁱ⁾
Rocket Robz : correction de certains correctifs AP de jeu améliorés DS⁽ⁱ⁾ pour la compatibilité du mode DS⁽ⁱ⁾
SNBeast : débloquer les correctifs
Taiju Yamada : code utilisé pour contourner la protection du fichier de démarrage R4i-SDHC
Arabe : Ken Brown, SLG3
Bulgare : Peter0x44, Tescu
Catalan:
Chinois simplifié : cai_miao, Chris, Forbidden, James-Makoto, R-YaTian, Yukino Song, 曾国立, 天天地地人人, 百地 希留耶
Chinois traditionnel : cai_miao, ccccchoho, James-Makoto, Rintim, 奇诺比奥
Tchèque : Štěpán Dolský
Danois : Jonata, Michael Millet, Nadia Pedersen
Néerlandais : Arthur, guusbuk, Mikosu, Minionguyjpro, Xtremegamer007
Français : Arcky, cooolgamer, Dhalian, maximesharp, Ghost0159, Léo, LinuxCat, Martinez, NightScript, SLG3, SombrAbsol, TM-47, Yolopix
Allemand : ariebe9115, Blurry Knight, Christian Schuhmann, Dubsenbert Reaches, Fırat Tay, hehe, İlke Hür Eyiol, Julian, Kazuto, malekairmaroc7, Michael Brey, Oleh Hatsenko, SkillLP, SuperSaiyajinStackZ, Tcm0, TheDude, TM-47, Uriki
Grec : Anestis1403
Hébreu : Barawer, Yaniv Levin
Hongrois : Viktor Varga, ハトヴィング -- ハット
Indonésien : Cyruz Wings, Farid Irwan, heydootdoot, Shiori
Italiens : Alessandro Tavolieri, Leonardo Ledda, Mattia, TM-47, Vendicatorealato, xavimel
Japonais : Chromaryu, inucat, Pk11, kuragehime, rinrinrin2002, Rintim, Ronny Chan, Uriki
Coréen : DDinghoya, lifehackerhansol, I'm Not Cry, Myebyeol_NOTE, Oleh Hatsenko, 그그기그
Norvégien : bloc annulé
Polonais : Avginike, gierkowiec tv, Kipi000, Konrad Borowski, MaksCROWDIN0, Mateusz Tobiasz, Michał Słonina, RedstonekPL, TheCasachii
Portugais (Brésil) : César Memère, Jeff Sousa, themasterf, Victor Coronado
Portugais (Portugal) : bruwyvn, Christopher Rodrigues, Gabz Almeida, jim, joyrv, leteka 1234, Rodrigo Tavares, Tiago Silva, Wodson de Andrade, Wodson de Andrade, Zak
Roumain : Tescu
Russe : Alexey Barsukov, Ckau, manwithnoface, mbhz, MMR Marler, Nikita, Молодая Кукуруза
Ryukyuan : kuragehime
Espagnol : Adrin Ramen, Adrian Rodriguez, Allinxter, beta215, ccccmark, dimateos, Kaede159, KplyAsteroid, mschifino, Nicolás Herrera Concha, Nintendo R, nuxa17, Radriant, SofyUchiha, TM-47, Uriki, XxPhoenix1996xX
Suédois : Max Hambraeus, Nullified Block, TM-47, Victor Ahlin, Walter Lindell
Turc : Alp, Egehan.TWL, Emir, GlideGuy06, Grandmaquil, imbeegboi22, İlke Hür Eyiol, rewix32, rewold20, Yağmur Celep
Ukrainien : Oleh Hatsenko, Mykola Pukhalskyi, TM-47, вухаста гітара
Valencien : tsolo
Vietnamien : Chử Tiến Bình, daicahuyoi Đỗ Minh Hiếu, hotungkhanh, Trương Hồng Sơn