94 Commits

Author SHA1 Message Date
Connor McLaughlin
65c42cd30e GPU: Don't use field offset for ODE in vblank 2020-05-11 22:26:10 +10:00
Connor McLaughlin
5a1b00825d GPU: Fix timer 1 IRQs sometimes triggering late
Should hopefully fix missing voices in Akuji the Heartless.
2020-04-28 20:31:16 +10:00
Connor McLaughlin
be9033b6c0 SPU: Add missing clamp in ADPCM decoder 2020-04-28 17:55:43 +10:00
Connor McLaughlin
8c6cb877eb GPU: Disable display when CRTC configuration is invalid 2020-04-27 21:49:34 +10:00
Connor McLaughlin
2ffcad3d37 GPU: Add method to convert from window coordinates to beam ticks/lines 2020-04-26 01:22:56 +10:00
Connor McLaughlin
b893c0abf5 GPU/Software: Fix copies when overlapping and oversized 2020-04-20 00:54:50 +10:00
Connor McLaughlin
1757932b3a GPU: Implement FIFO and timings
This will cause a slight performance loss. I've left some knobs in which
can be tweaked to mitigate this, but the goal is to be compatible with
all games which require them.
2020-04-19 01:17:28 +10:00
Connor McLaughlin
7779a54bc5 GPU: Rename 'Force Progressive Scan' to 'Disable Interlacing'
It affects rendering as well as display/scanout now, after all.
2020-04-11 16:37:53 +10:00
Connor McLaughlin
9e024b7a51 GPU: Handle VRAM wrap-around behavior on scanout 2020-04-11 16:09:03 +10:00
Connor McLaughlin
fbfd838e22 GPU: Add pixel aspect ratio option
Can display in 4:3, 16:9, 1:1 ratios.
2020-04-10 15:12:35 +10:00
Connor McLaughlin
3325d2c42c GPU: Add Force NTSC timings option
This option forces NTSC timings for PAL games, causing them to either
run faster (more likely) or smoother (less likely).
2020-04-10 13:35:10 +10:00
Connor McLaughlin
c483a78889 GPU: Implement interlaced VRAM fills 2020-04-04 00:24:37 +10:00
Connor McLaughlin
2aecb570c1 GPU: Implement interlaced rendering in hardware backends 2020-04-04 00:24:37 +10:00
Connor McLaughlin
7f5c6f8b4f GPU/HW: Move some flush checks to command time 2020-04-04 00:10:55 +10:00
Connor McLaughlin
48fba47ee6 GPU: Implement skip-drawing-to-active-field for interlaced mode
Currently only in the software renderer.
2020-04-04 00:10:41 +10:00
Connor McLaughlin
643e429ad2
Merge pull request #211 from ggdrt/patch-0
GPU: Fix "Draw To Display Area" debug reporting
2020-04-02 11:41:09 +10:00
Connor McLaughlin
2a6e04988f GPU/HW: Simplify 24-bit scanout and interlacing shader
Has the added bonus of being faster (no downscale copy) and fixes the
edge case where the image is cropped in VRAM.
2020-04-02 00:17:25 +10:00
Albert Liu
b27e030059 GPU: Fix "Draw To Display Area" debug reporting 2020-04-01 06:10:31 -07:00
Connor McLaughlin
8439e1c54e GPU: Adjust visible ticks/lines, fix underflow in height 2020-03-31 22:28:37 +10:00
Connor McLaughlin
eaf13a1461 GPU: Fix flipped MSB/LSB for single pixel reads 2020-03-30 00:41:31 +10:00
Connor McLaughlin
148279e2f2 GPU: Rewrite CRTC display modeling and overscan handling 2020-03-29 01:14:37 +10:00
Connor McLaughlin
e6d5a9d3e4 GPU: Add missing blitter ticks reset to SoftReset() 2020-03-29 01:13:40 +10:00
Connor McLaughlin
54abd37daa GPU: Let the GPU drive DMA transfers for large time slices
Fixes FMV breakage... again.
2020-03-26 00:13:20 +10:00
Connor McLaughlin
452c6e16d1 GPU: Fix blitter ticks not being counted
Fixes Monkey Hero, again...
2020-03-24 00:21:42 +10:00
Connor McLaughlin
40d6be7142 System: Frame pacing improvements 2020-03-24 00:21:11 +10:00
Connor McLaughlin
e2e2b573c0 GPU/HW: Move drawing offset to CPU-side
Saves updating the uniform buffer.
2020-03-24 00:20:15 +10:00
Connor McLaughlin
904ab982e6 GPU: Fix crash when fill rectangles are out-of-bounds 2020-03-21 00:15:35 +10:00
Connor McLaughlin
d67bcd654c GPU: Prevent emulator locking up when switching between PAL/NTSC mode 2020-03-20 01:12:41 +10:00
Connor McLaughlin
f9a298f1b7 GPU: Fix incorrect handling of check mask bit
Fixes boxes in Silent Hill in Software Renderer.
2020-03-06 00:45:21 +10:00
Connor McLaughlin
34f1c644f5 GPU: Update GPUSTAT if raster has passed to the next line
Fixes games which poll GPUSTAT, including The Next Tetris (Europe).
2020-03-01 17:14:42 +10:00
Connor McLaughlin
b0b1fd8f1a GPU: Timing for CPU->VRAM transfers
Fixes Monkey Hero, probably others.
2020-03-01 17:14:38 +10:00
Connor McLaughlin
6b9c6d3750 GPU: Add a helper function to determine how many GPU ticks are pending 2020-03-01 17:14:32 +10:00
Connor McLaughlin
7412e78aa1 GPU: Move software copy/fill functions to base class so it can be used as fallback 2020-02-29 00:18:33 +10:00
Connor McLaughlin
aa56a59f58 GPU: Make resolution info less spammy 2020-02-28 23:00:37 +10:00
Connor McLaughlin
fcc0ae9571 GPU: Implement "Crop Mode" (none, overscan, all borders) 2020-02-28 17:01:01 +10:00
Connor McLaughlin
82eb14efb1 Core: Apply DPI scaling to debug windows 2020-02-28 16:59:51 +10:00
Connor McLaughlin
9148581213 GPU: Narrowing warning fix 2020-02-16 00:13:57 +09:00
Connor McLaughlin
c820ddba79 HostInterface: Move throttle and perf stats to System class 2020-02-09 22:16:25 +09:00
Connor McLaughlin
88936463d7 GPU: Toggle vblank timer gate for full frame
Regression from event system. Fixes Ridge Racer.
2020-01-30 16:22:05 +10:00
Connor McLaughlin
1b9609ef61 Implement event-based scheduler instead of lock-step components 2020-01-24 16:23:39 +10:00
Connor McLaughlin
71c1e243fe Remove YBaseLib dependency 2020-01-10 13:40:53 +10:00
Connor McLaughlin
c52040434a Core: Linux warning fixes 2020-01-09 08:46:52 +10:00
Connor McLaughlin
f5d65448d6 GPU: Improve structure alignment 2019-12-11 20:28:14 +10:00
Connor McLaughlin
8f624afb59 GPU: Fix handling of GP1(09h) 2019-12-11 16:47:49 +10:00
Connor McLaughlin
ffe90083d3 GPU: Refactor draw mode setting 2019-12-11 16:35:14 +10:00
Connor McLaughlin
df6e079920 GPU: Add a Force Progressive Scan option (disable interlacing) 2019-12-10 22:52:46 +10:00
Connor McLaughlin
8930383c96 GPU: Use start address in computation of drawing_even_line 2019-12-08 00:40:52 +10:00
Connor McLaughlin
9d6d00480c GPU: Implement mask bit handling in software renderer
Still needs implementation in the hardware renderers.
2019-11-24 18:47:42 +10:00
Connor McLaughlin
613e4f4a2a GPU: Set PAL mode on soft reset if region is PAL 2019-11-16 20:52:39 +10:00
Connor McLaughlin
49ab9467df GPU: Set throttle frequency based on mode config 2019-11-16 20:52:39 +10:00