| |||
Views: 88,441,507 |
Main | FAQ | Uploader | IRC chat | Radio | Memberlist | Active users | Latest posts | Calendar | Stats | Online users | Search | 04-20-24 10:46 AM |
|
Guest: Register | Login |
0 users currently in ROM Hacking | 4 guests |
Main - ROM Hacking - Logic needs some help - SMB3 (picture inside) | New thread | New reply |
RetroRain |
| ||
Fuzz Ball Level: 66 Posts: 347/994 EXP: 2436979 Next: 24872 Since: 09-30-07 Last post: 1929 days Last view: 951 days |
I'm trying to code a new powerup (replacing Fire Mario), but, I don't know why it won't show the fireball sprite (for testing purposes) when I want it to be shown. Here is a picture which will describe it all.
I have to go to work now. If you guys can help me figure this out, I would appreciate it. I'll reply later. ____________________ My YouTube Channel |
kuja killer |
| ||
Level: 55 Posts: 72/628 EXP: 1243277 Next: 70912 Since: 03-20-07 From: Lake Havasu City, Arizona Last post: 276 days Last view: 1 day |
Because the game is in 8x16 sprite mode meaning that the only way to display sprites from the right pattern tables is by using "odd" numbered tile numbers. And it produces 2 sprites vertically.
So you gotta do tile id 65 or 67. |
RetroRain |
| ||
Fuzz Ball Level: 66 Posts: 348/994 EXP: 2436979 Next: 24872 Since: 09-30-07 Last post: 1929 days Last view: 951 days |
It is actually showing tile $64 and $65 from the left side of the pattern table. The right side is supposed to be the sprites side. If you look closely at the sprite on the screen, you can see that it is the 2 bottom block tiles that are together on the left side of the PPU. Now I understand why there are 2 sprites, because of the 8x16 sprtie mode. Thank you for that bit of info. But why is it displaying from the left side when the sprites are on the right? Is it because of that "odd" numbered thing you were saying? ____________________ My YouTube Channel |
smkdan |
| ||
Ninji Level: 36 Posts: 170/238 EXP: 288509 Next: 19601 Since: 05-26-07 Last post: 4056 days Last view: 4005 days |
http://nesdevwiki.org/wiki/NES_PPU#Byte_1
low bit of tile # is pattern table select. |
RetroRain |
| ||
Fuzz Ball Level: 66 Posts: 349/994 EXP: 2436979 Next: 24872 Since: 09-30-07 Last post: 1929 days Last view: 951 days |
Thanks for the help guys. So from what you are saying it seems that SMB3 is set up differently, using the 8x16 mode as opposed to the 8x8 I'm used to seeing, and I have to take that into account when hacking. But at least I know that now. Even if the answer may have been obvious to others, it didn't really occur to me, so now that I know, in a sense I learned something new. I'll poke around with this more later. ____________________ My YouTube Channel |
Kawa |
| ||
CHIKKN NI A BAAZZKIT!!! 80's Cheerilee is best pony Level: 138 Posts: 1442/5344 EXP: 30930056 Next: 732925 Since: 02-20-07 From: The Netherlands Last post: 4492 days Last view: 2627 days |
I knew it used 8x16 mode the moment I first laid eyes on the VRAM. Does that make me a bad person? ____________________ Wife make lunch - Shampoo Opera - give it a spin Spare some of your free time? <GreyMaria> I walked around the Lake so many goddamn times that my sex drive was brutally murdered Kawa rocks — byuu |
RetroRain |
| ||
Fuzz Ball Level: 66 Posts: 350/994 EXP: 2436979 Next: 24872 Since: 09-30-07 Last post: 1929 days Last view: 951 days |
Posted by Kawa????? .......What? I don't think so................. I don't know. ____________________ My YouTube Channel |
smkdan |
| ||
Ninji Level: 36 Posts: 171/238 EXP: 288509 Next: 19601 Since: 05-26-07 Last post: 4056 days Last view: 4005 days |
Posted by Kawa if by 'bad person' you mean someone who makes little content posts to make themselves feel special, then yes anyway, 8x8 sprites would be the typical in NES games because the precious CHR memory can be often wasted with 8x16 sprites, see the digits and score sprites (since they stick out the most) have a vacant / wasted tile next to them because they're only meant to be viewed as an 8x8 sprite. You wouldn't see any of this in 8x8 sprite mode. It limits the flexibility of CHR layout / wastes space while doubling the tiles per OAM slot (thereby usually reducing CPU usage because 2 tiles are formed with 1 OAM write) and allowing access to both pattern tables. another downside would be if you have vacant tiles as part of a 8x16 sprite, it still counts towards the 8 sprites per scan limit because the transparent tile data still gets fetched regardless. |
Kawa |
| ||
CHIKKN NI A BAAZZKIT!!! 80's Cheerilee is best pony Level: 138 Posts: 1445/5344 EXP: 30930056 Next: 732925 Since: 02-20-07 From: The Netherlands Last post: 4492 days Last view: 2627 days |
So basically, it just lets you do the block bounces without having to duplicate them in the right half, like SMB1 used to do, yet the same space is now wasted for everything that's not dividable into 16x8 tiles? I'll just stick to the GBA's methods thankyouverymuch. ____________________ Wife make lunch - Shampoo Opera - give it a spin Spare some of your free time? <GreyMaria> I walked around the Lake so many goddamn times that my sex drive was brutally murdered Kawa rocks — byuu |
Hamtaro126 |
| ||
Cheep-cheep Level: 33 Posts: 104/194 EXP: 212735 Next: 16444 Since: 05-02-07 From: Shelton, WA Last post: 2466 days Last view: 2309 days |
Posted by smkdan Look at it this way: 8x16 removes part of the 64 sprite limit graphics-wise, but 8x8 can be a pain if you want to hack a 8x16 game to a 8x8 game limit-wise. 8x8 sprites in games has different position usage than 8x16. ____________________ Mah boi, romhacking is what all true warriors strive for! I wonder what's for dinner? |
Main - ROM Hacking - Logic needs some help - SMB3 (picture inside) | New thread | New reply |
© 2005-2023 Acmlm, blackhole89, Xkeeper et al. |
MySQL - queries: 67, rows: 96/97, time: 0.017 seconds. |