Commit Graph

2568 Commits

Author SHA1 Message Date
Luke Usher cb29e6d621 Unpatch CreateTexture 2017-07-20 12:46:25 +01:00
Luke Usher 7986a51a2e Merge pull request #508 from PatrickvL/check_palette_caps
Check palette caps
2017-07-19 14:28:35 +01:00
PatrickvL 25fc00ba6d Use paletized textures on systems that support them
Not many systems support paletized textures, so for the majority this
commit doesn't add anythings but a confirmation. But for those that do,
this avoids an unneeded conversion.
2017-07-19 15:05:41 +01:00
PatrickvL d7e1f628b4 Merge remote-tracking branch 'refs/remotes/Cxbx-Reloaded/master' 2017-07-19 14:26:05 +01:00
PatrickvL c63e330c96 Merge pull request #507 from LukeUsher/better-ap-bypass
Implement alternate Anti-Piracy patching
2017-07-19 14:14:54 +02:00
Luke Usher 384f305490 Implement alternate Anti-Piracy patching
This eliminates the need to iterate through the Xbe contents to apply media patches.

This method is the same one used by various 'hacked' kernels to bypass security checks.
2017-07-19 11:52:01 +01:00
Luke Usher 1f52d3843b Merge pull request #506 from PatrickvL/master
KeBugCheck fixups
2017-07-18 16:18:37 +01:00
PatrickvL f038cdcdb7 Call KeBugCheck with hexadecimal error codes and removed for (;;); 2017-07-18 17:08:53 +02:00
PatrickvL cc4a60b30d KfRaiseIrql and KfLowerIrql : call KeBugCheck 2017-07-18 16:16:20 +02:00
PatrickvL 2db429ac0e KeBugCheckEx : Correct spelling 2017-07-18 16:15:56 +02:00
PatrickvL c1c66e31e8 Merge branch 'Cxbx-Reloaded/master' 2017-07-18 14:51:49 +02:00
PatrickvL 8090d040dd Merge pull request #505 from LukeUsher/KeLowerIrql
Add partial implementation of KeLowerIrql
2017-07-18 14:16:06 +02:00
Luke Usher 7c8de3413c Add partial implementation of KeLowerIrql
There should be much less occurances of KeBugCheck being called now!

Verified with various peices of homebrew + XOnline Dashboard
2017-07-18 12:35:55 +01:00
Luke Usher 78f4d067fb Merge pull request #503 from LukeUsher/correct-nv2a-copyright
Correct NV2A Copyright
2017-07-16 21:56:53 +01:00
Luke Usher 23ae56a0f4 Correct NV2A Copyright 2017-07-16 21:55:37 +01:00
PatrickvL 200132bf80 Merge pull request #501 from LukeUsher/function-hooking-instead-of-patching
Function hooking instead of patching
2017-07-13 22:13:17 +02:00
Luke Usher 94f7503415 AppVeyor Fixes 2017-07-13 20:42:58 +01:00
Luke Usher a814277aae Attempt to fix AppVeyor for submodules 2017-07-13 20:37:23 +01:00
Luke Usher c2788743f0 Fix a compilation error in the new GetXboxFunctionPointer function 2017-07-13 20:19:38 +01:00
Luke Usher d52521e27b Rework patching to use Subhook library 2017-07-13 19:47:29 +01:00
Luke Usher 5f2fc6f04c Add subhook to Cxbx-Reloaded project 2017-07-13 19:46:59 +01:00
PatrickvL ccfe819190 Merge pull request #15 from Cxbx-Reloaded/master
Merge doesn't work, trying a Pull Request
2017-07-11 11:22:24 +02:00
PatrickvL 834a389ef0 Merge remote-tracking branch 'refs/remotes/Cxbx-Reloaded/master' 2017-07-11 11:04:33 +02:00
PatrickvL 85c06590a4 Merge pull request #498 from LukeUsher/VBlank
VBlank timing improvements.
2017-07-11 10:16:49 +02:00
Luke Usher 2e19ea132b Prevent the Windows timer resolution from being changed 2017-07-11 08:47:36 +01:00
Luke Usher 3bb19a836d Use SwitchToThread rather than Sleep(0) 2017-07-11 08:44:09 +01:00
Luke Usher ed00f8de17 Split VBlank calculation into it's own function 2017-07-11 08:43:53 +01:00
Luke Usher e24478ee83 VBlank timing improvements.
A titles registered VBlank Callback is called after a (simulated) VBlank imterval has passed. This is better than current behavoir where it is incorrectly called multiple times per frame.

