Sprites Expansion? - Smurfs ROM related
Moderator: Moderators
- Hamtaro126
- Posts: 783
- Joined: Thu Jan 19, 2006 5:08 pm
Sprites Expansion? - Smurfs ROM related
I also found out that ''smurfs.nes'' expanded (or put more) sprites @ 0700. How did it do that? Can I have more info for expanding so I can make a new status bar?
What are you talking about? The NES hardware is limited to 64 on-screen sprites. You can't just "add more" via software.
- BMF
RuSteD LOgIc
RuSteD LOgIc
- Hamtaro126
- Posts: 783
- Joined: Thu Jan 19, 2006 5:08 pm
No, I am saying IT IS NOT POSSIBLE. The PPU can only display 64 sprites, no more.
I just checked the game, and the OAM data is at $700. 256 bytes = 64 sprites. I don't know what $200 is, but it's not OAM.
I just checked the game, and the OAM data is at $700. 256 bytes = 64 sprites. I don't know what $200 is, but it's not OAM.
- BMF
RuSteD LOgIc
RuSteD LOgIc
- Hamtaro126
- Posts: 783
- Joined: Thu Jan 19, 2006 5:08 pm
Yes it is possible to have more than 64 sprites IF AND ONLY IF you turn the PPU off for about 8 scanlines in the middle of the frame in order to re-perform sprite DMA. Then you can use the first sprite area for the part above the bar with 64 sprites and the second sprite area for the bottom part with 64 other sprites. I haven't tried this myself, I don't know if any games use this and I don't see much use for that since you don't usually want a big black bar in the middle of your screen, but this is possible.
Useless, lumbering half-wits don't scare us.
This would be great for a 2P game that works like Sonic 2's competition mode, where each player uses half of the screen.Bregalad wrote:Yes it is possible to have more than 64 sprites IF AND ONLY IF you turn the PPU off for about 8 scanlines in the middle of the frame in order to re-perform sprite DMA. Then you can use the first sprite area for the part above the bar with 64 sprites and the second sprite area for the bottom part with 64 other sprites. I haven't tried this myself, I don't know if any games use this and I don't see much use for that since you don't usually want a big black bar in the middle of your screen, but this is possible.
In Sonic 2, both players race in the same level and whoever reaches the end first wins. On the NES, you could explore the idea even further, because with CHR-ROM nothing would stop you from switching new patterns and a new palette for the bottom part of the screen, meaning that the players could even be in different levels, as long as the engine supports this (2 levels loaded at once). Speed would also be an issue, because the NES would be in fact processing 2 separate games at the same time. It could work smoothly in a simpler game.
I think this is just too cool... letting 2 people play the game at the same time, at their own pace, occasionally meeting when necessary, would be fantastic! With 2 different playfields, 8 blanked scanlines in the middle of the screen would not be a problem at all.
EDIT: Back on the topic of "sprite expansion", this seems to be the only way to use more than 64 sprites. This multiplexing only works vertically though, so it probably is impossible to have more than 8 sprites per scanline.
Yes, but it would work only if both playfields scrolls horizontally, or if you have a mapper that supports one-screen mirroring.
Why probably ? You are still unsure ?This multiplexing only works vertically though, so it probably is impossible to have more than 8 sprites per scanline.
Useless, lumbering half-wits don't scare us.
Or you could do that weird trick of drawing each playfield twice while using horizontal mirroring, although that'd make things even harder because there are 2 of them, so you'd actually maintain 4 playfields. But sure, one-screen mirroring would be the best option.Bregalad wrote:Yes, but it would work only if both playfields scrolls horizontally, or if you have a mapper that supports one-screen mirroring.
People have been proved wrong about hardware limitations before, so I'll not risk saying "it's impossible", that's all. Once in a while someone discovers pretty weird ways of extending the capabilities of old hardware, so who knows?Why probably ? You are still unsure ?This multiplexing only works vertically though, so it probably is impossible to have more than 8 sprites per scanline.
How about "it was impossible while the NES was still putting food on the table"?tokumaru wrote:People have been proved wrong about hardware limitations before, so I'll not risk saying "it's impossible", that's all. Once in a while someone discovers pretty weird ways of extending the capabilities of old hardware
- An "interesting" test ROM would be one small ball bouncing across the screen, and +1 when some key is pressed. It's *almost* the same idea behind that bio (?) demo.
Zepper
RockNES author
RockNES author