Points of Required Attention™
Friendly reminder: Please don't respond to spammers! Their posts inevitably get memory-holed when staff get around to, leaving behind an inexplicable tableau of you shouting at nothing and (if they otherwise would have been alone in a thread) dangling posts and wrong postcounts.
Views: 50,034,494
Main | FAQ | Uploader | IRC chat | Radio | Memberlist | Active users | Latest posts | Calendar | Stats | Online users | Search 01-24-19 12:19 AM
Guest: Register | Login

0 users currently in ROM Hacking | 1 guest | 2 bots

Main - ROM Hacking - Zelda - The Legend of Link (v12-23-18) Released New thread | New reply

Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52

infidelity
Posted on 02-28-18 12:15 AM (rev. 2 of 02-28-18 12:03 PM) Link | Quote | ID: 166245


Fuzz Ball
Level: 62

Posts: 945/951
EXP: 1914822
Next: 69864

Since: 05-24-07

Last post: 3 days
Last view: 15 days
ExRAM is not battery backed. I use ExRAM for various functions.

The way I'm able to load the different roms, is by having code loaded into ExRAM that sets up the various banks for whichever game, so that when I'm in $5C00-$5FFF, I can swap out all of the NES's RAM, then I jump to the reset vector which then kicks on the selected rom.

Once within whichever game, I use the ExRAM for whatever I need it to. It's a main function for Super Mario Bros. 2 JPN, because I had to restore the missing PRG-RAM the game uses originally in the famicom.

The ExRAM also includes registers near the end of it, to determine if certain actions were performed by the user.

As for the header, yeah it's a mess. Both my mmc5 games only use 32kb sram. I use CHR-ROM because I swap out swaths of pages to perform animation.

Both All-Stars, & Legend of Link, use 1024kb for CHR-ROM. I'm dependant on mmc5's $5130 function, which allows me to determine which section through the entire CHR-ROM to load the graphics from.

Dracula X
Posted on 03-31-18 06:18 AM (rev. 2 of 03-31-18 05:09 PM) Link | Quote | ID: 166293


Red Paragoomba
Level: 16

Posts: 60/61
EXP: 20095
Next: 161

Since: 03-11-14
From: Dracula's Castle

Last post: 298 days
Last view: 81 days
Try this code to see if it will fix most of the problem:


ASL
PHA
ORA #$80
STA $5114
PLA
ORA #$80
STA $5115
ORA #$01
PHP ;replace PHA with PHP here.
STA $5114
PLP ;replace PLA with PLP here.
STA $5115
LDA #$80
STA $A001
RTS

NetSplit
Posted on 03-31-18 11:00 AM Link | Quote | ID: 166294


Level: 30

Posts: 177/178
EXP: 156623
Next: 9246

Since: 02-26-07

Last post: 298 days
Last view: 223 days
When you're doing a code dump on the forums, can you explain where in the ROM you intend the code to go and how the code is different from what you're replacing? Your code has no comments and little context, so even for technical people like myself, it's not clear what its purpose is supposed to be or if it's even at all correct.

Dracula X
Posted on 03-31-18 03:44 PM (rev. 4 of 03-31-18 05:11 PM) Link | Quote | ID: 166295


Red Paragoomba
Level: 16

Posts: 61/61
EXP: 20095
Next: 161

Since: 03-11-14
From: Dracula's Castle

Last post: 298 days
Last view: 81 days
This is a bankswitch bugfix. The code fixes some of the problems like if something happened in the original game but not the mapper converter hack that's because something was wrong with the original code. This code should fix some of the problems.

This code is for this ROM hack.

NetSplit
Posted on 04-01-18 12:21 AM (rev. 2 of 04-01-18 10:56 AM) Link | Quote | ID: 166297


Level: 30

Posts: 178/178
EXP: 156623
Next: 9246

Since: 02-26-07

Last post: 298 days
Last view: 223 days
Your update helped enough that I was able to look into this now, but I should probably be more specific about what I was looking for. In particular, things you should probably include when posting a block of code are what game it's for (we're talking about both SMB and Zelda here. Is it both?), what it is (bankswitching routine), where it's located ($FFAC in several banks for Zelda, or give the actual file address if relevant), what bug you're fixing, what's wrong with the original code, and what your fix does to solve that. I haven't been able to figure out the answers to those last 3 points yet.

This code looks pretty crazy to me in general, so I decided to look into it. First, I don't know what you think your change fixes, but it should have no effect. STA doesn't change processor flags, so there's no reason to PHP before and PLP after. Second, the pushes originally present in this function are all totally unnecessary. One can have a fully equivalent function without them:

ASL
; PHA
ORA #$80
STA $5114
; PLA
; ORA #$80
STA $5115
ORA #$01
; PHA
STA $5114
; PLA
STA $5115
LDA #$80
STA $A001
RTS


