Commit Graph

53 Commits

Author SHA1 Message Date
ApacheThunder
1cf2bb9370 Change some vars into volatile. 2024-12-11 20:37:56 -06:00
ApacheThunder
de31f9cb2b 1.3 Refactor
* Added DSOnei kernel to included nds files for Stage2 menu.
* Added N-Card rom dump to included nds files for Stage2 menu.
* Added CycloDS, and DSTWo bootloader dumps to included nds files for
Stage2 menu.
* DSTwo now boots correctly from cart launcher.
* R4 SDHC Gold and other similar DEMON time bomb DSTTi clones now boot
correctly from cart launcher.
* Added back option for enabling/disabling TWL ram.
* Added fixes to allow DS only carts to run with TWL ram enabled.
* Initial modcrypt code added for TWL carts. Currently works in
emulation however TWL carts will fail to boot on hardware (when twl
mode, ram, etc is enabled).
* If TWL mode and ram is enabled, cart loader will now load the DSi
extended binaries into ram. Currently however they will only boot in
emulation. Have not resolved why it's not working on hardware yet.
* Stage2 menu now allowed to load dsi extended binaries of SRLs if TWL
mode and TWL ram is enabled. Booting rom dumps as a method of booting
into TWL carts is confirmed working. At least for System Flaw it does.
:D
* Despite the improvents Acekard 2i still appears to require using the
stage2 menu to boot into.
* Fixes that allowed Demon timebomb carts to boot from cart
launcher/autoboot may allow other non working carts to work. Further
testing needed.
2024-11-27 21:50:32 -06:00
ApacheThunder
3c362f527f Add og R4 SRL to Stage2 files ...
* Original R4 rom now available in default pack of NDS files available
to Stage2 filebrowser.
* R4i SDHC varient's bootloader rom now available to stage2 filebrowser.
* Order of header/chip ID commands changed in main read_card code to
match order used in bootloader. Reads header before chip ID like
bootloader does. This triggers some carts to use DS/DS Lite rom insteat
of white listed spoof game instead. The main consequence is that this
makes DSTwo a bit more functional. Cart loader now actually boots the
DSTwo correctly provided you wait till NTR Launcher is booted before
inserting it. (or eject/reinsert while in stage 2 menu).
2024-08-15 21:59:03 -05:00
ApacheThunder
5a337c05bd Add R4Ultra NDS file...
* R4 Ultra Bootloader added to default stage2 NDS files.
2024-05-15 19:27:28 -05:00
ApacheThunder
54734ae9ee Improve UI
* Improve Icon UI. "No Icon" is now a seperate banner so that proper
background can be used for valid icons that have alpha pixels.
* Fix issue that could cause hang if using stage2 menu to load a
homebrew SRL that contains DSi Extended binaries.
2024-05-04 14:47:21 -05:00
ApacheThunder
82473f49e6 Norrow boot delay for stage2 menu
* Reduced forced delay (needed for launch sfx to finish playing) to
minumum required for sound fx to finish.
2024-04-12 00:00:07 -05:00
ApacheThunder
089b1d7656 Update gitignore 2024-04-11 21:08:14 -05:00
ApacheThunder
d9cfe83ae2 Add new graphic for empty card slot...
* Add new graphics for when slot1 is empty when in stage2 menu.
* Stage2 laucnhers I had previously made for 3DS are now included in
nitrofs. Code is added to have program automatically copy them to
SD:\NTR_Launcher if they aren't present.
* Provided no bugs are found during testing this will likely be the 3.0
release.
2024-04-11 17:48:22 -05:00
ApacheThunder
247dc9b412 Some fixes
* Small delay added to cart boot process from new hbmenu interface if
user decides to boot a cart that was present on boot and had not been
ejected. (as in that case card init can be skipped which results in very
fast boot time!)
* Card Init now correctly happens as intended if the user booted into
hbmenu interface and decides to boot a card that was present on boot as
in that case the card will need a full reset for boot loader to init it
correctly.
2024-04-10 23:39:22 -05:00
ApacheThunder
a4e5a00409 Big changes....
* Stage2 launcher UI added. This is a heavily modified HBMenu with
ability to launch carts! This menu can be used to boot a bootloader NDS
file for flascharts that the direct cart launcher fails to boot.
* New audio files added for new menu.
* HBMenu UI loaded by default if booted with no cart inserted.
* INI file folder now located in NTR_Launcher folder instead. A default
ini file from NitroFS (if mount of nitrofs succeeds) will be copied to
SD if one is not present.
* Stage2 launchers are expected to be in NTR Launcehr folder though you
can navigate to any folder you want in the UI so stage2 launchers aren't
the only thing this can be used for. You can also use this as a means of
booting homebrew off SD in NTR mode.
2024-04-10 22:59:52 -05:00
ApacheThunder
30f6948612 Fix text for debug console...
* Fixed mistake that caused misaligned console text when debug mode is
enabled.
2023-10-30 22:11:03 -05:00
ApacheThunder
24d84286e6 v2.7 Release Commit...
* Overhaul using improved bootloader from NitrohaxTWL.
* Alternate bootloader removed as it appears uneeded.
* Improved debug output using text instead of colored boxes from
NitroHax's original bootloader design. Debug mode will now show enhanced
status readouts of cart load process. Text displayed in red if an error
occurs (visible even when debug mode is off if error occured)
2023-10-20 21:42:47 -05:00
ApacheThunder
3c1568bbf8 v2.6 Release Commit...
* Ensure SD access when SCFG unlock setting is true. Allows dsxTool SD
access for DSXtreme.
* Previously mentioned improvements from previous commit.
2023-09-22 21:28:29 -05:00
ApacheThunder
e3a7cfbfc0 Some code rewrites.
* Debug Mode setting now actually does something. :P
* R4, M3DS Real, and DSXtreme now boot correctly.
* Many more flashcarts that weren't working probably work now.
2023-09-19 03:27:16 -05:00
ApacheThunder
b8c2decfdb
Merge pull request #8 from lifehackerhansol/hotfix2
Fix compilation error with latest devkitARM
2021-07-11 17:46:22 -05:00
hansoljin
6dba268baf Fix compilation error with latest devkitARM
With the latest devkitARM revision gcc was updated, and -fno-common became the default.
With that in mind, changing each problem enum to typedef enum fixes the compilation issues.
2021-07-11 02:38:20 -07:00
hansoljin
55af166d56 Update gitignore 2021-07-11 02:38:12 -07:00
ApacheThunder
51b0ff6627 Add Legacy mode.
Adds the old card loader bootloader in a manner similar to how
slot1Launcher works in TwilightMenu. The new ini file setting has
NTR_Launcher use the previous build of the the cart loader that doesn't
have TWL cart support. This version had better compatiblity with old
flashcarts.

