PDA

View Full Version : WIP Meter


neopop_uk
06-03-2002, 08:24 AM
I'll explain how the WIP bars are calculated to clear things up:

Each CPU instruction gets it's own C function inside the CPU emulation core - within this function is the logic that makes the instruction do its job. But, If the instruction has yet to be written then a warning is inserted instead saying basically 'INSTRUCTION TODO'.

This is how the instructions bar is calculated, by counting the TODO warnings - so at the moment out of 210 functions, 84% are written, the rest have a warning. Pretty good progress huh? (Note that 210 functions is not 210 instructions as I have seperate functions for different modes of the same instruction for speed reasons)

The thing to note here is that the cpu in the NGPC is a bit... shall we say eccentric, and has many instructions that are pretty much useless. So there are only 3 or 4 remaining that really need to be dealt with - Games don't give a missing instruction errors when I debug them now, they crash before they get a chance perhaps?

There is a similar equation for flags. If a function does not alter the CPU flags correctly then it gets a comment saying 'FLAGS TODO'. This is counted out of 210 as well. The thing to note here is that most of the completely unimplemented instructions have a flag warning too so this actually lowers the mark. But some instructions don't use flags so there is no warning for them, hence the flags value is bigger than the instruction value.

Unfortunately these bars are high enough now to show that emulation problems are caused by errors in the current implementation, rather than missing features. So I wouldn't hold too much be these bars any more - just see any increases as a step in the right direction.

It's all about bug fixes now!

(Thanks for listening to my ramblings, hope this has cleared it up for you Lillymon! The last line is basically all I should have said, oh well!)

PS. Graphics and sound are arbitrary and are bumped up when I feel like it!

- neopop_uk

Lillymon
06-03-2002, 10:51 AM
Yesterday, I was confused about NeoPop and missed Digimon due to a power cut.

Today, neopop_uk clears everything up and I catch an early morning repeat of the Digimon I missed! And more is on in just over an hour! And the graphics counter went up (just feels good). http://www.emuxhaven.net/iB_html/non-cgi/Skin/SKIN-2/PostIcons/icon5.gif

Oh happy days! http://www.emuxhaven.net/iB_html/non-cgi/emoticons/rotflmao.gif