The register writes also seemed a little strange to me, so I looked up the MMC5 documentation. Looking at Legend of Link, this game runs in PRG mode 1 ($5100 == 1), which has two 16 KB banks. These are configured through registers $5115 (PRG bank 1) and $5117 (PRG bank 3). In mode 1, register $5114 is completely ignored, so there's no reason to be writing it in this function. These registers also only take one write, but this function writes to each twice, so the effect of the first write is lost. Finally, in mode 1, the lowest bit of the write is ignored, so there's no reason to be OR'ing by 1. That means this is a totally equivalent function:

ASL
ORA #$80
STA $5115
LDA #$80
STA $A001
RTS


Further still, I can't find any reference to a register $A001 in the documentation. I have no clue what this is intended to do, and removing the write to it doesn't seem to cause any noticeable problems in the emulators I've tried. This function should probably just be:

ASL
ORA #$80
STA $5115
RTS


All-Stars is probably similar, but could be more complex because the different games it has to run may have different requirements.


Edit: Assuming the value being passed in is always a constant, that constant could be changed to already be shifted left by 1 and OR'ed by #$80. Then the JSR to this function could be replaced with just the STA $5115. No need to call a bankswitch function at all.

hossbags2
Posted on 12-19-18 12:57 AM Link | Quote | ID: 166787


Micro-Goomba
Level: 7

Posts: 10/10
EXP: 1262
Next: 186

Since: 09-12-14

Last post: 35 days
Last view: 597 days
I noticed if you go to your inventory screen and accidentally choose a blank item and hit enter to go back to the game, the game crashes.

erpster2
Posted on 12-21-18 05:30 PM (rev. 5 of 12-27-18 05:51 AM) Link | Quote | ID: 166792


Goomba
Level: 12

Posts: 18/22
EXP: 6020
Next: 1901

Since: 09-29-09

Last post: 5 days
Last view: 5 days
a different data corrupting bug was reported on this review of Zelda - Legend of Link on the RH site in late November 2018:
http://www.romhacking.net/reviews/3859/#review

by the way, the game seems to work okay on Mesen emulator as I ran it myself on a Windows 10 computer.


Posted by hossbags2
I noticed if you go to your inventory screen and accidentally choose a blank item and hit enter to go back to the game, the game crashes.


yup, I was able to easily reproduce this problem on the NES emulators (FCEUX, Nestopia, Nintendulator & Mesen)

edit 12/26: it would be nice in a future release that the selection "cursor" on the inventory screen would "skip" empty or blank spaces like in the original unmodified Zelda 1 game.

infidelity
Posted on 12-28-18 12:57 PM (rev. 2 of 12-28-18 10:57 PM) Link | Quote | ID: 166808


Fuzz Ball
Level: 62

Posts: 948/951
EXP: 1914822
Next: 69864

Since: 05-24-07

Last post: 3 days
Last view: 15 days
I looked up that inventory crash, (good find, people) turns out I missed a JMP that needed to be changed, after I shifted some code to free up additional rom space. The problem is, is that I need to sift through my rom versions to figure out exactly where that JMP originally went to.

I'm barely on his site due to working 60 hours every week, my free time is slim to none so I haven't been able to do any sort of projects or upkeep on them. I'm not sure when I'll be able to get to this and release a new patch, but this WILL be fixed I can assure you all on that.

As for requests, cosmetic uplifts, etc, I'm just not interested. The game the way it is (gameplay and visuals) will remain the way it has been for years. However, those that wish to modify or tweak my work are more than welcome to release their own patches with their desired changes.

Thanks for the report, to those that are active on romhacking.net, please report over there that I am aware of the crash, have found the issue, and will release a fix down the road. This site (acmlm) will be the first to know of it.

Enjoy the holidays, and thank you to everyone for continuously enjoying my work, means alot! :-)

Googie
Posted on 12-28-18 07:32 PM Link | Quote | ID: 166809


Giant Paratroopa
Level: 73

Posts: 1388/1391
EXP: 3424330
Next: 61538

Since: 02-19-07
From: Long Island City, NY

Last post: 7 days
Last view: 7 days
Posted by infidelity
I'm barely on his site due to working 60 hours every week


Make that money, bro.

infidelity
Posted on 01-08-19 12:55 AM Link | Quote | ID: 166833


Fuzz Ball
Level: 62

Posts: 949/951
EXP: 1914822
Next: 69864

Since: 05-24-07

Last post: 3 days
Last view: 15 days
Posted by Googie
Posted by infidelity
I'm barely on his site due to working 60 hours every week


Make that money, bro.


Hahaha! Tryin' to! :-D

Anyway, the new patch has been released. Be sure to read the readme. :-)

Alien-Type-0
Posted on 01-08-19 01:31 AM Link | Quote | ID: 166834


Level: 14

Posts: 70/75
EXP: 12769
Next: 302

Since: 01-02-18

