Register | Login
Views: 19364387
Main | Memberlist | Active users | ACS | Commons | Calendar | Online users
Ranks | FAQ | Color Chart | Photo album | IRC Chat
11-02-05 12:59 PM
1 user currently in Super Mario World hacking: labmaster | 3 guests
Acmlm's Board - I2 Archive - Super Mario World hacking - some various questions about SMW's controller ASM
  
User name:
Password:
Reply:
 

UserPost
Sukasa
Posts: 1730/1981
eh, I don't really know too much about having to do with the irq, so that could be a small problem. I'll look up the irq stuff and see what I can figure out to make your idea work, I'll need to do it the way you mentioned for it to work properly for the sprites, but layer 3 can just stay off for the entire sequence, since the status bar shouldn't really appear in the credits sequence, should it? If you've got any advice, I would really appreciate it!
d4s
Posts: 282/325
Originally posted by Sukasa

EDIT: are the TD&TSW/TM&TMW settings refreshed each frame? I'd like to remove the status bar in this special level, by removing layer 3 from both the sub screen and main screen, or even just masking it.



yeah, main/subscreen are copied from $0D9D, $0D9E to the equivalent regs each frame.
but these buffers are updated only once per level change, so you can just write to these once, too and be done with it.

keep in mind that the item box uses sprites. the easiest way to remove sprites is to just move them offscreen.

why not make good use of the irq and disable sprites and bg3 using the above-mentioned buffers, then reenable them within the irq handler?
its already set up to fire right below the status box.
Sukasa
Posts: 1726/1981
None exist. I'll do that, it should work well. the death code shouldn't be very hard to find at all with the memory map having it's location. I know where to find the controller ASM as well, the only reason I asked was because I'd thuoght there might be another way. better to do this anyways, though. Mario can't die during this, it's for a new credits sequence that resets the SNES at the end of the loop, and I can easily place new ASM at the very beginning of the ROM, along with some... protections I've designed.

EDIT: are the TD&TSW/TM&TMW settings refreshed each frame? I'd like to remove the status bar in this special level, by removing layer 3 from both the sub screen and main screen, or even just masking it.

EDIT2: I forgot to ask, could a mod please rename this thread to "various questions about SMW's inner workings"? it isn't just about controller data.
HyperLamer
Posts: 6526/8210
Not sure, but if it doesn't, you can always hook into the controller code and have all input be ANDed with a byte in RAM. Then you just set one of the bits of that byte to 0, and the button it corresponds to will be disabled. (I should do that. )

However, if Mario dies during this, you may have a problem. You'd be best off hacking the death code to reset it, or just using an address that gets reset to 0xFF between levels if one exists.
Sukasa
Posts: 1724/1981
If I disable controller input through the action register, will mario still be able to jump and move if custom blocks input controlelr data? Right now, the jump command (b button) is executed before custom block code, while other movement code is executed after. I just need to prevent that from happening, since I'm coding a section that requires complete control of mario's movements, no player interaction allowed, period.
Acmlm's Board - I2 Archive - Super Mario World hacking - some various questions about SMW's controller ASM


ABII


AcmlmBoard vl.ol (11-01-05)
© 2000-2005 Acmlm, Emuz, et al



Page rendered in 0.002 seconds.