35232 Commits

Author SHA1 Message Date
Gregor Richards
d373684bd5 Off-by-one 2016-12-18 19:28:42 -05:00
Gregor Richards
b51cf8be2b Real, actual (almost) >2-player support. 2016-12-18 19:28:42 -05:00
Gregor Richards
2cc8c5c467 Removing silly foo_ names used to help migration. 2016-12-18 19:28:42 -05:00
Gregor Richards
53c46530aa Very first tidbits of true multiplayer support (minus actual multiple
players so far)
2016-12-18 19:28:42 -05:00
Gregor Richards
b5cd187077 Since there's now only one mode, removing netplay_callbacks entirely. 2016-12-18 19:28:42 -05:00
Gregor Richards
9b2270f5d4 Say goodbye to spectator mode (for now) 2016-12-18 19:28:42 -05:00
Gregor Richards
4768970d52 Moving force_send_savestate from netplay to connection. 2016-12-18 19:28:42 -05:00
Gregor Richards
ea722b49c8 Move other_addr from netplay to connection. 2016-12-18 19:28:42 -05:00
Gregor Richards
d1d29143b2 Move nickname field to connections. Spectate mode officially broken. 2016-12-18 19:28:42 -05:00
Gregor Richards
189cc6e5d6 Moving socket buffers to per-connection (currently breaks
delay_frames=0)
2016-12-18 19:28:42 -05:00
Gregor Richards
b334f04bd5 Removing RARCH_ from Netplay stall reasons. 2016-12-18 19:28:42 -05:00
Gregor Richards
1e1abf6951 First step of multiple connections. Still only one connection actually
works.
2016-12-18 19:28:42 -05:00
Gregor Richards
3908e25895 Separating local mode from remote mode. 2016-12-18 19:28:42 -05:00
Gregor Richards
775584cdac Adding more README info. 2016-12-18 19:28:42 -05:00
Gregor Richards
170b590bdb Client now starts one frame after finishing connection, for easier sync. 2016-12-18 19:28:42 -05:00
Gregor Richards
80be19a7da Renames for readability, merging frame and sram into sync packet. 2016-12-18 19:28:42 -05:00
Gregor Richards
f89e54fcb7 Now that we don't have to start at frame 0, use the server frame count 2016-12-18 19:28:42 -05:00
Gregor Richards
b3092f6fde Moving things that shouldn't have been public into netplay_private.h 2016-12-18 19:28:41 -05:00
Gregor Richards
9054b51f0e Finally, bringing back the first frame (in nonblocking mode) 2016-12-18 19:28:41 -05:00
Gregor Richards
ce7686104d Removing dead code 2016-12-18 19:28:41 -05:00
Gregor Richards
71e5cb756a Support for delay_frames=0 in nonblocking mode. 2016-12-18 19:28:41 -05:00
Gregor Richards
1c8f056239 Nonblocking initial connection. Haven't tested with delay_frames=0 yet 2016-12-18 19:28:41 -05:00
Gregor Richards
3f8f9761f6 Fixes particularly affecting delay_frames=0 mode 2016-12-18 19:28:41 -05:00
Gregor Richards
91e7db3eca This semicolon broke everything! 2016-12-18 19:28:40 -05:00
Gregor Richards
ba76528b8f A more sophisticated status variable for later making the initial
connection nonblocking.
2016-12-18 19:28:39 -05:00
Gregor Richards
0f5eec9987 Use zbuffer_size instead of state_size for the packet buffer 2016-12-18 19:28:39 -05:00
Gregor Richards
1214541410 Added packet buffer resizing to cope with initialization quirks. 2016-12-18 19:28:38 -05:00
Gregor Richards
36a93e5697 Fix a few bits broken by merging. 2016-12-18 19:28:38 -05:00
Gregor Richards
900e5a79ec Use nonblocking sockets for Netplay to avoid some stalls. 2016-12-18 19:28:38 -05:00
twinaphex
89820220b7 (libretro-common) Cleanup/style nits for archive_file_{7z/zlib} 2016-12-19 00:12:24 +01:00
Twinaphex
e639f12e35 Merge pull request #4273 from fr500/master
differentiate xbox one controllers
2016-12-19 00:01:45 +01:00
radius
ab56b5f33c differentiate xbox one controllers 2016-12-18 13:44:15 -05:00
twinaphex
7dce431239 Move VIDEO_SMOOTH to Video Filter setting 2016-12-18 17:32:55 +01:00
twinaphex
75696a1e12 Rename 'HW Bilinear Filtering' to 'Bilinear Filtering' 2016-12-18 17:31:00 +01:00
twinaphex
af98a61901 Update string 2016-12-18 17:28:29 +01:00
twinaphex
327c81ed3a (XMB) Create icons for CFILE 2016-12-18 17:26:02 +01:00
twinaphex
5adaf9e2aa (menu_cbs_ok.c) Add some comments 2016-12-18 16:01:00 +01:00
twinaphex
2fa5b09e7a (RJPEG) Cleanups 2016-12-18 15:57:47 +01:00
twinaphex
d6ece7f1b8 (RJPEG) Cleanups 2016-12-18 15:51:08 +01:00
twinaphex
a44afda5c5 (RJPEG) Cleanups 2016-12-18 15:30:29 +01:00
twinaphex
099f3a8d52 (RJPEG) Style nits 2016-12-18 15:28:02 +01:00
twinaphex
e9d9f1d90f (RBMP) Cleanups 2016-12-18 14:51:57 +01:00
twinaphex
35de6df7f9 (RJPEG) Cleanups 2016-12-18 12:15:36 +01:00
twinaphex
222650df35 (rjpeg.c) Cleanups 2016-12-18 12:12:09 +01:00
Twinaphex
d604441cea Merge pull request #4266 from GregorR/netplay-better-simulation
Better netplay input simulation
2016-12-18 07:13:52 +01:00
Twinaphex
152e4f7377 Merge pull request #4265 from GregorR/netplay-full-deinit
When we disconnect netplay, fully deinit it
2016-12-18 07:13:43 +01:00
Twinaphex
05b4bfcb66 Merge pull request #4262 from Themaister/master
Wayland: Implement basic keyboard/mouse
2016-12-18 07:13:33 +01:00
Gregor Richards
1245d1b5dd Better netplay input simulation
In resimulation mode, we only copy the buttons. The reason for this
is nonobvious:

If we resimulated nothing, then the /duration/ with which any input
was pressed would be approximately correct, since the original
simulation came in as the input came in, but the /number of times/
the input was pressed would be wrong, as there would be an
advancing wavefront of real data overtaking the simulated data
(which is really just real data offset by some frames).

That's acceptable for arrows in most situations, since the amount
you move is tied to the duration, but unacceptable for buttons,
which will seem to jerkily be pressed numerous times with those
wavefronts.
2016-12-18 00:46:02 -05:00
Gregor Richards
17e08c7a28 When we disconnect netplay, fully deinit it
In particular, we need to disentangle the interceding netplay callbacks.
In previous versions, if you disconnected netplay but were using a core
that made netplay stall for connections (i.e., one that has no
savestates), netplay would continue to stall because it still
interceded, even though it was supposed to be off. This fixes that.
2016-12-17 23:08:59 -05:00
Hans-Kristian Arntzen
eecb60549f No need to ugly hack in qb/conf.libs.sh. 2016-12-17 21:49:00 +01:00