It is currently Thu Dec 14, 2017 5:57 pm

All times are UTC - 7 hours





Post new topic Reply to topic  [ 8 posts ] 
Author Message
 Post subject: NEStress
PostPosted: Sat Sep 10, 2005 1:13 pm 
What is meant by:

PPU First Read Correct
Mixed adr/Date Write
Use 2002/2005 to set Address
Palette write/read

The text document that comes with NEStress does not explain them at all/clearly.

Be as detailed as you can please. Thanks.


Top
  
 
 Post subject:
PostPosted: Sat Sep 10, 2005 2:50 pm 
You should read first "2C02" reference, and loopy doc too (altought is some cripting).

what i advice you:

Read:

- NesTech.txt complety (altought is old and not actulized) to build a good base.
- NinTech wich is newer.
- 20C2 reference.

If you understand what it says there you will understand what you were asking.
It is not so simple to explain those things if you dont have a previous knowladge on ppu addressing and those things.

Regards.


Top
  
 
 Post subject: Reply
PostPosted: Sat Sep 10, 2005 2:52 pm 
Ok thanks, ill try that. But in the meantime does anybody else have any information?


Top
  
 
 Post subject:
PostPosted: Sat Sep 10, 2005 3:39 pm 
Offline
User avatar

Joined: Mon Sep 27, 2004 8:33 am
Posts: 3715
Location: Central Texas, USA
I found some of NEStress's descriptions a little hard to figure out, so I examined the asm source for some of the tests.

A little meta-explanation... When describing something to someone, there are two main contexts you can use: yours or theirs. Using your context involves describing your model (terminology) and then using it. Using their context involves first examining their question and figuring out their current mental model, then describing things within that model.

Using the other person's model is more time-consuming, but it is much more effective because you are in the position of understanding the material, so can easily alter your explanation of it to fit other people's models. Of course sometimes a person's model needs repair before anything new can be explained.

Summed up, a person's question is the perfect context to answer it concisely and in a way that is understood easily, though sometimes only a long answer will do.


Top
 Profile  
 
 Post subject:
PostPosted: Sun Sep 11, 2005 3:27 am 
??? blargg???

I asked you a question about NEStress and instead you have posted nothing but a complete bunch of garbage!!!

Please lets stick the matter in hand. Please could someone explain to me what it meant by:

1. PPU First Read Correct;

This tests the PPU read "pipe" to see if the first read is just random or the actual value in the "pipe".


Does pipe refer to whatever is stored at (CPU Memory) $2007?


2. Mixed Address/Data Write;

This tests that the PPU address isn't changed before both bytes are written to the address register.


I appear to emulate this but I still get that error message.


3. Use $2002/$2005 to set Address;

No explanation given.


How is it possible to use $2002/$2005 to set the PPU's 16bit address?


4. Palette Write/Read;

No explanation given.


What does this refer to? NO emulator I know seems to support it.


I have read the documents that were recommended to me but they haven't solved my problems. Also, does any of the above require precise timing?


Top
  
 
 Post subject:
PostPosted: Sun Sep 11, 2005 8:39 am 
Offline

Joined: Sun Sep 19, 2004 11:12 pm
Posts: 19345
Location: NE Indiana, USA (NTSC)
Another Guest... wrote:
Please could someone explain to me what it meant by:

1. PPU First Read Correct;

This tests the PPU read "pipe" to see if the first read is just random or the actual value in the "pipe".


Does pipe refer to whatever is stored at (CPU Memory) $2007?

Pretty much. It refers to whatever the PPU last copied to $2007. Remember that the PPU writes to $2007 after you read it, unless you're reading palette memory. There may be ways for the "pipe" to be filled other than through a $2007 read.

Quote:
4. Palette Write/Read;

No explanation given.


What does this refer to? NO emulator I know seems to support it.

You can read and write the palette (PPU$3F00-$3F1F, mirrored up to $3FFF) the same way you read and write the rest of VRAM, and it doesn't have the same 1-byte delay that reading the rest of PPU memory has. Have you tried it in Nintendulator?


Top
 Profile  
 
 Post subject:
PostPosted: Sun Sep 11, 2005 9:41 am 
Offline
User avatar

Joined: Mon Sep 27, 2004 8:33 am
Posts: 3715
Location: Central Texas, USA
Quote:
Remember that the PPU writes to $2007 after you read it, unless you're reading palette memory.


I recently tested this on my NES and found that reading from the pallete area still fills the pipe in the usual fashion (reading from VRAM). So reading from $2007 when the current address is $3f00 gives back palette color 0 and also fills the pipe with what's in VRAM at $3f00.


Top
 Profile  
 
 Post subject:
PostPosted: Sun Sep 11, 2005 10:04 am 
Offline
User avatar

Joined: Sun Sep 19, 2004 10:59 pm
Posts: 1393
blargg wrote:
Quote:
Remember that the PPU writes to $2007 after you read it, unless you're reading palette memory.


I recently tested this on my NES and found that reading from the pallete area still fills the pipe in the usual fashion (reading from VRAM). So reading from $2007 when the current address is $3f00 gives back palette color 0 and also fills the pipe with what's in VRAM at $3f00.


Correct - this is consistent with results from testing performed by Kevin Horton. This is also a reasonably effective way to detect older emulators :).

_________________
Quietust, QMT Productions
P.S. If you don't get this note, let me know and I'll write you another.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 8 posts ] 

All times are UTC - 7 hours


Who is online

Users browsing this forum: Yahoo [Bot] and 7 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group