PatrickvL
ae8a008948
NV2A : Initialize OpenGL context before creating NV2A hardware device (because that reaches pgraph_init(), which asserts on glGetIntegerv(GL_MAX_VERTEX_ATTRIBS)
2018-02-19 13:54:32 +01:00
PatrickvL
738a556dc1
NV2A : Made (still disabled) COMPILE_OPENGL path compile
2018-02-19 12:09:11 +01:00
PatrickvL
52f936611b
NV2A : Copy over more nv2a code from OpenXbox/Xqemu
2018-02-19 10:58:26 +01:00
Luke Usher
b2fc99e053
Merge pull request #928 from RadWolfie/fix-hash-update
...
Fix visual update for RCT title
2018-02-19 06:32:26 +00:00
RadWolfie
03f9ce12b5
Fix visual update for RCT title
...
Other titles does not appear to have any fps impact except for Dino
Crysis 3 (it goes away after couple seconds though).
2018-02-18 20:20:42 -06:00
PatrickvL
d6fc60f4c0
Merge pull request #925 from Fisherman166/eeprom_handling
...
EEPROM improvements for issue #198
2018-02-18 23:21:30 +01:00
Luke Usher
78a1a68b47
Merge pull request #926 from PatrickvL/nv2a_pgraph
...
Kernel test suite fixes
2018-02-18 12:19:52 +00:00
PatrickvL
49c2ea5120
Merge pull request #927 from PatrickvL/vertex_patching_fix
...
Avoid accessing uninitialized vertex stream patches
2018-02-18 12:44:35 +01:00
patrickvl
cc3d56dc6a
kernel : NtFreeVirtualMemory returns STATUS_INVALID_PARAMETER when BaseAddress isn't valid
2018-02-18 12:34:09 +01:00
patrickvl
946bb792ec
X86 : Handle MOVSX instruction
2018-02-18 12:18:47 +01:00
patrickvl
5e8126a6f7
Avoid accessing uninitialized vertex stream patches
2018-02-18 11:56:53 +01:00
patrickvl
013093a680
NV2A : Fixed pgraph_lock'ing, so nxdk-compiled "Xbox kernel test suite" runs through pb_init() and pb_show_debug_screen(), reaching the first print ("Kernel Test Suite")!
2018-02-18 11:18:51 +01:00
Fisherman166
d0aaecb4ed
Improvements for issue #198 . Calculate eeprom Section CRC checksum on write. Run data checksum on eeprom read. Add plumbing for thread safety in eeprom reads/writes
2018-02-17 20:28:10 -08:00
PatrickvL
c6a031f3fe
Merge pull request #924 from LukeUsher/vertex-buffer-leask
...
Fix Vertex buffer leaking
2018-02-17 21:02:30 +01:00
Luke Usher
0007be54d9
Add TODO to Vertex Size limit hack
2018-02-17 12:04:00 +00:00
Luke Usher
4ed3d78db4
Fix an oversight in the previous commit, causing hashing to work incorrectly
2018-02-17 12:04:00 +00:00
Luke Usher
a2f727f0a1
Update xxHash to use Hardware CRC32C if available
2018-02-17 12:03:59 +00:00
Luke Usher
ff514d82ee
Should these really have been fatal errors?
2018-02-17 12:01:21 +00:00
Luke Usher
2eb5455048
Introduce EmuFS_RefreshKPCR
...
This is used to validate that the KPCR is valid, and force generation of one, if by some accident, a thread is created without one.
This function can possibly be re-used later for updating thread-specific fields where required too.
2018-02-17 12:01:21 +00:00
Luke Usher
99ed0600fb
Fix a crash in TrueType font XDK sample.
...
- TODO: How/when do we copy writes back to the host backbuffer?
2018-02-17 12:01:21 +00:00
Luke Usher
2300dabe40
Remove some Debugging code
2018-02-17 12:00:30 +00:00
Luke Usher
2cb153fd82
Better explain the VertexBuffer size nasty hack and why it is needed, and what needs to happen before it can be removed.
2018-02-17 12:00:30 +00:00
Luke Usher
9438893ce1
Fix the Dolphin XDK sample
2018-02-17 12:00:30 +00:00
Luke Usher
dc586f8509
Disable a few warnings that are not essential
2018-02-17 12:00:30 +00:00
Luke Usher
cf781e94d5
Fix HUD in Sonic Heroes E3 Demo
2018-02-17 12:00:29 +00:00
Luke Usher
1f7075dbff
Don't create unnecessary host vertex buffers
2018-02-17 12:00:29 +00:00
Luke Usher
0382400ef0
Merge pull request #921 from PatrickvL/kernel_rtl
...
Kernel Rtl
2018-02-17 11:59:55 +00:00
PatrickvL
7ebb492999
Kernel : Rtl indenting cleanup
2018-02-17 11:56:31 +00:00
PatrickvL
7e78691d0d
Kernel : Removed NtDll namespace from files that don't use it
2018-02-17 11:56:31 +00:00
PatrickvL
e15045edcb
Kernel : Replaced NtDll usage in all (but one) Rtl* functions by actual implementations, from various sources (OpenXbox, Wine, ReactOS)
2018-02-17 11:56:31 +00:00
PatrickvL
451dae5987
Kernel : Move Ki* symbols to own files
2018-02-17 11:56:31 +00:00
Luke Usher
52679b9fac
Merge pull request #923 from PatrickvL/NV2A_Split
...
NV2A split
2018-02-17 11:49:59 +00:00
PatrickvL
5e72586c1b
Kernel : Cleaner output for DbgPrint()
2018-02-16 11:38:10 +01:00
PatrickvL
83fcfd8114
Kernel : Log IRQ level as string too.
2018-02-16 11:38:06 +01:00
PatrickvL
55a764ce52
NV2A : Log NV2A messages in similarly to other logging
2018-02-16 11:38:02 +01:00
PatrickvL
00e95be25d
Kernel : Start thread at PASSIVE_LEVEL IRQ level initially (turned up as an RtlAssert warning when running a debug build of the CreateDevice XDK sample)
2018-02-16 11:37:57 +01:00
PatrickvL
53154a84dc
NV2A : Fixed hanging PFIFO (all that was needed, was to lock cache_lock at the start of the while loop in pfifo_puller_thread).
...
Alas, this isn't the end of it, as now LLE ends up calling KeWaitForSingleObject on never ending repeat.
2018-02-16 11:37:53 +01:00
PatrickvL
8d8c9db930
NV2A : Renamed all unique_lock's around cache_lock to cache_unique_lock, to avoid confusion between the two
2018-02-16 11:37:49 +01:00
PatrickvL
dc12ee3119
NV2A : Renamed lock to pgraph_lock, and _lock to pgraph_mutex to avoid confusion
2018-02-16 11:37:45 +01:00
PatrickvL
12f81c0ade
NV2A : Tiny corrections
2018-02-16 11:37:41 +01:00
PatrickvL
eba4a276d5
NV2A : Fixed unactive typo
2018-02-16 11:37:37 +01:00
PatrickvL
953d365886
Merge pull request #20 from LukeUsher/nv2a-split-tweaks Fix lock related crashes
2018-02-16 11:37:32 +01:00
Luke Usher
59371d77ed
Fix lock related crashes
2018-02-16 11:37:28 +01:00
PatrickvL
4716d739e1
NV2A : Renamed `flid_3d` to `flip_3d_cond` (so all condition_variable's have a `_cond` suffix)
2018-02-16 11:37:24 +01:00
PatrickvL
4fb8326384
NV2A : Hide less code behind COMPILE_OPENGL
2018-02-16 11:37:19 +01:00
PatrickvL
dffbb8bb43
NV2A : Updates some code, from a comparison with XQemu
2018-02-16 11:37:15 +01:00
patrickvl
290f1f6036
NV2A : Make m_nv2a_state a pointer type, so that it can be zeroed during construction of the NV2ADevice (memset on the variable caused damage to the mutex-es and condition_variable's, so this is a work-around). A zeroed-out state prevents a crashes early in the unpatched CreateDevice code sequence.
2018-02-16 11:37:11 +01:00
patrickvl
b146b0569f
NV2A : Construct unique_lock mutex wrappers once (and avoid any other use of the mutex'es)
2018-02-16 11:37:07 +01:00
PatrickvL
e3151892e6
NV2A : Name vblank thread too
2018-02-16 11:37:02 +01:00
PatrickvL
57776c9027
NV2A : Trying to fix locking (not very successful atm)
2018-02-16 11:36:58 +01:00