ehouse
da551e1177
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
6dc75914a6
turn stringFromStream into macro to aid logging for leak detection. Debug builds only effected.
2007-03-18 23:31:51 +00:00
ehouse
5f75dfe213
define XW_PSM in accord with palm guidelines. Doesn't seem to matter...
2007-03-17 15:33:16 +00:00
ehouse
21e5e3ad23
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
80efa73a50
Cleanup: compile warning and to make logging easier.
2007-02-08 15:17:23 +00:00
ehouse
51f726ddcf
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
a7313b1e30
Fix linked-list bug in removeFromQueue.
2007-02-07 11:58:01 +00:00
ehouse
a762f27846
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
e6315e118f
enable juggle button after role change
2007-02-06 05:47:20 +00:00
ehouse
6af89b4182
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
2fe75a19a2
add const to a bunch of char* decls in APIs and variables; no code change
2007-02-03 17:54:20 +00:00
ehouse
916ea4abc2
name change only: Connectedness becomes DeviceRole
2007-02-02 08:34:37 +00:00
ehouse
13429bccd7
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
24a885918d
cleanup: only one return per function.
2007-02-02 08:11:14 +00:00
ehouse
c045c6503a
cleanup. No change in generated code.
2007-01-27 15:07:02 +00:00
ehouse
61a3e7835f
use varargs for LOG_RETURNF macro
2007-01-27 15:04:57 +00:00
ehouse
5349598984
forward declaration stops compiler warning
2007-01-27 15:04:19 +00:00
ehouse
b9e31acf6e
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
17993fea06
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
73bc1925fd
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
3d318b679c
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
c5fe2a7589
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
40832e6ea5
reintroduce board_handleKey
2007-01-18 02:42:37 +00:00
ehouse
313dad4357
Set focusHasDived before invalidating so newly focussed object drawn correctly.
2007-01-16 02:42:58 +00:00
ehouse
c1affa34d1
Fix bugs in recent focus/key changes.
2007-01-12 03:37:30 +00:00
ehouse
6df629c445
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
924fa5c12b
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
e90db9776f
remove dead code.
2007-01-09 02:38:22 +00:00
ehouse
f3feef27f7
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
0a4f1d3f7b
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
4646ac5711
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
bce76a3d34
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
c645534b83
Fix so IR-only multi-device build works again.
2007-01-06 16:46:45 +00:00
ehouse
0da7234190
bug fix: clear focusHasDived on pen event along with other focus state
2006-12-20 04:11:17 +00:00
ehouse
0bf123115f
Unfocus any board object whenever pen touches board
2006-11-27 01:13:48 +00:00
ehouse
c754d73770
When alt key pressed cursor can move onto occupied squares it normally skips.
2006-11-22 13:49:14 +00:00
ehouse
e86d4764c4
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
74ccc0ed34
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
0d013a0599
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
9aa3759761
Debug-build macros to pass __LINE__ and __FILE__ for logging
2006-11-14 06:40:36 +00:00
ehouse
f1148754ba
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
fefa84abc1
bug: need to OR in inval value rather than replace.
2006-11-12 21:03:15 +00:00
ehouse
a84b519ab7
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
f7aefbe075
new UNUSED macro for keynav
2006-11-12 15:20:36 +00:00
ehouse
f9dcd1820a
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
bcac22bf9b
Refactor to not return from middle of function. No behavior change.
2006-11-11 22:38:20 +00:00
ehouse
7afafed41d
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
f335da4a9a
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
c91847f56f
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
80adc9fb6b
If no arrow visible, use cursor loc as destination when moving tile to tray.
2006-11-08 13:44:34 +00:00
ehouse
6c93fc0a0c
board doesn't handle focus-related keys unless it has the focus.
2006-11-08 05:04:44 +00:00
ehouse
46885ab05e
remove typo blocking compilation
2006-11-07 13:43:30 +00:00
ehouse
9a00908cdb
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
005fd92fd4
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
b0102f8baa
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
02b45a156c
debug functions to turn enums and defines into loggable strings
2006-11-03 06:19:27 +00:00
ehouse
6b1fc7e5e4
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
fb23dc11a7
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
5f6cab4c5f
add uninited state so can reload dialog with no assumptions about platform
...
widget state.
2006-10-23 13:56:43 +00:00
ehouse
ef7ad6f889
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
0c146fb800
add const to a few formal param declarations
2006-10-15 13:53:17 +00:00
ehouse
ffd8316280
Switch player count string for client in new game case.
2006-10-12 13:55:16 +00:00
ehouse
ba4f91d9e0
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
8c112261b0
Don't return from middle of function.
2006-10-07 03:37:40 +00:00
ehouse
a97631b7ca
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
bc80eae516
Put relay-only fields into a struct for easier identification. No code change.
2006-10-02 14:26:56 +00:00
ehouse
22ae4209ca
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
47565a3241
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
a7e58126ed
Add more consts.
2006-09-24 15:28:15 +00:00
ehouse
12fec52152
bug: even empty strings need to be terminated.
2006-09-23 16:05:41 +00:00
ehouse
402b6c1c6f
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
3af93c2d4d
What I meant to check in. F***ing emacs. :-)
2006-09-23 15:22:26 +00:00
ehouse
20b2eee560
cleanup and remove logging.
2006-09-23 15:18:44 +00:00
ehouse
f64e3d2d3d
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
f5f715136b
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
722f250c0f
set crosschecks inline
2006-09-23 15:12:10 +00:00
ehouse
f508fd853f
remove over-agressive attempt to detect out-of-order messages that was
...
breaking IR comms.
2006-09-17 05:06:46 +00:00
ehouse
a7d45aca6c
Prune excessive logging
2006-09-17 04:45:19 +00:00
ehouse
f1a00fa1b9
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
fab25fc820
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
e61414933f
do a better job of rejecting messages that have strayed in from a different game.
2006-09-15 07:33:59 +00:00
ehouse
5d64862ba6
new strutils macro syntax
2006-09-15 07:32:39 +00:00
ehouse
b5402eabc2
params become const
2006-09-15 07:32:04 +00:00
ehouse
9dd96a58d7
params become const; new macro syntax for strutils
2006-09-15 07:31:24 +00:00
ehouse
d382431922
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
35b3b7132a
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
5568d8fdca
Check state before accepting post-connection messages; and always set
...
state when completing connection process.
2006-09-10 18:58:10 +00:00
ehouse
10d6394641
use tmp buffer to avoid copying one byte at a time.
2006-09-10 18:53:03 +00:00
ehouse
975226cc4e
remove param from util_addrChange; add comms_getIsServer; save bt_addr
...
as part of comms.
2006-09-08 07:14:24 +00:00
ehouse
41a36b2352
make formal params const where possible
2006-09-02 05:30:51 +00:00
ehouse
4322fd2820
when logging state transitions, don't unless there's a change
2006-09-02 05:29:59 +00:00
ehouse
4cfe07923d
fix bug checking crosschecks with more than 32 tiles.
2006-09-02 05:29:13 +00:00
ehouse
9c06582029
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
af7767389c
use stream_getSize to detect corrupt (truncated) messages.
2006-08-29 13:18:12 +00:00
ehouse
9d541a7d91
make getSize return diff between what's been written and what's already
...
been read.
2006-08-29 13:13:43 +00:00
ehouse
7d48f2e430
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
9d8e5a4f3e
add LOG_HEX
2006-08-26 20:28:48 +00:00
ehouse
3c6405d0d1
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
b99f993760
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
f561989644
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
c298ecb1f1
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
cbddf0c194
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
e84cb5b8eb
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
7850b9e064
add another const
2006-08-09 04:52:43 +00:00
ehouse
897e50bf42
was being just a bit too cute
2006-08-09 04:49:17 +00:00
ehouse
7c61b21365
make some ptrs const
2006-08-09 04:48:34 +00:00
ehouse
49a709f3db
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
ef2101f4f8
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
4fd379d663
newg_juggle returns bool indicating whether anything changed
2006-06-29 03:38:25 +00:00
ehouse
c6598bef8a
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
99571a7580
remove unused parameter
2006-06-26 04:39:48 +00:00
ehouse
765638289b
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
1f81e62f12
add missing include file
2006-06-22 03:36:51 +00:00
ehouse
c4de8b5ba5
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
851946ffbc
add ifdef for compile with some optional condition
2006-06-16 01:46:47 +00:00
ehouse
9259d5e91d
move randIntArray to strutils, and use instead of similar code to juggle tiles in tray.
2006-06-16 01:19:11 +00:00
ehouse
cc4ebf2ad2
Fix juggle so it works for 3 players too.
2006-06-15 13:05:56 +00:00
ehouse
c956b0858a
cleanup; fix compile of non-debug win32 version
2006-06-11 20:12:20 +00:00
ehouse
c56b7d0b94
You can always change passwd for local player.
2006-06-10 16:10:33 +00:00
ehouse
3b82ae9c13
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
8c8313a2ca
Fix to compile in STANDALONE mode, e.g. for current PPC.
2006-06-08 01:51:34 +00:00
ehouse
cbe5ed2779
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
00291dc997
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
cd2d88fd5e
make a param const
2006-06-07 01:26:55 +00:00
ehouse
db53197bdd
add common/nwgamest.{c,h} to make new game dialog logic cross-platform
2006-06-07 01:26:04 +00:00
ehouse
995192ad56
trivial optimization: add 1 only once
2006-05-30 04:34:35 +00:00
ehouse
091dc33ae8
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
b6d30d9009
clear multiple tile selection when trade ends even if cancelled
2006-05-23 01:53:18 +00:00
ehouse
633d9eef55
Get rid of hard-coded tile number limit in server_formatRemainingTiles
2006-05-23 01:52:20 +00:00
ehouse
033a19e032
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
e8273bc9f0
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
2658da4563
Reset divider location on new game.
2006-05-19 13:31:18 +00:00
ehouse
cbd67a5e21
First attempt to set board bounds based on tray bottom if tray
...
overlaps board.
2006-05-17 06:12:40 +00:00
ehouse
e28e40a04c
for vertical scoreboards, force miniwindow to be entirely inside the board.
2006-05-14 15:27:29 +00:00
ehouse
11322f0e4d
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
a774a73778
tweak score layout, and remove a U8 that was overflowing on win32
2006-05-10 13:42:44 +00:00
ehouse
14c973354b
API change: board is responsible for figuring tile size and giving
...
extra pixels to divider.
2006-05-06 14:42:38 +00:00
ehouse
b0c4e9e91e
Include name of dict so it can get printed.
2006-04-30 13:58:24 +00:00
ehouse
4e2b080be5
Add, and use, stream_putString. Saves 500 bytes on win32.
2006-04-25 13:31:15 +00:00
ehouse
0dbc2e6557
don't exclude BEYOND_IR-only fields
2006-04-07 03:08:23 +00:00
ehouse
13b7fa62aa
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
6866e09003
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
942979ddd0
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
8f72bf6b56
new directories to ignore
2006-02-18 14:08:04 +00:00
ehouse
9ff5259d4e
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
3f0353c681
makefile cleanup
2006-02-17 07:27:36 +00:00
ehouse
cf602d7905
make remDim 16-bit so doesn't overflow on large-screened devices
2006-02-14 04:53:45 +00:00
ehouse
44b8126f65
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
dcd31cd092
update email address in header comments: no code change
2006-01-08 01:25:02 +00:00
ehouse
7c6babc53f
fix bug truncating tray display in history by adding size param to
...
formatTray()
2005-10-30 18:35:21 +00:00
ehouse
cb4672b8b9
fix unset var warning
2005-10-30 16:14:13 +00:00
ehouse
2b58da4cdf
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
93534b268a
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
dba2a915ad
new constant
2005-10-01 15:52:16 +00:00
ehouse
ef58bf8faf
stream version change
2005-10-01 15:51:54 +00:00
ehouse
fae618b082
comment on shuffling
2005-10-01 15:51:35 +00:00
ehouse
73170b1254
fix streaming so four devices can be in game.
2005-10-01 15:51:14 +00:00
ehouse
15bd397f96
send disconnect message to relay before starting a new game.
2005-09-05 15:33:51 +00:00
ehouse
50a55d1335
formatting
2005-09-05 15:32:40 +00:00
ehouse
b99675640a
reset cookieID for a new game
2005-09-04 20:30:47 +00:00
ehouse
48495df7e5
handle OTHER_CONNECT message by resending any unACKed messages.
2005-09-03 18:31:32 +00:00
ehouse
49676995e7
handle other-disconnected error message
2005-09-03 15:37:49 +00:00
ehouse
460cda0390
Receive disconnect events and display message for error codes.
2005-09-03 06:57:01 +00:00
ehouse
b1ab4d8e27
Add range for relay errors.
2005-09-03 06:56:33 +00:00
ehouse
44996f14a7
send XWRELAY_RECONNECT
2005-09-02 06:26:33 +00:00
ehouse
eb0e79041e
add stream_setOnCloseProc
2005-08-21 14:33:38 +00:00
ehouse
af6f1406d5
rename constant
2005-08-21 14:04:32 +00:00
ehouse
cd8d18bd76
add a const
2005-07-30 01:48:17 +00:00
ehouse
711e0cdc36
cleanup for wince compile
2005-07-23 15:28:15 +00:00
ehouse
30f1e9b6db
add const
2005-07-23 15:21:23 +00:00
ehouse
0a8b5bb563
Get rid of unused param
2005-07-14 02:54:47 +00:00
ehouse
1bc8a981b3
protect TIMER_HEARTBEAT for standalone platforms
2005-07-09 15:27:06 +00:00
ehouse
bb974c39b1
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
56accaaad5
dict_tilesToString sig change
2005-07-08 03:02:31 +00:00
ehouse
3d067ccbbc
(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
a26549afa9
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
9d4bc009c0
name change
2005-07-06 00:58:20 +00:00
ehouse
93b78bc3f6
Make cookieID a 32-bit value instead of 16-bit
2005-07-05 23:02:15 +00:00
ehouse
2d23ffddd3
eliminate unnecessary setHeartbeatTimer call
2005-07-05 20:57:37 +00:00
ehouse
d29698c1b0
put back functions that never should have been removed.
2005-06-27 05:45:28 +00:00
ehouse
74087bd5b7
cast to stop warning on wince
2005-06-27 03:56:09 +00:00
ehouse
2abb6fe77f
cleanup: make module-local functions static
2005-06-25 05:43:56 +00:00
ehouse
82a0045cb3
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
657454aa6c
catch franklin up with recent API changes
2005-06-16 05:12:28 +00:00
ehouse
bda6841a8f
don't draw board before it's set up
2005-06-13 14:51:21 +00:00
ehouse
844cab6e5d
make one formal param const
2005-05-29 19:31:09 +00:00
ehouse
3296642486
casts to stop compiler warnings
2005-05-29 19:29:33 +00:00
ehouse
11c732ef7a
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
85dbf98aca
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
e6c3278f0f
add util_util_addrChange
2005-04-03 16:57:01 +00:00
ehouse
85f10cd2e7
add comms_getInitialAddr; protect against recursive sends
2005-04-03 02:49:04 +00:00
ehouse
1241c0fdfe
add comms_getInitialAddr
2005-04-03 02:48:50 +00:00
ehouse
712ec202d2
create new comms object if needed for non-first game
2005-04-03 01:36:59 +00:00
ehouse
99f2804141
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
94df6e022c
too much logging
2005-03-21 05:29:37 +00:00
ehouse
3ee16b6cd8
fix to build in standalone case
2005-03-20 19:43:00 +00:00
ehouse
356ede1a73
add XP_LD so symbian can long 32-bit vals
2005-03-20 19:41:30 +00:00
ehouse
d7e834f87e
fix bad assert
2005-03-20 15:01:59 +00:00
ehouse
90fe785790
Wrapping protocol around standard comms stuff that talks to the relay.
...
Revert previous relay-related changes.
2005-03-19 22:01:38 +00:00
ehouse
4d454a8fff
remove gross connectRelay hack. There's now a wrapping protocol that
...
talks to the relay entirely inside comms.c.
2005-03-19 21:48:47 +00:00