H e x p o s u r e v0.44b by SnowBro Updates ------- v0.44b (Released 02/26/99): - Fixed an ugly bug that had crept into the relative searcher, causing it to crash if it didn't find any results! Waaahh! (This bug was only present in v0.43b.) - Ability to build font table based on results of a relative search. Hexposure will ask you if you want it to build the font table or not. - Ability to save the current font table as a .TBL file. (Useful if you've used the relative searcher to find the font values.) - Relative searcher sped up. It can now find a 16-byte string at the end of a 1 MB file in one second (on my Pentium 75). v0.43b (Released 02/25/99): - Wow!! Another update today! :) - Script format changed. It now handles line breaks, section breaks and string breaks. (If you've defined the correct values in the .TBL, of course.) This improves the readability of the script greatly. - As already mentioned, you can now define a value for section breaks in the .TBL. See "Font tables" section in the documentation for syntax. - Improved the documentation a bit. v0.42b (Released 02/25/99): - Script inserter. So far only works for non-DTE scripts. The script format will most likely have to be changed to assure that scripts with DTE in them are reinserted correctly. - Added a DTE enable/disable switch to the Options menu. By default, DTE support is enabled. When the ROM you're editing doesn't have DTE, just ignore this switch. It's only useful when editing ROMs which in addition to the DTE table has a separate font table (without DTE) that's used elsewhere in the game. - Fixed minor bugs and other things. v0.400000001b (Released 02/23/99): - Fixed bug that caused the font table-loader to crash if you didn't press enter after the last entry in the .TBL file (Win9X Notepad-specific). v0.40b (Released 02/23/99): - Program rewritten!!! - Table format changed - DTE support - Script dumper - Relative searcher General editing --------------- I assume you're already familiar with using hex/text editors, so I won't insult your intelligence by explaining how to move around in a file. You can toggle between hex and text editing by pressing TAB. When in hex mode, 2-digit hexadecimal values can be entered. In text mode, the characters can be typed directly. Searching for values -------------------- Three types of ultra-fast search methods can be employed: - Text search (F2) Lets you search for a character string. The search string can be up to 16 characters long. Currently it defaults to searching for non-DTE strings, but I'll add a DTE-switch in the next version. - Hex search (F4) Lets you search for a hexadecimal string. The search string can be up to 16 bytes long (32 digits). Note that the string must be an even number of digits. - Relative search (F6) Search based on difference between character values. This is useful if you're unsure of the actual character values a ROM uses. - Search again (F3) Searches for the same string again, but does not reset the file position. Font tables ----------- Hexposure associates files with corresponding font table files, with the extension .TBL. If you load the file "GAME.NES", Hexposure will look for "GAME.TBL" in the same directory. If no font table is found, the standard ASCII table will be used. The .TBL file contains character value definitions of the following format: 00=A 01=B 23=th AC= e In addition, you can define certain control bytes: "*" specifies LineBreak "\" Specifies SectionBreak "/" specifies StringBreak For example: *=FD <-- Lines terminated by FD \=FE <-- Sections terminated by FE /=FF <-- Strings terminated by FF If a NewLine value has been specified, you can press enter when editing text to call that character, instead of having to change to hex mode and enter the value manually. Hexposure assumes your .TBL files are of the proper format, so make sure they are. Check the .TBLs contained in the Hexposure .ZIP for some examples. If you're using DOS Edit, be careful when defining spaces ( ). If you press enter at the end of the line, spaces will be destroyed!! Script dumper (F7) ------------------ This lets you dump the data between two hex offsets in the ROM to a file. It's fast too; takes about 3 seconds to dump a 1 MB ROM on my Pentium 75. Hex values which are not defined in the font table are dumped as <$XX>, where XX is the hex value. Line breaks do the same in the script as they do in the game: break to the next line. For example: SnowBro worries <-- Line break after "worries" about you. Section breaks skip an extra line to separate the current text section from the next one. For example: This is getting boring. Time for a section break. <-- Section break Ahh, much better... And finally, a string break (end of string) looks like this: Time to end this string. <-- String break In addition, the string break also skips an extra line down to separate the current string from the next one. Remember to ALWAYS put an marker at the end of your strings. Script inserter (F8) -------------------- Lets you insert the script dumped with the Script dumper back into the ROM. Make sure the modified script is still of a valid format; check the format description above if you're having problems. Note that you can't insert script dumps from games which use DTE... yet. Keys ---- TAB - Toggle between hex/text editing ESC - Bring up menu F1 - Go to offset F2 - Search for text string F3 - Search again F4 - Search for hex string F5 - Save changes F6 - Relative search F7 - Script dumper F8 - Script inserter F9 - Save font table Ctrl-L - File selector Ctrl-Q - Quit Epilogue -------- If you have anything to say at all about this program, good or bad, please tell it to me. The latest version of Hexposure can always be obtained from my webpage, http://home.sol.no/~kenhanse/nes KH'99