Code refactoring makes the changes hard to isolate, but the main improvements are:
* implemented fpu instructions and exceptions
* corrected swl/swr implementation
* tlb mru lookup optimization
* interrupt and privilege debugger breakpoints
Change the sign of go (or in other terms a12 and a21 matrix stencil
elements). This should make further optimization of matrix population
easier.
In addition hopefully improve the readability of the code by sacrifying
overloads for more verbose member names.
leapfrog_leappad_cart.xm: Pre Reading - Leap's Friends From A to Z (UK), Music - Hit it, Maestro! (UK), Reading - Disney/Pixar Finding Nemo (UK), Hop on Pop - Based on the Book by Dr. Seuss (UK), ABC-Abenteuer (Germany), What will you be? (UK) [TeamEurope]
screen.h: added constructor for SVG screens and removed a couple of macros (nw)
mame\drivers: remove most MCFG and MACHINE_CONFIG macros from drivers starting with P, Q and R (nw)
The previous emulation logic change was correct, however Sly Spy, Hippodrome, Birdy Try suffered from an ordering bug - tilemap.cpp in the core cached the tile indices before the game updated the dynamic colmun/row major bit. It seems the correct fix is to make sure tilemap::mappings_update() should be called when the column/row bit changes, however this is currently a private function. I've put in a hack at line 396 so that mappings_update() is called as a side effect of a flip. The better fix would be just to expose mappings_update for general driver use, but I didn't want to make that larger change without approval.
New clones marked as NOT_WORKING
--------------------------------
Sega Rally Championship - Twin/DX (Revision A) [Dane Biegert, Brian Troha, Henrique Areias Pontes, Sean Sutton, Smitdogg, The Dumping Union]
Over Rev (Model 2B, Revision A) [Dane Biegert, Brian Troha, Henrique Areias Pontes, Sean Sutton, Smitdogg, The Dumping Union]