David Miller
3d1b82854e
Merge branch 'master' into fh/win32-winresize
2019-04-12 13:03:30 -04:00
Flyinghead
13341ecd59
maple: process_kcode -> transform_kcode
2019-04-10 11:31:08 +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
Flyinghead
cf7434a9e6
atomiswave: fix coin input. Subclass sega controller instead of #def
2019-04-08 17:09:10 +02:00
Flyinghead
e8205e568b
naomi/aw: fix atomiswave and naomi inputs
...
atomiswave analog axes support
map atomiswave and naomi driving games inputs
2019-04-06 19:36:57 +02:00
flyinghead
7f0489ff28
visual studio compatibility
...
no modem support
no zip or 7z support so no naomi for now
hacked a .asm file as vs doesn't support inline assembly -> code dup
2019-03-30 19:26:05 +01: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
505c5b6c4d
dynarec: FullCheck was being ignored and FastCheck used instead
...
Fix crash on arm32
Fix infinite loop on x64
2019-03-30 10:06:19 +01:00
Stefanos Kornilios Mitsis Poiitidis
af6993a819
dynarec: Refactor smc-option a bit
2019-03-30 07:16:44 +01:00
Flyinghead
7f44bb9956
vmu: pass bus id and port to callback
2019-03-29 19:54:59 +01:00
Flyinghead
6438a402df
dynarec: add option to control smc code checks: none, fast, full
2019-03-29 19:23:37 +01:00
Flyinghead
09ea5eba78
missing changes for previous commit
2019-03-29 17:47:17 +01:00
Flyinghead
eb7be51f67
gdrom: stop playing cdda when changing/ejecting disk
2019-03-28 14:53:41 +01:00
Flyinghead
ca750ae454
arm: aica RAM overflow crash with arm32 and arm64 recs
...
Move target platform #def's to build.h
Fix Sturmwind and Volgarr crashes
2019-03-28 11:41:48 +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
f5c896121e
Aica: fix adpcm decoding
...
Fix click at the end of some samples (Sonic Adventure menu sound)
2019-03-26 12:45:02 +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
815616369e
naomi build fix
2019-03-25 21:58:54 +01:00
Flyinghead
22b08bea74
maple: disconnect/reconnect maple devices when config changes
...
Wait 100ms between disconnect and reconnect to let game detect it
2019-03-25 18:46:57 +01:00
Flyinghead
c809c6c56f
Merge branch 'fh/mymaster' into fh/master-merge
2019-03-25 16:47:47 +01:00
Flyinghead
ba00da2420
dynarec: don't throw exceptions if NO_MMU
2019-03-25 13:53:49 +01:00
Flyinghead
cb6acab40f
missing file from previous commit
2019-03-25 11:56:41 +01:00
Flyinghead
ef43883fb5
dynarec: WinCE support WIP
...
Only for the x64 dynarec atm
Bugs remaining
2019-03-25 11:53:13 +01:00
Flyinghead
cae22b9fbb
Re-init the aica sgc on reset
2019-03-25 09:41:28 +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
8564f497d4
sh4 interp: add IsFloatingPoint() to op desc. Add delay slot 0 hack
...
Add UsesFPU flag to floating point ops. Use flag instead of specific
test cases in op handlers.
Adjust thrown exception in delay slot (slot illegal exception and slot
fpu disable)
Re-add delay slot 0 hack (Looney Tunes Space Race)
2019-03-20 13:45:35 +01:00
Flyinghead
d0f65b19d3
mmu: templatize mmu_full_lookup
2019-03-20 10:58:59 +01:00
Flyinghead
a21eedc88a
implement fpu disable exception and other interp and mmu fixes
...
implement sh4 fpu disable exception
implement assistance/PTEA MMU registers
fix some sh4 ops with side effect in interpreter
account for delay slot op cycles
avoid any side effect when using wince tracer
extract SH4_TIMESLICE to single header file (still not used by arm and
x86 recs)
2019-03-19 21:35:55 +01:00
Flyinghead
9e2938dff4
mmu: state change wasn't detected. WinCE syscalls tracing
2019-03-17 23:46:39 +01:00
Flyinghead
73d50486d5
mmu: dynamic switching with read/write mem function pointers
2019-03-17 22:59:18 +01:00
Flyinghead
eb73c2fcf1
missing #include
2019-03-14 21:37:36 +01: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
89c2fd54a9
fix function name typo
2019-03-13 20:04:14 +01:00
Flyinghead
7369e81af5
naomi: close cart and free resources properly
2019-03-13 19:59:59 +01:00
Flyinghead
f4568ace3c
backport disassembler missing piece from nulldc
2019-03-13 17:48:21 +01:00
Flyinghead
3edf24386d
maple: set SB_MDST to 1 to start dma in maple_vblank
2019-03-13 17:27:50 +01:00
Flyinghead
f05af652cf
crash when reading a write-only register
2019-03-13 17:24:27 +01:00
Flyinghead
e6d67baf02
sh4 sched: avoid error when jitter is high and delta becomes negative
2019-03-13 17:21:52 +01:00
Flyinghead
6305df9dab
ignore fldi0/fldi1 in double precision instead of dying
2019-03-13 17:19:41 +01:00
Flyinghead
6d6492ddc1
mmu: flush tables when MMUCR.TI is written
2019-03-13 17:17:08 +01:00
Flyinghead
c2916e6f21
Wait between two frames when gui is open
2019-03-08 20:02:53 +01:00
Flyinghead
f1cea640e2
naomi: crash on exit when M4 cart fails to load
...
avoid loading AW cart on Naomi and the other way around
2019-03-08 20:01:54 +01:00
Flyinghead
0d0fd212ff
Implement Ch2 DMA to 32-bit VRAM
...
Fixes Giana's Return
2019-03-08 13:23:51 +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
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
56be9f462b
xinput: fix rumble
2019-02-22 19:53:26 +01:00
Flyinghead
a39503dd56
rumble support for xinput and evdev
2019-02-22 19:23:03 +01:00
Flyinghead
9526fada5e
Added RenderLastFrame() to Renderer interface
...
implement screen scaling for per-pixel renderer
fix output FBO not being freed/recreated when GL context is reset
refactor DrawQuad on per-pixel renderer
2019-02-19 11:36:59 +01:00
Flyinghead
810182c4fe
Scale down native resolution setting
2019-02-19 00:49:24 +01:00
Flyinghead
e426bc8058
android: call eglMakeCurrent() before rendering or deleting context
...
Flush texture cache and terminate gui before releasing the EGL context
2019-02-18 13:14:12 +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
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
35bb81b195
fix some printf format strings
2019-02-16 14:16:50 +01:00
Flyinghead
edba937b6f
Save last rendered frame if gl driver doesn't preserve the swap buffers
...
Fixes flashing screen with nvidia shield when no frame is rendered
2019-02-14 12:40:17 +01:00
Flyinghead
49c432f041
arm64: fix DSP dynarec crash on some platforms
2019-02-13 14:23:47 +01:00
Flyinghead
8b5c2a3fac
New input handling/mapping system, SDL only for now. Gui wip
2019-02-12 11:30:24 +01:00
Flyinghead
1fcfb6b10a
Better fix for ImGui not showing on OSX
...
Enable vixl debug to track dsp crash
2019-02-09 15:12:35 +01:00
Flyinghead
7e4a271ce7
Fix ImGui on OSX
2019-02-08 10:22:53 +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
87aacd50d2
Pad dsp_t to keep savestates compatibility
...
Remove some unused DSP regs to avoid changing the size of dsp_t, which
breaks serialization compatibility.
2019-02-07 10:37:33 +01:00
Flyinghead
1802c022fd
UI with ImGui
2019-02-06 19:57:13 +01:00
Flyinghead
a9b62164c5
No network if no threads
2019-02-06 18:42:45 +01:00
Flyinghead
90ad16317f
arm64 dsp: fix stack order
2019-01-25 15:38:55 +01:00
Flyinghead
fca6f3cecb
dsp arm64: fix crash when VIXL_DEBUG is off
2019-01-24 21:47:55 +01:00
Flyinghead
08473d765a
android build fix
2019-01-24 09:58:13 +01:00
Flyinghead
91cfd4b2f7
Reserve and allocate maximum RAM/VRAM/ARAM in all cases
...
Reserve enough virtual memory space for DC and Naomi
Allocate dynarec entry point tables for max possible ram
Free mem and release vmem on exit
2019-01-24 09:48:58 +01:00
Flyinghead
0cce6cc5a5
Clean up and comments. No functional change
2019-01-24 09:40:14 +01:00
Flyinghead
1501e2273d
Don't enable the dsp interpreter if using the dynarec
2019-01-23 22:59:00 +01:00
Flyinghead
8c7f9105a1
dsp dynarec: missing commit
2019-01-23 22:46:05 +01:00
Flyinghead
3a064cd068
DSP dynarec for arm64
2019-01-23 21:14:51 +01:00
Flyinghead
9f3f13eef1
aica arm dynarec for arm64
2019-01-21 13:08:53 +01:00
Flyinghead
da07d88b03
No need to save the RTC value anymore
2019-01-19 16:49:00 +01:00
Flyinghead
cd4e4cbdc9
x64 dynarec: check if extension is supported by cpu. seh on win32
...
Check if FMA/AVX/SSE3 is supported before using it
fully naked main loop in win32 with proper seh directives
win32: more xmm regs to allocate and no need to save them when calling
out
2019-01-18 17:02:50 +01:00
flyinghead
ed3f866835
win32 build fix
2019-01-16 17:42:36 +01:00
Flyinghead
f852480b88
OSX: build fix
2019-01-16 14:44:40 +01:00
Flyinghead
cb8e81d473
arm64: direct memory access and jit rewrite
...
generates direct vmem read & write accesses
trap sigsegv and rewrite using slow path
add w29 to allocatable registers
get rid of literals and use pc-rel branching
minor optimizations and cleanup
2019-01-16 13:04:16 +01:00
Flyinghead
c2a048e8d8
arm64: use explode_spans to allocate regs for V2 and F64 params
2019-01-15 08:47:07 +01:00
Flyinghead
e241613b8f
x64 dynarec: implemented swaplb, fipr, ftrv, frswap and other fixes
...
native implementations for swaplb, fipr, ftrv and frswap
use explode_spans to map 2V and F64 to registers
save xmm registers when calling subroutine
2019-01-14 21:15:36 +01:00
Flyinghead
b465f744ba
dynarec: flush fpu regs before FTRV
...
fixes issue with tokyo xtreme racer (x64)
might need to flush before other ops
2019-01-13 23:21:58 +01:00
Flyinghead
fc05727538
dynarecs clean-up
...
move GetRegPtr and ngen_FailedToFindBlock to sh4/dyna
2019-01-11 23:52:20 +01:00
Flyinghead
0f026552c9
fix comments
2019-01-11 15:54:03 +01:00
Flyinghead
a9a2aad8f6
arm64: use register spans allocation. Implement some opcodes natively
2019-01-09 16:35:23 +01:00
Flyinghead
67a4eb8f1f
arm64 dynarec using vixl
2019-01-07 21:50:46 +01:00
Marcel Szewczyk
302bfcd582
Merge branch 'master' into mar753/render-to-texture-with-options
2018-12-30 18:26:31 +01:00
Flyinghead
031a40ec81
OSX: Fix crash when exiting. Add missing files to project
2018-12-29 17:42:08 +01:00
Flyinghead
2ecc54b4c9
Set DC date and time automatically, DC language setting
2018-12-23 12:59:16 +01:00
Flyinghead
05177b2231
Naomi: got rid of in-lst input mapping
2018-12-13 16:08:59 +01:00
Flyinghead
a6881a46ac
Use naomi.zip BIOS for sl2007
2018-12-13 13:08:24 +01:00
Flyinghead
d41e405a50
Naomi: non-encrypted M4 carts fix (sl2007)
2018-12-13 13:06:01 +01:00
Flyinghead
35d7d24b6b
Naomi: use naomi BIOS for alpilot
2018-12-13 12:11:15 +01:00
Flyinghead
5664bfb9b6
pvr: use u32 for vertex indices to avoid overflow
...
Fixes alpilot glitches
2018-12-13 10:57:51 +01:00
Flyinghead
a3cba92665
Android: load/save jvs eeprom
2018-12-12 23:30:54 +01:00
Flyinghead
10d9761a65
minor fix
2018-12-12 13:49:53 +01:00
Flyinghead
5763da184c
Fix bug in WriteMemBlock_nommu_ptr when size is not word-aligned
...
Bump max opaque polygon to 8192 (alpilot)
Minor lr backport and clean up
Fix corruption in doa2[m] and alpilot
Fix missing sound in Jambo Safari
2018-12-12 12:40:04 +01:00
Flyinghead
9c556007fb
Naomi: lr backport
2018-12-11 23:20:30 +01:00
Flyinghead
5ac99d3ad5
pvr: gouraud affects drawing. don't die if render queue not empty after
...
waiting.
2018-12-11 23:14:14 +01:00
Flyinghead
864939da42
minor lr backport
2018-12-11 23:11:21 +01:00
Flyinghead
24e7837eaa
Naomi: backport force region setting
2018-11-23 20:51:26 +01:00
Flyinghead
cfc215233f
Naomi: 7z archives - Split/parent roms
2018-11-23 18:46:21 +01:00
Flyinghead
0d720ae0d6
Naomi: fix hotd2 and alpilot controls
2018-11-20 12:43:10 +01:00
Flyinghead
894991a44d
Naomi: use default eeprom from mame rom
...
More I/O boards
2018-11-19 16:43:41 +01:00
Flyinghead
a1aea570c5
Ignore bogus maple dma xfer
...
Workaround for csmash game test menu crash
2018-11-19 16:15:05 +01:00
Flyinghead
4ec078441e
Naomi: fix GD-rom games id
2018-11-17 19:27:09 +01:00
Flyinghead
6274e4c3d3
Build fix
2018-11-17 12:21:48 +01:00
Flyinghead
ed912ecb94
Naomi: All gd-roms defs. Build fix for OSX and Android
2018-11-17 12:09:05 +01:00
Flyinghead
62a3380bfa
Naomi: GD-ROM support
2018-11-16 22:27:35 +01:00
Flyinghead
5210c315dd
Naomi: wrong M2 game id if char is unsigned
2018-11-16 18:33:10 +01:00
Flyinghead
52a2d3dbdc
dsp: mask aica ram addr to avoid overflow
...
fixes ninja assault crash when starting a game
2018-11-15 21:58:04 +01:00
Flyinghead
1055c8366f
Naomi: JVS boards refactoring, support for Ninja Assault
2018-11-15 18:30:54 +01:00
Flyinghead
d716dfd74c
Naomi: fix alpilot and world kicks series rom def
2018-11-15 18:29:19 +01:00
Flyinghead
cb410438a2
Naomi: fix game id for some M2 carts
2018-11-15 18:25:23 +01:00
Flyinghead
074026842e
Naomi: fix M2 carts 4MB addressing mode
2018-11-14 20:50:22 +01:00
Flyinghead
b5e6d7e54a
Naomi/AW: input descriptors. Load bios from naomi.zip for .bin/.dat
2018-11-14 14:13:42 +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
895b3a5af1
Naomi/AW: Backport rom list from lr. Skip ram test at aw startup
2018-11-12 14:53:15 +01:00
Marcel Szewczyk
5f19eb7ae8
Rtt menu options are now handled by GLES
2018-11-11 22:01:18 +01:00
Flyinghead
fb92d8d8c5
less log
2018-11-09 13:23:47 +01:00
Flyinghead
4c334f09ea
AW: various fixes, more roms
2018-11-09 13:22:27 +01:00
Flyinghead
3e8033cc70
Don't die on Maple DMA abort
2018-11-08 10:41:40 +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
e93260634d
Naomi: save cart state into save state
2018-11-06 17:54:54 +01:00
Flyinghead
eff998dc53
Naomi: Decrypt M4 roms header to get game id. Refactoring and clean up
2018-11-06 14:30:34 +01:00
Flyinghead
22558d190a
Naomi: add dual I/O boards config for Ring Out 4x4
2018-11-06 14:01:54 +01:00
Flyinghead
592630ae5f
clean up
2018-11-06 13:04:27 +01:00
Flyinghead
7fde9fe35c
Naomi: finalize M4 carts support
2018-11-06 12:40:15 +01:00
Flyinghead
a3f898b7d0
Naomi: implement undocumented SH4 registers to make version h bios happy
2018-11-06 10:54:13 +01:00
Flyinghead
c95d13fdf1
Naomi: M1/M2/M4 missing files
2018-11-05 22:54:35 +01:00
Flyinghead
4e56432a2b
Naomi: M1/M2 mame roms support. M4 carts still WIP
2018-11-05 22:53:38 +01:00
baka0815
bf3d1b2186
Merge pull request #1453 from luserx0/master
...
Documentation additions
2018-11-02 10:13:25 +01:00
Flyinghead
5e59901e70
OSX build fixes
2018-10-30 11:29:30 +01:00
Iam Bot
0d69050b63
Documentation additions
2018-10-30 03:26:55 +02:00
flyinghead
0d965fe3a3
mingw32 build fix
2018-10-29 22:59:46 +01:00
Flyinghead
dc9780eb46
Android: fix black screen at boot on some devices
2018-10-29 20:03:47 +01:00
Flyinghead
3e9d8d8a07
Free TA contexts on exit
2018-10-29 20:02:12 +01:00
Flyinghead
6177a5b33a
Clear texture cache on exit
2018-10-29 18:02:47 +01:00
Flyinghead
7bb00a339f
Free maple devices on exit. Avoid mem leaks on startup.
2018-10-29 16:31:44 +01:00
Flyinghead
47be33d388
Free dynarec code blocks on exit
2018-10-29 16:10:39 +01:00
Flyinghead
8a56710841
New save state format
2018-10-29 15:11:34 +01:00
Marcel Szewczyk
f309a59fac
Render to texture single pass implemented
2018-10-28 20:16:45 +01:00
David Miller
75d319ea3c
removed pragma once from arm-new.h, inline file
2018-10-28 15:10:53 -04:00
Flyinghead
cdb5cf662b
Initialize PVR function pointer to non-null
2018-10-28 11:33:35 -04:00
Flyinghead
a88bed1690
Fix mismatched new/delete operators (master)
2018-10-28 15:42:26 +01:00
Flyinghead
0cfd8f5494
Sprites face culling is reversed.
...
Fixes South Park Rally and Wacky Races invisible menus.
2018-10-28 09:43:48 -04:00
David Miller
45bf5e51b1
Merge pull request #1443 from janisozaur/patch-1
...
Fix mismatched new/delete operators
2018-10-28 09:17:01 -04:00
Michał Janiszewski
a69bd937c3
Add missing include guards
2018-10-28 13:45:46 +01:00
Michał Janiszewski
2cae875fa2
Fix mismatched new/delete operators
2018-10-28 13:18:25 +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
22b18d97a0
Don't flush the dynarec cache when the sh4 instruction cache is flushed
...
Fixes Shikigami No Shiro II slowness
2018-10-28 01:29:44 +02:00
Flyinghead
15372f4187
Modem: close connecting sockets on exit
2018-10-26 19:38:59 +02:00
Flyinghead
cfbd261c75
Initialize PVR function pointer to non-null
2018-10-26 18:17:30 +02:00
Flyinghead
aab0a4e36d
Modem: Fix VC 2K game sport games series
2018-10-26 18:14:34 +02:00
flyinghead
ea993d92e9
DSP: access violation on win32 x86 due to missing exec perm
2018-10-24 18:37:11 +02:00
Flyinghead
4fcfabf55a
Aica-arm: fix x86 dynarec with gcc
2018-10-24 18:02:27 +02:00
flyinghead
ebca83e56e
Naomi: fix raw BIN/DAT files loading on win32
2018-10-24 10:34:50 +02:00
Flyinghead
efcb95b4ee
Naomi: proper read/write handlers for memory area 0x600000
2018-10-22 17:35:08 +02:00
Flyinghead
af1b2da0bf
maple: minor fix
2018-10-22 17:33:38 +02:00
Flyinghead
b1bd3e251e
Naomi: get rid of .lst files
2018-10-21 22:16:28 +02:00
Flyinghead
c07cbbe9bf
JVS: fix substract coin
2018-10-21 03:25:49 +02:00
flyinghead
e7fd2919bd
win32: ignore lst size when mapping Naomi rom files
2018-10-21 02:55:07 +02:00
flyinghead
e8a6835972
Naomi: force eeprom save. Ignore JVS node id if outside range
2018-10-21 02:50:08 +02:00
flyinghead
0d1a892515
JVS: fix buffer overflow (win32 crash)
...
Fix MSVC build.
2018-10-20 20:08:51 +02:00
Flyinghead
fb84df6665
Better logging
2018-10-20 19:38:21 +02:00
Flyinghead
9d327f3592
Aica-rec: revert to original ops order (load arm flags first)
2018-10-20 16:21:22 +02:00
Flyinghead
e31a1ddf71
Aica: fix ARM and x86 dynarecs for unaligned branch op
...
Fixes sound issue in Spikers Battle
Tentative implementation of x86 rec asm functions on linux
clean up
2018-10-20 13:59:12 +02:00
Flyinghead
431b3e4324
Naomi: buffer overflow
2018-10-19 19:23:43 +02:00
Flyinghead
d27d4f9b00
Naomi: fix for ARM
2018-10-18 09:55:17 +00: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
Flyinghead
18c6031bc8
JVS: Fix controls of Crazy Taxi, Power Stone and Zombie Revenge
2018-10-16 17:51:04 +02:00
Flyinghead
4b38b9b788
less log
2018-10-16 15:35:28 +02:00
Flyinghead
2214af734f
JVS: Fix multiple i/o board problems
...
Rotary encoders support for Virtua Golf and Shootout Pool
2018-10-16 15:34:45 +02:00
Flyinghead
7156a165e3
JVS: multiple I/O boards support and bug fixes
2018-10-15 00:59:52 +02:00
Flyinghead
2e367ed3c2
JVS: Fix length of various 86 commands
2018-10-12 17:19:59 +02:00
Flyinghead
cab0bdbe42
Fix light gun y position in VGA mode
2018-10-12 17:19:03 +02:00
Flyinghead
f24edb4df5
Don't die on ObjectList PVR list type
...
NAOMI Virtual On Oratorio
2018-10-12 17:18:21 +02:00
Flyinghead
2c4e68ff9f
JVS: refactoring to be closer to actual hardware
...
Returns multiple JVS messages at once
Multiple I/O boards correctly handled
Jambo Safari playable
Virtua Golf boots
2018-10-11 21:17:55 +02:00
Flyinghead
82e0fc7f60
Don't crash on invalid ram write size. Report and ignore
2018-10-11 21:15:00 +02:00
Flyinghead
ff01e3521b
Better NAOMI JVS emulation
2018-10-11 10:09:28 +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
Flyinghead
27b710e589
ifdef's around renderer types
2018-10-04 20:01:14 +02:00
Flyinghead
b47be37b32
Dynamic switching between GL3 - GL4 renderers
2018-10-04 19:44:52 +02:00
Flyinghead
3a929aeeb1
Terminate A-buffers cleanly. Call renderer Term() at shutdown.
...
Less code dup.
2018-10-04 14:04:15 +02:00
Flyinghead
b8ae998252
If GL4 renderer is not supported, fall back to default. Fix SDL GL init.
2018-10-04 13:37:45 +02:00
Flyinghead
3f791d6f04
Merge OIT renderer into master
2018-10-04 10:29:23 +02:00
Stefanos Kornilios Mitsis Poiitidis
84bf6ab913
Merge pull request #1428 from reicast/fh/ftrc-op-fix
...
sh4: Fix FTRC (ipr, canonical, x86) by using correct positive cutoff value
2018-10-02 23:12:28 +02:00
Abandoned Cart
9bc22e7ecc
Merge pull request #1427 from reicast/fh/implied-listinit
...
Some games send TA data without calling ListInit first. Don't crash in that case
2018-10-02 09:59:11 -04:00
Flyinghead
f419786584
Fix sh4 FTRC op to use correct positive cutoff value.
...
Fix for interpreter, common dynarec and x86 rec.
Fixes wrong car color in Tokyo Xtreme Racer car selection screen.
2018-10-02 12:38:49 +02:00
Flyinghead
41899230fb
Some games send TA data without calling ListInit first. Don't crash in that case.
...
Fixes crashes in Looney Tunes Space Race, Test Drive Le Mans and others.
2018-10-02 10:25:15 +02:00
Flyinghead
19b37b9957
Do not crash on unaligned VRAM read access. Just return 0.
...
Fixes House of the Dead 2
2018-10-02 10:07:11 +02:00
Flyinghead
601fafa1ad
Light gun support
2018-10-01 20:34:35 +02:00
Flyinghead
7b596bd388
Avoid heap corruption on android
...
No idea why this happens. Avoiding malloc/free during compile seems to
help.
2018-09-30 20:42:18 +02:00
Flyinghead
d81a3cd720
save states: fully restore the maple devices when loading a state
2018-09-29 16:13:07 +02:00
Flyinghead
af5931c214
House of the Dead 2 does unaligned vram access
2018-09-26 22:53:43 +02:00
Flyinghead
a522bf114b
maple: Fix mouse FD
2018-09-26 22:37:51 +02:00
Flyinghead
10c7650690
Schedule the interrupt signaling the end of an Aica DMA transfer instead
...
of raising it immediately.
Fixes Street Fighter Alpha 3 and Bomberman Online
2018-09-26 22:01:48 +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
e3bb0a09ab
Detect TA overruns and cancel the rendering. Increase vertices, indices
...
and translucent polygons max count.
Fixes crashes in D2 and Triggerheart Exelica.
2018-09-26 09:42:43 +02:00
Flyinghead
4547973561
Better mouse handling on X11
2018-09-26 02:00:50 +02:00
Flyinghead
3ff14dd2b3
Modem: shutdown local socket when remote is shutdown
...
Fixes issues with http requests: web browsers, Monaco Grand Prix Online
2018-09-26 00:04:57 +02:00
flyinghead
c135ab0e90
Win32: fix msvc build. removed tick thread
2018-09-25 14:09:07 +02:00
Flyinghead
1320ce5949
Modem: Close pico socket when native one returns an error.
...
Linux build fix.
2018-09-25 12:39:37 +02:00
flyinghead
be8bae0547
Modem: port to win32/winsock
2018-09-25 12:29:51 +02:00
flyinghead
21f47c03ec
Fix dynarec x64 crash with mingw64.
...
Get rid of CDI warning pop up dialog
2018-09-25 12:27:37 +02:00
Flyinghead
c850093b0a
OSX: bind -> ::bind for UDP too
2018-09-24 21:37:07 +02:00
Flyinghead
36e13a9468
Proper way to close sockets
2018-09-24 21:19:43 +02:00
Flyinghead
2c343fddf2
modem: Transparent IP proxy. Removes the need for a TAP/TUN device
2018-09-24 19:06:14 +02:00
Flyinghead
dc5ce8fa8b
Create maple devices on Linux. Default to 2 VMUs per controller
2018-09-24 18:56:24 +02:00
Flyinghead
411baa6b8e
OSX: Save states support. Build fixes.
2018-09-23 16:18:35 +02:00
Flyinghead
3c60d4745c
G2-EXT2 DMA channel
2018-09-21 18:27:45 +02:00
Flyinghead
6e017fd3ef
Tentative fix for Maken X hang
2018-09-21 17:56:29 +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
8a2684ff55
Dreamcast mouse emulation
2018-09-18 09:27:16 +02:00
Flyinghead
2081a0c21b
Modem doc fix
2018-09-17 21:32:28 +02:00
Flyinghead
63a8d0cca9
Modem config documentation
2018-09-17 21:28:50 +02:00
Flyinghead
b9d0a4f688
msvc fix
2018-09-17 19:43:05 +02:00
Flyinghead
4a42cd6bae
msvc fix
2018-09-17 18:45:11 +02:00
Flyinghead
b256141b0d
No picotcp for msvc
2018-09-17 18:14:48 +02:00
Flyinghead
1314a1551d
picotcp: add msvc-specific arch include. Win: never stop net stack
2018-09-17 15:29:20 +02:00
Flyinghead
92a39a1fc4
Static picotcp config for msvc. Fix warnings in modem.cpp.
2018-09-17 14:05:03 +02:00
Flyinghead
59fe373a3a
Tentative fix for win VS build. Fix Makefile clean
2018-09-17 13:33:50 +02:00
Flyinghead
bc6a8f451a
Fix picotcp on Windows
...
Automatically configure tap IP address, route and proxy arp using iphlpapi.
Partial port to MINGW.
2018-09-17 12:59:52 +02:00
Flyinghead
6699a8a294
Use picotcp for ppp protocol processing. Now all is needed is a tap or
...
tun interface.
2018-09-15 21:41:54 +02:00
Flyinghead
54308a0949
Incorrect modem status bit was causing all received data to be ignored.
...
All games connect to Dreamcast Live lobby.
Tested Quake III in-game.
2018-09-14 11:18:10 +02:00
Flyinghead
fe4c310306
more build fixing
2018-09-12 15:18:12 +02:00
Flyinghead
baa60bb097
Fix non linux builds
2018-09-12 14:52:45 +02:00
Flyinghead
e3d99541d6
Modem support and pipe out to ppp.
...
Allow Ooga Booga and NFL 2K2 to connect to network lobbby at https://www.dreamcastlive.net .
Sadly all other tested games still fail the ppp handshake. Work in progress...
2018-09-12 13:20:20 +02:00
Flyinghead
0e939b5f68
Keyboard: Better keycode mapping, added CTRL. Maple cleanup.
2018-09-08 14:35:46 +02:00
Flyinghead
50010418ce
Fix size of framebuffer to watch for direct writes
2018-09-07 12:55:42 +02:00
Flyinghead
30f016e6a0
Use vram_mask on framebuffer watch start and end addresses
2018-09-06 22:20:17 +02:00
Flyinghead
54d0bdc5e2
Dreamcast keyboard emulation (X11 only for now)
2018-09-06 20:17:28 +02:00
Flyinghead
e54ac36544
Texture cache optimization for frequent palette updates
...
Some old 2D games change palettes very frequently, which causes the
texture to be updated for each render.
This change uses a hash of the palette to detect changes, and include
the palette type in the cache key to distinguish textures of different
depth.
2018-09-06 12:11:55 +02:00
Christoph
1c880fc37c
Merge pull request #1369 from reicast/fh/ta-context-1mb
...
Round TA context to 1MB at ListInit time so it is found when rendering
2018-09-04 18:23:20 +02:00
Flyinghead
ea9bc5ff1c
Round TA context to 1MB at ListInit time so it can be found at render time
...
Fixes black screen in NFL 2K2, NBA 2K2, Oooga Booga, Floigan Bros. and probably more Visual Concepts games.
2018-09-03 14:32:00 +02:00
Flyinghead
614ec7e9b1
Fix 32-bit vram bank mapping
...
Fixes texture corruption and other problems in many games
2018-09-03 12:39:52 +02:00
Flyinghead
395bfd5dbb
Fix 32-bit vram bank mapping
...
Fixes graphical glitches in Naomi games: Melty Blood Act Cadenza, 18
Wheeler, Spawn and probably others
2018-09-03 12:26:16 +02:00
Sven
daae7c8e68
add save states
2018-09-02 09:49:23 -04:00
Flyinghead
96e9bce0e0
(Fog) Color clamping support
2018-09-01 12:56:37 +02:00
Flyinghead
1546e4fa8a
Revert a change in the previous commit which breaks sprite stripping.
...
Fixes sparks glitch in Sonic Adventure 2
2018-08-31 10:26:08 +02:00
Abandoned Cart
4ed65fca3d
Revert "Fix to windows OpenFile dialog #1238"
2018-08-28 13:38:11 -04:00
Abandoned Cart
a1996f0fe9
Merge pull request #1352 from reicast/pold500/fix-openfile-dialog
...
Fix to windows OpenFile dialog #1238
2018-08-28 08:12:42 -04:00
Pavel Dmytriiev (Github)
a4e6dbadb5
Fix to windows OpenFile dialog
...
Now it actually says something about what exactly it tries to open, also on "cancel" it exits gracefully.
Proposal: instead of checking one thousand return codes, which are easily ignored, I suggest using an exceptions (this part of emulator doesn't require execution speed, so exceptions here would be just fine).
2018-08-27 23:20:39 -04:00
Christoph "baka0815" Schwerdtfeger
bc873cb228
Maple: Corrected creation of empty VMU
...
The VMU which was written to disk was never initialized and therefore consisted only of zeroes.
After saving for the first time the VMU was corrupted.
Changes:
* Not only initialize the VMU in memory but also write the correct contents to disk
* If an existing VMU consists only of zeroes overwrite it with the initial empty VMU
2018-08-27 13:50:59 +02:00
Ender's Games
5bdc362da3
Remove QueueRender option (non-functional)
...
Reverts:
2c517896b2
e81f43ff20
9ed9f460e9
2018-08-27 00:42:21 -04:00
Ender's Games
14fc7d910a
Convert Interrupt Hack to name w/ less stigma
2018-08-26 23:13:25 -04:00
Flyinghead
e59d7eaf3d
Direct framebuffer writes support
2018-08-26 16:58:10 +02:00
Flyinghead
bb3753dc86
Use already defined constant TA_CURRENT_CTX
2018-08-26 16:31:41 +02:00
Ender's Games
9ed9f460e9
Invert QueueRender to allow better explanation
...
Have the setting porform the action rather than having a value that, when disabled, did what the name implies it enables.
2018-08-22 21:14:49 -04:00
Ender's Games
d8226c7b5d
Fix: "Functions should be declared at file scope"
2018-08-22 21:14:42 -04:00
Ender's Games
2c517896b2
PVR: Add a QueueRender flag to force usage
...
Originally implemented with libretro-reicast commit:
38186045d9aebc8ff2b6118de70f4c2596914914
Modified for use w/ reicast per-game configuration
2018-08-22 21:14:19 -04:00
Ender's Games
f76df2da62
GDROM: Increase dma buffer cache sectors
...
4e956d9ef8
2018-08-22 21:14:11 -04: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
Abandoned Cart
3905d6e9fb
Merge pull request #1310 from reicast/lk/lgtm
...
Core: Address some obvious lgtm issues
2018-08-21 10:08:32 -04:00
Ender's Games
eb11d19687
Include header guards to prevent multiple inclusions
2018-08-21 09:28:54 -04:00
Christoph "baka0815" Schwerdtfeger
638a97d1ae
Maple: Reworked the way controllers are created
...
A new function was introduced to abstract the setup of input devices for each os: os_SetupInput().
I hope I implemented this everywhere correctly and the behaviour is identical to before.
The new function mcfg_CreateNAOMIJamma() creates the NAOMI Jamma interface and is hidden behind a compile flag (same as before).
The previous function mcfg_CreateDevices() was renamed to mcfg_CreateDevicesFromConfig() because it creates the devices based on the configuration (``nb`` setting).
2018-08-21 00:33:18 -04:00
Christoph "baka0815" Schwerdtfeger
8212be4850
MapleDeviceType: Add MDT_None
2018-08-21 00:32:05 -04:00
Christoph "baka0815" Schwerdtfeger
7ef105822a
evdev: Move creation of controllers
...
Don't expose mcfg_Create() directly, but use a proxy method mcfg_CreateController() to create the complete controller.
Using evdev the ``nb``-setting in the ``emu.cfg`` is no longer necessary (see #970 ) as the devices get created while initializing the controllers.
Moved the ``switch`` to it's own function.
2018-08-21 00:32:05 -04:00
Christoph "baka0815" Schwerdtfeger
f75ba32fa9
evdev/maple: Set devices via config
2018-08-21 00:32:05 -04:00
Ender's Games
78977387ac
Reios: perform initial configuration, as needed
2018-08-20 12:28:58 -04:00
Ender's Games
e64367a0ad
Android: A very simple method to set 4:3 resolution
2018-08-19 02:03:10 -04:00
Ender's Games
8d9d40dffc
Core: Changes provided by Android NDK compiler
2018-08-19 01:54:15 -04:00
Flyinghead
6ffe4c0280
Sprites face culling is reversed.
...
Fixes South Park Rally and Wacky Races invisible menus.
2018-08-17 19:13:59 +02:00
Flyinghead
2fb9927688
Less console spamming
2018-08-17 18:30:54 +02:00
Ender's Games
a3f585ea1c
Port the dynarec safe flag from nullDC (See #84 )
2018-08-16 20:00:10 -04:00
Flyinghead
11738c9b1f
DSP: interpreter optimization
2018-08-14 00:59:34 +02:00
Flyinghead
90b1595101
Input mapping hack for naomi: put mapping in lst file
2018-08-13 20:32:07 +02:00
Flyinghead
e10b46dbca
Aica: missing dsp_term() for x86 dynarec
2018-08-13 18:05:56 +02:00
Flyinghead
32a56136ef
Compile x86 arec when enabled
2018-08-13 16:38:38 +02:00
Flyinghead
94c995510e
aica: Terminate the dsp at shutdown
2018-08-13 16:34:29 +02:00
Flyinghead
fddf56c5a2
Fix TA overrun detection. Bump up verts to 2 MB, idx to 120K and TR
...
polys to 8K
2018-08-03 09:55:53 +02:00
Flyinghead
1e661a4d45
AICA DMA: raise end of transfer interrupt immediately for small
...
transfers.
Fixes Bangai-O startup freeze
2018-08-02 18:25:02 +02:00
Abandoned Cart
9beb87ef64
Merge pull request #1236 from reicast/clean-exit-light
...
Exit cleanly in desktop platforms
2018-08-02 12:20:03 -04:00
Flyinghead
ec2ac75839
Merge master
2018-08-01 20:23:16 +02:00
Flyinghead
31d8c1f091
Backport texture upscaling with xBRZ
2018-08-01 19:43:01 +02:00
Flyinghead
9942bfc86e
Merge branch clean-exit-light
2018-08-01 18:02:50 +02:00
Flyinghead
a11dd3f159
Get rid of EGHack
2018-08-01 17:20:41 +02:00
Flyinghead
1e67f9be0b
Schedule Aica DMA interrupt instead of raising it immediately.
...
Fixes Street Fighters Alpha 3 freeze.
2018-08-01 16:55:50 +02:00
Flyinghead
1ac497ba30
Update AEG params when FNS or OCT registers are updated
...
Fixes Bomberman Online FMV intro freeze, Jet Grind Radio and Psyvariar 2 intro music fade out and probably more.
2018-08-01 16:30:43 +02:00
Stefanos Kornilios Mitsis Poiitidis
7da4f09c01
TA: Alloc 8mb for fifo storage, workaround for doa2le
2018-07-31 00:56:26 +02:00
Flyinghead
02bbdb3ebe
Fix build on win x64
2018-07-29 21:57:57 +02:00
Flyinghead
8c3247d1b2
Generic interpreted DSP
2018-07-29 21:47:30 +02:00
Flyinghead
92c06a7249
Update AEG params when FNS or OCT are updated.
...
Fixes Bomberman Online FMV intro freeze, Jet Grind Radio and Psyvariar 2 intro music fade out.
2018-07-29 18:23:53 +02:00
Flyinghead
5960450e76
Linux x86 fix. Wait for renderer thread to end.
2018-07-24 17:24:56 +02:00
Flyinghead
20de593a88
Clean exit on OS X. Minor changes.
2018-07-24 14:27:58 +02:00
Flyinghead
b28e1505c5
Fix dynarec on OSX/x64. Clean exit when window closed.
2018-07-24 13:26:31 +02:00
Flyinghead
960904c401
Exit cleanly in desktop platforms
...
Lighter and cleaner version of the previous PR
2018-07-23 19:52:50 +02:00
Flyinghead
71d7f90858
Merge upstream
2018-07-19 12:19:51 +02:00
Flyinghead
ff08d93019
npos undefined. Use -1 instead
2018-07-18 19:32:51 +02:00
Flyinghead
a17a0bae3b
Utility to display a single frame
2018-07-16 17:19:45 +02:00
Flyinghead
dc835dd64d
Dump shaders source if compile fails
2018-07-16 16:52:11 +02:00
Flyinghead
2d3fd59e04
Revert f13b366e8d57c15a6a97cc0721d68ddb5268385f: the fixNaN function is
...
completely bogus and the correct one doesn't have any effect.
2018-07-14 09:13:56 +02:00
Flyinghead
f13b366e8d
Set the value for NaN according to the SH4 specs
...
The SH4 sets the signaling bit to 0 for qNaN: 7fbfffff instead of the
usual 7fffffff. Same games seem to rely on this.
Fixes Fur Fighters freeze and missing geometry in game.
2018-07-13 18:57:51 +02:00
Flyinghead
ea35eeb728
Fix FTRC op in both interpreter and dynarec with respect to Inf and NaN
...
The -ffast-math gcc option implies the -ffinite-math-only option, which
produces wrong results with Inf and NaN. Use integer math to detect the
sign of float numbers in FTRC to avoid these issues.
Also the upper cut off value for conversion was apparently wrong.
Also fixed the x86 dynarec but not tested.
Fixes wrong car color in Tokyo Xtreme Racer car selection screen.
2018-07-13 12:02:32 +02:00
Flyinghead
527628d366
weird character again
2018-07-10 18:08:27 +02:00
Flyinghead
648988e622
don't log div32 matching and some GDRom ops
2018-07-10 14:36:28 +02:00
Flyinghead
92e16d436e
PVR DMA: VRAM->System RAM transfer was handled the other way around
2018-07-10 12:07:35 +02:00
Flyinghead
6df46b1d83
Enable Naomi eeprom reading and writing
2018-07-09 16:24:37 +02:00
Stefanos Kornilios Mitsis Poiitidis
5525d5dde2
core: Android studio fixes
...
- Clang edge cases for shifts
- Avoid generating relocs by not using global symbols in ngen_arm.S (fixes #1109 )
2018-07-09 09:31:45 +02:00