Commit graph

1271 commits

Author SHA1 Message Date
ehouse
b99675640a reset cookieID for a new game 2005-09-04 20:30:47 +00:00
ehouse
c6e9a747b8 new error code 2005-09-04 14:35:13 +00:00
ehouse
8f796ca6bb new (commented-out) info message 2005-09-03 18:36:08 +00:00
ehouse
8e672b18bb generate XWRELAY_OTHERCONNECT message 2005-09-03 18:35:34 +00:00
ehouse
481febe807 add XWRELAY_OTHERCONNECT message 2005-09-03 18:32:12 +00:00
ehouse
48495df7e5 handle OTHER_CONNECT message by resending any unACKed messages. 2005-09-03 18:31:32 +00:00
ehouse
117f22d374 make all APIs private and add as friends the safe classes that will
access them.  This should allow reduction in the locking within cref
instances since only one thread at a time will be permitted inside by
SafeCref.
2005-09-03 15:59:48 +00:00
ehouse
56454d734b add missing state transition 2005-09-03 15:41:59 +00:00
ehouse
429bcfce0c when one device is disconnected for heartbeat, tell others it's going
away.
2005-09-03 15:41:17 +00:00
ehouse
377e514f0b for testing, add -H option to prevent client from sending heartbeat
messages to relay.
2005-09-03 15:39:15 +00:00
ehouse
49676995e7 handle other-disconnected error message 2005-09-03 15:37:49 +00:00
ehouse
9e53da6545 cleanup: get rid of unused states/actions and code to handle them. 2005-09-03 07:15:05 +00:00
ehouse
238036ff9d Add strings for error codes for relay disconnect events. 2005-09-03 06:58:05 +00:00
ehouse
460cda0390 Receive disconnect events and display message for error codes. 2005-09-03 06:57:01 +00:00
ehouse
b1ab4d8e27 Add range for relay errors. 2005-09-03 06:56:33 +00:00
ehouse
175f4eb87d Send disconnect events with error codes on heartbeat and connect timer
failures; change how state machine handles heartbeats: only put events
into the machine when there's a failure.
2005-09-03 06:55:08 +00:00
ehouse
497b589558 add disconnect event and error codes 2005-09-03 06:46:03 +00:00
ehouse
3cd8397085 fix failure to record bytes forwarded 2005-09-02 07:18:39 +00:00
ehouse
da323ede86 loads of changes: get settings from config file; remove sockets and
kill crefs via state machine, and protect access to a cref so it can
die without another thread being in it; do timers via timeout to
poll() rather than interrupt (and integrate into state machine);
detect when all players are present and change state so new
connections on that cookie will get a new cref.
2005-09-02 06:56:34 +00:00
ehouse
45a5853529 initial version 2005-09-02 06:40:34 +00:00
ehouse
048c2ffc6d first checked in. works. 2005-09-02 06:35:25 +00:00
ehouse
44996f14a7 send XWRELAY_RECONNECT 2005-09-02 06:26:33 +00:00
ehouse
889ebf6ce9 catch up with API changes 2005-09-02 06:24:47 +00:00
ehouse
bd121ed939 protect logging with mutex since happens from multiple threads now. 2005-08-21 14:54:49 +00:00
ehouse
05e9bd2d12 flesh out interaction with comms. Now able to play a complete game vs
linux version over GPRS.
2005-08-21 14:36:11 +00:00
ehouse
eb0e79041e add stream_setOnCloseProc 2005-08-21 14:33:38 +00:00
ehouse
df5c274c31 constant name changed 2005-08-21 14:18:56 +00:00
ehouse
cca35b28db tweak how timers stored 2005-08-21 14:07:29 +00:00
ehouse
a24e7d18b3 timeout isn't an assertion failure 2005-08-21 14:07:12 +00:00
ehouse
2b1dd9ec55 use renamed constant 2005-08-21 14:05:29 +00:00
ehouse
af6f1406d5 rename constant 2005-08-21 14:04:32 +00:00
ehouse
684a0089d6 tweaks to logging and adding some message enums 2005-08-08 23:33:51 +00:00
ehouse
11cf5b3a27 reduce interrupt-time logging 2005-08-03 01:17:49 +00:00
ehouse
1fd6afcaf9 Clean up and fix timer code. 2005-08-03 01:14:49 +00:00
ehouse
0b4214c82b fix bug where client connecting before server would result in attempt
to forward packet to host not yet available.  Drop such packets now.
2005-08-02 04:57:13 +00:00
ehouse
051108e14e make overly verbose logging conditional 2005-08-02 04:56:08 +00:00
ehouse
c67c8054b0 add const to match new signature 2005-07-30 02:44:42 +00:00
ehouse
ee52261a9c add vc60.pdb 2005-07-30 02:07:20 +00:00
ehouse
b3e26adaf8 make some conn-related IDs conditional 2005-07-30 02:05:59 +00:00
ehouse
4f3a24eb78 add cesockwr.o 2005-07-30 02:04:29 +00:00
ehouse
3b79617c61 Add and use driver for communication over TCP. Driver uses two
threads, reader and writer, on a single socket.  With this checkin a
connect request reaches the relay and a response comes back and is
passed to and recognized by the common code.  A full game should now
work, but hasn't been tried.  Nor is there any handling of socket
errors, retries, etc.
2005-07-30 02:02:49 +00:00
ehouse
7d79e79105 tweak conn dialog 2005-07-30 01:51:24 +00:00
ehouse
cd8d18bd76 add a const 2005-07-30 01:48:17 +00:00
ehouse
19734cc053 begin work of allowing multi-device play over WiFi/Cellular: add
dialog to gather params, save 'em, and stub out send proc.  Still need
to debug a bit, and add threads to send/receive packets.
2005-07-23 15:31:21 +00:00
ehouse
711e0cdc36 cleanup for wince compile 2005-07-23 15:28:15 +00:00
ehouse
30f1e9b6db add const 2005-07-23 15:21:23 +00:00
ehouse
746e69b315 add assertion on null string 2005-07-23 15:16:26 +00:00
ehouse
0a8b5bb563 Get rid of unused param 2005-07-14 02:54:47 +00:00
ehouse
b015224188 Get rid of WinCopyRect-based method of drawing letters and values in
tray tiles, since it seems not to work on all versions of PalmOS.
Simply drawing seems fine where tested; will try close clipping if
erasure happens elsewhere.  Draw board-top stuff one pixel higher on
highres devices, and fix scoreboard being too narrow on high-res
devices.
2005-07-14 02:45:10 +00:00
ehouse
6ca28e44e7 fix compile error 2005-07-13 12:35:38 +00:00