Commit Graph

110 Commits

Author SHA1 Message Date
Flyinghead f8372c51a7 Revert "wip headers"
This reverts commit e3e2c3a0d2.
2023-01-24 14:26:14 +01:00
scribam e3e2c3a0d2 wip headers 2023-01-23 18:29:04 +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 84f6bd3fef libretro build fixes 2023-01-09 17:44:40 +01:00
Matt Phillips 7176460de3
External windows serial console (#828)
* Open external console for serial output on Windows

(cherry picked from commit e41a1410b9)

* Compile fix for _UNICODE

(cherry picked from commit 4e6927bd27)
2022-12-15 22:49:20 +01:00
Flyinghead d417237e64 Merge remote-tracking branch 'origin/master' into dev
# Conflicts:
#	core/emulator.cpp
2022-12-06 21:47:50 +01:00
Flyinghead 8001af9743 sh4: proper write masks for memory-mapped registers 2022-12-06 17:58:30 +01:00
scribam f6532ca27a fix some warnings 2022-11-19 12:52:26 +01:00
Flyinghead d736dd027d naomi2: initd card support. lua: fix multi-threading crash
initial d card reader support. insert card button.
lua: use mutex to enforce thread-safety
2022-02-16 19:02:04 +01:00
Flyinghead e5d517dad2 use platform.isConsole(), platform.isNaomi(), ... 2022-01-27 17:52:19 +01:00
Flyinghead 4335aa563f naomi2 WIP 2022-01-16 22:41:42 +01:00
Flyinghead 8f80bcb159 New serialize framework. Delay maple dma xfer
New serialize framework. Refactor serialization into modules.
Maple dma xfer must not be executed immediately. Delay until interrupt
is raised.
Fixes Geist Force freeze at start.
2021-11-13 15:56:42 +01:00
Flyinghead bcc3337c58 cheats: support for bit-level RA codes
log start of address space, RAM, VRAM, audio RAM at boot
fix add cheat dialog layout
don't crash on wrong gdrom unlock code
2021-10-12 17:28:01 +02:00
Flyinghead bc3be1029c fix sh4 scheduler. use common cycle counter in sh4 context
scheduler reset and unregister
schedule requests during reset(), not init()
preserve cntx.sh4_sched_next on sh4 reset
Use cntx.cycle_counter in dynarecs and interpreter
Fixes Confidential Mission hang at boot with HLE
2021-10-07 16:18:32 +02:00
Flyinghead 93eff7fac6 sh4: fix TMU regression
introduced by 05d51cc35c
fixes SA2 running too fast
2021-08-29 11:55:42 +02:00
Flyinghead 05d51cc35c sh4: timer underflow lost if TCOR is 0 or very small
Fixes DreamShell boot
2021-08-27 17:55:50 +02:00
Flyinghead de060d66ab don't save flash if no game started. libretro: fix notifications
compilation warnings, non-functional changes
2021-07-20 19:21:11 +02:00
scribam d6545b253b Misc cleanup 2021-06-06 11:15:06 +02:00
Flyinghead 3a1ae0db00 mmu: fix macos crash. only flush user mem in address lut
force rtt2vram for JSR (custom graffiti)
clean up vmem32 remains
missing host_context.h change
gh action: build sdl from source on macos
2021-05-18 12:53:14 +02:00
Flyinghead 373dffc65a wince: ditch vmem32. use address LUT in dynarec. finer grained flush 2021-05-17 11:59:34 +02:00
Flyinghead da40297810 fix msvc build 2021-05-16 20:18:49 +02:00
Flyinghead 92abf760de unneeded address/value masking. clean up 2021-05-14 21:47:47 +02:00
Flyinghead 1464c02903 mmu: add address cache to mem slow path. better fastmmu hashtable.
mmu: add address cache to Read/WriteMemNoEx
fastmmu: ignore 1k pages. optimize hashtable
get rid of NO_MMU
2021-05-14 19:03:57 +02:00
Flyinghead b3de6a166d area 7 access to sh4 mm registers only through mmu translation
on-chip ram area isn't translated in both user and supervisor modes
vmem: return 0 for non-mapped region reads
Fixes dolphin blue crash/freeze. Issue #62
Fixes Resident Evil - Code Veronica X (Chris) floor 1F crash
2021-04-01 13:30:37 +02:00
Flyinghead 4d815570d0 sh4: define SCI module registers 2021-03-31 19:01:31 +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 0f6dda9cb1 gdb server agent
allow stepping and soft breakpoints
clean up interpreter opcodes
2021-03-23 14:49:19 +01:00
scribam 913fbef952 clang-tidy: run readability-inconsistent-declaration-parameter-name and improve parameter names 2021-03-15 19:52:54 +01:00
scribam ae47ff9875 clang-tidy: run modernize-deprecated-headers 2021-03-13 17:28:32 +01:00
scribam 1cc3490f51 Remove HOST_OS references 2021-03-13 11:38:34 +01:00
Flyinghead 0c8815549c Merge branch 'fh/x64-arm-jit'
# Conflicts:
#	core/hw/aica/aica.cpp
#	core/nullDC.cpp
2021-03-02 19:42:15 +01:00
Flyinghead c3a95594f9 New option system
Fix per-game settings (Issue #115)
Automatic load/save state (Issue #173)
Reload Naomi/AW BIOS after per-game settings are loaded to allow
per-game BIOS region. (Issue #96)
Restrict Soul Reaver widescreen cheat to the EU version (Issue #188)
Disable UI elements for overridden settings
Clean up/simplify legacy Naomi ROM loading
2021-03-01 10:13:40 +01:00
Flyinghead 89fe36b881 arm7 rec: lr wasn't updated in conditional bl
missing changes for previous arm64rec commit
more aica arm tests
wince vmem handler now uses direct ram access
2021-01-31 12:02:20 +01:00
Flyinghead 80782475da x64 rec: get rid of setjmp. standardize ngen_Rewrite/HandleException
move rewrite code from exception handlers to x86/x64 dynarecs
use same host context info on linux/win
x64: stack alignment issue in mem handlers
2021-01-30 16:14:44 +01:00
flyinghead e5b3c5268b wince: attempt immediate read/write when address isn't translated 2021-01-07 19:18: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
Flyinghead 6154cc08db serial: fix maxspeed hang at boot reading from console 2020-12-02 14:44:16 +01:00
Flyinghead 276b59b24e fix compile warnings. non-functional changes 2020-11-25 10:17:08 +01:00
Flyinghead cffb272abd sh4: non-functional changes 2020-11-24 21:29:04 +01:00
Flyinghead fee28194fb savestate: save sq_remap, save aw cart state, fix lr aw format
save AW cart state
save sq_remap used for mini-mmu with store queues
allow loading lr aw savestate. upgrade to v11
aica: saturate EG register
savestate: save current TA data
texcache: fix race condition when deleting a texture
handle 1x1 YUV tex as 565
2020-07-06 16:28:53 +02:00
Flyinghead 74aae115ee sh4: implement C and WT MMU bits in cache. Use mem handlers everywhere
o/icache use C and WT bits from mmu to override cache and copy back
settings (fixes Windows CE)
move mem handlers setup out of mmu into sh4_mem. Call in dc_resume and
detect transitions interp -> dynarec to flush caches.
fix ssa tlb miss exception wih slow mmu
2020-06-24 15:23:47 +02:00
Flyinghead 22dcb1ec99 sh4 ocache implementation. IC and OC address/data read/write in P4
ignore SR.RB in user mode instead of forcing it 0
add STRICT_MODE to enable ocache in interpreter
don't flush mmu table when enabling it
fix fixNan64()
2020-06-12 17:35:14 +02:00
Flyinghead 333df13fce sh4 icache implementation. move aica out of sh4/interp.
revert to original div1 impl
serialize rtc clock value
cmake fixes: asan and logging options, -no-pie on x64/linux
2020-06-09 12:02:01 +02:00
scribam 6ee4b6de85 Replace OS_DARWIN by __APPLE__ 2020-04-26 14:19:21 +02:00
scribam a155282fd0 Cleanup compiler warnings (mostly sign-compare) 2020-03-30 23:00:43 +02:00
scribam c1b37b56bc Remove "sh4_if.h" and "stdclass.h" from "types.h" 2020-03-30 23:00:43 +02:00
scribam 4bf6802855 Cleanup include headers 2020-03-29 14:26:21 +02:00
Flyinghead 333b21fac4 Fix .elf support. Init aica irq mask/level during HLE boot
BSC PCTRA is 32-bit wide
2020-02-05 18:02:44 +01:00