Claim set · data/claims/castlevania-line.yaml

Castlevania (USA) (Rev 1), the rules the later games are compared with, read in the ROM

Game: Castlevania.

When an enemy touches Simon and there's room above him, Castlevania turns him to face the enemy, points his arc at a second, shorter table, and puts him in a hurt state that moves him away from the enemy with the walking move routine while it steps that table; the table rises 3, 3, 2, 1, 1, 1, 1, 1, 0, and 1 px, then holds for 7 steps, 14 px in all. castlevania-line/knockback

About: Castlevania Knockback

Value
[
 3,
 3,
 2,
 1,
 1,
 1,
 1,
 1,
 0,
 1,
 0,
 0,
 0,
 0,
 0,
 0,
 0
]
CodeCastlevania (USA) (Rev 1) · 0x1E744-0x1E74B — bank 7 $E734-$E73B, the contact code the Castlevania-Labelled-Disassembly labels BumpIntoEnemy: play the hurt sound, then call $FC97Castlevania (USA) (Rev 1) · 0x1FCA7-0x1FCB1 — bank 7 $FC97-$FCA1, which switches to bank 6 and calls $96C1Castlevania (USA) (Rev 1) · 0x196E1-0x1972C — bank 6 $96D1-$971C: the take-off's ceiling test ($9998), then the arc pointer from $9BA5, rising, state 5; facing $0450 = 1 (left) unless the enemy's X is at or right of Simon's; direction $3C = (facing + 1) XOR 3, the other wayCastlevania (USA) (Rev 1) · 0x19BB5-0x19BC9 — bank 6 $9BA5-$9BB9, the pointer ($9BA8), a $80 start marker, 17 signed steps ($FD = −3, up), and a $81 turn markerCastlevania (USA) (Rev 1) · 0x1937C-0x19387 — bank 6 $936C-$9377, the state table's first six entries; state 5 runs $965BCastlevania (USA) (Rev 1) · 0x1966B-0x196A0 — bank 6 $965B-$9690, state 5: a short count, then each frame $970B (direction away from the facing), the move routine $989A, and the arc routine $9B1EChecked by claude, 2026-10-21 — disassembled each range in the pinned ROM; the Castlevania-Labelled-Disassembly's labels led from BumpIntoEnemy to $96C1, and its listing matches Rev 1's bytes there

Not measured. The jump's table is 20 steps and 36 px (castlevania/jump-table); this one is the arc routine's second table, so the hit is a small hop with the jump's fall back down.

Cited by: Castlevania

In Castlevania a subweapon throw needs hearts; each of the four subweapons the double and triple shots multiply costs 1 heart and a free slot, the fifth, which starts a 15-count timer instead of a projectile, costs 5, and with 0 hearts nothing is thrown. castlevania-line/hearts

About: Castlevania Weapon energy

Value
{
 "projectile": 1,
 "timer": 5
}
CodeCastlevania (USA) (Rev 1) · 0x1FA36-0x1FA71 — bank 7 $FA26-$FA61, ShootSubweapon in the Castlevania-Labelled-Disassembly: no throw with hearts ($71) at 0; weapon index = CurrentWeapon − 8; index 2 sets a timer $015D = 15; the others with a 1 in the table at $FA62 call $DA44Castlevania (USA) (Rev 1) · 0x1DA54-0x1DA6E — bank 7 $DA44-$DA5E: find a free object slot (as many as the multiplier allows), then hearts − 1Castlevania (USA) (Rev 1) · 0x1DA8B-0x1DA9F — bank 7 $DA7B-$DA8F, index 2's entry in the $DA5F jump table: hearts − 5, or no use if that goes negativeCastlevania (USA) (Rev 1) · 0x1E811-0x1E823 — bank 7 $E801-$E813, MultiplierAcquired: the multiplier counts only for weapons $08, $09, $0B, and $0D (indices 0, 1, 3, 5)Checked by claude, 2026-10-21 — disassembled each range in the pinned ROM after following the Castlevania-Labelled-Disassembly's labels (ShootSubweapon, NumberofHearts, CurrentWeapon, MultiplierAcquired)

The code doesn't name the weapons, and the atlas hasn't read what the timer at $015D does. Indices 4, 6, and 7 take other paths.

Cited by: Castlevania, Weapon energy

In Castlevania the routine that picks a dropped bonus gives a whip upgrade only while no other special item is out, and only while Simon holds at least 4 hearts with the first whip or at least 8 with the second; otherwise it drops a small random bonus. Picking one up raises the whip level by 1. castlevania-line/whip-drop

About: Castlevania Whip upgrade

Value
{
 "level1At": 4,
 "level2At": 8
}
CodeCastlevania (USA) (Rev 1) · 0x1EBD3-0x1EBFE — bank 7 $EBC3-$EBEE: hearts ≥ 8 and whip level ($70) < 2, or hearts 4–7 and level < 1, spawn bonus type 3 (SpawnWhipUpgrade); else type 0 or 1 by a random bitCastlevania (USA) (Rev 1) · 0x1E89E-0x1E8B4 — bank 7 $E88E-$E8A4, WhipAcquired, which ends with inc $70Checked by claude, 2026-10-21 — disassembled both ranges in the pinned ROM after the Castlevania-Labelled-Disassembly's labels (SpawnSomething, SpawnWhipUpgrade, WhipAcquired, WhipLength012)

The routine runs when an object yields a random bonus; the atlas hasn't listed which objects call it.

Cited by: Castlevania, Whip upgrade