News: 11 March 2016 - Forum Rules

Author Topic: Zelda 1 Redux / The Legend of Zelda Redux  (Read 347753 times)

ShadowOne333

  • Hero Member
  • *****
  • Posts: 1799
    • View Profile
Re: Zelda 1 Redux / The Legend of Zelda Redux
« Reply #780 on: November 25, 2021, 11:23:42 am »
Hey, I just found this hack and am playing it on MiSTer FPGA.  If I try to play the MMC5 version, everything looks fine until I save.  Once the game starts over, a lot of the images start flashing back and forth between normal and some other image.  The MMC1 doesn't do this.  I assume the problem is caused by the FPGA but I thought I would mention it in case anyone wanted to look into it.  I honestly don't know what the differences are suppose to be between the two.

Hard to say what the issue is. People have tested the MMC5 version in real hardware and it works fine, same for loading the MMC5 one in FCEUX, Mesen and Nestopia. I cannot do much at all in this instance without proper debugging.



Outside of that...
One of the last features remaining to finish up everything I wanted to do for Zelda 1 has been accomplished this week.

The amount of hearts you have when you save manually is now saved into SRAM, and they will be kept on game load!
Not only that, but it now behaves like in recent Zeldas. If you have 3 or less hearts when you make a save, the game will default to starting you with 3 hearts. If you have more than 3, the game will save that amount and load with that amount!

I want to give huge thanks to minucce for the last two big features of the project, Diagonal Sword swing and the Copy/Erase save file system. I cannot understate just how much work and time he put into those features to make them a reality.
As for the last Save Hearts feature, that one done by me with some guidance and help by minucce, which explained in detail some suspicions and helped me understand some opcodes better.

I think with this, Zelda 1 (and Zelda 2) Redux can now be called a complete and finished project!
As always, check the GitHub for the latest patches. Test out the new features and play around with the optional ones to your liking!

If it all goes well, I'll update both the hack pages for Zelda 1 and Zelda 2 in the upcoming days :)

ifightdragons

  • Full Member
  • ***
  • Posts: 195
    • View Profile
Re: Zelda 1 Redux / The Legend of Zelda Redux
« Reply #781 on: November 25, 2021, 04:06:31 pm »
Fantastic to see these amazing projects come full circle.

You've done a remarkable job with all your Redux efforts, truly.

InAnotherCastle

  • Jr. Member
  • **
  • Posts: 19
    • View Profile
Re: Zelda 1 Redux / The Legend of Zelda Redux
« Reply #782 on: November 25, 2021, 04:10:50 pm »
I will be testing this soonish with the goal of making repro carts. Great work and excited to see the full scope realized! Congrats to all

Greyfield

  • Jr. Member
  • **
  • Posts: 21
    • View Profile
Re: Zelda 1 Redux / The Legend of Zelda Redux
« Reply #783 on: December 03, 2021, 01:33:36 pm »
Hey, I just found this hack and am playing it on MiSTer FPGA.  If I try to play the MMC5 version, everything looks fine until I save.  Once the game starts over, a lot of the images start flashing back and forth between normal and some other image.  The MMC1 doesn't do this.  I assume the problem is caused by the FPGA but I thought I would mention it in case anyone wanted to look into it.  I honestly don't know what the differences are suppose to be between the two.

Have you tried using a NES2.0 headered ROM?  I believe there are a handful of NES games that require it for the MisterFPGA.  The original Zelda isn't one of them, but when changing mappers via a hack, it may help.

kaine23

  • Jr. Member
  • **
  • Posts: 57
    • View Profile
Re: Zelda 1 Redux / The Legend of Zelda Redux
« Reply #784 on: December 14, 2021, 12:13:34 pm »
Cant wait to try these and review them

PurePixels

  • Newbie
  • *
  • Posts: 1
    • View Profile
Re: Zelda 1 Redux / The Legend of Zelda Redux
« Reply #785 on: December 14, 2021, 12:51:26 pm »
Congrats on the completion announcement  :) Have been quietly following for some time.

