Flyinghead
e327172fd0
sh4: check access length when getting a ram pointer with GetMemPtr
...
Check access length and return nullptr if overflowing ram.
Fix ch2-dma code accordingly.
Fixes MINIDUMP-GX
2023-04-09 20:47:12 +02:00
Flyinghead
afc1f5f4e1
Merge remote-tracking branch 'origin/master' into dev
2023-03-15 21:09:47 +01:00
Flyinghead
b8d47fe0a8
sh4 dmac: more accurate implementation. Fixes sh4_dmac_demo.elf
2023-03-07 18:38:41 +01:00
Flyinghead
67bba95dd1
dmac: set DMAOR.AE and raised interrupt if ch2 address error
...
Fixes crackin'dj 1 & 2 freeze at boot
Regression introduced by 66eb08f2d1
2023-03-06 10:26:52 +01:00
scribam
d8137a967c
C++17 ( #926 )
...
* cmake: use c++17
* Use std::size
* Use std::make_unique
* Use std::clamp
* Use structured binding
* Use [[fallthrough]]
* Use enable_if_t/is_enum_v/is_integral_v/is_same_v
* Use if constexpr
* Use try_emplace
* Use auto for iterators
* Use inline variables
2023-02-18 13:24:34 +01:00
Flyinghead
099a758c94
hw: new hardware register implementation
...
used for sh4 mm registers and holly
ignore incorrect size reads and writes
separate data and read/write handlers
2023-02-10 12:51:36 +01:00
Flyinghead
66eb08f2d1
sh4: check that dma-ch2 source address is in ram
...
Force real BIOS for Force Five dc conversion
Fix for MINIDUMP-2W
2023-01-13 09:28:45 +01:00
Flyinghead
8001af9743
sh4: proper write masks for memory-mapped registers
2022-12-06 17:58:30 +01:00
Flyinghead
92abf760de
unneeded address/value masking. clean up
2021-05-14 21:47:47 +02:00
Flyinghead
569c23ca95
pvr: use pvr_read32p/pvr_write32p to access 32b vram
2021-03-28 20:08:02 +02:00
Flyinghead
6b11674949
use aligned struct for sqbuffers and sh4 context
...
serialize YUV_index
remove bogus arm32 TAWriteSQ implementation
2021-03-23 16:07:53 +01:00
Flyinghead
632731bede
vmem: map area 4 access to vram
...
pass DDT0101 diag test
fix vmem handler bug with >= 8 handlers
ch2-DMA: use SB_LMMODE1 for upper mirror
dmac: update SAR and DAR according to CHCR.SM and CHCR.DM
use function templates for vram 32b handlers
clean up
2020-12-20 17:25:28 +01:00
Flyinghead
0d81c9fb0b
sh4: clean dmac module, correct address/len mask, add missing mirror
...
fix infinite loop
2020-12-18 13:58:36 +01:00
scribam
a155282fd0
Cleanup compiler warnings (mostly sign-compare)
2020-03-30 23:00:43 +02:00
scribam
4bf6802855
Cleanup include headers
2020-03-29 14:26:21 +02:00
Flyinghead
0e12da4395
DMAC: Add LMMODE1 for ch2-dma, add basic DMAC based dma support
...
backport from upstream
clean up
2019-11-03 21:22:46 +01:00
Flyinghead
35cd1fcf14
sh4: use new logging
2019-07-01 15:22:04 +02:00
Flyinghead
d82e5e2017
don't use mmu for dma
2019-04-18 22:48:37 +02:00
Flyinghead
e5b18cd8a0
wince: implement pref SQ to YUV converter and 32bit vram
...
implement incremental YUV conversion with pref SQ
implement access to 32bit VRAM with pref SQ
init YUV converter when TA_YUV_TEX_CTRL is set
set FIFO available space to 256 through SB_TFREM reg
fake FIFO status through SB_FFST reg
2019-03-14 21:35:33 +01:00
Flyinghead
0d0fd212ff
Implement Ch2 DMA to 32-bit VRAM
...
Fixes Giana's Return
2019-03-08 13:23:51 +01:00
Flyinghead
7ce4fccb37
Merge remote-tracking branch 'origin/master' into fh/mymaster
2018-09-20 17:28:41 +02:00
Ender's Games
e5c0f0ee71
https://code.google.com/p/nulldc/source/detail?r=108
...
Originally ported from nullDC to libretro in commits:
2fa562db1b46c52b663b3dd4bb33a64907357458
f8eb58ac16a9e5adf662b99be5d00729264808e0
Modified for use w/ reicast per-game configuration
2018-08-22 21:14:02 -04:00
Stefanos Kornilios Mitsis Poiitidis
f5d29677b3
Merge branch 'androidui'
...
Conflicts:
core/hw/pvr/spg.cpp
core/hw/sh4/interpr/sh4_interpreter.cpp
reicast/android/src/com/reicast/emulator/MainActivity.java
2013-12-28 22:28:50 +01:00
Stefanos Kornilios Mitsis Poiitidis
7ef9de3cae
Moving code around, cleanups
2013-12-28 22:20:08 +01:00