Commit Graph

1228 Commits

Author SHA1 Message Date
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
Connor McLaughlin
1d948a53e0 SPU: Reinitialize transfer event on loading state 2020-04-02 00:17:15 +10:00
Albert Liu
b27e030059 GPU: Fix "Draw To Display Area" debug reporting 2020-04-01 06:10:31 -07:00
Connor McLaughlin
3daa6b469a Build: Explicitly disable spectre mitigations
Mitigations-off gave a roughly 20-25% boost in performance on my laptop
(i7-7700HQ), even with the recompiler.

It seems AppVeyor was building with them enabled. You shouldn't treat an
emulator like a sandbox and run untrusted code in it amyway.
2020-04-01 22:30:19 +10:00
Connor McLaughlin
31581763a3 GPU: Correct starting position for polyline terminator search
Fixes broken visuals in Wild Arms, probably others.
2020-04-01 20:24:57 +10:00
Connor McLaughlin
0eb740a0aa Qt: Add CDROM Enable Region Check option 2020-04-01 14:50:27 +10:00
Connor McLaughlin
9933910312 SDL: Add CDROM Enable Region Check option 2020-04-01 14:50:21 +10:00
Connor McLaughlin
15c33ebedb CDROM: Add "Enable Region Check" option 2020-04-01 01:48:37 +10:00
Connor McLaughlin
e36e70a266 CDROM: Drop sector buffer not read back to dev log level
This happens a lot in games and it's perfectly fine, but sometimes it
can mean the game is wedged and not receiving data.
2020-03-31 22:29:03 +10:00
Connor McLaughlin
f6711cbafa CDROM: Pausing while seeking should be an error response
Confirmed by hardware test.
2020-03-31 22:28:55 +10:00
Connor McLaughlin
00c24c2501 CDROM: Adjust ACK timings to be closer to hardware test results
Fixes Shrek Treasure Hunt.
2020-03-31 22:28:48 +10:00
Connor McLaughlin
8439e1c54e GPU: Adjust visible ticks/lines, fix underflow in height 2020-03-31 22:28:37 +10:00
Connor McLaughlin
6bc91f2157 GPU: Polyline must have at least two vertices
Fixes GPU stream corruption in Lifeforce Tenka.
2020-03-30 13:58:39 +10:00
Connor McLaughlin
eaf13a1461 GPU: Fix flipped MSB/LSB for single pixel reads 2020-03-30 00:41:31 +10:00
Connor McLaughlin
f13cfce34d GPU: Fix incorrect polyline terminator check
Fixes Gran Turismo 2, maybe others.
2020-03-30 00:35:39 +10:00
Connor McLaughlin
a9109c7552 System: Don't insert blank memory card if path unspecified 2020-03-30 00:14:15 +10:00
Connor McLaughlin
3f042cd477 CDROM: Fix play command with parameter forever seeking
Fixes audio playback when selecting track in BIOS CD player.
2020-03-30 00:13:46 +10:00
Connor McLaughlin
3a31282fe6 CDROM: GetTN should return first_track, last_track
Fixes CDDA playback in Street Sk8er, Jellyfish - The Healing Friend,
probably others.
2020-03-30 00:13:42 +10:00
Connor McLaughlin
7ecac6dbcf CDImage: Use track's control instead of last track's control for pregap 2020-03-30 00:13:26 +10:00
Connor McLaughlin
02f67a801e CDROM: Fix behavior of stat bit 5 according to hardware tests 2020-03-29 17:52:37 +10:00
Connor McLaughlin
deb2865606 CDROM: Preserve header valid bit on more commands
Fixes Goryuujin Electro hanging on boot.
2020-03-29 01:16:01 +10:00
Connor McLaughlin
0e0bd2852f CDROM: Trigger INT5 on shell open
This behaviour has been verified on console.

