Nitrohax 3DS: Difference between revisions

From GameBrew
No edit summary
No edit summary
 
(17 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Infobox 3DS homebrew
{{Infobox 3DS Homebrews
| title = Nitrohax
|title=NitroHax3DS
| image = https://dlhb.gamebrew.org/3dshomebrew/Nitrohax.jpg|250px
|image=Nitrohax3ds.png
| type = Utilities
|description=NitroHax cheat tool for Nintendo DS games, ported to Nintendo 3DS.
| version = 0.99.DSI
|author=Apache Thunder, Ahezard, Shutterbug2000
| licence = Mixed
|lastupdated=2018/04/26
| author = ahezard
|type=Utilities
| website = https://github.com/ahezard/NitroHax3DS/
|version=0.99.dsi
| download = https://dlhb.gamebrew.org/3dshomebrew/NitroHax3DS-0.99.DSI.rar
|license=GPLv3
| source = https://dlhb.gamebrew.org/3dshomebrew/NitroHax3DS-0.99.DSI.rar
|download=https://dlhb.gamebrew.org/3dshomebrews/nitrohax3ds.7z?k33p0fil35
|website=https://github.com/ahezard/NitroHax3DS
|source=https://github.com/ahezard/NitroHax3DS
}}
}}
<youtube>nEYzuNxMwJE</youtube>
[[NitroHax|Nitro Hax]] is a cheat tool originally created by Chishm for the Nintendo DS. This is a modified version to work on Nintendo 3DS made by Apache Thunder, Ahezard and Shutterbug2000.


=Nitro Hax=
'''Note from developers:'''


By Chishm - Modified to work on Nintendo 3DS by Apache Thunder, Ahezard, and Shutterbug2000.
It works with original games only. This is not intended to boot flashcarts. Use NTR Launcher for that. This does not boot 3DS carts. This program is not related to NTR CFW. This is designed for DS games only. This program does not yet support TWL carts. (DSi Enhanced games). Even if you manage to boot a TWL cart, it will be running in NTR mode and will not have access to DSi specific hardware. DSi Enhanced Games will be supported if and when card reading code is updated to accommodate them.


* Nitro Hax is a cheat tool for the Nintendo DS.
==Installation==
* It works with original games only.
'''Note:''' Revised for 3DS and required [[Luma3DS|Luma3DS]] to use. Do not attempt to use this build on a original DS/DS Lite. Use Chishm's [[NitroHax|original build]] instead.
* This is not intended to boot flashcarts. Use NTR Launcher for that.
* This does NOT boot 3DS carts. This program is not related to NTR CFW. This is designed for DS games only.
* This program does not yet support TWL carts. (DSi Enhanced games).
* Even if you manage to boot a TWL cart, it will be running in NTR mode and will not have access to DSi specific hardware.
* DSi Enhanced Games will be supported if and when card reading code is updated to accommodate them.


