ROM Hack DS Auto Trainer Maker (DSATM)

Shuny

I'm in yr forum, reading yr postz
Member
Joined
Nov 15, 2006
Messages
1,038
Trophies
1
Age
32
Location
Somewhere in the world
Website
www.shunyweb.info
XP
755
Country
France
Up for this f*cking awesome software
grog.gif
 

Shuny

I'm in yr forum, reading yr postz
Member
Joined
Nov 15, 2006
Messages
1,038
Trophies
1
Age
32
Location
Somewhere in the world
Website
www.shunyweb.info
XP
755
Country
France
Ok I've just (finally) tried it. I had a few problems with it :

- First, if the path to the ROM is too long (mine was i:\no$gba\Ouendan\Moero Nekketsu Rhythm Damashii Osu Tatakae Ouendan 2 - Copie.nds) (long path is loooooongg
tongue.gif
) ndstool won't unpack it and DSATM will say "Can't open arm9.bin" or something like that. As it's certainly a problem of NDSTool, is there a way to fix it ?
- If we don't choose a ROM to save to and we try to insert DEADBEEF padding in our ROM, DSATM will patch both arm7.bin and arm9.bin but will not repack it. It would be great to insert a message like "You have to choose the ROM to save as first" so we won't have to repack it by ourselves.
- Last problem is with emuhaste, on my config, BASEADDR_TRY set to 3 will take a lot of times and the dump will be empty (filled with 00). By using BASEADDR_TRY = 2, I managed to get a correct dump with some DEADBEEF padding.

Now I've patched my game, I'll try it on my NDS
tongue.gif


Oh, and the address found by DSATM for Osu! Tatakae! Ouendan! 2 is 0x23A8900
 

cory1492

Well-Known Member
Member
Joined
Jun 23, 2005
Messages
1,497
Trophies
1
Location
Home, WhereElse?
XP
334
Country
Canada
Shuny, are you sure it's that the path is too long and not the fact there is spaces? (as such perhaps not passed in quotes to force the resolution of the alias)
 

Shuny

I'm in yr forum, reading yr postz
Member
Joined
Nov 15, 2006
Messages
1,038
Trophies
1
Age
32
Location
Somewhere in the world
Website
www.shunyweb.info
XP
755
Country
France
cory1492 said:
Shuny, are you sure it's that the path is too long and not the fact there is spaces? (as such perhaps not passed in quotes to force the resolution of the alias)
Didn't think abotu that. Now you tell it, sure, it must be the problem
tongue.gif


Ok, some reports :

- I've tried patching my game using the addres I found into ARM7/ARM7. The game didn't boot
frown.gif

- I've tried Auto patching function, and it worked flawlessy. All this work for nothing
tongue.gif


The slow motion function works but has a strange behaviour. Sometimes, it doesn't slow down (especially in the menu). In game, it slows down but it's not a smooth slow down, it feels laggy and unplayable.

If I slow down a lot then I slow up a bit, I have a slowed down and smooth game. In some cases, the game gets its speed back for a sec or two, then slow down. Strange, isn't it ?
 

cracker

Nyah!
OP
Member
Joined
Aug 24, 2005
Messages
3,619
Trophies
1
XP
2,213
Country
United States
cory1492 said:
Shuny, are you sure it's that the path is too long and not the fact there is spaces? (as such perhaps not passed in quotes to force the resolution of the alias)

The spaces wouldn't be an issue because I have it wrap the filename in quotes.

Shuny said:
QUOTE(cory1492 @ Jun 7 2008, 10:36 PM) Shuny, are you sure it's that the path is too long and not the fact there is spaces? (as such perhaps not passed in quotes to force the resolution of the alias)
Didn't think abotu that. Now you tell it, sure, it must be the problem
tongue.gif


Ok, some reports :

- I've tried patching my game using the addres I found into ARM7/ARM7. The game didn't boot
frown.gif

- I've tried Auto patching function, and it worked flawlessy. All this work for nothing
tongue.gif


The slow motion function works but has a strange behaviour. Sometimes, it doesn't slow down (especially in the menu). In game, it slows down but it's not a smooth slow down, it feels laggy and unplayable.

If I slow down a lot then I slow up a bit, I have a slowed down and smooth game. In some cases, the game gets its speed back for a sec or two, then slow down. Strange, isn't it ?

The path length shouldn't be a problem either because I've actually been using it on files that come close to twice that length. Although it should work fine with files in any directory, I would copy the game to the folder where DSATM and ndstool are.

Yeah the autopatching is the way to go. I'm thinking about totally taking out the DEADBEEF padding and regular patching next version (or at least making an alternate version). From the games I have tested it really isn't needed anymore.
smile.gif


