Search found 12172 matches

by tokumaru
Sat Apr 02, 2022 11:31 am
Forum: General Stuff
Topic: Conference speech about nesdev, I need your help reviewing it
Replies: 6
Views: 278

Re: Conference speech about nesdev, I need your help reviewing it

The general mixup between vblank and NMI is what's standing out the most to me... Here's a quick summary that might help: vblank - Period after the visible picture, lasting 2273 1/3 CPU cycles, during which the PPU does not access the video memory (unless instructed to by the CPU). NMI - Interrupt t...
by tokumaru
Thu Mar 24, 2022 4:43 pm
Forum: Other Retro Dev
Topic: Have you seen such a video mode?
Replies: 18
Views: 901

Re: Have you seen such a video mode?

He's basically suggesting that the "pattern table" be arranged like one 256x256 bitmap, rather than 1024 8x8 bitmaps. The "name table" would still reference 8x8 blocks, it's just that the individual blocks wouldn't be linearly stored in memory like is normally the case with old c...
by tokumaru
Thu Mar 24, 2022 4:32 pm
Forum: General Stuff
Topic: What would you change about the NES?
Replies: 49
Views: 2463

Re: What would you change about the NES?

Ben Boldt wrote: Thu Mar 24, 2022 3:30 pmIf they used all the fetches for sprite data, there could be twice as much sprite pixels per scanline.
Aren't there FPGA clones that do this? Like reteoUSB's AVS?
by tokumaru
Thu Mar 24, 2022 4:25 pm
Forum: NESdev
Topic: Changing both scroll and CHR bank on MMC3
Replies: 7
Views: 441

Re: Changing both scroll and CHR bank on MMC3

I just fail to think of how to ensure, weeks or months later when adding newly drawn or updated content to the game, what tile numbers will be displayed on the top row of tiles after a split. (The asset conversion toolchain that we use reorders tile numbers automatically to improve compression, whi...
by tokumaru
Thu Mar 24, 2022 4:05 pm
Forum: NESdev
Topic: Changing both scroll and CHR bank on MMC3
Replies: 7
Views: 441

Re: Changing both scroll and CHR bank on MMC3

I can't think of any trick that will magically make everything fit in hblank, but I'd probably try to put the scroll change in between the 2 CHR swaps, since missing the window for the scroll change will cause the whole scanline to jitter, while badly timed CHR swaps will only corrupt 8 or 16 pixels...
by tokumaru
Wed Mar 23, 2022 4:07 am
Forum: Other Retro Dev
Topic: Have you seen such a video mode?
Replies: 18
Views: 901

Re: Have you seen such a video mode?

One problem with this is that tiles are harder to update on the fly (for background animations and the like), because they aren't stored linearly in memory. Unless you include some sort of DMA functionality that automatically rearranges bytes as you transfer tile data.
by tokumaru
Sat Mar 19, 2022 3:42 pm
Forum: General Stuff
Topic: NES games with a lot of character logic going on
Replies: 25
Views: 1270

Re: NES games with a lot of character logic going on

How does that work? You just add 9 to each sprite number? Yeah, you just start filling OAM from a random position and advance a number of slots that's relatively prime to 64, such as 9 or 17. I guess it won't work if you have certain sprites you don't want to redesignate, like sprite 0. Using a BEQ...
by tokumaru
Thu Mar 17, 2022 5:44 pm
Forum: General Stuff
Topic: NES games with a lot of character logic going on
Replies: 25
Views: 1270

Re: NES games with a lot of character logic going on

I mean, would, for example, this be possible on the NES, gameplay-wise? https://www.youtube.com/watch?v=_VFvXg0K-MA I think this is possible, specially if you design everything with this particular situation in mind. Objects here do not move particularly fast, so you can definitely stagger some of ...
by tokumaru
Tue Mar 15, 2022 11:33 am
Forum: General Stuff
Topic: NES games with a lot of character logic going on
Replies: 25
Views: 1270

Re: NES games with a lot of character logic going on

This is a complicated question... Different games have wildly different requirements when it comes to object behavior... Overhead RPGs are generally much lighter on physics and collisions than platformers, for example. And even in the same genre, the specific mechanics of each game can have a huge i...
by tokumaru
Thu Mar 10, 2022 7:30 am
Forum: SNESdev
Topic: Move/Copy blocks of code to WRAM
Replies: 25
Views: 966

Re: Copy/Move a block of code to WRAM

"Doesn't work" is always very vague (try posting any error messages you get, or describing unexpected results), but one thing that looks odd to me is the use of multiple # symbols in the instructions. This symbol specifies that the instruction is to use immediate addressing, and should nor...
by tokumaru
Mon Mar 07, 2022 11:26 am
Forum: NESdev
Topic: Drawing attributes vertically
Replies: 6
Views: 663

Re: Drawing attributes vertically

What I normally do for attributes is use increment 32 mode and write pairs of attribute bytes. Since 32 is equivalent to 4 attribute rows, the pairs are: 0 and 4, 1 and 5, 2 and 6, 3 and 7. If I'm scrolling vertically and the screen is between name tables, I don't bother with with partial updates, I...
by tokumaru
Sun Mar 06, 2022 7:11 pm
Forum: NESdev
Topic: 32x32 pixel meta tiles and vertical scrolling
Replies: 13
Views: 565

Re: 32x32 pixel meta tiles and vertical scrolling

It's the whole thing about the PPU having a temporary address register (t) and a current address register (v). All $2000, $2005 and $2006 writes affect t, and some or all of t are copied to v after the second $2006 write and at key moments during the frame. You have to know all of this if you plan o...
by tokumaru
Sun Mar 06, 2022 6:41 pm
Forum: General Stuff
Topic: What would you change about the NES?
Replies: 49
Views: 2463

Re: What would you change about the NES?

If the nametable is 36x32 characters it would be exactly 9x8 attribute elements large. But this is still not particularly friendly for scrolling, since the wrap around from 288 to 0 and vice-versa has to be handled manually, like we currently have to do between 240 and 0 when scrolling vertically. ...
by tokumaru
Sun Mar 06, 2022 9:33 am
Forum: NESdev
Topic: 32x32 pixel meta tiles and vertical scrolling
Replies: 13
Views: 565

Re: 32x32 pixel meta tiles and vertical scrolling

I tried it out in IRQ, but simply setting the two scrolling values like I do in NMI only worked for horizontal, not vertical. What am I missing? The vertical scroll can't be changed mid-screen by normal means. To freely change the scroll mid-screen you need what's known as the $2006/5/5/6 trick. Fo...
by tokumaru
Sat Mar 05, 2022 9:33 pm
Forum: NESdev
Topic: 32x32 pixel meta tiles and vertical scrolling
Replies: 13
Views: 565

Re: 32x32 pixel meta tiles and vertical scrolling

30-tile tall name tables combined with 32x32-pixel attribute areas create one of the biggest drawbacks of scrolling vertically on the NES... I mean, I could design the level in a way that every eighth row has special meta tile that consists only of 4 x 2 hardware tiles instead of 4 x 4. You don't ne...