6d0f92d4fb
dep/fmt: Bump to v11.0.2
2024-09-03 17:54:43 +10:00
7f4e5d55db
Misc: Update copyright headers
2024-09-01 22:08:31 +10:00
2c27b20090
ImGuiManager: Remove unused function
2024-08-26 18:53:30 +10:00
46a6681159
CDROM: Fix incorrect clamp with seek speedup
...
And bump the minimum time up around 0.29ms or so, hopefully improve
stability in FF7.
2024-08-26 16:45:23 +10:00
86d4d92753
TimingEvents: Switch to 64-bit counters
2024-08-13 23:52:25 +10:00
304f69e350
CDROM: Fix rare interrupt race when cancelling commands
...
Fixes hang during loading in Street Fighter Alpha 3.
2024-08-19 15:11:37 +10:00
55d095174f
CDROM: Defer init completion until after seek
...
Reduces leaky reverb in some games.
2024-08-10 00:13:59 +10:00
d1f0669374
SPU: Ensure all samples are generated prior to DMA write
2024-08-09 12:36:24 +10:00
c97516b01d
CDROM: Further improve seek timing
...
Fixes background music in World Cup 98, background noise in Idol
Promotion - Yumie Island, probably others.
2024-08-09 12:36:24 +10:00
0517aef5bd
CDROM: Don't allow deferred INT1 after Pause ACK
2024-08-06 13:34:11 +10:00
f9079b0151
CDROM: Display XA coding info in debug window
2024-08-04 16:30:04 +10:00
ee538ae0ea
CDROM: Improve resampling quality of 18900hz XA
2024-08-04 16:21:35 +10:00
a2f98541b3
Misc: Slim down some header includes
2024-08-04 14:49:55 +10:00
c2d24f436c
CDROM: Re-enable error-on-seeking-pause behaviour
...
See the comments in the diff. This **will** cause lag in Final Fantasy
VII during preload areas, but that has also been confirmed on console.
Duke Nukem - Total Meltdown does this silly Read -> Pause command chain,
except it sets its data/INT1 callback on the read, but never clears it
after the pause. Therefore, if it doesn't receive at least one sector,
the callback never gets cleared, and when the next read happens, it
stores the "current" callback in the "backup" variable, which should be
null, but now has the callback from the dud read.
The result is any INT1 during XA playback running the dud callback,
which says "hey, I'm not expecting any data, so pause, and stops the
background music playback. Making sure at least one sector from that
silly chain is delivered ensures the callback is cleared, and this does
not happen.
Since the pause first mentioned above will now error out until the first
sector is delievered, the game spams pause until it eventually does
succeed after the INT1. This behaviour has also been verified on
hardware, thanks to rama for the xStation logs.
2024-07-27 14:24:23 +10:00
68575d15a4
CDROM: Shift instead of divide in ZigZagInterpolate
2024-07-23 22:10:04 +10:00
5ec9c8a397
CDROM: Fix handling of 8-bit ADPCM and decoder overruns
...
Fixes pops in menu music in Simple 1500 Series Vol. 92 - The Tozan
RPG - Ginrei no Hasha.
I haven't seen anything that _properly_ uses 8-bit ADPCM yet. The above
game does, but only in the inaudible portion of the start of the track.
2024-07-23 21:54:22 +10:00
52f9e8556a
CDROM: Deactivate command attempt before queueing another
...
Reduces chances of ending up with unordered events.
2024-07-20 22:35:32 +10:00
4f7ddfaae6
TimingEvents: Remove pointer indirection
...
Probably should move this to one big array for locality.
2024-07-19 22:56:41 +10:00
6a920b268e
CDROM: Handle BFRD clears inbetween DMA transfers
...
Fixes disc detection in Metal Gear Solid: Special Missions.
2024-07-19 15:51:25 +10:00
92038da3d5
CDROM: Handle speed change while reading
...
Fixes level music in Croc 2 demo.
2024-07-18 00:31:19 +10:00
f1ca914512
CDROM: Further adjust IRQ delay
...
Fixes audio dropouts in Crime Crackers, Ogre Battle seems fine now as
well.
2024-07-17 20:57:36 +10:00
9392c19a70
CDROM: Handle audio sectors in 2X mode
...
Fixes menu background in 360 Three Sixty.
2024-07-17 20:57:35 +10:00
44b9d16d9f
CDROM: Defer set of autopause track
...
Pitball's menu music starts mid-second, and there's no pregap,
so the first couple of reports are for the previous track.
It doesn't enable autopause until receiving a couple, and it's
actually playing the track it wants.
2024-07-17 20:57:35 +10:00
fb747d6ded
CDROM: Drop setloc on double Play
...
And limit the locations position is updated while seeking.
Fixes menu music in Hot Wheels: Extreme Racing.
2024-07-17 20:57:35 +10:00
0968610ba7
CDROM: Use GSVector
2024-07-03 00:24:12 +10:00
8124fb2ef5
CDROM: Fix incorrect sector dropped log message
2024-06-13 18:35:02 +10:00
8595175267
CDROM: Improve accuracy of sector redelivery on DMA complete
...
Fixes hang in loading in Syphon Filter 2/3.
2024-06-09 19:47:51 +10:00
34861074c1
CDROM: Ensure complete IRQs for Init go through
...
Fixes booting games with OpenBIOS and its Init spam.
2024-06-08 16:58:08 +10:00
7222c21cd9
CDROM: Further refine interrupt delay
2024-05-31 23:59:44 +10:00
d013438810
CDROM: Rewrite BFRD handling
...
Fixes hang on startup in Unirom.
2024-05-31 19:45:42 +10:00
3063101274
CDROM: Implement 0x60 test command
...
Apparently needed for unirom.
2024-05-30 22:34:06 +10:00
25bf2b3adc
CDROM: Clear async interrupt on read/seek start
...
Fixes broken audio in Road Rash.
2024-05-30 20:49:58 +10:00
2ff1f398a3
CDROM: Handle INT1 with pending command
...
Fixes lockup during track playback in Gokujou Parodius Da! Deluxe Pack.
2024-05-25 16:10:09 +10:00
1565a2667d
Misc: More format string fixes
2024-05-25 15:48:31 +10:00
4e922a34a7
Log: Simplify macros
2024-05-24 02:08:14 +10:00
b6d019db66
Misc: Replace log printf calls with fmt
2024-05-24 00:29:49 +10:00
ca3cfbaa99
Misc: Pass string_view by value
2024-05-05 22:28:29 +10:00
71f50566f3
System: Consider pending ticks when using global ticks
2024-04-07 19:01:48 +10:00
de1e5b24fb
CDROM: Don't send reports when subq isn't valid
2024-03-26 01:20:33 +10:00
fa6850902a
CPU: Make interrupts actually edge-triggered
2024-03-18 01:46:19 +10:00
3395853ba2
CDROM: Fix overflow in UpdatePositionWhileSeeking()
2024-03-13 14:14:40 +10:00
7340324ed9
CDROM: Accuracy improvements
2024-02-29 17:00:51 +10:00
79c226efff
SmallString: fmt -> format, format -> sprintf
2023-12-13 21:06:15 +10:00
df91c63b31
CDROM: Add PVD/directory entries to file map
2023-11-30 14:38:38 +10:00
35799aba47
CDROM: Add current file to debug window
2023-11-29 22:01:45 +10:00
cce7be4723
Misc: Make struct member functions file-local
2023-11-18 16:46:11 +10:00
38bc2bd057
CDROM: Add option to choose emulated mechacon version
2023-11-05 14:43:38 +10:00
edae13d9e4
CDROM: Log command parameters
2023-11-05 13:32:25 +10:00
ecb082b672
CDROM: Add NEON implementation of GetPeakVolume()
2023-10-01 17:24:34 +10:00
01e505ec8b
Common: Add intrin.h
2023-10-01 17:24:34 +10:00