Flyinghead
04999d8969
sh4: fix wince api trace calls
2025-06-21 10:25:52 +02:00
Flyinghead
26b8684e78
serial: don't depend on SerialPTY option on windows
...
On windows, open serial console window when config::SerialConsole is
enabled. Ignore config::SerialPTY.
2025-06-21 10:23:22 +02:00
Isaac Marovitz
5a110fd666
Replace sprintf with snprintf ( #1884 )
...
Signed-off-by: Isaac Marovitz <isaacryu@icloud.com>
2025-03-25 18:47:07 +01:00
Flyinghead
667e3906d8
sh4: work around previous SCIF issues when loading a state
...
Force SCIF_SCBRR2 to 8 bits when loading a state.
See e03e11b8a9
and
6115a918b2
.
2024-12-14 19:13:05 +01:00
Flyinghead
bb1b1059d4
sh4: SCIF DR bit can't be reset if rx fifo isn't empty
...
Fixes manic panic periodic touchscreen errors.
2024-12-11 10:37:48 +01:00
Flyinghead
db846ca933
sh4: pass context to interpreter funcs. get rid of sh4 regs #define
2024-11-08 18:36:08 +01:00
Flyinghead
93ae9d0375
sh4: refactor interpreter and recompiler with Sh4Executor interface
2024-11-07 18:14:18 +01:00
Flyinghead
897e06b887
sh4: refactor GetDR/SetDR and access to fp registers
2024-11-06 19:26:04 +01:00
Flyinghead
de6a43bd21
savestate: drop support for legacy libretro and <v16 savestates
2024-04-16 09:40:55 +02:00
Flyinghead
06a6e26588
get rid of os_GetSeconds()
...
replace it with std::chrono-based getTimeMs()
2024-04-11 15:25:25 +02:00
Flyinghead
391da7023f
sh4: fix SCIF serialization
...
Fixes MINIDUMP-2M0
Add some diag logging to win_vmem
2024-03-04 17:02:42 +01:00
scribam
6aa59c54a5
Minor misc changes ( #1360 )
...
* core: cleanup include headers
* dx11: remove unimplemented function
* core: annotate destructors with override
* aica: use range-based for loop
* bm: use const reference/structured bindings with blkmap
2024-01-02 14:38:16 +01:00
scribam
e057370e97
core: add missing pragma once to header files
2023-12-17 11:12:20 +01:00
Flyinghead
ce4a3a7147
scif: always schedule timer when updating baud rate
...
Old savestates don't have any callback set, and read only devices
(barcode readers) won't schedule any either
UI message when r/w card is ejected
2023-12-03 18:22:52 +01:00
scribam
db7895cea5
Some ifdefs to improve builds ( #1325 )
...
* mmu: hide some jit and fast mmu functions behind ifdef
* linux: move log to the correct place
2023-12-01 15:03:59 +01:00
Flyinghead
cb518b5481
serial: fix RDF and TDFE status bits
...
RDF and TDFE can't be reset if tx/rx fifo is below/above trigger
Remove rx overrun check
Proper reset of scif state
Fixes maxspeed, vonot and hell gate battle cable.
Tetris connects but still has input responsiveness issues.
sh4 mmr: use unnamed bitfields
2023-11-25 17:06:45 +01:00
Flyinghead
4efacd7d71
Battle cable support
...
work in progress
f355 and aero dancing seem to work
vonot and tetris don't
maxspeed is broken
2023-11-23 16:40:20 +01:00
Flyinghead
b7d923e02b
maple: clear mapleDmaOut on reset. Other reset issues
...
mapleDmaOut wasn't reset, causing crashes or freezes in subsequent runs
Issue #1253
reset YUV state, pvr tile clip, MMU sq_remap, sh4 sq_buffer and more
2023-10-20 16:15:42 +02:00
Flyinghead
0ac483acfc
sh4 dynarec refactoring
...
sh4 code buffer class
dynarec interface and implementations
2023-09-12 16:52:25 +02:00
Flyinghead
129fff1c2a
naomi: x76f100 and at93cxx implementation. naomi2 elan fix
...
proper emulation of x76f100 security eeprom and at93cxx serial eeprom
elan: don't reset projection matrix at end of frame. Issue #1177
2023-08-25 17:01:40 +02:00
Flyinghead
7061c043d9
naomi: derbyocw card support. serial pipes refactoring. systemsp fixes
...
common interface for most serial pipes
jvs: MIE RS422 port support
card reader: allow reading/writing of individual tracks
systemsp: fix interrupt handling. refactor serial ports. isshoni wanwan
puppy touchscreen support
2023-07-26 21:34:03 +02:00
Flyinghead
b47f4f56ef
user-defined literals: _KB, _MB, _GB
2023-07-01 14:31:25 +02:00
Flyinghead
aad4921e09
picotcp: fix kos ppp nego. modem,bba: fix kos detection
...
picotcp: ignore conf ack received when lcp layer is up (kos ppp)
picotcp: ignore icmp ping seq and id #
scheduler: add void * arg to callback function. Get rid of static instances when possible
bba: use scheduler to delay link changes (fixes kos bba detection)
modem: fix soft reset. don't reset TDBE during reset (fixes kos modem detection)
2023-06-23 11:40:22 +02:00
Flyinghead
ed99c96232
mmu: slow mmu build fix
2023-05-24 10:43:20 +02:00
Flyinghead
ac2637286b
Merge remote-tracking branch 'origin/master' into dev
2023-05-13 15:55:47 +02:00
Flyinghead
70d3e221a9
mushiking series support
...
Emulate barcode reader. UI to input card id.
scif: SCFSR2.DR should also trigger an interrupt. Fixes the partial read
issue with manic panic ghosts touchscreen.
Add default implementations in SerialPipe for read-only and write-only
devices.
Fix card jammed error in mushiking with custom input code.
Add mushi2k61 and mushi2k62 to naomi rom list.
Cheats to skip rfid check.
2023-04-12 10:09:21 +02:00
Flyinghead
b556617e1d
sh4: only reset serial pipe on hard reset
...
See d3690b12c6
2023-04-09 20:56:14 +02:00
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
f94a08f12f
mmu: avoid crash due to approximative fast mmu matching
...
Fixes MINIDUMP-EA (Sonic Shuffle)
2023-04-02 22:06:22 +02:00
Flyinghead
7108358ebd
Merge remote-tracking branch 'origin/master' into dev
2023-03-30 17:31:22 +02:00
Flyinghead
5e4e48fffe
mmu: don't crash when table full, just ignore
...
Fixes MINIDUMP-NF
2023-03-25 11:45:03 +01: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
095e5ede81
sh4: more accurate cycle counting
...
get rid of float ops hack for dead or alive 2
get rid of idle skip option and code block hashing
count cycles for high-level wince functions and handlers (GetTickCount,
QueryPerformanceCounter and TLB_MISS handler)
Fixes Dave Mirra Freestyle BMX time counter running too fast.
More FPS for many wince games. Better wince perf on slow devices.
2023-03-07 18:35:01 +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
Flyinghead
9b24984b07
crash when switching to full mmu
...
The MMU now has a state variable, which must be set before the dynarec
is reset.
Regression in afcb3b7ad8
Fixes MINIDUMP-AZ, MINIDUMP-B7, MINIDUMP-B0
2023-02-20 22:56:23 +01:00
Flyinghead
9dae5827cc
naomi: touchscreen emulation for manic panic ghosts and touch de zunou
2023-02-19 13:51:23 +01:00
Flyinghead
bf79183bd6
mmu: max alignment requirement is 32-bit
...
a 64-bit access only needs to be 32-bit aligned.
use enum for mmu errors
2023-02-18 13:33:38 +01:00
Flyinghead
afcb3b7ad8
mmu: get rid of FullMMU option. Detect wince with string id in ram
...
ForceWindowsCE now just sets ExtraDepthScale
2023-02-18 13:33:38 +01:00
Flyinghead
5bfbcb210c
dynarec: refactor imm mem r/w and store queue handlers. clean up mmu
...
Eliminate duplicate code for immediate memory read/write in all dynarecs
Simplify PREF to use do_sqw_nommu even for simple SQ remap
Check for address errors before mmu translation
Get rid of unneeded template params in mmu translation funcs
2023-02-18 13:33:38 +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
04c418d02a
serialize: move code out of serialize.cpp and into modules
2023-01-31 10:13:03 +01:00
Flyinghead
143073b61d
rename _vmem to addrspace and move platform vmem stuff to virtmem ns
...
use namespaces
simplify names
no functional changes
2023-01-29 18:48:33 +01:00
Flyinghead
0c01075ba8
__fastcall goes after return type
2023-01-29 14:07:37 +01:00
Flyinghead
1149d499a8
x86: windows ce support in dynarec
...
clean up some unused methods and return values
2023-01-28 19:22:36 +01:00
Flyinghead
99d5266aa0
Merge remote-tracking branch 'origin/master' into dev
...
# Conflicts:
# core/hw/holly/sb_mem.cpp
# core/hw/naomi/naomi.cpp
# core/hw/naomi/naomi_flashrom.cpp
# core/hw/pvr/ta_ctx.h
# core/rend/gui.cpp
2023-01-27 15:41:45 +01:00
scribam
80cf4406a7
cleanup include headers
2023-01-26 10:06:51 +01:00
Flyinghead
1a681746b5
mmu: fix rte delay slot fetch address error with slow mmu
...
slow mmu clean up
P4 isn't executable
mmu test
mmu_TranslateSQW: throw exception but don't return status
2023-01-24 21:17:48 +01:00
Flyinghead
f8372c51a7
Revert "wip headers"
...
This reverts commit e3e2c3a0d2
.
2023-01-24 14:26:14 +01:00