Last post: 1 day
Last view: 50 days
Posted by infidelity
Posted by Googie
Posted by infidelity
I'm barely on his site due to working 60 hours every week


Make that money, bro.


Hahaha! Tryin' to! :-D

Anyway, the new patch has been released. Be sure to read the readme. :-)


Money kills don't work too hard for it, its not worth it in the end.
I read the readme just now, good grief was I pissed after reading 4.
I had almost beaten you're game, but I had used a game genie code to acquire 1 item.

Came back home from work one night and began playing again to finish it off.
Battery save file got corrupted and sent me all the way to beginning with half of my items.
Even the save state I had couldn't get it back, I was recording at the time and ruined everything.

infidelity
Posted on 01-08-19 03:17 PM Link | Quote | ID: 166836


Fuzz Ball
Level: 62

Posts: 950/951
EXP: 1914822
Next: 69864

Since: 05-24-07

Last post: 3 days
Last view: 15 days
Posted by erpster2
edit 12/26: it would be nice in a future release that the selection "cursor" on the inventory screen would "skip" empty or blank spaces like in the original unmodified Zelda 1 game.


You can do that in my game, by pressing the select button.

erpster2
Posted on 01-16-19 05:56 PM (rev. 5 of 01-16-19 06:02 PM) Link | Quote | ID: 166859


Goomba
Level: 12

Posts: 21/22
EXP: 6020
Next: 1901

Since: 09-29-09

Last post: 5 days
Last view: 5 days
I wanted to be BOLD enough to play Legend of Link in NES emulators other than FCEUX/Nestopia/Nintendulator on my PC and I have found a few of them that can handle the game very well.

Mesen v0.9.7 (bug fixes with MMC5 started with v0.8.1, i think):
https://github.com/SourMesen/Mesen/releases/tag/0.9.7

puNES (NES) Emulator v0.1.03 released a few days ago:
https://github.com/punesemu/puNES/releases/tag/v0.103

this one contains crucial mapper MMC5 and 213 bug fixes that make Legend of Link run correctly in puNES as v0.1.02 & earlier could not properly run the game.

X2 Whiskey
Posted on 01-18-19 03:58 AM Link | Quote | ID: 166865

Newcomer
Level: 1

Posts: 1/2
EXP: 6
Next: 5

Since: 01-18-19

Last post: 3 days
Last view: 5 hours
Hello,

Yeah this is my first post. Anyways, I like soldering things and I put together my first repro of this game using the last 2018 version on a ETROM board from an Uncharted Waters donor.

The game plays fine, but for some reason the save doesn't work. I rechecked the board by uninstalling the EPROMS and replacing the original Uncarted Waters ROMs and the save feature was working fine there.

Is anyone else having this problem on their physical cart versions?

infidelity
Posted on 01-20-19 02:19 PM Link | Quote | ID: 166872


Fuzz Ball
Level: 62

Posts: 951/951
EXP: 1914822
Next: 69864

Since: 05-24-07

Last post: 3 days
Last view: 15 days
Posted by X2 Whiskey
Hello,

Yeah this is my first post. Anyways, I like soldering things and I put together my first repro of this game using the last 2018 version on a ETROM board from an Uncharted Waters donor.

The game plays fine, but for some reason the save doesn't work. I rechecked the board by uninstalling the EPROMS and replacing the original Uncarted Waters ROMs and the save feature was working fine there.

Is anyone else having this problem on their physical cart versions?


I have a reply to this from the man who built me my personal cartridge of this, and who's helped me be able to beta test my work on his nes.

“ETROM doesn’t have enough SRAM.  But the etrom board will work. You have to remove the SRAM and the WRAM chips , install 256kb chips.   Then find the two solder pads labeled CL15 and SL15.  On the CL15 pad you’ll see a small connector in between the two halves of the solder pad.  Cut this line so the CL15 is not working any longer.  Then just solder the SL15 pad.   Doing this enables the use of the larger SRAM chips.  The save should work fine after that. “

X2 Whiskey
Posted on 01-20-19 06:55 PM (rev. 2 of 01-20-19 07:59 PM) Link | Quote | ID: 166873

Newcomer
Level: 1

Posts: 2/2
EXP: 6
Next: 5

Since: 01-18-19

Last post: 3 days
Last view: 5 hours
@infidelity

Thank you good sir for both the perfect answer and being civil, and not to mention the cool hack along with all of the work you've put into it.

I don't have any appropriate SRAM on hand, so it's going to be a few weeks before I can complete assembly.
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52


Main - ROM Hacking - Zelda - The Legend of Link (v12-23-18) Released New thread | New reply

Acmlmboard 2.1+3δ (2016-01-08)
© 2005-2016 Acmlm, blackhole89, Xkeeper et al.

Page rendered in 0.114 seconds. (346KB of memory used)
MySQL - queries: 96, rows: 133/0, time: 0.048 seconds.