Usage (revised for 3DS. Do NOT attempt to use this build on a original DS/DS Lite. Use Chishm's original build instead)
Install NitroHax.cia with your preferred CIA installer.


1. Install NitroHax.cia with your preferred CIA installer.
Place an Action Replay XML file (cheats.xml) to a location on your 3DS SD card.


2. Place an Action Replay XML file (cheats.xml) to a location on your 3DS SD card.
==User guide==
Insert the game you intend to use NitroHax with.


3. Insert the game you intend to use NitroHax with.
Start NitroHax from 3DS Home Menu. If you did not insert a game yet, the program will prompt you to insert one.


4. Start NitroHax from 3DS Home Menu. If you did not insert a game yet, the program will prompt you to insert one.
One of the following will be loaded automatically if it is found (in order of preference):
* cheats.xml (in the current directory)
* /NitroHax/cheats.xml
* /data/NitroHax/cheats.xml
* /cheats.xml


1. One of the following will be loaded automatically if it is found (in order of preference):
If no file is found, browse for and select a file to open.
* "cheats.xml" in the current directory
* "/NitroHax/cheats.xml"
* "/data/NitroHax/cheats.xml"
* "/cheats.xml"


2. If no file is found, browse for and select a file to open.
Choose the cheats you want to enable.


5. Choose the cheats you want to enable.
Some cheats are enabled by default and others may be always on. This is specified in the XML file.


1. Some cheats are enabled by default and others may be always on. This is specified in the XML file.
Select the cheats you would like to disable/enable. If you wish to enable TWL clock speeds for your game press select button. This option added to help improve performance of some games.


2. The keys are:
Do not eject the game cartridge once cheats have been loaded. If you change your mind, you will need to restart Nitrohax.


* **A**: Open a folder or toggle a cheat enabled
When you're done, exit the cheat menu by pressing the start button.
* **B**: Go up a folder or exit the cheat menu if at the top level
* **X**: Enable all cheats in current folder
* **Y**: Disable all cheats in current folder
* **L**: Move up half a screen
* **R**: Move down half a screen
* **Up**: Move up one line
* **Down**: Move down one line
* **Start**: Start the game
* **Select**: Enable DSi clock speeds. (currently no visible GUI button for this yet)


6. If you wish to enable TWL clock speeds for your game press select button. This option added to help improve performance of some games.
The game will then start with cheats running. 10.The DS/DSi bootsplash played prior to starting the game will indicate what CPU speed was selected for your game.


7. Do NOT eject the game cartridge once cheats have been loaded. If you change your mind, you will need to restart Nitrohax.
===Supported games and tutorial===
See [https://gbatemp.net/threads/how-to-use-nitrohax-including-patching-twl-steps.438703 How to use NitroHax and supported game list] (by PRAGMA).


8. When you're done, exit the cheat menu by pressing the start button.
===Custom Code Types===
<pre>
CF000000 00000000 - End of code list
CF000001 xxxxxxxx - Relocate cheat engine to xxxxxxxx
CF000002 xxxxxxxx - Change hook address to xxxxxxxx
C100000x yyyyyyyy - Call function with arguments
x - number of arguments (0 - 4)
yyyyyyyy - Address of function
The argument list follows this code. To call a function at 0x02049A48,  
with the arguments r0 = 0x00000010, r1 = 0x134CBA9C, r2 = 0x12345678,
you would use:
C1000003 02049A48
00000010 134CBA9C
12345678 00000000


9. The game will then start with cheats running.
C200000x yyyyyyyy - Run code from cheat list
x - 0 = ARM mode, 1 = THUMB mode
yyyyyyyy - length of function in bytes
EG:
C2000000 00000010
AAAAAAAA BBBBBBBB
CCCCCCCC E12FFF1E
This will run the code AAAAAAAA BBBBBBBB CCCCCCCC in ARM mode.  
The E12FFF1E (bx lr) is needed at the end to return to the cheat engine.
(These instructions are based on those written by kenobi.)


10.The DS/DSi bootsplash played prior to starting the game will indicate what CPU speed was selected for your game.
C4000000 xxxxxxxx - Safe data store (Based on Trainer Toolkit code)
Sets the offset register to point to the first word of this code.
Storing data at [offset+4] will save over the top of xxxxxxxx.


C5000000 xxxxyyyy - Counter (Based on Trainer Toolkit code)
Each time the cheat engine is executed, the counter is incremented by 1.
If (counter & yyyy) == xxxx then execution status is set to true.
Else it is set to false.


===Copyright===
C6000000 xxxxxxxx - Store offset (Based on Trainer Toolkit code)
Stores the offset register to [xxxxxxxx].


Copyright (C) 2008 Michael "Chishm" Chisholm
D400000x yyyyyyyy - Dx Data operation
Performs the operation Data = Data ? yyyyyyyy where ? is determined by x as follows:
0 - add
1 - or
2 - and
3 - xor
4 - logical shift left
5 - logical shift right
6 - rotate right
7 - arithmetic shift right
8 - multiply


This program is free software: you can redistribute it and/or modify
If type codes
it under the terms of the GNU General Public License as published by
Adds offset to the address if the lowest bit of the address is set.  
the Free Software Foundation, either version 3 of the License, or
Sets the address equal to offset if the original address is 0x00000000.
(at your option) any later version.
</pre>
 
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
 
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.


===Acknowledgements===
==Controls==
A - Open a folder, Toggle a cheat enabled


Thanks to (in no particular order):
B - Go up a folder, Exit the cheat menu if at the top level
* Pink-Lightning - Original skin (v0.5-0.82)
* bLAStY - Memory dumps
* cReDiAr - Last crucial step for running DS Cards
* Parasyte - Tips for hooking the game automagically
* kenobi - Action Replay code document
* Darkain - Memory and cache clearing code
* Martin Korth - GBAtek
* Deathwind / WinterMute - File menu code (v0.2 - v0.4)
* Everyone else who helped me along the way


Big thanks to Datel (CodeJunkies) for creating the original Action Replay and its cheats
X - Enable all cheats in current folder


Y - Disable all cheats in current folder


===Custom Code Types===
L/R - Move up/dpwn half a screen


<pre>
Up/Down - Move up/down one line
CF000000 00000000 - End of code list
CF000001 xxxxxxxx - Relocate cheat engine to xxxxxxxx
CF000002 xxxxxxxx - Change hook address to xxxxxxxx


C100000x yyyyyyyy - Call function with arguments
Start - Start the game
x - number of arguments (0 - 4)
yyyyyyyy - Address of function
The argument list follows this code. To call a function at 0x02049A48,
with the arguments r0 = 0x00000010, r1 = 0x134CBA9C, r2 = 0x12345678,
you would use:
C1000003 02049A48
00000010 134CBA9C
12345678 00000000


C200000x yyyyyyyy - Run code from cheat list
Select - Enable DSi clock speeds (currently no visible GUI button for this yet)
x - 0 = ARM mode, 1 = THUMB mode
yyyyyyyy - length of function in bytes
EG:
C2000000 00000010
AAAAAAAA BBBBBBBB
CCCCCCCC E12FFF1E
This will run the code AAAAAAAA BBBBBBBB CCCCCCCC in ARM mode.
The E12FFF1E (bx lr) is needed at the end to return to the cheat engine.
(These instructions are based on those written by kenobi.)


C4000000 xxxxxxxx - Safe data store (Based on Trainer Toolkit code)
==Media==
Sets the offset register to point to the first word of this code.
'''NitroHax now working on Nintendo 3DS''' ([https://www.youtube.com/watch?v=nEYzuNxMwJE ApacheThunder]) <br>
Storing data at [offset+4] will save over the top of xxxxxxxx.
<youtube>nEYzuNxMwJE</youtube>


C5000000 xxxxyyyy - Counter (Based on Trainer Toolkit code)
==Credits==
Each time the cheat engine is executed, the counter is incremented by 1.
Original by Michael "Chishm" Chisholm.
If (counter & yyyy) == xxxx then execution status is set to true.
Else it is set to false.


C6000000 xxxxxxxx - Store offset (Based on Trainer Toolkit code)
Thanks to (in no particular order):
Stores the offset register to [xxxxxxxx].
* Pink-Lightning - Original skin (v0.5-0.82).
* bLAStY - Memory dumps.
* cReDiAr - Last crucial step for running DS Cards.
* Parasyte - Tips for hooking the game automagically.
* kenobi - Action Replay code document.
* Darkain - Memory and cache clearing code.
* Martin Korth - GBAtek.
* Deathwind / WinterMute - File menu code (v0.2 - v0.4).
* Everyone else who have helped along the way.
* Big thanks to Datel (CodeJunkies) for creating the original Action Replay and its cheats.


D400000x yyyyyyyy - Dx Data operation
==External inks==
Performs the operation Data = Data ? yyyyyyyy where ? is determined by x as follows:
* GitHub - https://github.com/ahezard/NitroHax3DS
0 - add
* GBAtemp - https://gbatemp.net/threads/nitrohax-homebrew-action-replay-alternative-now-working-as-a-cia.438638
1 - or
2 - and
3 - xor
4 - logical shift left
5 - logical shift right
6 - rotate right
7 - arithmetic shift right
8 - multiply


If type codes
[[Category:3DS homebrew applications]]
Adds offset to the address if the lowest bit of the address is set.
[[Category:Homebrew utility applications on 3DS]]
Sets the address equal to offset if the original address is 0x00000000.
</pre>

Latest revision as of 04:30, 1 February 2024

NitroHax3DS
Nitrohax3ds.png
General
AuthorApache Thunder, Ahezard, Shutterbug2000
TypeUtilities
Version0.99.dsi
LicenseGPLv3
Last Updated2018/04/26
Links
Download
Website
Source

Nitro Hax is a cheat tool originally created by Chishm for the Nintendo DS. This is a modified version to work on Nintendo 3DS made by Apache Thunder, Ahezard and Shutterbug2000.

Note from developers:

It works with original games only. This is not intended to boot flashcarts. Use NTR Launcher for that. This does not boot 3DS carts. This program is not related to NTR CFW. This is designed for DS games only. This program does not yet support TWL carts. (DSi Enhanced games). Even if you manage to boot a TWL cart, it will be running in NTR mode and will not have access to DSi specific hardware. DSi Enhanced Games will be supported if and when card reading code is updated to accommodate them.

Installation

Note: Revised for 3DS and required Luma3DS to use. Do not attempt to use this build on a original DS/DS Lite. Use Chishm's original build instead.

Install NitroHax.cia with your preferred CIA installer.

Place an Action Replay XML file (cheats.xml) to a location on your 3DS SD card.

User guide

Insert the game you intend to use NitroHax with.

Start NitroHax from 3DS Home Menu. If you did not insert a game yet, the program will prompt you to insert one.

One of the following will be loaded automatically if it is found (in order of preference):

  • cheats.xml (in the current directory)
  • /NitroHax/cheats.xml
  • /data/NitroHax/cheats.xml
  • /cheats.xml

If no file is found, browse for and select a file to open.

Choose the cheats you want to enable.

Some cheats are enabled by default and others may be always on. This is specified in the XML file.

Select the cheats you would like to disable/enable. If you wish to enable TWL clock speeds for your game press select button. This option added to help improve performance of some games.

Do not eject the game cartridge once cheats have been loaded. If you change your mind, you will need to restart Nitrohax.

When you're done, exit the cheat menu by pressing the start button.

The game will then start with cheats running. 10.The DS/DSi bootsplash played prior to starting the game will indicate what CPU speed was selected for your game.

Supported games and tutorial

See How to use NitroHax and supported game list (by PRAGMA).

Custom Code Types

CF000000 00000000 - End of code list
CF000001 xxxxxxxx - Relocate cheat engine to xxxxxxxx 
CF000002 xxxxxxxx - Change hook address to xxxxxxxx
 
C100000x yyyyyyyy - Call function with arguments 
 	x - number of arguments (0 - 4) 
	yyyyyyyy - Address of function
	The argument list follows this code. To call a function at 0x02049A48, 
	with the arguments r0 = 0x00000010, r1 = 0x134CBA9C, r2 = 0x12345678,
	you would use:
	C1000003 02049A48
	00000010 134CBA9C
	12345678 00000000

C200000x yyyyyyyy - Run code from cheat list
	x - 0 = ARM mode, 1 = THUMB mode
	yyyyyyyy - length of function in bytes
	EG:
	C2000000 00000010
	AAAAAAAA BBBBBBBB
	CCCCCCCC E12FFF1E
	This will run the code AAAAAAAA BBBBBBBB CCCCCCCC in ARM mode. 
	The E12FFF1E (bx lr) is needed at the end to return to the cheat engine.
	(These instructions are based on those written by kenobi.)

C4000000 xxxxxxxx - Safe data store (Based on Trainer Toolkit code)
	Sets the offset register to point to the first word of this code. 
	Storing data at [offset+4] will save over the top of xxxxxxxx.

C5000000 xxxxyyyy - Counter (Based on Trainer Toolkit code)
	Each time the cheat engine is executed, the counter is incremented by 1.
	If (counter & yyyy) == xxxx then execution status is set to true.
	Else it is set to false.

C6000000 xxxxxxxx - Store offset (Based on Trainer Toolkit code)
	Stores the offset register to [xxxxxxxx].

D400000x yyyyyyyy - Dx Data operation
	Performs the operation Data = Data ? yyyyyyyy where ? is determined by x as follows:
	0 - add
	1 - or
	2 - and
	3 - xor
	4 - logical shift left
	5 - logical shift right
	6 - rotate right
	7 - arithmetic shift right
	8 - multiply

If type codes
	Adds offset to the address if the lowest bit of the address is set. 
	Sets the address equal to offset if the original address is 0x00000000.

Controls

A - Open a folder, Toggle a cheat enabled

B - Go up a folder, Exit the cheat menu if at the top level

X - Enable all cheats in current folder

Y - Disable all cheats in current folder

L/R - Move up/dpwn half a screen

Up/Down - Move up/down one line

Start - Start the game

Select - Enable DSi clock speeds (currently no visible GUI button for this yet)

Media

NitroHax now working on Nintendo 3DS (ApacheThunder)

Credits

Original by Michael "Chishm" Chisholm.

Thanks to (in no particular order):

  • Pink-Lightning - Original skin (v0.5-0.82).
  • bLAStY - Memory dumps.
  • cReDiAr - Last crucial step for running DS Cards.
  • Parasyte - Tips for hooking the game automagically.
  • kenobi - Action Replay code document.
  • Darkain - Memory and cache clearing code.
  • Martin Korth - GBAtek.
  • Deathwind / WinterMute - File menu code (v0.2 - v0.4).
  • Everyone else who have helped along the way.
  • Big thanks to Datel (CodeJunkies) for creating the original Action Replay and its cheats.

External inks

Advertising: