]> git.pond.sub.org Git - empserver/log
empserver
16 years agoNew home for stuff specific to Windows: src/lib/w32/
Markus Armbruster [Sat, 4 Aug 2007 05:23:39 +0000 (05:23 +0000)]
New home for stuff specific to Windows: src/lib/w32/
Move getopt.c getopt.h service.c from src/lib/gen/ there.
(lib/libw32.a): New.
(libs): Add it under Windows.

16 years ago(gamedir): Not all programs treat relative names the same. Document
Markus Armbruster [Fri, 3 Aug 2007 04:44:54 +0000 (04:44 +0000)]
(gamedir): Not all programs treat relative names the same.  Document
the lossage.

16 years agoDoc fix.
Markus Armbruster [Fri, 3 Aug 2007 04:06:18 +0000 (04:06 +0000)]
Doc fix.

16 years ago(bmaps_intersect): Simplify. No functional change.
Markus Armbruster [Fri, 3 Aug 2007 04:05:04 +0000 (04:05 +0000)]
(bmaps_intersect): Simplify.  No functional change.

16 years ago(fmttime2822) [_WIN32]: Replace localtime_s() with localtime().
Ron Koenderink [Fri, 3 Aug 2007 01:47:02 +0000 (01:47 +0000)]
(fmttime2822) [_WIN32]: Replace localtime_s() with localtime().
Replace _snprintf_s() with _snprintf().  These secure functions are
not supported by MinGW yet.

16 years ago(main): Use the same initial anchor as the server.
Markus Armbruster [Wed, 1 Aug 2007 18:23:51 +0000 (18:23 +0000)]
(main): Use the same initial anchor as the server.

(main): Exit unsuccessfully when read_schedule() fails.

16 years agoFix include missing since misc.h rev. 1.69.
Markus Armbruster [Wed, 1 Aug 2007 05:30:37 +0000 (05:30 +0000)]
Fix include missing since misc.h rev. 1.69.

16 years ago(ef_open): Leaked file descriptor when fcntl() failed.
Markus Armbruster [Tue, 31 Jul 2007 05:03:25 +0000 (05:03 +0000)]
(ef_open): Leaked file descriptor when fcntl() failed.

16 years ago(new): Simplify. No functional change.
Markus Armbruster [Tue, 31 Jul 2007 05:01:46 +0000 (05:01 +0000)]
(new): Simplify.  No functional change.

16 years agoDoc fix.
Markus Armbruster [Tue, 31 Jul 2007 04:57:07 +0000 (04:57 +0000)]
Doc fix.

16 years ago(upda): Remove unused local variable fp.
Ron Koenderink [Sun, 29 Jul 2007 16:57:36 +0000 (16:57 +0000)]
(upda): Remove unused local variable fp.

16 years ago(fl_sct_init, write_sects, file_sct_init, main): Do not initialize
Markus Armbruster [Sun, 29 Jul 2007 13:40:47 +0000 (13:40 +0000)]
(fl_sct_init, write_sects, file_sct_init, main): Do not initialize
sector and realm timestamps to current time.  It's not useful, and it
facilitates attacks against the PRNG.  This backs out fairland.c
rev. 1.27 and files.c rev. 1.31 and partly backs out files.c
rev. 1.38.

16 years ago(subst.in): Polish substitution of @configure_input@.
Markus Armbruster [Sat, 28 Jul 2007 19:33:35 +0000 (19:33 +0000)]
(subst.in): Polish substitution of @configure_input@.

16 years ago(disablefil): Remove, belatedly (unused since optlist.h rev. 1.46).
Markus Armbruster [Sat, 28 Jul 2007 19:31:30 +0000 (19:31 +0000)]
(disablefil): Remove, belatedly (unused since optlist.h rev. 1.46).

16 years ago(datarootdir): New; Autoconf 2.60 wants it.
Markus Armbruster [Sat, 28 Jul 2007 19:18:41 +0000 (19:18 +0000)]
(datarootdir): New; Autoconf 2.60 wants it.

