Introduction to Hex
Posted 07 February 2006 - 02:14 AM
Posted 07 February 2006 - 09:25 AM
Guardian, on Feb 7 2006, 02:14 AM, said:
You talking about Rika's reply? He's irritable like that. Ignore him. :P
Compressing? Pretty much all you need to do is insert an offset into the decompressor program (TSDC preferred, but Esrael has a set of decompressors as well) and click decompress to an output file of your choice. Then you simply edit the data, and grab the compressor. Compress the file you decompressed and edited before to a new file (try your old filename, with an _c after it. Like, if your old file was HUD.bin, try HUD_c.bin). Take the data in this new file and tack it at the end of the ROM, then change the pointer to the data. If you don't know where the pointer is, look up the offset of the data in the form of an extended longword -- 00 00 00 00. Like I mentioned in this tutorial, if your offset of $12345, then run a search on 00 01 23 45 and modify that to point to the new offset of your data.
Hope that helped.
Posted 18 December 2006 - 04:34 PM
Posted 19 December 2006 - 10:35 AM
If it keeps trying to insert instead of overwrite, hit the insert button first to see if that helps anything.
Posted 19 December 2006 - 11:47 AM
You have to do a search for instances of the address, not go to the offset itself. Do a search for 0001D978 and replace it with 00080000. If you did add the new compressed data to 00080000, it should work.
Posted 19 December 2006 - 11:55 AM
Posted 19 December 2006 - 11:59 AM
Hit ctrl+F, and search for 0001D978. Click "from beginning" and "find all instances." Then, click on the results in the results menu (at the right), and, at those highlighted offsets in the main editor window, replace them with "00 08 00 00" (assuming you have the view set up like that -- in your case, I believe it would be "0800 0000.")
Seriously, I don't know how I could explain this any better. You do NOT edit the data - only the pointer.