Commit graph

2926 commits

Author SHA1 Message Date
ehouse
f30dd17e00 rename constants to begin with GTK so they're unique. 2008-03-10 00:51:20 +00:00
ehouse
c526d86a88 invalidate divider when first touched so that it's drawn in-drag immediately. 2008-03-10 00:49:06 +00:00
ehouse
963c59b0b5 implement drawTileMidDrag (same as tile in tray for now) 2008-03-09 23:32:24 +00:00
ehouse
193bc90a06 add dragdrpp.{c,h}, since apparently merging doesn't include svn adding 2008-03-08 23:19:04 +00:00
ehouse
0b1f4b8f0a merge with drag_n_drop branch: apply patch generated with this command on that branch: svn diff -r 2080:2087 2008-03-08 23:16:21 +00:00
ehouse
4c730be669 make new turnChanged notification compile-time conditional 2008-02-27 05:43:27 +00:00
ehouse
067c3c8cd0 remove dead code 2008-02-27 05:38:28 +00:00
ehouse
885e7f0192 Put back "turn done" menu, and add call to change the left softkey.
Call it when turn changes, new game is begun, and hint feature has
been used.  Currently menuitem is duplicated.  Goal is to remove the
item being attached to the left button and to replace it when another
is chosen.
2008-02-26 13:49:41 +00:00
ehouse
da60e6211c add -D_WIN32_IE=0x0400 (needed for some structs in mingw headers) 2008-02-26 13:47:28 +00:00
ehouse
b397c30178 add and call util_turnChanged 2008-02-26 13:46:33 +00:00
ehouse
dfe0249490 Add name of color edited to title of color edited. Clean up names and constants in support. 2008-02-26 13:31:36 +00:00
ehouse
a6575b1a2c Convert prefs in old format to new when encountered so that users
don't lose settings on upgrading.
2008-02-23 22:06:05 +00:00
ehouse
04ff991298 Add more message strings 2008-02-23 22:02:10 +00:00
ehouse
551cad98ed put file menu last where easier to get to 2008-02-23 22:01:36 +00:00
ehouse
9d0231a8b7 line column heads up correctly again 2008-02-23 22:00:40 +00:00
ehouse
907838591e Fix to work with BYOD: pass -r rather than use grep to pull illegal words; fix language code; include charset. 2008-02-23 21:59:38 +00:00
ehouse
bbbad5cbd8 Draw color samples to look more like buttons including thicker border to indicate focus. 2008-02-22 13:27:33 +00:00
ehouse
f0b53fd605 First cut at handling Czech. Correspondent says the Palm dict looks right. Still need to test on Windows and on BYOD. 2008-02-20 03:50:32 +00:00
ehouse
ab73fc4d38 cleanup; add lineno so number of letters is apparent 2008-02-20 03:44:31 +00:00
ehouse
e6a485f653 Add ENABLE_LOGGING define so logging can be used on non-debug builds, e.g. to trace opening of non-debug saved games and prefs files. 2008-02-17 21:48:48 +00:00
ehouse
5a951647e2 add mingwm10.dll to .cab files 2008-02-16 20:26:47 +00:00
ehouse
f5ae6b9809 add -Werror 2008-02-16 19:05:30 +00:00
ehouse
ccb8fb4df7 Fix timers to work even when message queue is full; make fullScreen
choice persistent; clean up resource file and add missing strings.
2008-02-16 17:36:46 +00:00
ehouse
a79dfdecc0 fix warning 2008-02-16 17:19:31 +00:00
ehouse
02f3e10edc move or add ceStackButtonsRight 2008-02-16 17:19:06 +00:00
ehouse
4a464b6ef5 modify ceStackButtonsRight to place dialog ok/cancel buttons in
bottom menubar where possible; move XP_LOGW to cedebug.c
2008-02-16 17:14:35 +00:00
ehouse
3ec8ee536e fix compile warning 2008-02-16 17:09:21 +00:00
ehouse
e3b39a9834 Add missing files. 2008-02-16 16:36:37 +00:00
ehouse
de6e0d4f2d Make cegcc the default build environment for wince. Make inclusion of hacks needed to work with mingw/pocketpc-sdk conditional. 2008-02-16 16:33:46 +00:00
ehouse
f3b8867518 Mark params unused in compiles for standalone; remove unused param. 2008-02-16 16:02:49 +00:00
ehouse
005694b0b1 Don't hide tray if there's only one player. 2008-02-16 15:53:00 +00:00
ehouse
c3555440fd get rid of const-related warnings 2008-02-16 15:49:03 +00:00
ehouse
0913936486 Add resource for two-soft-key commandbar and put it up. The single item is "Done" for now. 2008-02-05 04:57:58 +00:00
ehouse
a05138790c Modify to switch between cegcc and pocketpc-sdk, with pocketpc-sdk
choice commented out.  cegcc builds it about 30% smaller, in line with
what the older M$ tools could do.
2008-02-05 03:45:24 +00:00
ehouse
3532f7fa61 make "next hint" top sub-item since it'll be most frequently used 2008-02-05 03:38:15 +00:00
ehouse
1d61635ebd Don't cast char array to long and write to it! Newer arm compilers
don't like this -- or maybe I was just lucky until now.
2008-02-04 06:13:11 +00:00
ehouse
ea7949dd22 Make a couple of dialogs format for narrower screen and respect keypad buttons. 2008-02-02 20:58:44 +00:00
ehouse
2910bab3a0 fix perimeter focus clearing and board size setting. 2008-02-02 17:21:57 +00:00
ehouse
b98b7fd993 Move toward running curses on a small screen: replace omnipresent menu
with one drawn on demand; change size and location of scoreboard and
tray if needed; use wgetch rather than reading stdin to support keypad
keys for navigation.  Also stick g_ in front of some frequently used
global names.
2008-02-02 16:56:20 +00:00
ehouse
bae6890c35 fix to build without Bluetooth headers 2008-02-02 16:53:36 +00:00
ehouse
6e715d63ee change name of field. No code change. Pending on symbian and franklin which don't compile. 2008-02-02 15:17:53 +00:00
ehouse
1ac6326563 Add full-screen mode and menu to get to it (leaving the cmdbar/softkey
area in place until I figure out how to work a UI without a visible
menu); rework menu to launch new-style from a single softkey; remove
cmdbuttons and associated resources; limited progress on handling
return key/timeouts for keyboard navigation.
2008-01-20 15:36:17 +00:00
ehouse
211100c247 Turn off experimental multi-device features; up copyright; define XP_UCHAR as signed char to fix lots of warnings. 2008-01-19 16:34:21 +00:00
ehouse
f90b6d35e8 Fix to compile and run standalone 2008-01-19 16:04:48 +00:00
ehouse
6e9e5b5c99 Fix to compile and run standalone 2008-01-19 16:03:53 +00:00
ehouse
3d314081b2 Latest strings translated. 2008-01-08 14:35:41 +00:00
ehouse
f0bad7dc38 Tweak text around locating host device 2008-01-07 13:56:53 +00:00
ehouse
f2e5f4f2a4 fix so non-debug builds compile 2008-01-07 13:56:20 +00:00
ehouse
3e04e89803 remove newly-added palm_bt_nameForAddr 2008-01-07 13:36:00 +00:00
ehouse
7153bbb574 Add method to lookup hostname without access to btlib state. Some cleanup. 2008-01-07 01:27:45 +00:00
ehouse
b4f2df5eb5 Log unusual case. 2008-01-07 01:19:47 +00:00
ehouse
c6a6ec1fb0 Get rid of unused enum. 2008-01-07 01:19:24 +00:00
ehouse
e9ac7f53c4 Error code used with method to check consistency of BT address. 2008-01-07 01:18:51 +00:00
ehouse
3de08b9908 non-code change to make debugging easier 2008-01-07 01:17:42 +00:00
ehouse
9246ca78a5 Revert to default values for conType-specific fields for all types but
the current.  This prevents random-string hostnames when switching
from IR to BT.  Also some code cleanup.
2008-01-07 01:15:18 +00:00
ehouse
92c37d836c Error string used with method to check consistency of BT address. 2008-01-07 01:12:12 +00:00
ehouse
ff7a3bfe63 Error code used with method to check consistency of BT address. 2008-01-07 01:11:29 +00:00
ehouse
3374849111 Unify lookup by address and by channelNo; add method to check consistency of BT address. 2008-01-07 01:10:43 +00:00
ehouse
b333476d48 Update to use modified newg_store 2008-01-05 16:37:49 +00:00
ehouse
08da013d4d Warn user, and refuse to continue, when new game is as host and has no remote players. API
changes, so other platforms won't compile until changed.
2008-01-04 14:47:52 +00:00
ehouse
81c3d1681a when variables in callback indicate we're running in another app's context, do nothing 2008-01-02 01:46:35 +00:00
ehouse
bad6415484 log date on startup; don't always put up about dialog on first boot; remove excessive logging 2008-01-02 01:45:58 +00:00
ehouse
22909ce6fb add target for dict2dawg 2008-01-02 01:44:12 +00:00
ehouse
b115cc6f0c fix unused param warning 2008-01-02 01:43:45 +00:00
ehouse
1828cfcf11 up copyright date and beta version number 2008-01-02 01:28:30 +00:00
ehouse
40f7295802 test for duplicate initial client message and if so drop it; add const keyword; add assertion in addr comparion in attempt to learn why duplicates are getting through. 2007-12-31 20:00:13 +00:00
ehouse
4074417b33 ignore timers if state changes after they're set; take down links when resetting 2007-12-31 01:22:03 +00:00
ehouse
81dac2ec1b draw hint borders wider on high-res devices so they're actually visible (part 2) 2007-12-19 05:31:53 +00:00
ehouse
f1ee7db34c Add what may be final French translations; remove pre-release part of aboutbox text. 2007-12-19 05:30:51 +00:00
ehouse
995990d70a draw hint borders wider on high-res devices so they're actually visible 2007-12-19 05:29:53 +00:00
ehouse
02ca3eb9d7 Make initial value of confirmBTConnect true. 2007-12-15 18:55:32 +00:00
ehouse
9292e38cab Substitute name of remote host into request for connection
initialization confirmation.
2007-12-15 07:22:12 +00:00
ehouse
484025a21f Catch French up with change for BT connect confirmation (pending
translation.)
2007-12-14 13:37:12 +00:00
ehouse
8668420dd0 Don't end game when player has no tiles left in tray but still
tentative tiles on board.
2007-12-14 13:25:40 +00:00
ehouse
3b1fcceb16 Fix compilation errors due to constant name changes -- no change to binary. 2007-12-14 13:06:44 +00:00
ehouse
711bdf54f2 Instead of warning user on failure to connect via BT, add preference
to allow user to confirm before every attempt.  Users will learn to
set this when T650s are in the mix.  Save a new preference, and up the
stream version.  Up beta version.  Add the preference both to the prefs
dialog and to the bluetooth connection (for guest) dialog, with both
impacting the same field in gamePrefs.
2007-12-14 03:38:55 +00:00
ehouse
872ae90c94 fix bug using same string and code to warn and to reject phonies. 2007-12-14 03:21:46 +00:00
ehouse
d6a161b939 fix bug introduced by what was supposed to be risk-free change: send prefsChangedEvent rather than the wrong one so preferences get honored again. 2007-12-13 14:44:29 +00:00
ehouse
5cf30db8f0 Change Resend menu text, and to make it clearer put up an error message when it's used in a standalone game. 2007-12-12 04:23:42 +00:00
ehouse
01fec3742c Substitute French translations of new BT-related strings; since this
results in overlapping buttons, add code to space them evenly across
window.
2007-12-11 04:36:50 +00:00
ehouse
8035955814 Add non-sf.net contact options; make params const. 2007-12-09 23:37:47 +00:00
ehouse
4c686bdaa0 Add strings and make other changes needed for compilation with BT on
for French, marked for translation.  Fix formatting and add emacs
compile string for English.
2007-12-09 04:02:24 +00:00
ehouse
a07a5f2822 cleanup; replace a bunch of EvtAddEventToQueue calls with
postEmptyEvent; pass transport type with incoming packets so they can
be rejected if not on expected channel (to stop IR, which is always
on, from injecting into a BT game); do BT work and fire timers even
when menu is down; don't let robot run until after board is drawn for
the first time; on startup, don't let robot run until after board is
drawn once.  Up version to b3.
2007-12-09 01:59:15 +00:00
ehouse
8dfff86cff Fix crash on restart when app had been exited with some form other
than main on top.  focusOwner was saved based on front form but on
startup I tried to set it in the main form.  This will need to be
merged into a branch based on the 4.2.1 release for a 4.2.1.
2007-12-08 21:04:44 +00:00
ehouse
75a3c36ad6 Remove unused code and constants; fix to compile with relay; don't
show connection type dialog unless more than IR is available and
supported, and then build the dropdown dynamically based on what's
compiled-in and available on the device.  This means you don't see the
BT option at all if you don't have BT.
2007-12-08 18:11:42 +00:00
ehouse
348111ece2 Remove unused FindTrustedDevice calls; don't try to become master or slave
until we know which we'll be.  This likely fixes the problem where devices
have trouble connecting after switching roles.
2007-12-07 09:50:48 +00:00
ehouse
619e7d14c0 call util_addrChange prior to closing comms to fix crash moving from
BT to standalone game; add a couple of similar assertions; up beta
version.
2007-12-07 07:50:19 +00:00
ehouse
33cb34abfe Remove excessive focus logging; fix timer bug for BT by posting event so EvtGetEvent can exit 2007-12-06 05:26:44 +00:00
ehouse
ad78ec1fd8 Rewrite of checkIncomingStream to be cleaner and fix bug with initial messages getting dropped
while heartbeat feature was enabled.  Fixed the problem on Linux, but experience on Treo650
is still better without HB feature, so turning it off on Palm.  This seems ready for beta,
but will test a bit more.
2007-12-05 06:33:37 +00:00
ehouse
7929865ad9 Comments only. 2007-12-05 06:31:30 +00:00
ehouse
acc7b5be52 Don't respawn if child died in less than a second. 2007-12-05 06:30:45 +00:00
ehouse
d5d29adc0c Change util function to use signed type; other cleanup to compile with various features. 2007-12-05 06:28:51 +00:00
ehouse
1926c84825 Change state icon even when not doing work to get it to show up (unconnected) earlier. 2007-12-05 06:26:21 +00:00
ehouse
e4c2143aed Fix dialog title; send heartbeat based on when connected even if no
messages yet received; reset bt connection on palm in two stages;
remove unused param.  Change version number for beta.
2007-12-03 01:20:32 +00:00
ehouse
9ec0177592 Log BT lib version -- toward refusing to run or alerting user of broken Treo650 (version 1). 2007-12-03 01:18:59 +00:00
ehouse
86f5193801 Fix compilation errors. Not tested. 2007-12-03 01:18:13 +00:00
ehouse
da93ed5b31 Don't use uninitialized values as port numbers; use match for set as well as get. 2007-12-03 00:45:09 +00:00
ehouse
f0e21dbd86 Fix bug showing remote/robot moves only on host to include client too. 2007-12-02 22:07:24 +00:00
ehouse
5457ea1b59 replace all __FUNCTION__ with __func__ 2007-12-02 19:13:25 +00:00
ehouse
25c4368231 Start adding ability to listen on multiple sockets and to dynamically
change the set listened on.  There's still some debugging to do but
nothing that worked before is broken.  Also begin to accept unique
prefixes (e.g. g for get) for commands and attributes on the control
port.  Note that relay-related code in comms seems broken now, but is
without this checkin.
2007-12-01 15:00:30 +00:00
ehouse
a560c9f8a8 Add files forgotten with last checkin; add additional parameter to
addListener so listeners can be removed on reset.
2007-11-28 03:59:26 +00:00
ehouse
e1d5632a7b Re-add direct-via-ip transport, and implement for linux in order to
better test heartbeats.  Fix so can play against Palm over BT.
Assertions failing on Linux when reset, but it's otherwise done.
2007-11-26 02:58:25 +00:00
ehouse
ee726968b0 Don't draw negative number of tiles left. 2007-11-25 15:12:22 +00:00
ehouse
6e71f8197e Add file and line number to debug version of realloc and free. 2007-11-22 05:04:40 +00:00
ehouse
022317b47a Exit on unexpected params; better testing when launching; use bash to create pid file. 2007-11-22 04:59:11 +00:00
ehouse
4c8cf98d24 Add and set a compile-time option so comms will set a periodic timer
and use it to send and check for heartbeats over any transport.
Caller must supply a reset proc which is called when heartbeat hasn't
been received in too long.  No changes required to comms protocol, but
that means the heartbeat interval is fixed at compile time: can't be
negotiated, and the two ends had better agree.  Currently tested with
linux host and PalmOS guest, where only the first heartbeat failure is
recovered from.  So there's some debugging to be done still.
2007-11-18 23:43:27 +00:00
ehouse
cb1222c0f9 Make cooperation in a heartbeat scheme a compile-time option. This is
meant to allow comms to take over heartbeats.
2007-11-18 23:38:56 +00:00
ehouse
f3d67cfb6c Fix bug reassembling packets; advance credit on each send/receive.
With this checkin rfcomm works between two Treos and between Treos and
linux, though with plenty of bugs around reconnecting yet to find.
However, it turns out that even using rfcomm a Treo650 gives no notice
to the other device when shutting down the connection, so rfcomm
doesn't help.  Rfcomm is probably not worth using, but the code's now
here and can be turned on in the Makefiles.
2007-11-18 17:57:28 +00:00
ehouse
cfb01d8f3d Deal with incoming fragmented rfcomm packets; log packet contents. 2007-11-15 14:40:56 +00:00
ehouse
d6163b62ff Add code, disabled in Makefile, to use rfcomm rather than l2cap for
data with the goal of detecting disconnects more quickly.  Stops
working after a few packets (client only tested against host on linux
so far), and doesn't compile for ARM yet, but the framework is there.
Am framing packets on Palm side which may not be necessary.
2007-11-15 14:39:33 +00:00
ehouse
ac42b5e7d6 fix oversized font when scoreboard miniwindow has two lines. 2007-11-14 05:57:12 +00:00
ehouse
1094680ee7 quick hack at framing rfcomm packets 2007-11-14 05:53:28 +00:00
ehouse
6b834cce4a Add ability via compile-time flag to connect via rfcom rather than
l2cap.  Works with two caveats: assumes l2cap-style complete packets
(no framing), and has problems with linux sdp system's tendency to
retain records long after sessions are closed.
2007-11-13 15:20:33 +00:00
ehouse
8dbfe4ed79 fix new compiler warnings; daemonize, and add handler to kill child if
parent dies so that script can kill based on pid file.
2007-11-13 03:53:10 +00:00
ehouse
74a30ffe82 init.d style script for starting and stopping relay 2007-11-13 03:50:41 +00:00
ehouse
ef19abbfd9 Fix reconnect bug: when master's in initial state but listening socket
already inited, shift state to listening
2007-11-10 17:54:05 +00:00
ehouse
0291ec1e75 Turn on self-spawning: main loop should never crash but exists only to
respawn child when it does.  Add crash command to test this.  Add
ability to set logging level from ctrl port.
2007-11-10 05:41:49 +00:00
ehouse
6db5eed156 Add English strings as starting point for translation 2007-11-08 05:18:04 +00:00
ehouse
bdb06cbdf8 Use a single general-purpose callback passed into palm_bt_doWork where
it's needed, removing those passed into _init and _send.  When client
is unable to connect to host, raise alert to user and give choice to
continue trying.  Clear 'suspendBT' flag when user manually resends or
opens different game.  Currently this happens only on guest's failure
to find registered SDP; should also extend to remote device not
running at all and to host failure to send to guest.
2007-11-07 13:40:56 +00:00
ehouse
36c40f3375 Use fixed action queue and memcpy rather than rotating buffer; eliminate sequential duplicates of most actions. 2007-11-06 04:05:11 +00:00
ehouse
383847e75c Fix typo breaking compile. 2007-11-05 03:42:27 +00:00
ehouse
3060888264 Update BT code to advertise and search sdp records and use psm reported to work with new Palm
code.  Log btaddr after converting from name.
2007-11-05 03:38:00 +00:00
ehouse
de640cda98 Update BT code to advertise and search sdp records and use psm reported to work with new Palm
code.  Get rid of pthreads dependency which was for logging only.
2007-11-05 03:17:07 +00:00
ehouse
41936fe18a Byte-swap psm field to callback on ARM: now both client and host work. Move SDP-related constants out where linux can use too. 2007-11-03 22:04:06 +00:00
ehouse
880254c17f Fix tray hanging below main window; draw pending tiles white-on-black as on other platforms. 2007-10-24 12:46:15 +00:00
ehouse
e0f5fcf280 Instead of three fixed-sized fonts, choose fonts (lazily) based on the size of the rect into which it's to be drawn. 2007-10-23 03:08:47 +00:00
ehouse
3480df738c Add ARM support for functions and types required for UUID/PSM lookup.
Almost works: if the ARM build is running as host, all's well; but if
it's client, gets btLibL2DiscConnPsmUnsupported after trying to make
an l2c connection.
2007-09-30 17:33:19 +00:00
ehouse
556dbf46e3 move LOG_OFFSET 2007-09-30 17:22:38 +00:00
ehouse
ef31e3688c fix log_hex to print nibbles in right order. 2007-09-27 02:56:35 +00:00
ehouse
104a173c5d Publish (master) and look for (slave) SPD record so that we're looking for our app and not just BT when connecting. I hoped this would prevent T650s from crashing when nothing's running. It doesn't, but it's the right way to connect, and will allow better error messages or retry logic. Compiles only on 68K at the moment. 2007-09-15 13:50:07 +00:00
ehouse
cc4aeaee8c Turn BT back on as default and up version preparing for next release. 2007-09-15 13:47:28 +00:00
ehouse
473d506611 add logging to help catch a recurring assertion 2007-09-15 13:46:59 +00:00
ehouse
40fdec22a2 up version number for dot release. 2007-08-27 12:43:26 +00:00
ehouse
f0b36895d7 If we get keyUp event, override earlier determination that this device doesn't get them. This works around Tungsten double-key bug. Better fix will be to use the right FtrGet constants to set generatesKeyUp. 2007-08-22 02:36:13 +00:00
ehouse
ab6ed444bb add fnav resource for password dialog, and use it if device has fiveway.
Otherwise use FrmSetFocus.  This works around a bug where key event that
leaks through from parent dialog dismisses dialog (whereupon another comes
up, and eventually cursor is left flashing on parent.)
2007-06-18 13:21:36 +00:00
ehouse
eeafb5c4f2 reset in/out var before each call to util_askPassword 2007-06-10 14:54:47 +00:00
ehouse
719fc3889c turn off BT; remove rc designation so can ship 2007-06-09 18:09:21 +00:00
ehouse
c911780c37 fix to build with relay turned on (part 2) 2007-06-08 03:20:09 +00:00
ehouse
a1ebd16a5a fix to build with relay turned on 2007-06-08 03:15:52 +00:00
ehouse
2f925349a6 Fix so can without BT, and so compiler can be specified to Makefile. 2007-06-02 02:07:45 +00:00
ehouse
edfdda6fd2 Fix so compiles curses-only, and so curses cell can be 2x1 (for square board) 2007-06-01 02:08:04 +00:00
ehouse
f12bf79101 turn on BT; up alpha version number. 2007-05-27 16:59:24 +00:00
ehouse
a527e426d6 Revert version number to rc3 for 4.2. 2007-05-26 22:59:32 +00:00
ehouse
d58789c493 Use a timer to avoid trying to get an ACL connection too frequetly.
This seems to trigger crash Treo650s far less often than constantly
retrying.
2007-05-26 22:51:25 +00:00
ehouse
a2f60cb1f8 Makefile for Collins dict 2007-05-26 14:47:46 +00:00
ehouse
dd7a5c8104 type name change only 2007-05-26 14:14:01 +00:00
ehouse
eeebeca542 substitute macro for common sizeof(x)/sizeof(x[0]) pattern; no generated code change 2007-05-26 14:03:07 +00:00
ehouse
45d5bb6260 Hide tray on turn transitions when more than one non-robot local player present in game. 2007-05-20 20:46:29 +00:00
ehouse
aa3d3bc76c Fix bug where arrow gets placed in wrong cell when tapping on tentative tiles to remove them while board is flipped. 2007-05-18 04:09:10 +00:00
ehouse
f832959480 Up version for ship; build LocalizedStrIncludes.h per-platform;
include language in all platform obj directory names
2007-05-13 21:06:42 +00:00
ehouse
8a074126db Turn of BT for rc2 release 2007-04-28 23:34:44 +00:00
ehouse
934f90efbc up alpha version number 2007-04-28 22:53:21 +00:00
ehouse
42f8a55220 A few more translations and moving of widgets to accomodate strings 2007-04-27 07:08:09 +00:00
ehouse
96ae1292bf A couple of additional translations; back out debug-only translations; mark strings that may still need translation. 2007-04-26 01:24:23 +00:00
ehouse
c9e1cab5ee Make "Cur" string in tile-picker dialog localizable; move buttons in same for French to fit. 2007-04-24 13:34:21 +00:00
ehouse
ee636886a1 Additional French corrections. 2007-04-23 03:24:34 +00:00
ehouse
a1a0f9934a Call HsNavDrawFocusRing on Treo600, FrmNavDrawFocusRing on later
devices.  Fixes crasher on devices that don't have the former.  Up version.
2007-04-23 03:20:37 +00:00
ehouse
630d9e391b add no-bt state so there can be no icon when bt's been left off; up
version and turn BT on by default for a8 release.
2007-04-16 05:22:49 +00:00
ehouse
0b0143fa92 If BT is off, ask user to turn it on only once. If cancels, warn that
it must be turned on, and don't attempt to turn it on again.  This
prevents BTLib from repeatedly asking for permission to turn BT on.
2007-04-15 16:46:17 +00:00
ehouse
2bba51f95a cleanup (no change to generated code): remove old owner_hash code; replace empty formal lists with void. 2007-04-14 16:27:19 +00:00
ehouse
ca7c69bff1 include Makefile.langcommon 2007-04-14 16:03:31 +00:00
ehouse
b1de2cb575 Return null rather than allocing bt storage if unable to open bt library. 2007-04-13 08:47:22 +00:00
ehouse
f141078e1f More translation tweaks 2007-04-13 08:45:48 +00:00
ehouse
555d8f9a82 include LANG in obj dir name 2007-04-12 01:22:31 +00:00
ehouse
0bc445f2ad Fix to compile with XWFEATURE_FIVEWAY undefined 2007-04-12 01:19:56 +00:00
ehouse
9b7e0c76a3 Text tweaks from Francis; widget resizings from Eric. 2007-04-12 01:17:33 +00:00
ehouse
0d8545426d First pass at translation. 2007-04-10 13:23:39 +00:00
ehouse
df1f14b41f Copy English files preparatory to French localization. 2007-04-10 13:19:04 +00:00
ehouse
13803e2596 When showing cell values, also show tile values if the don't-show tile values preference is set. 2007-04-06 01:41:16 +00:00
ehouse
128d9c56ef Turn off BT, and up version for first RC release. 2007-04-05 04:19:44 +00:00
ehouse
d1c36681f3 pass -D options to gen_pace.pl 2007-04-05 04:18:42 +00:00
ehouse
959357f0f6 wrap BT APIs in ifdef 2007-04-05 04:18:05 +00:00
ehouse
039a730217 merge changes 1895 and 1899 for allowing ifdefs in funcfile.txt 2007-04-05 04:17:43 +00:00
ehouse
ad4fd26d88 fix bug where arrow replaces tile at edge of board by returning false
from figureNextLoc unless an empty space found.
2007-04-03 03:36:14 +00:00
ehouse
539912b8b2 Make gadget and bitmap size match. 2007-03-18 23:58:32 +00:00
ehouse
03433901fc Closing BT lib from datahandler (since don't want to close on game
close in case next game will use); erase BT status icon when not BT
game; plug leak of dict name.
2007-03-18 23:57:30 +00:00
ehouse
dfc2d679e0 Don't call comms_start while opening game. Caller may still consider
another game open.
2007-03-18 23:55:58 +00:00
ehouse
0d286632be palm_dictionary_make makes copy of name if needed. Helps plug memory leak. 2007-03-18 23:49:15 +00:00
ehouse
90d285c593 add consts; remove logging. 2007-03-18 23:48:00 +00:00
ehouse
242e71f04a What I meant to check in. Need to save first.... 2007-03-18 23:38:53 +00:00
ehouse
a4fb5a6d5a Always send BT reconnet message, even if there are messages to resend.
Fixes failure to reconnect when opening a saved BT game where the
other device is waiting and will need to resend.
2007-03-18 23:38:19 +00:00
ehouse
aad182c2e3 turn stringFromStream into macro to aid logging for leak detection. Debug builds only effected. 2007-03-18 23:31:51 +00:00
ehouse
3974ac4639 Fix crash on ARM: don't compare dummy strings. 2007-03-18 14:45:51 +00:00
ehouse
e22a131687 include ability to choose arm or 68K in combined-arch release builds too 2007-03-18 00:05:15 +00:00
ehouse
d9e29674cd comment out assert that doesn't seem to matter 2007-03-17 17:31:01 +00:00
ehouse
08901ca548 include ability to choose arm or 68K in combined-arch debug builds 2007-03-17 17:30:30 +00:00
ehouse
ecba9df348 Pad prefs struct so ARM and 68K versions are using same addresses
(fixes crash opening game in ARM version that was saved in 68K);
2007-03-17 17:29:32 +00:00
ehouse
0fd0692748 better logging: include function name 2007-03-17 15:38:44 +00:00
ehouse
c7b46cffbf Pad prefs struct so ARM and 68K versions are using same addresses
(fixes crash opening game in ARM version that was saved in 68K);
renumber resource IDs so can be logged via a switch.
2007-03-17 15:37:15 +00:00
ehouse
e111c2d89c Remove excess logging. 2007-03-17 15:35:14 +00:00
ehouse
bf7833c420 Put back code to associate service record with listening socket, but
ifdef'd out as it doesn't seem to make any difference.
2007-03-17 15:34:24 +00:00
ehouse
fcb334375a define XW_PSM in accord with palm guidelines. Doesn't seem to matter... 2007-03-17 15:33:16 +00:00
ehouse
aa4333903f compare only six bytes of struct ARM pads to 8. 2007-03-15 05:06:56 +00:00
ehouse
19ac39010f Enable BT; up version number for a3. 2007-03-15 01:21:56 +00:00
ehouse
b72aba3a9a Don't store procptr stubs in Ftrs across app boots! Fixes device-resetting crash. 2007-03-15 01:20:11 +00:00
ehouse
a0eeafb226 Don't store procptr stubs in Ftrs across app boots! Fixes device-resetting crash. 2007-03-15 01:19:35 +00:00
ehouse
252c07c6ee Print param lists under 80 columns. 2007-03-15 01:14:15 +00:00
ehouse
97cddf35ff define constant so tests work on ARM too. 2007-03-09 03:00:44 +00:00
ehouse
c00dad745d Add APIs needed to compile and use BT APIs. ARM version works now well enough to play games, but often crashes on app exit having done so. 2007-03-09 02:58:57 +00:00
ehouse
3535a2c846 update to die when func not found, and to handle BT APIs 2007-03-09 02:56:02 +00:00
ehouse
5478dbeb43 Add one-bit bluetooth status indicators 2007-02-28 02:32:49 +00:00
ehouse
a0919dcc54 Fix bug: scoreboard doesn't reflect connected state until some other
event causes update.  Fix by calling turnChangeListener any time turn
changes, including on initial set.
2007-02-27 02:48:51 +00:00
ehouse
971bfc280f Save and restore focus owner across app restarts (includes working around
OS's insistence on sending focusTake event on formOpen); up version numbers; turn off BT prior to beta release.
2007-02-24 03:35:51 +00:00
ehouse
5d867cd81c Target to build tarball for uploading to byod. 2007-02-20 07:24:18 +00:00
ehouse
8faacfcede Fix to work with new byod scheme. 2007-02-20 05:49:57 +00:00
ehouse
621e049962 Cleanup for a5 release: always use status icons when building for bluetooth. 2007-02-18 03:33:17 +00:00
ehouse
b2ed436b74 Add support for Russian. So that Russian text can be processed on systems without setting LANG=ru_RU.CP1251, modify dict2dawg to skip duplicates and words outside of specified lengths. Modify all info.txt files for the new scheme (which includes change to byod.cgi not kept on sourceforge.) 2007-02-17 17:06:05 +00:00
ehouse
3b7e680f2c increment internal tile values by one so strings can be null-terminated 2007-02-14 15:17:00 +00:00
ehouse
f273e93c86 code to use bitmaps instead of letters to show bt conn status. 2007-02-12 08:05:35 +00:00
ehouse
13c425f005 Add bitmaps to replace letters as indicators of bluetooth connnect state. Still to go: lowres equivalents. 2007-02-12 07:54:23 +00:00
ehouse
c0b515457b Cleanup: compile warning and to make logging easier. 2007-02-08 15:17:23 +00:00
ehouse
b1d4a800c8 Fix nav for tungsten: test for lack rather than presence of keyUp events. 2007-02-08 15:16:46 +00:00
ehouse
a424d54445 Add a one-byte header to BT messages so one device can signal another
that a new game's begun without dropping the connection.  On Palm,
remove connection-drop on new game.  With this change starting a new
game takes imperciptible time, down from 30 seconds.
2007-02-08 02:53:10 +00:00
ehouse
9f23c4b4d9 Replace ints with bools; add rev command; fix bug by reiniting args with each
command so they don't hold previous values.
2007-02-07 13:22:40 +00:00
ehouse
ff82dd61c0 Fix linked-list bug in removeFromQueue. 2007-02-07 11:58:01 +00:00
ehouse
a8d3dbda66 Print svn rev number as part of usage() 2007-02-07 11:56:30 +00:00
ehouse
edd1ce9455 up version number for alpha 2007-02-06 05:55:21 +00:00
ehouse
767b9f2908 initialize mutex before using; fixes a hang since could never aquire
lock.  (This bug has always been there, but didn't matter before;
maybe pthreads changed.)  Comment out self-spawning stuff until can
fix df-transfer problems.  Other minor changes around logging.
2007-02-06 05:52:22 +00:00
ehouse
3028c9e598 deal with case where guest begins new game but connects to host that's
running the old game: the host may reply, but guest must not take that
as evidence of a connection having been established: don't remove sent
messages (this isn't an ACK), and don't assert later on.
2007-02-06 05:49:45 +00:00
ehouse
183f0f716f enable juggle button after role change 2007-02-06 05:47:20 +00:00
ehouse
f2ae7cb716 close and reopen bt module with every new game to fix, badly, client's
failure to connect if it's restarted before host; add event and use to
retry BtLibSocketListen when fails (since failure is usually
temporary).
2007-02-05 04:20:13 +00:00
ehouse
9a61f5c38b Add assert; don't call comms if has been set to null (fixes device
reset); fix failure to install connCB (removes need to manually resend
messages when client starts up first.)
2007-02-04 17:13:01 +00:00
ehouse
363cfdce04 Drop keyUp events not preceeded by keyDowns to catch leaks from
dismissed dialogs; don't drop first keyDown on OS4 since the bug that
works around isn't there; turn BT back off by default.
2007-02-04 04:10:11 +00:00
ehouse
5fbc89ae76 add tarball target for exporting enough code to build relay. 2007-02-04 01:22:31 +00:00
ehouse
5afdcc20db include result of strerror in messages logging errno; turn relay on by default (linux) 2007-02-04 01:22:00 +00:00
ehouse
4c2259400a include result of strerror in messages logging errno 2007-02-03 21:35:07 +00:00
ehouse
e8f2215221 Turn on BT so 4.3a4 can have a non-M rev number; up version for 4.2. 2007-02-03 20:36:22 +00:00
ehouse
7c8b7294cd add const to a bunch of char* decls in APIs and variables; no code change 2007-02-03 17:54:20 +00:00
ehouse
e6ec790305 eType_2str replaces logEvent. Only effects debug builds. 2007-02-03 17:41:46 +00:00
ehouse
1fb61d9a7f don't set INITIALOBJECTID for main form 2007-02-03 17:39:48 +00:00
ehouse
83a25455bb Fix Zodiac-only bug: printing keys generate only keyDown event, so
must use different handler than for nav keys; fix treo bug where forms
brought up during key handling get spurious key events by adding
keySafeCustomAlert that consumes up to the first keyDown before
calling FrmCustomAlert.
2007-02-03 17:36:56 +00:00
ehouse
3f111c5657 name change only: Connectedness becomes DeviceRole 2007-02-02 08:34:37 +00:00
ehouse
b2f3e73672 Don't make any btlib calls until the main form is up. This works
around an (OS?) bug where, apparently, the confirm-turn-on-bt dialog
eats pending events, including frmLoadEvent, so that the form never
loads or is very broken if that dialog is allowed to come up too
early.
2007-02-02 08:24:06 +00:00
ehouse
ad77b04766 When role changes from client, where only local players are shown, to
host or standalone where all are shown, change the number shown
appropriately.  The goal is to make the experience natural,
particularly for the common case where the players aren't changing.
Give up once user manually changes number shown.
2007-02-02 08:15:07 +00:00
ehouse
c2d67e16da debugging: add custom events to logEvent 2007-02-02 08:11:42 +00:00
ehouse
f441b22e78 cleanup: only one return per function. 2007-02-02 08:11:14 +00:00
ehouse
599b43ab78 Y counts as a vowel when removing non-words. 2007-01-30 04:53:32 +00:00
ehouse
aaeb58e993 Remove excess logging 2007-01-27 15:12:13 +00:00
ehouse
9d74699181 Work around what looks like a PalmOS bug that generates a spurious
keyDown event to a form put up while processing a keyUp event in the
main form: set a flag while handling key events, and drop the first
keyDown in child forms when it's set.
2007-01-27 15:10:10 +00:00
ehouse
f56b170b2a cleanup. No change in generated code. 2007-01-27 15:07:02 +00:00
ehouse
1486c764fb use varargs for LOG_RETURNF macro 2007-01-27 15:04:57 +00:00
ehouse
1890fcac6b forward declaration stops compiler warning 2007-01-27 15:04:19 +00:00
ehouse
ebeefe457f check and flip before hiliting cells. Fixes bug with feedback on hint
search on flipped board.
2007-01-23 04:09:26 +00:00
ehouse
0313a89553 Test and special-case for zodiac, which gets events in the same way
has Treo but doesn't have OS support for moving focus among objects.
And since zodiac doesn't support the std Palm hires APIs don't try to
use them.  Up version string to b4.
2007-01-21 23:27:46 +00:00
ehouse
7ed3ad89b7 Remove assert that's firing; don't inval_all from util_yOffsetChange:
that blocks testing common inval code.
2007-01-21 23:00:52 +00:00
ehouse
a998e96de9 Tweak scroll-of-focussed-board inval code so we don't inval the whole
board, which looks crappy.  Instead inval only what was previously a
border row, and pass a new param to draw_vertScrollBoard so the
platform can choose not to scroll cells that will just get overwritten
with different bits.
2007-01-21 22:59:29 +00:00
ehouse
15acf8c8bb When scrolling a focussed board, inval everything. Otherwise border
cells scroll into the center drawn as border.
2007-01-21 18:05:25 +00:00
ehouse
6ed6fe4976 Change how flip works, keeping board data like invalFlags and limits
in sync with the board rather than the model and flipping coordinates
only in time to access the model or pass to engine.  With that done,
drawing can skip any rows scrolled off-screen, and the board's
perimeter focus rect can be drawn and invalidated correctly on a
flipped, scrolled screen: zodiac, eventually.
2007-01-21 06:21:12 +00:00
ehouse
45ad5bc5df Fix drawing highlighted cells on perimeter. 2007-01-20 04:30:02 +00:00
ehouse
0b68a917f7 preliminary addition of xplatform-only focus, esp drawing of cursor
and handling of arrow keys via WM_KEYUP; added focus/cursor color to
prefs and color edit dialog.  Tested only on win32 (WINE), and not
integrated with platform nav/focus model.
2007-01-19 08:24:02 +00:00
ehouse
2fabf70396 use new perimeter feature and conditionally replace manual board
framing with it.  Off for now.
2007-01-19 08:22:14 +00:00
ehouse
20ecd5f7d7 get rid of draw methods; always highlight cursor same way;
board_handleKeyUp becomse board_handleKey for curses
2007-01-19 08:20:58 +00:00
ehouse
0a426b0876 Get rid of draw_eraseMiniWindow: just inval what's under it; make use
of CELL_ISCURSOR consistent: when focus not dived all elements have it
set (or only perimeter for board, settable at compile time); get rid
of draw_drawCursor since CELL_ISCURSOR is all that's needed;
2007-01-19 08:20:11 +00:00
ehouse
e9871b1fb6 change constant names. No change to code compiled. 2007-01-19 06:43:52 +00:00
ehouse
68730379b4 add five-way support for Tungstens; don't move cursor when keys are
meant for menu; redraw after hiding miniwindow when OS brings up
dialog;
2007-01-18 05:49:54 +00:00
ehouse
d350151659 remove code to save bits behind miniwindow 2007-01-18 05:49:07 +00:00
ehouse
c01615e86b reintroduce board_handleKey 2007-01-18 02:42:37 +00:00
ehouse
5decd9bbf3 run svnversion on parent to catch changes in common or other shared dirs 2007-01-16 02:48:27 +00:00
ehouse
c02c3fec17 Set focusHasDived before invalidating so newly focussed object drawn correctly. 2007-01-16 02:42:58 +00:00
ehouse
1afe502436 Fix bugs in recent focus/key changes. 2007-01-12 03:37:30 +00:00
ehouse
5a87db48bd keep track of last key down so can fake key up event when palm won't
be giving us one, e.g. when holding key results in a system window
coming up;
2007-01-12 03:34:43 +00:00
ehouse
f329966a8a on keyDown, look at what keyUp will do and, if nothing, don't handle
the event.  This lets focus transfer work as before there was keyDown.
2007-01-12 03:28:20 +00:00
ehouse
e6ba8c872c fix crash when linux is bt server: if no addr provided it's not a duplicate. 2007-01-09 02:43:09 +00:00
ehouse
994ee5b254 remove dead code. 2007-01-09 02:38:22 +00:00
ehouse
fef8891e3c fix problems created by key-nav changes: don't drop hardware scroll
keys, and redraw after key-repeat if either up or down handled.
2007-01-07 05:25:28 +00:00
ehouse
cf0f88cf36 up version to b3 2007-01-07 05:23:06 +00:00
ehouse
e0010901f1 add board_handleKeyRepeat, and call it from palm and gtk. This lets a
held nav key walk the cursor across the board.
2007-01-07 04:32:29 +00:00
ehouse
593980817f Clean up for non-keyboard and non-keyboard-nav cases. Wince is the
latter: make it compile again.
2007-01-07 01:01:20 +00:00
ehouse
8f924e9dc9 Don't show about dialog (with its alpha message) except when BT enabled. 2007-01-06 18:31:16 +00:00
ehouse
31b6526917 handle both keyUp and keyDown events, including dealing with devices
that don't generate the former.  Break key-handling code into separate
function.
2007-01-06 17:50:43 +00:00
ehouse
098a2ec5c4 Use new keydown/up APIs from linux, and add key support and drawing
changes to implement keyboard navigation/focus in gtk port.
2007-01-06 17:46:02 +00:00
ehouse
0303e56c43 Break key handling into keyUp and keyDown, and treat keyDown the same
as penDown.  Idea is to be able to set timers to get bonus square
hints etc. without stylus.  Works, but transitions are rough because
keyDown doesn't know whether keyUp will result in a focus change.
2007-01-06 17:32:08 +00:00
ehouse
02c225c413 Fix so IR-only multi-device build works again. 2007-01-06 16:46:45 +00:00
ehouse
d23539536e 2007 copyright in about box 2007-01-06 16:45:39 +00:00
ehouse
5b8e0e89d3 remove duplicates as part of sort process 2007-01-06 04:43:22 +00:00
ehouse
68e2f821d6 beta 2; redraw focus ring after redrawing tray buttons; move board
focus border so it coincides with regular border.
2006-12-21 07:55:19 +00:00
ehouse
f1380a6a70 incorporate svn version number in .prc file name 2006-12-20 04:57:36 +00:00
ehouse
1808fa804c When palm button loses focus to board obj, post event to be handled
after focus event, and on handling it inval rect of focus ring on
button.  This fixes drawing glitch where palm remembers pixels behind
focus ring but they're not right.
2006-12-20 04:49:24 +00:00
ehouse
5d99928dea place initial focus on scoreboard since OS insists on putting it somewhere. Need to fix that. 2006-12-20 04:16:22 +00:00
ehouse
72228104ec fix for non-BT compile 2006-12-20 04:15:40 +00:00
ehouse
884cb8d186 prevent tray buttons overwriting tray by removing border and moving same distance to right 2006-12-20 04:14:41 +00:00
ehouse
1f6d5b6012 add new file palmdbg.c 2006-12-20 04:13:30 +00:00
ehouse
5b34e786bc bug fix: clear focusHasDived on pen event along with other focus state 2006-12-20 04:11:17 +00:00
ehouse
23b85f5437 BT work is now 4.3. Nav work moves into beta as 4.2. 2006-12-13 05:03:19 +00:00
ehouse
ebfd85019d add hand-coded implementation of HsNavDrawFocusRing. This works, but
should be replaced by generated code.
2006-11-29 04:11:24 +00:00
ehouse
4b5acc257f back out unintended change 2006-11-27 04:52:27 +00:00
ehouse
f0f8eccbe1 include Hs (nav) files for ARM build too 2006-11-27 04:50:53 +00:00
ehouse
4f0a0593e7 add type for ui color table; get a jump on Hs nav functions 2006-11-27 04:48:28 +00:00
ehouse
2fa63a74b9 temporarily comment out for arm code that won't compile on arm 2006-11-27 04:40:18 +00:00
ehouse
424718b5bb swap focus-related event data, and include the UI color table call used to
determine the color of self-drawn focus elements.  I can't draw the nav
ring on ARM, but otherwise five-way nav works on arm with this checkin.
2006-11-27 04:39:36 +00:00
ehouse
bb45f89a6f Unfocus any board object whenever pen touches board 2006-11-27 01:13:48 +00:00
ehouse
4207a6ae66 get rid of initial focus object for main board 2006-11-27 01:07:22 +00:00
ehouse
afc302a29b When alt key pressed cursor can move onto occupied squares it normally skips. 2006-11-22 13:49:14 +00:00
ehouse
06e6d4a903 Post-Slovak change, 7 bits required to save face and blank bit. Use 7, but expect the old 6 for previous version streams. 2006-11-19 06:40:56 +00:00
ehouse
53765169be Draw focus differently in tray if whole thing has it, to include borders
between the tiles.
2006-11-17 13:46:06 +00:00
ehouse
7fe5718cc5 When "dived" focus reaches and crosses border of object, return as if
not handled.  This causes the platform to handle the key event itself,
typically by moving the focus to the next top-level object.
2006-11-17 13:41:13 +00:00
ehouse
a67be62069 Remove old focus-change callback; use extended handleKey API to allow
Palm to own all top-level focus change decisions (in accord with fnav
resource)
2006-11-14 06:54:14 +00:00
ehouse
91cf8543f5 Draw all focus indications ourselves: no more broken Palm API. Draw a
thick blue rect around board, and color all tiles and score positions
within the draw routines.
2006-11-14 06:52:11 +00:00
ehouse
aaf73a0543 tweak prefs checkbox text: covers remote as well as robot players. 2006-11-14 06:49:20 +00:00
ehouse
f8031a422f reorganize fnav resource for main board, using rows. Allows for
faster travel between the main elements.
2006-11-14 06:48:46 +00:00
ehouse
cac0fd94d7 Use new top-level focus drawing model, and new API indicating whether
key handled.
2006-11-14 06:47:50 +00:00
ehouse
abca6a4092 Two big changes. Pass focus bit into all or and players when focus
not dived and tray or scoreboard focussed.  This lets platform decide
to display top-level focus via mods to all elements.  Second, when
moving focus to top level from dived, claim not to have handled the
key event (but return true if needs redraw).  This allows platform to
handle shifting focus without requiring callback (which removed.)
2006-11-14 06:46:04 +00:00
ehouse
30897a709f Debug-build macros to pass __LINE__ and __FILE__ for logging 2006-11-14 06:40:36 +00:00
ehouse
4ccddbd93f add a done button 2006-11-13 02:02:15 +00:00
ehouse
29c4cb7c10 Exit trade mode silently if user clicks 'D' when it's not his turn.
(Better than refusing because "not your turn".)
2006-11-13 02:01:54 +00:00
ehouse
bfd555c22f bug: need to OR in inval value rather than replace. 2006-11-12 21:03:15 +00:00
ehouse
8125f8405b Break scoreboard code out into a new module. board.o was getting too
big on palm.
2006-11-12 20:09:00 +00:00
ehouse
84321fa158 fix drawing of empty tray space. 2006-11-12 15:39:10 +00:00
ehouse
382848f556 Fix to work with draw API changes 2006-11-12 15:22:26 +00:00
ehouse
a37fab39e8 new UNUSED macro for keynav 2006-11-12 15:20:36 +00:00
ehouse
eb32609a1d Fix to compile and work with draw API changes 2006-11-12 14:51:47 +00:00
ehouse
d3812271a2 Add to draw APIs of individual elements (e.g. board cells) whether
they're focussed so that they can draw that during rather than after
everything else.  On palm, use this to draw focus using the system
selected color rather than with the blue nav rect.  Since a new param
was too much, add new enum type CellFlags and pass as bitvector to
draw APIs.
2006-11-12 14:36:15 +00:00
ehouse
b174b89bda fix compile error when FIVEWAY not on. 2006-11-12 14:29:35 +00:00
ehouse
86e2a2d26a fix crash when FIVEWAY not on. 2006-11-12 14:28:43 +00:00
ehouse
f0d3148a49 Force file logging on to report an assertion failure. 2006-11-11 22:53:30 +00:00
ehouse
74b6d76182 Fix messages getting dropped when remote device isn't connected by, on
getting a new connection, making a callback that calls resend_all().
This means a lot of duplication, but duplication is free with
bluetooth.  The underlying problem is that packets are reported as
sent not when acked by the other side, but when passed to a lower
level that may not be connected at all.
2006-11-11 22:52:39 +00:00
ehouse
b39d0ad600 Add missing question to phonies warning message. 2006-11-11 22:45:13 +00:00
ehouse
2945a120f9 resend_all when a socket connects. This is the strategy needed with
Palm where apps quit and reopen connections many times during a game.
2006-11-11 22:44:31 +00:00
ehouse
9f0db2d9c5 add -lmcheck, which purports to catch memory errors 2006-11-11 22:42:40 +00:00
ehouse
130c0f5a92 Refactor to not return from middle of function. No behavior change. 2006-11-11 22:38:20 +00:00
ehouse
e2f3a55611 reject initial messages coming in on the same address a second time.
Fixes problem that surfaces when clients are more agressive about
resending early in game.
2006-11-11 22:37:36 +00:00
ehouse
1838640823 Fix bug where sign extention on 16-bit processors caused too many bits
set in crosschecks.
2006-11-10 08:08:59 +00:00
ehouse
b171900dfb When moving focus through tray, skip empty space; when through board,
skip cells with tiles permanently played.  Space char raises focus but does
not move it laterally.
2006-11-09 06:05:40 +00:00
ehouse
1f5ec02172 If no arrow visible, use cursor loc as destination when moving tile to tray. 2006-11-08 13:44:34 +00:00
ehouse
708e270b2a add palm_util_notifyFocusChange to handle focus transitions away from
xplat code
2006-11-08 05:06:51 +00:00
ehouse
e8b74e1cc3 set focus to board if not held prior to passing keys 2006-11-08 05:05:11 +00:00
ehouse
414580904f board doesn't handle focus-related keys unless it has the focus. 2006-11-08 05:04:44 +00:00
ehouse
dd5fa134a5 function turning object id constants to strings for logging 2006-11-08 05:04:13 +00:00
ehouse
2e9afb1ff2 remove typo blocking compilation 2006-11-07 13:43:30 +00:00
ehouse
2aa9664884 When internal focus reaches edge of object, move it back up and onto
the next object using a callback to the platform to determine what, if
any, object is next.  Adjust curses platform to cooperate.  Works
well.  Palm is next.
2006-11-07 05:46:44 +00:00
ehouse
44eaa36319 More progress on one-handed navigation: fix ncurses board clipped to
bottom of tray; add focus-related params to draw*Finished routines
(and simplify to one) so platforms don't have to save from Begin
routines (and stop palm doing that); check version of saved game, and
handle case where older binary tries to open newer version; redraw
Palm tray buttons after focus change to stop focus-rect ghosting; fix
annoying overlap in saved games dialog; palm version goes to a3.
2006-11-05 16:54:18 +00:00
ehouse
3153e2b867 Lots of progress on one-handed navigation: add gadgets to stand in for board
scoreboard and tray on palm; make center drill into the focussed object and
spacebar come back up then move the focus among them.  Integrate with other
focussable objects on main form.  Go from separate drawCursor routines to
same for all three, with cursor only visible when focus is drilled down.
On curses, add a hilite rect routine that can be called after text is laid
down, and use for cursors.
2006-11-03 06:23:54 +00:00
ehouse
57f2f4ba2a debug functions to turn enums and defines into loggable strings 2006-11-03 06:19:27 +00:00
ehouse
7c2e09cca5 Simple fnav resource for main form: a start 2006-10-30 00:28:46 +00:00
ehouse
935f87979e Use color rather than period to separate score from tiles left in
scoreboard.
2006-10-29 18:24:50 +00:00
ehouse
a5f71143c0 Fix crash on pre-fiveway palmos where FrmGetFocus always returns -1;
add new preference for whether small value nums are drawn in tiles in
tray.
2006-10-29 17:41:14 +00:00
ehouse
f1def437c3 Use new XP_TriEnable type; begin work to support bluetooth by tracking
connType and adding choice how to connect.  Bt connect dialog is
invoked, but the fields won't be populated.  Pass conn type into
socket constructor, assuming socket code doesn't change much to use BT
rather than TCP.
2006-10-28 14:56:04 +00:00
ehouse
a735cfab03 use new XP_TriEnable type 2006-10-28 14:49:49 +00:00
ehouse
b9cc093820 Many many changes improving newgame dialog by using a three-way rather
than two-way enabled state, but mostly about getting focus ring
working for five-way-equipped devices.  Add fnav resources to the two
dialogs with gadgets, and code so the gadgets are included in the
focus rotation.  The move to three-way means that disabled controls
can visible while excluded from the rotation.  There's cleanup and
polish to be done still, and five-way navigation doesn't work for the
main form yet. No changes to bluetooth at all.
2006-10-28 14:48:08 +00:00
ehouse
266355b7b2 New type XP_TriEnable meant to be used more than just for new games:
controls are hidden, disabled but visible, or enabled.
2006-10-28 13:21:32 +00:00
ehouse
2639c80c84 add uninited state so can reload dialog with no assumptions about platform
widget state.
2006-10-23 13:56:43 +00:00
ehouse
07e2717cc8 add a few consts decls where APIs changed; use XWFEATURE_RELAY rather
than BEYOND_IR
2006-10-22 19:44:30 +00:00
ehouse
da7a9dd562 When bt init fails, put up alert; check for failure after and don't
crash; erase bt status area even when no comms in order to erase after
turning bt off; in connect dlg, use a trigger rather than field and
button for host name.
2006-10-15 16:14:42 +00:00
ehouse
8c42b56c26 Cleanup logging macros and get rid of p_ignore. 2006-10-15 14:33:55 +00:00
ehouse
b73ac76775 Build with Bluetooth on; add alpha-only text to About dlg; show About
dlg on startup first time; fix null ptr deref bug.
2006-10-15 14:22:32 +00:00
ehouse
c695d8644c remove unused field 2006-10-15 14:20:14 +00:00
ehouse
d234fc637d make IR the default conn type on Palm, where it's been the only type
until now.
2006-10-15 14:09:17 +00:00
ehouse
04f99aa2c4 fix non-bt compile by ifdef-ing bt-only ui elements 2006-10-15 14:05:23 +00:00
ehouse
0506069f47 remove duplicate #definition 2006-10-15 13:54:31 +00:00
ehouse
cb2990b720 add const to a few formal param declarations 2006-10-15 13:53:17 +00:00
ehouse
9aa8faa1d1 Switch player count string for client in new game case. 2006-10-12 13:55:16 +00:00
ehouse
d123d6c352 Make self-restarting: fork child and wait (to deal with asserts). 2006-10-11 02:06:20 +00:00
ehouse
ed6cf517ea get rid of extra log statement 2006-10-11 02:02:53 +00:00
ehouse
8e4a9072e5 better message when relay disabled 2006-10-11 02:02:09 +00:00
ehouse
5f25ba9f57 remove BEYOND_IR, replacing with XWFEATURE_RELAY and
XWFEATURE_BLUETOOTH.  The goal is to be able to build to support
bluetooth only, or relay/ip only, e.g. for a palm bluetooth beta.
Seems to work.
2006-10-10 01:34:37 +00:00
ehouse
b8107cbd6e Add a bit more logging; do a better job of changing roles. Now can switch
roles with a new game and communication starts without a restart of the
app.
2006-10-07 03:40:29 +00:00
ehouse
f6c0ea92e0 Raise status char a bit. 2006-10-07 03:38:36 +00:00
ehouse
277624eb81 Don't return from middle of function. 2006-10-07 03:37:40 +00:00
ehouse
878acbc759 Fix opening games and messages saved by last shipping version on Palm
by checking version and loading new fields conditionally.  (Not yet
tested for current wince version.)
2006-10-05 01:17:03 +00:00
ehouse
715d01b8a4 Put relay-only fields into a struct for easier identification. No code change. 2006-10-02 14:26:56 +00:00
ehouse
9837d8cca7 Fix longstanding bug removing too few messages from queue on ACK.
Print queue as part of stats.
2006-09-27 01:54:53 +00:00
ehouse
ef97beaf2c Tweak enable/disable logic to show fields for remote players for the
informational case that are hidden for new game case -- e.g.  name,
which can be read but not set.
2006-09-24 21:10:17 +00:00
ehouse
0b0aef0908 Add quick hack to show BT connect state on main board, to be replace
by icons or something prettier later.  For new games dialog, replace
hard-coded list of controls to ignore with a runtime list.  This
allows checkboxes and fields to be enabled and disabled more easily.
Works around Palm's lack of a control state meaning "visible but
inactive" that works for all form elements.
2006-09-24 17:56:14 +00:00
ehouse
d6ef943a5f add linux_dict_getShortName 2006-09-24 15:35:33 +00:00
ehouse
6bae3385f4 fix compile warnings; disable board size combo when not new game. 2006-09-24 15:34:46 +00:00
ehouse
edd48174a3 Add more consts. 2006-09-24 15:28:15 +00:00
ehouse
d78f9dd720 Add debug menu and in response dump bt state to stream for display.
Track sends and receives.  Add listening state for master, and don't
reset its acl when slave goes away.
2006-09-23 22:58:33 +00:00
ehouse
415148e771 tweaks to compile both standalone and for relay use. Remember: Symbian
code hasn't been run in over a year.
2006-09-23 20:40:36 +00:00
ehouse
5e09041d8b bug: even empty strings need to be terminated. 2006-09-23 16:05:41 +00:00
ehouse
12731c59cb fix ARM crash loading bt game saved on 68K: specify sizeof array
rather than struct wrapping it.
2006-09-23 16:04:53 +00:00
ehouse
95fe18c4c7 Don't use service records; don't reset connection state as part of
reset for new game; handle case where callback happens inside of
BtLibLinkDisconnect call.
2006-09-23 15:24:30 +00:00
ehouse
04c5401711 What I meant to check in. F***ing emacs. :-) 2006-09-23 15:22:26 +00:00
ehouse
57a636618c "IR" -> "Beaming" 2006-09-23 15:19:29 +00:00
ehouse
9ab6ac701c cleanup and remove logging. 2006-09-23 15:18:44 +00:00
ehouse
e10d05eff0 On bringup for bluetooth, resend any waiting messages rather than an
empty new one to get the connection started.  This increases the
chances new games will connect without user having to hit resend.
2006-09-23 15:18:01 +00:00
ehouse
b3af1d4d2a When a client registering n players with server, send the first n,
ignoring local flag which nwgamest doesn't set in client case.  When
resetting, destroy any engine allocated: plugs new leak.
2006-09-23 15:15:57 +00:00
ehouse
213cfbb050 set crosschecks inline 2006-09-23 15:12:10 +00:00
ehouse
d46723eb6a use gtk_combo_box instead of whatever and fix inability to set current
num players and role as dialog comes up.
2006-09-21 01:34:29 +00:00
ehouse
9137eff9fa Largely untested changes to allow BT in ncurses mode, centered around
integrating sockets into poll fdset; move relay and bt globals out of
a union so can test if in use without knowing current connection method.
2006-09-19 03:39:08 +00:00
ehouse
7b7b7006a7 clean scoreboard rects before drawing in case player's location has changed as new players added 2006-09-19 03:35:26 +00:00
ehouse
fd5117fa28 Tweaks toward a dual ARM/68K binary where only 68K supports bluetooth.
Don't try to not show the BT option for connecting, but in the case
where it's not actually supported say so in the dialog.
2006-09-18 04:40:27 +00:00
ehouse
db3a8fe6e4 Remove dependency on non-existant file: should not have been checked in. 2006-09-17 13:33:45 +00:00
ehouse
3b280f8c4d remove dead code using IR libs directly (no exchange mgr); rename
#define to be consistent with same for bluetooth.
2006-09-17 06:16:05 +00:00
ehouse
ecb8664e1b remove dead code using IR libs directly (no exchange mgr); rename
#define to be consistent with same for bluetooth.
2006-09-17 06:15:37 +00:00
ehouse
8667bb77bf remove over-agressive attempt to detect out-of-order messages that was
breaking IR comms.
2006-09-17 05:06:46 +00:00
ehouse
d03ef80b3e What I mean to check in... 2006-09-17 05:04:32 +00:00
ehouse
65a82b1c3b Punt on problem of svn version in about box changing: comment in
makefile, and make it the last string.
2006-09-17 05:03:59 +00:00
ehouse
4bdef12c3e Prune excessive logging 2006-09-17 04:45:19 +00:00
ehouse
6cf4d50ee4 fix ARM build so DEBUG setting is passed to compiler, and code so it
compiles that way.
2006-09-16 22:09:28 +00:00
ehouse
31532c06ca pass debug -D options to .rcp files to to include debug menus 2006-09-16 16:08:33 +00:00
ehouse
0f271d707f revert change 1593: FEATURE_HIGHRES is no longer defined. This brings
highres icons back.
2006-09-16 15:53:14 +00:00
ehouse
ed1a7e6fc9 be a better master: don't try to send when not connected. 2006-09-16 15:21:27 +00:00
ehouse
72cd7c7ec7 tweak svnversion output so make stays happy 2006-09-15 07:52:45 +00:00
ehouse
40563a6790 strutils macro change; log PID on startup for easier attaching 2006-09-15 07:45:40 +00:00
ehouse
8f5bdf1163 strutils macro change 2006-09-15 07:43:21 +00:00
ehouse
63afad6482 strutils macro change; tweak so compiles non-DEBUG and without Bluetooth 2006-09-15 07:42:10 +00:00
ehouse
a292e33c03 catch up with recent API changes; fix bug in newgame dialog. 2006-09-15 07:39:57 +00:00
ehouse
9239d34f19 strutils syntax changes. Rough cut at reordering loading in game
info: when the device is a client and is starting a new game, we want
to start presenting only the local players.  So load them first, and
reduce nPlayers down to the count of current local players.  Works
well, but can probably be simplified.
2006-09-15 07:36:51 +00:00
ehouse
4029120fc6 do a better job of rejecting messages that have strayed in from a
different game; strutils syntax changes.
2006-09-15 07:34:39 +00:00
ehouse
e627d7f670 do a better job of rejecting messages that have strayed in from a different game. 2006-09-15 07:33:59 +00:00
ehouse
7e049bb986 new strutils macro syntax 2006-09-15 07:32:39 +00:00
ehouse
804b3c5f76 params become const 2006-09-15 07:32:04 +00:00
ehouse
a82e84c177 params become const; new macro syntax for strutils 2006-09-15 07:31:24 +00:00
ehouse
d7a2fadd39 modify MEM_DEBUG versions of strdup utils to record the __FILE__ and
__LINE__ of callers rather than their own to assist in leak detection.
2006-09-15 07:30:00 +00:00
ehouse
4e60a477e4 Names change only: it's actions, not events, that are postponed. 2006-09-14 01:57:40 +00:00
ehouse
6e143e0b87 Remove dead code 2006-09-14 01:48:22 +00:00
ehouse
3645481a53 New addr param to checkAndDeliver so address can be passed back to
comms; Add debug-only menus to toggle logging to file and memopad.
2006-09-14 01:46:41 +00:00
ehouse
07f21767fc New addr param to checkAndDeliver so address can be passed back to
comms.
2006-09-14 01:41:37 +00:00
ehouse
3866d898f4 Better handling of disconnect and reconnect; esp. slave will keep
trying to connect after losing contact with server.  With this
checkin, a game between palm and linux can be interrupted by either or
both and restarted, with either in either role.  Haven't tested
palm-on-palm yet.  App stop speed is much better now too.
2006-09-14 01:38:09 +00:00
ehouse
4b953e8891 Add debug-only menus to toggle logging to file and memopad 2006-09-14 01:34:22 +00:00
ehouse
7cf02f322e Don't typedef array; make array field of struct. 2006-09-14 01:31:13 +00:00
ehouse
100598a35f Make formal param const; add initial value to relay-only field so
asserts don't fail b/c of uninitialized value; don't typedef array:
make array field of struct.
2006-09-14 01:25:40 +00:00
ehouse
4479cf530d Get rid of separate accept thread, instead integrating listening
socket into main event loop (poll underneath).  Works for gtk; still
debugging ncurses.
2006-09-10 19:01:06 +00:00
ehouse
0339de1de6 Check state before accepting post-connection messages; and always set
state when completing connection process.
2006-09-10 18:58:10 +00:00
ehouse
1be6172e16 use tmp buffer to avoid copying one byte at a time. 2006-09-10 18:53:03 +00:00
ehouse
7d1d4d23c4 tweaks to re/connect logic; process incoming data from main event loop
and enqueue more than one at a time; wipe existing queue when reinited.
2006-09-10 18:34:57 +00:00
ehouse
c27abcd486 Attempt to listen for connections on a separate thread so connected
game could disconnect and reconnect, but still need work on adding a
socket to the main thread's io queue from a different thread.
2006-09-08 07:23:19 +00:00
ehouse
2c5d15a8dd remove param from util_addrChange; add comms_getIsServer; save bt_addr
as part of comms.
2006-09-08 07:14:24 +00:00
ehouse
c4b0f350e1 Lots of changes aimed at allowing to quit and restart in the middle of
a BT game: track states so can shutdown cleanly; transition from
master to slave; mechanism to defer work from callbacks to the main
loop.  Can now quit and restart as guest against host on linux.  Have
not tested between two Treos.
2006-09-08 07:06:21 +00:00
ehouse
148e711e54 init address field with current bt_adddr 2006-09-08 07:02:16 +00:00
ehouse
96dd01cbe5 cleanup: add missing consts. 2006-09-08 06:43:59 +00:00
ehouse
22f4edfd89 add ability to log to non-Memo db (to be read off device). 2006-09-08 06:39:35 +00:00
ehouse
3db4dc8a27 make formal params const where possible 2006-09-02 05:30:51 +00:00
ehouse
6b527014c8 when logging state transitions, don't unless there's a change 2006-09-02 05:29:59 +00:00
ehouse
16519a2070 fix bug checking crosschecks with more than 32 tiles. 2006-09-02 05:29:13 +00:00
ehouse
5d043e349e add __FUNCTION__ to assert macro 2006-09-01 04:39:56 +00:00
ehouse
e0edcb52a8 bug fix: reset stack data stream before getting length and writing. Assert
so easier to catch similar problems.
2006-09-01 04:32:57 +00:00
ehouse
9aa0e41eed hardcode psm (for now), and remove spd lookup stuff. Was needed to
connect to linux server which doesn't add spd records yet.
2006-08-29 13:23:00 +00:00
ehouse
f3eb95b891 Make linux client work as host. Currently accepts only one connection
and blocks in accept.  Need threads and a piconet.
2006-08-29 13:20:09 +00:00
ehouse
209da1b042 use stream_getSize to detect corrupt (truncated) messages. 2006-08-29 13:18:12 +00:00
ehouse
12f115b2ac make getSize return diff between what's been written and what's already
been read.
2006-08-29 13:13:43 +00:00
ehouse
fb87fd31d2 Start adding bt support to linux port. Required removing assumptions
that all connectivity was with relay and over streaming sockets (since
BT is using l2cap's datagram-style sockets.)  With this checkin, a full
robot-vs-robot game is possible with palm as host and linux as client.
Linux as host isn't started yet.
2006-08-26 21:15:20 +00:00
ehouse
74c6b241d7 Put up BT device browser while user is picking connection method
rather than when trying to send for first time, then pass address
through from conns dialog to bt code.
2006-08-26 21:12:10 +00:00
ehouse
406d746fbf add LOG_HEX 2006-08-26 20:28:48 +00:00
ehouse
0c915e61b0 First shot at bluetooth support (turned off in Makefile by default).
A full robot vs. robot game now works between two Treos.  Added UI to
choose BT as transport mechanism, and added new send proc to establish
socket connection between host and guest.  Works only for two devices:
no piconet yet.  No error recovery, ability to quit game in middle,
start new game, etc.
2006-08-23 04:44:55 +00:00
ehouse
94b952fb26 Fix assert: implicit cast to boolean doesn't work when bit being
tested is outside the low-order byte.
2006-08-22 04:20:40 +00:00
ehouse
1e8966c6f7 Fix compile errors due to missing UNUSED macros 2006-08-17 01:31:49 +00:00
ehouse
4daabf6fe5 Set -Wunused-parameter for those versions of gcc that support it, and
deal with the output by removing params where possible and elsewhere
by adding XP_UNUSED macro wrapping __attribute__((unused)).  There
should be NO change in function in spite of the large number of files.
2006-08-16 13:44:44 +00:00
ehouse
35261484a2 include svn version in name of generated .exe file. 2006-08-16 01:30:31 +00:00
ehouse
61959b394a patch from Peter Rovnak. For Slovak support, need to specify the tray
font by name in order to get one that has all the necessary faces.  Seems
to make no difference on US/English systems, but it works for him on a
localized device.
2006-08-16 01:29:21 +00:00
ehouse
0fed666438 script for averaging results of running 'time' multiple times. 2006-08-12 02:01:57 +00:00
ehouse
5d161cdd77 optimize for the case where tiles are < 32. Previous imlementation of
64-tiles support increases engine times by ~5%.  This removes that effect.
I can't measure any slowdown vs. pre-change engines.
2006-08-12 01:59:03 +00:00
ehouse
a2840b42ac Change LANG to XWLANG to avoid conflict with ENV variable. 2006-08-11 01:44:08 +00:00
ehouse
e68771939e fix broken ce build: remove ifdefs. 2006-08-11 01:33:19 +00:00
ehouse
0b868f5b53 Base the number of bytes used to store tiles on the number in the
current dictionary.  This allows us to continue to open games saved
with older code using older dictionaries while still supporting the
new format for up to 64 tiles.  Old versions may crash when opening
games created by new versions, but that's probably ok.
2006-08-10 01:21:31 +00:00
ehouse
c41b211735 increase possible number of unique tiles from 32 to 64 in order to
support Slovak which has 40.  This change is preliminary: it seems to
work for both existing and dicts with >32 chars, but it breaks backwards
compatibility: existing saved games will crash this code.  I think the
fix is to deduce the number of bits per tile from the number in the
dictionary being used, but that's not in yet.
2006-08-09 04:56:34 +00:00
ehouse
7c0c6461cd add another const 2006-08-09 04:52:43 +00:00
ehouse
ef8add4b26 was being just a bit too cute 2006-08-09 04:49:17 +00:00
ehouse
af2eb79a4e make some ptrs const 2006-08-09 04:48:34 +00:00
ehouse
b5164aa0c5 hide dict files -- playing with svn:ignore 2006-07-29 21:36:24 +00:00
ehouse
d493502714 tweak button location 2006-07-28 08:04:00 +00:00
ehouse
8903c2ad3f fix change between Local players/Total players when device role changes in newgame dlg 2006-07-28 08:03:33 +00:00
ehouse
e4493c2255 better compile-command in header 2006-07-28 07:53:18 +00:00
ehouse
6e88146396 turn on flip menu for PPC build too 2006-07-28 07:52:40 +00:00
ehouse
8c7624fe7d cleanup: remove overly verbose logging 2006-07-28 07:51:49 +00:00
ehouse
44a4dab13a Cleanup prior to adding Swedish to BYOD. 2006-07-22 16:05:45 +00:00
ehouse
5f8ba8a570 get symbian compiling. Untested. 2006-07-22 16:04:39 +00:00
ehouse
d43acd6b46 check for remaining memory being < 0, not just <=, since we allocate exactly as much as we need. Fixes failure due to being out of memory at same time as having finished parsing stdin. 2006-07-22 16:03:14 +00:00
ehouse
de0c62fb39 Compensate for OS' failure to deliver penup events by checking for
pendownness at critical points when an up event should have been
processed: when another pen down happens, when about to scroll, and
when events (menus and buttons) occur.  This seems to catch all the
lingering miniwindow problems. Add flip menuitem (win32 only for now).
2006-07-07 08:39:31 +00:00
ehouse
27057de11e Replace a bunch of doMirror parameters with a single function, called
after a flip, that invalidates y,x for every x,y that's invalid.
2006-07-07 08:27:13 +00:00
ehouse
4beb291f0d remove rc3 from version: ready to ship 2006-07-05 00:16:18 +00:00
ehouse
58bb0734b8 round up when determining top coord of letter in cell. Fixes "Q"
getting drawn higher than other ascii chars, and does not break even
taller chars in Danish or Portuguese.
2006-07-04 00:16:08 +00:00
ehouse
63a948cbd4 Exclude high-res bitmaps from lowres build 2006-07-03 23:45:18 +00:00
ehouse
a1fcd56d55 on low-res screens, don't expand timer's clip rect to avoid erasing cell border below. 2006-07-03 23:44:51 +00:00
ehouse
dfb8104eb8 ppm files no longer used. Remove. 2006-07-03 23:06:25 +00:00
ehouse
e76e23f7f5 Enlarge Preferences... button by one pixel 2006-07-03 22:34:36 +00:00
ehouse
8c86ba26d8 add more cases to messageToBuf. Effects debug build only. 2006-07-03 22:32:29 +00:00
ehouse
ef941e2c75 up version to rc3; make all elements of prefs dlg the same height so they
line up when moving between global and local sets.
2006-07-02 01:08:45 +00:00
ehouse
501e1f7a5f add messageToBuf (debug-only ); change newgame's J button to R (for
"rearrange"); tweak locations of various dialog widgets for better
layout.
2006-07-02 00:42:41 +00:00
ehouse
f8aea3b953 keep calling newg_juggle until there's a change. 2006-07-02 00:40:16 +00:00
ehouse
1c65ffaac2 fix showing of timer field when timer disabled when switching from global
to local prefs; use num-getter utils rather than convert to/from text.
2006-07-02 00:39:31 +00:00
ehouse
5ea2b3f8a2 in juggle, need to adjust rows after swapping to get passwd fields enabled
in sync with passwd checkbox.
2006-07-02 00:34:41 +00:00
ehouse
4da329a482 Get rid of param removed from board_handlePenUp. 2006-07-01 14:22:09 +00:00
ehouse
e0072c9b87 UI compromise on juggle: force something to happen, so the user sees a
change, then juggle again so the outcome is random.  This works on Palm
because draws are not cached: if two players wind up not moving you still
see them move then move back.
2006-07-01 14:18:00 +00:00
ehouse
72bd18316d juggle until something changes. This is better than there sometimes being
no change, until I figure out how to force drawing as on Palm.
2006-07-01 14:14:48 +00:00
ehouse
3fe3e05548 default dict now gzipped (no real change) 2006-07-01 14:13:29 +00:00
ehouse
9a52d82e0d newg_juggle returns bool indicating whether anything changed 2006-06-29 03:38:25 +00:00
ehouse
5fb3705535 don't cast size to a char! 2006-06-28 14:11:46 +00:00
ehouse
de20e83bdb A couple of tweaks so it works on byod with sample wordlist. 2006-06-28 03:38:42 +00:00
ehouse
504f9641ea remove parameter following API change 2006-06-28 03:11:26 +00:00
ehouse
5ebbf3f4d0 Support for Portuguese based on info from user in Brazil 2006-06-28 03:08:22 +00:00
ehouse
968dcf2835 removed a param from board_handlePenUp 2006-06-27 06:31:36 +00:00
ehouse
7614d971c1 randIntArray runs once and returns whether array is modified. Tray calls
again until it is.  newgame calls once: it's possible that juggling won't
do anything.  Still pending: do we tell users when nothing changed, or
leave them to figure out that it's not a bug?
2006-06-27 06:30:44 +00:00
ehouse
354cde389e remove unused parameter 2006-06-26 04:39:48 +00:00
ehouse
f2906db239 Up version string to rc2. 2006-06-24 01:22:47 +00:00
ehouse
a6d140581c Turn on BitBlt scrolling. 2006-06-24 01:22:10 +00:00
ehouse
6ecbf11ad6 Rewrite juggle to just create a second set of players in juggled order.
The previous too-cute algorithm failed when any player wasn't moving.
2006-06-24 01:20:44 +00:00
ehouse
6870178490 implement vertical scrolling using BitBlt. It's faster and smoother, but
commented out for now since it may be better not to add so late in the cycle.
2006-06-22 04:59:18 +00:00
ehouse
a08dc22023 Use new xplatform newgame logic to replace palm's in newgame.c, and make other
changes (shifting util functions around) that follow from that.  Back
version number down to 4.1.5 since that'll be the next shipped from this
branch.  Add juggle button to newgame -- the whole point of this.
2006-06-22 04:57:46 +00:00
ehouse
037bce2196 Use new xplatform newgame logic to replace palm's in newgame.c, and make other
changes (shifting util functions around) that follow from that.  Back
version number down to 4.1.5 since that'll be the next shipped from this
branch.  Add juggle button to newgame -- the whole point of this.
2006-06-22 04:57:08 +00:00
ehouse
cdc74b668a turn off advanced networking by default for push to release 2006-06-22 04:52:33 +00:00
ehouse
e32a445788 remove overactive log message 2006-06-22 03:37:21 +00:00
ehouse
15df92fc65 add missing include file 2006-06-22 03:36:51 +00:00
ehouse
4d79c85e94 up version string to rc1; add DEBUG to makefile help. 2006-06-18 21:54:59 +00:00
ehouse
45979f547a disable juggle button if only one player active; copy all four players when saving game state after dismissal. 2006-06-18 19:02:47 +00:00
ehouse
46cd6e8536 add ifdef for compile with some optional condition 2006-06-16 01:46:47 +00:00
ehouse
f271aee094 add commented-out code to draw juggle icon instead of "J" button. It's too much work to get it looking good before ship. 2006-06-16 01:30:20 +00:00
ehouse
f60dade9a0 move randIntArray to strutils, and use instead of similar code to juggle tiles in tray. 2006-06-16 01:19:11 +00:00
ehouse
a4cabd9cf7 Allow no space for REM text when no tiles left to allow more room for scores. 2006-06-16 01:15:44 +00:00
ehouse
b8a8c1c175 Fix juggle so it works for 3 players too. 2006-06-15 13:05:56 +00:00
ehouse
77793e31b8 Run server after gameinfo dialog dismissed in case a player's become a robot. 2006-06-15 12:39:54 +00:00
ehouse
a4ac6f9ff4 call server_do after gameinfo dialog returns in case a player has
become a robot.
2006-06-14 06:22:21 +00:00
ehouse
133016bd1d cleanup; fix compile of non-debug win32 version 2006-06-11 20:12:20 +00:00
ehouse
73c0cefb52 Add "Save current game as" to save file dialog; remove frequent-save hack. 2006-06-11 05:27:16 +00:00
ehouse
1af17b7672 Catch up with changes including three enabled states for control and
setting dialog strings.  Align titles with columns for standalone version.
2006-06-10 16:15:31 +00:00
ehouse
0460136a90 You can always change passwd for local player. 2006-06-10 16:10:33 +00:00
ehouse
b80808bc57 Support new tri-part enabled type; add "game info" dialog/menu to test
read-only side; support new attributes for column head and nplayers
label; hide labels as well as controls that go with them.
2006-06-10 05:50:27 +00:00
ehouse
44abbc4493 Add new attributes to cover strings for number of players and remote
column head; make enabled an enum to differentiate between hidden and
disabled.
2006-06-10 05:45:53 +00:00
ehouse
1967a137ef Tweak widget positions to fit juggle button on device 2006-06-08 02:03:33 +00:00
ehouse
16dd84b059 Fix to compile in STANDALONE mode, e.g. for current PPC. 2006-06-08 01:51:34 +00:00
ehouse
5fff2997d6 First cut at using new nwgamest common code to replace PPC-only logic
for updating fields of new game dialog as players are added, made
remote, robots enabled, etc.  Removes a lot of code and fixes some
bugs in (non-yet-shipped) multi-device version.  As a bonus, added "J"
button to juggle players.  Seems to work well on Win32.  Haven't
tested on PPC yet.
2006-06-08 01:35:20 +00:00
ehouse
956c169d08 Refer to players as "remote" rather than "not local" to be consistent
with Palm and PPC; fix juggle bug by adjusting lines after moving them.
2006-06-08 01:26:18 +00:00
ehouse
e58d397c2b change newgame api names; implement juggle; change getter to take a
callback to copy strings that will go out of scope before the getter
returns (e.g. wince).  Use changed API in gtk dialog.
2006-06-07 01:45:03 +00:00
ehouse
8c176ed53c use common/nwgamest.c. Lots of code removed, and the dialog works now. 2006-06-07 01:28:37 +00:00
ehouse
9b6562e455 make a param const 2006-06-07 01:26:55 +00:00
ehouse
d918b9cb44 add common/nwgamest.{c,h} to make new game dialog logic cross-platform 2006-06-07 01:26:04 +00:00
ehouse
003f801314 up version number; add to list of dirs searched for .xwd files 2006-06-07 01:20:56 +00:00
ehouse
0fe04af4b4 Turned on leak-checking at shutdown for debug version, and fixed leaks and
crashes in destructors that had never been called before.  Seems now to 
free all allocated memory before exiting.
2006-05-30 05:12:02 +00:00
ehouse
2ba984775a trivial optimization: add 1 only once 2006-05-30 04:34:35 +00:00
ehouse
d029d6600d To show it and to prevent it's being cleared, write current password
into field in game info dialog.
2006-05-28 18:16:08 +00:00
ehouse
e26e149f4c silence compiler warnings. 2006-05-28 16:16:46 +00:00
ehouse
b8d3d477a5 fix scrolling and invalidation for flipped boards, and especially
where the board is still not fully visible when the tray is hidden.
2006-05-28 16:08:58 +00:00
ehouse
90dfc15ae9 use signed types to avoid overflow and disappearing scores 2006-05-28 16:02:16 +00:00
ehouse
d0c6e8517b center letter in tile even when it's too big. 2006-05-28 15:04:57 +00:00
ehouse
e75ef1ca53 fix a couple of compile warnings 2006-05-28 14:53:02 +00:00
ehouse
8639c4e5cd define CALLBACK to quiet warnings for CE build. 2006-05-28 00:42:34 +00:00
ehouse
b9f5925ceb Move button size #defines into .rc file. They're scaled by the time C
code sees them and so shouldn't be relied on outside the .rc file.
2006-05-28 00:41:44 +00:00
ehouse
3db196156b Calculate old window width correctly when figuring new width. Fixes
problem of buttons drawn too close to right edge.
2006-05-28 00:40:28 +00:00
ehouse
fde2ef1ee2 Before putting dialog into landscape mode, make sure it won't be wider
than the screen.  That is, don't be fooled when in portrait mode by a
screen height that's SIP-reduced.
2006-05-27 22:52:10 +00:00
ehouse
054fd21981 Cleanup password dialog 2006-05-27 22:47:33 +00:00
ehouse
4a28deb1b1 Lots of little tweaks to dialogs to get them looking better and to
work better in landscape mode; got rid of multiple DEFPUSHBUTTONs.
2006-05-27 22:21:21 +00:00
ehouse
ecb7243714 Lots of little tweaks to dialogs to get them looking better and to
work better in landscape mode; got rid of multiple DEFPUSHBUTTONs.
2006-05-27 22:21:09 +00:00
ehouse
14eef0a4b8 Move buttons in landscape mode for color sel dialogs too. 2006-05-27 22:19:30 +00:00
ehouse
3e934624a4 modify API for "portraitizing" dialogs, and space the buttons evenly
rather than stacking all from bottom.  This doesn't quit work on ce
since GetWindowInfo isn't available and IsWindowVisible does the wrong
thing.
2006-05-27 17:18:42 +00:00
ehouse
04e9dfb76a strcat becomes strcpy: trivial optimization 2006-05-25 04:07:49 +00:00
ehouse
be930f344c For dialogs in portrait-mode, move OK and Cancel buttons to the right
side and shrink up from the bottom
2006-05-25 03:41:32 +00:00
ehouse
340214d87d remove trailing <cr> to sometimes eliminate scrollbar 2006-05-23 02:01:26 +00:00
ehouse
65540759b5 clear multiple tile selection when trade ends even if cancelled 2006-05-23 01:53:18 +00:00
ehouse
abad0c7fd0 Get rid of hard-coded tile number limit in server_formatRemainingTiles 2006-05-23 01:52:20 +00:00
ehouse
113b9cea5f n## Lines starting with '## ' will be removed from the log message.
change version string to include b8
2006-05-21 02:09:03 +00:00
ehouse
778e68e4dd Increase size of buffer used to accumulate letters for "tiles left"
dialog.  French has 15 "E"s, and the old buffer size allowed an
overflow (crash) when at least 13 of any letter were left.
2006-05-21 01:54:48 +00:00
ehouse
d6ddeb0f87 update nHiddenRows so scrolling finally works 2006-05-20 06:22:33 +00:00
ehouse
27b740c03b draw lines rather than bullets to indicate whose turn it is in vertical mode 2006-05-20 06:21:53 +00:00
ehouse
5df612c1cd Change misleading function name; no code change. 2006-05-19 13:45:48 +00:00
ehouse
19414ae505 Finish scrollbar work by passing number of visible rows to
util_trayHiddenChange, which means an API change.  In board, calculate
bottom of board based on bottom of tray when tray is hidden, and round
so that it's an exact multiple of cell height.  In wince, take
advantage of the new parameter to fix the scrollbar so that very
constrained boards can be scrolled even when the tray is hidden.
2006-05-19 13:44:05 +00:00
ehouse
f69d433b7c Reset divider location on new game. 2006-05-19 13:31:18 +00:00
ehouse
70be257d8c First attempt to set board bounds based on tray bottom if tray
overlaps board.
2006-05-17 06:12:40 +00:00
ehouse
912d221b1c Replace overlap param with nHidden to give more flexibility in
creating situations where board must be scrolled.
2006-05-17 06:10:24 +00:00
ehouse
fd5355b627 Include output of svnversion in Palm version's About dialog. For
Catalan and Spanish as well as English.  There's also some character
conversion in the former two that may be linked to my local LANG
setting now being en_US.utf8.  May need to revisit if there are
problems.
2006-05-15 04:24:30 +00:00
ehouse
5dca33c5ab factor out updateScrollInfo so I can update scroller live once I get
super-small boards figured out.
2006-05-14 15:28:57 +00:00
ehouse
bb7e827703 for vertical scoreboards, force miniwindow to be entirely inside the board. 2006-05-14 15:27:29 +00:00
ehouse
e98ef5b962 move scrollbar into its own box so it doesn't force buttons to be over-tall 2006-05-14 15:26:21 +00:00
ehouse
afa496cb19 Incorporate svnversion output in About box; add CAB target 2006-05-14 15:22:48 +00:00
ehouse
94b46bc6c6 Incorporate svnversion output in usage() 2006-05-14 14:47:32 +00:00
ehouse
4bb82554e5 Since board can now sometimes only partially hide tray, introduce
distinction between obscuring and completely hiding.  In former case,
erase the tray rather than draw it partially hidden.  This means
drawing the tray before rather than after the board, which is a big
change that so far doesn't seem to have hurt anything.  If it does, it
might be necessary to draw it before and after the board.
2006-05-12 08:03:08 +00:00
ehouse
3ea23396d2 add compile-command 2006-05-12 07:59:38 +00:00
ehouse
ba1aefcd49 make tray hide button toggle hidden state 2006-05-12 07:59:21 +00:00
ehouse
54e17e76b1 rewrite score formatting to put is-turn bullets above/below for
vertical scoreboard; reduce inter-line spacing and otherwise tweak
drawing.
2006-05-12 07:58:31 +00:00
ehouse
308aa3ae42 fix compiler warning 2006-05-12 07:55:36 +00:00
ehouse
dbab3bc4fd Add ability, in win32 version, to specify height and width on wine's
commandline -- to ease debugging of layout code.
2006-05-12 07:54:59 +00:00
ehouse
121163e586 Turn on -Wall for compilers, and fix warnings that result. Got 'em
all for win32 build, but some remain for wince that I'm unable to fix.
2006-05-12 07:25:43 +00:00
ehouse
73b244e11f Turn on -Wall for compilers, and fix warnings that result. Got 'em
all for win32 build, but some remain for wince that I'm unable to fix.
2006-05-12 07:17:35 +00:00
ehouse
543df9f681 minor code improvement 2006-05-11 03:02:11 +00:00
ehouse
469a23a183 fix too-tall cells in vertical scoreboard case 2006-05-11 03:01:39 +00:00
ehouse
216615577b minor fixes to drawing spacing (what I meant to check in) 2006-05-11 03:00:50 +00:00
ehouse
3b7e22dc1c minor fixes to drawing spacing 2006-05-11 02:58:36 +00:00
ehouse
c496593800 tweak score layout, and remove a U8 that was overflowing on win32 2006-05-10 13:42:44 +00:00
ehouse
7297ab4be8 fix layout for vertical scoreboard option 2006-05-09 12:31:41 +00:00
ehouse
36993ba258 catch up with API change 2006-05-09 04:05:19 +00:00
ehouse
3a4c5dfff6 catch up with API change 2006-05-09 04:04:56 +00:00
ehouse
468c6efd37 first cut at supporting landscape mode by moving scoreboard to left edge of screen from top. 2006-05-09 02:01:27 +00:00
ehouse
28411a4466 API change: board is responsible for figuring tile size and giving
extra pixels to divider.
2006-05-06 14:42:38 +00:00
ehouse
e8377f242c Alert user of a previous version that dict location is being fixed 2006-05-05 12:51:35 +00:00
ehouse
e7868afd67 Alert user of a previous version that dict location is being fixed 2006-05-05 12:51:08 +00:00
ehouse
aa09dfba91 catch up with API changes 2006-05-05 12:49:02 +00:00
ehouse
99ba48ce3e add poolsize and fsize args to better warn users when dict is too big.
Later need to modify the build process to specify the size needed.
2006-05-02 13:28:07 +00:00
ehouse
653fdb6a7b Improve out-of-memory message; don't double-count words. 2006-05-01 14:00:06 +00:00
ehouse
fd7c649cb0 first cut at script to package binary, shortcut and BasEnglish
dictionary into an installable .cab file.
2006-04-30 21:52:17 +00:00
ehouse
3d5345f53b pretty up About text. 2006-04-30 21:51:19 +00:00
ehouse
f700c88bca update version number 2006-04-30 21:06:25 +00:00
ehouse
3c7b895bed List dictionaries alphabetically, which requires first storing them in
sorted order then adding all at once to the menu.
2006-04-30 19:54:40 +00:00
ehouse
7d60d05436 move CE_MAXDICTS to header 2006-04-30 19:45:48 +00:00
ehouse
22e6ddde2a Bring over from personal archive. I don't know if this works yet:
waiting for a wordlist.
2006-04-30 16:17:21 +00:00
ehouse
c0c5332098 add 'sort -u' to get rid of duplicates. All info files should have this.... 2006-04-30 15:15:28 +00:00
ehouse
328c96c617 fix filter to eliminate words with unused letters; catch up count of
'G' tiles with gtoal's list.
2006-04-30 14:52:43 +00:00
ehouse
4ec6af22cb Include name of dict so it can get printed. 2006-04-30 13:58:24 +00:00
ehouse
0295579e32 More cleanup for Spanish dict building. Seems to work now. 2006-04-30 04:44:10 +00:00
ehouse
8124a01010 Cleanup for Spanish dict building: die when can't build correctly, and
do same for WINCE as for FRANK re: specials
2006-04-30 04:27:33 +00:00
ehouse
834c43e131 sort to get rid of duplicates and so sort inside dict2dawg won't be needed 2006-04-30 02:35:26 +00:00
ehouse
3a37c11970 check that this version number stuff works 2006-04-29 16:47:01 +00:00
ehouse
4493ed8482 attempt to print subversion revision number with -v option 2006-04-29 16:40:48 +00:00
ehouse
993ab25c61 use stream_putString 2006-04-25 13:46:59 +00:00
ehouse
ef6ebe6bac Add, and use, stream_putString. Saves 500 bytes on win32. 2006-04-25 13:31:15 +00:00
ehouse
3b94d0f0a2 When unable to open a dictionary whose path has been saved, look for
it elsewhere in the set of possible directories.  This should help
ease the transition to there being a limited number of places where
dicts can be, since games saved previously will still work after the
dicts they reference have been moved.  Also, clean up callbacks making
their return values consistent: true means done.
2006-04-25 04:25:08 +00:00
ehouse
6687984bf0 On win32 too, return null when dict not found. 2006-04-24 13:36:23 +00:00
ehouse
1b447272b2 Replace generic "no dictionaries found" warning with list of directories searched and URL from which to download. 2006-04-24 04:34:42 +00:00
ehouse
d4bb0f307f pass the rigth size to LoadString 2006-04-22 14:31:43 +00:00
ehouse
bc2a99b474 More of dict search change: failed to save buffer before checkin 2006-04-22 14:28:22 +00:00
ehouse
eb7f62308e Show current dict in dropdown in game info mode. (Had disappeared in recent changes.) 2006-04-22 14:19:21 +00:00
ehouse
4b8e877205 Go back to writing to \Program Files\Crosswords, since we now look
there automatically.
2006-04-22 14:06:11 +00:00
ehouse
d8ab05a04e rewrite ceLocateNDicts to do recursive searches from a list of
directories stored in resources.  On device this is currently
"\Program Files\Crosswords" and "\SD Card".  (Just "." for win32.)
Later may need to restrict on the card too.  Still to do: make "no
dicts found" Alert list the places searched.
2006-04-22 14:05:09 +00:00
ehouse
dc908e52b2 set DEBUG in compile-command; no code change 2006-04-22 13:55:19 +00:00
ehouse
13e584ac68 make combobox tall enough that it can pop down 2006-04-20 13:48:44 +00:00
ehouse
7d14763d8c rename function to link with pocketpc-sdk 2006-04-20 13:47:58 +00:00
ehouse
97d3deffdd display filename only (no path, and no extention) in dropdown, but retain full path internally to use after choice is made. 2006-04-20 04:39:46 +00:00
ehouse
e96aaccef9 debug-only function for logging wchar_t strings 2006-04-20 04:38:40 +00:00
ehouse
fc0c7c3f80 When creating dicts dropdown, set 0th as default if there's been no match. 2006-04-20 03:56:38 +00:00
ehouse
b5843a5486 forgot to save before commiting.... 2006-04-19 04:57:51 +00:00
ehouse
5a8c1ef2af ceLocateNDicts now takes a callback. Use that to build menu of dicts
rather than call OpenFile, which doesn't let you browse much of the
file system on CE.  Heading for installing dicts in Program Files so
users never have to worry about them.
2006-04-19 04:56:00 +00:00
ehouse
ddb21c3cfc Install into /My Documents/Crosswords since that's the only place the
OpenFile dialog will let you browse.  And use filename as -a option so
more than one dictionary can be installed -- without that the
installer treats all dicts as versions of the same app and removes the
old before installing the new.
2006-04-16 05:49:59 +00:00
ehouse
6680edebb6 Rewrite dictionary location code so that it can more effeciently
produce a list of dictionaries.  The API has changed slightly, but the
new ability isn't used yet.
2006-04-16 05:12:52 +00:00
ehouse
b26982a3df Seems to work to pack a .xwd file so that it's installed on a device
when clicked.  Still haven't figured out how to include info about the
app name, developer name etc.
2006-04-15 23:46:24 +00:00
ehouse
1d40eddbb5 exit if can't open table file; include assert for compile on sarge 2006-04-14 08:23:28 +00:00
ehouse
3df1e461e4 For already-sorted case, read words from file on as-needed basis rather
than build a vector to hold them.
2006-04-14 05:23:30 +00:00
ehouse
8f909cd3a7 Use new compiled dict2dawg when present. 2006-04-13 15:30:15 +00:00
ehouse
b70bee3d53 A final bit of cleanup. All the perl is gone. 2006-04-13 04:04:03 +00:00
ehouse
d6dc4bf30c Cleanup: remove dead code. 2006-04-13 03:58:54 +00:00
ehouse
131d4c9bd4 Use a single huge buffer for all strings rather than calling malloc
for each.  Makes a measureable speed difference.
2006-04-13 03:52:48 +00:00
ehouse
08557184a5 debug: works now! Also ifdef out debug/verbose code. 2006-04-13 03:49:41 +00:00
ehouse
72532d72a8 print letter as well as tile in text dumps (same as cpp version) 2006-04-13 03:06:18 +00:00
ehouse
b89ed5b999 add -debug arg for parity with cpp version, and add -mn flag to usage(). 2006-04-13 02:58:39 +00:00
ehouse
0c7081bf36 Tons of changes continuing port from perl. Doesn't quite work yet, but close. 2006-04-13 02:57:43 +00:00
ehouse
2863379b9b Starting work on cpp version of dict2dawg.pl. This is nowhere near complete. 2006-04-12 04:39:49 +00:00
ehouse
b10ca04e07 don't exclude BEYOND_IR-only fields 2006-04-07 03:08:23 +00:00
ehouse
cb05850fe3 Catch up with draw.h API changes (mostly just adding consts) 2006-04-04 02:43:12 +00:00
ehouse
dd779cebbc Quick meaningless checkin (update comments) to check svn config 2006-04-03 03:37:53 +00:00
ehouse
2300d55567 Draw bitmap chars ("specials", e.g. for Spanish) centered in rect
rather than at x,y.  This lines them up with normal letters on the
board as it changes size.
2006-04-02 22:27:44 +00:00
ehouse
88b37a1beb Fix crash when no dictionary by checking for null model before calling
cePositionBoard on WM_SETTINGCHANGE event
2006-04-02 21:52:15 +00:00
ehouse
08e8c4a858 Get rid of TALL_FONT macro, since it's permanently on anyway. 2006-04-01 21:25:58 +00:00
ehouse
63a8e0adbb Add macros to draw.h, and use 'em for wince, so that a platform can choose to call draw.h methods via a vtable or static linking. 2006-04-01 21:01:20 +00:00
ehouse
9be9e55986 Fix formatting (by way of playing with svn) 2006-04-01 16:54:40 +00:00
ehouse
0563b244bb Catch up with API changes (all adding const to rect and char ptrs) 2006-04-01 16:48:13 +00:00
ehouse
3388fc9f7b Remove HIGHRES compile-time tests: all palm releases will have HIGHRES
support now; build in different directories.
2006-03-31 10:57:01 +00:00
ehouse
3da83805cc handle cmdline opts in a less-fancy way that works on freebsd too. 2006-03-22 04:33:34 +00:00
ehouse
a8463b9341 link pthreads in a way that works on freebsd too 2006-03-22 04:31:27 +00:00
ehouse
b29bde8e37 include stdio.h for freebsd 2006-03-21 04:05:33 +00:00
ehouse
96d6623026 include pthread.h for freebsd 2006-03-21 04:04:43 +00:00
ehouse
3f819b871d implement ResetEvent and SetEvent 2006-03-21 03:47:58 +00:00
ehouse
9166d66589 use MS macro to get winsock functions instead of eponymous posix ones.
With this change, play over IP works again!
2006-03-21 03:47:15 +00:00
ehouse
25b0d63b1a get rid of unneeded DH() 2006-03-20 04:13:40 +00:00
ehouse
6f9e7ed94c add an underbar to separate numerals 2006-03-18 03:35:20 +00:00
ehouse
300c29be35 add a couple of missing icon images 2006-03-18 03:34:15 +00:00
ehouse
a121388762 no harm in copying field when feature not available; may help newer
version to open file.
2006-03-04 16:07:21 +00:00
ehouse
3ad2b8e38e fix errors that became apparant when feature flags turned on and
stopped building wince resources with _WIN32_WCE on.
2006-03-04 15:57:39 +00:00
ehouse
8332e6746b colorsel dialog works now on wince, so remove warning dialog 2006-03-04 15:56:31 +00:00
ehouse
67c638643d fix colorsel dialog on wince by defining MY_COLOR_SEL for .rc files
too.  Also stop defining _WIN32_WCE for win32 .rc files.  Turn on all
other missing XW-feature flags in .rc file too.
2006-03-04 15:55:57 +00:00
ehouse
162cb99c53 ignore .stamp files 2006-03-04 15:36:06 +00:00
ehouse
6b140d641b fix b5 crasher: check for stream equivalence with the older version
now that current version's been upped.  Rename old version to better
indicate when it was current.
2006-03-04 06:12:38 +00:00
ehouse
b91ad07b03 add target to upload binary 2006-03-04 06:09:42 +00:00
ehouse
091f8ca2e3 move on to next beta 2006-02-28 05:29:37 +00:00
ehouse
10d38faa33 add install target 2006-02-27 00:08:32 +00:00
ehouse
90412fe9d4 bring in transparant small icon change from 4.1 branch 2006-02-26 23:56:06 +00:00
ehouse
eb2a4d513e up alpha version 2006-02-26 23:53:55 +00:00
ehouse
772c262b5e first checked in. works 2006-02-26 23:51:57 +00:00
ehouse
a393bd97b7 update copyright -- thought I'd done this... 2006-02-20 02:07:18 +00:00
ehouse
667c705f44 strip all .exe files, not just for release. 2006-02-20 01:57:18 +00:00
ehouse
afb90f6d90 Check .xwd files coming back from OpenFile dlg, and reject with msg to
user those that aren't valid.  This catches corrupt files and other app
files ending with .xwd.
2006-02-20 01:56:34 +00:00
ehouse
e9ef9bea2c change about box text for beta 5. 2006-02-20 01:51:46 +00:00
ehouse
95a7f64eff strip release binaries 2006-02-19 16:07:14 +00:00
ehouse
788ebda35b tweak code so board is right width in release build. Looks as if I'm
working around a code-gen bug, but I haven't looked at the asm output.
2006-02-19 05:48:51 +00:00
ehouse
7a6c44de80 update comments to describe building with Linux tools 2006-02-18 21:59:04 +00:00
ehouse
e12abddcd9 new directories to ignore 2006-02-18 14:08:04 +00:00
ehouse
fb0d471dae add const decls to draw.h and dictnry.h functions where appropriate,
and modify "subclass" methods to match.  Should be no code change, but
this makes the intent of the APIs clearer.
2006-02-18 06:39:40 +00:00
ehouse
dde823a5ca update help target 2006-02-18 06:37:01 +00:00
ehouse
a4c7d48eb5 make XP_UCHAR signed to avoid warnings calling string.h funcs 2006-02-18 06:36:39 +00:00
ehouse
447af498a2 fix warning 2006-02-18 06:35:48 +00:00
ehouse
6161e9d0ad new directories and file extensions to ignore 2006-02-17 07:33:08 +00:00
ehouse
b9aa155761 cast threadstart func ptrs. Not sure why... 2006-02-17 07:31:21 +00:00
ehouse
826a6dd82e tie aygshell to Wince rather than making it separate feature 2006-02-17 07:30:54 +00:00
ehouse
268442b782 use __VA_ARGS__ in debug macros 2006-02-17 07:29:25 +00:00
ehouse
a8add11453 clean up usage 2006-02-17 07:28:41 +00:00
ehouse
de830f328f don't include in curses-only build 2006-02-17 07:28:17 +00:00
ehouse
e9499cb4ed formatting only 2006-02-17 07:27:58 +00:00
ehouse
5aeb5dc6fa makefile cleanup 2006-02-17 07:27:36 +00:00
ehouse
472b61dbe3 get rid of printf 2006-02-16 03:32:19 +00:00
ehouse
7dccae2d3c make color buttons owner-draw, and draw them. This fixes bug where
all are the background color, and seems to fix win32 build altogether.
Wince build still needs to respond to the buttons being pressed.
2006-02-16 03:31:44 +00:00
ehouse
d601ba3488 provide sensible path for saved files on win32 so state can be preserved 2006-02-15 13:09:36 +00:00
ehouse
32454235cc use native color-picker on win32 2006-02-14 04:54:28 +00:00
ehouse
dd9298e95f make remDim 16-bit so doesn't overflow on large-screened devices 2006-02-14 04:53:45 +00:00
ehouse
92fb9fb9b2 turn off broken color sel until have time to fix 2006-02-14 04:52:31 +00:00
ehouse
233479a959 get rid of null-termination and 'sort -z' since that option isn't on
new ISP's BSD sort.
2006-02-10 05:12:25 +00:00
ehouse
098adea254 better way of doing debug builds 2006-02-07 14:46:08 +00:00
ehouse
1fd52dee8f back out change that had window drawing too narrow 2006-02-07 14:45:30 +00:00
ehouse
257afd1474 separate debug build; pass flags to linker so OS won't run in emulation mode 2006-02-06 15:00:46 +00:00
ehouse
ffd9b66bc5 lots of tweaks toward a beta build on linux. works now, but takes a
hex editor.
2006-02-06 04:48:20 +00:00
ehouse
e7dd853d07 attempt to show different title when in debug mode 2006-02-06 04:44:09 +00:00
ehouse
2ee7e7a0f2 tweak -- but these will be going away as soon as mingw and debian's
pocketpc-sdk catch up with me.
2006-02-06 04:43:32 +00:00
ehouse
8f7e41e89d cleanup closing in on building correctly -- which now works, though it
takes a hex editor.  May have fixed a bug with a missing CloseHandle
call.
2006-02-06 04:41:14 +00:00
ehouse
96a45af102 type changes to stop warnings 2006-01-31 14:40:49 +00:00
ehouse
502cddcf1f debug macros and wierd rewrite of code using random and mod. This makes it work on ce! 2006-01-31 06:42:53 +00:00
ehouse
323240fa6b missed one ce-specific struct. This makes it work on ce! 2006-01-31 06:41:49 +00:00
ehouse
559662ea98 pass the right param to WinMain. This makes it work on ce! 2006-01-31 06:41:16 +00:00
ehouse
8fc0404158 use debhacks; add flags to compile for wince 2006-01-28 19:05:39 +00:00
ehouse
3f577181dd use debhacks 2006-01-28 19:03:10 +00:00
ehouse
2ea8c2e0cd use debhacks; ifdef out cmdbar stuff which debian tools don't support yet 2006-01-28 19:02:04 +00:00
ehouse
a3feee8027 first checked in. may have bugs 2006-01-28 18:58:04 +00:00
ehouse
b03db750b5 merge transparant large-icon from 411-branch 2006-01-22 17:50:47 +00:00
ehouse
301d854c25 don't show "loading ARM" except on debug versions. It's fast enough now. 2006-01-21 19:16:39 +00:00
ehouse
95eaac50dd tell folks where to get dictionaries. 2006-01-21 19:12:37 +00:00
ehouse
146a4f1d4d -Os instead of -O2 2006-01-16 06:08:16 +00:00
ehouse
834a5e0411 make default build arm_only, and don't require multilink to build the
68k stub.
2006-01-16 06:07:33 +00:00
ehouse
4e49a4c008 don't use arm-palmos* tools if arm-elf* tools available. Current
version on debian testing builds bad code.
2006-01-08 22:19:24 +00:00
ehouse
8edc3e987d catch up with api changes so builds again -- WTF :-) 2006-01-08 03:26:08 +00:00
ehouse
92485783af update email address in header comments: no code change 2006-01-08 01:25:02 +00:00
ehouse
b852eb5ca5 add random seed in win32 case 2005-11-27 23:11:05 +00:00
ehouse
3676a8b55f need to set flag before making calls that will result in a stream of
messages.
2005-11-27 22:24:25 +00:00
ehouse
cab0622c9d Increase size of tray and fonts for win32; turn on windoze-style
menus.
2005-11-27 22:06:04 +00:00
ehouse
a79052513e Turn off STUBBED_DICT -- can now load and execute from an .xwd file
running on WINE.
2005-11-27 21:39:06 +00:00
ehouse
870af10a63 first checked in. Builds for Win32, but crashes on XP after drawing
its board.
2005-11-27 20:27:46 +00:00
ehouse
24cf6bda2f hide new obj dirs 2005-11-27 20:17:39 +00:00
ehouse
33779bf1b3 changes for gcc compilation: conditionally define out stuff that
doesn't work on win32 (e.g. CommandBar).
2005-11-27 20:17:09 +00:00
ehouse
92948425b9 changes for gcc compilation: fix syntax errors and API usage,
conditionally define out stuff that doesn't work on win32
(e.g. CommandBar).
2005-11-27 20:16:43 +00:00
ehouse
66fffb7fe9 fix for STUBBED_DICT case 2005-11-27 20:13:42 +00:00
ehouse
aba81b8627 OpenFileForMapping doesn't seem to exist in win32 -- or at least not
in MinGW's view.
2005-11-27 20:13:13 +00:00
ehouse
65611289fd for gcc: fix caps and remove commas after last item in array 2005-11-27 20:10:06 +00:00
ehouse
7c26e79dda fix caps; use rand() on win32 2005-11-27 20:09:15 +00:00
ehouse
b9de2acebf change how struct is defined for gcc 2005-11-27 20:06:36 +00:00
ehouse
b462252ebb fix syntax errors; other catch up with changes 2005-11-27 20:05:33 +00:00
ehouse
f228cc3b46 fix syntax error 2005-11-27 20:04:46 +00:00
ehouse
e8e408afd4 fix capitalization of header file -- which gcc cares about. 2005-11-27 20:04:06 +00:00
ehouse
5e6eca025a fix so hex dicts build again 2005-10-30 19:05:40 +00:00
ehouse
fb8d643ea2 replace sed with awk 2005-10-30 19:04:49 +00:00
ehouse
768cfd597a fix bug truncating tray display in history by adding size param to
formatTray()
2005-10-30 18:35:21 +00:00
ehouse
95005e45eb don't connect to relay unless have something to send 2005-10-30 16:28:52 +00:00
ehouse
cda5996195 fix unset var warning 2005-10-30 16:14:13 +00:00
ehouse
92981942b3 add _Shutdown(); override logf() to tag with cookieid; make logs less
verbose.
2005-10-30 05:20:31 +00:00
ehouse
b31cb6612b call shutdown on cref rather than deleting it; wrap mutex actions with
debugging logfs like those in mlock.h.
2005-10-30 05:16:35 +00:00
ehouse
42f3a4e7cf don't print log messages below a certain priority 2005-10-30 05:10:26 +00:00
ehouse
befc90648e add shutdown event and action 2005-10-30 05:07:58 +00:00
ehouse
d29937a734 add a const 2005-10-30 05:06:41 +00:00
ehouse
a422f21ad5 add error message; cast to avoid compile warnings 2005-10-30 05:06:23 +00:00
ehouse
880b626070 add a few consts 2005-10-30 05:05:45 +00:00
ehouse
6d88725e05 add missing header file 2005-10-28 09:20:51 +00:00
ehouse
d17165a678 add header needed on some installations 2005-10-23 21:35:19 +00:00
ehouse
b135f317b4 make location of file storing next ID configurable. 2005-10-23 21:06:07 +00:00
ehouse
deb0a2d265 shutdown in response to SIGINT 2005-10-23 15:49:48 +00:00
ehouse
e2e66f8057 Set a disconn timer when somebody leaves to make it parallel with case
where somebody never shows up; print more info about cref state to
ctrl port.
2005-10-19 03:44:55 +00:00
ehouse
80d0f3ce71 make now() relative to relay startup time. 2005-10-19 03:43:21 +00:00
ehouse
a64cbd472a don't track heartbeat independent of any timers set. This allows
infinite timeout when no devices present.
2005-10-19 03:42:17 +00:00
ehouse
d74de11771 add XWS_ANY 2005-10-19 03:40:40 +00:00
ehouse
e05777bdcf add XWS_ANY; add missing transitions to kill game on timer when device
disappears and doesn't return.
2005-10-19 03:40:26 +00:00
ehouse
4df7b3d75a add uptime 2005-10-19 03:39:18 +00:00
ehouse
5e693ee022 fix misspelling; tweak error messages 2005-10-19 03:21:19 +00:00
ehouse
74b6ccbd52 cleanup ctrl printing; repeat most recent command; cleanup internal names. 2005-10-16 01:19:25 +00:00
ehouse
ff12881ffd silence compiler warning 2005-10-16 01:15:49 +00:00
ehouse
deea73ad8b cancel all-connected timer when all are connected 2005-10-15 16:35:18 +00:00
ehouse
a8352fa745 fix leak; move heartbeat timer into crefmgr, and only run it when
there are active crefs.
2005-10-15 16:30:10 +00:00
ehouse
936e3bd110 clean up command help 2005-10-15 16:28:26 +00:00
ehouse
ecf5875d7e capitalize public methods on timermgr (no code change) 2005-10-15 15:49:22 +00:00
ehouse
eb8301ade7 return error to client when flags indicate old version; close sockets
when error occurs in processing message.
2005-10-14 08:29:58 +00:00
ehouse
6541e56c40 catch up with logf change 2005-10-14 08:27:16 +00:00
ehouse
b7e3479989 print prompt 2005-10-14 08:26:56 +00:00
ehouse
cb3e2910b9 add commented out debug flag 2005-10-14 08:26:19 +00:00
ehouse
8c8babc762 new error message 2005-10-14 08:25:51 +00:00
ehouse
e18f66f587 remove dead code 2005-10-06 02:54:05 +00:00
ehouse
07a1894c6e implement heartbeat timer required for relay 2005-10-06 02:49:50 +00:00
ehouse
be5078e8f8 removed unused states etc. 2005-10-06 02:36:45 +00:00
ehouse
0bf1dcdcf8 remove connect info button, instead bring it up every time role
changes to one that needs it.
2005-10-06 02:34:07 +00:00
ehouse
f7443c9f7f catch symbian up with api changes -- but still need to set timers
before it'll talk to relay.
2005-10-02 16:40:16 +00:00
ehouse
3bf3e2fda1 parse multiple config files in order with later ones overriding. 2005-10-02 16:23:49 +00:00
ehouse
4e5f69f4e8 rename states so can format to 80 cols; add log level param. No
change to functionality in this checkin.
2005-10-02 16:08:42 +00:00
ehouse
6835b6d1eb New scheme for accepting and limiting reconnections. Now device must
send player counts, local and expected.  Based on these the relay
accepts connections, declares the game full and ready for message
forwarding, and decides whether to accept a reconnect.
2005-10-02 15:39:38 +00:00
ehouse
77319b570d make transmitted vars smaller where possible; new relay identifying
scheme where cookie is used only to connect, and is replaced for
reconnects by a relay-generated name that's supposed to be unique
across all games on all relays and includes a hostname read in from
config file; relay assign non-servers' hostIDs.
2005-10-01 16:33:45 +00:00
ehouse
0c2365e3ea parse new SERVERNAME config variable 2005-10-01 16:09:57 +00:00
ehouse
c5add889cb make transmitted vars smaller where possible; new relay identifying
scheme where cookie is used only to connect, and is replaced for
reconnects by a relay-generated name that's supposed to be unique
across all games on all relays; let relay assign non-servers' hostIDs
rather than doing 'em randomly; use hostIDs for comms-level protocol's
channelNo where possible to avoid tripping over duplicate messages
2005-10-01 16:01:39 +00:00
ehouse
50df4d7cf4 catch up with API change 2005-10-01 15:53:56 +00:00
ehouse
3db9c4e7e9 new constant 2005-10-01 15:52:16 +00:00
ehouse
b6933b5b9b stream version change 2005-10-01 15:51:54 +00:00
ehouse
c71b442229 comment on shuffling 2005-10-01 15:51:35 +00:00
ehouse
20c87b4c19 fix streaming so four devices can be in game. 2005-10-01 15:51:14 +00:00
ehouse
255656f009 works, but not yet used. And wants relay host identifier added in. 2005-09-19 04:34:51 +00:00
ehouse
57ccb08528 fix for when BEYOND_IR not defined 2005-09-17 19:49:53 +00:00
ehouse
7d9a78f996 comment out internal mutexes: shouldn't be needed now that only one
thread at a time is given access to a cref instance.
2005-09-14 05:15:27 +00:00
ehouse
f944b154fc fix print_cookies to use iterator 2005-09-14 05:14:41 +00:00
ehouse
c4d212f78c shorten names so table easier to fit in 80 cols 2005-09-14 05:14:04 +00:00
ehouse
ca755490c5 allow to run multiple games at once 2005-09-14 05:12:07 +00:00
ehouse
237deee542 just log some messages so user interaction not required. 2005-09-14 05:11:29 +00:00
ehouse
87d1c8f593 event name change 2005-09-09 03:15:06 +00:00
ehouse
5dace1cc7a add enough timer support for heartbeat; fix redraw bug 2005-09-09 03:14:11 +00:00
ehouse
18fc5e2c14 add linuxFireTimer 2005-09-09 03:12:58 +00:00
ehouse
264f34d97d move fireTimer to linux-common code 2005-09-09 03:12:24 +00:00
ehouse
368d2b82d6 add an extra slot as on other platforms 2005-09-09 03:06:27 +00:00
ehouse
763cd70632 add missing header. (Did gtk change?) 2005-09-09 02:57:14 +00:00
ehouse
23c436a75c make network play on by default 2005-09-07 12:32:29 +00:00
ehouse
77a8df77ac add strings for relay errors 2005-09-07 12:31:32 +00:00
ehouse
cf5906eacf Add and handle disconnect message so a device can reuse its socket for
a new game.
2005-09-05 15:50:49 +00:00
ehouse
05878f11a4 Do nothing rather than assert when socket no longer found for write.
Not sure if this is a preventable error.
2005-09-05 15:50:28 +00:00
ehouse
235556240f Don't close the underlying socket. Not sure yet when I should close a
socket that hasn't returned an error.  Maybe that's the client's job.
2005-09-05 15:45:22 +00:00
ehouse
5c01044e8c send disconnect message to relay before starting a new game. 2005-09-05 15:33:51 +00:00
ehouse
466e21f608 formatting 2005-09-05 15:32:40 +00:00
ehouse
5e4fd3368e add role to newgame dialog 2005-09-05 05:31:11 +00:00
ehouse
47030320f4 move typedef 2005-09-04 20:55:07 +00:00
ehouse
8a2eae0887 log ip address of incoming connection in dotted-quad notation. 2005-09-04 20:54:09 +00:00
ehouse
89f1eca340 log tweak 2005-09-04 20:44:46 +00:00
ehouse
55988dcdd7 cut down on logging a bit 2005-09-04 20:43:53 +00:00
ehouse
6995d37ead don't assert when unexpected event arrives; just log and drop 2005-09-04 20:43:23 +00:00
ehouse
aa1323a5a3 shorten log messages; make easier to process from perl 2005-09-04 20:38:23 +00:00
ehouse
ebcc30dd5f send notice when a socket closes. This seems to be resulting in dups. 2005-09-04 20:37:42 +00:00
ehouse
0134c96962 fix deadlock by collecting crefs into local storage before starting to
act on them.
2005-09-04 20:36:53 +00:00
ehouse
7803fead80 use comms_setAddr rather than modifying const to set resolved address. 2005-09-04 20:34:52 +00:00
ehouse
75b8f5342a add error messages 2005-09-04 20:34:16 +00:00
ehouse
6d0b23a8e8 TALL_FONTS (support for Danish tall letters) now on by default 2005-09-04 20:32:16 +00:00
ehouse
aa0a9ec158 add error message; don't assert (crash) when socket closes. 2005-09-04 20:31:34 +00:00
ehouse
6f8b33a05b reset cookieID for a new game 2005-09-04 20:30:47 +00:00
ehouse
1f43831219 new error code 2005-09-04 14:35:13 +00:00
ehouse
1aed9882ef new (commented-out) info message 2005-09-03 18:36:08 +00:00
ehouse
4882c92a07 generate XWRELAY_OTHERCONNECT message 2005-09-03 18:35:34 +00:00
ehouse
8072bc687c add XWRELAY_OTHERCONNECT message 2005-09-03 18:32:12 +00:00
ehouse
59edec4955 handle OTHER_CONNECT message by resending any unACKed messages. 2005-09-03 18:31:32 +00:00
ehouse
e6e9646253 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
4479933657 add missing state transition 2005-09-03 15:41:59 +00:00
ehouse
a4033a44c3 when one device is disconnected for heartbeat, tell others it's going
away.
2005-09-03 15:41:17 +00:00
ehouse
ca8877a5de for testing, add -H option to prevent client from sending heartbeat
messages to relay.
2005-09-03 15:39:15 +00:00
ehouse
abbd1a072f handle other-disconnected error message 2005-09-03 15:37:49 +00:00
ehouse
9a2567252b cleanup: get rid of unused states/actions and code to handle them. 2005-09-03 07:15:05 +00:00
ehouse
1114784217 Add strings for error codes for relay disconnect events. 2005-09-03 06:58:05 +00:00
ehouse
ab0e833a9b Receive disconnect events and display message for error codes. 2005-09-03 06:57:01 +00:00
ehouse
6a0abc16e8 Add range for relay errors. 2005-09-03 06:56:33 +00:00
ehouse
c82fd2e4f2 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
b0cc6f458b add disconnect event and error codes 2005-09-03 06:46:03 +00:00
ehouse
2ba0f451a7 fix failure to record bytes forwarded 2005-09-02 07:18:39 +00:00
ehouse
8f32f4f99a 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
5d22be174a initial version 2005-09-02 06:40:34 +00:00
ehouse
9ac04243b5 first checked in. works. 2005-09-02 06:35:25 +00:00
ehouse
39fa5728ef send XWRELAY_RECONNECT 2005-09-02 06:26:33 +00:00
ehouse
e3cadfbf79 catch up with API changes 2005-09-02 06:24:47 +00:00
ehouse
6ebce9ff5e protect logging with mutex since happens from multiple threads now. 2005-08-21 14:54:49 +00:00
ehouse
a227dfd605 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
bef309be3f add stream_setOnCloseProc 2005-08-21 14:33:38 +00:00
ehouse
c0bdfb54c9 constant name changed 2005-08-21 14:18:56 +00:00
ehouse
a236d6a972 tweak how timers stored 2005-08-21 14:07:29 +00:00
ehouse
13d9e7e8c8 timeout isn't an assertion failure 2005-08-21 14:07:12 +00:00
ehouse
f77a4854b6 use renamed constant 2005-08-21 14:05:29 +00:00
ehouse
e8a94b670a rename constant 2005-08-21 14:04:32 +00:00
ehouse
abde767154 tweaks to logging and adding some message enums 2005-08-08 23:33:51 +00:00
ehouse
23739eee9b reduce interrupt-time logging 2005-08-03 01:17:49 +00:00
ehouse
ae91d38e45 Clean up and fix timer code. 2005-08-03 01:14:49 +00:00
ehouse
91abdb3bcc 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
170ad8f419 make overly verbose logging conditional 2005-08-02 04:56:08 +00:00
ehouse
1b40b1956e add const to match new signature 2005-07-30 02:44:42 +00:00
ehouse
dcb5783924 add vc60.pdb 2005-07-30 02:07:20 +00:00
ehouse
f6649e17f6 make some conn-related IDs conditional 2005-07-30 02:05:59 +00:00
ehouse
7d4700622e add cesockwr.o 2005-07-30 02:04:29 +00:00
ehouse
294ce5f513 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
aa27360761 tweak conn dialog 2005-07-30 01:51:24 +00:00
ehouse
9abf6f8970 add a const 2005-07-30 01:48:17 +00:00
ehouse
3ecc871515 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
24fb48008f cleanup for wince compile 2005-07-23 15:28:15 +00:00
ehouse
77d7bc9fa7 add const 2005-07-23 15:21:23 +00:00
ehouse
d6fac2014e add assertion on null string 2005-07-23 15:16:26 +00:00
ehouse
bc3515272c Get rid of unused param 2005-07-14 02:54:47 +00:00
ehouse
84ec7e38f2 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
fc4fd3ea93 fix compile error 2005-07-13 12:35:38 +00:00
ehouse
3b12c4df87 syntax error 2005-07-09 15:36:39 +00:00
ehouse
8acfb31153 protect TIMER_HEARTBEAT for standalone platforms 2005-07-09 15:27:06 +00:00
ehouse
bf2e208d6f catch up with API changes 2005-07-09 15:26:12 +00:00
ehouse
9f694f74d1 wrap line 2005-07-09 15:25:51 +00:00
ehouse
e1d3eeaf2a don't use %c on ARM. Crashes due to my bad StrPrintF implementation. 2005-07-08 08:30:42 +00:00
ehouse
e537e29e87 new functions for measuring glyphs 2005-07-08 08:29:37 +00:00
ehouse
a16505727a Moving glyph-measuring code to drawing; fix for highres case. 2005-07-08 03:14:43 +00:00
ehouse
d3249d93ae Moving glyph-measuring code to drawing 2005-07-08 03:10:21 +00:00
ehouse
58728ae00d remove glyph-measuring API just added (since it belongs in drawing,
not dict)
2005-07-08 03:08:16 +00:00
ehouse
f082c6ad2e dict_tilesToString sig change; remove glyph-measuring API just added
(since it belongs in drawing, not dict)
2005-07-08 03:06:08 +00:00
ehouse
dc84bd22df dict_tilesToString sig change 2005-07-08 03:02:31 +00:00
ehouse
9e76871306 (conditionally) modify dicts to support getting height of platform
glyphs, pass into drawing code so can be fetched and cached, and
implement for Palm.  This is to allow drawing glyphs (like Danish's
A-with-circle) that are taller than normal without the visual padding
the rest can have.  So far works for 68K/non-highres.  Will not
compile for ARM yet.
2005-07-07 03:46:07 +00:00
ehouse
3b53363e16 Pass protocol version code with connect request, and return error if
it isn't what relay can handle.  Report error to user.
2005-07-06 01:36:52 +00:00
ehouse
77374484f8 ditch words without vowels 2005-07-06 00:58:44 +00:00
ehouse
5b3e5fbf18 name change 2005-07-06 00:58:20 +00:00
ehouse
d639e9ca45 Honor cookieID passed in connect message, falling back to cookie only
when the ID isn't set, and using it rather than assigning a new one
even if the game can't be found.
2005-07-06 00:54:38 +00:00
ehouse
f062a1f8f6 cleanup 2005-07-06 00:53:19 +00:00
ehouse
1ae6c010c9 Make cookieID a 32-bit value instead of 16-bit 2005-07-05 23:02:15 +00:00
ehouse
db6f6c258d move to using a formal table-driven state machine for each game (cref
object).  While it makes things more complex at this point, it should
make it easier in the long run to add error handling, timeouts, etc.
2005-07-05 22:05:37 +00:00
ehouse
d5858f7a21 add include file 2005-07-05 21:57:00 +00:00
ehouse
370c2f82f2 fix leak 2005-07-05 21:52:24 +00:00
ehouse
c3f5fb4639 cancel old timer before setting a new one 2005-07-05 20:59:42 +00:00
ehouse
327fb7b001 eliminate unnecessary setHeartbeatTimer call 2005-07-05 20:57:37 +00:00
ehouse
7d388c3a2a fix compile error! 2005-06-30 01:51:40 +00:00
ehouse
4f57cadd75 Refactor ce_dictionary_make so that it returns NULL rather than an
broken dict when the file's missing or corrupt.  Casts to stop
warnings.
2005-06-30 01:48:07 +00:00
ehouse
39669d9680 change dialog title when it's called from new game menuitem 2005-06-30 01:44:56 +00:00
ehouse
8fb0b4685a Refactor ce_dictionary_make so that it returns NULL rather than an
broken dict when the file's missing or corrupt.
2005-06-30 01:36:51 +00:00
ehouse
acd3bdf24b copy null byte along with rest of string 2005-06-28 04:42:08 +00:00
ehouse
4701ee8c34 update copyright year in about box 2005-06-27 06:05:14 +00:00
ehouse
978d840df7 put back functions that never should have been removed. 2005-06-27 05:45:28 +00:00
ehouse
78aefbefea fix description at user's suggestion 2005-06-27 05:23:14 +00:00
ehouse
c2fe26ec77 up version to b4 to match next tag 2005-06-27 04:01:51 +00:00
ehouse
6728862399 cast to stop warning on wince 2005-06-27 03:56:09 +00:00
ehouse
2871778cb7 remove logging 2005-06-25 05:44:30 +00:00
ehouse
e92234b324 cleanup: make module-local functions static 2005-06-25 05:43:56 +00:00
ehouse
8faf6a670c add default compile command 2005-06-25 05:43:04 +00:00
ehouse
f6a6827c59 fix compile warnings 2005-06-23 14:12:09 +00:00
ehouse
2fbfeee378 util_setTimer changes 2005-06-23 14:09:20 +00:00
ehouse
3054637842 heartbeats: send to clients in connection response; note when
heartbeat and other messages arrive; and periodically reap sockets
that haven't been active in long enough.
2005-06-23 04:26:44 +00:00
ehouse
e6b5d2d0e4 version to 4.2x 2005-06-23 04:23:06 +00:00
ehouse
fa945f74aa handle heartbeat timer and change to util_setTimer 2005-06-23 04:22:46 +00:00
ehouse
684697216d fix timer not getting drawn on highres screens; handle heartbeat timer
and change to util_setTimer
2005-06-23 04:22:27 +00:00
ehouse
3ab25c843b fix timer not getting drawn on highres screens 2005-06-23 04:21:35 +00:00
ehouse
5385c9f7dc BEYOND_IR now the default 2005-06-23 04:20:46 +00:00
ehouse
767de5a284 implement new util_setTimer, and handle heartbeat timer 2005-06-23 04:20:00 +00:00
ehouse
dfccb19667 convert util_setTimer to take procptr; remove timer call on board; add
heartbeat to comms that uses util_setTimer with new timer type.
2005-06-23 04:16:53 +00:00
ehouse
5e02ca1c86 first checked in. Seems to work. 2005-06-22 06:40:53 +00:00
ehouse
e2cbee1210 path to local copy of wordlist 2005-06-16 05:12:49 +00:00
ehouse
c57206f483 catch franklin up with recent API changes 2005-06-16 05:12:28 +00:00
ehouse
9d5ea796f3 don't draw board before it's set up 2005-06-13 14:51:21 +00:00
ehouse
001058da03 add a couple of consts to fix warnings 2005-06-13 14:34:01 +00:00
ehouse
9a09a24aab fix DEBUG compile error 2005-06-13 14:33:05 +00:00
ehouse
8eb0b50cec fix scrolling; resize board, enabling scrolling, when SIP is revealed.
And make it possible for user to reveal it.
2005-06-13 14:29:49 +00:00
ehouse
7c906a70ba add debug-version logging to catch dictionary corruption 2005-06-13 13:36:26 +00:00
ehouse
6c9caadd43 use clipping when drawing bitmaps, can center 'em. This fixes
overwriting borders when cells shrink when SIP is visible.
2005-06-13 13:32:06 +00:00
ehouse
5803496007 turn on scrolling by default 2005-06-13 13:24:15 +00:00
ehouse
b0e6ac2b7c add relay dir to -I list 2005-06-13 13:23:33 +00:00
ehouse
835f81582d fix typos 2005-06-11 15:32:34 +00:00
ehouse
69277eee0b first checkin for Danish 2005-06-11 15:32:09 +00:00
ehouse
c2297590eb fix incorrect signature that was causing all scores to be drawn as 0. 2005-06-09 14:18:55 +00:00
ehouse
cfa1a42fcd fix formatting; make board wide enough for timer. 2005-05-30 00:20:42 +00:00
ehouse
40634e33c6 add justification to draw_string_at to better position using pango. 2005-05-30 00:03:58 +00:00
ehouse
8c201ff01b give tiles a background color 2005-05-29 21:17:23 +00:00
ehouse
a83f1b46b6 Switch to GTK 2.n. 2005-05-29 20:40:38 +00:00
ehouse
3c23117a2a New fields in drawCtxt for pango-based text layout; other tweaks for
switch to GTK 2.n.
2005-05-29 20:39:01 +00:00
ehouse
7986e14d08 huge set of changes to get working with GTK 2.n. Type changes and
casts, rewrite of img-button creation, tweaks in startup ordering that
may not have been necessary.
2005-05-29 20:37:35 +00:00
ehouse
521de82234 huge set of changes to get working with GTK 2.n. Use pango for text
drawing, getting rid of all GdkFonts; get rid of clipping until I
understand why it was prevent all drawing.  Etc.
2005-05-29 20:32:48 +00:00
ehouse
2a39b6950f switch to g_signal_connect 2005-05-29 20:17:09 +00:00
ehouse
ae8a861098 formatting fixes; casts for GTK 2005-05-29 19:37:42 +00:00
ehouse
06e28770d1 make one formal param const 2005-05-29 19:31:09 +00:00
ehouse
4095acc327 casts to stop compiler warnings 2005-05-29 19:29:33 +00:00
ehouse
37dd97edf6 add NetLibGetHostByName 2005-05-01 18:23:28 +00:00
ehouse
af10fa0425 modify TARGET .prc name based on ARCH 2005-05-01 17:39:09 +00:00
ehouse
9c5971d36c implement usage() 2005-05-01 17:38:31 +00:00
ehouse
f702a75188 log incoming ip addr 2005-05-01 17:38:11 +00:00
ehouse
aef5cc3fc9 NetLibGetHostByName 2005-05-01 17:36:33 +00:00
ehouse
c56d76d743 add types for netlib funcs 2005-05-01 17:34:39 +00:00
ehouse
b1b9e96142 enable network-aware PNO build 2005-05-01 17:19:50 +00:00
ehouse
3d0530d30d fix crash by initing in right place. (modified and checked in from 9300) 2005-04-22 13:49:33 +00:00
ehouse
343e97a9ea catch up with interface change 2005-04-21 03:43:03 +00:00
ehouse
576e2ec447 finally check in bitmap drawing; tweak font selection to look better
on device.
2005-04-21 01:09:46 +00:00
ehouse
9fa68e4936 lots of little changes; cleanup and support ctrl functions 2005-04-20 12:13:20 +00:00
ehouse
df17fe4f1e reorganize; support ctrl functions 2005-04-20 12:10:05 +00:00
ehouse
d885af5386 count bytes sent 2005-04-20 12:08:33 +00:00
ehouse
92c2017cae use rwlock instead of mutex 2005-04-20 12:06:25 +00:00
ehouse
7036e53229 move to using rwlock 2005-04-20 12:03:58 +00:00
ehouse
12fc28315c more debug info 2005-04-20 11:59:08 +00:00
ehouse
40351e187b add several new commands 2005-04-20 11:57:26 +00:00
ehouse
54843e68bf fix warnings 2005-04-08 14:28:04 +00:00
ehouse
fdca4b0a88 add rwlock helper classes 2005-04-08 14:18:14 +00:00
ehouse
a809a057e4 mutex replaced by rwlock 2005-04-08 14:17:28 +00:00
ehouse
a50fe1d1be replace mutex with rwlock; move creation inside class so can be
controlled by same rwlock.
2005-04-08 14:15:23 +00:00
ehouse
7a15f44c12 move creation inside class so can be controlled by same rwlock 2005-04-08 14:13:25 +00:00
ehouse
423ff190ea turn on warnings 2005-04-08 14:11:00 +00:00
ehouse
9ee54bf8a3 don't assert after poll returns! Instead close socket on hangup. 2005-04-03 17:02:09 +00:00
ehouse
31e1a46087 separate internalization of comms from call to connect to relay since
the first must finish before the caller will have a valid reference to
comms.  call util_addrChange.
2005-04-03 17:00:59 +00:00
ehouse
0629dc5223 separate internalization of comms from call to connect to relay since
the first must finish before the caller will have a valid reference to
comms.
2005-04-03 16:58:36 +00:00
ehouse
de4af7c8ce add util_util_addrChange 2005-04-03 16:57:01 +00:00
ehouse
961ca6e256 add linux_util_addrChange (stubbed out) 2005-04-03 16:56:39 +00:00
ehouse
62b994e32e track whether running on POSE to work around NetLibSelect bug; track
whether addr needs re-resolving.
2005-04-03 16:55:38 +00:00
ehouse
b485deb357 add palm_util_addrChange; track whether running on POSE to work around
NetLibSelect bug.
2005-04-03 16:54:54 +00:00
ehouse
84cdcc8d30 remove unneeded param 2005-04-03 16:53:32 +00:00
ehouse
f5320a46bd deal with address change, esp of hostname, and separate name
resolution from socket opening.
2005-04-03 16:52:51 +00:00
ehouse
45621dffdb turn off linger on new sockets; use long enough timeout on name
resolution that can succeed on device.
2005-04-03 06:24:55 +00:00
ehouse
c5674701b9 catch up with api changes 2005-04-03 04:13:09 +00:00
ehouse
ad6de22306 add comms_getInitialAddr; protect against recursive sends 2005-04-03 02:49:04 +00:00
ehouse
3d27d0d882 add comms_getInitialAddr 2005-04-03 02:48:50 +00:00
ehouse
abc866af74 needn't open netlib from here! 2005-04-03 02:47:46 +00:00
ehouse
bf331a2805 fix for api change 2005-04-03 02:47:08 +00:00
ehouse
930b320011 first checked in. Works, but error recovery not done yet. 2005-04-03 02:46:31 +00:00
ehouse
3add8ccbf4 move generic send/receive stuff from palmir.c; tweak data structures
for relay scheme.
2005-04-03 02:00:44 +00:00
ehouse
8af072f8d9 move generic send/receive stuff from palmir.c. 2005-04-03 01:59:57 +00:00
ehouse
656bcac3aa modify ip-params dialog for new relay-based scheme, using new struct
fields and dialog objects.
2005-04-03 01:58:02 +00:00
ehouse
b6d3ad8a07 add XP_LD 2005-04-03 01:53:07 +00:00
ehouse
0839ce0337 remove ip-related stuff to new files 2005-04-03 01:47:34 +00:00
ehouse
b56b4f7b37 add palmip.c; change how upload works 2005-04-03 01:39:08 +00:00
ehouse
39185fef17 create new comms object if needed for non-first game 2005-04-03 01:36:59 +00:00
ehouse
e3151bdfe2 add command parsing and dispatch table 2005-03-31 02:20:50 +00:00
ehouse
a024c7ccd5 first checked in. works but not robust 2005-03-31 02:11:51 +00:00
ehouse
3f64d755b6 break up compile; new file 2005-03-30 02:00:15 +00:00
ehouse
db3ce42a4f this file owns thread creation now 2005-03-30 01:52:10 +00:00
ehouse
9dcec7d66c new include 2005-03-30 01:49:40 +00:00
ehouse
99d713bd8a first checked in 2005-03-30 01:47:55 +00:00
ehouse
855bc67b17 use new thread pool class 2005-03-30 01:42:28 +00:00
ehouse
64c7513867 cleanup 2005-03-30 01:32:02 +00:00
ehouse
3e476b3771 use system APIs to find stuff in app directory rather than hard coding
path.  Use system apis to find uniquie file names for games.
2005-03-26 03:25:44 +00:00
ehouse
663b3cc1a7 use c: drive, not z:, for uniformity with native version 2005-03-26 03:16:55 +00:00
ehouse
b64103ad7e don't use null comms 2005-03-25 13:41:18 +00:00
ehouse
3d40cc0e5c add cmd to lock/unlock main mutex 2005-03-25 03:24:00 +00:00
ehouse
97323636a9 use new stack-based lock 2005-03-25 03:21:16 +00:00
ehouse
a85716e8d5 first checked in. works 2005-03-25 03:19:03 +00:00
ehouse
b3432d4dfa check for null comms before using 2005-03-25 03:13:10 +00:00
ehouse
c9f60e758c don't instantiate comms unless it'll be used. Internally it has no
idea it's not supposed to connect to relay otherwise.
2005-03-25 03:11:54 +00:00
ehouse
3fd6998c2a add mutexes; general improvements 2005-03-25 02:59:44 +00:00
ehouse
120a3c1773 first checked in 2005-03-25 02:59:10 +00:00
ehouse
02c71850ee let socket server know how many connections to expect 2005-03-23 05:48:11 +00:00
ehouse
cf271c4411 fix shutdown panic by disposing fonts 2005-03-23 05:47:19 +00:00
ehouse
8b34f57bf9 don't kill socket when client connects before server 2005-03-21 05:30:55 +00:00
ehouse
dcebf5bc78 remove null-dereference when socket closed by two threads 2005-03-21 05:30:12 +00:00
ehouse
24690a2a10 too much logging 2005-03-21 05:29:37 +00:00
ehouse
f069c4c2dc "dead" is not a option for players 2005-03-21 05:29:08 +00:00
ehouse
d82f467479 load and save remote/local field 2005-03-21 05:28:27 +00:00
ehouse
f78ebee08b display remote players names in [] on scoreboard 2005-03-20 21:06:23 +00:00
ehouse
5eba6f5511 keep queue of incoming packets since new ones arrive before old can be
processed.  With this fix a complete robot-vs-robot game works between
9300 and gtk version over relay.
2005-03-20 21:05:41 +00:00
ehouse
1f3d94998f define XP_LD 2005-03-20 21:03:18 +00:00
ehouse
a02feee3b9 fix stream creation to include channelNo; correctly return success
from sym_send; fix to build in standalone case.
2005-03-20 19:55:49 +00:00
ehouse
d0441ee1e3 fix runl to reset after error so we'll try again, e.g. after first
using a hostname that doesn't resolve.
2005-03-20 19:52:21 +00:00