Showing Visitor Messages 16 to 28 of 28
-
September 19th, 2010 10:06 PMcolcolstylesWell then. I'm glad I could help. :)
Can I ask what, exactly, this "seasons" thing is? I'm intrigued. -
September 19th, 2010 5:53 PMShiny QuagsireBelieve me, without that address, I wouldn't have found a thing. :p
-
September 18th, 2010 7:16 PMcolcolstylesUhm, you must have done a lot on your own because I didn't really help you all that much. :)
-
September 18th, 2010 6:43 PMShiny QuagsireHey, thanks a lot. You really helped me figure out how ASM works, along with ZodiacDaGreat. Because of you, I've made seasons if fire red, seasons for a world map, and other great discoveries about the rom and myself. So, thanks :)
-
September 15th, 2010 5:01 PMShiny QuagsireSorry to bother ya again. This time, the question is more general. How exactly could I branch to my code from a routine? I've tracked it, I've written my routine, but I can't figure out how to load.
Nevermind, just got it to work! I have seasons! :3 -
September 8th, 2010 6:19 PMShiny QuagsireOh. Strance, when I subtracted 8, it kept stopping. I'll try -2. :)
-
September 8th, 2010 4:34 PMcolcolstylesI've never felt the need to use any disassembler other than the ones included in the various forms of VBA that I use so I don't know of one. Sorry.
Yeah, that's why you should backtrack until you find the routine which calls the palette loading routine when switching maps. You're on your own there because I'm an Emerald hacker.
Oh, and I believe that PC (r15) is only one instruction (i.e., two bytes) ahead of the current instruction. :\ -
September 8th, 2010 6:26 AMShiny QuagsireI've just got VBA-SDL-H to work for me, and found out the address you gave is used for all map loading. The pikachu intro thing stopped at my break,the oak event stopped at my break. The player's name stopped my about 20 times. I'm assuming it's used for any pallet change on the general maps. Not to mention every time you warp it loads each and every pallet, including sprites....
edit:
I managed to breate a reading breakpoint, at Ea1b6A (Grass pallet), and PC pointed to 1e3b68 and 059aa4 (In order). Since PC is always 8 bytes ahead (I think), then the routine must be ~8 bytes behind it. I suspect since it only stopped twice, those are the routines. I dunno why I told you, but maybe you'll use them ;) -
September 7th, 2010 5:23 PMShiny QuagsireThanks. I've been studying ASM for a while now, and I've actually done a few things. But that was my biggest barrier. Oh, if it's not too much of a bother, what's a good (free) ARM7 decompiler? I've tried IDA free, but it game me problems...
-
September 7th, 2010 2:25 PMcolcolstylesIt looks like the routine at '0x703EC' contains the code which loads the tileset palettes. The source is passed as an argument (r0) while the destination is calculated in the first part of the routine. The branch-and-link instruction branches to a SWI call which copies over the data from the source to the destination. However, you should be aware that this routine is used in numerous other places to copy palettes. If you want, you can trace where this routine is called from and work backwards until you find a routine which is only run twice when changing maps (once for the primary tileset, once for the secondary tileset). That would probably be a better place to put your code.
-
September 7th, 2010 1:39 PMShiny Quagsirethe Pallet loading routine for maps
-
September 7th, 2010 1:28 PMcolcolstyles"Palette loading" is a very broad term. Can you please be a little more specific?
-
September 7th, 2010 6:24 AMShiny QuagsireHey, would you happen to know where the pallet loading routine is in fire red, and how I could set a breach to my own code inside it?

