(Link to AcmlmWiki) Offline: thank ||bass
Register | Login
Views: 13,040,846
Main | Memberlist | Active users | Calendar | Chat | Online users
Ranks | FAQ | ACS | Stats | Color Chart | Search | Photo album
04-18-24 07:15 AM
0 users currently in ROM Hacking.
Acmlm's Board - I3 Archive - ROM Hacking - N64 Super Smash Bros. hacking New poll | | Thread closed
Pages: 1 2Add to favorites | Next newer thread | Next older thread
User Post
DarkPhoenix

Red Goomba


 





Since: 12-27-05

Last post: 6273 days
Last view: 6273 days
Posted on 01-19-07 03:40 AM Link
How have you been using the data others have found? Do you have a hex editor already? For the most part, that's all you need.
I don't own a mac myself, but Hexedit and HexFiend look somewhat promising.

Beyond that...find some tutorials or something, like those that others have mentioned. Not to sound cold, but the tutorials are there to walk you through step by step, you've gotta take the initiative to read and understand them yourself. People on this board will help you with questions you have, but they can't possibly hold your hand the whole way through.

Sadly, if you don't yet know how to find data yourself, the knowledge you have probably isn't general enough to help you in hacking another game. It's the techniques for finding the data that carry over, not the data itself. You need to learn techniques. Only way to do that is to get reading tutorials, and get practicing.
mortalkenshi2

Paratroopa








Since: 12-10-06

Last post: 6270 days
Last view: 6269 days
Posted on 01-19-07 03:50 AM Link
I do have a hex editor and what i do is guess and check with data i have and that is used to create documents and info you see i know that everyone is being suprised about. Simple data that I am finding through research on the threads that VL-Tone has posted in. I experiment with that but since I have no information at all on this game it will be a lot harder. Search for data on the internet while I look in the rom please thanks.
Yoronosuku

Toss Tortoise


 





Since: 11-17-05
From: Massachusetts is my new home..

Last post: 6268 days
Last view: 6268 days
Skype
Posted on 01-19-07 03:51 AM Link
No one is going to search for data for you, do you not get that part? =\
mortalkenshi2

Paratroopa








Since: 12-10-06

Last post: 6270 days
Last view: 6269 days
Posted on 01-19-07 03:55 AM Link
Originally posted by Yoronosuku
No one is going to search for data for you, do you not get that part? =\



Alright, just tryin to get some help to speed up my progress gee, i didnt know everyone was lazier than me.
Yoronosuku

Toss Tortoise


 





Since: 11-17-05
From: Massachusetts is my new home..

Last post: 6268 days
Last view: 6268 days
Skype
Posted on 01-19-07 04:11 AM Link
...no one is lazier than you, we simply aren't going to do the work for you, do you don't get it. By asking us to do this, it is YOU who is lazy. We have better things to do with our time than to google for things you can look up yourself for someone who probably is going to get overwhelemed and give up, anyway...


(edited by Yoronosuku on 01-18-07 10:13 PM)
HyperHacker

Star Mario
Finally being paid to code in VB! If only I still enjoyed that. <_<
Wii #7182 6487 4198 1828


 





