Anthony Pesch
93cde7f1d0
restructure main emulator loop to be driven by the amount of audio available in the aica ring buffer ( #1 )
...
made audio backend discard an incoming amount of aica frames proportionate to any silence that was previously written out to keep audio time domain in sync with emulator
2017-01-04 00:45:47 -08:00
gamax92
3f8d06cdf2
Output silence frames when needed
...
Prevent host audio underflow by emitting silence if there is not enoguh audio
This fixes pulseaudio temporarily locking up on underflow
2017-01-03 09:38:12 -07:00
joseph
6b02d045a3
Initial support for punch-through polygons
2017-01-02 17:35:40 -06:00
Anthony Pesch
0c34c7cd9d
avoid race conditions around access to texture entry's dirty state
2017-01-02 23:48:57 -08:00
Anthony Pesch
8419cce2b6
avoid excessive gdrom / aica spam
...
track number of TA startrenders / second
2017-01-02 12:23:47 -08:00
Anthony Pesch
3c5827a12a
fixed texture cache issues caused by games writing to textures between the start and end render events, ultimately leaving textures in the cache which were no longer being watched for updates
...
don't write the same texture multiple times in the same frame when recording traces
2017-01-02 01:24:40 -08:00
Anthony Pesch
1941712797
avoid parsing a frame after the end of frame interrupts have been fired
2017-01-01 20:20:23 -08:00
Anthony Pesch
32a8239132
windows build fixes
2017-01-01 22:06:16 -08:00
Anthony Pesch
febbcc98eb
build fix for latest nuklear
2017-01-01 12:42:46 -08:00
Anthony Pesch
aa78003251
add background to texture menu
2017-01-01 12:35:05 -08:00
Anthony Pesch
0e49f52ce8
updated nuklear dependency to latest, added back TA_PARAM_VERTEX to tracer param list
2016-12-31 14:49:21 -08:00
Anthony Pesch
a3712864de
don't calculate the minz of a surface multiple times when sorting
2016-12-31 10:17:39 -08:00
Anthony Pesch
becf6561cf
temporarily ignore TA_PARAM_VERTEX in tracer view
2016-12-30 23:25:14 -08:00
Anthony Pesch
31a10e09d3
ignore vertical scale factor when used for interlacing
2016-12-30 22:07:22 -08:00
Anthony Pesch
62e0dffe44
added support for twiddled YUV422 textures
2016-12-30 21:34:28 -08:00
Anthony Pesch
dfac9f39ca
fixed logic around detecting a launch error
2016-12-30 16:58:03 -08:00
gamax92
98c50a0d80
Add audio latency option
2016-12-30 17:32:21 -07:00
Anthony Pesch
b2fd497cda
separated T and S bits from sh4 status register into their own context members, sr_t and sr_s, reducing codegen by around 15%
2016-12-30 15:41:29 -08:00
Anthony Pesch
d658bb2bfe
remove SH4_FLAG_SET_T
2016-12-30 14:39:30 -08:00
Anthony Pesch
65d7187d9d
added ASSERT_LT debug ir op
2016-12-30 14:38:48 -08:00
Anthony Pesch
bf22739dd2
aggregate profiler stats every 120 frames by default
2016-12-29 23:13:37 -08:00
Anthony Pesch
f6ccc7b405
render parsed TA polygon lists in predefined order (opaque -> punch through -> translucent) instead of the order they are input
2016-12-29 22:21:02 -08:00
Anthony Pesch
a58afaf7c5
added x64_backend_load_mem / x64_backend_store_mem to cut down on copy and paste
2016-12-29 14:59:53 -08:00
Anthony Pesch
361b98c625
dont rely on explicit uniform layout extension
...
use ifdef instead of if for shader attributes
2016-12-29 11:11:39 -08:00
Anthony Pesch
01e1b3eebc
added fallback SSE support when AVX isn't available
2016-12-29 09:28:12 -08:00
Anthony Pesch
31b3d8cd53
use nk_list_view_* to avoid rendering so many list view items
2016-12-28 22:28:30 -08:00
Anthony Pesch
05a3580bd1
OCI is also read-only
2016-12-28 01:39:52 -08:00
Anthony Pesch
b0826e2385
added initial support for PVR shading instructions
...
added support for use_alpha / ignore_tex_alpha / offset ISP/TSP settings
2016-12-28 01:17:30 -08:00
joseph
19f93bb27d
Add missing 8bpp paletted texture conversions
2016-12-27 22:55:02 -06:00
joseph
3657d9f542
Add missing 4bpp palette texture conversions
2016-12-27 20:23:55 -06:00
Anthony Pesch
2d717d0166
added check for AVX support to x64_backend_create
...
fixed bitrot around shutdown process
2016-12-27 15:37:52 -08:00
Anthony Pesch
9eb56d1ab2
remove remaining bool usage
2016-12-27 14:28:34 -08:00
Anthony Pesch
26e572e8e5
CCR's ICI bit is read-only, this fixes some games constantly resetting the cache when writing to other bits
2016-12-27 08:58:08 -08:00
Anthony Pesch
a87e1c2349
honor SCALER_CTL register, fixes Wacky Races video
2016-12-27 00:45:44 -08:00
Anthony Pesch
361e4ff19b
4 byte writes to SCIPD / MCIPD are also valid
2016-12-26 23:47:33 -08:00
Anthony Pesch
fc4aeb1079
fixed issue with type 4, 6 and 8 vertices where the 16-bit uv were not handled correctly - data is actually packed with v in the lower 8 bits
...
ignore invalid vertices when calculating znear / zfar
added mouse scroll support to nuklear menus
2016-12-26 23:33:38 -08:00
Anthony Pesch
bc1419b32d
calculate texture size correctly for mipmapped and vectorized textures when writing out traces
2016-12-26 19:52:44 -08:00
Anthony Pesch
92c6baf455
added frame marker to tile_context / texture_entry
...
made tile params scroll into view when selecting params with the keyboard
fixed fullscreen ui elements not resizing when the window resized
2016-12-26 14:28:24 -08:00
Anthony Pesch
adc8a82a5a
don't lookup next TA context on each write
...
use list instead of rb_tree for live contexts
2016-12-26 12:13:23 -08:00
Anthony Pesch
6b174f3bac
move vram access to dynamic handler, such that all texture reads / writes go through the same virtual host address, enabling texture caching to only monitor one address per texture
...
fix issue where starting / stopping a trace could corrupt the texture cache
2016-12-24 15:59:48 -08:00
Anthony Pesch
04cd97c4de
fudge z scale a bit more to fix UI rendering in many games
2016-12-24 00:04:55 -08:00
Anthony Pesch
64c1884f2f
ignore post-increment in SH4 memops when rm == rn, the store will overwrite
2016-12-23 22:55:52 -08:00
Anthony Pesch
f3fe32d6ae
updated memory access docs
2016-12-23 01:31:35 -08:00
Anthony Pesch
dfe4304e5c
empty parameters for integer options should be treated as 1
2016-12-22 20:15:40 -08:00
Anthony Pesch
8aa778b650
added log for successful audio backend creation
2016-12-22 20:11:43 -08:00
Anthony Pesch
e261c26ad5
initial guest memory access docs
2016-12-22 01:10:32 -08:00
Anthony Pesch
a1b1175818
fix download links in docs
2016-12-21 00:47:31 -08:00
Anthony Pesch
60648835e0
fix gcc release warning
2016-12-21 00:44:52 -08:00
Anthony Pesch
420b838135
use release configuration for ci builds
2016-12-21 00:01:59 -08:00
Anthony Pesch
87a2bf031c
avoid reentering FIQ handler if it hasn't completed
...
only allow AICA_INT_DATA to be set when writing to SCIPD / MCIPD
2016-12-20 23:46:39 -08:00