16 years agoRemove the ancient, crufty non-UCONTEXT system-dependent LWP code.
Markus Armbruster [Sat, 28 Jul 2007 13:58:58 +0000 (13:58 +0000)]
Remove the ancient, crufty non-UCONTEXT system-dependent LWP code.
Using it required manual hackery since 4.3.0, and it hasn't been
missed.

16 years agoUpdate from http://autoconf-archive.cryp.to/
Markus Armbruster [Sat, 28 Jul 2007 13:09:00 +0000 (13:09 +0000)]
Update from http://autoconf-archive.cryp.to/

16 years ago(bp_ref): Use XYOFFSET(). Old code used only every other slot.
Markus Armbruster [Sat, 28 Jul 2007 12:16:50 +0000 (12:16 +0000)]
(bp_ref): Use XYOFFSET().  Old code used only every other slot.
(bp_alloc): Use WORLD_SZ().  Allocates only half as much.

16 years ago(WORLD_SZ): New.
Markus Armbruster [Sat, 28 Jul 2007 12:12:17 +0000 (12:12 +0000)]
(WORLD_SZ): New.
(isok, ef_init, bmaps_intersect, bp_init, player_accept)
(finish_sects, main): Use it.

(bp_neighbors, bp_lbcost, pathcost): Use XYOFFSET().  No
functional change.

16 years ago(nav_map): Remove unused bitmap and its initialization.
Markus Armbruster [Sat, 28 Jul 2007 07:23:59 +0000 (07:23 +0000)]
(nav_map): Remove unused bitmap and its initialization.

16 years ago(sctoff): Oops on bad arguments. Recovery by returning -1 seems
Markus Armbruster [Sat, 28 Jul 2007 07:08:45 +0000 (07:08 +0000)]
(sctoff): Oops on bad arguments.  Recovery by returning -1 seems
dangerous.  Not touching that now.

(sctoff): Use XYOFFSET().  No functional change.

16 years ago(XYOFFSET): Returned twice the value it should.
Markus Armbruster [Sat, 28 Jul 2007 07:06:55 +0000 (07:06 +0000)]
(XYOFFSET): Returned twice the value it should.
(finish_sects): Allocated twice as much space as needed, to make it
work with the broken XYOFFSET().

16 years ago(empth_wait_for_signal) [EMPTH_W32]: Fix to return SIGTERM.
Markus Armbruster [Fri, 27 Jul 2007 20:30:11 +0000 (20:30 +0000)]
(empth_wait_for_signal) [EMPTH_W32]: Fix to return SIGTERM.

16 years ago(add): Plug file descriptor leak.
Markus Armbruster [Fri, 27 Jul 2007 20:23:47 +0000 (20:23 +0000)]
(add): Plug file descriptor leak.

16 years agoUpdate known contributors comment.
Markus Armbruster [Fri, 27 Jul 2007 20:16:19 +0000 (20:16 +0000)]
Update known contributors comment.

16 years agoSpelling fix.
Markus Armbruster [Fri, 27 Jul 2007 19:13:13 +0000 (19:13 +0000)]
Spelling fix.

16 years agoUpdate AUTHORS.
Markus Armbruster [Fri, 27 Jul 2007 19:12:32 +0000 (19:12 +0000)]
Update AUTHORS.

16 years agoComment.
Markus Armbruster [Fri, 27 Jul 2007 19:10:39 +0000 (19:10 +0000)]
Comment.

16 years ago(main): Initialize game_turn to one instead of zero.
Markus Armbruster [Fri, 27 Jul 2007 18:23:03 +0000 (18:23 +0000)]
(main): Initialize game_turn to one instead of zero.

16 years ago(VIS, SANCT, NORM, GOD, CAP, MONEY): Move from nat.h to player.h.
Markus Armbruster [Fri, 27 Jul 2007 17:50:09 +0000 (17:50 +0000)]
(VIS, SANCT, NORM, GOD, CAP, MONEY): Move from nat.h to player.h.

(PS_LOGIN): Unused, remove.

16 years agoFix the previous revision.
Markus Armbruster [Fri, 27 Jul 2007 17:43:13 +0000 (17:43 +0000)]
Fix the previous revision.

