Search found 218 matches
- Fri Jul 29, 2016 8:23 pm
- Forum: SNESdev
- Topic: 65816 really 16 bit or just a 6502 with 16 bit registers
- Replies: 126
- Views: 44963
Re: 65816 really 16 bit or just a 6502 with 16 bit registers
The normal multiplier is u8 * u8 -> u16, and requires waiting 8 CPU cycles, regardless of waitstates (it uses the CPU clock), before you can read the result. However, there's also the mode 7 multiplier, which is i16 * i8 -> i24, and can be used when you have mode 0-6 set, or during blanking in mode ...
- Thu Jul 28, 2016 3:05 pm
- Forum: SNESdev
- Topic: 65816 really 16 bit or just a 6502 with 16 bit registers
- Replies: 126
- Views: 44963
Re: 65816 really 16 bit or just a 6502 with 16 bit registers
My point was that the complaints that "if it only had more memory" were about the size of your goals. Yeah, I certainly don't disagree with your point. Then which unpatented and fully cracked console is more powerful than the Super NES or Genesis? Well, PC, more or less, in any way that r...
- Thu Jul 28, 2016 1:44 pm
- Forum: SNESdev
- Topic: 65816 really 16 bit or just a 6502 with 16 bit registers
- Replies: 126
- Views: 44963
Re: 65816 really 16 bit or just a 6502 with 16 bit registers
I think any debates about which console is more powerful have ceased to be relevant decades ago. Do you know which console is even more powerful than the SNES or Genesis? The N64, PS1, Saturn, Dreamcast, PS2, GameCube, Xbox, PS3, Wii, Xbox 360, PS4, Wii U, Xbox One, and so on. Let's face it, we aren...
- Sat Jul 16, 2016 12:33 am
- Forum: SNESdev
- Topic: SNES Timing Questions
- Replies: 30
- Views: 8400
Re: SNES Timing Questions
You can set the direct page to start anywhere from $00:0000 to $00:ffff via the 16-bit DP register. If you set it to something that isn't a multiple of $0100, however, it will add an extra cycle to direct page addressing instructions. There are actually a number of different things that can add extr...
- Wed Jul 13, 2016 6:22 pm
- Forum: SNESdev
- Topic: Actually making progress: tricked out metasprite routine
- Replies: 51
- Views: 14061
Re: Actually making progress: tricked out metasprite routine
Color math only affects the main screen. If only BG1 is on the main screen, all you'll see is BG1. Color math doesn't do anything if the layer it's enabled on isn't on the main screen.psycopathicteen wrote:What happens if only BG2 has color math enabled?
- Wed Jul 13, 2016 4:23 pm
- Forum: SNESdev
- Topic: Actually making progress: tricked out metasprite routine
- Replies: 51
- Views: 14061
Re: Actually making progress: tricked out metasprite routine
All in all, the SNES is incredibly flexible in the stuff you can do with its graphics settings. It's nothing compared to modern hardware of course, but I do feel like there's a lot of potential that hasn't necessarily been exploited in a lot of games. So the subscreen only shows up on main screen ba...
- Wed Jul 13, 2016 2:41 pm
- Forum: SNESdev
- Topic: Actually making progress: tricked out metasprite routine
- Replies: 51
- Views: 14061
Re: Actually making progress: tricked out metasprite routine
Yeah, it's outside of the normal 256-color palette, which is a little strange. Can be useful for some things though, like using color math with a solid color that needs to be different from the backdrop color. Dracula X isn't using the same trick; it simply puts BG3 (the fire) on the subscreen, then...
- Wed Jul 13, 2016 2:34 pm
- Forum: SNESdev
- Topic: Actually making progress: tricked out metasprite routine
- Replies: 51
- Views: 14061
Re: Actually making progress: tricked out metasprite routine
Not always enabled, since the subscreen is also used for hi-res; that said, color math and hi-res are the only two ways you can have the subscreen show up on-screen. However, I did remember something; color 0 does not necessarily have to be black, because you can additionally have color math force m...
- Wed Jul 13, 2016 12:35 pm
- Forum: SNESdev
- Topic: Actually making progress: tricked out metasprite routine
- Replies: 51
- Views: 14061
Re: Actually making progress: tricked out metasprite routine
The subscreen priority trick uses transparency, so to speak. The SNES has four different color math modes. One adds the subscreen's colors to the main screen's colors and divides by two, averaging them, which is the classic transparency effect. Another doesn't do the division, which means the colors...
- Tue Jul 12, 2016 10:41 pm
- Forum: SNESdev
- Topic: Actually making progress: tricked out metasprite routine
- Replies: 51
- Views: 14061
Re: Actually making progress: tricked out metasprite routine
I looked into it, and yes, BG3 does end up getting rendered in the middle. How it does it is pretty clever, though; what it does is take advantage of the subscreen and color math. Taking DKC3's factory levels as an example, only BG1 (the foreground), BG3 (the back wall), and the sprites are on the m...
- Tue Jul 12, 2016 9:41 pm
- Forum: SNESdev
- Topic: Actually making progress: tricked out metasprite routine
- Replies: 51
- Views: 14061
Re: Actually making progress: tricked out metasprite routine
This seems to imply that it's impossible to have BG3 between BG1 and BG2, which I know isn't the case. You know it isn't the case? How exactly? is it impossible to efficiently update a tilemap on its sides using DMA? No, it's possible to change bits in $2115 (VMAIN) to change how the VRAM address a...
- Sat Jul 09, 2016 1:54 am
- Forum: SNESdev
- Topic: Actually making progress: tricked out metasprite routine
- Replies: 51
- Views: 14061
Re: Actually making progress: tricked out metasprite routine
That should work fine as far as I know, assuming those files are the right size.
- Tue Jun 21, 2016 9:22 am
- Forum: SNESdev
- Topic: Ca65 "Constant expression expected"
- Replies: 15
- Views: 5042
Re: Ca65 "Constant expression expected"
Put another way, * is the current address wherever you happen to use it. So, for this code: SpriteBuf1: .res $200 SpriteBuf1Size= *-SpriteBuf1 Let's say SpriteBuf1 is at the address $1000. Then, after reserving $200 bytes, the current address is now $1200. Therefore, * is $1200 at this point, so (* ...
- Thu Jun 16, 2016 5:29 pm
- Forum: SNESdev
- Topic: animation scheme for next game
- Replies: 19
- Views: 7061
Re: animation scheme for next game
Oh, right, I forgot that there's a gap between the top and bottom halves of a 16x16 tile in VRAM. So it's more like: ; transfer two 16x16 tiles individually set up dma to transfer two 8x8 tiles transfer 8x8 tile transfer 8x8 tile set up dma to transfer two 8x8 tiles transfer 8x8 tile transfer 8x8 ti...
- Wed Jun 15, 2016 8:02 pm
- Forum: SNESdev
- Topic: animation scheme for next game
- Replies: 19
- Views: 7061
Re: animation scheme for next game
Basically, since each slot is 32x16 instead of 16x16, instead of set up dma to transfer one 16x16 tile transfer 16x16 tile set up dma to transfer one 16x16 tile transfer 16x16 tile it's set up dma to transfer two 16x16 tiles transfer 16x16 tile transfer 16x16 tile So you only have to set up DMA once...