Sword beam
A projectile that a melee swing also fires, only while the character's health is full or nearly so.
On this page
A sword beam turns a melee swing into a ranged attack while the character’s health stays high, which rewards not getting hit. The Legend of Zelda fires it with up to half a heart missing1. Zelda II requires an exactly full meter2. A Link to the Past requires less than half a heart missing and the Master Sword or better3.
- Near fullThe Legend of Zelda (1986). Any sword, with up to half a heart missing.1The Legend of Zelda: A Link to the Past (1991). The Master Sword or better, with less than half a heart missing.3
- Exactly fullZelda II: The Adventure of Link (1987). Only with the life meter exactly full.2
Games
| Game | Year | How | Note |
|---|---|---|---|
| The Legend of Zelda | 1986 | Near full | any sword, with up to half a heart missing |
| The Legend of Zelda: A Link to the Past | 1991 | Near full | the Master Sword or better, with less than half a heart missing |
| Zelda II: The Adventure of Link | 1987 | Exactly full | only with the life meter exactly full |
Every claim about this mechanic, by game (3)
References
- ^ ab
MakeSwordShotfires a sword beam only when the low nibble ofHeartValues(full hearts) equals its high nibble, as it does when Link's hearts are full, and the partial heart is at least$80of$FF, so with up to half a heart missing; unlessForceSwordShot($0529) is set.Codealdonunez/zelda1-disassembly · “Legend of Zelda, The (USA) (Rev 1)”revisedHow we know
4629 LDA ForceSwordShot 4630 BNE @SetUp ⋮ 4632 ; If full hearts <> (heart containers - 1), return. 4633 LDA HeartValues 4634 PHA 4635 AND #$0F 4636 STA $00 4637 PLA 4638 LSR 4639 LSR 4640 LSR 4641 LSR ⋮
src/Z_07.asm lines 4629–4648 at 50a1c86 · upstream ↗ 6776@CompleteHeart: 6777 LDA #$00 ; Set HeartPartial to zero for the next heart. 6778 STA HeartPartial 6779 JSR CompareHeartsToContainers 6780 BNE @IncHearts ; If hearts <> heart containers, go increase hearts. ⋮ 6784 DEC HeartPartial ⋮ 6787 STA World_IsFillingHearts ⋮ 6793@IncHearts: 6794 INC HeartValues
src/Z_05.asm lines 6776–6794 at 50a1c86 · upstream ↗ In the cartridge (“Legend of Zelda, The (USA) (Rev 1)”): bank 7 MakeSwordShot in Rev 1, from the slot check to the half-heart test. We don't reproduce the bytes.
Checked against the evidence by its author, an AI model, 2026-10-25.
Revised after a check by a second AI model, 2026-10-21.
Checked by a second AI model, 2026-10-25.
- ^ abZelda II's sword beam fires only when the life meter is exactly full, containers × 32 − 1; The Legend of Zelda fired it with up to half a heart missing.CodeFiendsOfTheElements/z2disassembly · aldonunez/zelda1-disassembly · “Legend of Zelda, The (USA) (Rev 1)”
How we know
3825 LDA $0784 ; 0x185e $984E AD 84 07 ; Current number of Heart Containers ⋮ 3833 CMP $0774 ; 0x1869 $9859 CD 74 07 ; Current Life left in meter 3834 BNE L9878 ; 0x186c $985C D0 1A ; if Life not Full, goto $1878
src/prg0.asm lines 3824–3834 at c4c3a4c · upstream ↗ 4632 ; If full hearts <> (heart containers - 1), return. ⋮ 4645 ; If partial heart is less than half full, return. 4646 LDA HeartPartial 4647 CMP #$80 4648 BCC L1F854_Exit
src/Z_07.asm lines 4632–4648 at 50a1c86 · upstream ↗ In the cartridge (“Legend of Zelda, The (USA) (Rev 1)”): bank 7 MakeSwordShot in Rev 1, from the slot check to the half-heart test. We don't reproduce the bytes.
Checked against the evidence by its author, an AI model, 2026-10-21.
Checked by a second AI model, 2026-10-21.
- ^ abA Link to the Past fires the sword beam only with the Master Sword or better and less than half a heart missing; The Legend of Zelda fired it with up to half a heart missing and any sword.Codespannerisms/usdasm · aldonunez/zelda1-disassembly · “Legend of Zelda, The (USA) (Rev 1)”
How we know
5895|079C70| LDA.l $7EF36C 5896|079C74| SEC 5897|079C75| SBC.b #$04 5898|079C77| CMP.l $7EF36D 5899|079C7B| BCS .no_make_beam ⋮ 5906|079C86| LDA.l $7EF359 5907|079C8A| CMP.b #$02 5908|079C8C| BCC .no_make_beam
bank_07.asm lines 5895–5908 at bcdd96e · upstream ↗ 4632 ; If full hearts <> (heart containers - 1), return. ⋮ 4645 ; If partial heart is less than half full, return. 4646 LDA HeartPartial 4647 CMP #$80 4648 BCC L1F854_Exit
src/Z_07.asm lines 4632–4648 at 50a1c86 · upstream ↗ In the cartridge (“Legend of Zelda, The (USA) (Rev 1)”): bank 7 MakeSwordShot in Rev 1. We don't reproduce the bytes.
Checked against the evidence by its author, an AI model, 2026-10-21.
Checked by a second AI model, 2026-10-21.
Sources
Code
- Núñez, Aldo. 2021. “zelda1-disassembly: A complete disassembly of The Legend of Zelda.” Commit 50a1c86. aldonunez/zelda1-disassembly @ 50a1c86 · licence, all uses
- n.d. “Legend of Zelda, The (USA) (Rev 1).” · licence, all uses
- Trax and Entroper. 2023. “z2disassembly: Disassembly of Zelda II: The Adventure of Link for NES.” Commit c4c3a4c. FiendsOfTheElements/z2disassembly @ c4c3a4c · licence, all uses
- (spannerisms), kan. 2026. “usdasm: A Link to the Past US Disassembly.” Commit bcdd96e. spannerisms/usdasm @ bcdd96e · licence, all uses