Use legacy mode if you had to use an old build of NTR_Launcher to use
your flashcart. Note that legacy mode setting is overridden if you
attempt to boot a TWL cart so you don't have to disable it in the ini
file anytime you want to try booting a TWL cart.
2021-03-01 01:27:27 -06:00
ApacheThunder
7941919f54 Some bug fixes...
* Fix issues that may prevent some retail carts from booting.
* Included changes to bootloader newer commits to slot1launch code
2020-04-21 12:33:57 -05:00
ApacheThunder
77161ebcfe Merge 3DS version into DSi version.
The 3DS branch will be retired. The DSi branch is now the default. The
animated bootsplash has been integrated and is off by default. If you
intend to use on 3DS, enable the splash via the NTR_Launcher.ini file.
2020-04-04 19:15:41 -05:00
ApacheThunder
33b091861b Add support for TWL carts.
Overhaul of old cart loading code courtasy of Robz8.

There is however a small regression. This build currently can't boot
DS-Xtreme.

If you have issues with flashcarts not booting games/homebrew correctly,
disable the extended ram option in the ini file. Currently off by
default. But it must be on for TWL carts to boot correctly.
2020-04-04 15:40:53 -05:00
ApacheThunder
9f27ebdc3f Update version string
Update version data in Makefle...
2018-07-08 23:35:25 -05:00
ApacheThunder
5cddea4a50 Fix issue with slot reset...
Re-organized a few things in main.cpp.

