News:

Don't forget to visit the main site! There's lots of helpful docs, patches, and more!

Main Menu

A couple of questions!

Started by Taekan, February 09, 2015, 02:18:41 AM

Previous topic - Next topic

Taekan

Hi everyone!
First of all, apologies for any mistakes related to my grammar, english is not my mother language :p

Currently, I'm working on a hack (headered) for 2 years (with a lot of months between that time doing no progress at all) and I'm getting close to a 50% of development on it.
I'm using SMILEJX 2.82, Lunar Address and XVI32.

My questions (as far as I remember) are:

1) When I do a save on a station and reload from that point (at any map area) the map data is wiped (all is unexplored), I've applied MapDataCleaner IPS before knowing that issue, because the original map data was being loaded to it and causing it to be pretty messed up. Does that IPS have any influence with that problem?

2) Using "Guide to moving map icons" does not lead me to the right hex address (I think), the weird thing is that when I started to move icons months ago, the data was there, I moved map, charge and missiles icons, but now I can't find them at all. Picked a clean rom but it was the same story, couldn't identify those pointers.

Any guidance, advice or comments about these issues are welcome.
Thanks in advance for your help!!

TheAnonymousUser

Quote from: Taekan on February 09, 2015, 02:18:41 AM
1) When I do a save on a station and reload from that point (at any map area) the map data is wiped (all is unexplored), I've applied MapDataCleaner IPS before knowing that issue, because the original map data was being loaded to it and causing it to be pretty messed up. Does that IPS have any influence with that problem?
I'm sure someone may have a better answer for this than me, but all I can think of is have you tried using kejmap (in smile's map editor)?

Quote from: Taekan on February 09, 2015, 02:18:41 AM
2) Using "Guide to moving map icons" does not lead me to the right hex address (I think), the weird thing is that when I started to move icons months ago, the data was there, I moved map, charge and missiles icons, but now I can't find them at all. Picked a clean rom but it was the same story, couldn't identify those pointers.
The reason that you're being directed to the wrong addresses is because a headered rom usually has an extra 200 bytes at the top of the rom (most documentation on this site is for an unheadered rom). Either just add 200 onto the address you're looking for, or the easier thing to do, is to remove the header via smile (there's pretty much no difference between headered over unheadered other than 200 bytes)

Other than that, welcome to metconst. And happy hacking.

Jordan5

To echo what TAU said, pretty much all addresses for things on this site will be for an unheadered rom. To make things easier for you, just use SMILE to remove the header from your rom.

For your map issues, try applying this from Scyzer, it has fixed that problem for me before (i'd remove your header in SMILE before applying it,or you'll need to alter the ASM slightly).

Taekan

Thanks for your replies!

For the first question, now that I remember I applied Kejmap2 patch (this was like more than a year ago, when I was wandering how to wipe the original map data) and I was really a noob/amateur with a low knowledge in terms of hacking, so I used patches for unheadered roms in a headered one  :blush:

For the second question, I already know that I have to interact with 200 less bytes for each address (let's say that I have a pointer in $8FED31 and in my case it must be $8FEB31).

And I really can't find that address. I know it's not that big deal, but I want to make it less "cheesy" and it is already in Crateria, Brinstar and Norfair, so not being in the rest of the areas would be like "meh, it's not finished"

When I tried to remove the header, I think that it was kinda late, because my hack was all messed up, so for almost all patches (if not all of them) I'll have to alter the pointers (if that can be done), to match the data with my rom.

Jordan5

Umm, I've never really touched headers (they're evil) but don't you need to add (not subtract, like you said) $200 to convert the unheadered addresses into headered ones?

Taekan

I have to substract 200 bytes in order to make it viable for SMILE and the room itself to read the data in a determined address.

For example, when I move level data to make a room even bigger, I do the following:

Level Data    Level entries.txt      In XVI32 Editor
  E19912   <==   309912     <==    309B12

Before knowing that, I was jumping 200 bytes of data , so instead of writing in 309B12, started at 309D12, due to Level Data being wrong.

-------

Can I alter an ASM/IPS to make it compatible with my hack?

Mettyk25jigsaw

I might be able to help,

If you have an address of say '1C5400' (PC Address) in rom inside a hex editor and you want to convert it lunar Address you would have to subtract $200 bytes for a headered rom, so it would be $B8D200...

If you have a Lunar address of say '$B8C600' and you want to convert it to PC address you mast add $200 Bytes to a headered rom, and so it would be '1C4800'...

Hope this helps...