flyinghead
93ceb92c12
x86 dsp dynarec
2021-01-26 18:48:17 +01:00
flyinghead
c344903a23
new x86 dynarec. Enable for android
...
refactor common code between x64 and x86 dynarecs.
x86 rewrite based on the x64 one
some discarded dyna blocks weren't fully unlinked
2021-01-26 13:16:48 +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
ed7bd06f96
win32: multiple mice support. Patch and build SDL
2021-01-21 21:00:46 +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
a23c895668
sh4: restore rounding/denormal mode after pausing the game
...
fixes Sword of the Berserk glitch when pausing/restarting
2021-01-19 18:28:21 +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
287836803d
interp: don't touch the sh4 cache in normal mode
2021-01-15 10:21:05 +01:00
flyinghead
3dc3f7b7c2
naomi: wrong path when looking for gdrom in parent rom folder
2021-01-15 10:18:15 +01:00
Flyinghead
36451614d2
rec-x64: don't use vfmadd to avoid intel/amd variations
2021-01-08 21:40:13 +01:00
flyinghead
e5b3c5268b
wince: attempt immediate read/write when address isn't translated
2021-01-07 19:18:53 +01:00
Flyinghead
ed6e544e11
naomi: fix crash when loading wwfroyal game test menu
2021-01-05 18:58:06 +01:00
Flyinghead
baa36925e2
naomi: more rom list to cpp. remap pjustice buttons. add more inputs
2021-01-05 18:39:00 +01:00
Flyinghead
65563942cd
naomi: add dybb99, dybbnao, ringout and sstrkfgt inputs
...
Issue #154
2021-01-05 10:30:01 +01:00
Flyinghead
f906d08376
more 32b windows fix
2021-01-04 22:00:15 +01:00
Flyinghead
99bd8b4972
get rid of USE_MODEM/ENABLE_MODEM
2021-01-04 20:58:29 +01:00
Flyinghead
eeca82b4e2
32b win build fix
2021-01-04 20:44:15 +01:00
Flyinghead
2c8b5aa7f8
vs2019 build tentative fix
2021-01-04 18:56:15 +01:00
Flyinghead
d7fcd3d47c
jvs: allow more than 1 player with analog axes
...
add wsbb and smlg99 input mappings. Issue #152
2021-01-04 10:43:45 +01:00
Flyinghead
de260b89af
net: launch miniupnp async. filter loopbacked broabcast pkts. dhcp reset
...
ftspeed network support
delete all dhcp negos when destroying dhcp server
filter broadcasted udp packets coming from self
launch miniupnp async since it takes time to complete (2-4s)
fix unit test
2021-01-03 21:25:27 +01:00
Flyinghead
889fc8256d
broadband adapter support
2021-01-02 21:19:50 +01:00
Flyinghead
62a1e29670
modem: do not reject VJ option for Web TV
2020-12-29 18:02:06 +01:00
Flyinghead
cc7a292591
macOS: link sdl statically, hide vulkan. naomi: use miniupnp for server port
...
macOS doesn't need volk or glslang
link sdl statically
add GameController.framework (Xcode)
2020-12-29 11:53:00 +01:00
Flyinghead
9c43a55c42
miniupnpc: fix include dir
2020-12-28 13:15:06 +01:00
Flyinghead
e7ae03ded9
modem: use miniupnp to open router ports
2020-12-28 11:31:26 +01:00
Flyinghead
6f27b9b6b7
force wercker on ubuntu 18.04. Minor change
2020-12-27 09:05:55 +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
5905b8c148
dsp: don't clear EFREG
...
pass AICA0203 diag test
2020-12-20 23:19:24 +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
d0d9712545
gdrom: allow 0-len transfer
...
fixes Pro Pinball Trilogy hang during intro
2020-12-18 19:27:19 +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
4ca0b56106
flash: zero initialize
2020-12-18 13:44:40 +01:00
Flyinghead
e94e757743
naomi: align SB_GDSTAR on 32-byte boundary
...
Fixes vtennis (Issue #92 )
2020-12-18 13:43:42 +01:00
Flyinghead
34d86500fa
compile warnings. debug log. minor changes
2020-12-16 15:12:32 +01:00
Flyinghead
650c3ff8ae
pvr: serialize maple_int_pending. don't rend_reset in rend_term
2020-12-16 14:44:45 +01:00
Flyinghead
3f1326a3ac
rend: read framebuffer as non-interlaced when possible
2020-12-16 14:40:11 +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
93523df804
pvr: implement tile array region clipping. always draw background
...
fixes Quake 3 split-screen multiplayer
2020-12-15 14:17:58 +01:00
Flyinghead
9191795b4c
pvr: increase PT max poly count
...
fixes Revolt overrun
2020-12-15 14:15:02 +01:00
Flyinghead
d960f8e9f5
lightgun: handle screen stretching, rotation and tall aspect ratio
...
Issue #139
move jvs stuff into maple_jvs.cpp
2020-12-09 13:48:58 +01:00
Flyinghead
a39199d379
clean up
2020-12-07 22:16:51 +01:00
Flyinghead
d7c49c6522
naomi: memory leak with decrypted carts
2020-12-07 22:12:16 +01:00
Flyinghead
14393ea6b1
improved microphone emulation. support for linux and windows
2020-12-05 18:47:09 +01:00
Flyinghead
579db85b3b
modem: fix various picotcp tcp issues (re-xmit timers, segment split)
...
modem: delay receiving initial ppp handshake until after sending data
(WinCE)
reduce char receive delay to 143 us
make sure picosocket buffer is empty before shutting down socket
use 536-byte segment for tcp sockets
increase linger delay to 10 sec (avoid sending RST when waiting for FIN)
picotcp: disable window scaling option
dupe ack reception in full window mode should enter dupack mode
pick the correct segment to re-xmit in recover mode
both partial frames should be enqueued when splitting segment
fix wrong size when splitting segment and crash if splitting first one
make sure re-xmit timer is correct in tcp output
2020-12-04 11:23:15 +01:00
Flyinghead
6154cc08db
serial: fix maxspeed hang at boot reading from console
2020-12-02 14:44:16 +01:00
Flyinghead
adeacd89f4
input: implement reload. remap some naomi games input
...
implement lightgun reload (dc, naomi)
kcode[] set to 32 bits
revamped mapping for naomi keys
remapped btns for some naomi games
display game button/axes names in UI
2020-12-02 14:40:50 +01:00
Flyinghead
8905410aa4
clean up
2020-11-30 21:59:13 +01:00
Flyinghead
ef16842074
awave: fix lightgun trigger and position
...
fix aw lightgun trigger virtual key with new lightgun map
delay maple dma int when maple bus occupy is set for a lightgun.
raise maple int at vblank in if off screen
nudge reported position to avoid registering as off screen
2020-11-30 21:31:50 +01:00
Flyinghead
c6f5a406a7
picoppp: use char instead of u8
2020-11-30 13:05:13 +01:00
Flyinghead
1d17dbd121
modem: avoid spurious retransmit. limit ppp buffer size.
...
set actual modem receive speed to 48K
picotcp: avoid spurious retransmit after window full. set min RTO to 1
sec.
buffer incoming data until pico socket can accept it.
limit tcp payload to 512 bytes.
Issue #114
2020-11-30 12:52:46 +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
d485da19b7
picotcp: close connecting sockets when notified
2020-11-26 14:08:37 +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
305ab38ac8
naomi: search parent rom path for gdrom
2020-11-24 20:50:50 +01:00
Flyinghead
4dd05ca23f
aica: saturate EG when aeg reaches 3bf. non-functional changes
2020-11-24 20:07:10 +01:00
Flyinghead
eb2c762214
rec: avoid div32 crash when dividing by 0
...
Fixes Sakura Taisen 2 floating point exception crash
2020-11-21 20:46:40 +01:00
Flyinghead
99b01536bc
reios: fix crash when loading a HLE savestate in a non-HLE session
...
flashrom pointer wasn't initialized in this case
2020-11-21 20:09:06 +01:00
Flyinghead
525c2dc88c
sh4: promote opcode 0 as regular NOP
2020-11-21 20:06:59 +01:00
Flyinghead
47f262a2c6
vk: use normal pipeline for raw fb display
...
raw fb also needs to be rotated/scaled
oit: draw opaque polys on first frame
2020-11-19 22:29:06 +01:00
Flyinghead
99bfbeb3bc
naomi: JVS IO response CRC byte, JVS Self Test command/response
...
Adds JVS IO response CRC byte, Add JVS Self Test command/response
backport https://github.com/libretro/flycast/pull/972
2020-10-24 15:10:55 +02:00
Flyinghead
d7b1ad61f3
aica: make sure lpf cutoff value is > 0
...
Issue #108
2020-08-31 21:53:33 +02:00
Flyinghead
3bc508deea
gdrom: fix D2 disk switching
...
Issue #107
2020-08-17 09:23:22 +02:00
flyinghead
700994340b
cmake: add sdl to vstudio build. Fix WinCE crash
2020-07-23 18:50:55 +02:00
Flyinghead
860425b3cc
naomi: zombie revenge analog axes. add puyofevp. fix pokasuka
2020-07-20 12:03:20 +02:00
Flyinghead
4ecf43a08d
vulkan: revert to using 3 swap images. fix crash when switching gl/vk
...
Fix Hello Kitty crash with empty first TR polygon
Fix Test Drive Le Mans crash on invalid textures
Fix wldkickspw crash with invalid TA data
2020-07-11 17:38:41 +02:00
Flyinghead
adf5a7e8e4
fix tests. sdl init iisue on rpi3
2020-07-06 17:29:53 +02: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
a446199312
g2 dma: use templates. SB_G2APRO support. maple: fix SB_MDAPRO support
2020-06-25 14:49:53 +02:00
Flyinghead
89842c6d30
modem: better handling of reset register
2020-06-24 15:48:05 +02:00
Flyinghead
3694e8e87a
flash: select mode. fix sector protection. implement reset
2020-06-24 15:41:12 +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
6402c8e7ed
maple: check SB_MDAPRO magic number
2020-06-23 19:20:55 +02:00
Flyinghead
8b44ebbdab
maple: don't overrun device strings
2020-06-23 18:10:22 +02:00
Flyinghead
959b6344b3
gdrom: fix cd_read2, req_error, req_stat and more
2020-06-17 22:58:26 +02:00
Flyinghead
15a99aeebe
aica: internal dma implementation
2020-06-15 21:42:47 +02:00
Flyinghead
8192eea387
maple: msb selection, implement/fake reset, kill and allreq commands
...
overrun and illegal address ints in strict mode
2020-06-15 17:04:04 +02:00
Flyinghead
5cfed1e482
div32: get rid of edge cases. simplify
2020-06-15 16:56:09 +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
Flyinghead
8740f22c0a
fix all known div32 issues
...
support libretro naomi and aw savestates
2020-06-06 18:53:47 +02:00
Flyinghead
0fd51fb52a
android: ignore audio latency. skip less frames in synchronous mode
...
android: use minimum size for audio buffer
alsa: use period size of 1024 instead of 512
hide audio latency option for android, win32 and mac
relax frame skipping formula
2020-06-05 21:16:48 +02:00
Flyinghead
002a05f866
dsp: proper MIXS input shift
2020-05-30 19:57:58 +02:00
Flyinghead
1301103245
maple: fix vmu reset in BIOS. naomi: support P2 buttons mapped to P1
2020-05-29 14:45:12 +02:00
Flyinghead
34575d577c
fix sdl+egl build. get rid of USES_HOMEDIR. thread deadlock at exit
...
fix odroid xu3 build
sdl: use left or right alt+enter to maximize window
deadlock at exit if dc_exit called from emu thread
2020-05-08 18:41:36 +02:00
Flyinghead
8a6dbef775
naomi: don't die if eeprom cannot be updated (network), log instead
2020-05-02 18:24:13 +02:00
scribam
6ee4b6de85
Replace OS_DARWIN by __APPLE__
2020-04-26 14:19:21 +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
Flyinghead
2c54dfd132
arm64: check CpuRunning at end of each timeslice. clean up
...
fixes hang when exiting service menu in kofnw
2020-04-24 19:56:38 +02:00
Flyinghead
482b7427f0
ui: get rid of 100% notif message. avoid logging garbage when canceled
2020-04-24 19:46:23 +02:00
scribam
0b1d739673
MSVC Cleanup
2020-04-23 14:10:49 +02:00
Flyinghead
adfe30cf4c
osx: allow exit with button. clean exit
...
terminate network in dc_term to avoid static init order issues
osx: call dc_term before exit
osx: exit app when exit button is pressed (dc_exit)
osx: ignore -NSDoc... app args
2020-04-23 11:46:34 +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
scribam
58abddfd27
Compilation fixes for MSVC
2020-04-20 22:17:32 +02:00
Flyinghead
64249eb68e
gdrom: shrink gdrom buffer to decent size
2020-04-20 18:53:08 +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
3660cf49f4
naomi net: don't xmit the packet number
2020-04-17 18:09:56 +02:00