Slowmo is a beast... The reason why it works as you expect it in some areas and then seems to quit working or be erratic in other areas is to do with how much of the cpu the game is using at the time and how the IRQs are set up. It will vary throughout games depending on these things. That's why I have such a wide range of slowdown speeds. Some games crawl with even the slightest change in slowmo speed while others can be totally maxed out and seem to have almost no effect at all. It would be nice to have a realtime slowmo function that modified the loops as needed but I'm not sure how to go about cpu polling. I will probably check it out when I have some time.
 

Shuny

I'm in yr forum, reading yr postz
Member
Joined
Nov 15, 2006
Messages
1,038
Trophies
1
Age
32
Location
Somewhere in the world
Website
www.shunyweb.info
XP
755
Country
France
cracker said:
cory1492 said:
Shuny, are you sure it's that the path is too long and not the fact there is spaces? (as such perhaps not passed in quotes to force the resolution of the alias)

The spaces wouldn't be an issue because I have it wrap the filename in quotes.

Shuny said:
cory1492 said:
Shuny, are you sure it's that the path is too long and not the fact there is spaces? (as such perhaps not passed in quotes to force the resolution of the alias)
Didn't think abotu that. Now you tell it, sure, it must be the problem
tongue.gif


Ok, some reports :

- I've tried patching my game using the addres I found into ARM7/ARM7. The game didn't boot
frown.gif

- I've tried Auto patching function, and it worked flawlessy. All this work for nothing
tongue.gif


The slow motion function works but has a strange behaviour. Sometimes, it doesn't slow down (especially in the menu). In game, it slows down but it's not a smooth slow down, it feels laggy and unplayable.

If I slow down a lot then I slow up a bit, I have a slowed down and smooth game. In some cases, the game gets its speed back for a sec or two, then slow down. Strange, isn't it ?

The path length shouldn't be a problem either because I've actually been using it on files that come close to twice that length. Although it should work fine with files in any directory, I would copy the game to the folder where DSATM and ndstool are.

Yeah the autopatching is the way to go. I'm thinking about totally taking out the DEADBEEF padding and regular patching next version (or at least making an alternate version). From the games I have tested it really isn't needed anymore.
smile.gif


Slowmo is a beast... The reason why it works as you expect it in some areas and then seems to quit working or be erratic in other areas is to do with how much of the cpu the game is using at the time and how the IRQs are set up. It will vary throughout games depending on these things. That's why I have such a wide range of slowdown speeds. Some games crawl with even the slightest change in slowmo speed while others can be totally maxed out and seem to have almost no effect at all. It would be nice to have a realtime slowmo function that modified the loops as needed but I'm not sure how to go about cpu polling. I will probably check it out when I have some time.
Ok, thank you for your reply. I hope you'll be able to fix the slowmo patch, it's so funney to play Ouendan 2 in slow mode
biggrin.gif


Now I have some problems using Nanostray 2 cheats
frown.gif


First, this cheat isn't accepted by DSATM for an unknown reason :

9230FB8A 0000FFFF 2230FB9C 00000063 D2000000 00000000 922BCB6A 0000FFFF 222BCB7C 00000063 D2000000 00000000 922CD20A 0000FFFF 222CD21C 00000063 D2000000 00000000 92294F2A 0000FFFF 22294F3C 00000063 D2000000 00000000 922940EA 0000FFFF 222940FC 00000063 D2000000 00000000 922A88EA 0000FFFF 222A88FC 00000063 D2000000 00000000 922DBCEA 0000FFFF 222DBCFC 00000063 D2000000 00000000 922C548A 0000FFFF 222C549C 00000063 D2000000 00000000

