Register | Login | |||||
Main
| Memberlist
| Active users
| Calendar
| Chat
| Online users Ranks | FAQ | ACS | Stats | Color Chart | Search | Photo album |
| |
0 users currently in ROM Hacking. |
User | Post |
Deleted User Posts: 57/-7750 |
Originally posted by HabsoluteFate RATS, no RAT |
MathOnNapkins Posts: 62/1106 |
I've been thinking about what protection scheme I could come up with for Zelda 3. In particular, for controlling the allocation and deallocation of the data in expanded regions, but I suppose it could also be used to keep other things safe on the user end (like asm hacks and data modifications)
Does anyone have any suggestions on what sort of scheme to use? One such way is to provide a buffer that masks out the usage of certain portions of the rom, then I guess I could save it as a companion file with the edited rom. Even then you could compress it down by making each bit represent a byte of the game image. edit: I am asking both from the standpoint of what to implement while programming the editor, and ways to implement user end protection. |
BMF54123 Posts: 99/876 |
Don't forget, you also need to subtract 1 from the size of the data.
For example, to protect 32,768 ($8000) bytes: 53 54 41 52 FF 7F 00 80 53 54 41 52: STAR FF 7F: 8000 - 1 = 7FFF (size) 00 80: FFFF - 7FFF = 8000 (inverse of size) |
Smallhacker Posts: 94/832 |
Here's how to use RATS tags:
8 bytes before the code/data/whatever to protect, add the ASCII text "STAR" (RATS backwards). At the two following bytes, enter the size of the protected block (not counting the 8 bytes of the RATS tag). (Remember the ABCD -> CDAB byte order.) At the two last bytes, enter $FFFF minus the size in bytes (still not counting the RATS tag). This too shall be byte swapped. Summary: STAR xx yy {data} STAR = ASCII text (4 bytes) xx = Size of data, not counting RATS tag. (2 bytes, byte swapped) yy = $FFFF - size of data, not counting RATS tag. (2 bytes, byte swapped) {data} = Guess. |
HabsoluteFate Posts: 14/45 |
What is that about some tag to let LM know that you have created your own custom code/data so that LM knows about it....wasn't there a RAT tag or something similar in name?
I would like to make my code changes compatible with LM as much as possible and since i'm working on the next release now that version 1.0 is out I would like to have as much support to have it work in tendem with Lunar Magic... |