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
Flyinghead
bd30752b86
Use auto& to avoid copy when iterating. Inline mmu_Read/WriteMemNoEx
2019-06-08 13:04:35 +02:00
Flyinghead
2c91ca96fc
rec-arm64: fix transitions to/from mmu
...
exit mainloop() before regenerating it
make sure dynarec cache is cleared between runs
when deserializing, clear dynarec cache after setting mmu state
2019-05-25 18:03:18 +02:00
Flyinghead
e3d95f2258
wince: unify _vmem and vmem32. Use 4GB virtual space on 64-bit arch
...
On 64-bit architectures, _vmem first tries to allocate 4GB then falls
back to 512 MB.
The same virtual space is now used by _vmem and vmem32 (mmu)
2019-05-23 11:40:33 +02:00
Flyinghead
c2c0215e1b
Merge remote-tracking branch 'origin/master' into fh/wince-dynarec
2019-05-22 14:13:00 +02:00
Flyinghead
86cabf8553
wince: delete bogus half-life game id
2019-05-21 19:28:54 +02:00
Flyinghead
3bf32f5adf
Merge remote-tracking branch 'origin/fh/limitfps-option'
2019-05-21 11:42:07 +02:00
Flyinghead
433590b610
rend: Add per-strip TR sort option
2019-05-21 11:24:03 +02:00
Flyinghead
07b3f83343
audio: new option for automatic limitFPS
...
LimitFPS now can be enabled, disabled or automatic. The latter option
doesn't wait for audio if the emulator is running slow (over the last 2
secs)
Renamed `Audio Backend` to `Audio Driver` in the UI.
2019-05-20 19:12:28 +02:00
Flyinghead
f0ebd2b818
wince: force aica.NoBatch
2019-05-15 14:00:36 +02:00
Flyinghead
77c1389921
wince: disable vmem32 for games that abuse it
2019-05-09 21:47:01 +02:00
Flyinghead
810b8a59da
wince: 32-bit virtual mem space
...
use fast mem read/write for x64 and arm64 dynarecs
2019-04-29 18:23:00 +02:00
Christoph "baka0815" Schwerdtfeger
0a3c361da2
AUDIO: Allow backend specific settings
2019-04-24 21:41:38 +02:00
Flyinghead
a25918839b
save fpu regs when sr.FD is set, and restore them when unset
2019-04-15 19:02:10 +02:00
Flyinghead
dece3fc13e
wince: use setjmp/longjmp instead of try/catch for dynarecs
...
WinCE fast mmu implementation
WIP arm64 dynarec
2019-04-15 18:02:34 +02:00
flyinghead
8cdbb9c2fd
Merge pull request #1548 from reicast/fh/float-vmu
...
Float VMU option. Android renderer native thread. 90° screen rotation option. AW fixes.
2019-04-10 21:53:41 +02:00
Flyinghead
0445542ec2
gl: 90deg screen rotation option. Fix scissor/clip wrt scale/stretch
...
90deg CC screen rotation option for some arcade games
Fix scissoring and clipping when screen scaling/stretching/rotating
Clear shader cache when screen rotation changes
Properly delete all gl programs and shaders when needed
2019-04-09 15:18:48 +02:00
Flyinghead
1b04ef4cb1
Get rid of RTC in settings
2019-04-08 22:09:22 +02:00
Flyinghead
b87a1cc31a
atomiswave: setup maple controls depending on game
...
more lightgun fixes but still not working
2019-04-08 19:14:55 +02:00
baka0815
56374377dd
Merge pull request #1543 from reicast/baka/select_audio
...
AUDIO: Make backend configurable
2019-04-08 18:33:53 +02:00
Flyinghead
f5a60ee5f1
New option to display VMUs in game
2019-04-08 15:54:37 +02:00
Flyinghead
47bb509f02
Add horizontal screen stretching option
...
fix scissor test when scaling/stretching
fix infiniloop when starting a game fails
2019-04-08 00:21:06 +02:00
Christoph "baka0815" Schwerdtfeger
16f9200bfa
AUDIO: Allow selection of backend
2019-04-05 22:22:46 +02:00
Flyinghead
ec95c95b89
add option to disable fog effects
2019-04-04 19:26:15 +02:00
flyinghead
26f02e22da
Merge pull request #1531 from reicast/fh/smc-option
...
dynarec: add option to control smc code checks: faster, fast, full
2019-03-30 13:27:45 +01:00
Flyinghead
8e9b1306e1
dynarec: make FullCheck the default SMC option
2019-03-29 20:28:49 +01:00
Flyinghead
6438a402df
dynarec: add option to control smc code checks: none, fast, full
2019-03-29 19:23:37 +01:00
Flyinghead
daf4980fc8
input: save assigned maple port of each gamepad
2019-03-29 17:19:18 +01:00
Flyinghead
a3f9764936
Add Boot Dreamcast BIOS option
...
Reload roms/flash when starting a new game
Better naomi reset (still have issues)
Fix error reporting with Naomi
2019-03-26 17:20:44 +01:00
Flyinghead
cce5028ed3
AW: fix flash sector size. Implement SB_SFRES soft reset
...
Fixes Atomiswave freezing when exiting the service menu and problems
when saving to flash.
2019-03-26 11:54:03 +01:00
Flyinghead
c809c6c56f
Merge branch 'fh/mymaster' into fh/master-merge
2019-03-25 16:47:47 +01:00
Flyinghead
f454c79f08
TA: ISP_BACKGND_D has only 28 bits of precision
...
Calculate background depth accordingly
add extradepthscaling of 0.1 to wince games so the last four bits of
depth are significant
2019-03-20 16:31:12 +01:00
Flyinghead
73d50486d5
mmu: dynamic switching with read/write mem function pointers
2019-03-17 22:59:18 +01:00
Flyinghead
bdc729e780
android: vjoystick haptic feedback setting wasn't being saved
2019-03-15 19:55:01 +01:00
Flyinghead
7369e81af5
naomi: close cart and free resources properly
2019-03-13 19:59:59 +01:00
Flyinghead
54e9dc8338
Do not scale clipping values with rtt-upscale if rendering to vram
...
Enable RTT-to-vram for Flag to Flag (rear view mirrors)
2019-03-08 20:06:17 +01:00
Flyinghead
ca58c323cd
Moved most android settings into the new gui
...
virtual gamepad editing and settings
home directory setup during onboarding
start content browser at app startup after getting permission
Use imgui osd to display error messages (msgboxf)
Added About tab in settings with version, git hash and Send logcat
button (android)
2019-03-05 00:54:01 +01:00
Flyinghead
17b495e7e4
NoSound setting wasn't saved
...
Fix profiler handler ids
2019-03-04 00:32:15 +01:00
Flyinghead
41e4c805de
OSX: support new input system. Use existing emulator thread.
...
Added new OSD notification feature, combined with FPS counter, moved to
GUI
OSX: don't create and manage a new emulator thread but use existing one
OSX: keyboard and mouse use new input system
2019-02-27 23:02:25 +01:00
Flyinghead
a0e7231340
naomi: reload PG settings and reset jvs controller when switching game
2019-02-25 23:31:05 +01:00
flyinghead
b1bb89909e
win32 fixes
...
use imgui id to allow multiple contents with same name
2019-02-25 19:15:59 +01:00
Flyinghead
492e771272
Content browser (WIP)
...
Get rid of the renderer thread. It is now the main/UI thread on all
platforms. The emulator runs in a separate thread.
Content browser displayed at startup.
2019-02-25 17:52:53 +01:00
flyinghead
a1e400b43c
win32: stop audio when emu is paused to avoid looping sound
2019-02-21 22:55:50 +01:00
Flyinghead
810182c4fe
Scale down native resolution setting
2019-02-19 00:49:24 +01:00
Flyinghead
4c1acfeab1
android: native egl surface
...
fps counter using imgui
restart emulator with new game in same process
2019-02-18 00:25:06 +01:00
Flyinghead
460a6828cf
android: missing change
2019-02-16 16:59:27 +01:00
Flyinghead
5e65d2a19d
Per-game configuration: create/delete from gui
...
Removed unused settings
Per-game setting can override any setting
Built-in per-game settings can be overriden
2019-02-16 14:25:54 +01:00
Flyinghead
2602d855ee
android: refactor initialization
...
Report dc_init errors properly with a popup
Disable reios use
Use builtin per-game settings
2019-02-15 20:48:30 +01:00
Flyinghead
8b5c2a3fac
New input handling/mapping system, SDL only for now. Gui wip
2019-02-12 11:30:24 +01:00
flyinghead
4685bc1fad
win32: hook up mouse
2019-02-07 20:04:17 +01:00
flyinghead
3cdd39170d
win32: call os_DoEvents on the emu/main thread and other fixes
2019-02-07 19:20:10 +01:00
Flyinghead
82f156f143
Gamepad support to GUI. Wire evdev, SDL and windows
...
Allow dc_stop() to work even when the emu is paused
2019-02-07 16:59:24 +01:00
Flyinghead
eb3bbb7dc0
Android: more UI settings (video)
2019-02-07 09:42:51 +01:00
Flyinghead
1802c022fd
UI with ImGui
2019-02-06 19:57:13 +01:00
Marcel Szewczyk
b26b12054b
Merge branch 'master' of https://github.com/reicast/reicast-emulator into mar753/render-to-texture-with-options
2019-02-06 17:39:12 +01:00
Flyinghead
51c77b248b
Enable RTT to vram for Skies of Arcadia
2019-02-03 18:11:04 +01:00
Flyinghead
4b78e24753
allocate mem based on state file size instead of current state size
2019-02-03 17:56:43 +01:00
Marcel Szewczyk
f0c4fe6fdc
Additional improvements/fixes
2019-01-18 18:39:48 +01:00
Marcel Szewczyk
2327c1b83e
nullDC.cpp updated to support other OSes
2019-01-09 17:33:41 +01:00
Flyinghead
8532d1a032
Android: add Load Custom Textures option
2018-12-31 08:52:50 +01:00
Flyinghead
dd280ee24d
Custom textures loading and dumping
2018-12-30 18:42:55 +01:00
Marcel Szewczyk
302bfcd582
Merge branch 'master' into mar753/render-to-texture-with-options
2018-12-30 18:26:31 +01:00
Flyinghead
2ecc54b4c9
Set DC date and time automatically, DC language setting
2018-12-23 12:59:16 +01:00
Flyinghead
9c556007fb
Naomi: lr backport
2018-12-11 23:20:30 +01:00
Flyinghead
2b16edd71f
Android: enable DSP, Add dynarec safemode/disable div matching
2018-12-07 12:58:07 +01:00
Flyinghead
064531df95
Add some ExtraDepthScaling for NHL 2K2
...
Fixes tiny pause menu in-game
2018-12-03 15:14:00 +01:00
Flyinghead
e444acbc09
Android: set NoBatch to 1 to enable the DSP
2018-11-30 12:40:43 +01:00
Flyinghead
40f2d64b6c
Android: Add zip files to naomi manifest. Load per-game std settings.
2018-11-16 18:35:17 +01:00
Flyinghead
1055c8366f
Naomi: JVS boards refactoring, support for Ninja Assault
2018-11-15 18:30:54 +01:00
Flyinghead
6f3b492175
Naomi/AW: Allow bios region selection
...
Per-game flash and bbram save files
naomi_boot.bin now optional
2018-11-12 17:54:38 +01:00
Flyinghead
9ccf0efdea
switch between interpreter and dynarec at runtime
2018-11-11 23:49:41 +01:00
Marcel Szewczyk
4fd9de54ce
Added rtt menu options
2018-11-11 17:55:18 +01:00
Flyinghead
0702682693
AtomisWave support
...
Better AtomisWave platform support
Refreshed flashrom implementaion
AtomisWave carts
Merged rom+bios romsets
2018-11-07 23:27:32 +01:00
Flyinghead
22558d190a
Naomi: add dual I/O boards config for Ring Out 4x4
2018-11-06 14:01:54 +01:00
Flyinghead
4e56432a2b
Naomi: M1/M2 mame roms support. M4 carts still WIP
2018-11-05 22:53:38 +01:00
David Miller
6589f4ddbd
Update Beta from merge, no real change
2018-11-04 23:49:17 +00:00
Flyinghead
415e0ab356
Fix x86 builds
2018-10-29 16:53:26 +01:00
Flyinghead
7bb00a339f
Free maple devices on exit. Avoid mem leaks on startup.
2018-10-29 16:31:44 +01:00
Flyinghead
8a56710841
New save state format
2018-10-29 15:11:34 +01:00
Flyinghead
e4055f3192
Naomi: return ones when reading past the actual rom size. dc_reset()
...
Special JVS setting for Outtrigger (rotary encoders)
Return FF when reading past the actual roms area
Extract dc_reset() function for future use
2018-10-28 12:35:19 +01:00
flyinghead
275c9c1516
Naomi: Cosmic Smash per-game setting
2018-10-21 02:48:24 +02:00
Flyinghead
613e42a014
Naomi: better id of games, per-game jvs setup and settings
...
Better lst parsing with error handling
2018-10-17 13:18:24 +02:00
Stefanos Kornilios Mitsis Poiitidis
4ceac65b0d
Merge pull request #1412 from reicast/fh/aica-int-timing
...
AICA/DMA: Make the transfers take some time, add fallback option. Fixes sfa3 and bomberman online
2018-10-05 14:29:00 +02:00
Stefanos Kornilios Mitsis Poiitidis
09f8a50bf2
AICA: Make async dma an option, default on
2018-10-05 14:24:56 +02:00
Ender's Games
8d52045265
Stop reading values that are "malformed" on Android
2018-10-03 00:12:57 -04:00
Flyinghead
ba8e9dcab0
link error with dispframe
2018-10-02 12:29:29 -04:00
Flyinghead
5ba9916b22
Add cable/region/broadcast to per-game configuration.
...
Do not save per-game settings if the game name or id is unknown (NAOMI).
2018-09-30 10:54:09 +02:00
Ender's Games
24504bc22e
Fix a typo. Always check your copy/paste twice.
2018-09-29 22:08:35 -04:00
Flyinghead
ac4a98ec85
Serialize broadcast, cable and region. Signal EOR after loading a state.
...
broadcast, cable and region must be restored when loading a state of a
crash is likely to happen.
After loading a state, the emulator may hang waiting for an end of
render interrupt. This happens if a render was done right before saving
the state but before the EOR interrupt is raised. So we signal an EOR
after loading a state just in case.
2018-09-29 16:34:58 +02:00
Ender's Games
ee3a474ee4
Revert "Interrupt Hack setting w/ less stigma"
...
This reverts commits e5c0f0e
, eebf3fc
, 14fc7d9
2018-09-26 09:06:07 -04:00
Flyinghead
84e7ca03ad
Don't connect a DC keyboard by default.
...
Not supported on most platforms.
Alien Front Online doesn't show the on-screen keyboard if a DC keyboard
is connected.
2018-09-24 20:53:21 +02:00
Flyinghead
411baa6b8e
OSX: Save states support. Build fixes.
2018-09-23 16:18:35 +02:00
Flyinghead
0c575a51b3
Do not save per-game settings if the game name is unknown (NAOMI).
...
Add cable/region/broadcast to per-game settings.
2018-09-21 17:47:21 +02:00
Flyinghead
06a4f9f25d
Dynarec.safemode -> safe-mode in custom settings
2018-09-21 10:19:57 +02:00
Flyinghead
6a5ae18179
Prepend game name to state file
2018-09-20 22:41:10 +02:00
Flyinghead
de147549c3
Save states implementation
2018-09-20 19:48:46 +02:00
Flyinghead
7ce4fccb37
Merge remote-tracking branch 'origin/master' into fh/mymaster
2018-09-20 17:28:41 +02:00
Flyinghead
37d014f002
Disable div matching for Surf Rocket Racers
2018-09-20 13:42:48 +02:00