TWiLight Menu++ es una actualización/reemplazo del menú DSi de código abierto para las tarjetas flash de Nintendo DSi, Nintendo 3DS y Nintendo DS. Puede ejecutar Nintendo DS(i), SNES, NES, GameBoy (Color), GameBoy Advance, Sega GameGear/Master System, SG-1000/SC-3000 y Mega Drive/Genesis, Atari 2600/5200/7800/XEGS, MSX , Intellivision, Neo Geo Pocket, Sord M5, PC Engine/TurboGrafx-16, WonderSwan y ColecoVision ROM, así como complementos DSTWO (si usa un DSTWO).
Para compilar esta aplicación se requieren devkitARM, libnds, grit y mmutil de devkitPro. Estos se pueden instalar usando devkitPro pacman con el siguiente comando:
sudo dkp-pacman -S nds-dev
(Nota: el comando variará según el sistema operativo, es posible que sudo no sea necesario y que en su lugar sea solo pacman
).
El repositorio contiene submódulos, por lo que es necesario clonarlos de forma recursiva:
git clone --recursive https://github.com/DS-Homebrew/TWiLightMenu.git
Si clonó sin extraer los submódulos, puede actualizarlos después:
git submodule update --init --recursive
Una vez que haya instalado las cadenas de herramientas de devkitPro, podrá compilar la totalidad de TWiLight Menu++ simplemente ejecutando make package
en la raíz del repositorio. Si solo desea crear una parte específica de TWiLight Menu++, puede cd
a esa carpeta y ejecutar make dist
.
Una vez que termine de compilarse, los archivos de salida estarán en la carpeta 7zfile
siguiendo la misma estructura de directorios que las compilaciones oficiales TWiLightMenu.7z
.
Usando la imagen de Docker incluida, puede compilar fácilmente TWiLight Menu++ sin tener que configurar manualmente la versión requerida de devkitARM usando los scripts de PowerShell ( .ps1
) proporcionados.
El guión también acepta make
. Por ejemplo, .compile_docker.ps1 clean
limpiará los directorios de todo el código compilado. Si desea compilar todos los artefactos, ejecute .compile_docker.ps1 package
.
Tenga en cuenta que la compilación de Docker no es compatible con la compilación nativa en Windows. Debe ejecutar .compile_docker.ps1 clean
para limpiar los artefactos antes de intentar compilar con Docker. Si aparece una notificación pidiéndole que comparta su unidad, debe elegir habilitar el uso compartido de unidades para que Docker funcione en Windows.
Las páginas del manual se almacenan en un repositorio separado y se descargan desde una versión al crear TWiLight Menu++. Para obtener más información, consulte el repositorio del manual de Crepúsculo.
TWiLight Menu++ se compone de múltiples "subproyectos" que trabajan juntos para crear el reemplazo del menú DSi. La mayoría de las subcarpetas del repositorio contienen su propio código que compilará un archivo xxx.nds
, que generalmente se copia en /_nds/TWiLightMenu/xxx.srldr
dentro del archivo 7z
(o carpeta 7zfile
).
3dssplash : abre archivos 3ds y cia (?)
Compilado en /_nds/TWiLightMenu/3dssplash.srldr
booter : punto de entrada principal, el primer archivo cargado por la consola si se usa una tarjeta SD o CFW
Crea /BOOT.nds
y /title/00030004/53524c41/content/00000000.app
(mismo archivo).
booter_fc : punto de entrada principal para tarjetas didácticas
Crea _DS_MENU.dat
, dsedgei.dat
, akmenu4.nds
, _DSMENU.nds
, SCFW.SC
y otros.
gbapatcher
imageview : visor de imágenes similar a la cámara DSi (gif, png, bmp)
/_nds/TWiLightMenu/imageview.srldr
manual : manual de instrucciones para TWiLight Menu++
Crea /_nds/TWiLightMenu/manual.srldr
menú rápido : menú DS Lite, la antigua interfaz de usuario clásica
Crea /_nds/TWiLightMenu/mainmenu.srldr
recursos : fusiona los parches antipiratería y de pantalla ancha en un archivo de paquete
/_nds/TWiLightMenu/extras/apfix.pck
y /_nds/TWiLightMenu/extras/widescreen.pck
romsel_aktheme : menú para el tema Wood UI
Crea /_nds/TWiLightMenu/akmenu.srldr
romsel_dsimenutheme : menú para el tema DSi utilizado por "Nintendo DSi", "Nintendo 3DS", "SEGA Saturn" y "Homebrew Launcher"
Crea /_nds/TWiLightMenu/dsimenu.srldr
romsel_r4theme : menú para el tema R4 utilizado por "R4 Original" y "Gameboy Color"
Crea /_nds/TWiLightMenu/r4menu.srldr
configuración : menú de configuración
Crea /_nds/TWiLightMenu/settings.srldr
lanzamiento de slot1 :
Crea /_nds/TWiLightMenu/slot1launch.srldr
título : pantalla de inicio de inicio (logotipo de Nintendo por defecto)
Crea /_nds/TWiLightMenu/main.srldr
Puedes ayudar a traducir TWiLight Menu++ en el proyecto Crowdin. Si desea solicitar que se agregue un nuevo idioma, solicítelo en el servidor de Discord.
Rocket Robz: desarrollador principal
chyyran: Portar la interfaz de usuario de akMenu/Wood a TWiLight Menu++ y agregar la capacidad de cargar subtemas desde la tarjeta SD para temas de DSi/3DS
Pk11: Se agregó la capacidad de cargar máscaras desde la tarjeta SD para el tema R4, se implementó la clasificación y los manuales hechos usan PNG, se mejoró la representación de fuentes, se proporciona un fondo personalizado para el inicio, se administran las traducciones y se corrigen varios errores.
DieGo: Agregar soporte para íconos de carpetas/ROM personalizados y mejoras para máscaras personalizadas
lifehackerhansol: Mejora del soporte para el arranque automático de tarjetas flash y la carga del kernel, y bifurcación libnds32 para soporte de controladores DLDI de 32 KB
NightScript: limpieza de código, definición de estándares de código, funcionalidad de tarjeta didáctica agregada para el tema Wood UI, páginas de manual
ahezard, Shutterbug2000 y Rocket Robz: nds-bootstrap (usado para iniciar ROM de Nintendo DS(i) desde la tarjeta SD)
Alekmaul: AmeDS (utilizado para iniciar las ROM de Amstrad CPC)
Alekmaul y wavemotion: StellaDS, A5200DS, A7800DS, A8DS (utilizado para iniciar las ROM Atari 2600/5200/7800/XEGS) y ColecoDS (utilizado para iniciar las ROM ColecoVision, MSX, Sord M5 y Sega SG-1000/SC-3000)
archiede: SNEmulDS (utilizado para iniciar ROM de SNES)
Coto: Renacimiento de SNEmulDS
chishm: tuna-viDS (usado para reproducir videos Xvid)
Drenn: GameYob (usado para iniciar ROM de Gameboy)
FluBBaOfWard: S8DS (utilizado para iniciar las ROM de Sega Master System, Game Gear, SG-1000/SG-3000 y ColecoVision), NitroGrafx (utilizado para iniciar las ROM de PC Engine/TurboGrafx-16), NitroSwan (utilizado para iniciar las ROM de WonderSwan), y NGPDS (utilizado para iniciar ROM Neo Geo Pocket)
FluBBaOfWard, Coto y Loopy: nesDS (utilizado para iniciar ROM de NES)
Apache Thunder: Edición TWL de nesDS
Gericom: FastVideoDSPlayer (usado para iniciar videos FastVideoDS) y GBARunner2 (usado para iniciar ROM de GameBoy Advance fuera del modo GBA de DS Phat/Lite)
therealteamplayer: Se incluyen compilaciones fusionadas de Hicode+DSP de GBARunner2 para DSi/3DS
unresolvedsymbol: rom3M+master Versiones "DSL-Enhanced" de GBARunner2 incluidas para jugar Pokémon: Versión Esmeralda en tarjetas didácticas
Lordus: jEnesisDS (usado para iniciar ROM de Sega Mega Drive/Genesis)
xonn83: versión GBMacro de jEnesisDS
redbug26: CrocoDS (usado para iniciar ROM de Amstrad CPC)
Ryan FB, Rocket Robz y xonn83: PicoDriveTWL (utilizado para lanzar ROM grandes de Sega Mega Drive/Genesis)
wavemotion: Nintellivision/NINTV-DS (utilizado para iniciar ROM de Intellivision)
Ausente-Realidad: icono de Intellivision
davi: Borde para el tema GBC (originalmente para GameYob)
fail0verflow, Fluto y Arkhandar: gráficos del iniciador/canal Homebrew
FlameKat53: ícono manual para el menú SELECT
del tema DSi
Mr. Start: pantalla de presentación de Super Nintendo DS
PW5190: Pantalla de presentación TWLMenu++ con temática de Kirby
spinal_cord: gráficos DSi4DS y DSision2
StarvingArtist: iconos de consola de juegos
BlastoiseVeteran: versión remasterizada de la música de la Tienda Nintendo DSi
IkaMusumeYiyaRoxie: General N64 MIDI Soundfont, usado para la fanfarria del título en versiones antiguas
dbry: Código decodificador IMA-ADPCM de calidad extrema de adpcm-xq.
Firexploit: sonidos de la interfaz de usuario de 3DS para el tema 3DS, algunos de los cuales también se utilizan en el tema DSi.
ahezard: código NDMA de nds-bootstrap
Otro mundo y Duende de madera amarillo: la interfaz de usuario original de akMenu/Wood
Arisotura: lista de ROM de melonDS y código de volcado de BIOS de dsibiosdumper
Dartz150: Solución proporcionada para juegos Iridion II y Top Gun: Combat Zones GBA
devkitPro: Código utilizado en nds-hb-menu y el uso del gestor de arranque, devkitARM, libnds y libfat
edo9300: código de verificación DS Phat
Gericom, TrolleyDave y FAST6191: código de parcheo SRAM de GBA, utilizado en gbapatcher (hilo de parcheo SRAM en GBAtemp)
Gericom & profi200: código de corrección de color GBA, utilizado en GBARunner3
Nikokaro: Se encontraron parches sin inclinación para WarioWare: Twisted! y Yoshi al revés . (hilo GBAtemp)
profi200: Código SD mejorado de fastboot3DS
RadDude McCoolguy, fintogive, KazoWAR, Vague Rant, gamemasterplc, Rocket Robz, ChampionLeake, DeadSkullzJr, hellboundtriangle, LedyBacer: trucos de pantalla ancha
retrogamefan y Rudolph: parches AP incluidos para nds-bootstrap
enler: Arreglando el parche AP para Pokémon Black 2 (Japón) para compatibilidad con el modo DS⁽ⁱ⁾
Rocket Robz: Arreglando algunos parches AP de juegos mejorados para DS⁽ⁱ⁾ para compatibilidad con el modo DS⁽ⁱ⁾
SNBeast: Desactivar parches
Taiju Yamada: código utilizado para evitar la protección del archivo de arranque R4i-SDHC
Árabe: Ken Brown, SLG3
Búlgaro: Peter0x44, Tescu
Catalán:
Chino simplificado: cai_miao, Chris, Forbidden, James-Makoto, R-YaTian, Yukino Song, 曾国立, 天天地地人人, 百地 希留耶
Chino tradicional: cai_miao, ccccchoho, James-Makoto, Rintim, 奇诺比奥
Checo: Štěpán Dolský
Danés: jonata, Michael Millet, Nadia Pedersen
Holandés: Arthur, guusbuk, Mikosu, Minionguyjpro, Xtremegamer007
Francés: Arcky, cooolgamer, Dhalian, maximesharp, Ghost0159, Léo, LinuxCat, Martinez, NightScript, SLG3, SombrAbsol, TM-47, Yolopix
Alemán: ariebe9115, Blurry Knight, Christian Schuhmann, Dubsenbert Reaches, Fırat Tay, jeje, İlke Hür Eyiol, Julian, Kazuto, malekairmaroc7, Michael Brey, Oleh Hatsenko, SkillLP, SuperSaiyajinStackZ, Tcm0, TheDude, TM-47, Uriki
Griego: Anestis1403
Hebreo: Barawer, Yaniv Levin
Húngaro: Viktor Varga, ハトヴィング -- ハット
Indonesio: Cyruz Wings, Farid Irwan, heydootdoot, Shiori
Italiano: Alessandro Tavolieri, Leonardo Ledda, Mattia, TM-47, Vendicatorealato, xavimel
Japonés: Chromaryu, inucat, Pk11, kuragehime, rinrinrin2002, Rintim, Ronny Chan, Uriki
Coreano: DDinghoya, lifehackerhansol, No estoy llorando, Myebyeol_NOTE, Oleh Hatsenko, 그그기그
Noruego: Bloque anulado
Polaco: Avginike, gierkowiec tv, Kipi000, Konrad Borowski, MaksCROWDIN0, Mateusz Tobiasz, Michał Słonina, RedstonekPL, TheCasachii
Portugués (Brasil): César Memère, Jeff Sousa, themasterf, Victor Coronado
Portugués (Portugal): bruwyvn, Christopher Rodrigues, Gabz Almeida, jim, joyrv, leteka 1234, Rodrigo Tavares, Tiago Silva, Wodson de Andrade, Wodson de Andrade, Zak
rumano: tescu
Ruso: Alexey Barsukov, Ckau, manwithnoface, mbhz, MMR Marler, Nikita, Молодая Кукуруза
Ryukyuan: kuragehime
Español: Adrin Ramen, Adrian Rodriguez, Allinxter, beta215, ccccmark, dimateos, Kaede159, KplyAsteroid, mschifino, Nicolás Herrera Concha, Nintendo R, nuxa17, Radriant, SofyUchiha, TM-47, Uriki, XxPhoenix1996xX
Sueco: Max Hambraeus, Bloque anulado, TM-47, Victor Ahlin, Walter Lindell
Turco: Alp, Egehan.TWL, Emir, GlideGuy06, Grandmaquil, imbeegboi22, İlke Hür Eyiol, rewix32, rewold20, Yağmur Celep
Ucraniano: Oleh Hatsenko, Mykola Pukhalskyi, TM-47, вухаста гітара
valenciano: tsolo
Vietnamita: Chử Tiến Bình, daicahuyoi Đỗ Minh Hiếu, hotungkhanh, Trương Hồng Sơn