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
 
(55 intermediate revisions by 2 users not shown)
Line 4: Line 4:
|description=Boot an nds file.
|description=Boot an nds file.
|author=DS-Homebrew
|author=DS-Homebrew
|lastupdated=2022/05/06
|lastupdated=2024/10/31
|type=Title Launchers
|type=Title Launchers
|version=0.57.0
|version=2.1.0
|license=GPL-3.0
|license=GPL-3.0
|download=https://github.com/DS-Homebrew/nds-bootstrap/releases
|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 47: Line 49:


===FAQ===
===FAQ===
Please see the [https://wiki.ds-homebrew.com/nds-bootstrap/faq] page.
Please see the [https://wiki.ds-homebrew.com/nds-bootstrap/faq FAQ] page.


==Controls==
==Controls==
Line 119: 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.57.0'''
'''v2.1.0'''
 
*What's new?
What's new? (B4DS mode)
** '''B4DS mode:''' Re-added support for 16KB DLDI drivers, and for the first time ever, 32KB DLDI drivers are now supported!
*Added support for 5 more DSiWare titles (Retail unit total: 68 -> 73):
*** 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!)
**Ah! Heaven.
*** 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;.)
**Art Style: Boxlife (All of the Art Style titles except Digidrive are now supported).
** Some games will now have ROM data pre-loaded after boot instead of before boot, speeding up boot times for such games.
**Puzzle League: Express.
** '''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!
**Quick Fill Q.
** '''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.
**Robot Rescue.
*** AiRace: Tunnel (limited up to 16KB DLDI drivers)
 
*** Need for Speed: Nitro-X (limited up to 16KB DLDI drivers)
Improvement/Bug fix (B4DS mode):
*** Orion's Odyssey
*With the game's heap being shrunk by the cardEngine ARM9 binary size, it is now shrunk by the FAT table cache size in addition, instead of always shrinking by 128KB in total (if no Memory Expansion Pak is inserted).
*** Phantasy Star 0 Mini
**This fixes some DS games in order for them to boot without a Memory Expansion Pak (ex. Pokemon HGSS, GTA Chinatown Wars, CTGP Nitro, etc.)!
*** Picture Perfect: Pocket Stylist
**For DSiWare, the FAT table cache is located before the game's code in RAM, in order to avoid having to shrink the heap further, and if the FAT table cache is 16KB or less.
*** Tales to Enjoy!: Little Red Riding Hood
**Your flashcard's SD card needs to be formatted with >= 32KB cluster size for this feature to work as best as possible. (You do not need to do anything if TWLMenu++ does not show a message about cluster size.)
*** Tales to Enjoy!: Puss in Boots
 
*** Tales to Enjoy!: The Three Little Pigs
Bug fixes:
*** Tales to Enjoy!: The Ugly Duckling
*Fixed Absolute BrickBuster, Absolute Chess, and Absolute Reversi showing save data errors.
*Bug fixes
*Fixed SDK5.0 DSiWare titles not booting if only SDK5.1+ Donor ROM is set. (Only applies to DSiWarehax users.)
** Added ROM pre-load settings for ''MegaMan Battle Network 5: Double Team DS'' (Undub) on DSi consoles to reduce slowdown in the opening intro.
*Switched to THUMB code with Os flag for the cardenginei binaries, in order to improve speed a tiny bit, as well as trying to fix oddball issues.
** '''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.
*B4DS mode: Attempted to fix crashing in JellyCar 2 by opening up the heap a bit more.
** 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.
'''v0.56.0 '''
** [https://github.com/lifehackerhansol @lifehackerhansol]: Minor improvements.
 
*Known bugs
What's new?
** 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.
*B4DS mode: Added support for 5 more DSiWare titles! (Retail unit total: 63 -> 68) (See here for the complete list of supported DSiWare titles.)
**Army Defender
**Calculator
**Flashlight
**Heathcliff: Spot On
**Mighty Milky Way (Audio playback exclusive to DS Debug consoles)
**DS Debug exclusive: Touch Solitaire (USA version only)
*(@Epicpkmn11) Added showing game manuals in the in-game menu!
**Read from MANUAL_PATH in sd:/_nds/nds-bootstrap.ini
 
Improvement:
*(@Epicpkmn11 and various) Updated translations.
 
Bug fix (B4DS mode):
*Fixed Super Princess Peach not booting and showing an error screen.
 
'''v0.55.4'''
 
* B4DS mode: Fixed overlooked bug that caused Sonic Classic Collection to not boot.
 
'''v0.55.3'''
 
What's new?
* The .ver file is now moved outside of the TWiLightMenu folder. TWiLight Menu++ will need to be updated to v24.3.1 or * later for the .ver file to be read.
 
Bug fixes:
* Fixed SDK5 games crashing when reading or writing save data in DS mode in DSiWarehax (e.g. Memory Pit, Flipnote Lenny, etc.).
* Asphalt: Urban GT now boots again!
* Other very minor fixes.
 
'''v0.55.2'''
 
What's new?
* The cursor in the in-game menu is now wrapped.
 
Bug fixes:
* SD users: Card data of around the exact length is no longer loaded all at once, fixing weird crashes in some games.
* Fixed some areas of RAM not being dumped in certain games.
* B4DS: Fixed Frogger Returns not showing publisher & developer logos on boot.
 
Regression:
* Dragon Quest V now loops back to the company logos before playing the opening music.
* TWL clock speed may fix the issue.
 
'''v0.55.1 2022/03/11'''
 
Bug fix:
* Fixed in-game menu not exiting properly sometimes.
 
'''v0.55.0 2022/03/11'''
 
Improvements:
* Card data of around the exact length is now loaded at once, whenever possible.
* FAT code has been optimized further.
* FAT table cache is no longer saved to a file.
* Other minor improvements.
 
Bug fixes:
* B4DS mode: Fixed THUMB games not booting (ex. SEGA Superstars Tennis, GTA: Chinatown Wars (MEP required), Domo games, etc.).
* Fixed DSi mode not working on flashcards (with either unlocked SCFG or if TWLMenu++ runs in DSi mode).
* Nintendo DS Browser no longer crashes on DSi consoles!
* Fixed Dragon Quest V going back to the company logo screens before the opening music first plays.
* If it still occurs, make sure the ROM read LEDs are turned off, or it may be caused by SD speed.
* Master brightness is now cleared when an exception error occurs.
* Fixed DSi mode heap shrink on DSi consoles to avoid overwriting the AP-patched overlays.
* B4DS mode: Fixed file writes not working correctly.
 
'''v0.54.2 2022/03/01'''
 
Bug fixes:
* Fixed Rabbids Go Home not booting in DSi mode.
* Fixed saving not working in Lufia: Curse of the Sinistrals.
* Pre-loaded ROM hacks containing data beyond the ROM size in the header, now has the data loaded.
* It is recommended to manually fix the ROM size in the header, to avoid further issues.
* Fixed Mario's Holiday versions before Rev 11 not booting on 3DS.
* Fixed exception screen not shown in CTGP Nitro.
* Other minor fixes.
 
'''v0.54.1 2022/02/22'''
 
What's new?
* Added support for two DS games.
* Pokémon Dash.
* Tropix! Your Island Getaway.
 
Improvement:
* The card read DMA implementation has been improved further, using code implemented by original developer @ahezard, and should fix sound issues and be less prone to crashes!
 
Bug fix:
* Nintendo DS Browser no longer shows the Memory Expansion Pak message. (Does not apply to B4DS mode.)
 
Known bugs:
* Tropix! Your Island Getaway will tend to crash with card read DMA turned on. (TWLMenu++ will blacklist the game from using it.)
* Tropix! Your Island Getaway does not seem to boot in B4DS mode.
* Nintendo DS Browser crashes after the logos on DSi consoles.
 
FAQ:
* Q: What about Golden Sun: Dark Dawn? Does that work now too?
** A: Nope. We still don't know how to fix it. What's currently known, is that the crash occurs in one of the ROM's overlays.  
** As always, you can (1.) play the demo version of the game, (2.) play from a flashcard, or (3.) play on the original cartridge.
 
'''v0.54.0 2022/02/15'''
 
What's new?
* B4DS mode: Here's a heart-shaped box <3 full of added support for more DSiWare titles on DS/DS lite consoles (for a complete list of supported titles, see [https://github.com/DS-Homebrew/TWiLightMenu/blob/dca0a8bf0dc3934c5790cfe22ce3072c3bbf14a9/universal/include/incompatibleGameMap.h#L51 this list]).
** 1950s Lawn Mower Kids.
** Bomberman Blitz.
** Castle Conqueror: Heroes.
** Cave Story.
** Chuck E. Cheese's Alien Defense Force.
** Chuck E. Cheese's Arcade Room.
** Color Commando.
** Crash-Course Domo.
** DotMan.
** Frogger Returns.
** Hard-Hat Domo.
** JellyCar 2.
** Lola's Alphabet Train.
** Magentic Joe.
** Monster Buster Club.
** Number Battle (USA version only).
** GO Series: Portable Shrine Wars.
** Pro-Putt Domo.
** Rock-n-Roll Domo.
** Shantae: Risky's Revenge.
** EA's Sudoku.
** Sudoku 4Pockets.
** Wakugumi: Monochrome Puzzle.
** White-Water Domo.
* B4DS mode: RAM dumping has been added to the in-game menu.
* SWI Halt Hook has been removed, due to issues with slowdown.
* The in-game menu is now accessible in DSiWare titles.
** In addition, the title can be exited back into TWLMenu++ without rebooting the console.
* Version number is now printed in the debug screen (if enabled).
 
Improvements:
* Improvements to the SD and card read DMA code have been made in order to (somewhat/maybe) slightly improve speed, as well as fixing (some?) wireless communication errors.
 
Bug fixes:
* Nintendo DSi Camera & Nintendo DSi Sound now boot again.
* Fixed soft-reset not working in supported DSiWare titles.
* Certain DSiWare titles should now access the SD card again, instead of giving an error or whatever the title does.
* Fixed AP-patching not working properly for ROMs loaded into RAM in DS mode.
* Screen-swapping now works properly again.
 
Known bug:
* In Shantae: Risky's Revenge, only the first fight is playable. The game cannot go further than that, and music is disabled, both due to memory limitations.
 
'''v0.53.2 2022/01/02'''
 
What's new?
* B4DS mode: Support for more DSiWare titles have been added, making them playable on DS/DS lite consoles (For a complete list of supported titles, see this list [https://github.com/DS-Homebrew/TWiLightMenu/blob/3c3663d499b22effe92a5c3304836a8a9def549e/universal/include/incompatibleGameMap.h#L49 here]).
** Art Style: precipice.
** Art Style: ZENGAGE.
 
Bug fixes:
* B4DS mode: Art Style: AQUIA and PiCTOBiTS will no longer show error messages.
* Big Mutha Truckers now boots again.
 
'''v0.53.1 2021/12/28'''
 
Improvements:
* Retail DSi consoles now load the complete AP-fix .ips file while in DSi mode.
* DSi mode heap has shrunken further to make room for AP-patched overlays.
* (@Epicpkmn11 and various) Updated translations.
 
Bug fix:
* Part of RAM is now restored after taking screenshots while in DSi mode.
 
Bug fix/Regression:
* SDK5.4 & 5.5 games have reverted to the slow soft-reset method (due to crashing, apparently from timing issues), but can be worked around by enabling either TWL clock speed or DSi mode.
 
'''v0.53.0 2021/12/26'''
 
What's new?
* B4DS mode: Support for more titles have been added, making them playable on DS/DS lite consoles (For a complete list of supported titles, see this list [https://github.com/DS-Homebrew/TWiLightMenu/blob/3c3663d499b22effe92a5c3304836a8a9def549e/universal/include/incompatibleGameMap.h#L49 here]).
** Flipper (music disabled).
** Art Style: PiCTOBiTS.
** (For Debug DS consoles:)
*** Cake Ninja.
*** Flipper 2: Flush the Goldfish.
*** Shantae: Risky's Revenge (music disabled)
* In-game menu: The Reset Game option no longer reboots the console.
* An ESRB rating screen will now be shown, if esrb.bin is found in sd:/_nds/nds-bootstrap/.
* B4DS mode can now be enabled on flashcards with unlocked SCFG! Only use this for testing purposes (.ini setting: B4DS_MODE).
** Setting to 1 will set the RAM to 4MB.
** Setting to 2 will set the RAM to the console's maximum amount. Some game will not work with this setting.
 
'''v0.52.0 (hotfix) 2021/12/10'''
 
What's new?
*B4DS mode: Support for more titles have been added, making them playable on DS/DS lite consoles.
*(For a complete list of supported titles, see this list [https://github.com/DS-Homebrew/TWiLightMenu/blob/3c3663d499b22effe92a5c3304836a8a9def549e/universal/include/incompatibleGameMap.h#L49 here].)
**99Bullets.
**99Moves.
**ARC Style: Soccer (Korea).
**Kung Fu Dragon.
**Mr. Brain (Japan).
**Rabi Laby.
**Rabi Laby 2.
**(For Debug DS consoles:)
***99Seconds.
***Mixed Messages.
***Phantasy Star 0 Mini.
***Space Invaders Extreme Z.
 
Bug fixes:
*The applied AP-fix will now persist when soft-resetting.
**Pokémon HeartGold & SoulSilver Versions will now use the fast soft-reset method again.
*Fixed sound in Rainbow Islands Revolution when using DSiWarehax or DSi mode.
*B4DS mode: Cloneboot now works in Art Style: BASE 10.
 
Known bug:
*Sleep mode will not work in the 99Trilogy, due to their code (possibly) taking place in the overlays.
 
'''v0.51.1 (hotfix) 2021/11/27'''
 
Bug fixes:
* 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.


[https://github.com/DS-Homebrew/nds-bootstrap/releases Release notes.]
[https://github.com/DS-Homebrew/nds-bootstrap/releases Release notes.]
Line 413: Line 193:
* GitHub (TWLBot) - https://github.com/TWLBot/Builds
* GitHub (TWLBot) - https://github.com/TWLBot/Builds
* GBAtemp - https://gbatemp.net/threads/nds-bootstrap-loader-run-commercial-nds-backups-from-an-sd-card.454323
* GBAtemp - https://gbatemp.net/threads/nds-bootstrap-loader-run-commercial-nds-backups-from-an-sd-card.454323
[[Category:DS homebrew applications]]
[[Category:DS homebrew loaders]]
[[Category:3DS homebrew applications]]
[[Category:3DS homebrew loaders]]
[[Category:Homebrew title launchers on 3DS]]

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: