The Item List, by ID
Here is the exhaustive list of all usable items in FF1-DoS. There are a total of 43 items, denoted as 0×01 through 0×2b.
0×01 | Potion | Hi-Potion | X-Potion | Ether |
0×05 | Turbo Ether | Dry Ether | Elixir | Megalixir |
0×09 | Phoenix Down | Remedy | Antidote | Gold Needle |
0×0d | Eye Drops | Echo Grass | Emergency Exit | Sleeping Bag |
0×11 | Tent | Cottage | Spider’s Silk | White Fang |
0×15 | Red Fang | Blue Fang | Light Curtain | Red Curtain |
0×19 | White Curtain | Blue Curtain | Lunar Curtain | Herme’s Shoes |
0×1d | Vampire Fang | Cockatrice Claw | Giant’s Tonic | Faerie Tonic |
0×21 | Strength Tonic | Protect Drink | Speed Drink | Golden Apple |
0×25 | Silver Apple | Soma Drop | Power Plus | Stamina Plus |
0×29 | Mind Plus | Speed Plus | Luck Plus |
Item Data
Table location: 0×19f08c — 0×19f33b.
Data structure size: 16 bytes
Example: Potion
00 00 | 0d | 10 | 04 | 01 | 32 00 | 28 00 00 00 | 14 00 00 00 |
Item # | Effect | Target | When Used | Graphic | Power | Purchase cost | Selling cost |
Decoding various bytes of information
Effect (1 byte)
For the potion, this byte is 0d. This byte controls the effect that the item has when used:
- 00- References Sleeping Bag/Tent/Cottage. The Power byte references which one of those three the item acts as.
- 01- Maximum HP increases by 1st Power byte * 10.
- 02- Maximum MP increases by 1st Power byte.
- 03- Strength increases by a random number from 1 to a number specified by the 1st Power Byte.
- 04- Stamina increases by a random number from 1 to a number specified by the 1st Power Byte.
- 05- Intellect increases by a random number from 1 to a number specified by the 1st Power Byte.
- 06- Agility increases by a random number from 1 to a number specified by the 1st Power Byte.
- 07- Luck increases by a random number from 1 to a number specified by the 1st Power Byte.
- 08- Giant Tonic
- 09- Faerie Tonic
- 0a- Strength Tonic
- 0b- Protect Drink
- 0c- Speed Drink
- 0d- HP increase (up to maximum)
- 0e- MP increase (up to maximum)
- 0f- HP/MP maximum. The first Power byte is the target; if 00, it only heals one character, but if 01, it cures all characters.
- 10- Raise character from death (Phoenix Down)
- 11- Cure multiple conditions (Remedy)
- 12- Same effect as Spell ID. The 1st Power byte becomes the Spell ID to reference.
Target (1 byte)
How the spell is targeted in game. It will be one of these five values:
- 01- All enemies
- 02- One enemy
- 04- Caster
- 08- All allies
- 10- One ally
When Used (1 byte)
Determines when the item can be used.
- 01- While traveling only
- 02- In battle only
- 04- Anytime
Graphic (1 byte)
Determines the graphic displayed when the item is used.
Pointer mayhem
Beginning at 0×07e954 and ending at 0×07e9c7, there is a list of 0×1d, or 29 pointers that pertain to spells that are bound to items of the same ID. Spell 01‘s (Cure) pointer is found at 0×07e954, spell 02‘s (Dia) pointer is found at 0×7e958, etc.
If an item’s pointer is c8e90708, this spell cannot be used in the status screen. If the pointer is 08ea0708, it can.
0×07e9d2— Check for Exit spell: 2816: cmp r0, #0×16
0×07e9d6— Check for Teleport spell: 2833: cmp r0, #0×33
Other information that may not be obvious
It is important to note that I have not figured out all the information that there is to know about armor. So there’s an avenue for intrepid hackers to possibly learn something new.
Under ‘Other Information’, there appears to be a typo. You mentioned you haven’t figured out all the info that there is to know about “ARMOR”. This page is after all, items. Also, n00b question while I’m typing.
Is there a way to move all the item data to free space in the ROM, and replace the old data with whatever for additional space from the previous coding in the ROM? Like values and/or aspects of code right before 19F80C?
— Sting_Chameleon · May 4, 07:25 PM · #
Yes, absolutely. You can place your data tables anywhere in the ROM that you wish, and the Mod of Balance does this often. As you said, you just need to take care that you find all the pointer references to the data table that you moved and “re-route” them, so to speak.
— ludmeister · May 8, 09:49 AM · #