It is currently Wed Dec 12, 2018 3:32 am

All times are UTC - 7 hours





Post new topic Reply to topic  [ 17 posts ]  Go to page 1, 2  Next
Author Message
PostPosted: Tue Dec 04, 2018 2:36 pm 
Offline

Joined: Tue Dec 04, 2018 2:28 pm
Posts: 8
Please check all my posts below for update info & attachments .. I want new info, not old info please
Been watching some tutorials for how to make GameGenie codes, and decided to make some simple ones for Maniac Mansion.
I figured, the easiest codes would be to have doors unlocked.
I found the addresses, and they work fine... but when I converted to GameGenie, the addresses got changed and were no longer a match.
Are some addresses not possible to convert to GameGenie at all?

----------------------
6647:8F - Front Door
664F:8F - Gargoyale
66A9:CF - Jailcell
6687:8F - Yellow Door
6695:8F - Pool Drained
663F:CF & 65F3:CF - Buggy grating, maybe remove bush
66AD:8F - Inner lab door


Garage Door opened
669A:2F
669B:2F
669C:2F
(optional)
669D:2F
669E:2F
669F:2F

6163:01 - No need to feed tenticle
--------------------------------

Any clue what's wrong, and what I can do next?


Last edited by gukingofheart on Tue Dec 04, 2018 5:12 pm, edited 2 times in total.

Top
 Profile  
 
PostPosted: Tue Dec 04, 2018 2:39 pm 
Offline

Joined: Sun Apr 13, 2008 11:12 am
Posts: 7817
Location: Seattle
CPU addresses below $8000 cannot be changed by the Game Genie.

(ROM addresses usually can, depending on how the bankswitching works)


Top
 Profile  
 
PostPosted: Tue Dec 04, 2018 3:04 pm 
Offline

Joined: Tue Dec 04, 2018 2:28 pm
Posts: 8
So, what you're saying is it's a complete dead-end, and there's no other ways to keep the doors open through a gamegenie even by going back in the memory.

If so, I'd be fine with that.. I'm working on some cheat videos, and didn't want to showcase address codes, but if I have to, then I have to.


Top
 Profile  
 
PostPosted: Tue Dec 04, 2018 3:05 pm 
Offline

Joined: Sun Apr 13, 2008 11:12 am
Posts: 7817
Location: Seattle
Because it's MMC1, you should be able to figure out where that code is in ROM before it's copied to RAM. Assuming that's code that you're replacing.


Top
 Profile  
 
PostPosted: Tue Dec 04, 2018 3:14 pm 
Offline

Joined: Tue Dec 04, 2018 2:28 pm
Posts: 8
The example tutorials I watched don't even explain the below 8000 rule.
Maybe images can help you figure out if there's a next step.


Attachments:
help2.png
help2.png [ 191.67 KiB | Viewed 404 times ]
help1.png
help1.png [ 51.26 KiB | Viewed 404 times ]
Top
 Profile  
 
PostPosted: Tue Dec 04, 2018 3:18 pm 
Offline

Joined: Sun Apr 13, 2008 11:12 am
Posts: 7817
Location: Seattle
Look at the previous instructions that load the value in A that is then stored to this copy in RAM. Use the game genie to conditionally patch that original location that it's copied from.


Top
 Profile  
 
PostPosted: Tue Dec 04, 2018 3:25 pm 
Offline

Joined: Tue Dec 04, 2018 2:28 pm
Posts: 8
How???
Told you, the video guide is so limited. I need more examples that I can learn from.
Keyword is "examples"

I can supply more pics, if you tell me what I should take a pic of!

edit: maybe this pic will help?


Attachments:
help3.png
help3.png [ 99.66 KiB | Viewed 388 times ]
Top
 Profile  
 
PostPosted: Tue Dec 04, 2018 3:29 pm 
Offline
User avatar