Fixes disc swap detection in "Arc the Lad III"
2020-03-29 01:15:04 +10:00
Connor McLaughlin
2292292956 CDROM: Set mode to read raw sectors after reset
Fixes "This is Football 2", possibly others.
2020-03-29 01:14:58 +10:00
Connor McLaughlin
148279e2f2 GPU: Rewrite CRTC display modeling and overscan handling 2020-03-29 01:14:37 +10:00
Connor McLaughlin
fe824d6c89 GPU: Display VRAM with 1:1 pixel ratio rather than scaling 2020-03-29 01:14:33 +10:00
Connor McLaughlin
21ddfacd40 Settings: Add missing crop mode save 2020-03-29 01:13:53 +10:00
Connor McLaughlin
e6d5a9d3e4 GPU: Add missing blitter ticks reset to SoftReset() 2020-03-29 01:13:40 +10:00
Connor McLaughlin
10197506c5 CDROM: Implement 8-sector buffering behavior 2020-03-29 01:13:25 +10:00
Connor McLaughlin
a988384423 Common/HeapArray: Fix move construction/assignment 2020-03-29 01:13:14 +10:00
Connor McLaughlin
46239e6758 GPU: Fix GP0(1Fh) locking up emulator 2020-03-29 01:12:54 +10:00
Connor McLaughlin
5dbdc0b60c DMA: Remove timing events
We'll probably need to revert/re-add a variant of this when we
eventually implement chopping. But for now it simplifies things.
2020-03-29 01:12:44 +10:00
Connor McLaughlin
423f04325f SPU: Implement timing for RAM reads/writes 2020-03-29 01:12:37 +10:00
Connor McLaughlin
20025b2ffd Qt: Hide mouse cursor in fullscreen mode
Fixes #135.
2020-03-29 01:12:27 +10:00
Connor McLaughlin
22a0d8f93c CDROM: Implement Sync/00h command 2020-03-28 02:24:36 +10:00
Connor McLaughlin
0b347e2151 GPU/HW: Implement flipped quad coordinate hack from beetle-psx
Fixes graphical glitches around the edges of flipped sprites.
2020-03-28 02:24:22 +10:00
Connor McLaughlin
f23bcc0faa SPU: Ignore loop start flag when repeat address is explicitly set
Fixes dialog/softlock in Thousand Arms.
2020-03-27 01:42:59 +10:00
Connor McLaughlin
08ad5aad53 SPU: Run muted voices when IRQ is enabled
Fixes SPU timeout in Casper. We can still optimize for most games where
interrupts are not used by completely ignoring muted voices in those.
2020-03-27 01:42:43 +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
d4ae0f13fe MDEC: Refactoring and fixes 2020-03-26 00:13:07 +10:00
Connor McLaughlin
c81efb1142 DMA: Enable block splitting for linked list mode 2020-03-26 00:13:03 +10:00
Connor McLaughlin
88f1edd48d System: Include console region in save state
Fixes #149.
2020-03-25 01:49:20 +10:00
Connor McLaughlin
7cd7dec668 HostInterface: Restore pause state after switching renderers
Fixes #148.
2020-03-25 01:48:51 +10:00
Connor McLaughlin
18cc3d5932 SPU: Stub out external volume registers
If nothing else, it'll avoid spamming the log.
2020-03-24 00:22:02 +10:00
Connor McLaughlin
7317c83a3c SPU: Implement internal volume sweep register reads
Fixes muted audio in Michelin Rally Masters.
2020-03-24 00:21:52 +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
4c2597acf3 SPU: Process key on/off at next 44100hz cycle
Some games, particularly CART World Series and Monkey Hero, depend on
this behaviour.
2020-03-24 00:21:32 +10:00
Connor McLaughlin
c8af4abad8 CDROM: Don't queue up a second INT1 when one is still pending 2020-03-24 00:21:22 +10:00
Connor McLaughlin
40d6be7142 System: Frame pacing improvements 2020-03-24 00:21:11 +10:00
Connor McLaughlin
cbb9b96537 System: Include buffer swap time in frame time measurement 2020-03-24 00:20:56 +10:00