Connor McLaughlin
ca0bfc39a2
CDROM: Add a setting and hotkey to mute CD audio
5 years ago
Connor McLaughlin
27697d0508
System: Implement CPU overclocking [SAVEVERSION+]
...
Partial credit to @CookiePLMonster as well.
5 years ago
Connor McLaughlin
b05d80ef5c
CDROM: Don't choke on non-mode2 sectors
...
Fixes Formula One 99 circuit selection.
5 years ago
Connor McLaughlin
db84bdb560
CDROM: Apply 4 sector penalty to ReadN..ReadN sequence
...
Fixes Worms Pinball.
5 years ago
Connor McLaughlin
3847be86b0
Fix a bunch of random warnings
5 years ago
Connor McLaughlin
6bbbb96d4b
Move GameList to FrontendCommon
...
Reduces libretro core dependencies further.
5 years ago
Connor McLaughlin
13e3095801
Core: Don't link to imgui for libretro core
5 years ago
Connor McLaughlin
559dc23e4e
CDROM: Set playing bit in status after starting
...
Fixes menu music in Army Men 3D.
5 years ago
Connor McLaughlin
6d75f42e12
CDROM: Update last subq even when auto-pausing
...
Fixes music looping in Fighting Force.
5 years ago
Connor McLaughlin
466e4099d4
CDROM: Fix handling of logical seeks to audio sectors
...
Fixes Wizard's Harmony.
5 years ago
Connor McLaughlin
b6f871d2b9
JIT optimizations and refactoring ( #675 )
...
* CPU/Recompiler: Use rel32 call where possible for no-args
* JitCodeBuffer: Support using preallocated buffer
* CPU/Recompiler/AArch64: Use bl instead of blr for short branches
* CPU/CodeCache: Allocate recompiler buffer in program space
This means we don't need 64-bit moves for every call out of the
recompiler.
* GTE: Don't store as u16 and load as u32
* CPU/Recompiler: Add methods to emit global load/stores
* GTE: Convert class to namespace
* CPU/Recompiler: Call GTE functions directly
* Settings: Turn into a global variable
* GPU: Replace local pointers with global
* InterruptController: Turn into a global pointer
* System: Replace local pointers with global
* Timers: Turn into a global instance
* DMA: Turn into a global instance
* SPU: Turn into a global instance
* CDROM: Turn into a global instance
* MDEC: Turn into a global instance
* Pad: Turn into a global instance
* SIO: Turn into a global instance
* CDROM: Move audio FIFO to the heap
* CPU/Recompiler: Drop ASMFunctions
No longer needed since we have code in the same 4GB window.
* CPUCodeCache: Turn class into namespace
* Bus: Local pointer -> global pointers
* CPU: Turn class into namespace
* Bus: Turn into namespace
* GTE: Store registers in CPU state struct
Allows relative addressing on ARM.
* CPU/Recompiler: Align code storage to page size
* CPU/Recompiler: Fix relative branches on A64
* HostInterface: Local references to global
* System: Turn into a namespace, move events out
* Add guard pages
* Android: Fix build
5 years ago
Connor McLaughlin
5634e821c5
CDROM: Reset audio decoder state immediately after pause or seek
...
Fixes stuttering dialogue in Dino Crisis (control room at beginning of
game).
5 years ago
Connor McLaughlin
5a34a15bf2
CDROM: Include FIFO size in debug window
5 years ago
Connor McLaughlin
10cd00c8dd
CDROM: Play audio when reading and mode.0 is set
5 years ago
Connor McLaughlin
f28ef01d24
CDROM: Move audio FIFO to CDROM class and skip sectors when unempty
...
Fixes cutscene audio in Nickelodeon Rugrats - Search for Reptar.
5 years ago
Connor McLaughlin
93528db388
System: Use existing CD media when loading state where possible
5 years ago
Connor McLaughlin
6ed67468d2
CDROM: Prevent games which spam Reset from getting wedged
5 years ago
Connor McLaughlin
dbce58e07d
CDROM: Display paused position in debug window
5 years ago
Connor McLaughlin
50a25b63b1
CDROM: Track seek position when resetting
...
Fixes Blasto hanging after starting game.
5 years ago
Connor McLaughlin
c5e8327e7a
CDROM: Seek to LBA 0 when resetting
...
Fixes Love & Destroy.
5 years ago
Connor McLaughlin
71157b171e
CDROM: Use partial seek position when re-seeking
5 years ago
Connor McLaughlin
0710e3b6d3
CDROM: Ignore sectors with channel number=255
...
Some games (Taxi 2 and Blues Blues) have junk audio sectors with a channel number of 255.
We need to skip them otherwise it ends up playing the incorrect file.
TODO: Verify with a hardware test.
5 years ago
Connor McLaughlin
737337a526
CDROM: Fix incorrect sector read after incomplete seek->read
...
Fixes crash in Disney's The Lion King - Simba's Mighty Adventure.
5 years ago
Connor McLaughlin
840a80670f
CDROM: Reset XA resampler on file switch
...
Pure guess work, probably won't affect anything.
5 years ago
Connor McLaughlin
dcfb929de5
CDROM: Fix double-reads hitting incorrect sector again
...
Fixes Bedlem / Rise 2 without breaking Vigilante 8 - 2nd Offense.
6 years ago
Connor McLaughlin
5e7fd5aa71
CDROM: Fix integer overflow in seek timing calculation
6 years ago
Connor McLaughlin
1947080d91
CDROM: GetlocL should return an error while seeking
...
Or more specifically, the coarse seek part. Verified with hardware
tests.
6 years ago
Connor McLaughlin
f856a8ad65
CDROM: Ignore pending setloc after read/play
...
Fixes games which send a second Setloc after reading, e.g. Army Men -
Sarge's Heroes.
6 years ago
Connor McLaughlin
2d067bb101
CDROM: Fix warning log spam on command
6 years ago
Connor McLaughlin
0672cf4873
CDROM: Implement a heuristic for command cancelling
...
See note in source. Fixes loading times and slowed down audio in Voice
Idol Collection - Pool Bar Story.
6 years ago
Connor McLaughlin
a4f79de7f6
CDROM: Return error for incorrect parameter count
6 years ago
Connor McLaughlin
07e8ab4446
CDROM: Increase seek delay by one sector
...
Fixes Resident Evil 2.
6 years ago
Connor McLaughlin
4e8da3cb41
CDROM: Replace sound map assert with error log
...
I am not aware of any games which use it yet, so have no way of testing
if the implementation is correct.
6 years ago
Connor McLaughlin
2dd7f48d97
CDROM: Don't skip pregap for CDDA
...
Fixes music looping in Treasure Gear.
6 years ago
Connor McLaughlin
2264849151
CDROM: Update position when double-seeking
...
Doesn't fix anything I'm aware of, but makes sense.
6 years ago
Connor McLaughlin
1494f2bc75
CDROM: Set m_current_lba to the sector being read
...
Fixes double-read commands returning incorrect sectors.
Fixes Vigilante 8 - 2nd Offense.
6 years ago
Connor McLaughlin
3c7229dfe2
CDROM: Add 3 sectors read time to seek time
...
Simulates the drive's inprecise coarse seek then reading subq to get to
the exact sector.
Fixes Waku Waku Derby.
6 years ago
Connor McLaughlin
d41bf86eaa
CDROM: Don't apply logical seek rules to subq-based seeks
...
Fixes Panekit - Infinitive Crafting Toy Case.
6 years ago
Connor McLaughlin
340640821e
CDROM: Add delay when swapping discs
...
Fixes broken disc swap detection in Metal Gear Solid.
6 years ago
Connor McLaughlin
415880fc40
CDROM: Don't restart play/read when current == target
...
Fixes CDDA locking up Buster Bros. Collection.
6 years ago
Connor McLaughlin
5d46556b7d
CDROM: Update position while seeking for GetlocP
...
Fixes track selection in WipEout.
6 years ago
Connor McLaughlin
214e852a54
CDROM: Add time to read sector to seek time
...
Fixes Yuukyuu Gensoukyoku Ensemble 1.
6 years ago
Connor McLaughlin
110aa8bd93
CDROM: Reset read sector buffer on INT1
...
Fixes GetlocL -> DMA out returning incorrect data.
Fixes FoxKids.com - Micro Maniacs Racing.
6 years ago
Connor McLaughlin
e1157bff65
CDROM: Don't delay CDDA report, only skip index 0
...
Fixes music in Advanced V.G.
6 years ago
Connor McLaughlin
777809b3b0
CDROM: Fix XA filter change not applying immediately
...
Fixes audio getting cut off in PaRappa the Rapper - The Hip Hop Hero,
underwater music in R-Type Delta.
6 years ago
Connor McLaughlin
d6f6154380
CDROM: Read last delivered sector when pausing and reading without seek
...
Fixes Adidas Pro Soccer, Bedlem, Rise 2.
6 years ago
Connor McLaughlin
d866bd9cb8
CDROM: Reset XA resampler state on read
...
Should get rid of pops when switching files.
6 years ago
Connor McLaughlin
37d9f6344d
CDROM: Ignore Read/Play command without setloc/param
...
Fixes title screen music in Monkey Magic.
6 years ago
Connor McLaughlin
684e83168e
CDROM: Prevent successful seeking to the lead-out area of the disc
6 years ago
Connor McLaughlin
5b389ae13d
CDROM: Synthesize lead-out area and stop reading when reached
6 years ago