ROM Hack GBA Auto Trainer Maker(GBAATM)

mte90

Well-Known Member
Newcomer
Joined
Mar 28, 2020
Messages
98
Trophies
0
Age
33
Website
daniele.tech
XP
388
Country
Italy
No it isn't just a recompile, is a new UI right now with linux support (I think that compiles also on windows without problems).
I am integrating the original source code with the new UI, later code optimization and refactoring.
Talking with cracker my plan is to release it as GPL 3, I will add the license in few minutes. Before to adding to the portal I prefer that the rom patching works (it's not finished the integration yet).
There is a lot to do I am open to contribution of course, also I am not very expert on C++ .
 

mte90

Well-Known Member
Newcomer
Joined
Mar 28, 2020
Messages
98
Trophies
0
Age
33
Website
daniele.tech
XP
388
Country
Italy
The status now is that generate the patched rom with the menu trainer but the cheat are not executed.
I am on the right way, when this last thing will work I will move on on the UI and code refactoring.
 
  • Like
Reactions: Zense and chronoss

chronoss

Well-Known Member
Member
Joined
May 26, 2015
Messages
3,006
Trophies
1
XP
4,858
Country
Congo, Republic of the

mte90

Well-Known Member
Newcomer
Joined
Mar 28, 2020
Messages
98
Trophies
0
Age
33
Website
daniele.tech
XP
388
Country
Italy
IMPORTANT : u must check "Trainer Menu" if you want a cheat menu an boot.
No compiled version for test ?
In my version I reimplemented it so probably I am doing something wrong, in my case is just enough to write a menu text and the menu boot is added, the cheat list is added but they are not enabled after flagging. I have to investigate more in the code.
For testing I can do a build for linux 64bit but is very incomplete right now.
 
  • Like
Reactions: chronoss

erfg12

Well-Known Member
Newcomer
Joined
Oct 7, 2013
Messages
63
Trophies
0
Age
37
Website
newagesoldier.com
XP
290
Country
United States
I tried this on Donkey Kong Country 1 and after cheat selection it resets the game.

I tested the cheat codes in mGBA prior to applying the patch and they work.
 

mte90

Well-Known Member
Newcomer
Joined
Mar 28, 2020
Messages
98
Trophies
0
Age
33
Website
daniele.tech
XP
388
Country
Italy
I am debugging what is going wrong with my integration. The tool is not ready yet and with features parity like the original one but I am working on that.
 
  • Like
Reactions: chronoss

mte90

Well-Known Member
Newcomer
Joined
Mar 28, 2020
Messages
98
Trophies
0
Age
33
Website
daniele.tech
XP
388
Country
Italy
I cleaned all the code from compiler errors (removed all the code unused, a lot) but it needs some testing with various roms and see if the cheats are applied.
Right now on my tests is not happening and the debug will be not easy because require a manual test for any change, so if someone with C++ skills wants to help is welcome.
 

mte90

Well-Known Member
Newcomer
Joined
Mar 28, 2020
Messages
98
Trophies
0
Age
33
Website
daniele.tech
XP
388
Country
Italy
Right now seems that the rom generated as the same for version 1.9.9.5 but with the one I am testing the trainer is not working with both (kingdom of hearts). Instead with the 1.9.9.7 (I don't have the code) the rom of this game is patched and works.
I will check this thread for some rom and cheat that works to do a better test.
 

mte90

Well-Known Member
Newcomer
Joined
Mar 28, 2020
Messages
98
Trophies
0
Age
33
Website
daniele.tech
XP
388
Country
Italy
I migrated the code from 1.9.9.7 but my version is not working fine, the cheat on the trainer menu after enabling is not activated compared to the original version.
I think that there is some issues with 32/64bit code but I think that know is just matter of time and testing to understand what is happening but any help is appreciated.
 
  • Like
Reactions: Zense

mte90

Well-Known Member
Newcomer
Joined
Mar 28, 2020
Messages
98
Trophies
0
Age
33
Website
daniele.tech
XP
388
Country
Italy
Good news, the new version generate a rom 1:1 with the old version when is using the trainer now.
Instead for slow motion there are some issue but I am on the right way t achieve 100% rom generation parity, I mean I am comparing the rom binary data to see difference and with slowmo is kind of a mess. So I am not sure if remove the feature at all or investigate few days to work on that.

In case someone use that feature can give me some rom to test it?
 
  • Like
Reactions: Alexander1970

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,284
Country
United Kingdom
I don't know how many people will use slow motion* and the way it works (I imagine flooding a vblank or some other routine), or more specifically getting it to work going in cold on random ROMs, is going to be needless hassle to fully debug it. It is probably more that was easy enough to do if you already have the ability to inject code into random ROMs so why not.

*there might be a few out there that use it to play action games at a slower pace but the only speed change most people are usually concerned with is speeding up, which is more or less an emulator or overclock only option. At least as far as generic approaches go.

To that end if it is going to trouble things then drop it and come back later. Anybody that wants it will likely be on an emulator anyway, and if not they still have the old program to make them if it is so absolutely vital to their enjoyment of the world.
 
  • Like
Reactions: Alexander1970

mte90

Well-Known Member
Newcomer
Joined
Mar 28, 2020
Messages
98
Trophies
0
Age
33
Website
daniele.tech
XP
388
Country
Italy
There is already the code in the tool for that but is generated in a different way on new system so I have to debug every byte.
I am just in touch with Cracker if he has some hints but I am working on that.

About slowmo I never used it so I don't know with what rom works and if with a real gba is worth it. As all the emulators and new consoles in this days as you said probably doesn't worth it on implementing it. I just started this new project because I want to use it with a real GBA.
Before to drop it I want to hear more in this thread :-)

Right now I want to focus on optimizing the tool because there are some issues if you generated more roms without restart the program itself.
Anyway I think that I will start a new thread to avoid confusion n this one in the next days with all the updates :-D

PS: readme updated https://github.com/Mte90/GBAATM-Rebirth and published also the original source code.
 
Last edited by mte90,

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,284
Country
United Kingdom
Slowdown things happen in three main ways

1) You buy a controller (usually third party) that will rapidly press the start/pause button for you, probably bringing up any menus or playing sound effects in the process.

2) Your device has a slow processing mode and your cheat cart or whatever trips you into that and with it the rest of the console. The GBC is probably a good example ( https://bgb.bircd.org/pandocs.htm#cgbregisters ). This might not work depending upon the system and architecture.

3) You find some code that is run all the time and inject your own in there as busywork (or maybe shutdown/sleep if you like saving power) such that the rest of the game.
Sometimes this will crash things, sometimes it will make things hard to control, sometimes it will do nothing at all (the game might be built to handle it or handle things in such a way that your instruction flood does nothing) and sometimes it will actually add just enough load to the CPU that the game itself chugs along in slower speed than normal and thus acts as slow motion. This unreliability, and inability to really fine tune things, means few ever really use it and thus it will probably not be missed.
If however you have the code to find a nice vblank interrupt routine, or core loop of the game, like you would have to be able to be reasonably able to inject cheats* into random games without external code running all the time or whatever you can hack (see the 3ds, wii, or indeed the PC)


*if you are good enough that you can reliably alter instructions (change sub life count to add, reliably determine and alter IF ELSE...) with an automatic tool that is not a prebaked database of injection points instead of injecting something constantly writing RAM then you are good enough to reliably add proper slowdown, and probably win a nobel prize for computing as you probably just made AI (or at least something 90% of the way there) and likely changed the whole world of computing forever on various fronts even if not.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    A @ anotherthing: You got banned from Pretendo?