That helps quite a bit.
Although, question - I've heard that since you can have three different save game files, you would need to do that three times for the seperate save files possible or something? Do I just do that code 3 times with different RAM addresses?
Also what you told me (IceYoshi) with patches to make it unlock later in game...
For unlockable thing
At the beginning of your patch, or before the main code, you add in a check:
LDA !Ram
CMP #!Value
BNE Return
~Powerup code.
And
Then you just write anything to save to SRAM, which starts from $700800. For example,
LDA $0DBF
STA $700800 ; Store coin counter to SRAM.
So at the beginning of a patch that I want to cause to be unlockable later in the game by hitting a custom block that loads something like 01 into A and stores it... would I put something like this into beginning of the patch...
LDA $not sure what I'd put here to make the game save whatever patch does
STA $700800 ; or !Ram
LDA $700800 ; or !Ram
CMP #01 : This should mean that if 01 is loaded into !Ram then patch powerup shall work. If it is anything else the patch will do nothing. Is that correct?
BNE Return
~Powerup code.
Would you recommend the saving to RAM part to be at the end of the patches code, and the thing that enables or disables it at the start?
Would I have it stand alone with an RTL at the end? (For saving RAM)
__________
Also...
LoRom and HiRom, anything to worry about? Has a HiRom hack ever been made? What is the difference, besides size. (I learned from Lunar Expand that apparently the normal size of 500 kb to 8000 kb is LoRom and any higher is HiRom... what does this mean?
________-
Sorry I feel liking I was being lazy while typing this.
edit:
Also I found in the parallel worlds patch where it lets you enable or disable the ability, and it's the same thing you said IceYoshi, so I'll assume it'll work for me for the other spots I'd use it in other patches.... but now I just need to know how to make the RAM address save, and I'm currently testing it out now.
edit 2: Trying to save the effect didn't seem to work this time after what you said. Trying again.
Other thought... Would I want to make it so my custom block saves the change to RAM? So that it'd save the change from 00 to 01, probably like this...
JMP's here
MarioCode:
LDA #$01
STA $06F0 ; RAM address that requires 00 for disable power and 01 for enabled power
LDA #$06F0
STA $!Ram
Return:
RTL
Man I think this is getting a bit advanced now. And this post is getting long.
I own a community of
TF2 servers!
ASMT - A new revolutionary ASM system, aka 65c816 ASseMbly Thing
SMWCP - SMW Central Presents a Product- tion long name
frog
http://esolangs.org/wiki/MarioLANG