NOTE1: namcos22 propcycl always pedals backwards now, will resolve in next commit.
NOTE2: diexec.h MAX_INPUT_LINES had to be increased, even without this commit m37710 was already more than 32 input lines.
-change order of include files at top of i386.cpp
-move some routines between i386.cpp and i386priv.h
-move part of x87ops.hxx into new file x87priv.h
.
Now you only have to rename the hxx files to cpp and add the following
at the top of each one
.
#include "emu.h"
#include "i386.h"
#include "i386priv.h"
#include "x87priv.h"
#include "cycles.h"
#include "debugger.h"
#include "debug/debugcpu.h"
#undef i386
* m68kmmu: PMMU improvements (nw)
- handle RW bit in ATC cache properly
- add page table walk that result in BUSERROR to ATC
- fix ptest instruction
- trap if PLOAD is called with MMU disabled on MC68851
- don't skip descriptor status update for page descriptors
- set address in ptest to last descriptor address
- add function code page table lookup
- fix ptest level report in MMU SR
- fix TT register matching (test RW bit, fix masking of bits)
- decode fc field for pload instruction
- fix decoding of pload instruction
* m68kmmu: remove unused variable (nw)
* m68kmmu: abort table search when WP is encountered
* m68kmmu: various improvements
* hp9k_3xx: call MMU buserror handler
* m68kmmu: set M bit if root descriptor is of page type
It seems like at least the 68030 sets the M bit in the MMU SR
if the root descriptor is of PAGE type, so do a logical and
between RW and the root type.
* m68kmmu: fix comment
* m68kmmu: rename descriptor types to more useful names
* m68kmmu: set type for 8 byte table descriptors
* m68kmmu: use iterative approach for table walking
* style (nw)
* fix ptest argument (nw)
* hp9k_3xx: ignore buserror if it's caused by a page table walk (nw)
* m68kmmu: initialize addr_out to 0 (nw)
Otherwise we might return an arbitrary value if ptest can't
find an entry. Shouldn't matter for the OS, but that
change makes at least the compiler happy.
- add virtual methods opcode_cpuid opcode_rdmsr opcode_wrmsr
- default implementations in class i386_device log an error message
- derive Pentium MMX, Pentium II, Pentium III classes from
pentium_pro_device
- remove pentium_msr_* p6_msr_* piv_msr_* MSR_READ MSR_WRITE routines
and call virtual methods instead
- the routine pentium_rdmsr modifies the registers only if the msr is
valid
Previous order of code triggered a state change after
the disconnect, which confused the NETBSD installer. With this
fixed, writing a disklabel to a netbsd chd works.
* ignore unaligned palette select bits in bpp modes > 4
* map some inputs in rad_ping (nw)
* fairly sure these don't use Y index (used in ttv_mx road calcs, although still not correct) (nw)
* dma IRQ allows ttv_lotr and drgqst to run further (nw)
* name fix (nw)
* change irq handling a little (nw)
* timer notes (nw)
* (nw)
* m52 - use multiple palettes and regions instead of kludging into one (nw)
* split alpha1v into different class etc.
* with named regions these comments are redundant (nw)
* (nw)
* duplicated line by mistake (nw)
* this seems plausible (nw)
* fix sprite colours, looks like mpatrol could potentially support 3bpp anyway and the existing kludigng of the sprite clut prom was to save memory
* mark it as working, I'm pretty sure 99% of the badness now is just the game
* TODO note (nw)