KingMike

  • Forum Moderator
  • Hero Member
  • *****
  • Posts: 7412
  • *sigh* A changed avatar. Big deal.
    • View Profile
Re: Zelda 1 Redux / The Legend of Zelda Redux
« Reply #786 on: December 14, 2021, 01:28:39 pm »
Have you tried using a NES2.0 headered ROM?  I believe there are a handful of NES games that require it for the MisterFPGA.  The original Zelda isn't one of them, but when changing mappers via a hack, it may help.
Being that Zelda was a FDS port, it had the unusual distinction of loading and running code from PRG-RAM (likely for compatibility with its FDS origin) which I can see being an issue with more advanced mappers with optional PRG-RAM locking functionality.
"My watch says 30 chickens" Google, 2018

InAnotherCastle

  • Jr. Member
  • **
  • Posts: 19
    • View Profile
Re: Zelda 1 Redux / The Legend of Zelda Redux
« Reply #787 on: December 18, 2021, 02:18:16 pm »
Thanks again for the new version and functionality :-)

If you say they're final, I'd have to agree.

But in case you're interested, here's a small bug with saving:

1. Start saved game from a slot
2. Make some progress
3. Save with button combination into another slot (doesn't matter if it's existing or empty created then with new name)
4. Newly chosen slot is blanked, game resumes from blanked slot
5. Restarting game and loading slot chosen at step #1 loads game as saved in step #3.

Tested MMC5 and MMC1 versions of Redux 3.0 on N8 Pro.

ShadowOne333

  • Hero Member
  • *****
  • Posts: 1799
    • View Profile
Re: Zelda 1 Redux / The Legend of Zelda Redux
« Reply #788 on: December 18, 2021, 03:04:46 pm »
Thanks again for the new version and functionality :-)

If you say they're final, I'd have to agree.

But in case you're interested, here's a small bug with saving:

1. Start saved game from a slot
2. Make some progress
3. Save with button combination into another slot (doesn't matter if it's existing or empty created then with new name)
4. Newly chosen slot is blanked, game resumes from blanked slot
5. Restarting game and loading slot chosen at step #1 loads game as saved in step #3.

Tested MMC5 and MMC1 versions of Redux 3.0 on N8 Pro.

That seems little bit confusing.
Could you please elaborate in a more detailed manner?
Like what steps you do from booting the game, then what slot you start, what slot you save, what slot you start anew, etc.
I got kinda lost on the 3rd step, where you say you save into another slot? From there I got lost and couldn't follow the report.

Also, another user sent me a PM with what seems to be another bug:
  • When you get the very first arrow drop that you pick up, the counter doesn't add the arrows, you only obtain the arrow item, but 0 arrows. On the second arrow pick up, the counter does go up to 5 properly.
I have yet to verify if this is the intended way or not, I'll check the Arrow code and see what's going on.

InAnotherCastle

  • Jr. Member
  • **
  • Posts: 19
    • View Profile
Re: Zelda 1 Redux / The Legend of Zelda Redux
« Reply #789 on: December 18, 2021, 03:38:48 pm »
Hey! What I mean is that after creating, saving, loading in save slot 1, if I then save into save slot 2 via the button combo, the save ends up in slot 1

December 18, 2021, 03:42:05 pm - (Auto Merged - Double Posts are not allowed before 7 days.)
Hope that explanation makes more sense. I don't think it has anything to do with copying functionality, infact it was just something I found after testing that 👌

ShadowOne333

  • Hero Member
  • *****
  • Posts: 1799
    • View Profile
Re: Zelda 1 Redux / The Legend of Zelda Redux
« Reply #790 on: December 18, 2021, 03:43:46 pm »
Hey! What I mean is that after creating, saving, loading in save slot 1, if I then save into save slot 2 via the button combo, the save ends up in slot 1

December 18, 2021, 03:42:05 pm - (Auto Merged - Double Posts are not allowed before 7 days.)
Hope that explanation makes more sense. I don't think it has anything to do with copying functionality, infact it was just something I found after testing that 👌

I tried that, but I couldn't replicate it.
If it's not too much to ask, and if you have time, would you mind making either a short video or a gif that depicts the issue, please?

