Search found 218 matches

by Nicole
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 ...
by Nicole
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...
by Nicole
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...
by Nicole
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...
by Nicole
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

psycopathicteen wrote:What happens if only BG2 has color math enabled?
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.
by Nicole
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...
by Nicole
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...
by Nicole
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...
by Nicole
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...
by Nicole
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...
by Nicole
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...
by Nicole
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.
by Nicole
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 (* ...
by Nicole
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...
by Nicole
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...