Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Nds-bootstrap: Difference between revisions

From GameBrew
No edit summary
 
(94 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Infobox 3DS Homebrews
{{Infobox DS Homebrews
|title=nds-bootstrap
|title=nds-bootstrap
|image=ndsbootstrap.png
|image=Ndsbootstrap2.png
|description=Boot an nds file.
|description=Boot an nds file.
|author=Robz8
|author=DS-Homebrew
|lastupdated=2021/10/11
|lastupdated=2024/10/31
|type=Title Launchers
|type=Title Launchers
|version=0.50
|version=2.1.0
|license=GPL-3.0
|license=GPL-3.0
|download=https://dlhb.gamebrew.org/dshomebrew/nds-bootstrap-v0.50.0.7z
|download=https://github.com/DS-Homebrew/nds-bootstrap/releases
|website=https://github.com/DS-Homebrew/nds-bootstrap
|website=https://github.com/DS-Homebrew/nds-bootstrap
|source=https://github.com/DS-Homebrew/nds-bootstrap
|source=https://github.com/DS-Homebrew/nds-bootstrap
|donation=https://ko-fi.com/rocketrobz
}}
}}
nds-bootstrap is an open-source application that allows Nintendo DS/DSi ROMs and homebrew to be natively utilised rather than using an emulator. nds-bootstrap works on Nintendo DSi/3DS SD cards through CFW and on Nintendo DS through flashcarts.
<!--https://dlhb.gamebrew.org/dshomebrew2/ndsbootstrap.7z-->
'''nds-bootstrap''' is an open-source application that allows Nintendo DS/DSi ROMs and homebrew to be natively utilised rather than using an emulator. nds-bootstrap works on Nintendo DSi/3DS SD cards through CFW and on Nintendo DS through flashcarts.


'''Note from developers:'''
'''Note from developers:'''
Line 31: Line 33:
* Game saving is supported too and will be saved in the .sav extention, and .pub or .prv for DSiWare.  
* Game saving is supported too and will be saved in the .sav extention, and .pub or .prv for DSiWare.  
* Anti-Piracy patches can be loaded via IPS files, but they are not included inside the software itself.
* Anti-Piracy patches can be loaded via IPS files, but they are not included inside the software itself.
* nds-bootstrap also supports many homebrew applications, including games like DSCraft.
* nds-bootstrap also supports many homebrew applications, including games like DSCraft (please check the compatibility list above).


