Search found 12419 matches

by tokumaru
Wed Mar 06, 2024 10:07 am
Forum: Newbie Help Center
Topic: Finding sprite data
Replies: 3
Views: 266

Re: Finding sprite data

This is not as straightforward as it may seem... Sprites are generally made of OAM (or whatever the equivalent is called in other platforms) entries, which are small chunks of data specifying the position, size, palette, flipping, etc. of one or more tiles from VRAM/VROM. This data has a well define...
by tokumaru
Tue Mar 05, 2024 7:54 pm
Forum: Newbie Help Center
Topic: Help me understand this code...
Replies: 3
Views: 274

Re: Help me understand this code...

This creates a symbol called "RoomAllDead" and assigns it the value $34D (hex). It looks like this symbol represents a variable whose value is stored in memory address $34D. This line by itself doesn't generate any output, it just creates the symbol so that instructions that will appear la...
by tokumaru
Thu Feb 22, 2024 3:30 am
Forum: Newbie Help Center
Topic: First Tile appears in first two rows of background when attributes are added
Replies: 3
Views: 457

Re: First Tile appears in first two rows of background when attributes are added

The program looks mostly correct to me, except for the part right after the second vblank wait, where you set the PPU up for rendering but immediately change your mind and disable the PPU again. You don't want any NMIs firing there by accident, seeing as your NMI handler trashes the accumulator. So ...
by tokumaru
Tue Jan 16, 2024 11:13 pm
Forum: General Stuff
Topic: Converting SNES Jr. from PAL-M back to NTSC
Replies: 2
Views: 1014

Re: Converting SNES Jr. from PAL-M back to NTSC

At those frequencies, the extra wire acts like a capacitor. Oh, I see... I think installing the trimmer capacitor will have the same effect. Thanks! I just tried it and indeed everything is working as it should now! I didn't even adjust the trimmer capacitor at all, just installing it did the trick...
by tokumaru
Tue Jan 16, 2024 8:02 pm
Forum: General Stuff
Topic: Converting SNES Jr. from PAL-M back to NTSC
Replies: 2
Views: 1014

Converting SNES Jr. from PAL-M back to NTSC

Modifying SNES consoles between PAL-M and NTSC is generally fairly straightforward - just swap the crystal oscillator and connect a specific pin of the video encoder chip to either +5V or GND (depending on whether you want PAL-M or NTSC). My particular SNES Jr. is an American model, modified back in...
by tokumaru
Wed Dec 27, 2023 6:17 am
Forum: Newbie Help Center
Topic: Implementing Conditional Sprite Flickering on the NES
Replies: 5
Views: 1199

Re: Implementing Conditional Sprite Flickering on the NES

Yeah, most games do not try to detect the need to cycle sprite priorities, they just do it all the time. Load some of your favorite games in Mesen and open the sprite viewer to get an idea of what strategies they use. My favorite method is to fill the OAM linearly, from slot 0 to slot 63 (this is so...
by tokumaru
Fri Dec 15, 2023 7:46 pm
Forum: NESdev
Topic: I can't to draw background correct!
Replies: 25
Views: 5116

Re: I can't to draw background correct!

Try resetting the scroll right before turning rendering on.
by tokumaru
Fri Dec 15, 2023 6:06 pm
Forum: NESdev
Topic: I can't to draw background correct!
Replies: 25
Views: 5116

Re: I can't to draw background correct!

I'm on my phone right now so I can't edit or test anything, but the fix I mentioned is really simple - just take the code from your first post, cut those 4 lines of code I indicated and paste them right before the forever loop. That'll probably fix your background.
by tokumaru
Fri Dec 15, 2023 5:32 pm
Forum: NESdev
Topic: I can't to draw background correct!
Replies: 25
Views: 5116

Re: I can't to draw background correct!

like this? .proc nmi_handler ; JSR famistudio_update VBlankOne: BIT PPUSTATUS BPL VBlankOne RTI .endproc No, that doesn't have anything to do with what I said. Also, there's no reason to poll the vblank flag in the NMI handler, because that gets called when vblank starts, so the vblank flag will al...
by tokumaru
Fri Dec 15, 2023 4:55 pm
Forum: NESemdev
Topic: Mesen - Emulator
Replies: 415
Views: 251064

Re: Mesen - Emulator

There's SMS and GG support now? That's awesome!
by tokumaru
Fri Dec 15, 2023 4:52 pm
Forum: NESdev
Topic: I can't to draw background correct!
Replies: 25
Views: 5116

Re: I can't to draw background correct!

Yes, I attach binary with .incbin as you can see in code. Or you mean pick up binary file from other done project? He meant attaching the final ROM to your post, so anyone can download and debug. Anyway, just from looking at your code, I'll also point out that the reset code needs fixing. As has al...
by tokumaru
Thu Nov 16, 2023 7:49 pm
Forum: NESdev
Topic: Help me integrate get-put synchronized controller reading
Replies: 23
Views: 4344

Re: Help me integrate get-put synchronized controller reading

I had this happen to me and, if I remember correctly, I simply unrolled the controller-reading loop to make it fast enough even for the fastest DMC rate. I personally am not a big fan of the OAM DMA trick, because it's not particularly versatile (it affects the structure of your NMI handler, you sti...
by tokumaru
Wed Nov 08, 2023 2:02 pm
Forum: Other Retro Dev
Topic: Clever tricks developers implemented for performance
Replies: 12
Views: 3185

Re: Clever tricks developers implemented for performance

https://rasterscroll.com/wp-content/uploads/2021/02/Yu-Yu-Hakusho-Scaling-01.png I wonder how the games that use this technique implement it under the hood... In the case of Yu Yu Hakusho, I think that the scaling animation is only ever applied to a single pose of each character, so they could very...
by tokumaru
Tue Oct 31, 2023 4:46 am
Forum: Newbie Help Center
Topic: Metatiles and Dynamic Nametable Management [SOLVED]
Replies: 28
Views: 4979

Re: Metatiles and Dynamic Nametable Management

It looks like you're struggling with consistently triggering scroll updates based on the number of scrolled pixels... so here's some advice regarding that: Generally speaking, if the map is built from 16x16-pixel blocks, you have to draw a new slice (and possibly buffer a new slice of collision data...
by tokumaru
Sun Oct 29, 2023 11:25 pm
Forum: Other Retro Dev
Topic: Clever tricks developers implemented for performance
Replies: 12
Views: 3185

Re: Clever tricks developers implemented for performance

Bucky O'Hare on the NES has this cool visual effect that simulates 3 overlapping background planes, while the hardware actually only has 1: https://youtu.be/dWHPNnrTmKs?si=DNB0JkhsMjn7_rag&t=36m26s This is achieved through a combination of various tricks. First, there's the structure on the righ...