InAnotherCastle

  • Jr. Member
  • **
  • Posts: 19
    • View Profile
Re: Zelda 1 Redux / The Legend of Zelda Redux
« Reply #791 on: December 18, 2021, 04:00:42 pm »
I'll send you a video link in private

ShadowOne333

  • Hero Member
  • *****
  • Posts: 1799
    • View Profile
Re: Zelda 1 Redux / The Legend of Zelda Redux
« Reply #792 on: December 19, 2021, 03:52:54 pm »
I'll send you a video link in private

I checked the video (thanks for taking the time to do so!).
Sorry if this might cause some frustration, but unfortunately, I still can't seem to notice what the issue is :-[
Maybe I'm way too oblivious, or my brain is not working properly today, but I can't see what's wrong yet, even after replaying the video several times.

As a side note, I do notice you're using a flashcart (N8 Pro).
Have you tried perhaps replicating it in FCEUX?
It could probably be something with the flashcart, so trying it in an emulator could be worth the shot.

InAnotherCastle

  • Jr. Member
  • **
  • Posts: 19
    • View Profile
Re: Zelda 1 Redux / The Legend of Zelda Redux
« Reply #793 on: December 19, 2021, 06:50:07 pm »
Basically I was expecting game to save in the newly chosen slot, not the one loaded from. Perhaps this isn't an issue worth pursuing considering the new copy system. But I will try to reproduce more clearly tomorrow.

ShadowOne333

  • Hero Member
  • *****
  • Posts: 1799
    • View Profile
Re: Zelda 1 Redux / The Legend of Zelda Redux
« Reply #794 on: December 21, 2021, 07:23:47 pm »
I finally got around to finishing a playthrough of Zelda 1 Redux, for both 1st and 2nd Quest.
What refreshing experience this was!

