Can the SNES use 1bpp tiles?

Discussion of hardware and software development for Super NES and Super Famicom.

Moderator: Moderators

Forum rules
  • For making cartridges of your Super NES games, see Reproduction.
Ronian53
Posts: 17
Joined: Mon Oct 12, 2020 12:26 pm

Can the SNES use 1bpp tiles?

Post by Ronian53 » Fri Nov 20, 2020 8:30 am

Can the SNES use 1bpp tiles? I know 3bpp is not a normal SNES format and a trick is used to load it as 4bpp, so can the same be done for 1bpp tiles?

nocash
Posts: 1258
Joined: Fri Feb 24, 2012 12:09 pm
Contact:

Re: Can the SNES use 1bpp tiles?

Post by nocash » Fri Nov 20, 2020 9:11 am

Please stop!
homepage - patreon - you can think of a bit as a bottle that is either half full or half empty

User avatar
Nikku4211
Posts: 221
Joined: Sun Dec 15, 2019 1:28 pm
Location: Bronx, New York
Contact:

Re: Can the SNES use 1bpp tiles?

Post by Nikku4211 » Fri Nov 20, 2020 9:19 am

Unfortunately, there's no native support for 1BPP, so you'd have to convert it to 2BPP in software after the graphics are loaded into RAM.
I have an ASD, so empathy is not natural for me. If I hurt you, I apologise.

Maxwelthuthu
Posts: 8
Joined: Mon Mar 12, 2018 9:58 pm

Re: Can the SNES use 1bpp tiles?

Post by Maxwelthuthu » Fri Nov 20, 2020 12:02 pm

Looks like Pilotwings did used
Image

Image

User avatar
Nikku4211
Posts: 221
Joined: Sun Dec 15, 2019 1:28 pm
Location: Bronx, New York
Contact:

Re: Can the SNES use 1bpp tiles?

Post by Nikku4211 » Fri Nov 20, 2020 1:19 pm

Maxwelthuthu wrote:
Fri Nov 20, 2020 12:02 pm
Looks like Pilotwings did used
Did you look in the ROM? Did you look through a debugger? How do you know the background isn't padded into a 2BPP format?
I have an ASD, so empathy is not natural for me. If I hurt you, I apologise.

Maxwelthuthu
Posts: 8
Joined: Mon Mar 12, 2018 9:58 pm

Re: Can the SNES use 1bpp tiles?

Post by Maxwelthuthu » Fri Nov 20, 2020 3:37 pm

Nikku4211 wrote:
Fri Nov 20, 2020 1:19 pm
Maxwelthuthu wrote:
Fri Nov 20, 2020 12:02 pm
Looks like Pilotwings did used
Did you look in the ROM? Did you look through a debugger? How do you know the background isn't padded into a 2BPP format?
It is in 2bpp format, on layer 3 using mode 1.
It must be 1bpp software converted to 2bpp. Using just transparent+1 color with real 2bpp would be the worst design ever.

User avatar
dougeff
Posts: 2772
Joined: Fri May 08, 2015 7:17 pm
Location: DIGDUG
Contact:

Re: Can the SNES use 1bpp tiles?

Post by dougeff » Fri Nov 20, 2020 6:57 pm

The debug screen in Wild C.A.T.S. is stored as 1bpp (appears as black and white RAM viewer). You have to hack or modify in a debugger to get to this screen, or if you have a dirty cartridge and the game gets a failed read (00 = BRK) you could get this screen.

This video at 45 seconds.

https://youtu.be/TFNBjcwN5ww
nesdoug.com -- blog/tutorial on programming for the NES

Pokun
Posts: 1569
Joined: Tue May 28, 2013 5:49 am
Location: Hokkaido, Japan

Re: Can the SNES use 1bpp tiles?

Post by Pokun » Sat Nov 21, 2020 2:44 am

The short answer to the question is:
Hardware: no
Software: of course

User avatar
Señor Ventura
Posts: 158
Joined: Sat Aug 20, 2016 3:58 am

Re: Can the SNES use 1bpp tiles?

Post by Señor Ventura » Sat Nov 21, 2020 5:37 am

That is it, for hardware all the tiles will occupy 16 Bytes, 1BPP tiles really are 2BPP but using less colors thant these can.

psycopathicteen
Posts: 2964
Joined: Wed May 19, 2010 6:12 pm

Re: Can the SNES use 1bpp tiles?

Post by psycopathicteen » Sun Nov 22, 2020 1:58 pm

You guys know there is a way to DMA 1bpp tiles without having the CPU manually convert tiles, right?

User avatar
Nikku4211
Posts: 221
Joined: Sun Dec 15, 2019 1:28 pm
Location: Bronx, New York
Contact:

Re: Can the SNES use 1bpp tiles?

Post by Nikku4211 » Sun Nov 22, 2020 2:45 pm

psycopathicteen wrote:
Sun Nov 22, 2020 1:58 pm
You guys know there is a way to DMA 1bpp tiles without having the CPU manually convert tiles, right?
No, I don't.
I have an ASD, so empathy is not natural for me. If I hurt you, I apologise.

tepples
Posts: 22145
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Can the SNES use 1bpp tiles?

Post by tepples » Sun Nov 22, 2020 2:50 pm

DMA and the increment register can be set to write to only low bytes or only high bytes of 16-bit VRAM words. However, if you want to add a drop shadow, that's on the CPU.

93143
Posts: 1261
Joined: Fri Jul 04, 2014 9:31 pm

Re: Can the SNES use 1bpp tiles?

Post by 93143 » Sun Nov 22, 2020 3:02 pm

When filling only even or only odd bytes in bitplane graphics (as opposed to Mode 7 where it's how you upload tiles and map data separately), it's important to make sure the other byte is zero, or a known value at least, so you don't get pseudo-transparency with random leftover garbage. Of course, under normal circumstances you should only have to do this once.

It strikes me that you could do a bit of motion echo by alternating which byte you fill and flipping the palette around every frame.

User avatar
Señor Ventura
Posts: 158
Joined: Sat Aug 20, 2016 3:58 am

Re: Can the SNES use 1bpp tiles?

Post by Señor Ventura » Sun Nov 22, 2020 3:47 pm

psycopathicteen wrote:
Sun Nov 22, 2020 1:58 pm
You guys know there is a way to DMA 1bpp tiles without having the CPU manually convert tiles, right?
8 Bytes per tile?

I remember having commented it long time ago, but after that time i have discarted that idea.
Last edited by Señor Ventura on Sun Nov 22, 2020 6:14 pm, edited 2 times in total.

User avatar
Nikku4211
Posts: 221
Joined: Sun Dec 15, 2019 1:28 pm
Location: Bronx, New York
Contact:

Re: Can the SNES use 1bpp tiles?

Post by Nikku4211 » Sun Nov 22, 2020 4:56 pm

93143 wrote:
Sun Nov 22, 2020 3:02 pm
When filling only even or only odd bytes in bitplane graphics (as opposed to Mode 7 where it's how you upload tiles and map data separately), it's important to make sure the other byte is zero, or a known value at least, so you don't get pseudo-transparency with random leftover garbage. Of course, under normal circumstances you should only have to do this once.

It strikes me that you could do a bit of motion echo by alternating which byte you fill and flipping the palette around every frame.
Combine that with the interlace PPU bit being toggled in any mode that isn't 5 or 6, and you'll get double the motion blur.

PS2-style.
I have an ASD, so empathy is not natural for me. If I hurt you, I apologise.

Post Reply