Search found 1231 matches

by WedNESday
Sat Oct 08, 2005 8:42 am
Forum: NESemdev
Topic: Sprite 0 Hit Test ROMs
Replies: 10
Views: 18972

WedNESday's VBlank time is 2269 CC's. This is the most allowed for blargg's VBlanks test allows. Set it any higher or lower and it fails you.
by WedNESday
Thu Oct 06, 2005 11:07 am
Forum: NESemdev
Topic: Nestopia Update
Replies: 14
Views: 9851

I've downloaded so many copies of the ROM but they all do the same. On WedNESday it runs fine, just like on most other emulators. But how do FCE Ultra and Nestopia manage to make it run differently? (What do they know that we don't...)
by WedNESday
Thu Oct 06, 2005 10:48 am
Forum: NESemdev
Topic: Nestopia Update
Replies: 14
Views: 9851

Nestopia is so much faster now on my P3-450 then it used to be. I do have one concern though. FCE Ultra and Nestopia seem to run Super Mario Bros. differently from other emulators. The demo is fine but when you actually run the game, you only get one level that does not exist in the game and is all ...
by WedNESday
Thu Oct 06, 2005 5:43 am
Forum: NESemdev
Topic: Sprite #0
Replies: 27
Views: 20068

hap wrote:A lot. Did you read Brad Taylor's NTSC 2C02 technical reference ? If you didn't yet, now's the time. It explains what the PPU cycles 'do'.
Should I use that reference or this one http://www.nesworld.com/dev/ntscpput.txt
by WedNESday
Thu Oct 06, 2005 3:00 am
Forum: NESemdev
Topic: Sprite #0
Replies: 27
Views: 20068

A pixel is not rendered on every PPU cycle. There are 341 PPU cycles per scanline... but only the first 256 of those cycles render pixels. The other cycles do other things. I know about that. 256 Pixels are rendered and the rest of the CPU time is HBlank (about 28.3 cc's). What do the remaining PPU...
by WedNESday
Wed Oct 05, 2005 2:53 pm
Forum: NESemdev
Topic: Sprite #0
Replies: 27
Views: 20068

Ok, I am going to implement my afforementioned method of rendering, i.e. execute a full CPU instruction, followed by rendering 3 pixels etc. Draw (Instruction Time - 1) * 3 Pixels Execute Instruction Draw 3 Pixels (Remaining Cycle) With this method am I guarenteed to have an accurate CPU/PPU/APU rel...
by WedNESday
Tue Oct 04, 2005 2:52 pm
Forum: NESemdev
Topic: Sprite #0
Replies: 27
Views: 20068

Ok, I want to implement some form of accurate timing on my emulator. However, I don't want to rewrite my CPU for cycle for cycle timing. Can I do it this way. Opcode == 0xA9 (LDA Immediate) Do Operation... Clock Cycles = Clock Cycles + 2; DrawPixel( NumberofPixels ) (NumberofPixels == 2 * 3) { ... }...
by WedNESday
Tue Oct 04, 2005 12:49 pm
Forum: NESemdev
Topic: Sprite #0
Replies: 27
Views: 20068

I know that people say the you should not trust NEStress and all that. One emulator DOES actually pass the test in NEStress and that is FCE Ultra. So it is possible to get a pass. WedNESday does not process graphics in the way that you have described. Here is how it works for WedNESday; (Scanline fo...
by WedNESday
Tue Oct 04, 2005 4:31 am
Forum: NESemdev
Topic: Sprite #0
Replies: 27
Views: 20068

Here is the code that sets the hit detection flag. if( !Transparent ) if( Background && Sprites == Visible ) if( SpriteNo. == 0 ) if( !( !( Sprite Clipping && Spritex < 8 ) ) if( Spritex != 255 ) if( BgPixel != Transparent ) SetFlag (Phew...) Can anyone see what is wrong with this co...
by WedNESday
Sun Oct 02, 2005 9:00 am
Forum: NESemdev
Topic: MMC1 Array
Replies: 13
Views: 7551

Sorry guys problem solved, my fault; if( Register[0] & 0x08 ) memcpy( &CPU.Memory[0xC000 - (Register[0] & 0x04) * 0x1000], &File[0x10 + (Register[3] * 0x4000)], 0x4000 ); not; if( Register[0] & 0x08 ) memcpy( &CPU.Memory[0x8000 + (Register[0] & 0x04) * 0x1000], &File[...
by WedNESday
Sun Oct 02, 2005 8:16 am
Forum: NESemdev
Topic: MMC1 Array
Replies: 13
Views: 7551

ALL MMC1 games are playing up.

Yes I am changing the ROM data (I was going to do all of the trapping later). Could that be what is effecting it?
by WedNESday
Sun Oct 02, 2005 7:45 am
Forum: NESemdev
Topic: MMC1 Array
Replies: 13
Views: 7551

I still can't get this to work, and I am literally ripping out my hair over it. Here is a sample of my code; if( Register[0] & 0x08 ) memcpy( &CPU.Memory[0x8000 + (Register[0] & 0x04) * 0x1000], &File[0x10 + (Register[3] * 0x4000)], 0x4000 ); I have ANDed Register[3] with 0x0F but th...
by WedNESday
Sat Oct 01, 2005 3:03 pm
Forum: NESemdev
Topic: battletoads (single screen)
Replies: 18
Views: 9500

I never meant to be mean or anything...

:(

I think the that there are 2 bottom lines when it comes down to emulation. 1. You write the emulator for fun or 2. You write the emulator for serious accuracy. I think that 1 wins hands down every time.
by WedNESday
Sat Oct 01, 2005 9:06 am
Forum: NESemdev
Topic: battletoads (single screen)
Replies: 18
Views: 9500

Since a real NES can run all games using the same engine, a good emulator will do also. Leave the number of VBlank scanlines at 20 as this is correct. Making your emulator custom for certain games is what very old (and therefore crappy emulators used to do). Never introduce hacks for games, if it do...
by WedNESday
Fri Sep 30, 2005 2:54 pm
Forum: NESemdev
Topic: 6502 Perfect Timing
Replies: 3
Views: 2959

Thanks for letting me know that. Just to clarify about the BRK bug. If an interrupt occurs during the BRK opcode then the opcode is not finished at all?