Commit Graph

1033 Commits

Author SHA1 Message Date
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
Flyinghead 77fae1ef09 Backport changes from libretro 2018-10-05 15:07:30 +02:00
Flyinghead 124f920170 Backport GL 2.0 support from libretro core 2018-10-04 22:37:35 +02:00
Flyinghead dfd0f2901b minor clean up 2018-10-04 21:30:22 +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 8116072f7e Refactor shader selection/compilation. Avoid using glcache for texture
in GL4 renderer.
2018-10-04 15:55:41 +02:00
Flyinghead 7203681202 Less code dup 2018-10-04 14:49:20 +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 0260b00c00 Less code dup 2018-10-04 12:32:26 +02:00
Flyinghead 1dfc9902b7 Share scale_x and scale_y between GL and GL4 renderers. Don't use
ShaderUniforms in OSD.
2018-10-04 12:03:00 +02:00
flyinghead ef5e8593fa GL4: Initialize atomic buffer correctly. Limit size of pixel buffer.
SetupMainVBO should be static
2018-10-04 10:58:33 +02:00
flyinghead ce65be2f63 dsound: always wait on push 2018-10-04 10:56:07 +02:00
Flyinghead 3f791d6f04 Merge OIT renderer into master 2018-10-04 10:29:23 +02:00
Flyinghead ba8e9dcab0 link error with dispframe 2018-10-02 12:29:29 -04:00
Flyinghead 0627530e33 GL: avoid white lines on the screen sides due to rounding 2018-10-02 12:28:42 -04:00
Flyinghead 601fafa1ad Light gun support 2018-10-01 20:34:35 +02:00
Flyinghead 19c0e3aea5 arm: Link error when compiling for arm with TARGET_NO_AREC 2018-10-01 09:35:02 +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 5d8d1bd107 GL: Partial redraws. OSD fixes
EGL: Request the surface to be preserved between two rendering
Clear the sides of the screen when not rendering widescreen.
Do not re-create GL resources multiple times (android)
2018-09-30 12:39:47 +02:00
Flyinghead 9de8379434 GL: clear gl framebuffer before drawing a direct FB write 2018-09-29 18:10:43 +02: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
Flyinghead d81a3cd720 save states: fully restore the maple devices when loading a state 2018-09-29 16:13:07 +02:00
Flyinghead 407a579bfc GL: take pixel scaling into account for OSD buttons and text coords
Fixes OSD with Wacky Races and JoJo's Bizarre Adventure
2018-09-29 14:48:18 +02:00
Flyinghead c49e6c17d0 gl: isinf() issues with GLES3. Use it with GL only
Fixes black screen in PSO and Sonic Adventure 2 on Android
2018-09-27 21:45:03 +02:00
Flyinghead 5fe41e5f1f keyboard: reset released key 2018-09-26 22:58:15 +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 752d254982 X11: keyboard auto-repeat detection 2018-09-26 10:08:49 +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 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 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 98da3a28dc rec-x86: Load PC from sh4 context in ngen_mainloop
Fixes load state freeze and problems when pausing the emu thread
2018-09-23 12:04:07 +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 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 62eeca5882 Merge remote-tracking branch 'origin/master' into fh/mymaster 2018-09-21 00:37:34 +02:00
Flyinghead 6a5ae18179 Prepend game name to state file 2018-09-20 22:41:10 +02:00
Flyinghead cebc7486f8 Change cycle_counter to an int instead of u32 in the x86 dynarec 2018-09-20 22:23:38 +02:00
Flyinghead 48225e7516 Don't serialize uneeded stuff. Fix windows build. 2018-09-20 22:00:03 +02:00
Flyinghead a742b53369 Fix linux x86 startup crash 2018-09-20 21:59:19 +02:00
Flyinghead f355dda6a4 savestates: build fixes 2018-09-20 20:06:54 +02:00
Flyinghead de147549c3 Save states implementation 2018-09-20 19:48:46 +02:00
Christoph "baka0815" Schwerdtfeger 5b8749fbaa evdev: If there was an error initializing a controller, don't proceed
If the controller was not correctly initialized, the fd and/or the mapping might not be set, which could then result in access violations or other errors.
2018-09-20 17:43:24 +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
Flyinghead c5efc3531b ppp: Fix FCS calc, better LCP negotiation, pppdump
Fix an error in FCS calculation of sent packet when header compression
is not being used. Fixes PSO connection issue.
Added support for Async Char Map and Magic number LCP options.
Added pppdump-compatible dump file for easier debugging.
2018-09-19 10:56:10 +02:00
Flyinghead 21b685c812 Spurious character in OS X code path 2018-09-18 19:22:58 +02:00
Flyinghead df61073c39 Clip textures that extend past the end of VRAM.
Only load the valid portion of it.
Fixes Shenmue Space Harrier mini-arcade game.

Disable verify on non-square twiddled textures for Quake 3.
2018-09-18 12:01:16 +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 eb62b79791 OSX: Build fix 2018-09-17 18:41:44 +02:00
Flyinghead b256141b0d No picotcp for msvc 2018-09-17 18:14:48 +02:00
Flyinghead fc96593e80 Fix android build 2018-09-17 17:52:29 +02:00
Flyinghead 1314a1551d picotcp: add msvc-specific arch include. Win: never stop net stack 2018-09-17 15:29:20 +02:00
Flyinghead 843c912d86 win vs: more compile fix 2018-09-17 14:48:43 +02:00
Flyinghead ae829405b5 picotcp msvc fix: __inline, usleep 2018-09-17 14:31:27 +02:00
Flyinghead bc7fed4919 picotcp: wrong ifdef value 2018-09-17 14:10:53 +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 663b77cee6 Fix OpenGL compile error with VMWare WS14 driver 2018-09-17 13:02:07 +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 ce3d8f2baa picotcp initial commit - missing files 2018-09-15 21:34:50 +02:00
Flyinghead aad38f965b picotcp initial commit as of 4caf65005045f0d34592274a5edd20c0d40d83f7 2018-09-15 21:28:13 +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 2a8591798f Only clamp color if tsp.ColorClamp is set. Thanks p1pkin 2018-09-12 17:50:42 +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 5b9cbb2909 log macro 2018-09-07 12:58:04 +02:00
Flyinghead 562d64bed5 Cleanly stop the web UI thread on exit 2018-09-07 12:57:26 +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
Flyinghead a167b43361 add game product id 2018-09-05 15:32:25 +02:00
Flyinghead 4a08856775 Render-to-texture upscaling must be accounted for when clipping 2018-09-05 15:07:30 +02:00
Flyinghead c43446f355 Initialize ExtraDepthScale for Android 2018-09-04 23:38:00 +02:00
Christoph 00ecf2f1ce
Merge pull request #1370 from reicast/baka/sdl
SDL: Fix keyboard usage
2018-09-04 22:25:03 +02:00
Christoph b402a56885
Merge pull request #1365 from reicast/baka/evdev_rework
Remove evdev specific code from main.cpp
2018-09-04 22:24:43 +02:00
Christoph "baka0815" Schwerdtfeger d3de815a0a Softrend: clean up if/else 2018-09-04 21:01:03 +02:00
Christoph "baka0815" Schwerdtfeger f96e0f1e5d Softrend: Error if no softrenderer backend found 2018-09-04 20:41:25 +02:00