BlockUntilVerticalBlank has been updated to wait for the VBlank counter to increase, rather than wait a set amount of time. This is more accurate in cases where it was called later in the frame, it may not be correct to always wait a whole frames worth of time.
2017-07-10 18:13:10 +01:00
PatrickvL 562e41bc16 Merge pull request #496 from LukeUsher/xboxkrnl-signatures
Xboxkrnl signatures
2017-07-07 20:26:18 +02:00
Luke Usher 0a30436277 Fix a few kernel APIs that were using _cdecl instead of _stdcall (NTAPI) 2017-07-06 22:45:44 +01:00
Luke Usher 3b137d3006 Fix incorrect export number 2017-07-06 08:09:43 +01:00
Luke Usher efe2efdbe9 Include Thunk for NtCreateIoCompletion 2017-07-05 21:29:21 +01:00
Luke Usher 164ca0981d Addressed comments by PatrickvL 2017-07-05 21:27:27 +01:00
Luke Usher 1f10642cb6 Added stubs for All known Ke calls. 2017-07-05 19:56:25 +01:00
PatrickvL 3e8e4acd75 Merge pull request #492 from LukeUsher/xonline-tweaks
Xonline tweaks
2017-06-27 08:25:41 +02:00
Luke Usher bafe542ce3 Restore previous NV2A behavoir 2017-06-23 22:17:14 +01:00
Luke Usher 98b02aadcf Consolidate EmuNVNet_Read/Write handlers into single functions 2017-06-23 21:54:54 +01:00
Luke Usher fb072758d0 Revert "These functions shouldn't be needed either"
This reverts commit 42150ba19e.
2017-06-22 21:02:48 +01:00
Luke Usher 08e2768690 Revert "Removed XNetStartup, we shouldn't really be patching this one."
This reverts commit 6b217af78c.
2017-06-22 21:02:35 +01:00
Luke Usher 75ec726074 HalEnableSystemInterrupt is type VOID. 2017-06-22 20:04:07 +01:00
Luke Usher f65f54dff6 Minor fixes 2017-06-21 22:01:51 +01:00
Luke Usher 42150ba19e These functions shouldn't be needed either 2017-06-21 21:18:31 +01:00
Luke Usher a0d90a4835 Implement Read/Write 8/16 in EmuX86 and EmuNVNet. 2017-06-21 21:06:26 +01:00
Luke Usher 7dd48fd592 Stup out 16/32 bit reads and writes
The previous approach (Forwarding to 32bit) doesn't work well for MMIO.
2017-06-21 20:53:15 +01:00
Luke Usher 5e460fd4c7 Add missing linebreaks 2017-06-21 20:44:09 +01:00
Luke Usher cfeab10856 Add generic NVNet register read/write 2017-06-21 20:43:10 +01:00
Luke Usher 9a22e26e1a EmuX86: Implement CMPXCHG 2017-06-21 11:51:56 +01:00
Luke Usher c234062357 Add AND and OR opcodes to EmuX86 2017-06-21 10:04:03 +01:00
Luke Usher 6b217af78c Removed XNetStartup, we shouldn't really be patching this one.
Note: This currently breaks software that calls it due to missing EmuX86 opcodes and missing NVNet emulation, this branch will work on that
2017-06-21 08:35:23 +01:00
Luke Usher a3b5bab1c3 Added dummy NVNet handlers
At least Network hardware writes no longer get reported as "Unknown"
2017-06-21 08:29:08 +01:00