16 years agoupdates_disabled() moved to game.h, include it.
Markus Armbruster [Fri, 27 Jul 2007 17:29:55 +0000 (17:29 +0000)]
updates_disabled() moved to game.h, include it.

16 years agoStore update disable flag in the game table to make it visible in
Markus Armbruster [Fri, 27 Jul 2007 05:58:40 +0000 (05:58 +0000)]
Store update disable flag in the game table to make it visible in
xdump:
(gamestr): New member game_upd_disable.
(game_ca): Update accordingly.
(game_ctrl_update): New.
(disa, enab): Use it.
(updates_disabled): Rewrite and move to game.c
(disablefil): Remove.

16 years ago(parse_time): Fix for arguments describing a time when DST is in
Markus Armbruster [Fri, 27 Jul 2007 04:26:20 +0000 (04:26 +0000)]
(parse_time): Fix for arguments describing a time when DST is in
effect.

16 years agoFix the previous revision.
Ron Koenderink [Thu, 26 Jul 2007 02:00:49 +0000 (02:00 +0000)]
Fix the previous revision.

16 years ago(fmttime2822): Changed return type for strftime() to size_t.
Ron Koenderink [Thu, 26 Jul 2007 01:59:32 +0000 (01:59 +0000)]
(fmttime2822): Changed return type for strftime() to size_t.

(fmttime2822) [_WIN32]: %T is not support option for strftime in WIN32
replaced with %H:%M:%S.  Replaced %z in with +/-???? format for WIN32
as the default for WIN32 is the text description for timezone.

16 years agoFix the previous revision.
Markus Armbruster [Wed, 25 Jul 2007 19:35:09 +0000 (19:35 +0000)]
Fix the previous revision.

16 years ago(player_kill_idle): Don't kill hung player threads. That code was
Markus Armbruster [Wed, 25 Jul 2007 06:10:10 +0000 (06:10 +0000)]
(player_kill_idle): Don't kill hung player threads.  That code was
flawed.  Firstly, when player_kill_idle() ran before the player thread
could react to being aborted by update or shutdown, player_kill_idle()
incorrectly diagnosed it as hung.  Secondly, terminating hung threads
leaks resources and can leave a stale play_lock behind.  It could
perhaps even corrupt game state.  It might salvage some scenarios, but
makes others worse.  Not worth it.

