Luke Usher
340a2bddfc
Merge pull request #846 from LukeUsher/disable-pixel-shaders
...
Implement Disable pixel shaders hack
2018-01-10 21:25:27 +00:00
Luke Usher
58e562b753
Add often requested hack to disable pixel shaders
2018-01-10 21:03:52 +00:00
PatrickvL
75a891ca50
Merge pull request #845 from LukeUsher/PCI
...
Skeleton PCI Device Support
2018-01-10 17:08:57 +01:00
PatrickvL
cf94cf8d7b
PCI : Move Xbox hardware initialization towards it's own file
2018-01-10 17:08:55 +01:00
patrickvl
d01441ba86
X86 : One extra OUT marker
2018-01-10 17:08:53 +01:00
patrickvl
fe85e53626
X86 : Refactored retrieval of operand addresses, allowing early detection of writes to immediate values (which are now logged and marked as an opcode-handling failure).
2018-01-10 17:08:51 +01:00
patrickvl
fccf243cb7
X86 : EmuX86_Addr_Read can just return it's resultant value.
...
EmuX86_Opcode_ADD can write it's result to a register, of course.
2018-01-10 17:08:50 +01:00
patrickvl
3c4331ad3f
X86 : Only fail opcode handling if operands can't be decoded.
...
Operand read or write failues won't bail out anymore.
Logging unhandled opcodes separate from opcode handling errors.
Log useless (internal) operand writes (these should never occur)
2018-01-10 17:08:48 +01:00
patrickvl
e7f69b0aaa
D3D : Prevent crashing on cube textures entering EmuUnswizzleTextureStages
2018-01-10 17:08:46 +01:00
patrickvl
68ad85a74c
X86 : Like before, gracefully ignore unaligned accesses
2018-01-10 17:08:44 +01:00
patrickvl
edfee9935d
Simplified child-process debugging
2018-01-10 17:08:43 +01:00
patrickvl
3521300ad8
X86 Nv2A : Use consistent sizes. Also fixed succeeding OUT opcode.
2018-01-10 17:08:41 +01:00
patrickvl
370746412c
X86 :
...
Merged all 8,16, 32 bit (and aligned) read and writes into single implementations.
Centralized retrieving (corrected) operand size.
Return failed writes.
Sped up all opcode-handlers that access operands twice, to retrieve the operand information only once.
2018-01-10 17:08:40 +01:00
patrickvl
48d958ae4a
X86 : Merged al mem writes into one EmuX86_Mem_Write
2018-01-10 17:08:38 +01:00
patrickvl
6e49e049aa
X86 : Merged al mem reads into one EmuX86_Mem_Read
2018-01-10 17:08:37 +01:00
PatrickvL
5fa62fa473
X86 : Avoid size-diverging (and later re-merging) of IO read and write calls
2018-01-10 17:08:35 +01:00
PatrickvL
ec01f039a5
NVNet : Corrected bar order and a typo
2018-01-10 17:08:34 +01:00
PatrickvL
1b579e2c4b
NVNet : Converted into a PCI device
2018-01-10 17:08:32 +01:00
PatrickvL
4d1225e181
X86 belongs in Hardware project-filter too.
2018-01-10 17:08:31 +01:00
PatrickvL
7717dd08df
PCIDevice : Disabled unused symbols
2018-01-10 17:08:29 +01:00
PatrickvL
82ddba3536
PCIBus : Made IOWriteConfigAddress(), IOWriteConfigData() and IOReadConfigData() private, by moving their calls towards the PCIBus itself.
...
X86 : Forwarded 8 and 16 byte IO to PCI bus too.
SMBus : Deny non-byte-sized accesses.
2018-01-10 17:08:28 +01:00
PatrickvL
3754b3b338
SMC : Added LED sequences and HardwareModel, simplified PICVersionString
2018-01-10 17:08:26 +01:00
PatrickvL
3576d5c9e3
SMC : Added notes from Ergo720
2018-01-10 17:08:25 +01:00
PatrickvL
d573d41f18
HalReadSMBusValue & HalWriteSMBusValue : Check for success
2018-01-10 17:08:23 +01:00
PatrickvL
e1a9a95e0a
SMC : Renamed device from PIC16LC (since we're only emulating it at a functional level, not low level).
2018-01-10 17:08:22 +01:00
PatrickvL
a15220f9b8
Fleshed out SMC (PIC16LC) device
2018-01-10 17:08:20 +01:00
PatrickvL
54f3d1e615
PIC16LC (SMC) device stub added
2018-01-10 17:08:19 +01:00
PatrickvL
dcd020a740
SMBus : Moved device-calls into ExecuteTransaction
2018-01-10 17:08:17 +01:00
PatrickvL
b09031810b
SMBus / SMDevice : Change QuickCommand 'read' argument into a bool
2018-01-10 17:08:16 +01:00
Luke Usher
170fec15d9
Fix an issue with MMIO decoding
...
The address field actually contains only the upper 28 bits of the memory address, so we need to shift it by 4.
2018-01-10 17:08:14 +01:00
PatrickvL
93dfbc4546
EEPROMDevice : Applied Luke's code review comments
2018-01-10 17:08:13 +01:00
PatrickvL
85393a63b3
Route HalReadSMBusValue and HalWriteSMBusValue through SMBus device
2018-01-10 17:08:11 +01:00
PatrickvL
c630daacdc
Introduced EEPROM device
2018-01-10 17:08:10 +01:00
PatrickvL
806266c08e
PCIDevice : Fixed two off-by-one errors, and a small iterator-optimization.
2018-01-10 17:08:08 +01:00
PatrickvL
79c276ba75
SMBus : Implemented all device-forwarding functions
2018-01-10 17:08:07 +01:00
Luke Usher
9f6d18d24a
Oops
2018-01-10 17:08:05 +01:00
Luke Usher
dc58bf96ea
Fix issues with MMIO
2018-01-10 17:08:04 +01:00
Luke Usher
3dc100e5f1
Add PCI/SMBus classes/base devices.
...
Note that these intentionally make use of standard types rather than Windows/Cxbx specifics like xbaddr...
These classes are designed to be platform and device independent
2018-01-10 17:08:02 +01:00
Luke Usher
a6fa6ea62a
Remove unused device.h/device.cpp
2018-01-10 17:08:01 +01:00
Luke Usher
53f48c2dc0
Fix an issue where HalReadWritePCISpace would not write to the correct addresses.
2018-01-10 17:07:59 +01:00
PatrickvL
fdb8a2dafd
Merge pull request #844 from x1nixmzeng/hle-cache-hash
...
Hash the HLE database so OOVPA changes force a rescan
2018-01-10 17:07:58 +01:00
x1nixmzeng
4e7a7b5e93
Added notes on the chosen hash
2018-01-10 17:07:56 +01:00
x1nixmzeng
19e0a0e5c5
Added notes on the chosen hash
2018-01-10 17:07:55 +01:00
x1nixmzeng
0fc07154f3
Updated to use a modern array size method
2018-01-10 17:07:53 +01:00
x1nixmzeng
bc36bf0b54
Removed OOVPA count suffix
2018-01-10 17:07:51 +01:00
x1nixmzeng
13a2feb55c
Hash the HLECache table
...
Workaround for #836
2018-01-10 17:07:18 +01:00
x1nixmzeng
7d124986fa
Updated HLEData to store the table count, not size
...
Count was always inferred and OOVPATable is a constant size (as the
OOVPA type is a pointer)
2018-01-10 17:07:16 +01:00
Luke Usher
d2edfb10b9
Prep for Pixel Shaders Disable Hack
...
- Implements error checking/default value enforcement on registry reads
- Adds a new option (currently does nothing) for enabling the hack.
2018-01-10 11:34:05 +00:00
PatrickvL
262ab1b5a5
Merge pull request #845 from LukeUsher/PCI
...
Skeleton PCI Device Support
2018-01-10 11:52:01 +01:00
PatrickvL
0d19738282
PCI : Move Xbox hardware initialization towards it's own file
2018-01-10 09:25:29 +00:00