Commit graph

428 commits

Author SHA1 Message Date
Pedro Cortés
35e314fea5 Project: Update to .NET 9 2024-11-15 18:06:23 +01:00
Pedro Cortés
50130eab6b GPU: Avoid calling unneded GP1_e6 e7 e8 2024-05-20 21:25:05 +02:00
Pedro Cortés
dce289f164 GPU: Only process E1 if it actually changed 2024-05-20 18:56:29 +02:00
Pedro Cortés
d2d7f58a87 VRAM: Remove useless getters
Turns up they appear when profiling...
2024-05-20 18:12:47 +02:00
Pedro Cortés
eb9f7e1915 Project: Update to .NET 8
It really goes brrrrrrr...
2023-11-18 10:46:12 +01:00
Pedro Cortés
8879c1c92a SPU: Wrap overflow ramDataTransferInternalAddress on DMA Load
Monkey Hero tries to DMA at 0x80000
2023-11-05 17:14:43 +01:00
Pedro Cortés
72798c59a4 Project: Bump naudio to 2.2.1 2023-10-15 19:49:13 +02:00
Pedro Cortés
636a223e23 Project: Bump OpenTK to 4.8.1 2023-10-15 19:48:47 +02:00
Pedro Cortés
947a5d96c2 SPU: Fix main volume being too low.
Turns out it's a volume type register (doh!) and it goes -0x4000 to 0x3FFF that needs to be translated to << 1
2023-09-30 19:02:35 +02:00
Pedro Cortés
99f4e95463 CPU: Slow down pipeline on BUS BIOS access.
This is a wild guess on access to BIOS. We gonna need this on the next CDROM refactor as tests actually expect access to BIOS to be real slow.
2023-09-25 12:26:59 +02:00
Pedro Cortés
af63b9606c BUS: Hardcode 1F80_1054 to 0000_0805
Just to mess with unirom/openbios/cdrom tests
2023-09-25 12:20:37 +02:00
Blue
3479510d91 GPU: Fix rect and tri drawingAreaRight/Bottom clipping 2023-06-18 10:06:12 +02:00
Blue
6e396fc725 GPU: Precalc rgbcolor on tris 2023-06-17 15:38:53 +02:00
Blue
ca49137150 GPU: Minor GP0_RenderRectangle refactor 2023-06-16 21:59:49 +02:00
Blue
b6d2760873 CPU: Branchless LWL/LWR SWL/SWR
Even thought on the grand schema of things isnt that important it is still 2x faster than it's switch counter part.
2023-04-10 19:45:07 +02:00
Blue
0a5797ed67 CDROM: Handle CDDA Report
This fixes games that rely on  it.
Doom previously hanging on the loading screen is one example.
2023-03-19 15:40:34 +01:00
Blue
b29440e606 Timers: Sync T1 ClockSource Hblank from GPU 2023-03-19 15:17:15 +01:00
Blue
d009667d64 CDROM: Play CDDA even if mode .0 is disabled
Somehow Vib Ribbon issues Play without setting this flag.
It appears that the flag is only to ignore the missing error detection and correction of CDDA sectors thus enabling it to be Read(N/S).
2023-01-07 10:24:14 +01:00
Blue
6e5315bd95 SPU: Push CDDA samples to capture buffer area even if cdda is disabled
Samples from CDDA will end up on the capture buffer area even if the SPU flag for processig them is disabled.
This is used by Vib Ribbon to read back the CDDA samples as data to generate the levels. And also probably by any equalizer like software if any...
2023-01-07 10:16:25 +01:00
Blue
29488cd92b CDROM: Bump default command delay to 50000
PSX SPX and Jakub's CDROM tests average around 50000 cycles on many commands so set it as default.
Puzzle Fighter is now playable (previously was hanging on boot because cdrom timmings)
2022-12-26 21:56:00 +01:00
Blue
b955d691f0 CDROM: Debug commands dictionary 2022-12-23 21:29:19 +01:00
Blue
a797a25431 Winforms: Make project debugable again
This has been broken since the GDI merge. Somehow on release was working.
2022-12-23 18:27:45 +01:00
Pedro Cortés
2975553082
Merge pull request #24 from BluestormDNA/FF9
Ff9
2022-12-23 18:04:26 +01:00
Blue
73b1bf7998 GPU: Handle 1w xh VRAM reads
This fixes Final Fantasy 9 hang after first combat
2022-12-19 19:33:34 +01:00
Blue
79c6de9c5a DMA: Refactor 2022-12-19 19:30:39 +01:00
Blue
37fabbd057 SPU: Handle ramDataTransferAddressInternal overflow 2022-12-18 00:45:51 +01:00
Blue
8e44e3f9bf DMA: Handle resumable dmas
This makes Final Fantasy 9 playable
2022-12-18 00:43:50 +01:00
Blue
7d1b924bfd DMA: Simplify edgeInterruptTrigger 2022-12-18 00:41:20 +01:00
Blue
adb81d776a MDEC: Support word by word decoding
It passes all Jakub's MDEC tests even though we are not handling actual dma data requests.
2022-12-18 00:39:36 +01:00
Blue
20251d2558 DMA: Handle dma master enable 2022-12-04 19:21:59 +01:00
Blue
c96c95b520 DMA: Support hardwired OTC control bits 2022-12-04 16:51:23 +01:00
Blue
65e55f1137 DMA: Support size 0 transfers being actually size 0x10000 2022-12-04 16:29:31 +01:00
Pedro Cortés
6d64c82979 CPU: Avoid Instr imm and imm_s and 2022-11-25 19:48:41 +01:00
Pedro Cortés
9040eb51ab CDROM: Add basic delayed interrupt handling
Among others things like being able to play cd audio from bios (as it detects the tracks) it makes GT1, RE2 and RE3 playable.
2022-11-25 19:47:19 +01:00
Pedro Cortés
99360876b7 CPU: Remove fun ptr initialization
Turns out the indirection is not always elided and the profiler shows both calls. In the end making all the cpu instructions static and mutating the state is (marginally) faster thought the instruction code is a bit more verbose.
2022-11-13 16:27:33 +01:00
Pedro Cortés
4b82acd688 Project: Update to .NET 7
net7 go brrrrr...
2022-11-12 11:17:01 +01:00
Pedro Cortés
6875834520 OpenTK: Update to 4.7.5 2022-11-12 11:15:23 +01:00
Pedro Cortés
6647174d6f
Merge pull request #23 from BluestormDNA/MicroOptimizations
Micro optimizations
2022-10-07 21:42:33 +02:00
Blue
f77e755df6 VRAM: make H and W const
As multiple of 2 the JIT will drop an IMUL for a plain SHL
2022-10-07 21:40:26 +02:00
Blue
de3935b944 VRAM: Ellide bounds check 2022-10-07 21:33:48 +02:00
Blue
a82e0e003b Ellide bounds checking on pipeline MA and WB 2022-10-07 21:29:47 +02:00
Blue
f726df2c54 Add 1555 to 8888 LUT 2022-10-07 21:25:51 +02:00
Blue
8e0a2bd47e GPU: Flip GpuStat.13 when isVerticalInterlace. Fixes openbios boot. 2022-08-28 17:44:39 +02:00
Blue
f71eec9494 Devices: Add Exp2 2022-08-28 17:42:12 +02:00
Blue
72aeb4fcd9 Winform: Update to Naudio 2.1.0 2022-08-01 22:30:06 +02:00
Blue
d4a4c422d9 OpenTK: Update to 4.7.4 2022-06-25 16:40:39 +02:00
Blue
5e8438a7c1 SPU: Support Reverb 2022-06-25 16:37:09 +02:00
Blue
ed2b7c240e XADPCM: Handle 18900 resampling
It fixes Tony Hawks intro MDEC audio, and Dino Crisis voices being 2x speed.
2022-05-28 12:09:32 +02:00
Blue
31646d8762 ADPCM: Handle shift 9..12 quirk 2022-05-27 21:55:55 +02:00
Blue
824fc838d4 CDROM: Refactor commands 2022-05-27 21:31:42 +02:00