Issues with carts not working if NTR Launcher wasn't booted with a cart
inserted or carts not working when using resetslot1 option enabled
should be fixed now.
2018-07-08 23:29:18 -05:00
ApacheThunder
ad24308148 Remove old slot reset code...
Removed unused slot reset code. (using offiical libnds functions for
this as of the previous commit)
2018-05-20 16:45:55 -05:00
ApacheThunder
97eed06b04 Minor chanes to allow compiling on latest libnds.
Minor changes to allow compiling on latest libnds.

Also made use of "enableslot1();" and "disableslot1();" functions
provided by latest libnds. No longer need to use custom functions for
this and helps simplfiy my arm7 code.
2018-05-20 16:42:25 -05:00
ApacheThunder
4a9f29e0cb Update Version String 2018-04-25 20:06:28 -05:00
ApacheThunder
18121ee763 Merge more commits from Chishm's NitroHax..
Includes the latest commits from Chishm:

74c22febe9

4f56f7df62

6024a87a44

e3b086e313

85e33b00ac

abbc8329ab

451929891a
2018-04-15 15:26:28 -05:00
ApacheThunder
c33318186e Add additional location for ChipID
This commit from Chishm's NitroHax source has been added:

1dacaf2009
2018-04-04 14:02:03 -05:00
ApacheThunder
389cd68140 Update makefile for latest ndstool
Now uses new commands for setting Access Control region and "DSi
Application flags". Can now have ndstool set 0x1BC-0x1BF for me. Useful
for setting the bit required to make touchscreen/wifi work correctly
after switching to NTR mode.
2017-09-10 13:50:59 -05:00
ApacheThunder
1cacb30405 Updates for better stability™
Removed some features that would see little use like the TWL mode option
and the enable SD option. MBK init code moved and always used. Sets MBK
to proper values for NTR mode (as documented in No$GBA).

Since this build is now intended to be launched from a patched DSi
System Menu, the touch screen mode change code has been removed and and
this no longer requires a custom libnds build that isn't really
available anywhere right now. :P
2017-07-25 19:48:11 -05:00
ApacheThunder
d827bf0db1 Initial commit of RocketLauncher build
( ͡° ͜ʖ ͡°)
2017-07-18 00:42:13 -05:00
ApacheThunder
8d2176d6dc Add higher frame rate version of DS bootsplash...
Also added other language versions of health & safety warning. Note
currently that will only be configured based on system language setup in
NVRAM/DS profile.

ResetSlot1 option enabled by default in default INI file.

Seperated NTRCLOCK from DS boot splash. They can both be set
independently now.
2017-02-27 14:20:12 -06:00
ApacheThunder
61a0848611 Resolved final warnings...
Fixed slot reset code. Courtasy of Ahezard. This revised version does
not generate warnings during compile and also has the same/better
compatbility. (further testing needed to see what impact this has
however)
2017-02-24 18:03:41 -06:00
ApacheThunder
5ab75cb916 Remove test code from bootloader...
Forgot to undo some test code. Surprised it didn't cause a warning
during compile.... :P
2017-02-24 16:57:40 -06:00
ApacheThunder
02b267152a Cleaned up some code..
It almost compiles without any warnings now. Only fix left for it that
is to redo slot reset code. Original code is too much of a mess to
compile with the  "-Wall -Wextra -Werror" flag.