B4DS mode (a result of running nds-bootstrap on DS-mode flashcards with locked SCFG or DS Phat/lite) supports some DS ROMs, you can increase compatibility by inserting a DS Memory Expansion Pak. Since v0.50.2 it is also possible to boot Nintendo DSi+Internet, see [https://github.com/DS-Homebrew/TWiLightMenu/blob/c174faedd633b40b3e3ffa0368c2c8964e9ef16f/universal/include/incompatibleGameMap.h#L49 list of supported titles].
B4DS mode (a result of running nds-bootstrap on DS-mode flashcards with locked SCFG or DS Phat/lite):
* Supports some DS ROMs, you can increase compatibility by inserting a DS Memory Expansion Pak.  
* Since v0.50.2 it is also possible to boot Nintendo DSi+Internet, see [https://github.com/DS-Homebrew/TWiLightMenu/blob/c174faedd633b40b3e3ffa0368c2c8964e9ef16f/universal/include/incompatibleGameMap.h#L49 list of supported DSiWare titles].


===Screenshots===
===Screenshots===
Since 0.46.0 you can take screenshots directly from the hardware, without a capture card or an emulator. To take screenshots:
To take screenshots directly from the hardware:
* Open the in-game menu, select Screenshots...
* Open the in-game menu, select Screenshots...
* Select the VRAM bank, in case if the screenshot looks incorrect (this feature cannot be used in B4DS mode).
* Select the VRAM bank, in case if the screenshot looks incorrect (this feature cannot be used in B4DS mode).
Line 43: Line 47:
** Due to hardware limitations, only screenshots of the main-set screen will be taken.
** Due to hardware limitations, only screenshots of the main-set screen will be taken.
** Limit is 50 screenshots. After reaching the limit, you cannot take any more, until you delete screenshots.tar in sd:/_nds/nds-bootstrap/, where it'll be re-created on next boot.
** Limit is 50 screenshots. After reaching the limit, you cannot take any more, until you delete screenshots.tar in sd:/_nds/nds-bootstrap/, where it'll be re-created on next boot.
===FAQ===
Please see the [https://wiki.ds-homebrew.com/nds-bootstrap/faq FAQ] page.
==Controls==
These do not apply to DSiWare.
L+R+Up+X (for 1 second) - Swap the screens
L+R+Down+A (for 2 seconds) - Dump RAM to sd:/_nds/nds-bootstrap, as ramDump.bin
L+R+Down+B (for 2 seconds) - Return to loader (may not work on some O3DS models, and does not work in B4DS mode)
L+Down+Select - Open the in-game menu (can be changed in the TWiLight Menu++ settings)
'''Screenshot (in-game menu):'''
R - Advance by one frame
Up/Down/Left/Right - Change VRAM bank
A - Save screenshot
B - Return to in-game menu
'''RAM Viewer (in-game menu):'''
Up/Down - Scroll
Left/Right - Fast scroll
R+Down/Up - Faster scroll
R+Left/Right - Fastest scroll
A - Enter RAM Editor
B - Return to in-game menu
Y - Specify an address to jump to
Up/Down - Increase/Decrease selected value
Left/Right - Select a value
A/B - Return to RAM Viewer/Editor at specified address
'''RAM Editor (in-game menu):'''
Up/Down/Left/Right - Select a value
A - Modify selected value
Up/Down - Increase/Decrease value by 1h
Left/Right - Increase/Decrease value by 10h
A/B - Finish modifying value
B - Return to RAM Viewer
Y - Specify an address to jump to
Up/Down - Increase/Decrease selected value
Left/Right - Select a value
A/B - Return to RAM Viewer/Editor at specified address


==Media==
==Media==
Line 49: Line 121:


==Known issues==
==Known issues==
Please refer to https://github.com/DS-Homebrew/nds-bootstrap/issues.
https://github.com/DS-Homebrew/nds-bootstrap/issues


==Changelog==
==Changelog==
'''v0.51.1 (hotfix) 27/11/2021'''
'''v2.1.0'''
*What's new?
** '''B4DS mode:''' Re-added support for 16KB DLDI drivers, and for the first time ever, 32KB DLDI drivers are now supported!
*** This basically means that old flashcards such as the N-Card will now work with nds-bootstrap! (Thanks to [https://github.com/ApacheThunder @ApacheThunder] for testing!)
*** libnds32 (by [https://github.com/lifehackerhansol @lifehackerhansol]) is used along with shrinking the game's heap (starting with SDK 2.1) in order to achieve this. (See &quot;'''Known bug'''&quot;.)
** Some games will now have ROM data pre-loaded after boot instead of before boot, speeding up boot times for such games.
** '''B4DS mode:''' Two ROMs will now have some data pre-loaded into the Memory Expansion Pak before boot (''Base 10'' &amp; ''Sonic Rush Adventure'') in order to reduce screen flickering and slightly improve speed!
** '''B4DS mode:''' In an attempt to reduce crashing in the following DSiWare titles, the DLDI driver has been moved to ITCM to make as much of the console's 4MB of RAM available as possible.
*** AiRace: Tunnel (limited up to 16KB DLDI drivers)
*** Need for Speed: Nitro-X (limited up to 16KB DLDI drivers)
*** Orion's Odyssey
*** Phantasy Star 0 Mini
*** Picture Perfect: Pocket Stylist
*** Tales to Enjoy!: Little Red Riding Hood
*** Tales to Enjoy!: Puss in Boots
*** Tales to Enjoy!: The Three Little Pigs
*** Tales to Enjoy!: The Ugly Duckling
*Bug fixes
** Added ROM pre-load settings for ''MegaMan Battle Network 5: Double Team DS'' (Undub) on DSi consoles to reduce slowdown in the opening intro.
** '''B4DS mode:''' Fixed a long-standing bug (since v0.73.0) which caused SDK5.5 DSiWare titles containing cloneboot (ex. ''Box Pusher'') to not boot.
** Fixed an overlooked bug which caused ''KORG DS-10+ Synthesizer'' to not boot in DSi mode on DSi consoles.
** '''B4DS mode:''' Fixed VS mode in ''Base 10'' causing a crash.
** [https://github.com/lifehackerhansol @lifehackerhansol]: Minor improvements.
*Known bugs
** Some games may not boot with 16KB or 32KB DLDI drivers (used by N-Card or a few other old flashcards). If you are playing a DSiWare title on DS or DS Lite, make sure to set ''Lufia: Curse of the Sinistrals'' as a donor ROM in order to reduce crashing.
** 32KB DLDI drivers are not supported outside of B4DS mode.


Bug fixes:
[https://github.com/DS-Homebrew/nds-bootstrap/releases Release notes.]
* Fixed SDK2.0 games (such as Super Mario 64 DS) not booting.
* Fixed soft-reset not working in certain areas of some games.
* Reverted to slow soft-reset method for Pokémon HeartGold & SoulSilver Versions to work around the black screen crash.
* Fixed a regression where the in-game menu would not be positioned correctly.
 
'''v0.51.0 27/11/2021'''
 
What's new?
* B4DS mode: Support for up to 23 DSiWare titles have been added, making them playable on DS/DS lite consoles for the first time ever (For a list of supported titles, see [https://github.com/DS-Homebrew/TWiLightMenu/blob/c174faedd633b40b3e3ffa0368c2c8964e9ef16f/universal/include/incompatibleGameMap.h#L49 this list here]).
** GO Series: 10 Second Run.
** Ace Mathician.
** Art Style: Aquia.
** Aura-Aura Climber.
** Art Style: BASE 10.
** Dairojo! Samurai Defenders.
** Dark Void Zero.
** GO Series: Defense Wars.
** Dragon's Lair.
** Dragon's Lair II: Time Warp (USA version only).
** DS WiFi Settings.
** Famicom Wars DS: Ushinawareta Hikari.
** Game & Watch: Ball.
** Game & Watch: Chef.
** Game & Watch: Donkey Kong Jr.
** Game & Watch: Flagman.
** Game & Watch: Helmet.
** Game & Watch: Judge.
** Game & Watch: Manhole.
** Game & Watch: Mario's Cement Factory.
** Game & Watch: Vermin.
** Mighty Flip Champs.
** Space Ace.
** (For Debug DS consoles, additional support for 6 titles have been added.)
*** G.G. Series: All Breaker.
*** G.G. Series: Assault Buster.
*** BlayzBloo: Super Melee Brawlers Battle Royale.
*** Mighty Milky Way.
*** Nintendo DSi XL Demo Video.
*** Nintendo DSi XL Demo Video: Volume 2.
* Soft-resetting speeds have improved, and now doesn't reboot the console, so you no longer need to wait some time before the game starts again.
* Shiny Pokémon hunters will find this feature useful, as it'll speed up the hunting process.


Bug fixes:
==Credits==
* Fixed Banana Cup causing a crash in Mario Kart DS.
Developers:
* (Untested) The Power Washer minigame crash in Mario Party DS should now be fixed.
* [https://github.com/RocketRobz Rocket Robz]: Lead developer, DSi mode and DSiWare support, B4DS mode, general maintenance and updates.
* Fixed Anno 1701: Dawn of Discovery not booting on 3DS.
* [https://github.com/shutterbug2000 shutterbug2000]: SDK5 support, help with DSi mode support, and some other implemented stuff.
* Fixed Magic School Bus: Oceans not booting on 3DS.
* [https://github.com/ahezard ahezard]: Starting the project, former lead developer.
* Brain Age Express: Sudoku no longer shows the Download failed message.
* [https://github.com/Epicpkmn11 Pk11]: In-game menu, screenshot taking, and translation management.


Known bugs:
Other:
* B4DS mode: None of the supported DSiWare titles (except Famicom Wars DS: Ushinawareta Hikari) can save data.
* [https://devkitpro.org devkitPro]: devkitARM and libnds.
* B4DS mode: Due to memory limitations of retail DS consoles, audio will not play in Art Style: Aquia.
* B4DS mode: In Aura-Aura Climber, depending on how far you go in Endless Mode, the game will crash. Inserting a Memory Expansion Pak may prolong how far you can go up before the crash.
* B4DS mode: The Game & Watch DSiWare titles will softlock after finishing a game or exiting (usually in Game A mode).
* B4DS mode: Connecting to WiFi in Famicom Wars DS: Ushinawareta Hikari will cause the game to crash.
* Some SDK2.0 games (such as Super Mario 64 DS) do not boot due to the fast soft-reset implementation.
* Soft-resetting may not work properly in a few games, causing a crash as a result.


'''v0.50.2 2021/11/12'''
Translators:
* B4DS mode: Nintendo DSi + Internet now boots!
* Chinese Simplified: [https://crowdin.com/profile/VCMOD55 James-Makoto], [https://github.com/R-YaTian R-YaTian].
* Saving is now stubbed out in a few DSiWare titles in order to proceed further, when running from a CycloDS iEvolution.
* Chinese Traditional: [https://crowdin.com/profile/VCMOD55 James-Makoto], [https://github.com/R-YaTian R-YaTian].
** Known affected games:
* Danish: [https://crowdin.com/profile/nadiaholmquist Nadia Pedersen].
*** A Little Bit of... Nintendo Touch Golf.
* Dutch: [https://crowdin.com/profile/guusbuk guusbuk], [https://crowdin.com/profile/-tm- TM-47].
*** Asphalt 4: Elite Racing.
* French: [https://crowdin.com/profile/sombrabsol Benjamin], [https://crowdin.com/profile/DHALiaN3630 Dhalian], [https://crowdin.com/profile/fleefie Fleefie~], [https://github.com/LinUwUxCat LinuxCat], [https://crowdin.com/profile/-tm- TM-47].
*** Aura-Aura Climber.
* German: [https://crowdin.com/profile/the6771 TheDude], [https://crowdin.com/profile/-tm- TM-47].
*** Brain Challenge.
* Greek: [https://crowdin.com/profile/-tm- TM-47].
*** Cave Story.
* Hebrew: [https://crowdin.com/profile/barawer Barawer], [https://crowdin.com/profile/y4niv Yaniv Levin].
*** Ferrari GT: Evolution.
* Hungarian: [https://crowdin.com/profile/-tm- TM-47].
*** Plants vs. Zombies.
* Indonesian: [https://crowdin.com/profile/heydootdoot heydootdoot], [https://crowdin.com/profile/zianogg ZianoGG].
*** Puzzle League: Express.
* Italian: [https://crowdin.com/profile/-tm- TM-47].
*** Rayman.
* Japanese: [https://github.com/Epicpkmn11 Pk11].
*** Tetris Party Live.
* Korean: [https://crowdin.com/profile/cryental I'm Not Cry], [https://crowdin.com/profile/groovy-mint Myebyeol_NOTE].
 
* Norwegian: [https://crowdin.com/profile/elasderas123 Nullified Block], [https://crowdin.com/profile/-tm- TM-47].
Bug fixes:
* Polish: [https://crowdin.com/profile/krystianbederz gierkowiec tv], [https://crowdin.com/profile/-tm- TM-47].
* Fixed an overlooked bug due to optimized code, which caused AP-patching to not work properly for SDK5 games on DSi.
* Portuguese (Portugal): [https://crowdin.com/profile/tavisc0 Tavisc0].
* Increased the file size limit of AP-fix .ips patches from 192KB to 256KB.
* Portuguese (Brazil): [https://crowdin.com/profile/tavisc0 Tavisc0], [https://crowdin.com/profile/-tm- TM-47].
** This fixes Rabbids Go Home (Only DS mode tested on DSi).
* Romanian: [https://crowdin.com/profile/tescu48 Tescu].
* B4DS mode: Fixed AP-patching not working properly, when using a Memory Expansion Pak.
* Russian: [https://crowdin.com/profile/Ckau Ckau].
* Fixed WiFi not working when running from a CycloDS iEvolution.
* Spanish: [https://crowdin.com/profile/nintendor Nintendo R], [https://twitter.com/TimeLordJean nuxa17], [https://ja.crowdin.com/profile/radriant Radriant], [https://crowdin.com/profile/sofyuchiha SofyUchiha], [https://crowdin.com/profile/-tm- TM-47].
* (@Epicpkmn11) Fixed ARM7 RAM viewer randomly freezing.
* Swedish: [https://crowdin.com/profile/-tm- TM-47].
* Fixed an overlooked bug which caused Kirby Canvas Curse to lockup on the logos with empty save data and with SWI Halt Hook turned on.
* Turkish: [https://crowdin.com/profile/egehan.twl Egehan.TWL], [https://crowdin.com/profile/rewold20 rewold20], [https://crowdin.com/profile/-tm- TM-47].
* Fixed EUR version of Hotel Dusk: Room 215 not booting.
* Ukrainian: [https://crowdin.com/profile/michaelbest01 MichaelBest01], [https://crowdin.com/profile/-tm- TM-47].
 
[https://github.com/DS-Homebrew/nds-bootstrap/releases Release notes.]


==External links==
==External links==
* Official website - https://wiki.ds-homebrew.com/nds-bootstrap
* Official website - https://wiki.ds-homebrew.com/nds-bootstrap
* GitHub - https://github.com/DS-Homebrew/nds-bootstrap
* GitHub (nds-bootstrap) - https://github.com/DS-Homebrew/nds-bootstrap
 
* GitHub (TWLBot) - https://github.com/TWLBot/Builds
[[Category:DS homebrew applications]]
* GBAtemp - https://gbatemp.net/threads/nds-bootstrap-loader-run-commercial-nds-backups-from-an-sd-card.454323
[[Category:Other DS applications]]
[[Category:DS homebrew loaders]]

Latest revision as of 03:10, 3 November 2024

nds-bootstrap
Ndsbootstrap2.png
General
AuthorDS-Homebrew
TypeTitle Launchers
Version2.1.0
LicenseGPL-3.0
Last Updated2024/10/31
Links
Download
Website
Source
Support Author

nds-bootstrap is an open-source application that allows Nintendo DS/DSi ROMs and homebrew to be natively utilised rather than using an emulator. nds-bootstrap works on Nintendo DSi/3DS SD cards through CFW and on Nintendo DS through flashcarts.

Note from developers:

A frontend isn't required to be used as nds-bootstrap uses an ini file to load its parameters. However, it is very much recommended. TWiLight Menu++ is a frontend for nds-bootstrap, developed by RocketRobz & co. It has 7 customizable launchers to choose from with the ability to launch emulators and other homebrew. It also includes a number of Anti-Piracy patches for the games and will automatically configure nds-bootstrap for you, with customizable per game settings.

Installation

To install nds-bootstrap, download the .7z file.

Extract the nds-bootstrap .nds files, to root:/_nds/.

For TWLMenu++ users, extract the .ver file to root:/_nds/TWiLightMenu/ (only when you are updating nds-bootstrap, as it comes bundled in TWiLight Menu++).

User guide

ROM Compatibility

nds-bootstrap supports most DS ROMs, with a few exceptions (see compatibility list).

  • You can enhance your gaming experience with cheats and faster load times than general cartridges (for games that support those features).
  • Game saving is supported too and will be saved in the .sav extention, and .pub or .prv for DSiWare.
  • Anti-Piracy patches can be loaded via IPS files, but they are not included inside the software itself.
  • nds-bootstrap also supports many homebrew applications, including games like DSCraft (please check the compatibility list above).

B4DS mode (a result of running nds-bootstrap on DS-mode flashcards with locked SCFG or DS Phat/lite):

  • Supports some DS ROMs, you can increase compatibility by inserting a DS Memory Expansion Pak.
  • Since v0.50.2 it is also possible to boot Nintendo DSi+Internet, see list of supported DSiWare titles.

Screenshots

To take screenshots directly from the hardware:

  • Open the in-game menu, select Screenshots...
  • Select the VRAM bank, in case if the screenshot looks incorrect (this feature cannot be used in B4DS mode).
  • You can now step 1 frame, while in the in-game menu (by pressing R).
  • Screenshots will be saved to screenshots.tar in sd:/_nds/nds-bootstrap/.
    • Due to hardware limitations, only screenshots of the main-set screen will be taken.
    • Limit is 50 screenshots. After reaching the limit, you cannot take any more, until you delete screenshots.tar in sd:/_nds/nds-bootstrap/, where it'll be re-created on next boot.

FAQ

Please see the FAQ page.

Controls

These do not apply to DSiWare.

L+R+Up+X (for 1 second) - Swap the screens

L+R+Down+A (for 2 seconds) - Dump RAM to sd:/_nds/nds-bootstrap, as ramDump.bin

L+R+Down+B (for 2 seconds) - Return to loader (may not work on some O3DS models, and does not work in B4DS mode)

L+Down+Select - Open the in-game menu (can be changed in the TWiLight Menu++ settings)

Screenshot (in-game menu):

R - Advance by one frame

Up/Down/Left/Right - Change VRAM bank

A - Save screenshot

B - Return to in-game menu

RAM Viewer (in-game menu):

Up/Down - Scroll

Left/Right - Fast scroll

R+Down/Up - Faster scroll

R+Left/Right - Fastest scroll

A - Enter RAM Editor

B - Return to in-game menu

Y - Specify an address to jump to

Up/Down - Increase/Decrease selected value

Left/Right - Select a value

A/B - Return to RAM Viewer/Editor at specified address

RAM Editor (in-game menu):

Up/Down/Left/Right - Select a value

A - Modify selected value

Up/Down - Increase/Decrease value by 1h

Left/Right - Increase/Decrease value by 10h

A/B - Finish modifying value

B - Return to RAM Viewer

Y - Specify an address to jump to

Up/Down - Increase/Decrease selected value

Left/Right - Select a value

A/B - Return to RAM Viewer/Editor at specified address

Media

3DS Play NDS ROM's Off Your SD Card! (TWiLightMenu) (Tech James)

Known issues

https://github.com/DS-Homebrew/nds-bootstrap/issues

Changelog

v2.1.0

  • What's new?
    • B4DS mode: Re-added support for 16KB DLDI drivers, and for the first time ever, 32KB DLDI drivers are now supported!
      • This basically means that old flashcards such as the N-Card will now work with nds-bootstrap! (Thanks to @ApacheThunder for testing!)
      • libnds32 (by @lifehackerhansol) is used along with shrinking the game's heap (starting with SDK 2.1) in order to achieve this. (See "Known bug".)
    • Some games will now have ROM data pre-loaded after boot instead of before boot, speeding up boot times for such games.
    • B4DS mode: Two ROMs will now have some data pre-loaded into the Memory Expansion Pak before boot (Base 10 & Sonic Rush Adventure) in order to reduce screen flickering and slightly improve speed!
    • B4DS mode: In an attempt to reduce crashing in the following DSiWare titles, the DLDI driver has been moved to ITCM to make as much of the console's 4MB of RAM available as possible.
      • AiRace: Tunnel (limited up to 16KB DLDI drivers)
      • Need for Speed: Nitro-X (limited up to 16KB DLDI drivers)
      • Orion's Odyssey
      • Phantasy Star 0 Mini
      • Picture Perfect: Pocket Stylist
      • Tales to Enjoy!: Little Red Riding Hood
      • Tales to Enjoy!: Puss in Boots
      • Tales to Enjoy!: The Three Little Pigs
      • Tales to Enjoy!: The Ugly Duckling
  • Bug fixes
    • Added ROM pre-load settings for MegaMan Battle Network 5: Double Team DS (Undub) on DSi consoles to reduce slowdown in the opening intro.
    • B4DS mode: Fixed a long-standing bug (since v0.73.0) which caused SDK5.5 DSiWare titles containing cloneboot (ex. Box Pusher) to not boot.
    • Fixed an overlooked bug which caused KORG DS-10+ Synthesizer to not boot in DSi mode on DSi consoles.
    • B4DS mode: Fixed VS mode in Base 10 causing a crash.
    • @lifehackerhansol: Minor improvements.
  • Known bugs
    • Some games may not boot with 16KB or 32KB DLDI drivers (used by N-Card or a few other old flashcards). If you are playing a DSiWare title on DS or DS Lite, make sure to set Lufia: Curse of the Sinistrals as a donor ROM in order to reduce crashing.
    • 32KB DLDI drivers are not supported outside of B4DS mode.

Release notes.

Credits

Developers:

  • Rocket Robz: Lead developer, DSi mode and DSiWare support, B4DS mode, general maintenance and updates.
  • shutterbug2000: SDK5 support, help with DSi mode support, and some other implemented stuff.
  • ahezard: Starting the project, former lead developer.
  • Pk11: In-game menu, screenshot taking, and translation management.

Other:

Translators:

External links

Advertising: