Search found 15 matches

by digilogistist
Thu Jun 07, 2012 8:01 pm
Forum: NESemdev
Topic: $4016 and DMC
Replies: 12
Views: 4942

It's one deletion, not three. This can be seen in the signature bits row in the Eighty demo. OK, I stand corrected. I wonder however, would only one joystick button deletion (DMC DMA coincidence) happen on a Nintendo machine like this? (is this even an official Famicom schematic?) I guess I would j...
by digilogistist
Wed Jun 06, 2012 12:49 am
Forum: NESemdev
Topic: $4016 and DMC
Replies: 12
Views: 4942

Re: $4016 and DMC

Could someone explain such behaviour of $4016 and DMCs, regarding an extra read? In the case that a DMC DMA cycle falls on a 6502 bus read cycle (say a read from $4016/7), the processor will be stalled for 3 bus cycles (so here, $4016 will be read 3 times with the bus data thrown away), then on the...
by digilogistist
Tue May 29, 2012 5:22 am
Forum: NESemdev
Topic: Emulator programming challenge
Replies: 17
Views: 6654

tepples wrote:Unless you want to emulate a room full of NES consoles or an arcade full of Vs. or PC10 machines.
I wonder what sort of video hardware you would need on a PC to output so many display signals, because then speeding up emulation would be very practical (it beats having 1 PC per NES console).
by digilogistist
Mon May 28, 2012 4:58 pm
Forum: NESemdev
Topic: Emulator programming challenge
Replies: 17
Views: 6654

I welcome the day when simulators will be able to run full-blown digital representations of decapped chips like the 2A03 & 2C02, so that us programmers will no longer require knowledge of how the chip works to get a retro system to work properly (for just the simple purpose of entertainment and ...
by digilogistist
Mon May 28, 2012 4:26 am
Forum: NESemdev
Topic: Emulator programming challenge
Replies: 17
Views: 6654

I privately wrote a working, pure real-mode x86 ASM-coded (source: 4600 lines; code/data size: 11KB), DOS-compatible (works under Win98 too) emulator with about 10 mappers of support, full 2A03 sound channel implementation w/SB16-only stereo audio playback, a keyboard-button game-jump multitasking f...
by digilogistist
Sun May 27, 2012 5:12 pm
Forum: NESdev
Topic: Sprite Overflow Flag: Useful for practical NES programming?
Replies: 25
Views: 8827

In addition to discussing the paradigm behind the PPU's Sprite 0 hit depending on the playfield pixels being solid, some attention has to be paid to the 2A03 audio hardware, most notably the sweep units. If you look at the size of the silicon real-estate that the 2A03 consumes for it's audio unit co...
by digilogistist
Sun May 27, 2012 11:05 am
Forum: NESdev
Topic: Sprite Overflow Flag: Useful for practical NES programming?
Replies: 25
Views: 8827

Makes you wonder why Nintendo went with the whole sprite/background collision and didn't just trigger the flag when the first non transparent pixel of sprite 0 was drawn instead. There really is no reason to have it only happen when the background and sprite are non transparent unless the hardware ...
by digilogistist
Sun May 27, 2012 10:37 am
Forum: NESdev
Topic: Sprite Overflow Flag: Useful for practical NES programming?
Replies: 25
Views: 8827

Since those sprites are transparent and have priority over all others, no sprites will be visible up there. The sprite overflow flag, which will be set at the same time every frame, is used for detecting the end of VBlank, so that I can wait for the end of the blanked area and enable background ren...
by digilogistist
Sat May 26, 2012 12:57 pm
Forum: NESdev
Topic: Sprite Overflow Flag: Useful for practical NES programming?
Replies: 25
Views: 8827

I don't think the Sprite Overflow flag is ever intended to be relied on and I don't think any commercial games used it for anything. Atleast, I don't remember ever implementing that flag in atleast one of my NES emulators and it never seemed to cause any problems. But it's been awhile. Well I guess...
by digilogistist
Sat May 26, 2012 12:29 pm
Forum: NESdev
Topic: Sprite Overflow Flag: Useful for practical NES programming?
Replies: 25
Views: 8827

For a stable horizontal playfield split, use Sprite 0 hit (possibly combined with DMC IRQ). You can shuffle the rest of the sprites fine. Well, I know I can use Sprite 0 hit to do that, but the basis of this query is to establish some community consensus for the fact that the Sprite Overflow flag i...
by digilogistist
Sat May 26, 2012 12:00 pm
Forum: NESdev
Topic: Sprite Overflow Flag: Useful for practical NES programming?
Replies: 25
Views: 8827

TL;DR Just cycle sprites all the time if you're creating a game where sprites may (or may not) be in the same scanline at the same time. I was thinking more along the lines of using the flag for a stable, horizontal playfield split, but that's not going to be possible when I've gotta rearrange OAM ...
by digilogistist
Sat May 26, 2012 11:08 am
Forum: NESdev
Topic: Sprite Overflow Flag: Useful for practical NES programming?
Replies: 25
Views: 8827

Sprite Overflow Flag: Useful for practical NES programming?

So... the sprite overflow flag doesn't necessarily get set when there are more than 8 sprites on one line, because as has been documented on the Wiki, once 8 sprites are found, the PPU starts interpreting tile index, attribute, and X coord data in sequence as Y coords for every 3/4 sprite records in...
by digilogistist
Sat May 05, 2012 11:15 pm
Forum: General Stuff
Topic: Major Famicom Disk System security breach
Replies: 17
Views: 5262

Major Famicom Disk System security breach

Hi, As many have said before, by 1987 semiconductor ROM sizes were as large as 128KB, and that was the equivelant to both sides of an FDS disk image. This has been the suggested reason as to why the FDS was dropped from Nintendo's product line, despite having its own awesome extra sound channel gene...
by digilogistist
Sat May 05, 2012 10:30 pm
Forum: NESdev
Topic: assertion of 6502 READY signal during DMC DMA cycles
Replies: 2
Views: 1771

Ah, I see. Thanks for the clarification on Battletoads use of direct PCM writing (no wonder those samples sounded pretty good!). Reading the controllers twice is a pretty nice idea to avoid the DMA bug; I can see now that this wouldn't be the most obvious thing for coders to do, while trying to prog...
by digilogistist
Sat May 05, 2012 9:59 pm
Forum: NESdev
Topic: assertion of 6502 READY signal during DMC DMA cycles
Replies: 2
Views: 1771

assertion of 6502 READY signal during DMC DMA cycles

Hi, According to the wiki, DMC DMA cycles are suggested to be 4 CPU clocks long (or less), with the first 3 clocks being just re-reads of the presently executing CPU clock (due to possible interrupt stack writing behavior which cannot be stopped on the 2A03's 6502), and then the last clock being the...