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

NitroHax: Difference between revisions

From GameBrew
No edit summary
No edit summary
Line 38: Line 38:
In addition to the standard Action Replay DS code types described on [http://doc.kodewerx.org/hacking_nds.html#arcodetypes EnHacklopedia's Action Replay DS page], Nitro Hax supports the following custom codes.
In addition to the standard Action Replay DS code types described on [http://doc.kodewerx.org/hacking_nds.html#arcodetypes EnHacklopedia's Action Replay DS page], Nitro Hax supports the following custom codes.


  CF000000 00000000 (Code list end.)
  CF000000 00000000  
Code used internally to specify the end of the cheat code list. It does not need to be specified manually.
Code used internally to specify the end of the cheat code list. It does not need to be specified manually.
   
   
  CF000001 xxxxxxxx (Relocate cheat engine.)
  CF000001 xxxxxxxx  
Relocate the cheat engine to address xxxxxxxx. The cheat engine and all data are moved to the given address, which should be accessible from the ARM7.
Relocate cheat engine to address xxxxxxxx. The cheat engine and all data are moved to the given address, which should be accessible from the ARM7.
   
   
  CF000002 xxxxxxxx (Hook address.)
  CF000002 xxxxxxxx
Change the hook address to xxxxxxxx. The hook should be a function pointer that is called regularly.  
Change hook address to xxxxxxxx. The hook should be a function pointer that is called regularly. By default the ARM7's VBlank interrupt handler is hooked. This code overrides the default.
 
By default the ARM7's VBlank interrupt handler is hooked. This code overrides the default.
   
   
  C100000x yyyyyyyy (Call function with arguments.)
  C100000x yyyyyyyy
Call a function with between 0 and 4 arguments. The argument list follows this code, which has the parameters:
Call a function with between 0 and 4 arguments. The argument list follows this code, which has the parameters:
* x - Number of arguments (0 - 4)
* x - Number of arguments (0 - 4)
* yyyyyyyy - Address of function
* yyyyyyyy - Address of function


For example, to call a function at 0x02049A48 with the three arguments r0 = 0x00000010, r1 = 0x134CBA9C, and r2 = 0x12345678, you would use:
For example, to call a function at 0x02049A48 with the three arguments r0 = 0x00000010, r1 = 0x134CBA9C, and r2 = 0x12345678:
  C1000003 02049A48
  C1000003 02049A48
  00000010 134CBA9C
  00000010 134CBA9C
  12345678 00000000
  12345678 00000000
   
   
  C200000x yyyyyyyy (Run ARM/THUMB code.)
  C200000x yyyyyyyy
Run ARM or THUMB code stored in the cheat list:
Run ARM or THUMB code stored in the cheat list:
* x - 0 = ARM mode, 1 = THUMB mode
* x - 0 = ARM mode, 1 = THUMB mode
* yyyyyyyy - Length of function in bytes
* yyyyyyyy - Length of function in bytes


For example:
For example below will run AAAAAAAA BBBBBBBB CCCCCCCC in ARM mode, the E12FFF1E (bx lr) is needed at the end to return to the cheat engine:
  C2000000 00000010
  C2000000 00000010
  AAAAAAAA BBBBBBBB
  AAAAAAAA BBBBBBBB
  CCCCCCCC E12FFF1E
  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.
  C4000000 xxxxxxxx
 
Provide 4 bytes of scratch space to safely store data. 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.
  C4000000 xxxxxxxx (Scratch space.)
Provide 4 bytes of scratch space to safely store data. 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.)
  C5000000 xxxxyyyy
Each time the cheat engine is executed, the counter is incremented by 1.  
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. Based on Trainer Toolkit code.
 
If (counter & yyyy) == xxxx then execution status is set to true, else it is set to false. Based on Trainer Toolkit code.
   
   
  C6000000 xxxxxxxx (Store offset.)
  C6000000 xxxxxxxx
Stores the offset register to the address xxxxxxxx. Based on Trainer Toolkit code
Stores the offset register to the address xxxxxxxx. Based on Trainer Toolkit code.
   
   
  D400000x yyyyyyyy (Dx Data operation.)
  D400000x yyyyyyyy
Performs the operation Data = Data ? yyyyyyyy where ? is determined by x as follows:
Performs the operation Data = Data ? yyyyyyyy where ? is determined by x as follows:
* 0 - add
* 0 - add

Revision as of 11:50, 8 September 2021

Nitro Hax
File:Nitrohaxds.png
General
Author(s)Chishm
TypeOther
Version0.94
LicenceGPLv3
Links
Download
Website
Source
Advertisements

<htmlet>adsense</htmlet>

Advertising: