Search found 216 matches

by za909
Wed May 06, 2020 2:23 pm
Forum: NESdev
Topic: Linear interpolation overtones
Replies: 10
Views: 3449

Linear interpolation overtones

I have attempted to add linear interpolation samples to my now working PCM stream. I have run into some strange wave physics phenomenon I believe, but there is a possible explanation that stems from the code, I just don't know if it is a correct answer. So to demonstrate the horrible noise that I cr...
by za909
Wed May 06, 2020 4:45 am
Forum: NESdev
Topic: VRC7 cycle timer IRQ - won't run for me
Replies: 3
Views: 2900

Re: VRC7 cycle timer IRQ - won't run for me

Even though the issue was minor, I'd be interested to know how much you can save by doing register writes like that. There might not be 42 cycles of IRQ-related overhead, but I can't imagine there being a huge benefit (acknowledge/restart cycle counter, + getting in and out of the IRQ). It would als...
by za909
Wed May 06, 2020 12:50 am
Forum: NESdev
Topic: IRQ nesting due to OAM DMA
Replies: 9
Views: 2830

Re: IRQ nesting due to OAM DMA

The solution seems to work well now, there are still a few IRQs happening close to eachother sometimes soon after exiting NMI, but there is no more problematic clobbering for now, and OAM DMA delaying a few samples is barely audible on its own (a quiet 60Hz buzz is heard during very quiet passages i...
by za909
Tue May 05, 2020 1:19 pm
Forum: NESdev
Topic: IRQ nesting due to OAM DMA
Replies: 9
Views: 2830

Re: IRQ nesting due to OAM DMA

If vblank has begun and not ended, and $2002 has not been read, turning NMI back on will immediately fire NMI. Bases Loaded II depends on this . However, turning NMI on or off at exactly the right side of the picture can cause visible artifacts in some cases due to race conditions on $2000 writes v...
by za909
Tue May 05, 2020 5:04 am
Forum: NESdev
Topic: IRQ nesting due to OAM DMA
Replies: 9
Views: 2830

IRQ nesting due to OAM DMA

I have discovered an issue with my PCM player project in Mesen that is very serious and can easily crash a game once implemented in one. Namely, there is a particular alignment of DMC IRQ, NMI and OAM DMA that can cause two IRQs to be nested in eachother, clobbering the variables for the IRQ at the ...
by za909
Mon May 04, 2020 11:28 pm
Forum: NESemdev
Topic: Mesen - NES Emulator
Replies: 889
Views: 432136

Re: Mesen - NES Emulator

CHR-ROM is used instead of RAM This is most likely the cause - Mesen defaults to using the NINA-001 mapper (which is also mapper 34) when there is CHR ROM in the cart (because all commercial BNROM games use CHR RAM.) You can force mapper 34 to use BNROM by using a NES 2.0 header and specifying a su...
by za909
Sun May 03, 2020 4:24 pm
Forum: NESemdev
Topic: Mesen - NES Emulator
Replies: 889
Views: 432136

Re: Mesen - NES Emulator

Hello, I am hopefully running into an issue that IS an issue I can "report" and is not just my ignorance, but if it is I would like to apologize in advance. However, this issue has never been present on other emulators, or the PowerPak, so I'm fairly confident that I haven't suddenly messed up my co...
by za909
Thu Mar 05, 2020 11:47 am
Forum: Other Retro Dev
Topic: Apparently the SMS is better than everything
Replies: 27
Views: 22888

Re: Apparently the SMS is better than everything

To join in on the audio discussion part, I mostly agree that a lot of soundtracks sound same-ey. Especially when it comes to percussion, since the "lazy way" was to use the available noise pitches, of which there are only three, the fourth setting takes the divider from the third square channel. Cha...
by za909
Sun Sep 01, 2019 12:53 am
Forum: NESdev
Topic: The truth about the black entries of the NTSC NES:
Replies: 12
Views: 8070

Re: The truth about the black entries of the NTSC NES:

I too have been ignorant of this information until now, but one question remains for me about 1D. It's nice to have it affected by the emphasis bits, but is it "safe" on TVs when not all three bits are set at once?
by za909
Mon Jun 10, 2019 8:03 am
Forum: NES Music
Topic: Mega Man 3 Music Editing
Replies: 2
Views: 6646

Re: Mega Man 3 Music Editing

This forum is not really geared towards ROM hacking, but you might find this useful.
by za909
Tue Jun 04, 2019 1:01 pm
Forum: Homebrew Projects
Topic: Raspberry pi in a NES cart
Replies: 44
Views: 39386

Re: Raspberry pi in a NES cart

I was wondering about music - I've seen PCM demos for the NES but I'd (probably) need another FX2LP to stream data in and out of the CPU bus. If you want to keep the NES unmodded, try to drive the IRQ line with your external hardware and put the pre-mixed sample for the DAC on a memory-mapped I/O p...
by za909
Mon Jun 03, 2019 11:31 pm
Forum: NESdev
Topic: Passing an array of arguments
Replies: 0
Views: 8185

Passing an array of arguments

Yesterday as I was trying to figure out a way to efficiently create multiple "forks" of the same enemies that would behave differently based on their ID, I've come across the need to pass one of multiple sets of arguments to my function that handles sine-wave motion. Since the enemy needs to find it...
by za909
Tue May 28, 2019 4:19 am
Forum: NESdev
Topic: Updating APU Regs Multiple Times Per Frame
Replies: 28
Views: 21297

Re: Updating APU Regs Multiple Times Per Frame

Even if the NMI handler allows IRQs to get through, distortion from OAM DMA is still very hard, if not impossible to mitigate completely. Only the DMC DMA can interrupt it, so I suppose one solution is to find a good "interpolation" DMC sample to play before starting OAM DMA, or to adjust the sample...
by za909
Mon May 27, 2019 6:51 am
Forum: NESdev
Topic: Updating APU Regs Multiple Times Per Frame
Replies: 28
Views: 21297

Re: Updating APU Regs Multiple Times Per Frame

My two cents' worth is that you don't need to run the ENTIRE sound engine multiple time per frame to achieve interesting effects, just put some subroutines in an IRQ that modulate pitch, duty cycle or volume. Also, referring to tips about using the DMC IRQ: If you don't want to use samples otherwise...
by za909
Mon May 20, 2019 1:05 am
Forum: NESdev
Topic: Why not read controllers in NMI?
Replies: 50
Views: 51341

Re: Why not read controllers in NMI?

Controller reads in NMI seemed like a natural thing for me to do. Since I use the DMC interrupt for scroll splits, there is no reason to have the DMC run during VBlank, so I'm free to stop it, read the controller in NMI in a consistent number of cycles this way (no need for DMC glitch fix) and resta...