gibbed
faa67028ce
Mystery GPU registers.
2013-10-27 18:44:20 -07:00
gibbed
8306be77b0
Fixed constant tracking through mr.
2013-10-27 18:44:20 -07:00
Ben Vanik
2de906f3d6
Hacking around with shaders. Pretty sure this is all wrong.
2013-10-27 18:33:50 -07:00
Ben Vanik
0355047838
PM4_LOAD_ALU_CONSTANT
2013-10-27 16:18:54 -07:00
Ben Vanik
7d6dda356c
Clear all allocated memory.
2013-10-27 16:01:35 -07:00
Ben Vanik
74ff6bd4fa
Finally figured out the ringbufer corruption.
2013-10-27 16:00:51 -07:00
Ben Vanik
11f99ce33b
Obeying request to zero.
2013-10-27 12:47:00 -07:00
Ben Vanik
6477d6c21e
--scribble_heap, which memsets all allocated memory.
...
Already exposing bugs.
2013-10-27 12:06:02 -07:00
Ben Vanik
082df81f70
Slowing down the audio system until it does something.
2013-10-27 12:05:17 -07:00
Ben Vanik
692e14665c
Tie FPR/VR tracing to --trace_registers
2013-10-25 23:32:11 -07:00
Ben Vanik
3b7fcced0e
Fixing broken error check and adding some manual breakpoints.
2013-10-23 23:48:18 -07:00
Ben Vanik
655a486db3
NtResumeThread
2013-10-23 23:32:44 -07:00
Ben Vanik
ebef2aef36
Adding audio stub methods.
2013-10-23 23:09:16 -07:00
Ben Vanik
ca22980dc0
XInput polling.
2013-10-23 22:42:48 -07:00
Ben Vanik
96daa6b43f
Validate arguments on input.
2013-10-23 22:23:52 -07:00
Ben Vanik
c4fe2e6926
Input bouncing through to input system.
2013-10-23 22:13:05 -07:00
Ben Vanik
74803ae174
HID system skeleton.
2013-10-23 21:47:36 -07:00
Ben Vanik
20bd15e7fe
Partially fixing import logging. Still not sure why vars aren't showing.
2013-10-23 21:11:13 -07:00
Ben Vanik
93e4b70133
Stubbing input a little better.
2013-10-23 21:10:41 -07:00
Ben Vanik
6e60aef72f
Special register check for lwbrx. Need a scalable way to do this.
2013-10-23 21:10:26 -07:00
Ben Vanik
b7ffd46319
Massive refactoring of all code + audio skeleton.
...
This should make it easier to find files and (in the future) split things
up into separate libraries.
It also changes around emulator initialization to make it a little more
difficult to do things out of order and a little more sensible as to when
real init work happens.
Also adding a skeleton audio system/driver and reworking CPU register
access to be more extensible.
2013-10-23 20:42:24 -07:00
Ben Vanik
c996a4bbaf
Stubs for more XAM functions.
2013-10-23 00:05:50 -07:00
Ben Vanik
60ef171ff2
XNetStartup/WSAStartup stubs.
2013-10-22 23:46:42 -07:00
Ben Vanik
447ce90b7b
MmQueryAddressProtect.
2013-10-22 23:34:24 -07:00
Ben Vanik
2a8a19e4be
KeDelayExecutionThread.
2013-10-22 23:22:30 -07:00
Ben Vanik
d9a55a5557
Zero memory on alloc.
2013-10-22 21:50:10 -07:00
Ben Vanik
d065ee43e8
PM4_SET_CONSTANT for registers.
2013-10-22 21:32:04 -07:00
Ben Vanik
157cfd4d71
Moving all physical allocs to A..., as games do stupid stuff when at E.
2013-10-22 21:06:12 -07:00
Ben Vanik
62d4d5ce84
Randomly messing with address translation. Still not right.
2013-10-22 21:05:56 -07:00
Ben Vanik
d4e19eb583
Certain games seem to do GPU writeback here.
2013-10-22 21:05:32 -07:00
Ben Vanik
e0b6d0f689
Cleaning up packet reading/endianness.
2013-10-22 20:47:27 -07:00
Ben Vanik
725cde55d4
Moving the physical heap up a bit to avoid overwriting 0x0.
2013-10-21 23:56:16 -07:00
Ben Vanik
f676333ef0
Stub MmQueryAddressProtect - unimplemented.
2013-10-21 21:58:45 -07:00
Ben Vanik
f9dd0b0cb2
Allocate physical memory.
2013-10-21 19:28:25 -07:00
Ben Vanik
1fea07b6aa
Align physical allocations to page size.
2013-10-21 19:26:41 -07:00
Ben Vanik
aa3e8d0332
Allocating things in a physical heap. Super wasteful right now.
2013-10-21 00:59:11 -07:00
gibbed
ea022c8dd3
That one byte is totally important.
2013-10-21 00:39:39 -07:00
Ben Vanik
ca208fa60a
Rewrote memory manager to use a bunch of mapped views.
2013-10-20 23:19:57 -07:00
Ben Vanik
d00f4d58e9
Better byte swapping in ringbuffer and fixed logging.
2013-10-20 18:34:46 -07:00
Ben Vanik
42a8fc0b59
--break_on_instruction=0x... and --break_on_memory=0x...
2013-10-20 16:54:59 -07:00
Ben Vanik
cddab7ffb0
Fixing free.
2013-10-20 15:28:00 -07:00
Ben Vanik
0c19516de4
Fixing file position default value.
2013-10-20 15:05:09 -07:00
Ben Vanik
e919edfb33
Fix xe_memory_is_valid.
2013-10-20 13:47:58 -07:00
Ben Vanik
9f1d2f29c1
--heap_guard_pages=1 to add guard pages.
2013-10-20 13:42:34 -07:00
Ben Vanik
ca3f2f1367
Malloc inspect in release mode, too.
2013-10-20 12:46:28 -07:00
Ben Vanik
002400d071
Adding memory info dumping utility, use --log_heap.
2013-10-20 12:39:59 -07:00
Ben Vanik
fbea5a6394
Making the GPU counter a vblank counter, not a timer.
2013-10-20 02:00:51 -07:00
Ben Vanik
39adeef2e3
Hiding vertex/index data for now.
2013-10-20 01:59:42 -07:00
Ben Vanik
92899739bd
Index buffer upload.
2013-10-20 00:47:32 -07:00
Ben Vanik
5a80c7b9c1
Hacking shaders to get dummy texture colors and such.
2013-10-20 00:20:36 -07:00
Ben Vanik
737a567de6
Fixing code_addr_low_.
2013-10-19 22:31:08 -07:00
Ben Vanik
889e586cab
Skeleton for new draw type and texture fetching.
2013-10-19 21:49:25 -07:00
Ben Vanik
bdf5bf20a4
vminfp/vmaxfp
2013-10-19 21:26:40 -07:00
Ben Vanik
2cce46c232
vsel/vsel128
2013-10-19 21:20:27 -07:00
Ben Vanik
d62e8aaf78
lhbrx/lwbrx/ldbrx/sthbrx/stwbrx/stdbrx
2013-10-19 21:05:06 -07:00
Ben Vanik
d60cf676c3
addmex
2013-10-19 20:57:24 -07:00
Ben Vanik
5b91ba89e9
Fixing stdux/stdx o_o
2013-10-19 20:57:19 -07:00
Ben Vanik
62b792c903
Ignoring a packet I don't care about.
2013-10-19 20:30:36 -07:00
Ben Vanik
7ae2d410e5
addex. All of these are wrong - let's hope we don't overflow.
2013-10-19 20:29:19 -07:00
Ben Vanik
4e6799197f
fsqrtx/fsqrtsx
2013-10-19 20:25:03 -07:00
Ben Vanik
e842a6614a
Fixing LR argument for indirect branches.
2013-10-19 19:59:09 -07:00
Ben Vanik
10c69cfaf2
rlwnmx
2013-10-19 19:07:26 -07:00
Ben Vanik
807b949fea
Seeing code returning to the execution thunk, something must have broken.
2013-10-19 19:03:47 -07:00
Ben Vanik
4a72010e5f
addcx
2013-10-19 19:03:30 -07:00
Ben Vanik
fc1be2bfd8
rldimix
2013-10-19 18:54:36 -07:00
Ben Vanik
14b1c860b9
subfmex/subfzex.
2013-10-19 18:33:32 -07:00
Ben Vanik
b8edeba195
Actually aligning physical alloc requests.
2013-10-19 18:18:19 -07:00
gibbed
49ee9d05b9
Fixed LR branching.
2013-10-19 17:09:48 -07:00
Ben Vanik
7b0ca71bfb
Fixing broken test.
2013-10-19 17:08:34 -07:00
Ben Vanik
68d5f33cfa
GPU byte swapping.
...
A lot of other packets likely do this.
2013-10-19 16:29:00 -07:00
gibbed
f15b5dae9d
I think this is right.
2013-10-19 15:07:59 -07:00
Ben Vanik
f7ad9c89dd
Messing with stvlx.
2013-10-19 14:36:32 -07:00
Ben Vanik
91e6c4ed9a
Adding address mask to stvlx.
2013-10-19 14:29:14 -07:00
Ben Vanik
31161e0245
SHUFPS_SWAP_DWORDS to make it easier to tell what it's doing.
2013-10-19 14:21:56 -07:00
Ben Vanik
5df538cd44
Adding stack alignment check. We aren't 16b aligned right now. Fuck.
2013-10-19 14:16:34 -07:00
Ben Vanik
007f7e371d
Workaround for yet another AsmJit bug. Sigh.
2013-10-19 12:50:42 -07:00
Ben Vanik
37065255a2
Dispatching interrupts.
2013-10-19 12:50:26 -07:00
Ben Vanik
90bc6ad1a8
Interrupts fire on the right 'thread', ringbuffer work,
2013-10-19 11:50:01 -07:00
Ben Vanik
6db8c6c961
Implementing thread state block access.
2013-10-19 02:53:14 -07:00
gibbed
32a0045001
This is probably better.
2013-10-19 01:18:18 -07:00
Ben Vanik
c60230f28a
Implementing scratch registers correctly (I think).
2013-10-19 01:16:13 -07:00
Ben Vanik
1616d7ba22
WAIT_MEM_REG, REG_RMW (untested), COND_WRITE
2013-10-19 00:46:35 -07:00
Ben Vanik
a63db2b7fd
Dispatch interrupt outside of main pump.
2013-10-19 00:46:11 -07:00
Ben Vanik
562c86f76d
Extending critical sections to spin forever for now.
2013-10-18 21:55:43 -07:00
Ben Vanik
01a94f3850
VdGetSystemCommandBuffer stub.
2013-10-18 21:39:29 -07:00
Ben Vanik
0746e6feb2
ldarx/lwarx/stdcx/stwcx. Probably.
2013-10-18 21:17:20 -07:00
Ben Vanik
f2550bd017
KeEnterCriticalRegion/KeLeaveCriticalRegion.
2013-10-18 19:49:51 -07:00
Ben Vanik
6a02ae3768
KfAcquireSpinLock/KfReleaesSpinLock.
2013-10-18 19:11:37 -07:00
Ben Vanik
28e7102a02
Always dump CPU info and assert our dummy thread value is legit.
2013-10-18 18:56:59 -07:00
Ben Vanik
d3665cc2e6
Support for VS2013 (and auto picking), a Win xb script, and readme updates.
...
This also removes the dependency on D3DX, which is only included in the
DXSDK, meaning that just the Win8+ SDK should be required now.
2013-10-17 23:35:54 -07:00
Ben Vanik
ff54a04aa1
asmjit fixes.
2013-10-17 14:03:26 -07:00
Ben Vanik
20720f750d
KeSetAffinityThread stub, Ob* fns added, current thread handled.
2013-10-17 00:47:02 -07:00
Ben Vanik
7bf6992203
NtSetEvent/NtWaitForSingleObjectEx.
2013-10-16 23:04:52 -07:00
Ben Vanik
1b12949dd2
NtQueryFullAttributesFile.
2013-10-16 22:41:31 -07:00
Ben Vanik
fd1054d823
NtSetInformationFile for seek position.
2013-10-16 22:28:26 -07:00
Ben Vanik
5de9b84904
Fixing line endings.
...
Need to run a script to do this...
2013-10-16 22:22:17 -07:00
Ben Vanik
a41827942e
Some NtQueryInformation classes.
2013-10-16 22:20:24 -07:00
gibbed
956496fb99
Added KeBugCheck and KeBugCheckEx.
2013-10-16 22:08:41 -07:00
Ben Vanik
ab1ba9a508
Partially implemented NtQueryFullAttributes.
...
Enough to get past the ShaderDump test most games seem to do.
2013-10-16 21:32:53 -07:00
Ben Vanik
c53db98517
Locking around some JIT stuff.
...
Excessive for now, but safer.
2013-10-16 21:32:20 -07:00