xverizex / RetroSpriteEditor

The drawing tool for retro consoles
GNU General Public License v3.0
8 stars 1 forks source link

[REQUEST] 8x16 sprite mode? #1

Closed TheRealHamtaro126 closed 11 months ago

TheRealHamtaro126 commented 11 months ago

Appearently the NES has a 8x16 sprite mode, of which this app did not use or did not take into the account as of now, so I suggest a implementation to add it, it is very good to have, if done soon.

Plus, for those using MMC5, I'd just make an additional "MMC5 8x16 Sprite Mode" in your options too... in addition to the normal NES mode usage.

This way, your app could be a REAL step up from the other alternatives used, such as NEXXT/NES Screen Tool, YY-CHR Screen Editor and Nostalgic Assets Workshop (NAW was free, Now costs an arm and a leg for no good reason...)

xverizex commented 11 months ago

Ok, I'll add 8x16 mode. In the first time, I wanted to add at least something to make it work.

xverizex commented 11 months ago

I haven't figured out how the 8x16 mode works in the NES yet.

TheRealHamtaro126 commented 11 months ago

Have you looked in the NESDEV wiki?!? https://www.nesdev.org/wiki/PPU_OAM

see PPU OAM -> Byte 1 for more information

If you want to implement 8x16 mode for MMC5, see thier wiki on the MMC5 mapper: https://www.nesdev.org/wiki/MMC5

For the MMC5 side, you need to look at specific places in the mapper, specific to sprite CHR, not much.

TheRealHamtaro126 commented 11 months ago

MMC5 is optional BTW...

xverizex commented 11 months ago

If I make the selection between 8x8 or 8x16 mode, it is well, or need to select MMC5 exactly? Or you want special parameters for MMC5?

xverizex commented 11 months ago

Can I question? If I select 8x16 mode, then the background is 8x16 mode too?

xverizex commented 11 months ago

I still haven't worked with bank switching.

TheRealHamtaro126 commented 11 months ago

1: would like just a special 3-bank mode for MMC5, one using 2 banks for 8x16 CHR for each 4k bank, up to 8k sprites with 4k tileset for BG/FG tiles using just NES nametable mode, can be 12k CHR, or 16k for NES compatibility, with 4k CHR unused, altogether...

2: Can have either 8x16 and 8x8 BG modes, selection mode per user project type.

3: Do not need to have bankswitching, sortof, there is both 4k and 8k CHR modes for 8x16, for sprites, 4k is usable more than 8k CHR mode, but 8k can be still used in most cases for 8x16 in MMC5 if minimally needed...

in short for the 4k mode: but i dunno about 8k, so 4k is perferred if using minimal graphics!

TheRealHamtaro126 commented 11 months ago

I can always write my own code into certain places using this app if 8x16 is implemented, even with MMC5, I can pretty much make some stuff for mappers myself pretty easily.

6502 Code may look hard, but isn't once you learn a bit of reading, hacking around, and skill...

xverizex commented 11 months ago

Can you give me your code with MMC5 to be tested it?

TheRealHamtaro126 commented 11 months ago

I referred to the fact that I can always make my own code for myself, while doing work on my own stuff, not need to know anything else other than the fact, other than this, you are gonna go through stuff some say... are obstacles in coding especially if new to 6502.

There is this: Patience is a virtue, there is always another way around things...

Think outside the box, Coding requires critical thoughts and decisions,

For me and you, Hope is all around us, Dont forget to take breaks... Get plenty of rest if needed.

xverizex commented 11 months ago

Ok. :)

xverizex commented 11 months ago

2: Can have either 8x16 and 8x8 BG modes, selection mode per user project type.

I haven't correct understood you. )) For background I haven't found the mode 8x16, so there is mode 8x8 is available, right?

xverizex commented 11 months ago

The commit 1c9ac86 solve this issue...

I still haven't tested in nes game, but I think the implementation is correct. mmc still not implemented, and it will not be implemented yet.