Joined: Sat Feb 12, 2005 9:43 pm
Posts: 11011
Location: Rio de Janeiro - Brazil
Maniac Mansion has RAM at $6000-$7FFF, and the Game Genie can only patch ROM. The good news is that while you can't patch RAM, you can patch the code in ROM that sets up the RAM, so you can set breakpoints on writes to those addresses, and then you can figure out new codes to modify the code in ROM so that it writes your desired values to RAM instead of the original values.


Top
 Profile  
 
PostPosted: Tue Dec 04, 2018 3:40 pm 
Offline

Joined: Tue Dec 04, 2018 2:28 pm
Posts: 8
what address do I add to the breakpoint?

I tried C717, and tried "execute" this time, because "write" did nothing
does any of this info help?


Attachments:
help4.png
help4.png [ 89.45 KiB | Viewed 381 times ]
Top
 Profile  
 
PostPosted: Tue Dec 04, 2018 3:46 pm 
Offline

Joined: Sun Apr 13, 2008 11:12 am
Posts: 7817
Location: Seattle
Scroll up in the instruction listing on the left to see what happened before the instruction at $C717


Top
 Profile  
 
PostPosted: Tue Dec 04, 2018 3:56 pm 
Offline

Joined: Tue Dec 04, 2018 2:28 pm
Posts: 8
Went back to searching 6647 "Write", and the scrolled up.
Wasn't sure if I had to search 6647 or c717, etc.. as the examples did not cover this stuff


Attachments:
help5.png
help5.png [ 146.89 KiB | Viewed 374 times ]
Top
 Profile  
 
PostPosted: Tue Dec 04, 2018 4:24 pm 
Offline

Joined: Tue Dec 04, 2018 2:28 pm
Posts: 8
Please don't quit on me.
I'm sorry I didn't post all the images from the start, but I really would love to have more examples, and if I can solve this problem, then I save all the pics, write down all the text, so I'll have a general idea of what to do for other games with simple problems.

PS. sorry about the double post, if that's an issue.


Top
 Profile  
 
PostPosted: Tue Dec 04, 2018 5:33 pm 
Offline

Joined: Sun Apr 13, 2008 11:12 am
Posts: 7817
Location: Seattle
So, taking a step back ...

Maniac Mansion actually runs on LucasArts' interpreted language system; as such, it's the only NES game that one can play using ScummVM instead of an NES emulator.

If you want certain things to be pre-opened or pre-whatevered, you need to change either where those variables are initialized or where they're tested.



The code that you've identified at $C715 is this tiny fragment
Code:
 LDY #0
 STA ($E9),Y
 RTS
, assuredly part of the SCUMM interpreter rather than anything more useful. To patch the game, you need to find the corresponding chunk of the SCUMM script that ultimately called it and adjust that. There's several ways you could dig into this: You could look for any tools that will let you deal with SCUMM scripts, identify the corresponding scripts, and then the corresponding locations in ROM. Alternatively, you could dig up through the NES's SCUMM interpreter until you can figure out the same address. Once you have that address, making the patch is easy.

Regardless of approach, you'll need to become more familiar in general with either the NES's CPU or SCUMM in order to figure out how to make the patch: it's complex enough that this isn't a task that I'd enjoy guiding you though all the various steps.


Top
 Profile  
 
PostPosted: Tue Dec 04, 2018 5:44 pm 
Offline

Joined: Tue Dec 04, 2018 2:28 pm
Posts: 8
Would Retroarch work?
Or what program should I even get?
I at least want to know for the future, so I can learn something new.


edit: Thanks for all the help. will take a break on this for today


Last edited by gukingofheart on Tue Dec 04, 2018 5:59 pm, edited 1 time in total.

Top
 Profile  
 
PostPosted: Tue Dec 04, 2018 5:55 pm 
Offline

Joined: Sun Apr 13, 2008 11:12 am
Posts: 7817
Location: Seattle
Both FCEUX's and Mesen's debuggers are adequate to this task. I haven't used RetroArch enough to know.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 17 posts ]  Go to page 1, 2  Next

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 6 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group