		       FF3h: SRAM editor
		        Coded by Lord J
		Special contribution of Jumper

                         Version 4b

Lord J's
                     _/_/_/  _/_/_/  _/_/_/_/_/_/_/
                    _/      _/        _/  _/  _/
                   _/_/    _/_/      _/  _/  _/
                  _/      _/        _/  _/  _/
                 _/      _/      _/_/_/_/_/_/_/   SRAM hacking kit

Project started january 1st 1998
Project constist of hacking the .srm file generated by the emulator using
Final Fantasy 3. In other words, in configure your saved games!



What it does:
-divide the SRAM file into 3 separate game slots for easy to use UI
-calculate the check sum after hacking
-change, max out, copy and saves caracters data
-edit gold, steps, time, swrd tech, lores, dances, max-out rages, item list

What it will hack:
-everything that concern a player's stats
-everything that relates to numeric values: gold, % of learning spell
-each caracter's apearance, mug and name
-lists: items, magic, rare, rage, lore

Bugs:
-beta tester Jumper did report major bugs, it seems that this utility
 is know 99% free of bugs, but no ones perfect...

Not decoded:
-five upper bits of msB of gotten espers (since 27 espers gettable)
-seven bits of status part b
-illegal rare items, 4 bits of msB
-bit#3, raster edition
-probably quanty of item list is 255, not 256...
 and 256th item type as another function
 (empty x99? not likely)
-two msbits of airship/shop selection, aka leo & kefka, dunno...
 (presence of players on airship not added, FF3 does not map players
  other than those "getable")
-garbage bits: gold, steps, time --> wasted bits, probably...

What I don't understand yet:
-Why does esnes creates a 32k bytes file, snes9x gave me a 8k bytes file...


Version 1: programmer's edition

Version 2: beta version: player editor
			temporary menus finished
			new commands like sprite editor, status bits, spare bytes,

revision 2b: 	decoding rest of data in slot: magic,steps,gold,raster org.,
		save pnt,lore,rage,mtek,sw tec,blitz,rare,esper,dance,quest



Version 3: final version:
			71% of gameslot decoded, all features implemented
			some data decoded not usefull (windows colors, battle speed...)
			rest of data not decoded may include airship location, xy location on
			map, deeds, chest states, ect.
			bug: generates error at offset 0x13d6 (+1) when loading -> found it! sramdata's
			parameter 'xtradata' messed up slot no 2, why ????

End of project: May 14 1998



Redirection of project: November 22 1998, Jumper is a new maintainer of the code

The final plain DOS version probably will be #4. Jumper is porting it to DJGPP.

Version 4: resurection
revision 4a:
	    FF3H goes beta again due to compiler/major code changes
	    Code is cleaned, project is ported to DJGPP.
	    No major bugs have been detected and no new menus up yet.

revision 4b: revamped this header
	     removed 'modified data' warning (kinda annoying)
             added new menus not implemented in version 4a
			-forgotten those espers in 4a
			-nb saves editable
			-overworld warp, airship
             credit goes to CzarDragon for save, airship & warp offsets



-------------------------------------------
-------------------------------------------

Disclamer:

"Final Fantasy 3"(R) and all occurence of related context
to its sotfware are registered trademarks of Square Co., Ltd.
The programmers of this utility are not affiliated with Square Co. and
are not responsible for any loss or damage of material/sofware of the user.

If you do not agree with this disclaimer, do not use this utility (ff3h)


-------------------------------------------
-------------------------------------------


1. How do you use ff3h?

a)

you specifie the SRAM file you want to hack on the command prompt like this:

FF3H ff3.srm (or any other name your game's SRAM file has)



b)

To browse throug the menus, type the appropriate letter/number showed in brackets.
Note that all command are CASE SENSITIVE


c)

Whence finished hacking the SRAM file, the program will leave your original file
intact, and save the hacked one with the extention HAK.

Ex. You hacked ff3.srm, the hacked file will be named ff3.hak

This means that if you want to see the effects in the game that you have to
copy the .HAK file to .SRM or rename it properly.




2. The menus

a) Main menu
	choice [1] : change the number of the slot you want to hack
	choice [2] : access the sub menu 1, to hack the 16 players
	choice [3] : access the sub menu 2, to hack various things like:
		     items, lore, rages, ect...
	choice [4] : access the sub menu 3, to hack or view raw bytes
	choice [s] : saves the file and quit the utility
	choice [q] : quit utility

b) Sub menu 1

	First shows a brief status of your 16 players, press a key to continue

	
	choice [+] or [-] : browse throug the 16 caracters of your game
	
	* note that caracter number 17 and 18 are fictional, they are used as 
	 BUFFERS, to make you own caracter and/or swap 2 caracters

	for the specified caracter...

	choice [a] : change actor (please read FAQ to understand what is an "actor")
	choice [b] : change sprite
	choice [c] : change the name
	choice [R] : change/remove from raster(s)
	choice [d] : change level
	choice [e] : change HP
	choice [f] : change experience points
	choice [d] : change level
	choice [g] : change MP
	choice [h] / [i] : change status (poison, death, ect.)
	choice [j] [k] [l] [m] : change battle commands
	choice [n] [o] [p] [q] : change stamina, strenght...
	choice [z] : equip esper
	choice [y] : change learning percentage of magic spells
	choice [s] [t] [u] [v] [w] [x]: change equipement
	choice [q] : return to main menu	
	choice [space bar] : max out HP, MP and experience
	choice [C] : copy full spec of caracter to buffer
	choice [P] : paste content of buffer, replacing current caracter



b) Sub menu 2

	choice [b] : number of saves
	choice [c] : change gold pieces
	choice [d] : change time played
	choice [e] : change steps
	choice [f] : change item and rare item quantity/presence
	choice [g] : change learned blitz
	choice [h] : change learned lores
	choice [i] : get all rages!
	choice [j] : change learned sword techs
	choice [k] : change learned dances
	choice [l] : change esper list
	choice [m] : change overworld location
	choice [n] : change location of airship
	choice [o] : toggle engines state of airship
	choice [q] : quit to main menu

c) Sub menu 3

	choice [a] : edit raw byte from file, aka debbuger,
		     if your an elite of ff3's SRAM, go there...
		     note: checksum is corrected with each modification
	choice [b] : view last 512 bytes of file (not part of slots)
		     editor not up yet



That's it folks! You should do okay with this util...

Comments should be send to Lord J at lord_j@hotmail.com

Happy hacking!! (Yes!! now Kefka and Leo are playable!!!!)
