Jesse Dean
c794b39971
Code cleanup for trunk merge
2008-07-25 15:24:07 +00:00
Jesse Dean
2ec7149f6d
Input loop bugfix, input was only being processed every second sync frame instead of every sync
...
frame
2008-07-25 08:51:37 +00:00
Jesse Dean
ff9055f5ed
Netplay event queue heap bugfix
2008-07-25 08:07:05 +00:00
Jesse Dean
fdf0dea856
Re-factoring netplay to have all communication handled by core emulation thread
2008-07-25 06:13:09 +00:00
Jesse Dean
6b82c5958f
Applied changes to input polling, netplay now polls input itself once per sync frame
2008-07-18 08:52:56 +00:00
orbitaldecay
fe69396ff5
Made a few changes to the netplay this commit:
...
The response to a master server open game request is now handled by clientProcessMessages() - this is because the game socket is being utilized to send the open game request so that the master server will be able to detect the proper game port over NATs.
I've moved the clientProcessMessages() function call out of netMain() and created a seperate thread that runs when the client is initialized. I've done this for two reasons: 1. clientProcessMessages() handles all the join game stuff and I think joining games and initial handshaking should be done before the core is started (the whole press F9 at the black emu screen isn't very elegant). 2. clientProcessMessages() doesn't need to be called from within the core via netMain(), all it does is handle packet receiving.. the queue and the frame sending are the only things that need to be timed via the core.
I realize these changes may not be in accordance with the wishes of others, they can be easily reversed if there is any disagreement. I've tested these changes on netplay and it works fine. My ultimate goal with this change is to begin cleaning up the netplay user interface (graphical and commandline) and make it all a little more elegant.
Let me know if there are any problems :)
Bob
2008-07-12 18:36:19 +00:00
orbitaldecay
5cf2fff6cb
Fixed a couple byte order bugs in the master server, testing some other things
2008-07-12 15:21:41 +00:00
orbitaldecay
43e3e0de1d
Fixed an MD5 translation bug in master.c, a few other bug fixes.
2008-07-11 16:22:52 +00:00
Jesse Dean
aba8a6bd73
Correction to latency running-average code
2008-07-10 10:11:13 +00:00
orbitaldecay
50bb0a640e
Cleaning up potential port number byte order conflicts between master server and client
2008-07-10 02:32:18 +00:00
orbitaldecay
2531ef82a7
Adding support for NAT punching, made a few small changes in client.c
2008-07-09 19:10:44 +00:00
orbitaldecay
ca0b0c4c81
* Fleshed out error checking in clientInitialize and added cleanup on function failure.
...
* Fixed compiler warning for incompatable pointer type (changed char* typecast to void*).
* Beefed up error checking in a couple other places
2008-07-08 14:25:35 +00:00
Jesse Dean
19d566402e
Peers will now wait for a missing packet to arrive, this results in an infinite loop
...
if a packet is lost, but is only a stopgap
2008-07-07 23:36:30 +00:00
orbitaldecay
b2c193c190
Added code to master.c to launch thread to send periodic keep alive packets to master server.
2008-07-07 17:31:17 +00:00
Jesse Dean
f51d2ac368
Netplay functionality now working between 2 players, netplay is roughly on par now
...
with where it was before the UDP rewrite
2008-07-07 06:49:52 +00:00
orbitaldecay
9bd569b95b
Fixed potential overflow bug in function MasterServerAddToList(), a few little bug fixes
2008-07-06 19:19:30 +00:00
orbitaldecay
b36aceac38
Master server GUI updates: ROM ComboBox now populates from MD5 list retrieved from master server. When selection is altered, list is updated appropriately.
2008-07-06 16:12:46 +00:00
orbitaldecay
34ddb537d3
Added support for multiple master servers. Created master server host list. Created new file for client master server routines (/network/master.c)
2008-07-05 23:59:46 +00:00
orbitaldecay
ca5fc7351c
masterServerFindGames & masterServerGetMD5List now construct and return linked lists, a few little bug fixes
2008-07-05 17:06:24 +00:00
orbitaldecay
2f993f5c2b
Added MD5 list query and response to client.c and master_server.c, incorporated some simple test routines.
2008-07-04 17:46:42 +00:00
orbitaldecay
4b5d09c985
Added FIND_GAME query function to client.c
2008-07-04 17:17:20 +00:00
orbitaldecay
1d73d0feb7
Adding master server communication functionality to client.c, created masterServerOpenGame() and masterServerKeepAlive()
2008-07-03 18:53:56 +00:00
orbitaldecay
329bcd1773
Added masterServerOpenGame() function to client.c
2008-07-03 16:21:56 +00:00
Jesse Dean
990d1463ca
Netplay debugging
2008-07-03 00:28:18 +00:00
Jesse Dean
928ba16622
Fixes to input sync issues, can now connect & start emulation with F9
2008-06-29 18:33:43 +00:00
Jesse Dean
f325861a1c
Fixed infinite loop in chunk processing
2008-06-29 17:40:48 +00:00
Jesse Dean
e1676e65e2
Bugfixes for input sending&receiving
2008-06-29 17:27:44 +00:00
Jesse Dean
f99f605f6f
Fixed bad chunk decoding calculation
2008-06-29 16:37:21 +00:00
Jesse Dean
373fa6fdc2
Added preliminary input transport & message to start emulation
2008-06-29 16:19:54 +00:00
Jesse Dean
d7cf6642d5
Fixes to network priority queue heap functions
2008-06-29 07:24:31 +00:00
Jesse Dean
d17587a56a
P2P connection update
2008-06-29 04:23:39 +00:00
Jesse Dean
b023abd92a
Netplay joinrequest tuning
2008-06-28 23:42:14 +00:00
Jesse Dean
b7b7670440
P2P Rewrite of networking subsystem. Compiles, but has a few quick patches that need
...
debugging.
2008-06-28 07:47:11 +00:00
orbitaldecay
81ebaac5a4
Added button lag tracker
2008-06-19 16:42:13 +00:00
orbitaldecay
f65eca6acd
Fixing frame counter bug
2008-06-19 15:21:37 +00:00
orbitaldecay
0002a7a57d
Committing final fixes for sync always option.
2008-06-19 15:04:36 +00:00
orbitaldecay
58fb360d45
Testing
2008-06-19 14:55:25 +00:00
orbitaldecay
5e56abdc00
Trying to run server routines without checking if server is active in network.c
2008-06-19 14:42:56 +00:00
orbitaldecay
64b919bb83
Tweaking sync frequency for further testing.
2008-06-19 14:30:34 +00:00
orbitaldecay
a0f3af26a1
Fixing start bug
2008-06-19 13:37:15 +00:00
orbitaldecay
e4708bdb23
Trying sync every frame strategy for netplay.
2008-06-19 13:34:43 +00:00
orbitaldecay
18d9b4f8ec
Found and corrected todays phantom desync bug (failure to notify of out of date events in event queue that cropped up after restructuring processing of event queue)
2008-06-18 18:30:02 +00:00
orbitaldecay
606c41062f
sync should have been 5, not 30, doh
2008-06-18 17:41:20 +00:00
orbitaldecay
9cc8cb6475
Changing sync frequency for the last time (hopefully)
2008-06-18 14:33:08 +00:00
orbitaldecay
e9fd4754ce
Changed eventCounter to frameCounter (more accurate name). Added support for variable sync frequencies, other clean ups and bug fixes.
2008-06-18 14:15:39 +00:00
orbitaldecay
28fea32b11
Committing last few bug fixes for the night and calling it a day
2008-06-18 02:06:49 +00:00
orbitaldecay
a423ad64dc
Still trying to correct the sync speed up, strange audio glitches
2008-06-18 01:44:35 +00:00
orbitaldecay
57bc73766d
Removed SYNC_FREQ define in favor of command line defined frequency
2008-06-18 01:37:28 +00:00
orbitaldecay
eb8d2b53fe
testing
2008-06-18 01:30:39 +00:00
orbitaldecay
874edf312f
Took out osd for resync, the OSD slows down the resync making the whole thing counter productive
2008-06-18 01:28:56 +00:00