ROM Hack How to create tables for Japanese ds roms

Bagira20

Member
OP
Newcomer
Joined
Feb 23, 2017
Messages
19
Trophies
0
Age
25
XP
54
Country
Gambia, The
So I read through the sections about pointers in those documents and here is what I got from it:

1. There are 3 different types of pointers that might all appear in a game
2. You have to guess where they are by interpreting the code.

Unfortunately, I seem to really be stuck now because I can't wrap my head around the following:

1. How exactly do I locate pointers? If I just search for 0000, it also shows me parts that have more than 4 zeros.
2. Once I've found a pointer, how do I change it?
3. What exactly does it say? the length in file size or in lines of code?
4. I found this option in crystaltile to go to the arm9 or arm7 pointer. Does that help me in any way?
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,321
Country
United Kingdom
There can be other types but I generally find it to be one of those three.
Much like the tables we started out on you can walk through the code if you really wanted and also try things to see how they run in the final build (or if your theory on how it works is correct) but yes it usually involves some interpretation.

1) I just noticed that the sections in your picture ended with 0000. This might not be where the pointers point at but as it would likely be immediately next to it for every single one then such things are useful.

2) If you know where the pointer is, what the value indicates and where the new location is it should be fairly obvious what it needs to be changed to.

3) A pointer is a mathematical relation to the location of contents of a file. Usually it is a location of some form, sometimes it is obscured slightly (I have seen things on the DS need a shift before it becomes useful) and sometimes it is the length of a section rather than a location so you have to add up everything that came before it (can be easier for the device to do if it has the data from the previous sections loaded already).

4) Not unless the pointers deal with memory locations, which can happen for text but it will tend to only be for text in binaries or overlays and this is not that.
 

Bagira20

Member
OP
Newcomer
Joined
Feb 23, 2017
Messages
19
Trophies
0
Age
25
XP
54
Country
Gambia, The
Ok this'll be the last question If I don't get it now than I'll try to find someone in real life to sit down with me and hammer it in.

So I got this programm called Pointer Calculator which I thought sounded helpful. It looks like this:



calculatotr.JPG




My question is pretty obvious: What do I have to input in the two spaces? Do I have to know where the pointer is for this?
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,321
Country
United Kingdom
That could be many things, though most likely is a cheat or assembly helper and not really a lot to do with file level pointers which are more abstract and less tied to any internal system hardware. I guess it is so when you have to do a cheat that repeats at set distances (say one character's stats and equipment and then the second party member with the exact same setup) you can calculate it without doing the maths, or so when you shift data in a hack so far ahead it finds where it is now. Theoretically you could use for it for some kind of internal file format but it would be no different to setting your computer calculator into programming mode, or just using a spreadsheet.

I should also say if you were so inclined some of the hacking toolkits like tinke have options for plugins. They can help with some of the program by giving you a framework to code within and leave you more to handle the internals of the file format you are dealing with.

Unrelated tip. If you press alt and then printscreen it will capture the currently selected window. No cropping unless you want to go further than that.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    SylverReZ @ SylverReZ: @OctoAori20, Cool. Same here.