Anthony Pesch
295bb2b870
profile zones for patching
2016-12-03 12:56:27 -08:00
Anthony Pesch
1bc1cebfea
don't try and set a default CMAKE_BUILD_TYPE
2016-12-03 12:56:09 -08:00
Anthony Pesch
6ea5cd3e4a
added new backend-specific dispatch system to each guest cpu
...
made the jit track edges (branches) between basic blocks at runtime
added hand-optimized, backend-specific main loop for each guest cpu
moved code caching responsibilities into each guest cpu's dispatch system
added support for patching static edges between blocks as discovered at runtime to be direct jumps
2016-11-26 23:42:14 -08:00
Anthony Pesch
b07812bb63
windows build fixes
2016-12-02 01:16:01 -08:00
Anthony Pesch
d092b097df
renamed stats aggregate counters, merged back into profiler
2016-11-30 21:59:05 -08:00
Anthony Pesch
25aeafcac4
make flash rom immediately read / write to backing file just like vmu code
2016-11-29 21:38:52 -08:00
Anthony Pesch
4e14eafd71
initial VMU support
2016-11-29 20:15:48 -08:00
Anthony Pesch
74cd15b79f
move time-based stats out of profiler
...
split stats into groups based on cpu / gpu thread so they can be updated safely
2016-11-27 18:26:23 -08:00
Anthony Pesch
c549ee05de
windows build fixes
2016-11-27 14:36:37 -08:00
Anthony Pesch
b208b4b9b3
update xcode image on travis
2016-11-27 10:59:33 -08:00
Leah Petersen
03e4911537
mac compile fixes
2016-11-27 10:50:23 -08:00
Anthony Pesch
0622f10fe0
moved code translation to each guest cpu
...
removed jit_guest, added common members to jit, moved guest specific members to the appropriate frontend
2016-11-26 23:15:54 -08:00
Anthony Pesch
15d6100b59
removed forward decls from sh4
2016-11-26 20:42:54 -08:00
Anthony Pesch
378508dbc0
removed log spam on unmapped button presses
...
added fullscreen toggle to debug menu
2016-11-26 18:15:07 -08:00
Anthony Pesch
ecf548dda6
updated fps, mips, etc. to use new profiler counters
2016-11-26 17:00:06 -08:00
Anthony Pesch
646b108bb7
moved ta rendering into emulator
2016-11-26 12:20:22 -08:00
Anthony Pesch
cd0f94c205
converted sh4 translation macros to functions to avoid duplicate value expansion
...
avoid calling sr_updated when only the T bit changes, reduces calls from 30m/s to 300k/s
2016-11-26 10:37:21 -08:00
Anthony Pesch
c92cba792f
add counter stats that are flipped every second to profiler
2016-11-25 23:47:12 -08:00
Anthony Pesch
ec243174f5
added missing header
2016-11-25 21:48:24 -08:00
Anthony Pesch
bc93773f07
added OP_BRANCH
2016-11-25 21:14:05 -08:00
Anthony Pesch
b6a84d7ae6
renamed OP_LOAD_HOST / OP_STORE_HOST
2016-11-25 21:03:43 -08:00
Anthony Pesch
abd75d7ab5
fixed typo ir_is_int
2016-11-25 20:55:14 -08:00
Anthony Pesch
a700f5d058
avoid spilling values which have already been spilled
2016-11-25 20:44:15 -08:00
Anthony Pesch
1bb85c7c69
updated to latest nuklear
...
added fps, vbs and mips to refactored debug menubar
2016-11-25 19:13:57 -08:00
Anthony Pesch
12a9cc1e35
refactor arm pending interrupt logic so dispatch can handle interrupts if pending_interrupts is non-zero, without having to validate the current CPSR state
2016-11-24 23:01:32 -08:00
Anthony Pesch
b03c800393
stubbed reading of current sample position
2016-11-20 22:58:59 -08:00
Anthony Pesch
0a1302752e
added option to write perf-compatible maps for generated code
2016-11-18 22:57:53 -08:00
Anthony Pesch
3d8f575713
fixed up microprofile implementation
2016-11-17 22:40:44 -08:00
Anthony Pesch
3ecb505748
add LOAD / STORE flags to each sh4 op
2016-11-17 11:39:02 -08:00
Anthony Pesch
835a76559f
relay aica interrupts to arm
...
fix aica channel start / stop logic
fix channel read / write logic
remove hacks to get various games to boot, they now boot correctly due to the arm interpreter
2016-11-17 10:30:03 -08:00
Anthony Pesch
bc8d719a04
ran clang-format
2016-11-16 20:48:18 -08:00
Anthony Pesch
26e1d47900
initial armv3 interpreter
2016-11-16 20:22:43 -08:00
Anthony Pesch
7ec14faed9
fixed overflows in bad comparison predicates
2016-11-07 16:34:24 -08:00
Anthony Pesch
5ec4735c4a
match sh4 frontend prototypes to arm frontend
2016-10-23 20:17:58 -07:00
Anthony Pesch
efa38bae38
fixed bug in strnstr where big was compared past null-terminator
2016-10-23 20:17:15 -07:00
Anthony Pesch
f6c4781f36
remove OP_BRANCH / OP_BRANCH_COND
2016-10-26 22:10:46 -07:00
Anthony Pesch
7e3f067d64
update sh4 block offset masks
2016-10-21 18:44:18 -07:00
Anthony Pesch
7f0989e8e8
added OP_CALL_FALLBACK
2016-10-21 18:37:36 -07:00
Anthony Pesch
3490477976
split up sh4 code into files for each individual module (ccn, dmac, intc, etc.)
...
refactored sh4 code cache into a common jit struct to be used by the arm7 cpu
2016-10-18 23:54:30 -07:00
Anthony Pesch
b4bc578505
moved arm7 source
2016-10-17 21:05:04 -07:00
Anthony Pesch
d356d14569
initial audio scaffolding
2016-10-15 16:13:56 -07:00
Anthony Pesch
a8ab33ede4
moved renderer code
2016-10-15 15:53:05 -07:00
Anthony Pesch
e9093c23a7
aica scaffolding to get channels stepping once keyed on
2016-10-12 21:13:39 -07:00
Anthony Pesch
49272b5de1
aica rtc implementation
2016-10-11 23:25:59 -07:00
Anthony Pesch
3b1536a137
fix crash on exit due to bad munmap call
...
add support for options which are persistent, but not visible to the user (internal program settings)
2016-10-11 21:58:25 -07:00
Anthony Pesch
2e1b8f4c38
reset internal node state inside of rb_link to deal with uninitialized nodes
...
clear watch correctly when processing segfault
2016-10-11 21:42:43 -07:00
Anthony Pesch
74e34692eb
flash rom command parsing
2016-10-09 19:37:17 -07:00
Anthony Pesch
b74152f1e6
move boot / flash roms over to their own devices
2016-10-09 15:48:15 -07:00
Anthony Pesch
07916e5344
raise ta max surf / vert counts
2016-10-08 17:39:06 -07:00
Anthony Pesch
6195a53ee5
added data_mask to mmio callbacks
...
converted mmio callbacks over to all using uint32_t
replaced texcache / fastmem settings with preprocessor defines that disable both for debug builds
2016-10-08 13:49:18 -07:00