![]() |
| Register | Login | |||||
|
Main
| Memberlist
| Active users
| Calendar
| Chat
| Online users Ranks | FAQ | ACS | Stats | Color Chart | Search | Photo album |
|
| | |||
| Acmlm's Board - I3 Archive - - Posts by SMurf |
| User | Post | ||
|
SMurf Newcomer Since: 08-13-06 Last post: 6091 days Last view: 6091 days |
| ||
| Hey, I'm just starting out ROM hacking and fancied mucking about with SMB1. I've searched around and looked at the various docs available and worked out how the maps are sewn together, the enemy/object tables and where the warp zone destination worlds are, cool enough.
But does anyone know where the layouts for the different backgrounds (you know, indicating where the clouds/hills/fences go) are stored? It had better not be another complex mess of bitfields otherwise I'm gonna cry. ![]() |
|||
|
SMurf Newcomer Since: 08-13-06 Last post: 6091 days Last view: 6091 days |
| ||
| They're not in the enemy or object tables for the maps though, they can't be touched in any of the level editors I've looked at (YY, SMB Utility).
There must be another table with these in somewhere... |
|||
|
SMurf Newcomer Since: 08-13-06 Last post: 6091 days Last view: 6091 days |
| ||
| After taking screenshots and encoding colour values into their 16-bit equivalents I managed to locate the palette for Mario/Super Mario in SMB1 in the SMAS ROM. The thing is, it seems to be within a big chunk of individual 16 colour palettes for different things.
How does this work? Does the code load the sprite and then find somewhere to put its palette within the larger hardware palette (128 colours isn't it), updating the references in the sprite? If the sprites are 4bpp then they can only ever refer to 16 colours, so I would assume an offset is applied... ![]() |
|||
|
SMurf Newcomer Since: 08-13-06 Last post: 6091 days Last view: 6091 days |
| ||
| What I'm saying is that according to various hardware docs the SNES utilizes a palette that indexes 128 high colour (15 bit) values.
It would appear that each sprite has its own palette of 16 high colour values. When different sprites are being displayed together, does the SNES map the sprites' palettes into its hardware palette? So if I was displaying two different sprites, sprite 1's palette would be placed at indexes 0 to 15 in the hardware palette, sprite 2's palette at 16 to 31? (This would mean that a maximum of eight palettes could be mapped and funny stuff has to be done to show additional sprites properly) |
| Acmlm's Board - I3 Archive - - Posts by SMurf |