ROM Hack banner.bin file editing

Fat_Matt

Member
OP
Newcomer
Joined
Feb 2, 2009
Messages
9
Trophies
0
XP
47
Country
Hi, I'm new to ROM Hacking so I may have probably missed something really simple.

The thing I'm trying to do is modify Death Note Kira Game's internal name file. On my Acekard, the internal name come up with 'DEATH NOTE' then below that there's japanese characters which I'm guessing translates into either 'Kira Game' or 'The Kira Game'.

I found the banner.bin file that has the information I need to change in, but every time I've modified it, the banner file becomes invalid and the ROM just becomes 'NDS Program File' on my acekard. The game still runs fine though.

Can anyone help me?? :S

Thank you

EDIT: Once I've done this I'm hoping to see if I can translate the game, but may need time to get the hang of hacking
biggrin.gif
 

Fat_Matt

Member
OP
Newcomer
Joined
Feb 2, 2009
Messages
9
Trophies
0
XP
47
Country
I have been playing about with the banner file, I have manged to get the rom info to display the right banner text but the banner itself is still invalid so the banner won't show up on the DS.

Here's a picture of the nds info I get when I load the rom ready to be unpacked:

Rom_info_Before_banner_change.png



Here's the info of the rom with the modified banner file:

Rom_info_after_banner_change.png



I've made sure that the banner file size is the same as the orginal, and it's still invalid, I hope the images help people see where the problem is :/
 

SifJar

Not a pirate
Member
Joined
Apr 4, 2009
Messages
6,022
Trophies
0
Website
Visit site
XP
1,175
Country
The CRC is wrong. You kept the CRC the same, even though you changed the banner. The CRC is a checksum, which is used to verify if the contents of the banner are changed. You need to recalculate the CRC checksum and replace it in the banner. Did you modify the banner manually? It'd probably work better if you used a tool like DSLazy or something to modify it, it should then fix the CRC for you.
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,321
Country
United Kingdom
That CRC should be stored in bytes 2 and 3 (albeit swapped around) of the banner.bin (or if you do not want to extract/insert it then at the point that 68 hex in the header points at. I suspect those behind AKAIO just did a bit of defensive coding to stop crashes caused but wannabe hackers "signing" their work and messing things up in the process as has happened before.

http://nocash.emubase.de/gbatek.htm#dscartridgeicontitle has more on this.

The crc16 is not the standard crc16 you might get elsewhere but it is the one the DS uses a lot for saves and the like. Here are my options (hex workshop) to generate it if you can not find another.
crc16.JPG


In this case you start at 20h in the banner.bin file (probably where all the 00s finish) to the end of the file (83f hex).

That should bring your banner.bin back into the fold and with it sort your problem.
 
  • Like
Reactions: AikoT_T

Fat_Matt

Member
OP
Newcomer
Joined
Feb 2, 2009
Messages
9
Trophies
0
XP
47
Country
SifJar said:
The CRC is wrong. You kept the CRC the same, even though you changed the banner. The CRC is a checksum, which is used to verify if the contents of the banner are changed. You need to recalculate the CRC checksum and replace it in the banner. Did you modify the banner manually? It'd probably work better if you used a tool like DSLazy or something to modify it, it should then fix the CRC for you.

I used DSLazy to unpack the rom and then used a hex editor to change the banner. How do I get DSLazy to correct the checksum??


QUOTE(FAST6191 @ Sep 20 2010, 11:49 PM) That CRC should be stored in bytes 2 and 3 (albeit swapped around) of the banner.bin (or if you do not want to extract/insert it then at the point that 68 hex in the header points at. I suspect those behind AKAIO just did a bit of defensive coding to stop crashes caused but wannabe hackers "signing" their work and messing things up in the process as has happened before.

http://nocash.emubase.de/gbatek.htm#dscartridgeicontitle has more on this.

The crc16 is not the standard crc16 you might get elsewhere but it is the one the DS uses a lot for saves and the like. Here are my options (hex workshop) to generate it if you can not find another.
crc16.JPG


In this case you start at 20h in the banner.bin file (probably where all the 00s finish) to the end of the file (83f hex).

That should bring your banner.bin back into the fold and with it sort your problem.

I'll download hex workshop, I'm using a really simple hex editor that doesn't have many functions.



Thank you both for ur help
biggrin.gif
I knew I'd miss something obvious
smile.gif


EDIT: is there any documents that you could point me to for explaining how to calculated the checksum?? Thank you
smile.gif
 

SifJar

Not a pirate
Member
Joined
Apr 4, 2009
Messages
6,022
Trophies
0
Website
Visit site
XP
1,175
Country
To calculate the checksum, goto the offset 0x20, and select from there to the end of the file. Then find the Custom CRC dialog FAST6191 posted, and put in the settings he showed. Then click OK. It should give you a checksum which you should then enter at offset 0x2 (and it will also take up 0x3). All this information is taken straight from FAST6191's post.
 

rastsan

8 baller, Death Wizard,
Member
Joined
May 28, 2008
Messages
1,002
Trophies
1
Location
toronto
Website
rastsan.wordpress.com
XP
413
Country
Canada
why don't you just use CT2 to change the name? Thats what I did for zoids coliseum plus a few others.so far it has no problems displaying right. (nds file system - edit in that new window - title info and make sure you change all the titles - then in the edit menu again use the crc checker to make sure things work)

Theres only one emulator that gives me a problem with this... but no cards as of yet.
 

Fat_Matt

Member
OP
Newcomer
Joined
Feb 2, 2009
Messages
9
Trophies
0
XP
47
Country
Thank you for all your help!! I've got a new Hex editor that has a custom CRC like hex workshop. Using that I've managed to get the CRC to work!

@rastsan, I'm a newbie to hacking so I'm not very good at the techniques used at the moment so could use explain what CT2 is?? thank you
smile.gif
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,321
Country
United Kingdom
ct2 = crystaltile2- it was made by a bunch of Chinese hackers but eventually found its way onto the English speaking circuit and it is that good.
Frankly I should have thought of it first time around as I have actually used the very functions before.
http://gbatemp.net/t232718-crystaltile2-2010-06-12

edit:
If you can not get it I will link it up.
Go to the DS icon on the list of icons (probably towards the right of the screen) to open the file system display
On that window click edit
now click title info
You should be able to change it.
You might as well save as a new file.
 

Fat_Matt

Member
OP
Newcomer
Joined
Feb 2, 2009
Messages
9
Trophies
0
XP
47
Country
FAST6191 said:
ct2 = crystaltile2- it was made by a bunch of Chinese hackers but eventually found its way onto the English speaking circuit and it is that good.
Frankly I should have thought of it first time around as I have actually used the very functions before.
http://gbatemp.net/t232718-crystaltile2-2010-06-12

edit:
If you can not get it I will link it up.
Go to the DS icon on the list of icons (probably towards the right of the screen) to open the file system display
On that window click edit
now click title info
You should be able to change it.
You might as well save as a new file.

Thank you, I've tried to download it from the site but I get lost and transfered to other places and can't seem to get to it? Any suggestions?

EDIT: Used IE instead of Firefox and managed to download the tool, Going to try it now
biggrin.gif
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    K3Nv2 @ K3Nv2: Nut on the hill