Since: 11-18-05
From: Canada, w00t!
My computer's specs, if anyone gives a damn.
STOP TRUNCATING THIS >8^(

Last post: 6269 days
Last view: 6269 days
Posted on 01-20-07 05:16 AM Link
sliafdnacinoS has the right idea but I don't think his post needed to be so negative. It's understandable that a newbie might think Shockwave is required for N64 hacking since the only N64 editor he knew about required it, but this isn't true. You do NOT have to know ASM to hack even N64; it is a HUGE help but it isn't mandatory. (Plus, the instructions you posted were for a 6502, which has nothing to do with N64. )

If you want to hack N64 you should know a fair bit about it and how it differs from the SNES (and NES, which I won't bother to mention since it's so similar to SNES). You can look up these differences on Wikipedia and various homebrew coding sites.

It's important to note some differences from the SNES:
  • N64 games are all made with the same devkit, and all run in a simple multithreaded OS. They are almost entirely coded in C.
  • Pretty much every N64 game compresses most of its data, as rivalling the Playstation it was very important to fit as much content onto as small a chip as possible to keep costs down while delivering comparable results.
  • N64's CPU is much more powerful, and it has much more RAM.
  • N64 games frequently employed various anti-piracy methods, such as ROM checksums, and in many cases anti-cheating methods as well.
  • N64 cartridges are not memory-mapped; data has to be slowly transferred from them into RAM before it can be used. (The N64 automatically transfers some data from the beginning of ROM, and performs a checksum on it, at power-on.)
  • Obviously, the N64 does true 3D, and has a floating-point processor. It also has two coprocessors and an MMU.


These differences pose interesting changes when it comes to hacking. Compression, checksums, multithreading, and MMU make ROM corruption pretty much worthless - it will almost certainly result in the game crashing; trying to decompress garbage data and getting stuck in a loop, failing a checksum, or writing past the end of the buffer being used for decompression and triggering an access violation. Since SNES games didn't often use compression or checksums, this was less an issue, and since a very small portion of their memory map was actually RAM (most of it is ROM) and there was no MMU to say "hey WTF you shouldn't be writing there" and stop the program, corruption generally only produced strange results, and even if it did cause some routine to write to memory it shouldn't be writing to, this was much less likely to crash the game - on N64, the MMU would detect this and just stop the thread, crashing the game.

Fortunately, since all N64 games use the same devkit, they generally all use the same or similar data formats. For example, many games use the MIO0 compression format, which I've already released a [de]compressor for. One way to find data in N64 games is to simply find and decompress these files, and see what's in them, or try corrupting them (I like just changing the size in the header) and seeing what breaks. And since N64 games don't use banks, you can usually find a pointer to something in ROM by simply looking for its 3-byte address in the file. If you know how to code, all the better; you can do what I did for Mario Kart 64. Suppose you want to find level data, then make one save state in each level, then write a program that will scan each state for the contents of each decompressed file, and make a list of which files are found in memory in which levels. (Reset the game after making each state to ensure no data is left over in memory.) Look for files that are only loaded in one level or not in any (some games, including Mario Kart, discard of the decompressed data once they've processed it, so it may not be in memory any more once the level actually loads.)

N64 hacking isn't easy, and knowing ASM would be a big help, but it's not impossible either.
Guy Perfect









Since: 11-18-05

Last post: 6270 days
Last view: 6268 days
Posted on 01-21-07 05:26 AM Link
Like just about any ROM, the programming tends to be at the beginning and require little space; and resources at the end composing the remainder of the data. Corruption is still a viable option when attempting to locate resource data in N64 ROMs; it simply won't help a lot with programming inquiry.
Dootuz

Red Goomba


 





Since: 01-01-07
From: USA

Last post: 6284 days
Last view: 6269 days
Posted on 01-21-07 05:31 AM Link
Ill help! Master chief would be awsome!
mortalkenshi2

Paratroopa








Since: 12-10-06

Last post: 6270 days
Last view: 6269 days
Posted on 01-21-07 06:02 AM Link
Originally posted by Alice
sliafdnacinoS has the right idea but I don't think his post needed to be so negative. It's understandable that a newbie might think Shockwave is required for N64 hacking since the only N64 editor he knew about required it, but this isn't true. You do NOT have to know ASM to hack even N64; it is a HUGE help but it isn't mandatory. (Plus, the instructions you posted were for a 6502, which has nothing to do with N64. )

If you want to hack N64 you should know a fair bit about it and how it differs from the SNES (and NES, which I won't bother to mention since it's so similar to SNES). You can look up these differences on Wikipedia and various homebrew coding sites.