That flag has been added to makefile of arm9/bootloader. Once arm7 is
fixed it will be added there as well.
2017-02-24 16:53:36 -06:00
ApacheThunder
a14a73c7d1 Moved slot rest code to seperate file...
Also altered SCFG_EXT values being set. According to gbatek bits 13 and
12 are set while in NTR mode. (they seem to be set while in TWL mode
DSiWare as well appearently)
2017-02-21 00:17:23 -06:00
ApacheThunder
101a5c9897 Add Ahezard's updated python script.
This script will automatically correct cerain header settings originally
set by ndstool.
2017-02-19 00:23:24 -06:00
ApacheThunder
c19f26ab5c Changed timing of jingle for DSi Boot splash.
New libnds improves frame rate of bootsplash animations. As a result the
noticable increase in playback speed causes DSi jingle to play a little
late. I moved it up a few frames.

This didn't seem to impact the DS splash very much so no changed needed
there.
2017-02-17 21:50:32 -06:00
ApacheThunder
910c8f8396 Use new libnds function for setting NTR clock speeds on arm9 2017-02-15 19:44:12 -06:00
ApacheThunder
dfed476041 Re-Enable alternate slot init method.
Turns out certain settings in header set by ndstool broke the primary
card init method. Manually setting the values to what they were in older
builds restores all functionality the older builds had.

Also added source files of the graphics used in the bootanimation from
the old github repo.
2017-02-15 18:46:18 -06:00
ApacheThunder
535bec4e81 ResetSlot1 option default to 1
Force card reset to always occur. Old method of card init without slot
being in ntr mode seems broken in latest libnds, so that feature will be
disabled for now.
2017-02-15 11:12:26 -06:00
ApacheThunder
904e0c97ee Revert last two commits.
They still didn't work appearently. Gonna give up on those commits for
now.
2017-02-14 18:59:18 -06:00
ApacheThunder
3f441e2f7c Fix compile issues last commit introduced... 2017-02-14 18:42:51 -06:00
ApacheThunder
c3660f28a6 Merge changes from 0fe83d2
Merged changes from this commit:

0fe83d2b25
2017-02-14 17:53:56 -06:00
ApacheThunder
d8c5206177 Add some changes Chishm made early on that I missed.
This works for the most part now. Is able to launch games and flashcarts
now. Had to force slot reset though. The ability to card init without
that by not having slot-1 in ntr mode (via the bit for it in access
control) seems broken with this version of libnds. But I can live
without that.

Touchscreen however is borked for NTR games.
2017-02-14 17:50:07 -06:00
ApacheThunder
e561b44b7f Merged improvements from NitroHax
The following commits were merged:

0fe83d2b25

a87af83597

47ea3da285

66740e751a

No new problems were intreduced however this did not resolve the failure
to boot/read slot-1.
2017-02-14 15:17:25 -06:00
ApacheThunder
89c74797d9 Now compiles on devkitarm r46 and libnds 1.6.2
It runs and appears to play the boot animation correctly, however it
hangs after loading the game binaries. (from what I can tell after
re-enabling the debug display box code stuff. It displays 3 red boxes
then a blue, then the screen is cleared. I assume this means it didn't
detect an error and attempted to launch the game)

Seems like something in new libnds/devkitarm is breaking something.
Someone will need to debug this and find out why. This issue isn't
something I can resolve alone sadly. Until this is fixed the previous
build will remain until this is resolved.
2017-02-12 20:55:16 -06:00
ApacheThunder
db78e8260e Edit Readme/remove make_cia exe file
Updated gitignore. make_cia is something provided by standard homebrew
tools. I just forgot to add it to gitignore before syncing. :P

Readme.md updated to remove reference to "alt build" as this is now the
main build.
2017-02-12 15:00:21 -06:00
ApacheThunder
1e2dfed554 Rebase from NitroHax official source
This is the version 1.9.6 build rebased from Chishm's official github of
NitroHax which is the project this is based off of.
2017-02-12 14:57:36 -06:00
Michael Chisholm
5aeb65240c Compile in hard mode (-Wall -Wextra -Werror)
Have the compiler be stricter in its checking, to ensure code
correctness.
2016-04-02 13:42:15 +01:00