flyinghead
958775ffbe
x86 rec: add fast mem access and rewrite
...
x86: fix dynamic block end and directly use FPCB
fix code pointer for dsp dynarecs
reios entry point overwritten because of same address proc
2021-01-28 16:29:21 +01:00
Flyinghead
882e14f13f
aica: x64 jit for arm
...
aica arm x86: use pc-relative addressing to access arm registers
OSX project fix
arm7: add simple ldm/stm handling. optimize arm32 and x64 recs
update CMakeLists.txt and Makefile. finish rebase
2021-01-26 21:32:43 +01:00
flyinghead
7697d37ec6
lightgun crosshair support
2021-01-23 15:59:57 +01:00
flyinghead
4a81430da7
aw: analog and lightgun inputs not responsive after load state
...
save maple player num in state
save aw maple devs register
serialize more spg state. don't call CalculateSync on load
move savestate logic to spg and naomi
make tests work on windows
2021-01-22 15:11:04 +01:00
flyinghead
119948cfdb
more event use cases
2021-01-19 23:52:28 +01:00
flyinghead
00413a6ad2
sdl: allow capture mouse and relative mode
...
toggle with L-ALT + L-CTRL
Issue #157
simple event system
2021-01-19 21:31:48 +01:00
flyinghead
16dec49e08
windows: use utf8 internally. Support latin2, cyrillic, etc. pathnames
...
upgrade libzip to 1.7
imgui: use all glyphs from font including latin2, cyrillic, greek, etc.
2021-01-19 11:11:01 +01:00
flyinghead
87812a7f82
std::future_error on win32 when cancelling rom load
2021-01-15 10:25:21 +01:00
Flyinghead
767445e05c
more webtv disc ids
2021-01-03 21:26:23 +01:00
Flyinghead
889fc8256d
broadband adapter support
2021-01-02 21:19:50 +01:00
Flyinghead
bbedcaa37b
macOS: ignore -psn arg on first launch. LoadSpecialSettings() clean up
2020-12-29 17:56:35 +01:00
Flyinghead
467e7954a5
log to ~/flycast.log if ./flycast.log isn't valid
2020-12-29 13:12:00 +01:00
Flyinghead
060650e0d8
support for compressed save-states
2020-12-26 09:58:53 +01:00
Flyinghead
a00aad5fa7
pvr: auto frame skip to replace current and previous synchronous rendering
...
Restore previous synchronous rendering behaviour (normal auto frame skip)
No frame skipping when disabled
better cpu speed measure over 4 vblanks
2020-12-25 12:08:44 +01:00
Flyinghead
04cd7db2cd
pvr: serialize TA render passes
...
use enum for renderer type
2020-12-15 16:27:34 +01:00
Flyinghead
c03cf8eb45
rend: multi-render, delay swap, refactor main ui loop
...
move ui loop out of hw/pvr
vk: implement multi-rendering, delay swap. Load fb before render pass
fps counter now counts frames, not renders
vk: force ignoreTexAlpha for 565 texture in case the supporting texture
has an alpha channel (RTT). Fixes Alone in the Dark cinematic scenes.
pvr: better detection of frame swapping (FB_R_SOF/FB_W_SOF)
pvr: synchronous rendering now always waits for render in progress
(speed measurement not reliable, render skipped when multi-rendering)
vk: limit swap chain size to 2
2020-12-15 15:09:42 +01:00
Flyinghead
08e191d7cc
extra depth scale for Samurai Shodown 6 dc port
...
Issue #136
disable vmem for PBA bowling and WebTV
2020-12-05 18:29:09 +01:00
Flyinghead
8f77a5482a
config/data folders improvements
...
linux: look for legacy ~/.reicast and ~/.reicast/data
else look for ~/.config/flycast and ~/.local/share/flycast
and ~/.config/reicast and ~/.local/share/reicast
(defaults to flycast)
look for bios files in home folder and data folders (android, windows
,macos), then in game folder.
on linux, search in /usr/share/flycast and /usr/local/share/flycast and
legacy locations
2020-11-26 16:45:57 +01:00
Flyinghead
2a5b303b70
delete nixprof
2020-11-22 17:37:27 +01:00
Flyinghead
df392b8376
lupin the shooting uses ligthgun as analog
2020-07-16 11:16:02 +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
5cfed1e482
div32: get rid of edge cases. simplify
2020-06-15 16:56:09 +02:00
Flyinghead
8740f22c0a
fix all known div32 issues
...
support libretro naomi and aw savestates
2020-06-06 18:53:47 +02:00
Flyinghead
aac8b30bce
naomi: fake wrungp drive board. marine fishing inputs
...
set jvs board for dog walking and touch de uno
force region to japan for the same
2020-04-26 11:32:15 +02:00
scribam
0b1d739673
MSVC Cleanup
2020-04-23 14:10:49 +02:00
Flyinghead
bec7a9f452
network: start network before starting game to configure eeprom/flash
...
do second net sync when comm board is reset
close menu/cancel loading when pressing menu button
2020-04-22 19:11:49 +02:00
Flyinghead
17a2c3644f
ui: add loading screen with cancel button. don't freeze ui on load
2020-04-20 18:52:02 +02:00
Flyinghead
06313dd540
naomi: auto configure eeprom and bbsram for network
2020-04-19 21:45:15 +02:00
Flyinghead
98b2a32eae
naomi: auto-rotate screen, no widescreen when rot, lightgun as analog
...
rotate screen for naomi games that need it
disable widescreen when rotating screen
detect lightgun games and enable proper settings
disable model 3 comm board for atomiswave
2020-04-17 22:11:11 +02:00
Flyinghead
a41a81f5dd
naomi: network code for model 3 comm board
2020-04-14 17:43:11 +02:00
Flyinghead
d1b29a59d2
vulkan: re-enable vulkan 1.1 on Android. Fix TEST_AUTOMATION
...
disable vmem32 for Heroes of Might and Magic III
support no vmem in _vmem.cpp
2020-04-03 16:32:53 +02:00
Flyinghead
578071e8f9
win32: avoid deadlock if waiting for current thread. La Keyboard input
2020-04-02 11:51:39 +02:00
scribam
a155282fd0
Cleanup compiler warnings (mostly sign-compare)
2020-03-30 23:00:43 +02:00
scribam
e99aac3575
Remove "using namespace std;"
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
09c439bbe8
naom: VMU support (vonot, sf3zu). Fix otrigger inputs.
2020-03-23 17:48:43 +01:00
Flyinghead
39d81923c9
keyboard support for totd and luptype
2020-03-23 14:09:50 +01:00
Flyinghead
bccea0e991
win32: link pthread statically. Alien Front naomi needs safe mode
2020-03-20 12:42:13 +01:00
Flyinghead
1abfdaf64e
audio: pulse async driver, null driver, latency setting
...
Pulse: use async API instead of simple API
Null driver: no audio driver with accurate timing
Add latency setting to alsa, pulse and android drivers
android: start and stop AudioTrack on audiobackend init/term
Simplify audiostream. Get rid of "none" option
2020-03-14 22:46:40 +01:00
Flyinghead
e3313d27b2
custom texture: stop loader thread before loading state
2020-03-13 18:01:33 +01:00
Flyinghead
dd29a62811
remove buggy LimitFPSAuto option
2020-02-25 12:52:21 +01:00
Flyinghead
1cf4c36ede
disable div matching for Donald Duck Goin' Quackers
2020-02-17 18:26:14 +01: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
Flyinghead
5f604d3bcb
switch to TV composite if RGB not supported
2020-02-04 11:49:17 +01:00
Flyinghead
f9d8733604
reios: fix regression due to non-zero GDROM sense codes at startup
2020-02-02 11:07:32 +01:00
Flyinghead
2510964047
Force use of real BIOS when booting BIOS
2020-01-31 11:59:19 +01:00
flyinghead
d6fe3526a4
Merge pull request #35 from vkedwardli/enable-upscaling
...
Enable upscaling for up to 8x SSAA
2020-01-30 19:03:15 +01:00
Flyinghead
aaaf093af7
Allow ejecting and changing the disk while in-game
2020-01-30 19:01:47 +01:00
Edward Li
1d72f66de9
Enable upscaling for up to 8x SSAA
2020-01-30 03:31:42 +08:00
Flyinghead
76d7e8b653
naomi: wldkicks inputs
2020-01-26 23:23:59 +01:00
Flyinghead
3e6bef3cc0
option to pipe the dc serial port to a pty on linux
...
allow the use of dcload-serial
2020-01-20 13:22:36 +01:00
Flyinghead
cbf81e772f
disable div matching for more games
2020-01-16 21:49:53 +01:00
Flyinghead
2b389a2142
no div matching for Aqua GT. Set correct input board for mazan
...
non functional changes
2020-01-15 22:50:07 +01:00
flyinghead
ad67f9bbb9
win32: fix savestate file path with mixed / and \
2020-01-08 19:00:56 +01:00
Flyinghead
2f3b4fae53
awave: use light guns for Ranger Mission and Extreme Hunting
2020-01-07 20:10:59 +01:00
Flyinghead
530cdaa23f
use doubles to emulate FIPR on x86. avoid crash with per-game config
...
Don't store the renderer type in per-game config as this crashes.
Fixes Sonic Adventure falling off track
Other non-functional changes
2019-12-13 12:27:43 +01:00
Flyinghead
7b8840a330
Merge remote-tracking branch 'origin/master' into fh/vulkan
2019-11-10 21:01:29 +01:00
Flyinghead
c3b958c521
first attempt at a unit test
2019-11-04 21:37:16 +01:00
Flyinghead
4cc199b2b7
minimize writes to config file
2019-10-29 14:34:29 +01:00
Flyinghead
9d3ee3b57f
dyna: get rid of SmcCheckLevel options. Fix rec-cpp
...
Block check is now full or off depending on block protection
rec-cpp: Add missing opcode call classes and allow for immediate args
2019-09-29 18:18:46 +02:00
Flyinghead
ae4f378747
Add fast-forward mode
...
Fix buttons.png not being created if not first run
2019-09-27 14:15:29 +02:00
Flyinghead
9b063644c4
Per-game widescreen cheats
...
New option to make games render in 16/9 anamorphic format and stretch
screen to correct aspect ration.
2019-09-24 23:59:36 +02:00
Flyinghead
e7a33e6de1
reios: allow hle savestates to be loaded in non-hle mode
...
Always initialize reios hooks during startup so hle savestates always work.
Fix bios loading logic for naomi/aw
2019-09-19 11:49:19 +02:00
Flyinghead
11c95c41d3
Hide legacy Naomi roms (.bin, .dat. lst) by default
2019-09-10 21:56:58 +02:00
Flyinghead
0bd95cbba8
Delay Frame Swapping option to enable FB_R_SOF == FB_W_SOF detection
2019-09-09 14:58:53 +02:00
scribam
49b7e0682b
Cleanup
2019-09-07 20:36:13 +02:00
Flyinghead
ee1ee56824
proper hard reset of sh4 mm registers
...
more clean up
2019-09-01 23:10:04 +02:00
Flyinghead
aadc9c3bfc
Detect game region/vga support and set options accordingly
...
Better IP.BIN parsing (wince, vga)
Use wince flag and boot filename for wince detection
Switch to TV composite if vga unsupported
Switch to supported BIOS region if current is unsupported or default
2019-09-01 16:35:12 +02:00
Flyinghead
61f4cd4ecd
Merge remote-tracking branch 'origin/master' into fh/hle-bios
2019-08-31 22:10:09 +02:00
Flyinghead
e173b83574
New option to force WinCE mode
2019-08-28 20:47:47 +02:00
scribam
269297be18
Use _WIN32 to handle Windows specific code
2019-08-28 20:37:53 +02:00
scribam
61382316c9
Use __ANDROID__ to handle specific Android code
2019-08-28 20:37:53 +02:00
flyinghead
ea544f8ad7
Merge branch 'master' into fh/hle-bios
2019-08-15 11:02:04 +02:00
flyinghead
5600120b54
win32: fix crash at boot. remove log command lines options
...
restore .lst compatibility
2019-08-15 10:48:39 +02:00
Flyinghead
3e1956b949
reios: hle bios option now forces hle use
...
fallback to hle bios happens if no bios file found regardless of option
2019-08-13 17:12:29 +02:00
Flyinghead
6059831ec7
reios fixes
2019-07-30 19:04:51 +02:00
Flyinghead
a9dbbccf93
Unprotect VRAM before switching system. Fix texture cache clean
2019-07-28 17:06:12 +02:00
Flyinghead
32055c3bf9
Better error messages when BIOS files missing
2019-07-24 18:53:09 +02:00
Flyinghead
9932d9bf43
OSX: fix bios files path (now in /data/)
2019-07-24 18:24:58 +02:00
Flyinghead
4f8e18215b
Fixed savestates: restore compatibility with lr and master
...
Add new maple devices from lr
Clean up shil.cpp
2019-07-12 17:20:43 +02:00
Flyinghead
eb38564922
use exceptions for startup errors
2019-07-11 19:23:21 +02:00
Flyinghead
58cb50f587
fix reset hang on naomi
2019-07-10 17:25:11 +02:00
Flyinghead
f3a91de1af
Unify dreamcast, naomi and atomiswave builds WIP
2019-07-09 23:52:19 +02:00
Flyinghead
d5e24d8aed
Cleaner init. Get rid of LastImage
2019-07-08 18:10:43 +02:00
Flyinghead
329230bf8d
Fix Naomi reset. Add some per-game settings
...
Re-Volt needs 100 extra deptch scale for perfect menus
Tom Clancy's Rainbow Six needs RTT to vram for correct loading screens
2019-07-08 16:31:50 +02:00
Flyinghead
c3a42b0b22
wince: online support
...
Use default asyncmap for LCP control packets
Delay reading from picotcp ppp stream when connecting
Accept [PSH,SYN] as valid tcp connect packet
Add PBA Tour Bowling 2001 as wince game
Disable vmem32 for StarLancer and Maximum Pool (req'd for online support)
2019-07-07 20:31:36 +02:00
Flyinghead
b388fa4377
imgread: use new logging
2019-07-01 16:10:28 +02:00
Flyinghead
c60e2d29e8
modem: add termination function to stop pico thread
...
use new logging
log: set max verbosity to warning for release builds
2019-07-01 10:28:31 +02:00
Flyinghead
8404c6322c
New logging framework stolen from dolphin
2019-06-30 21:06:46 +02:00
Flyinghead
ec0d21148d
L.O.L and Miss Moonlight need RTT to vram option
2019-06-30 13:33:15 +02:00
Flyinghead
838cbe59e3
gl4: get rid of scaling params and use normalized coords in abuffer
...
add Eternal Arcadia and Yu Suzuki Game Works to render rtt to vram game list
2019-06-30 11:40:42 +02:00
Flyinghead
0a95a60ac6
less verbose logs. unbuffered stdout when test automation
2019-06-28 11:42:35 +02:00
Flyinghead
c27975fb37
ssa: don't propagate const over interpreter fallback, sync_sr and sync_fpscr
...
rec-x64: support immediate args for xtract
Set write rtt to vram for Super Speed Racing (a.k.a Flag to Flag)
2019-06-24 18:56:09 +02:00
Flyinghead
91717d706a
wince: disable vmem32 for Marionette Company 1 & 2 and Rune Jade
2019-06-23 17:06:59 +02:00
Flyinghead
5b2ad02fa2
this wasn't supposed to be committed
2019-06-21 13:33:55 +02:00
Flyinghead
3e8cdc76f3
wince: fix load state hanging
2019-06-21 13:17:34 +02:00
Flyinghead
cb338ae106
enable NoBatch when FullMMU is on for WinCE games
2019-06-19 22:52:19 +02:00
Flyinghead
318852e261
dynarec: use mprotect to protect code areas
...
All ram pages containing code are write protected. In that case, no need
for block checks. Memory reads in the same block(s) can also be executed
at compile time and the results propagated as constants.
When a write is detected in a protected area, the corresponding blocks
are discarded and recompiled using traditional (slow) block checks.
Backported the blkmap code finding change from upstream.
Use smart pointers for block management to avoid reference issues.
Added WriteAfterWrite ssa pass
Fixed crash in ssa ConstProp pass when op list is modified
2019-06-19 11:01:33 +02:00
Flyinghead
e0949fb9aa
Fix div matching: support 64-bit div and correct handling of negative
...
Some games do 64-bit / 32-bit division (Pro Pinball Trilogy)
DIV0s/1 use and output 1's complement numbers
The final reminder fixup wasn't correct for negative dividend
2019-06-13 18:27:21 +02:00