16 years agoRemove the concept of thread priorities from empthread.h. Only LWP
Markus Armbruster [Tue, 24 Jul 2007 05:13:31 +0000 (05:13 +0000)]
Remove the concept of thread priorities from empthread.h.  Only LWP
supports priorities.  Update synchronization used to rely on them,
which naturally worked only with LWP (#1504036).  With that fixed, no
uses of priorities remained, but a minor bug did: players could starve
out threads with priorities below PP_PLAYER, i.e. delete_lostitems()
and player_kill_idle().  Closes #1458175:
(empth_create): Remove parameter prio.  Callers changed.  Also gets
rid of misleading comments in pthread.c and ntthread.c.
(PP_MAIN, PP_UPDATE, PP_SHUTDOWN, PP_SCHED, PP_TIMESTAMP, PP_PLAYER)
(PP_ACCEPT, PP_KILLIDLE): Remove.
(empth_init, empth_create) [EMPTH_LWP]: Pass priority 1.

16 years agoComment.
Markus Armbruster [Tue, 24 Jul 2007 04:10:44 +0000 (04:10 +0000)]
Comment.

16 years ago(dispatch): Set player->command before acquiring play_lock, to make
Markus Armbruster [Sun, 22 Jul 2007 17:23:34 +0000 (17:23 +0000)]
(dispatch): Set player->command before acquiring play_lock, to make
sure the command is reliably aborted on update and shutdown.  Before,
redirection output could block while player->command was still null,
letting players delay the update or shutdown indefinitely.

16 years ago(dispatch): Rwlocks can hand out read locks while a write lock is
Markus Armbruster [Sun, 22 Jul 2007 17:06:00 +0000 (17:06 +0000)]
(dispatch): Rwlocks can hand out read locks while a write lock is
wanted.  Unfair to writers, but possible.  This lets commands run with
!player->aborted, which can then block on input and thus let players
delay the update or shutdown indefinitely.  Avoid by spinning until
the update is done.

16 years ago(set_paths) [_WIN32]: Add a comment to explain the use of _fullpath().
Ron Koenderink [Sat, 21 Jul 2007 00:50:32 +0000 (00:50 +0000)]
(set_paths) [_WIN32]: Add a comment to explain the use of _fullpath().

16 years ago(shutdwn): Failed to set play_wrlock_wanted. This let player threads
Markus Armbruster [Fri, 20 Jul 2007 19:49:42 +0000 (19:49 +0000)]
(shutdwn): Failed to set play_wrlock_wanted.  This let player threads
block on output, which could delay shutdown indefinitely.

16 years ago(update_lock, play_lock, update_pending, play_wrlock_wanted): Move to
Markus Armbruster [Fri, 20 Jul 2007 19:09:34 +0000 (19:09 +0000)]
(update_lock, play_lock, update_pending, play_wrlock_wanted): Move to
main.c and rename to better reflect their purpose.  Fix misleading
comments.

16 years agoLWP failed to wake up threads sleeping in empth_sleep() while other
Markus Armbruster [Fri, 20 Jul 2007 18:12:03 +0000 (18:12 +0000)]
LWP failed to wake up threads sleeping in empth_sleep() while other
threads were runnable.  This let players with a sufficiently fast
connection starve out system threads, including the update.  Fix:
[EMPTH_LWP] (lwpWakeupSleep): External linkage.
[EMPTH_LWP] (lwpReschedule): Call it.

16 years ago(UPDATE_TIME_LEN): New.
Ron Koenderink [Thu, 19 Jul 2007 21:58:05 +0000 (21:58 +0000)]
(UPDATE_TIME_LEN): New.
(update_time): Define with size to make MSVC happy.

16 years ago(main): Fix rev. 1.52.
Markus Armbruster [Thu, 19 Jul 2007 16:39:51 +0000 (16:39 +0000)]
(main): Fix rev. 1.52.

16 years ago(force): Remove unused local variable.
Ron Koenderink [Thu, 19 Jul 2007 01:15:15 +0000 (01:15 +0000)]
(force): Remove unused local variable.

16 years agoNew xdump updates:
Markus Armbruster [Wed, 18 Jul 2007 06:16:33 +0000 (06:16 +0000)]
New xdump updates:
(EF_UPDATES, update_ca): New.
(empfile): Add it.
(update_time): Move to src/lib/global/updtime.c.

16 years ago(update_running): New.
Markus Armbruster [Tue, 17 Jul 2007 06:13:14 +0000 (06:13 +0000)]
(update_running): New.
(update_run): Set it.

Replace incorrect uses of update_pending by update_running, fixing
buggy behavior while the update was trying to gain control:
(sct_do_upd_mob, shp_do_upd_mob, lnd_do_upd_mob, pln_do_upd_mob):
MOB_ACCESS mobility update was skipped.
(telegram_is_new): Fix recognition of new telegrams by timestamp.
(wu): Bulletins got misfiled as production reports.
(shp_nav): Sail path got ignored.
(setrel): Declaration of war failed silently with SLOW_WAR enabled.
Messages got suppressed.
(PR, mpr): Messages got misdirected to bulletins.

16 years ago(util): Add empsched, belatedly.
Markus Armbruster [Mon, 16 Jul 2007 19:39:23 +0000 (19:39 +0000)]
(util): Add empsched, belatedly.

16 years agoFix fallout from misc.h rev. 1.69.
Markus Armbruster [Mon, 16 Jul 2007 19:38:04 +0000 (19:38 +0000)]
Fix fallout from misc.h rev. 1.69.

16 years ago(status): Simplify conditional for the "lost your capital" message.
Markus Armbruster [Sun, 15 Jul 2007 16:15:03 +0000 (16:15 +0000)]
(status): Simplify conditional for the "lost your capital" message.

(player): No uses of member visitor left, remove.

16 years agoNew command show updates:
Markus Armbruster [Sun, 15 Jul 2007 13:34:22 +0000 (13:34 +0000)]
New command show updates:
(show): New sub-command.
(player_coms): Update its c_form.
(show_updates, fmttime2822): New.

(vers): Show game_days and game_hours.

(upda): Mark obsolete and point to show updates.
(vers): Point to show rather than update.

Rewrite much of info zdone.

16 years ago(show): Print tech level later, when we're done prompting for
Markus Armbruster [Sun, 15 Jul 2007 13:22:37 +0000 (13:22 +0000)]
(show): Print tech level later, when we're done prompting for
arguments.  This also prints it only for units, when it's relevant.

16 years agoFix .SA.
Markus Armbruster [Sun, 15 Jul 2007 12:36:35 +0000 (12:36 +0000)]
Fix .SA.

16 years agoUpdate example to current output.
Markus Armbruster [Sun, 15 Jul 2007 12:32:48 +0000 (12:32 +0000)]
Update example to current output.

16 years agoDescribe the effect on the Empire clock.
Markus Armbruster [Sun, 15 Jul 2007 12:05:43 +0000 (12:05 +0000)]
Describe the effect on the Empire clock.

Warn against manual disable/enable and point to the schedule file.

16 years agoDescribe the Empire clock.
Markus Armbruster [Sun, 15 Jul 2007 11:53:32 +0000 (11:53 +0000)]
Describe the Empire clock.

16 years agoUpdate for the new Empire clock, i.e. don't refer to s_p_etu, which no
Markus Armbruster [Sun, 15 Jul 2007 11:38:41 +0000 (11:38 +0000)]
Update for the new Empire clock, i.e. don't refer to s_p_etu, which no
longer exists.

Abbreviate time unit as ETU rather than TU.

max_btus is 640, not 512.

16 years agoRemove references to s_p_etu.
Markus Armbruster [Sun, 15 Jul 2007 11:02:17 +0000 (11:02 +0000)]
Remove references to s_p_etu.

16 years agoInclude reshuffle.
Markus Armbruster [Sun, 15 Jul 2007 10:07:48 +0000 (10:07 +0000)]
Include reshuffle.

16 years ago(s_p_etu): econfig key no longer used, remove.
Markus Armbruster [Sun, 15 Jul 2007 09:59:52 +0000 (09:59 +0000)]
(s_p_etu): econfig key no longer used, remove.

16 years agoUse the new Empire clock for implementing MOB_ACCESS:
Markus Armbruster [Sun, 15 Jul 2007 09:43:57 +0000 (09:43 +0000)]
Use the new Empire clock for implementing MOB_ACCESS:
(lndstr, plnstr, sctstr, shpstr): Change timestamp members lnd_access,
pln_access, sct_access, shp_access from real time (time_t) to ETUs
within a turn (short).
(land_ca, plane_ca, sect_ca, ship_ca): Update accordingly.
(build_ship, build_land, build_bridge, build_plane, build_tower)
(explore, check_trade, bsanct, takeover, takeover_ship)
(takeover_land): Use game_tick_to_now() instead of time() to update
the timestamp.  Change check_trade(), takeover_ship(), takeover_land()
to do that only when MOB_ACCESS is enabled, for consistency.
(lupgr, supgr, pupgr, takeover_ship): Don't touch the timestamp where
mobility isn't touched either.
(sct_do_upd_mob, shp_do_upd_mob, lnd_do_upd_mob, pln_do_upd_mob): Use
game_tick_to_now() instead of increase_mob() to compute ETUs since
the timestamp and update the timestamp.  Closes #1012699.
(increase_mob): Remove.
(mob_sect, mob_ship, mob_land, mob_plane): sct_do_upd_mob() & friends
no longer do the right thing at the update.  Use game_reset_tick() and
pass its result directly to do_mob_sect() & friends.  This is only
correct when argument is etu_per_update, which it always is.  Remove
parameter.  Callers changed.
(do_mob_sect, do_mob_ship, do_mob_land, do_mob_plane): Oops on
negative argument.

(mob_acc_globals, timestampfil, mobupdate, updating_mob)
(update_all_mob, timestamp_fixing, update_timestamps, mobility_check):
The mobupdate command was important to let deities manually
synchronize mobility updating with updates.  That's no longer needed.
The code behind it is somewhat hairy and ugly, and updating it to work
with the Empire clock is just not worth it.  Remove.  Users changed.
(player_coms): Update accordingly.
(upda): Remove display of mobility updating state.

(mobility_init): No need to fix up mobility on startup, as the Empire
clock runs normally even when the server is down.  Remove.  Caller
changed.

16 years ago(game_reset_tick): New.
Markus Armbruster [Sun, 15 Jul 2007 09:01:58 +0000 (09:01 +0000)]
(game_reset_tick): New.
(prod_nat): Use it.

16 years agoUse the new Empire clock for generating BTUs:
Markus Armbruster [Sat, 14 Jul 2007 16:30:12 +0000 (16:30 +0000)]
Use the new Empire clock for generating BTUs:
(natstr): New member nat_access.
(cou_ca): New selector access.
(grant_btus, accrued_btus): New.
(prod_nat, init_nat): Use grant_btus().  BTUs are now made at the
update in addition to login, because that lets us get away with a
simple ETU stamp (nat_access).
(nat_cap): Replaced by grant_btus(), remove.

16 years agoProvide an Empire clock with ETU resolution that is properly
Markus Armbruster [Sat, 14 Jul 2007 15:58:37 +0000 (15:58 +0000)]
Provide an Empire clock with ETU resolution that is properly
synchronized to updates (the one based on s_p_etu isn't synchronized):
(gamestr): New members game_turn, game_tick, game_rt.
(game_ca): New selectors for them.  Restrict tick and rt to deity for
now.  We'd need xdump update the Empire clock to make them safe for
players.
(game_record_update): New.
(update_main): Call it.
(game_tick_tick, game_tick_to_now, game_step_a_tick): New, not yet
used.

16 years agoNew Empire table game, to be used for global stuff:
Markus Armbruster [Sat, 14 Jul 2007 14:49:58 +0000 (14:49 +0000)]
New Empire table game, to be used for global stuff:
(gamestr, EF_GAME, game_ca): New.
(empfile): Declare the table.
(ef_open_srv, ef_close_srv): Open and close it.
(main): Create it.
(empobj_storage): New member game.

(EF_DYNMAX): New.
(EF_IS_GAME_STATE): Use it.

16 years agoRemove the demand update feature veto. It's virtually unused, flawed
Markus Armbruster [Sat, 14 Jul 2007 13:09:33 +0000 (13:09 +0000)]
Remove the demand update feature veto.  It's virtually unused, flawed
by design (by voting last players can tactically vote no and thus
build up veto rights), and its implementation is buggy:
(update_missed): Remove.
(zdone): Don't show it.
(demand_check): Remove veto check.
(natstr, cou_ca): Remove member nat_missed and its selector.
(zdone): Don't clear and don't show it.
(update_removewants): Don't increment it.  This was buggy anyway; it
incremented even on non-demand updates.
(prnat): Don't show it, remove key 'U'.
(docountry): Don't change it, deprecate the now useless key 'U'.

16 years ago(do_mob_sect, do_mob_plane): Remove the special case for maxed out
Markus Armbruster [Sat, 14 Jul 2007 09:07:54 +0000 (09:07 +0000)]
(do_mob_sect, do_mob_plane): Remove the special case for maxed out
mobility.  The general case is fine.
(do_mob_ship): Move the special case for maxed out mobility into the
fuel conditional.  The general non-fuel case is fine.
(do_mob_land): Likewise, but continue to call lnd_fortify() only when
needed.

16 years ago(do_mob_land): Simplify fortification. No functional change.
Markus Armbruster [Sat, 14 Jul 2007 08:45:01 +0000 (08:45 +0000)]
(do_mob_land): Simplify fortification.  No functional change.

16 years agoFix missing include.
Markus Armbruster [Fri, 13 Jul 2007 17:15:33 +0000 (17:15 +0000)]
Fix missing include.

16 years agoComment.
Markus Armbruster [Fri, 13 Jul 2007 16:51:31 +0000 (16:51 +0000)]
Comment.

16 years agoNew utility program empsched.
Markus Armbruster [Fri, 13 Jul 2007 16:49:13 +0000 (16:49 +0000)]
New utility program empsched.

16 years agoUpdate for new reload command. Back out a reference to a new utility
Markus Armbruster [Fri, 13 Jul 2007 16:42:10 +0000 (16:42 +0000)]
Update for new reload command.  Back out a reference to a new utility
program that hasn't been committed, yet.

16 years ago(relo): New command.
Markus Armbruster [Fri, 13 Jul 2007 06:04:03 +0000 (06:04 +0000)]
(relo): New command.

16 years agoFix the previous revision.
Markus Armbruster [Thu, 12 Jul 2007 06:10:59 +0000 (06:10 +0000)]
Fix the previous revision.

16 years ago(schedule): New.
Markus Armbruster [Wed, 11 Jul 2007 22:37:31 +0000 (22:37 +0000)]
(schedule): New.
(install): Install a default schedule.

16 years agoDocument the new update scheduler.
Markus Armbruster [Wed, 11 Jul 2007 22:34:21 +0000 (22:34 +0000)]
Document the new update scheduler.

16 years agoNew update scheduler:
Markus Armbruster [Wed, 11 Jul 2007 22:27:29 +0000 (22:27 +0000)]
New update scheduler:
(schedulefil): New.
(set_dirs, set_paths): Rename.  Initialize schedulfil.
(read_schedule): New.  Can read several updates, which will be used in
later changesets.
(update_time): Change to array.  Will be used in later changesets.
(update_schedule_anchor): New.
(update_init): Initialize it.
(update_get_schedule): New.
(update_init): Call it to initialize update_time[].
(update_sched): Rewrite.
(update_forced, update_wanted): Replace.
(update_reschedule): New.
(main): Call it on SIGHUP to reload the schedule.
(update_trigger, update_force, force, player_coms): Drop force's
capability to schedule updates in the future, because it's not worth
the trouble to implement again.  Deities can simply edit the schedule
file to schedule updates.  Remove update_force() and
update_trigger()'s parameter.
(upda): Update for new scheduler.  Take care to keep output the same
as far as possible, even though it's ugly, to avoid breaking clients.
(update_policy, adj_update, update_times, hourslop, blitz_time):
econfig keys removed.
(update_demand, UPD_DEMAND_NONE, UPD_DEMAND_SCHED, UPD_DEMAND_ASYNC)
(update_demandpolicy, UDP_NORMAL, UDP_TIMES, UDP_NORMAL, UDP_BLITZ)
(UDP_MAX, UDP_DEFAULT, UDDEM_TMCHECK, UDDEM_COMSET, UDDEM_DISABLE)
(UDDEM_MAX, UDDEM_DEFAULT): econfig key and values replaced.  Users
changed.  wantupd.h is now empty, remove.
(demand_check): External linkage.
(update_policy_check): Now pointless, remove.
(is_daytime_near, min_to_next_daytime, regular_update_time)
(scheduled_update_time, next_scheduled_time, updatetime)
(next_update_time, next_update_check_time): Unused, Remove.

(demand_check, demandupdatecheck): Move call of demand_update_time()
from demand_check(), which controls all demand updates, to
demandupdatecheck(), which controls only unscheduled ones.  Fixes
update command not to lie about the next scheduled demand update.

(demandupdatecheck): Check updates_disabled() so that zdone no longer
claims to trigger an update when it can't.

16 years ago(demand_check): Remove dead code.
Markus Armbruster [Wed, 11 Jul 2007 21:35:47 +0000 (21:35 +0000)]
(demand_check): Remove dead code.

16 years agoFix markup. Reorder so that options appear in alphabetical order.
Markus Armbruster [Wed, 11 Jul 2007 19:59:47 +0000 (19:59 +0000)]
Fix markup.  Reorder so that options appear in alphabetical order.
Document -h and -v for fairland and files.  Supply proper .SA.  Minor
polishing.

16 years agoSome variables were recursively expanded unintentionally. Fix.
Markus Armbruster [Wed, 11 Jul 2007 19:52:24 +0000 (19:52 +0000)]
Some variables were recursively expanded unintentionally.  Fix.

16 years agoInstall all manual pages in section 6, where they belong. Source
Markus Armbruster [Wed, 11 Jul 2007 19:45:28 +0000 (19:45 +0000)]
Install all manual pages in section 6, where they belong.  Source
files renamed.

16 years ago(show_news): Don't show unused elements of rpt[].
Markus Armbruster [Tue, 10 Jul 2007 21:23:29 +0000 (21:23 +0000)]
(show_news): Don't show unused elements of rpt[].

16 years agoUpdate example to current output.
Markus Armbruster [Tue, 10 Jul 2007 21:15:53 +0000 (21:15 +0000)]
Update example to current output.

16 years agoFix indentation.
Markus Armbruster [Tue, 10 Jul 2007 21:03:22 +0000 (21:03 +0000)]
Fix indentation.

16 years agoFix .SA.
Markus Armbruster [Tue, 10 Jul 2007 21:00:49 +0000 (21:00 +0000)]
Fix .SA.

16 years agoClarify. Improve .SA.
Markus Armbruster [Tue, 10 Jul 2007 20:54:15 +0000 (20:54 +0000)]
Clarify.  Improve .SA.

16 years agoFix for N_WELCH_DEAL, N_LND_LOSE, N_BOARD_LAND.
Markus Armbruster [Tue, 10 Jul 2007 20:49:07 +0000 (20:49 +0000)]
Fix for N_WELCH_DEAL, N_LND_LOSE, N_BOARD_LAND.

16 years ago(EMPCFONLYC, EMPCFBOTH): Rename parameter num to flags.
Markus Armbruster [Tue, 10 Jul 2007 18:27:24 +0000 (18:27 +0000)]
(EMPCFONLYC, EMPCFBOTH): Rename parameter num to flags.

16 years ago(natstr): Simplify encoding of member nat_update. Users changed.
Markus Armbruster [Tue, 10 Jul 2007 17:48:57 +0000 (17:48 +0000)]
(natstr): Simplify encoding of member nat_update.  Users changed.
(WUPD_WANT): Unused, remove.

16 years ago(zdon): Simplify. Also gets rid of a compiler warning.
Markus Armbruster [Tue, 10 Jul 2007 17:28:23 +0000 (17:28 +0000)]
(zdon): Simplify.  Also gets rid of a compiler warning.

16 years agoFix the previous revision.
Markus Armbruster [Tue, 10 Jul 2007 16:44:57 +0000 (16:44 +0000)]
Fix the previous revision.

16 years ago(opt_DEMANDUPDATE): Remove. Deities can use update_demandpolicy to
Markus Armbruster [Sun, 8 Jul 2007 15:26:23 +0000 (15:26 +0000)]
(opt_DEMANDUPDATE): Remove.  Deities can use update_demandpolicy to
control demand updates.

16 years ago(prnat): Show nat_missed even when opt_DEMANDUPDATE is off, because
Markus Armbruster [Sun, 8 Jul 2007 11:46:49 +0000 (11:46 +0000)]
(prnat): Show nat_missed even when opt_DEMANDUPDATE is off, because
docountry() lets you edit it even then.

16 years ago(journal_entry): Silence compiler warning in previous revision.
Markus Armbruster [Sun, 27 May 2007 14:00:59 +0000 (14:00 +0000)]
(journal_entry): Silence compiler warning in previous revision.

16 years ago(player): Remove unused member blitz_time.
Markus Armbruster [Sun, 27 May 2007 13:36:14 +0000 (13:36 +0000)]
(player): Remove unused member blitz_time.

16 years ago(show_nuke_build, show_nuke_capab): Fix rounding of research.
Markus Armbruster [Sun, 13 May 2007 14:39:42 +0000 (14:39 +0000)]
(show_nuke_build, show_nuke_capab): Fix rounding of research.
Reported by Doug Wescott.