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
orbitaldecay
13f888bfaf
Added work completed so far on netplay gtk gui
2008-07-03 14:32:49 +00:00
Jesse Dean
990d1463ca
Netplay debugging
2008-07-03 00:28:18 +00:00
orbitaldecay
7a40a591f1
Fixed linked list bug in master server
2008-07-02 18:53:34 +00:00
orbitaldecay
50e77e206d
Added more functionality to test client to facilitate master server bug testing
2008-07-02 18:04:21 +00:00
orbitaldecay
49ca3c65d1
master server: fixed a couple memcpy & memcmp bugs, made test client more useful
2008-07-01 18:48:08 +00:00
orbitaldecay
32c17375b9
master_server: added info box on ctrl-c, made a few things prettier
2008-07-01 16:40:09 +00:00
orbitaldecay
c909897a64
Fixing packet truncation segfault bug that's been floating around for a revision or two
2008-06-30 19:08:56 +00:00
orbitaldecay
39671ebfe3
master_server.c: added support for fragmented game lists
2008-06-30 18:50:37 +00:00
orbitaldecay
b3c9ec4ce6
Added master server network protocol abstract to svn
2008-06-30 18:31:12 +00:00
orbitaldecay
e0f7cb7e31
master_server.c: added support for fragmented game lists
2008-06-30 18:04:29 +00:00
orbitaldecay
17ab3fbb76
Added linked list MD5 sorting code
2008-06-30 16:10:38 +00:00
orbitaldecay
c24b943e9b
A handful of minor updates
2008-06-29 21:39:35 +00:00
orbitaldecay
956e1666b8
Created a simple test client for debugging the master server
2008-06-29 20:01:00 +00:00
orbitaldecay
ac494d327c
Corrected improper handling of sigint in master_server.c
2008-06-29 19:13:22 +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
orbitaldecay
de9023c925
Fixed infinite loop bug in get_free_game_desc() in master_server.c, successive OPEN_GAME requests from the same host now overwrite each previous game entry (preventing possible d.o.s.)
2008-06-29 18:30:38 +00:00
orbitaldecay
d36f1d34cf
Added master server code under tools directory
2008-06-29 17:48:47 +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