dakotachasesmith
9f715447b1
Make EE JIT actually run the correct number of cycles
...
and don't keep overclocking it over time like I did :)
2019-04-11 22:10:14 -10:00
dakotachasesmith
3e78178525
[EE_JIT64] Implement BGTZ, BLEZ, BLTZ
2019-04-11 22:10:14 -10:00
dakotachasesmith
fb92c49425
Implement BGEZ, also fix negative branch offsets
2019-04-11 22:10:14 -10:00
dakotachasesmith
8fe5fff58f
Implement IR instructions for every EE branch operation
...
Additionally, catch these and error out on the JIT side if not implemented
2019-04-11 22:10:14 -10:00
dakotachasesmith
4513c5810e
[EE JIT] Implement instructions BEQ, JALR, JAL
2019-04-11 22:10:14 -10:00
dakotachasesmith
7c47f66172
[EE JIT] Implement instruction JR
2019-04-11 22:10:14 -10:00
dakotachasesmith
ad7f4a2bad
Various cleanup and fixes, rewrite BNE so it works after first time
2019-04-11 22:10:14 -10:00
dakotachasesmith
bde485fe2a
Fix the implementation of BNE
2019-04-11 22:10:14 -10:00
dakotachasesmith
acc4cf46fd
[EE JIT Translator] Now correctly calculate branch offset for offsets > 2^14
2019-04-11 22:10:14 -10:00
dakotachasesmith
159cbdf9d5
[EE JIT][WIP]Sloppily halfway implement branches(BNE)
2019-04-11 22:10:14 -10:00
dakotachasesmith
d5ae286a1f
Implement EE_JIT64::emit_prologue()
2019-04-11 22:10:14 -10:00
dakotachasesmith
d45aa876bd
Alter project specifications so this builds on Ubuntu, hopefully
2019-04-11 22:10:14 -10:00
dakotachasesmith
92a8c8caf9
EE_JitTranslator: Add framework for translating coprocessor ops
2019-04-11 22:10:14 -10:00
dakotachasesmith
ee16bb7dab
EE_JitTranslator: Add framework for translating subset mmi ops
2019-04-11 22:10:14 -10:00
dakotachasesmith
7df6ff95e3
EE_JitTranslator: Add framework for translating main mmi EE ops
2019-04-11 22:10:14 -10:00
dakotachasesmith
658654d645
EE_JitTranslator: Add framework for translating regimm EE ops
2019-04-11 22:10:14 -10:00
dakotachasesmith
3e1bcfade2
EE_JitTranslator: Add framework for translating core/special EE ops
2019-04-11 22:10:14 -10:00
dakotachasesmith
a4332f8ede
Check for jalr/jr in EE_JitTranslator::is_branch
2019-04-11 22:10:14 -10:00
dakotachasesmith
7bf6782b08
Add recompilation up to branch delay slot in EE JIT
2019-04-11 22:10:14 -10:00
dakotachasesmith
5de8bda871
Some minor changes, fixes, don't pass junk into ee.pc...
2019-04-11 22:10:13 -10:00
dakotachasesmith
f0a015d4ab
Set up cop0/1 friends, ee friend, more JIT work
2019-04-11 22:10:13 -10:00
dakotachasesmith
98bb7bc675
more eedynarec work to make it constantly fallback
...
tho it's completely broken right now :P
2019-04-11 22:10:13 -10:00
dakotachasesmith
278c312434
More foundational work for EE dynarec
2019-04-11 22:10:13 -10:00
dakotachasesmith
f9f762d986
Tentatively add IR enum values
2019-04-11 22:10:13 -10:00
dakotachasesmith
2f7ba6dc89
Create and boilerplate main EE JIT files
2019-04-11 22:10:13 -10:00
PSI-Rockin
55d020e140
Added a hardcoded VTLB implementation
...
RDRAM, BIOS, and SPR can be read from and written to directly on the EE without calling the emulator read/write functions
Next up, TLB remapping
2019-04-11 20:38:55 -04:00
refractionpcsx2
de476a7d7e
Add VU memory reads/writes from DMAC ( #199 )
2019-04-10 19:22:01 -04:00
PSI-Rockin
67b1b1e33a
Basic TLB stub
...
Got TLBWI working, but entries are currently ignored
2019-04-10 19:21:02 -04:00
Souzooka
30ef5ac2be
Change VU_JitTranslator::reset_instr_info so that it clears the entire array ( #196 )
2019-04-09 09:30:10 -04:00
Matt Nadareski
c2ba76f873
Add left analog and screenshot controls to readme ( #195 )
2019-04-09 09:29:55 -04:00
PSI-Rockin
e5054d4177
Add PSMZ32/24 to VRAM->VRAM transfers
2019-04-08 13:39:49 -04:00
Souzooka
9c5f51b097
Add enc_temp_folder to gitignore (VS autorecover) ( #194 )
2019-04-08 13:23:11 -04:00
Kojin
3bfa0ab219
Add linux to the appveyor builds ( #193 )
2019-04-07 15:12:02 -04:00
water111
435c7ac463
add constructors to BlockState for gcc/clang ( #191 )
2019-04-06 10:18:14 -04:00
Souzooka
fe5163ae80
Update .gitignore (ignore VU dynarec logs) ( #190 )
2019-04-05 21:22:25 -04:00
PSI-Rockin
1f185dd229
Adjusting intermittent mode on the GIF
...
True Crime: Streets of LA needs adjustments, as do other games most likely
2019-04-05 19:55:21 -04:00
Souzooka
86532c3eea
Change recompiled VU Jitblock structure from vector to map for faster lookups ( #182 )
2019-04-05 17:47:12 -04:00
refractionpcsx2
a16d8f2d84
Properly adjust VU pipeline on XGKick stall ( #188 )
...
Adjust VU JIT clamping and fix some clamping bugs
2019-04-05 17:43:50 -04:00
Souzooka
dad8697135
Initialize IOP RAM to 0 upon reset ( #189 )
2019-04-05 17:33:49 -04:00
PSI-Rockin
472fd4cb0d
Allow channels to be deactivated when writing 0 to STR
...
Also bump savestate version (for CK)
2019-04-05 17:10:20 -04:00
Souzooka
df3b74d6b4
Switch VU Jit to multiprogram mode ( #187 )
...
This allows the JIT to run without tossing away recompiled blocks when switching programs
2019-04-05 17:01:24 -04:00
PSI-Rockin
4a903d8049
Merge from master
2019-04-04 21:21:16 -04:00
PSI-Rockin
83735aa696
Added arbitration and hooked up all DMAC channels to new system
...
Going into bug fixing mode, Jak doesn't seem to be happy with the changes
2019-04-04 21:16:42 -04:00
refractionpcsx2
707388f4be
VU_JIT: Pass the correct PC at the start of a program ( #186 )
...
-Store branch/ebit state in VU state
-Flush pipes on XGKick stall (assume it's going to take longer than the cycles needed for now)
-Flush mac pipe on program end
2019-04-04 18:55:41 -04:00
PSI-Rockin
2412d16fb8
Got SIF0, SIF1, and GIF DMA working
...
Next up, arbitration
2019-04-04 18:16:12 -04:00
refractionpcsx2
a7329a98b7
Some tweaks to VU0/Mbit Timing ( #183 )
2019-04-04 14:30:05 -04:00
refractionpcsx2
73b907a054
Improvements to COP2/VU0 sync ( #181 )
...
Fixes My Street, Totally Spies, Jak, and Ratchet
Added reading of VIF1_TOP
Added some TODO's and a little bit of tidy up
2019-04-03 16:24:29 -04:00
PSI-Rockin
adaf28b0d1
Start of rewrite
2019-04-02 19:03:10 -04:00
Kojin
e6c86a15ad
Add screenshot functionality ( #179 )
...
Add the ability to take screenshots 2 ways:
- By pressing `f8`
- `Window -> Take Screenshot`
The directory in which screenshots are saved can be changed by the user `Options -> Settings -> Paths -> Screenshots`. When it's not set, it's the user's home directory.
The format of the screenshot filename is as follows:
`yyyyMMddHHmmsszzz.png`.
Currently uses default settings for compression.
PNG used because JPEG is garbage.
2019-04-02 16:04:48 -04:00
Souzooka
1a797e3e1f
implement IOP read32 0x1F808410 ( #180 )
2019-04-02 16:02:58 -04:00