It's important to note some differences from the SNES:
  • N64 games are all made with the same devkit, and all run in a simple multithreaded OS. They are almost entirely coded in C.
  • Pretty much every N64 game compresses most of its data, as rivalling the Playstation it was very important to fit as much content onto as small a chip as possible to keep costs down while delivering comparable results.
  • N64's CPU is much more powerful, and it has much more RAM.
  • N64 games frequently employed various anti-piracy methods, such as ROM checksums, and in many cases anti-cheating methods as well.
  • N64 cartridges are not memory-mapped; data has to be slowly transferred from them into RAM before it can be used. (The N64 automatically transfers some data from the beginning of ROM, and performs a checksum on it, at power-on.)
  • Obviously, the N64 does true 3D, and has a floating-point processor. It also has two coprocessors and an MMU.


These differences pose interesting changes when it comes to hacking. Compression, checksums, multithreading, and MMU make ROM corruption pretty much worthless - it will almost certainly result in the game crashing; trying to decompress garbage data and getting stuck in a loop, failing a checksum, or writing past the end of the buffer being used for decompression and triggering an access violation. Since SNES games didn't often use compression or checksums, this was less an issue, and since a very small portion of their memory map was actually RAM (most of it is ROM) and there was no MMU to say "hey WTF you shouldn't be writing there" and stop the program, corruption generally only produced strange results, and even if it did cause some routine to write to memory it shouldn't be writing to, this was much less likely to crash the game - on N64, the MMU would detect this and just stop the thread, crashing the game.

Fortunately, since all N64 games use the same devkit, they generally all use the same or similar data formats. For example, many games use the MIO0 compression format, which I've already released a [de]compressor for. One way to find data in N64 games is to simply find and decompress these files, and see what's in them, or try corrupting them (I like just changing the size in the header) and seeing what breaks. And since N64 games don't use banks, you can usually find a pointer to something in ROM by simply looking for its 3-byte address in the file. If you know how to code, all the better; you can do what I did for Mario Kart 64. Suppose you want to find level data, then make one save state in each level, then write a program that will scan each state for the contents of each decompressed file, and make a list of which files are found in memory in which levels. (Reset the game after making each state to ensure no data is left over in memory.) Look for files that are only loaded in one level or not in any (some games, including Mario Kart, discard of the decompressed data once they've processed it, so it may not be in memory any more once the level actually loads.)

N64 hacking isn't easy, and knowing ASM would be a big help, but it's not impossible either.


well i dont nesseccarily need shockwave to hack i just think it will be of good use for me since Im not a good hacker.
Zepper

Paragoomba








Since: 09-04-06
From: Brazil

Last post: 6269 days
Last view: 6268 days
Posted on 01-22-07 03:11 AM Link
*bump* ROM hacking... Shockwave... "d4 d0c5"... *bump*

Well, don't get me mad. It's not the first time you open a new topic, within a random game title, requesting "d4 d0c5" and assuming that someone has already wrote a doc. If you want to hack a game, go ahead by using an hex editor PLUS an emulator to test it. Otherwise, forget it. Where should you start? Well, what do you want to do? There are graphics editors and... where is the graphics offset? No.


(edited by Zepper on 01-21-07 09:13 PM)
Yoronosuku

Toss Tortoise


 





Since: 11-17-05
From: Massachusetts is my new home..

Last post: 6268 days
Last view: 6268 days
Skype
Posted on 01-22-07 08:02 AM Link
Thanks for that insightful post that added brand new content and purpose to this thread.

Closing this due to an idiocy overload. If another mod wants to open it, go ahead, but ;\
Pages: 1 2Add to favorites | Next newer thread | Next older thread
Acmlm's Board - I3 Archive - ROM Hacking - N64 Super Smash Bros. hacking | Thread closed


ABII

Acmlmboard 1.92.999, 9/17/2006
©2000-2006 Acmlm, Emuz, Blades, Xkeeper

Page rendered in 0.019 seconds; used 407.98 kB (max 508.41 kB)