The "922A88EA 0000FFFF" line is considerated by DSATM as a comment (in cheattest2.txt, I dunno if it's the case in the game)

Same problem with this cheat :

9230FB8A 0000FFFF 0230FB94 000C8000 D2000000 00000000 922BCB6A 0000FFFF 022BCB74 000C8000 D2000000 00000000 922CD20A 0000FFFF 022CD214 000C8000 D2000000 00000000 92294F2A 0000FFFF 02294F34 000C8000 D2000000 00000000 922940EA 0000FFFF 022940F4 000C8000 D2000000 00000000 922A88EA 0000FFFF 022A88F4 000C8000 D2000000 00000000 922DBCEA 0000FFFF 022DBCF4 000C8000 D2000000 00000000 922C548A 0000FFFF 022C5494 000C8000 D2000000 00000000

The "922A88EA 0000FFFF" line is considerated by DSATM as a comment, like the other cheat
frown.gif


Anyway I've tried without those cheats, using the configuration you gave in the ini of the first page (Embed and hook into ARM7, address 0x23A6C00 or something like that).

The game boots, I have 99continues / 99lives (yay) but when I try to play the level, I have some black screen of death
frown.gif


Here is the TXT I used :

QUOTE
[99 continues on map screen]
22172B9D 00000063

[99 lives on map screen]
22172B9B 00000063

[Arcade Mode All Unlocked]
22172C58 000000FF

[Arcade Mode All Weapons]
22172C59 0000000F

[Invincibility v3]
023FE074 012FFF11
E0000000 00000040
E92D0003 E59F002C
E59F102C E5900000
E3500000 0A000005
E0800001 E5901000
E3510001 1A000001
E3A01007 E5801000
E8BD0003 E12FFF1E
0212F39C 00002EC8
023FE074 E3520003

[Unlimited Laser]
52156350 0001FFFC
02156350 0002FFFC
D2000000 00000000

Oh yeah, last thing : I would be great to have a menu to add our cheat instead of using the txt file. It took me some time to find how to write my cheats into the txt file without crashing DSATM
frown.gif


Thank you for your help !
biggrin.gif


Shuny

EDIT : I removed the Invincibility cheat, the first level worked but the second crashes
frown.gif
 

cracker

Nyah!
OP
Member
Joined
Aug 24, 2005
Messages
3,619
Trophies
1
XP
2,213
Country
United States
Shuny said:
Ok, thank you for your reply. I hope you'll be able to fix the slowmo patch, it's so funney to play Ouendan 2 in slow mode
biggrin.gif


Now I have some problems using Nanostray 2 cheats
frown.gif


First, this cheat isn't accepted by DSATM for an unknown reason :

9230FB8A 0000FFFF 2230FB9C 00000063 D2000000 00000000 922BCB6A 0000FFFF 222BCB7C 00000063 D2000000 00000000 922CD20A 0000FFFF 222CD21C 00000063 D2000000 00000000 92294F2A 0000FFFF 22294F3C 00000063 D2000000 00000000 922940EA 0000FFFF 222940FC 00000063 D2000000 00000000 922A88EA 0000FFFF 222A88FC 00000063 D2000000 00000000 922DBCEA 0000FFFF 222DBCFC 00000063 D2000000 00000000 922C548A 0000FFFF 222C549C 00000063 D2000000 00000000

The "922A88EA 0000FFFF" line is considerated by DSATM as a comment (in cheattest2.txt, I dunno if it's the case in the game)

Same problem with this cheat :

9230FB8A 0000FFFF 0230FB94 000C8000 D2000000 00000000 922BCB6A 0000FFFF 022BCB74 000C8000 D2000000 00000000 922CD20A 0000FFFF 022CD214 000C8000 D2000000 00000000 92294F2A 0000FFFF 02294F34 000C8000 D2000000 00000000 922940EA 0000FFFF 022940F4 000C8000 D2000000 00000000 922A88EA 0000FFFF 022A88F4 000C8000 D2000000 00000000 922DBCEA 0000FFFF 022DBCF4 000C8000 D2000000 00000000 922C548A 0000FFFF 022C5494 000C8000 D2000000 00000000

The "922A88EA 0000FFFF" line is considerated by DSATM as a comment, like the other cheat
frown.gif


Anyway I've tried without those cheats, using the configuration you gave in the ini of the first page (Embed and hook into ARM7, address 0x23A6C00 or something like that).

The game boots, I have 99continues / 99lives (yay) but when I try to play the level, I have some black screen of death
frown.gif


Here is the TXT I used :

QUOTE said:
[99 continues on map screen]
22172B9D 00000063

[99 lives on map screen]
22172B9B 00000063

[Arcade Mode All Unlocked]
22172C58 000000FF

[Arcade Mode All Weapons]
22172C59 0000000F

[Invincibility v3]
023FE074 012FFF11
E0000000 00000040
E92D0003 E59F002C
E59F102C E5900000
E3500000 0A000005
E0800001 E5901000
E3510001 1A000001
E3A01007 E5801000
E8BD0003 E12FFF1E
0212F39C 00002EC8
023FE074 E3520003

[Unlimited Laser]
52156350 0001FFFC
02156350 0002FFFC
D2000000 00000000

Oh yeah, last thing : I would be great to have a menu to add our cheat instead of using the txt file. It took me some time to find how to write my cheats into the txt file without crashing DSATM
frown.gif


Thank you for your help !
biggrin.gif


Shuny

EDIT : I removed the Invincibility cheat, the first level worked but the second crashes
frown.gif

Cheats must be formatted to contain 16 characters on each line:
XXXXXXXX XXXXXXXX

For the invincibility code it looks like I will have to fix the type 'E' code.

As for the crash it is probably a bad code that should be using a pointer instead of an absolute address -- would explain why it works the first stage and then crashes the next. You could try turning them off one by one and seeing if it lets you play further.
 

cracker

Nyah!
OP
Member
Joined
Aug 24, 2005
Messages
3,619
Trophies
1
XP
2,213
Country
United States
I fixed a couple code types. Seems that their is either poor implementation of some of the codetypes or misinformation on them.
wacko.gif
Some codes are known not to be compatible on different versions so I think it is the former for some of them. In any event I think I have all codetypes working ok except for the 'E' codetype which I'll need to spend some more type on later.
tongue.gif


@Shuny
I used all the same codes except the ones below for the lives and invincibility. You don't need the map codes. I tested it a while and it seemed to work fine.

Code:
Invincibility
6212F39C 00000000
B212F39C 00000000
DC000000 00002EC8
50000000 00000001
00000000 00000007
D2000000 00000000

Inf Lives, All Stages
9230FB8A 0000FFFF
2230FB9C 00000063
D2000000 00000000
922BCB6A 0000FFFF
222BCB7C 00000063
D2000000 00000000
922CD20A 0000FFFF
222CD21C 00000063
D2000000 00000000
92294F2A 0000FFFF
22294F3C 00000063
D2000000 00000000
922940EA 0000FFFF
222940FC 00000063
D2000000 00000000
922A88EA 0000FFFF
222A88FC 00000063
D2000000 00000000
922DBCEA 0000FFFF
222DBCFC 00000063
D2000000 00000000
922C548A 0000FFFF
222C549C 00000063
D2000000 00000000
 

cracker

Nyah!
OP
Member
Joined
Aug 24, 2005
Messages
3,619
Trophies
1
XP
2,213
Country
United States
Yes it will work on any flash cart or emulator. Just a note: The speed up function is only to reduce the amount of slowdown that has been applied. It won't make the games run faster than the regular speed.
 

cracker

Nyah!
OP
Member
Joined
Aug 24, 2005
Messages
3,619
Trophies
1
XP
2,213
Country
United States
1. Open the game you want to patch
2. Put in the name of the file to save the patched game as
3. Uncheck Trainer
4. Check Slow Motion
5. Change the Slow down/Speed up keys if you want
6. Click Autopatch Game!
7. Try the game and if slow motion doesn't work change the Hook Into to ARM9 and go to Step 6 and it will work
 

³³³

Banned!
Banned
Joined
Jun 19, 2008
Messages
58
Trophies
0
Website
Visit site
XP
-8
Country
Netherlands
cracker said:
1. Open the game you want to patch
2. Put in the name of the file to save the patched game as
3. Uncheck Trainer
4. Check Slow Motion
5. Change the Slow down/Speed up keys if you want
6. Click Autopatch Game!
7. Try the game and if slow motion doesn't work change the Hook Into to ARM9 and go to Step 6 and it will work
 

BiometalOX

Member
Newcomer
Joined
Mar 17, 2007
Messages
13
Trophies
0
XP
96
Country
Brazil
So I was trying this program and I couldn't do it...
I'm trying to patch The World Ends With You(EU) with these codes, but I don't know the info I need to put in DSATM.ini, and the format of the codes too...
I'm sorry if it has already been anwsered, but I have no time now...
CODEThe World Ends With You
AWLP c5889c49
2008/05/30 09:27

(M)
master 00000000 00000000 00000000 00000001 00000000 04000136 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000001


Pins Always Evolve
92085484 00001034 020854c4 e3a00000 020854d8 e3a00000 020854ec e3a00000 02085500 e3a00000 02085514 e3a00000 d2000000 00000000


Quick Level Up Pins
92085d08 000037b6 02085d08 e3a03c27 d2000000 00000000


Infinite Cash
02071d1c 0098967f


Quick Exp. Gain
42071d18 00000001 02071d18 00000001 d2000000 00000000

Food Codes:
0

1 Fight to Digest Food
9208599e 0000e047 0208599c e3a00000 02085a34 e3a03000 d2000000 00000000


how do I do it?
thx in advance
 

cracker

Nyah!
OP
Member
Joined
Aug 24, 2005
Messages
3,619
Trophies
1
XP
2,213
Country
United States
You need to put the cheats into a plain text file and format them so there is one code on each line.

For example:

Pins Always Evolve
92085484 00001034
020854c4 e3a00000
020854d8 e3a00000
020854ec e3a00000
02085500 e3a00000
02085514 e3a00000
d2000000 00000000

Also note that you don't need to use the (m)astercode.

Then save the text file and load it into DSATM.

You don't have to do anything with DSATM.ini. Just select the game, the cheat text file, the file to save as and click the button to autopatch the game. If it doesn't work then select ARM9 under Hook Into and use autopatch again. Since the mastercode appears to use an alternate hooking method I think the ARM9 will have more chance for success in this case.

I thought the usage was pretty straight forward but maybe I will have to make a short tutorial with pictures for it...
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    BunnyPinkie @ BunnyPinkie: the game actually was censored the art style was changed