I finished the 1st Quest to 100% without any outside guidance (as I haven't finished Zelda 1 that many times originally), but it was nice to finally be able to do it without obnoxious and vague hints, and without cryptic bs.
2nd Quest still relies on cryptic shit altogether, so I guess it's normal for that one lol

I only found 3 issues, and they seem pretty minor:
  • The first arrow drop doesn't seem to add up to the arrow counter. Only when grabbing the second one is when the counter goes up to 5 (as it should in the first place). I took a peek at the "arrows.asm" code from the source, and I think the culprit could be this opcode or something around it:
    https://github.com/ShadowOne333/The-Legend-of-Zelda-Redux/blob/master/MMC1/code/gameplay/arrows.asm#L93
    I am still not sure 100%, but I here's my assumption:
    I think the problem is that the game hasn't triggered that it got the arrow item, and therefore doesn't make the addition. It only does it the second time, since during the first drop it already registered that the arrow item has been obtained, and now it makes the proper addition. In other words, I think the code that adds the arrows to the counter runs BEFORE the one that adds the arrow as an item, hence why this happens.
    I made a solution for this, but it might be FAR from being the proper solution for this. I am simply forcing the value of the item to be $01 within the same routine, and then if it's 01 or above, continue as normal, this way we properly get the 05 arrows on the first pickup. Still though, it'd be better if a more elegant solution is found:
Code: (Hacky-Dumb solution to this bug) [Select]
GiveArrowDrop:
lda.b $AC,x // Check if the item is an arrow before it deletes.
cmp.b #$55
bne BackDeleting
lda.w $0659
beq GiveArrows
bcs NotZero
GiveArrows:
lda.b #$01
sta.w $0659
NotZero:
txa
pha
lda.w $0677 // Get arrow count
clc
adc.b #$05 // Give 5 arrows
ldx.w $0659 // Get arrow type (1,2)
cmp.w ArrowDropMax,x
bcc ArrowDropStore
lda ArrowDropMax,x // Limit arrows
ArrowDropStore:
sta.w $0677
pla
tax
BackDeleting:
lda.b #$FF
sta.b $AC,x
sta.b $84,x
rts
ArrowDropMax:
db $00,$1E,$3C // 0,30,60
    • Someone mentioned that, for some reason, during 2nd Quest the game reverted back to giving 08 bombs as the maximum amount by default, while the upgrades still gave 5 extra. I tried starting the game with the "ZELDA" name to try this out, but it seems like doing this doesn't work. The only way one can experience this bug is by finishing 1st Quest and pressing "Start" to overwrite the 1st Quest save with a fresh 2nd Quest. Although, this one seems to be an easy fix. I didn't look into other writes to $067C, and it seems there's a routine in bank 2 that does that and it runs when finishing the game:
    Code: [Select]
    02:AF83: A9 08     LDA #$08
    >02:AF85: 8D 7C 06  STA $067C = #$00
    Modifying the LDA #$08 there to LDA #$0A seems to write the proper amount at the start of 2nd Quest when starting over from the 1st Quest. So that one should be covered :)
    • Modify the bomb drops to give you 5 bombs instead of 4, it's annoying to have shortage of them later in the game (more so for 2nd Quest). I might have found the place where this is set, but I am not certain if it modifies anything else, or if it's the proper place to modify the game giving 05 bombs instead of 04 for enemy drops. The original code loads the value from RAM $0A, which seems to be set at some point to #$04, though I couldn't backtrace where exactly it changes it to $04. With this change, I'm forcing the value to load to be #$05 instead, (still unsure if other stuff in the game other than bomb drops gets modified by this).
    Code: (Possible bomb amount from enemy drops modification) [Select]
    //****************************************
    // Increase obtained bombs from drops to 5
    //****************************************
    bank 1; org $6C41 // 0x06C61
    lda.b #$05 // Originally LDA $0A, loads RAM $0A

    As always, I'm open to recommendations or suggestions to points 1 or 3, as point 2 I have fixed already.
    After these two are done, I'll push the update for 3.0.1
    « Last Edit: December 21, 2021, 11:29:30 pm by ShadowOne333 »

    ifightdragons

    • Full Member
    • ***
    • Posts: 195
      • View Profile
    Re: Zelda 1 Redux / The Legend of Zelda Redux
    « Reply #795 on: December 22, 2021, 02:19:30 pm »
    Shadow:

    Do you think this could be a worthwhile addition to the ALttP Deluxe version?:
    https://www.romhacking.net/hacks/6437/

    ShadowOne333

    • Hero Member
    • *****
    • Posts: 1799
      • View Profile
    Re: Zelda 1 Redux / The Legend of Zelda Redux
    « Reply #796 on: December 22, 2021, 02:54:28 pm »
    Shadow:

    Do you think this could be a worthwhile addition to the ALttP Deluxe version?:
    https://www.romhacking.net/hacks/6437/

    Have you tried patching it over an already patched DX/Redux ROM?
    It might work

    ifightdragons

    • Full Member
    • ***
    • Posts: 195
      • View Profile
    Re: Zelda 1 Redux / The Legend of Zelda Redux
    « Reply #797 on: December 23, 2021, 03:38:56 am »
    Have you tried patching it over an already patched DX/Redux ROM?
    It might work

    Yup, even tried the included "Redux" patch with no dice.

    ToryBlaker

    • Newbie
    • *
    • Posts: 1
      • View Profile
    Re: Zelda 1 Redux / The Legend of Zelda Redux
    « Reply #798 on: December 23, 2021, 04:09:23 am »
    I saw someone talk about cracked walls within the dungeons.
    I loved them too, super awesome.

    ShadowOne333

    • Hero Member
    • *****
    • Posts: 1799
      • View Profile
    Re: Zelda 1 Redux / The Legend of Zelda Redux
    « Reply #799 on: December 23, 2021, 01:24:06 pm »
    Yup, even tried the included "Redux" patch with no dice.

    That might be because most of the "dumps" available for ALttP recently are all headerless, and the patch PowerPanda provided made is for the Header version of it.

    I went ahead and made a Headerless version of the Kakariko shortcut hack, try it out (inside Optional, select the one that says Headerless):
    https://www.dropbox.com/s/87pe1d58y8nl7ra/A%20Link%20to%20the%20Past%20Redux.zip?dl=0

    Let me know if it worked.