Sun Mar  7 14:12:18 1999  Stan Shebs  <shebs@andros.cygnus.com>

	* combat.c (check_overrun_action): Fail if attacker can't attack
	one of the units in the defending stack.
	(check_fire_at_action): Fail if hit chance is 0.
	* help.c (describe_game_design): Fix report of advantages, display
	scorefile name to designers.
	(describe_utype): Describe all the detonation parameters, also
	accident parameters.
	(may_detonate): New function.
	(describe_setup): Mention if no synth done, describe maze gen.
	(describe_world): Describe default colors to designer.
	(tb_value_desc): New function.
	(u_property_desc, etc): Use it as default data formatter, simplify
	data formatting code.
	(tb_percent_desc, tb_percent_100th_desc): New functions.
	* imf.c (emblem_position): Position an 8x6 block if solid color.
	* mplayer.c, plan.c: Cleanup change comments, ansify decls.
	* ui.c (unit_actually_visible): Test side view coverage.
	* unit.c (nextid): Set default back to 1.

	* tkconq.tcl (add_player_dialog_items): Put side/player list
	inside a sunken relief frame, add enable/disable for exchange
	button.
	(update_player_entry): Gray out info about sides that won't be
	in the game.
	(map_lighting): Default to on.
	(adjust_play_menu, adjust_more_menu, adjust_view_menu): New procs.
	(create_map_menus): Set to call them.
	(adjust_menu_entry): New proc.
	(update_unit_info): Set curunit.
	* tkcmd.c (do_map): Add subcommand for transition display.
	(cmd_error): Remove vprintf call.
	* tkinit.c: Include tran16.b.
	(update_view_controls_info): New function.
	* tkmain.c (tk_side_ingame): New tcl command.
	(tk_run_game_idle): Update curunit if unit type changes, such as
	when wrecked, also update mouseover regularly.
	(draw_unit_info): Update curunit.
	* tkmap.c (MapW draw_transitions): New slot.
	(draw_map_widget): Draw transitions at map power 4.
	(set_terrain_gc_for_image): Let terrain style always affect map
	drawing, irrespective of mag power.
	(draw_terrain_transitions): Fix shoreline shading, reset fill
	style back to solid.
	(draw_current): Always draw the unit too.
	(draw_side_emblem): Handle solid color emblem.
	
	* bitmaps/tran16.b: New file.
	* tran32.b: Add a 4th row, improve shapes of existing transitions.

	* beirut.g: Add solid color emblems.
	* panzer.g: Improve names of infantry types, fix random OB to be
	more like real-life units, make arty and inf start in transports.
	(mp-to-enter-own): Define.
	* stdterr.g: Flip order of road and river.
	* terrain.imf: Add some 64x64 tiles for common types.

Tue Mar  2 19:48:55 1999  Stan Shebs  <shebs@andros.cygnus.com>

	* conq.h (UPDATE_RIGHTNOW, UPDATE_COVER, etc): Define.
	* run2.c (all_see_cell_weather, change_people_side_around): Use.
	(vary_winds): New function, cut from run_environment.
	(mix_winds): Fix calculation.
	* mknames.c (make_up_side_name): Add a comment.

	* bitmaps/tran32.b: New file, 32x32 transitions.

	* tkconq.h (UI warncolor, blastimages): New slots.
	* tkconq.tcl (add_player_dialog_items, select_player): Indicate
 	selected assignment with heavy line instead of relief.
	(create_map_window): Make separate frame for turn number.
	(update_side_progress): Change rect size instead of deleting
	and replacing.
	* tkinit.c (tranpics): New global.
	(init_other_images): New function.
	(init_display): Call it.
	(set_optional_colors): Set up warncolor.
	(init_bitmaps): Set up transition bitmap.
	* tkmain.c (tk_can_rename): New tcl command.
	(update_fire_at_display, update_fire_into_display): Implement.
	(play_movies): Simplify.
	* tkmap.c (draw_terrain_transitions): New function.
	(draw_map_widget): Call it, also draw curunit on top of all else.
	(draw_unit_and_occs): Don't draw curunit.
	(draw_blast_image): Use blast image families.
	(draw_fire_line): New function, animates firing.

	* x2imf.c (main): Don't reverse bitmap data here.

	* lib/blasts.imf: New file, blast image families.
	* normandy.g: Add sequential variant.
	* p-e1-1938.g: Tweak people to match terrain.
	* standard.g: Use short generic names for lakes and islands.
	* u-normandy.g: Set town origside to Allies.
	* terrain.imf: Lighten color of mountains.
	
	* PROJECTS: Remove items about ng-weird and occupant viewing
	in X11 interface.

Wed Feb 24 19:41:35 1999  Stan Shebs  <shebs@andros.cygnus.com>

	* combat.c (type_can_capture): Account for capture-after-attack
	possibility.
	* help.c (describe_utype): Describe more properties and tables,
	fix some logic.
	(describe_setup): Describe spur generation.
	* imf.c (emblem_position): Change arg from eimg to eimf, and use.
	* init.c (init_view_cell): Check if winds defined before setting.
	* nlang.c (unit_handle): Add more description-format options.

	* tkconq.h (Map curunit_id): New slot.
	(Map savedcurunit): Remove, never used.
	* tkcmd.c (REQUIRE_UNIT): Clear curunit_id.
	* tkmain.c (tk_side_emblem): Return "null" if no image.
	(tk_run_game_idle): Test if curunit is wrong and handle.
	(tk_animate_selection): Ditto.
	(set_current_unit): Set map->curunit_id.
	* tkmap.c (draw_current): Test curunit_id.
	(draw_blast): Add case for detonation blast type.
	(draw_blast_image): Invert the rect.
	(draw_unit_image): Pass emblem imf to emblem_position.
	(update_area): New function.
	* tkconq.tcl (update_player_entry): Skip over missing images.

	* beirut.g: Change to use measurements in feet, rename junkheap
	to block, let tanks move through block, add action-notices.
	* earth-1deg.g: Default "bare" variant to false.
	* flattop.g: Aircraft don't consume fuel while sitting on deck.
	* insects.g: Add bare terrain type, let mounds and nests hit
	back at attackers, reduce capture chance for mounds unless indep,
	add auto-repair and doctrine for construction run lengths.
	* monster.g: Tweak terrain colors, define
	withdraw-chance-per-attack.
	* mormon.g: Declare places already-seen, add stack protection
	and action notices, limit side number, and add Fort Duchesne.
	* red-october.g, rom-civ-war.g: Limit side number.
	* russian-rev.g: Make railroads black, add speed-damage-effect.
	* u-e1-1938.g: Add bases in US.
	* ww2-38.g: Start European sides with standing armies.
	* ww2-sides.g: Limit side number.
	
	* refman.texi: Describe description-format better.

Fri Feb 19 17:24:00 1999  Stan Shebs  <shebs@andros.cygnus.com>

	* nlang.c (plan_desc): Don't deref NULL pointer.
	* read.c (interp_goal): Recognize string naming unit.
	* ui.c (plot_meridians): Test spacing using middle of area,
	not edge.
	* world.c (latlong_to_xy): Handle negative longitudes correctly.

	* tkconq.h: Add decls.
	* tkconq.tcl: Set up textfont and boldfont when window opened.
	(create_map_window): Create laurels images, offscreen.
	(create_map_menus): Set up weather submenu items.
	(update_game_side_info): Move laurels into view if side won.
	
	* tkcmd.c (REQUIRE_UNIT): Remove side arg everywhere.
	* tkmain.c (tk_run_game): Control maxactions from arg, return
	desired interval until next call.
	(tk_run_game_idle): Put unit back in middle of screen if moving
	off one side.
	(eval_tcl_cmd): Allow arguments a la printf.
	* tkcmd.c, tkinit.c, tkmain.c, tkmap.c: Use it everywhere.
	* tkmap.c (put_on_screen, in_middle): Remove side arg.

	* bitmaps/laurels.b: New bitmap, indicates winning sides.
	* tkinit.c (init_bitmaps): Make available to tcl.

	* midway.g: Start on 30 May, use unit numbers instead of names.
	* voyages.g: Reenable side library.
	
	* PROJECTS: Add some PzGen emulation ideas, remove item about
	code shift between tkmain.c and tkmap.c.

Tue Feb 16 19:16:44 1999  Stan Shebs  <shebs@andros.cygnus.com>

	* imf.c (emblem_position): Keep emblem inside unit's rect.
	* ui.h (VP center, offsetx, offsety): New slots.
	* ui.c (calc_view_misc): Compute.
	(xform_cell, nearest_cell): Use.
	* unit.c (designer_create_unit): Fix and simplify.
	* write.c (write_units): Fix test for occupancy.

	* tkconq.tcl (all_see_all, may_set_see_all): New globals.
	(can_see_people, can_see_control, etc): New globals.
	(create_map_window): Put world map inside a sunken frame,
	add side loss strikeover line.
	(create_map_menus): Adjust view items according to globals.
	(update_game_side_info): Handle more info about side's status.
	(update_view_controls_info): New proc.
	* tkinit.c (init_display): Call update_view_controls_info.
	* tkisamp.c: Use XCreateGC instead of Tk_GetGC, use separate
	GC for pixmap copying.
	* tkmain.c (update_side_display): Pass more data to
	update_game_side_info.
	(update_turn_display): Turn on see_all if end of game.
	(create_map, zoom_in_out, etc): Move here from tkmap.c.
	* tkmap.c (MapW border_width, relief): Remove.
	(mapw_widget_cmd): Fix scrolling bounds.
	(mapw_display): Put update outline under control of debug flag.
	(set_scrollbars): Fix calcs.
	(xform, xform_fractional): Move offset calcs to generic code.
	(update_at_unit): Reduce update area to cell alone.

	* nat-names.g, ng-african.g, ng-american.g, ng-asian.g,
	ng-european.g: Add more national unit namers.
	* standard.g (default-namer): Set it.
	
	* PROJECTS: Add more random ideas.

Thu Feb 11 19:06:13 1999  Stan Shebs  <shebs@andros.cygnus.com>

	* gvar.def (default-namer): New global.
	* mknames.c (run_namer): Use it, instead of looking for
	"independent-names".
	* read.c (merge_unit_namers): Handle a list of unit types.
	* skelconq.c (update_area_display, unit_build_dialog): Define.

	* tkconq.tcl (add_splash_screen_dialog_items): Don't fail if
	splash image not found.
	(add_real_time_dialog_items, real_time_ok_cmd): Implement.
	(set_variants): Set real-time variant values.
	(dsave_types, etc): New globals.
	(popup_designer_save): Use them.
	(save_design): Use them here too.
	* tkcmd.c: Ansify.
	(do_save): Remove useless code.
	* tkmain.c (tk_designer_save): New tcl command.
	(tk_set_variant_value): Handle real-time variants.
	(set_variant_real_time): New function.
	* tkmap.c (draw_legend_text): Make legends white on black.
	
	* beirut.g: Don't number buildings.
	* nat-names.g, ng-african.g, ng-american.g: Add more
	country-specific namers.
	* ng-european.g: New file, namers for European countries.
	
	* PROJECTS: Add more ideas, remove project about setup dialogs
	for tcl/tk.

	* configure.in: Add tests for ranlib and ar.
	* configure: Regenerate.

Mon Feb  8 18:26:42 1999  Stan Shebs  <shebs@andros.cygnus.com>

	* INSTALL: Update to reflect changes.
	* Makefile.in (all-ximfapp): Rename from all-imftk.

	* tcltk/Makefile.in (libtkiapp.a): New library.
	(install-only): Install imfapp.tcl.
	* imfapp.tcl: New file, was imftk.tcl.
	* tkconq.tcl (new_width, etc): Set default value.
	(update_side_progress): Add arg, gray out rect if side inactive.
	* tkiapp.c: New file, body of imf application.
	* tkisamp.c (Imfsample show_bbox, show_solid, with_terrain,
	with_emblem, numvisrows, firstvisrow): New slots.
	(config_specs -showbbox, -showsolid): New arguments.
	(imfsample_cmd): Init them.
	(imfsample_widget_cmd): Interpret them, add yview impl.
	(imfsample_add_imf): Add -all to add all images.
	(imfsample_display): Use new slots.
	(draw_one_emblem): New function.
	(draw_one_image): Use it.
	* tkmain.c (update_side_display): Pass side activity to tcl.

	* win/wimfapp.c: New file, main program of Windows imfapp.

	* x11/Makefile.in (ximfapp): Build it.
	* ximfapp.c: New file, main program of X11 imfapp.
	* xutil.c (read_xbm_file): Reverse raw bits.

	* PROJECTS: Add a bunch more ideas.

Wed Feb  3 19:35:39 1999  Stan Shebs  <shebs@andros.cygnus.com>

	* Makefile.in: Switch to building the tcl/tk version by default.
	(all-xtconq): New action to build old X11 version.
	* x11/Makefile.in: Similarly, plus rename old stuff to "xtconq".
	(install-xtconq): New action.
	* xtconqad.h: Rename from xconqad.h.
	
	* tkconq.tcl (handling_key): New global.
	(handle_key_binding): Set it.
	(ask_bool_mode): Use it to decide when to make dialogs.
	(bool_yes, bool_no): New procs.
	(create_map_window): Use bitmaps for buttons, add build button.
	(make_normal_bindings): Make unitlist images clickable.
	(select_unit_type): New proc.
	* tkinit.c (init_bitmaps): Define bitmaps for buttons.
	* tkmain.c (tk_set_unit_type): New tcl command.
	* tkmap.c (ask_bool): Pass default directly to tcl code.
	
Mon Feb  1 19:30:57 1999  Stan Shebs  <shebs@andros.cygnus.com>

	* Makefile.in (install-only): Install images.
	(MAKEDIRS): Add images dir.
	* curses/Makefile.in (install-only): Make empty.
	(install-cconq): New action.
	* tcl/Makefile.in, tk/Makefile.in (install-only): New action.
	* tcltk/Makefile (install-only): Install tcl files.
	* x11/Makefile.in (install-only): Add tkconq installation.
	
	* read.c (interp_variant_defns): Add default names for standard
	variants.

	* tkconq.tcl (add_splash_screen_dialog_items): Try to get splash
	image from different places.
	(remove_splash_screen_dialog_items): Disable 2nd and 3rd buttons.
	(popup_game_dialog): Remove unneeded button disabling.
	(popup_variants_dialog): Similarly.
	(add_variants_dialog_items): Allow rerunning by not creating
	items after first pass.
	(popup_world_size_dialog, add_world_size_dialog_items,
	remove_world_size_dialog_items, world_size_ok_cmd,
	world_size_cancel_cmd): New procs, support for world size setup.
 	(popup_real_time_dialog, etc): New procs, realtime setup.
	* tkmain.c: Search for tkconq.tcl in ../tkconq.
	(tk_set_variant_value): Add world size case.
	(interpret_variants): Rewrite to simplify special cases.
	(interpret_checkbox): New function.
	(set_variant_value, set_variant_world_size): New functions.
	
Fri Jan 29 16:14:49 1999  Stan Shebs  <shebs@andros.cygnus.com>

	* tkconq.tcl (popup_splash_screen, add_splash_screen_dialog_items,
	etc): Adjust size and spacing of game setup dialogs.
	(add_player_dialog_items): Add advantage +/- buttons.
	(adjust_advantage_cmd): New proc.
	(select_player): Tweak state of advantage buttons.
	(create_map_window): Fix height calc.
	* tkmain.c (tk_min_advantage, tk_max_advantage, tk_adjust_advantage):
	New tcl commands.

	* splash.gif: Make larger, to fit tk dialog frame.

	* PROJECTS: Remove item about asking about saved game, default
	no-argument behavior will be to bring up new/open/connect dialogs.

Thu Jan 28 18:51:26 1999  Stan Shebs  <shebs@andros.cygnus.com>

	* images/: New directory, home for binary-format image files.
	* images/splash.gif: New splash screen picture.

	* tkconq.tcl (debug): New global, for debugging.
	(popup_splash_screen): Put up splash image.
	(add_variants_dialog_items): Show selected game's title,
	generalize checkbox setup, add help area.
	(show_variant_help, clear_variant_help): New procs.
	(set_variants): Remove special cases.
	* tkmain.c (interpret_variants): Generalize/simplify, add
	setting of varianttext array.
	
	* mac.c [__MWERKS__]: Include various Mac headers.
	* macconq.h: Always include main set of Mac headers.
	* macconq.c (update_area_display): Define.
	* macimf.c 

Wed Jan 27 08:06:37 1999  Stan Shebs  <shebs@andros.cygnus.com>

	* help.c (aa_table_row_not_default, aa_table_row_desc): New
	functions.
	(describe_atype): Use to list prerequisites.
	(describe_utype): Fix description of required advances.
	* run.c (run_advanced_units, run_construction, etc): Fix
 	formatting, handle indep units better, test for tasks rather
	than assuming they're present.
	* side.c (init_sides): Set up advances and treasury for indepside.
	* task.c (execute_task): Handle a null task.

	* tkinit.c (init_display): Set imf hooks here.
	* tkmain.c (tk_interpret_variants, tk_set_variant_value,
	tk_implement_variants, tk_maxsides, tk_add_side_and_player,
	tk_rename_side_for_player, tk_set_ai_for_player,
	tk_exchange_players): New tcl command functions.
	(tk_side_emblem): Check dside for using.
	(hack_find_imf): Handle finding imf during player setup.
	(interpret_variants, set_variant_value, implement_variants):
	New functions.
	* tkconq.tcl (add_variants_dialog_items): Add checkboxes.
	(remove_variants_dialog_items): Clean up checkboxes.
	(set_variants): Tweak variants' state.
	(add_player_dialog_items): Redesign framing for player list,
	add implementations for most buttons.
	(add_player_cmd, rename_side_for_player_cmd, toggle_ai_cmd,
	exchange_players_cmd, select_player, update_player_entry): New
	procs.
	(set_players): Make the player dialog go away.
	(create_map_window): Limit size of side list, add scrollbar.

	* ng-african.g, ng-asian.g, ng-misc.g: New files for nationality
	specific name generators.
	* nat-names.g (side-library): Use them.
	* ng-american.g: Add more real names.

Tue Jan 19 19:10:16 1999  Hans Ronne  <ronne@bmc.uu.se>

	* gvar.def (g_ai_may_resign): New constant.
	(g_indep_may_build): New constant.
	(g_ai_build_runlength): New constant.
	(g_peek_at_enemy): New constant.
	* mtype.def (m_treasury): New constant.
	* utype.def (u_minimal_size_goal): New constant.
	(u_reach): New constant.
	(u_colonizer): New constant.
	(u_improver): New constant.
	(u_facility): New constant.
	(u_offensive): New constant.
	(u_defensive): New constant.
	(u_explorer): New constant.
	(u_disable_standard_acp): New constant.
	* table.def (um_occ_add_production): New table.
	(um_occ_multiply_production): New table.
	(am_adv_add_production): New table.
	(am_adv_mult_production): New table.
	(ua_size_limit_without_adv): New table.
	(uu_size_limit_without_occ): New table.
	(uu_occ_add_maxcells): New table.
	(uu_occ_mult_maxcells): New table.
	(ua_adv_add_maxcells): New table.
	(ua_adv_mult_maxcells): New table.
	(uu_hp_on_completion): New table.
	* keyword.def: Add all the advanced unit keywords.
	* plan.def (PLAN_COLONIZING): New plan.
	(PLAN_IMPROVING): New plan.

	* actions.c (do_create_in_action): Fix independent ghost unit bug.
	(check_create_common): Fix idle mplayer bug.
	(set_created_unit_props): Fix independent ghost unit bug.
	(do_create_at_action): Fix independent ghost unit bug.	
	(do_create_at_action): Fix full city bug.
	(make_unit_complete): Call kick_out_enemy_users instead.
	(do_transfer_part_action): Fix independent ghost unit bug.
	* ai.c (give_up): Check ai_may_resign.
	* combat.c (capture_unit): Call kick_out_enemy_users instead. 
	* conq.h (kick_out_enemy_users): Prototype new function extern.
	Declare utype vectors and ints for advanced unit AI support.
	* game.h: Define utype macros for advanced unit AI support.
	Define DONE, NOUSER, NOADVANCE & NOUNIT to (-1).
	* init.c: Initialize utype vectors for advanced unit AI support.
	(setup_utype_vectors): New function and prototype.
	(final_init): Call setup_utype_vectors.
	* mknames.c (run_namer): Use independent names as fallback.
	* mkunits.c (place_unit): Fix independent ghost unit bug.
	* move.c (move_unit): Call kick_out_enemy_users instead.
	* mplayer.c (a_game_class): Add gc_advanced.
	(for_all_theaters): Add backslash for MWC compatibility.
	(for_all_cells_in_theater): Add braces for MWC compatibility.
	(assign_to_colonize): New function and prototype.
	(assign_to_improve): New function and prototype.
	(type_can_build_colonizers): New function and prototype.
	(find_game_class): Support gc_advanced.
	(mplayer_decide_plan): Call assign_to_colonize.
	(mplayer_decide_plan): Support PLAN_COLONIZING & PLAN_IMPROVING.
	(preferred_build_type): Support PLAN_COLONIZING & PLAN_IMPROVING.
	* plan.c (plan_improve): New function and prototype. 
	(plan_colonize): New function and prototype.
	(plan_colonizer_support): New function and prototype.
	(good_cell_to_colonize): New function and prototype.
	(execute_plan): Add case PLAN_COLONIZING & PLAN_IMPROVING.
	* read.c (fill_in_users): New function and prototype.
	(interp_area): Call fill_in_users.
	(fill_in_side): Handle K_NUMADVANCES, K_ADVANCE & K_TREASURY.
	(interp_unit): Fix saved game id zero bug (2 times).
	(interp_unit): Handle all the advanced unit keywords.
	* run2.c (compute_acp_advanced_unit): Remove prototype.
	(compute_moves): Remove call to compute_acp_advanced_unit. 
	(compute_moves): Add check for u_disable_standard_acp.
	* run.c: Rewrite all the advanced unit code. Major changes
	listed below.
	(create_selected_unit): Prototype extern.
	(has_advance_to_build): Prototype extern.
	(unit_build_dialog): Prototype extern.
	(run_construction): Prototype static.
	(set_new_build_task): Prototype static.
	(auto_pick_new_build_task): Prototype static.
	(compute_acp_advanced_unit): Remove function & prototype.
	(run_advanced_units): Rewritten. Support for treasury & facilities
	added.
	(run_population): Rewritten. Support for treasury & facilities added.
	(run_construction): New function. Replaces compute_acp_advanced_unit.
	(run_research): Rewritten. Support for autoresearch added.
	(allocate_used_cells): Rewritten. Support for facilities etc. added.
	(kick_out_enemy_users): New function. Handles new user layer
	correctly.
	(free_used_cells): Modify to handle new user layer correctly.
	(auto_pick_new_research): Use NOADVANCE. 	
	(set_new_build_task): New function.
	(create_selected_unit): New function.
	(auto_pick_new_build_task): New function.
	* score.c (side_loses): Don't kill losers cities. Make them
	independent.
	* side.h (a_side): Add global treasury.
	(a_side): Add side->ai_may_resign.
	* side.c (create_side): Allocate treasury.
	(create_side): Set side->ai_may_resign.
	* unit.c (default_reach): Remove. Repaced by u_reach.
	(create_unit): Allocate and zero unit production caches.
	(create_unit): Set newunit->reach to u_reach(type).
	(create_unit): Add unit->autobuild and unit->autoresearch.
	(enter_transport): Fix overcrowded transport bug.
	(unit_allowed_on_side): Call new_unit_allowed_on_side.
	(new_unit_allowed_on_side): New function. Fixes ghost unit bug.
	(designer_create_unit): Fix independent ghost unit bug.
	* unit.h: Remove declaration of default_reach.
	(a_unit): Add pointer to production caches.
	(a_unit): Add autobuild amd autoresearch.
	(new_unit_allowed_on_side): Prototype new function.
	* world.c (allocate_area_terrain): Change user layer type to short.
	(allocate_area_users): New function (prototyped extern in world.h.
	(fn_user_at): New function (prototyped extern in world.h.
	(fn_set_user_at): New function (prototyped extern in world.h.
	* world.h (struct a_area): Change user layer type to short.
	(allocate_area_users): Prototype new function.
	(fn_user_at): Prototype new function.
	(fn_set_user_at): Prototype new function.
	* write.c (write_area_users): New function and prototype.
	(write_areas): Call write_area_users. 
	(write_side_properties): Add advanced unit support.
	(write_units): Fix saved game id zero bug. 
	(write_unit_properties): Add advanced unit support.	
	
	* macadv.c: New name for macciv.c. All functions rewritten with
	numerous changes in dialogs etc. Major changes listed below.
	(create_selected_unit): New function in run.c prototyped.
	(unit_build_dialog): New function and prototype.
	(mac_create_cicn): Prototype extern CIconHandle.
	(mac_init_cicn): Prototype extern void.
	(city_dialog): Rewritten. Many changes.
	(draw_city_statistics): Rewritten. Many items added.
	(draw_landuse_near_unit): Modify for new user layer.
	(toggle_landuse_one_cell): Modify for new user layer.
	(unit_advance_dialog): Add support for autoresearch (3 times).
	(global_advance_dialog): Rewritten. Many changes.
	* maccolors.c: Remove old change markers.
	(default_draw_emblems): Initialize.
	* macconq.h: Remove old change markers and clean up file.
	(struct a_map): Add map->draw_emblems.
	(struct a_list): Add list->draw_emblems.
	(default_draw_emblems): Define extern int.
	(toggle_map_draw_emblems): Prototype extern void.
	(toggle_list_draw_emblems): Prototype extern void.
	* macdefs.h: Remove old change markers.
	(dCity): Add many new items for status info support.
	(dAdvance): Add new items for status info support.
	(dGlobalAdvance): Add new items for status info support.
	(dBuild): New dialog.
	(diPrefsDrawEmblems): New checkbox.
	(mAdvanceAchieved): New popup menu.
	(miListDrawEmblems): New menu item.
	(miTextDrawEmblems): New menu item.
	* macdraw.c: Remove old change markers.
	(draw_unit_image): Fix grayout bug.
	(draw_unit_image): Add user control of emblems.
	* macinit.c (launch_game): Remove extra call to init_unit_images.
	* maclist.c: Remove old change markers.
	(create_list): Set list->draw_emblems.
	(toggle_list_draw_emblems): New function.
	* macmap.c (create_map): Set map->draw_emblems.
	(draw_meridians): Adjust top corner clipping by 1 cell.
	(draw_meridians): Fix garbage outside area bug.
	(draw_unit_names_only): Fix xform-related crashes.
	* macmenus.c (do_menu_command): Call toggle_map_draw_emblems.	
	(do_menu_command): Call toggle_list_draw_emblems.	
	(adjust_menus): Enable miTextDrawEmblems.
	(adjust_menus): Disable miListSideColors & miListDrawEmblems.
	(adjust_menus): Enable miTextDrawEmblems.
	* macmouse.c: Remove old change markers.
	(toggle_map_draw_emblems): New function.
	(do_mouse_down_map_content): Skip checks for side when ctr-clicking.
	* macprefs.c: Remove old change markers.
	(interp_mac_ui_data): Set default_draw_emblems.
	(ui_update_state): Push default_draw_emblems.
	(set_preferences): Handle default_draw_emblems (3 times).
	* XconqProj.rsrc (CNTL 713 "Achieved Advances"): New control.	
	(DITL 705 "Preferences Image Sets"): Add emblems checkbox.
	(DITL 803 "City"): Many new items.
	(DITL 804 "City Research"): New items.
	(DITL 805 "Global Science"): Many new items.
	(DITL 807 "City Build"): New dialog item list.
	(DLOG 807 "City Build"): New dialog.
	(ictb 803 "City"): New item color table.	
	(MENU 136 "Map View"): Cange "Text" to "Text and Emblems".
	(MENU 215 "Text Popup"): Add "Draw Side Emblems" item.
	(MENU 235 "List View"): Add "Side Emblems" item.
	* Xconq.r: Update from XconqProj.rsrc to reflect the above changes.

Tue Jan 19 18:59:56 1999  Stan Shebs  <shebs@andros.cygnus.com>

	* bitmaps: Move dir up from x11 subdir.
	* tcltk/Makefile.in (ALL_CFLAGS): Remove path to x11 subdir.

	* ng-american.g: Replace unfinished random generator with longer
 	selection of random real names.

Mon Jan 18 18:49:59 1999  Stan Shebs  <shebs@andros.cygnus.com>

	* cmd.c (parse_long_name_command): Move here from ui.c.
	* imf.c (add_shrunken_image, add_magnified_image): Fix calcs
	of embedded image position/size.

	* bitmaps/curscell.b, curscellm.b, etc: New bitmaps, conversions
 	of Mac game design cursors.

	* tkconq.h (cell_paint_mode, etc): Rename from cellpainttool, etc.
	* tkcmd.c (do_give_unit): Implement.
	(aux_give_unit, really_do_give_unit): New functions.
	(do_save): Popup a dialog for designer save.
	* tkinit.c (init_cursors): Fill in using new cursor bitmaps.
	* tkmain.c (tk_run_game_idle): Add a heuristic to reduce jumping
	around of curunit.
	(tk_execute_long_command): Get prefix arg and put into prefixarg.
	(tk_set_design_tool): Add rest of design cases.
	* tkmap.c (handle_designer_mouse_down, etc): Update mode names.
	* tkconq.tcl (create_map_window): Fix unitinfo packing.
	(create_map_menus): Add unit gift submenu.
	(popup_design_palette): Add rest of design buttons.
	(select_paint): Compute frame name from type arg.
	(make_design_tool): Remove.
	(make_normal_frame, etc): Do label and canvas setup individually.
	(select_design_tool): Simplify for new code.
	(dbg_set_design_data): Handle brush size the new way.
	(popup_designer_save): New proc.

	* nat-names.g: Include random name generators for some specific
	countries, use instead of generic generator.
	* ng-english.g: Fix module name.
	* standard.imf: Add embed-at for silhouettes.

	* PROJECTS: Add ideas about view painting and kwic index.

Fri Jan 15 17:18:49 1999  Stan Shebs  <shebs@andros.cygnus.com>

	* tkcmd.c (do_survey): Update the map mode onscreen.
	(really_do_design): Force the map mode to survey, and update
	onscreen.
	* tkmap.c (create_map): Update the mode onscreen.
	* tkconq.tcl (create_map_window): Add a column of buttons on
	the left side, make user interaction text boldface.
	(update_mode): New proc.
	(popup_design_palette): Rewrite to add new buttons and panes
	to existing map windows, instead of making a new toplevel.
	(select_paint, make_normal_frame, make_terrain_paint_frame, etc):
	New procs.
	(select_design_tool, dbg_set_design_data): Reflect new layout.

	* configure.in (AC_HEADER_DIRENT): Add.
	(XLIBS): Define.
	* configure: Regenerate.
	* SelFile/Makefile.in (UNIX_CFLAGS): Add @DEFS@.
	* SelFile/Dir.c: Use HAVE_DIRENT_H.
	* x11/Makefile.in (X11_LIB_FLAGS, X11_INCLUDE_FLAGS): Define.

Tue Jan 12 19:06:37 1999  Hans Ronne  <ronne@bmc.uu.se>

	* macinit.c: Remove old change comments.
	(launch_game_2): Use DEFAULTCIRCUMFERENCE if circumference is
 	undefined.
	* macmap.c: Remove old change comments.
	(UNWRAP_SX): Also trigger if sx > sxmax.
	(UNWRAP_RECT): Also trigger if rect.right > sxmax.
	(UNWRAP_POLY): Also trigger if polyBBox.right > sxmax.
	(create_map): Fix negative and zero circumference crashes.
	(draw_map_content): Fix occasional undrawn hexes at left end of map. 
	(draw_meridians): Return if circumference is negative or zero.
	(draw_meridians): Fix wrapping bug.
	(draw_meridians): Remove unnecessary longitude unwrapping.
	* macrow.c: Remove old change comments.
	(UNWRAP_SX): Also trigger if sx > sxmax.
	(UNWRAP_RECT): Also trigger if rect.right > sxmax.
	(UNWRAP_POLY): Also trigger if polyBBox.right > sxmax.
	(draw_contours): Also unwrap LineTo if sx > sxmax.
	(draw_gridlines): Also unwrap LineTo if sx > sxmax.
	(draw_shorelines): Also unwrap LineTo if sx > sxmax.
	(draw_feature_boundary_simple): Also unwrap LineTo if sx > sxmax.

Mon Jan 11 19:14:09 1999  Stan Shebs  <shebs@andros.cygnus.com>

	* tkconq.tcl (create_map_window): Fix unit type list headings.

	* standard.imf: Add flagpoles and embed-at settings to some images.

	Autoconfiscate Xconq:
	* configure.in: Replace contents with autoconf macros.
	* configure: Replace with autoconf-generated version.
	* config.host, config/: Remove, no longer needed.
	* */configure.in (except tcl and tk): Remove, no longer needed.
	* Makefile.in, */Makefile.in (prefix, srcdir, VPATH, CC, AR,
	RANLIB): Use @-substitutions.
	
Sun Jan 10 12:28:16 1999  Stan Shebs  <shebs@andros.cygnus.com>

	* init.c (check_game_validity): Allow unit priorities to vary.

	* run.c (compute_sun): Reformat.
	(run_sun): Call update_area_display if any lighting changed.
	* side.c (seen_border): Only see border if terrain on both
	sides seen.

	* tkconq.h (UI follow_action): Remove.
	(Map follow_action): Add.
	* tkcmd.c (do_add_terrain_2): Include terrain type name in query.
	(do_follow_action): Use per-map flag.
	(do_map): Add line, polygon, unit plan options.
	* tkmain.c (tk_side_emblem): Return actual emblem in use.
	(tk_mouse_down_cmd, etc): Get and pass button number.
	(set_current_unit): Update at previously selected unit also.
	(update_area_display): New function.
	(action_point): Revive.
	(schedule_movie): Make ANSI-only.
	(flush_input, build_name, redraw, flush_output): Remove, unused.
	(update_unit_type_list): Display only single chars for unit types.
	(describe_map): New function.
	(tk_help_goto): Use it, plus set up command help nodes.
	(tk_interp_key): Return current prefix arg.
	* tkmap.c: Use mapw->gc everywhere instead of allocating GCs.
	(ask_string, etc): Remove extra space from prompt.
	(MapW offsetx, offsety, draw_polygons, draw_lines): New slots.
	(mapw_configure): Set up font here instead of during display.
	(mapw_display): Center small maps in viewport, tweak tile origin
	correctly for rect updates.
	(x_nearest_cell): New function, accounts for offsets.
	(draw_map_widget, draw_row): Draw terrain/bords/conn/units with
 	separate loops, so overlapping borders work right.
	(compute_x1_len): New function, computes row lengths in viewport.
	(cell_drawing_info): Compute cell overlay also.
	(draw_terrain_row): Update uses.
	(tmpdrawlighting, tmpdrawcoverage): Remove, no longer needed.
	(bords_to_draw, conns_to_draw, cell_overlay): Remove, folded into
	functions.
	(draw_borders): Draw all visible borders in widget.
	(draw_connections): Similarly.
	(draw_border_line_mult): Remove, folded into draw_borders.
	(draw_connection_line_mult): Similarly.
	(handle_mouse_down, etc): Remove side arg, add button arg, add
	right-click case.
	(toggle_mapw_polygons, toggle_mapw_lines): New functions.
	* tkconq.tcl (listiconsize): New global.
	(create_map_window): Use to control unit type list layout, also
	move type list border to surrounding frame, preload notices with
	tags for the command prompt etc, remove dedicated command pane.
	(handle_key_binding): Handle prefix arg correctly.
	(low_notify, ask_bool_mode, ask_position_mode, etc): Interact
	via tagged areas in last line of notices window.
	(create_map_menus): Add more menu items and submenus, similar to
 	Mac menu structure.
	(make_normal_bindings): Pass button number to click handlers.

	* cconq.c, xtmain.c (update_area_display): New function.

	* ww2-div-pac.g: Use names instead of abbrevs for type names,
	put abbrevs in short-name.

	* PROJECTS: Add idea for sharing bord/conn masks among types,
	remove item about user choice of masks.

Mon Jan  4 19:29:41 1999  Stan Shebs  <shebs@andros.cygnus.com>

	* tkconq.tcl (create_map_window): Use boldface for own side.
	(create_map_menus): Add wind view item.
	* tkinit.c (connpics, windpics): New globals.
	(init_bitmaps): Fill them in.
	* tkmain.c (tk_dside): New function.
	* tkmap.c (MapW copygc): New slot.
	(MapW cursor): Remove.
	(mapw_widget_cmd): Make all scrolling cases work and use area
 	copying whenever possible.
	(mapw_configure): Allocate copygc.
	(mapw_display): Don't draw widget border in update rect.
	(mapw_destroy): Deallocate copygc.
	(draw_feature_name): Fix positioning of name.
	(draw_winds_row): Draw wind arrow bitmaps instead of text.
	(draw_borders): Merge in new bitmap drawing.
	(draw_border_line_mult): Only draw lines again.
	(draw_connection_line_mult): Draw bitmaps of connections.
	(draw_legend_text): Draw highlight background.
	(draw_text): Remove, inline code in callers meridian_text_callback,
	draw_clouds_row, draw_temperature_row.
	(set_tool_cursor): Use just-computed local for cursor.
	(update_at_cell, update_at_unit): Force update instead of
 	overwriting rect.
	
	* history.c (record_unit_death): Pass another arg in default case.
	* nlang.c (location_desc): Describe winds.
	* run.c (run_game): Record state data for Unix instead of Mac.
	* world.c (wind_dir, wind_force): Move here from interfaces.

	* bitmaps/wind*.b, bitmaps/conn*.b: New files, wind and connection
 	bitmaps.

	* refman.texi (hp-per-starve): Fix description.
	* PROJECTS: Remove items about default image generation
	and border redrawing for X11, add some new ideas.

Wed Dec 30 18:19:36 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* imf.c (clone_imf): Clear numsizes.
	(get_img): Sort by style also.
	(best_image): Succeed in best-besting if size matches request.
	(write_imf): Write style.
	* move.c (check_move_action): Fail if speed is 0.
	* ui.c (hcs): Adjust spacing at 64x64 mag.
	
	* skelconq.c (unit_advance_dialog, global_advance_dialog):
	New functions, defaults for linking.

	* tkconq.h: Merge enum tooltypes into enum mapmode.
	(Map terrain_style, unit_style, inpunit): New slots.
	* tkcmd.c: Pass NULL instead of unit to grok_position usually.
	(do_map): Add options to set terrain display styles.
	(do_survey): Use new mode organization.
	* tkinit.c: Include new border and "marching ants" bitmaps.
	(bordpics, antpic): New globals.
	(init_bitmaps): Set them.
	(init_cursors): Regularize.
	* tkmain.c (tk_mouse_over_cmd): Record last mouse position.
	(tk_world_mouse_down_cmd, tk_world_mouse_up_cmd): New functions.
	(set_current_unit): Eliminate side arg, update map even if no
	unit selected.
	(play_movies): Share more code among cases.
	(tk_set_design_tool): Reflect merge of tools and modes.
	* tkcmd.c, tkmain.c: Change all callers.
	* tkmap.c (zoom_in_out): Update mouseover and menus.
	(MapW main_font): New slot.
	(mapw_display): Set it and free it.
	(draw_map_widget): Move draw_current to unit draws.
	(draw_contours, etc): Eliminate side and drawable args,
	get from dside and mapw->d.
	(draw_feature_name): Use mapw->main_font for font.
	(cell_drawing_info): Use pictures at powers 4,5,6.
	(set_terrain_gc_for_image): Draw solid color if terrain style
 	calls for it.
	(draw_terrain_row): Make picture-drawing case work.
	(draw_current): Animate selection box, fix coloring.
	(draw_blast): Use update_at_unit to update, add a delay.
	(draw_border_line_mult): Calculate and draw pieces of a
	generic border bitmap.
	(handle_mouse_down, set_tool_cursor): Update to reflect mode/tool
	merge.
	(handle_world_mouse_down, handle_world_mouse_up): New functions.
	* tkconq.tcl (designer): New global.
	(create_map_menus): Use it, add separate move mode and survey
	mode entries to side menu, add terrain and unit style submenus
	to view menu.
	(make_normal_bindings): Make clicking on world map do something.
	(update_zoom): New proc, adjust menus according to mag power.
	(popup_design_palette): Disable some menu entries.
	(do_initial_setup): Increase animation speed.
	
	* neurope.g (independent-density): Define only in variants.
	
Thu Dec 24 13:35:02 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* imftk.tcl: Fix tipo.

	* tkmap.c (MapW rsx, rsy, rsw, rsh): New slots.
	(mapw_cmd): Init them.
	(mapw_configure): Always allocate GC.
	(mapw_display): Update only a subrect if specified via rsx etc.
	(update_at_cell, update_at_unit): New functions.
	* tkmain.c (update_cell_display): Use them.

	* tkconq.h (for_all_maps): No longer pass side arg.
	* tkmain.c, tkmap.c: Change all callers.

	* tkinit.c (init_display, set_optional_colors, etc): Use dside
 	instead of side argument.
	* tkmap.c (create_map, redraw_map, etc): Similarly.
	* tkcmd.c, tkmain.c: Change all callers.
	
	* tkcmd.c (really_do_design): Make extern, set map->see_all.

Tue Dec 22 18:50:07 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* Makefile.in (all-imftk): New action.
	* read.c (interp_table): Don't load default game.
	
	* table.def (drawable-terrain): New table.
	* africa.g, gettysburg.g, panzer.g: Use it. 

	* tcltk/Makefile.in: Build libtkimf.a.
	* tkconq.h (enum tooltypes): Add controlpainttool.
	(Map colorize_units): New slot.
	* tkcmd.c (aux_build): Call cancel_unit_type when cancelling.
	(do_map): Add more options.
	(do_message): Simplify cases.
	* tkconq.tcl (dblbuffer): New global, controls double-buffering.
	(create_map_window): Do unit list with multiple columns.
	(create_map_menus): Use checkboxes for view options.
	(update_unitlist): Replace with update_unitlist_count,
	update_unitlist_count, update_unitlist_incomplete.
	(enable_unitlist): Only draw border if enabled.
	(ask_side_mode, etc): New procs.
	(create_agreements_window): New proc.
	(create_help_window, update_help): Put title in text widget.
	(controlonly): New global.
	(select_design_tool): Use it.
	(popup_design_palette): Use it, also fix popup menu setup.
	(new_feature, rename_feature): New procs.
	* tkimf.c (tk_interp_image): Clean up solid color handling.
	(tk_make_color_pixmap): Fix bug with certain images.
	* tkinit.c (set_colors, etc): Remove side argument and use global
	dside instead.
	(request_color): Try to get a color from the imf library.
	* tkisamp.c (imfsample_display): Fix name drawing, row/column
	layout, background color option.
	(draw_one_image): Make more like tkmap.c drawing.
	* tkmain.c (tk_create_new_feature): New function.
	(tk_t_image_name, tk_u_image_name): Return type name if necessary.
	(update_unit_type_list): Use multiple procs.
	(tk_help_goto): Add other node classes.
	(tk_interp_key): Handle prefix arg.
	* tkmap.c
	(cancel_unit_type): New function.
	(grok_side): Make work.
	(MapW d): New slot.
	(draw_area_background, etc): Remove side and drawable args,
	use dside and mapw->d instead.
	(draw_people, draw_country_border_line): Rewrite to handle all
	people and control choices.
	(draw_text): New function.

	* x11/Makefile.in (tkconq, imftk): Link in libtkimf.a.
	* imftk.c: Use tkisamp.c.
	
	* gettysburg.g: Make ravines more difficult to cross, tweak
	side colors, add more comments.

	* PROJECTS: Add some random ideas.

Mon Dec 21 18:28:04 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* INSTALL: Fix mistaken reference to /usr/games, add a note
	about XPM files.

Mon Dec  7 19:17:42 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* world.c (init_world, set_world_circumference): Remove new
	restriction on circumference, fails for outer space games.
	(latlong_to_xy): Return if circumference is zero.
	(divide_into_regions): Fix bug in cylinder handling.
	(random_edge_point): Cache adjusted width.

	* tkconq.tcl (popup_splash_screen, add_splash_screen_dialog_items,
	remove_splash_screen_dialog_items, etc): New procs, complete
	set of dialogs for game setup.
	(create_map_window): Set imfsamples to inherit background color
	of underlying widgets.
	* tkisamp.c: Add remove command to widget.
	(imfsample_replace_imf): Add the image if none currently displayed.
	* tkmain.c (tk_version_string, tk_short_side_title, etc): New
	functions, used in game setup dialogs.
	(popup_game_dialog): Invoke popup_splash_screen.

	* xtconq.c: New file, modified copy of xconq.c for Xt-based code.
	* x11/Makefile.in: Use it.
	(TCLTK_LIB): Fix pathnames.
	* xconq.c (main): Bring up game setup dialog if no arguments on
	command line, always go into ui_mainloop after setup dialog.
	
	* macgworld, macmouse.c, macrow.c: Clean up commented-out code.

	* PROJECTS: Add some new interface ideas, idea for new Godzilla
	game.

Thu Dec  3 19:51:52 1998  Hans Ronne  <ronne@bmc.uu.se>

	* ui.c (xform_cell): Permit mac interface to go outside area 
	for backcolor support.

	* world.c (init_world): Set default world.circumference to 360.
	(set_world_circumference): Don't allow zero or negative values!
	(compute_feature_centroid): Comment out buggy centroid code.
	
	* maccmd.c (do_recenter): Call set_map-focus instead of set_focus.
	(set_focus): Remove.
	(do_set_view_angle): Call set_map_angle.
	* maccolors.c (mac_create_cicn): Declare extern for use in
 	set_side_colors.
	(mac_init_cicn): Declare extern for use in set_side_colors.
	(build_colors_popup_menu): Prototype new function.	
	(append_color_callback): Prototype new function.
	(fill_in_empty_name): Remove obsolete prototype.
	(set_default_colors): Add support for window background color.	
	(init_side_colors): Set grid_matches_unseen correctly.	
	(set_side_colors): Remove check for Images file.
	(set_side_colors): Call build_colors_popup_menu.
	(set_side_colors): Fix icon display bug by calling mac_create_cicn.
	(set_feature_color): Remove check for Images file.
	(set_feature_color): Call build_colors_popup_menu.
	(set_feature_color): Set grid_matches_unseen correctly.	
	(set_terrain_color): Remove check for Images file.
	(set_terrain_color): Call build_colors_popup_menu.
	(build_colors_menu): Add support for backcolor.	
	(build_sides_menu): Fix 2 menu item bugs.	
	(build_features_menu): Add support for backcolor.	
	(build_colors_popup_menu): New function for handling imf input.	
	(append_color_callback): New function for handling imf input.	
	* macconq.c (draw_meridians_setport): Remove prototype.
	(update_action_display): Restore old code (skip
	draw_meridian_setport call).
	(play_movies): Call update_cell instead of clear_unit_blast.
	(force_overall_update): Call force_map_update instead of
	force_update(map).
	* macconq.h: Clean out all the obsolete stuff that has
	accumulated here.
	(struct a_map): Add map->xwrap and map->leaky_grid.
	(BACKTTYPE): Define = -1.
	(backcolor): Define = featColor[0].
	(**current_colorscheme): Declare here instead of in maccolors.c.
	(update_cell): New function declared. Several old ones removed.
	(set_map_focus): New function declared. set_focus removed.
	(set_map_angle): New function declared.
	(set_meridians): New function declared.
	* macdefs.h (miViewMeridians): Define.
	(miDrawLatLong): Remove. Renumber remaining items.
	(dMeridians): Add new dialog with items.
	* macdraw.c (draw_cell_block): Add support for BACKTTYPE.
	(draw_cell_block): Add support for customized unseencolor.
	(draw_hex_region): Add support for BACKTTYPE.
	(draw_hex_region): Add support for customized unseencolor.
	(draw_legend_text): Tweak name erasing fix from 4 to 3 pixels.
	(draw_legend_text): Add case 256 for feature names at max magnifiction.
	* macgworld.c (rotate_angle_up): Prototype new function.
	(rotate_angle_down): Prototype new function.
	(scroll_map_window): Fix big offset bug.
	(scroll_map_window): Support map->xwrap.	
	(copy_from_gworld):	Rewrite and simplify. Support map->xwrap.
	(copy_clipped_to_map): Add clipping for gworld edge.
	(update_resized_map): Support backcolor.
	(update_gworld): Support map->xwrap.
	(cell_is_in_gworld): Support map->xwrap.
	(handle_numeric_keypad): Support cmd-jump for normal arrow keys.
	(handle_numeric_keypad): Call rotate_angle_up and rotate_angle_down.
	(rotate_angle_up): New function for setting view angle.
	(rotate_angle_down): New function for setting view angle.
	(set_meridians): New Dialog for map-specific meridian settings.
	* macmap.c (draw_feature_names): Declare static.
	(update_grid_leakage): Declare static.
	(create_map): Initialize map->xwrap.
	(create_map): Call update_grid_leakage.
	(create_map): Add smart meridian interval code.
	(set_map_focus): New function. Replaces set_focus in maccmc.d.
	(set_map_angle): New function. Partially replaces do_set_view_angle.
	(force_map_update): Call update_grid_leakage.
	(update_grid_leakage): New function. Updates map->leaky_grid.
	(draw_window_background): Add support for backcolor.
	(draw_window_background): Fix grid_matches_unseen bug.
	(draw_map_content): Call draw_feature_names.	
	(draw_feature_names): New function. Draws feature names globally.
	(draw_meridians_setport): Not used any more. Remove.
	(draw_meridians): Rewrite for use with update_cell.
	(draw_meridians old code): Remove iffed out kernel callback code.
	(draw_area_background): Fix 2 grid_matches_unseen bugs.
	(draw_unit_blast): Call cell_is_in_gworld.
	(clear_unit_blast): Not used any more. Remove. 
	(draw_selections): Call cell_is_in_gworld.
	(draw_selections_at): Call cell_is_in_gworld.
	(draw_selected_unit_setport): Not used any more. Remove. 	
	(erase_selection): Not used any more. Remove.
	(erase_selections): Not used any more. Remove.
	(draw_unselected_unit): Not used any more. Remove.
	(update_cell_display): Rewrite. Let update_cell do all work.
	(update_cell): New function. Replaces all the above.
	(draw_unit_names_only): Remove redundant city code at low
	magnification.
	* macmenus.c (do_menu_command): Add Background to Colors menu.
	(do_menu_command): Call new set_meridians Dialog in mViewMap.
	(do_menu_command): Fix other-map bug in mViewAngles by calling
	set_map_angle.
	(do_menu_command): Remove miDrawLatLong (replaced by new Dialog).
	(moveonclick_mi): Fix toggle bug by calling draw_control_panel.
	(adjust_menus): Remove miDrawLatLong.
	(adjust_menus): Fix crashes when quitting without front window.
	*macmouse.c (toggle_map_plans): Always call force_map_update.
 	(do_mouse_down_map_content): Call update_cell instead of
	erase_selection.
	(do_mouse_down_map_content): Call set_map_focus instead of
	set_focus.
	(unselect_all): Rewrite. Call update_cell instead of
	erase_selections.	
	(select_all_units_in_rect): Call draw_selections instead of
	draw_selected_unit_setport.
	* macprefs.c (default_draw_latlong): Change to TRUE.
	(default_latlong_interval): Change to 300.
	(interp_mac_ui_data): Add support for backcolor.
	(ui_update_state): Add support for backcolor.
	(set_preferences): Fix set_default_side_colors bug.
	* macrow.c (cell_terrain): Add BACKTTYPE support.
	(cell_style): Add support for redrawing window background.
	(draw_row): (both versions) Remove call to draw_feature_name,
 	add support for map->leaky_grid.
	(draw_terrain_row): Rewrite and simplify. Support redrawing
	of window background.
	(cell_update): Remove function and prototype.
	(draw_feature_name): Remove function and prototype.
	(draw_units): Remove redundant city code at low magnification.
	* macwins.c (current_colorscheme): Move declaration to macconq.h.
	* XconqProj.rsrc (DLOG 806 "Set Meridians"): New dialog.	
	(DITL 806 "Set Meridians"): New dialog item list.
	(MENU 136 "Map View"): Add "Meridians" item.
	(MENU 216 "Grids & Boxes Popup"): Remove "Lat & Long grid" item.
	(MENU 707 "Side Pref Popup"): Add "Pick Side" item.
	(MENU 708 "Features Pref Popup"): Add "Pick Feature" item.
	* Xconq.r: Update from XconqProj.rsrc to reflect the above changes.

Tue Dec  1 19:13:16 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* tkisamp.c: New file, "image sample" widget.
	* tcltk/Makefile.in (OBJS): Add tkisamp.o.
	* tkconq.h (enum tooltypes): Add materialpainttool etc.
	(UI curpeoplenumber, curcontrolnumber, etc): New slots.
	(Map anim_state): New slot.
	* tkmain.c (initial_ui_init): Search for tcl file near library.
	(tk_u_image_name, etc): New C procs for tcl code to use.
	(tk_help_goto): Return node class also.
	(tk_set_design_data): Add more painting types.
	(hack_find_imf): New function.
	* tkmap.c (MapW bg_border): Rename from bgBorder.
	(set_tool_cursor): Handle missing cursor case.
	(handle_designer_mouse_down): Add more painting types.
	* tkconq.tcl (add_new_game_dialog_items): New proc.
	(popup_game_dialog): Use it.
	(new_game, popup_variants_dialog, etc): New procs.
	(animate_selection_cmd): New proc.
	(do_initial_setup): Call it periodically.
	(create_map_window): Use imfsample widget for emblems and units.
	(update_mouseover, map_xscroll_set, map_yscroll_set): New procs
	to call from C code.
	(create_help_window): Make topic selection work.
	(add_help_topic_key, update_help): New procs.
	(popup_design_palette): Set up imfsamples, add more controls.
	(dbg_set_design_data, cycle_design_data): Similarly.

	* wconq.c, xconq.c (main): Call initial_ui_init after parsing
 	args.

	* intro.g: Base it on the standard game rather than using a
	unique set of rules.

Tue Nov 24 17:30:36 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* tkconq.h (enum tooltypes, enum movie_type, struct a_movie): New.
	(UI cursors): New slot.
	* tkcmd.c (do_dir, do_dir_multiple, do_fire, do_fire_into,
 	do_recenter, do_wake, do_wake_all, do_design): Implement.
	* tkinit.c (init_cursors): New.
	(init_bitmaps): Add combat splats.
	* tkmain.c (ui_init): Set dside correctly.
	(tk_game_info): Return more game info.
	* tkconq.tcl (popup_game_dialog): Improve generally.
	(create_map_window): Parametrize more, adjust positionings.

	* win/Makefile.in, win/configure.in: Clean out X11 junk.
	* wconq.c: Similarly.

Mon Nov 16 17:18:36 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* tkconq.tcl: Hide the main window.
	(create_map_window): Popup the map window.
	(make_normal_bindings): Bind only the map window.
	(set_map_cursor): Remove, no longer used.
	(popup_design_palette, make_design_tool, etc): New procs.
	* tkmain.c (tk_ttype_name, tk_set_design_tool, etc): New functions.
	(tk_mouse_over_cmd): Add designer painting ability.
	(update_side_display): Handle NULL side.
	(schedule_movie, play_movies): Make work.
	* tkmap.c (MapW blastsx, etc): New slots, add code to draw/erase
	hit "blast" images.
	(handle_designer_mouse_down, paint_on_drag): New functions.
	
Mon Nov 16 17:13:31 1998  Hans Ronne  <ronne@bmc.uu.se>

	* macconq.c (draw_meridians_setport): Declare extern.
	(extern int numwindows): Move declaration to macconq.h.
	(extern WindowPtr *winmenuwins): Move declaration to macconq.h.
	(handle_event): Move FrontWindows != NULL check after menu commands.
	(adjust_cursor): Fix failure to update mouseover when scrolling or
 	zooming.
	(stagger_window): Don't stagger new window if previous postion now
 	is empty.
	(update_action_display): Call draw_meridians_setport for each map.
	* macconq.h (typedef a_list): Add short list->id.
	(worldmapwin, worldmap, frontmap, numwindows, mapnum): Declare.
 	(create_map): Add int id to prototype.
	* macdefs.h (miFileConnect): Change to item 3. 
	(miFileClose): New Item 5.
	* macgworld.c (scroll_list_using_key): Declare extern.
	(handle_numeric_keypad): Support scrolling in list window.
	(handle_numeric_keypad): Support use of normal arrow keys for
	scrolling.	
	(auto_scroll_left_arrow): New static function.
	(auto_scroll_right_arrow): New static function.
	(auto_scroll_up_arrow): New static function.
	(auto_scroll_down_arrow): New static function.
	* macinit.c (init_display): Use int mapnum++ in create_map call.
	* maclist.c (draw_list): Fix clipping bug.
	(draw_list_headings): Draw dividing line.
	(draw_unit_list_entry): Draw dividing line.
	(list_vscroll_fn): Eliminate headings flicker.
	(list_hscroll_fn): Fix scrolling bug.
	(scroll_list_using_key): New function.
	(create_list): Support list->id for list number cleanup.
	(destroy_list): Clean up list numbers.
	* macmap.c (worldmap): Move declaration to macconq.h.
	(frontmap): Move declaration to macconq.h. Initialize instead.
	(mapnum): Move declaration to macconq.h. Initialize instead.
	(draw_meridians_setport): New function. Declare extern for use
	in macconq.c.
	(create_map): Add new World Map code.
	(create_map): Turn on name erasing if named mobile unit exists.
	(draw_top_line): Fix flickering of bottom line.
	(destroy_map): Move call to draw_related_maps before cleanup
	of map list.
	(destroy_map): Add new World Map code.
	* macmenus.c (numwindows): Move declaration to macconq.h.
	Initialize instead.
	(add_window_menu_item): Add new World Map code.
	(do_menu_command): Add Close Window option.
	(do_menu_command): Add new World Map code.
	(adjust_menus): Add Close Window option.
	(adjust_menus): Add new World Map code.
	(adjust_menus): Fix miWindowsFirst bug.
	* macmouse.c: Remove obsolete declarations of mapnum and nummaps.
	* macwins.c (create_notice_window): Remove call to
	add_window_menu_item.	
	* XconqProj.rsrc (MENU 129 "File"): Move "Connect" to position 3.
	(MENU 129 "File"): Add new item 5 "Close" with cmd-W key.
	(MENU 132 "Play"): Change item 2 "City Dialog" key from cmd-D
	to cmd-C.
	(MENU 134 "Side"): Remove cmd-M key from item 4 "Move on Click".
	(MENU 135 "Windows"): Add cmd-M key to item 9 "New Map".
	(MENU 135 "Windows"): Add cmd-L key to item 10 "New List".
	(MENU 135 "Windows"): Change item 12 "World Map" key from
	cmd-W to cmd-D.
	(MENU 215 "TextPopup"): Change title of item 1 to
	"Draw Unit Names".
	(MENU 215 "TextPopup"): Change title of item 2 to
	"Draw Feature Names".
	(MENU 215 "TextPopup"): Change title of item 3 to
	"Use Optimized Font Sizes".
	(MENU 215 "TextPopup"): Change title of item 4 to
	"Erase Moving Names (slow)".
	(ALRT 1005 "Out of Memory Alert"): Autoposition to Alert.
	(ALRT 4000 "Two Button Alert"): Autoposition to Alert.
	(ALRT 4001 "One Button Alert"): Autoposition to Alert.
	(DLOG 137 "Reduce Screen depth"): Autoposition to Alert.
	(DLOG 160 "Mplayer", etc): Autoposition to Center.
	* Xconq.r: Update from XconqProj.rsrc to reflect the above changes.

Sun Nov  8 14:02:10 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* supply.c: Re-enable Dprintf until an actual bug occurs.

	* tkconq.h (Map): Add slots for input position.
	* tkcmd.c: Remove hint string from calls to ask_position.
	(cmd_error): Re-enable beepcount.
	* tkmain.c (tk_handle_modal_cmd): Remove.
	(tk_interp_key): New function, merges normal and modal keystroke
	handling.  Record mouse position at time of keystroke.
	(ask_unit_type, etc): Use braces to protect when passing to tcl.
	* tkconq.tcl (create_map_window): Use place instead of pack
	for leftside/rightside panes, add unitlist scrollbar.
	(create_map_menus): New proc.
	(update_game_side_info, update_game_side_score, update_unitlist):
 	New.
	(ask_bool_mode, ask_bool_done, etc): Simplify, don't use modal
	bindings.
	
Thu Nov  5 18:17:28 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* configure.in (host_tools): Add tcl and tk.
	* Makefile.in (all-tkconq): Add all-tcl and all-tk.
	(all-tcl, all-tk): New actions.

	* nlang.c (task_desc): Handle null task.
	* ui.c (unit_actually_visible): Move to here from tkmap.c.
	* unit.c (longest_shortest): New global.
	(shortest_unique_name): Compute it.

	* tcltk/Makefile.in (ALL_CFLAGS): Add includes to tcl/tk dirs.
	* tkconq.h (UI grid_color, etc): Rename slots to use underscores.
	* tkcmd.c (do_map): Add display commands.
	* tkimf.h (TkImage cmap): New slot.
	* tkimf.c (tk_make_color_pixmap): Make it work.
	* tkinit.c (init_bitmaps): Get some of the bitmaps.
	* tkmain.c (tkwin): Remove global.
	(update_mouseover): New function, split out from tk command.
	* tkmap.c: Add more map display options and decor.
	(MapW): Remove unused slots, add width and height.
	(config_specs): Add -cursor, -height, -width, -world.
	(mapw_cmd): Update slot inits.
	(mapw_widget_cmd): Make scrolling work.
	(mapw_configure): Fix sizing.
	(draw_feature_name): Make it work.
	* tkconq.tcl (create_map_window): Make window 4/5 of screen,
	tweak packing and sizing, pass sizes to map widgets.
	(update_unit_info): New proc.

	* x11/Makefile.in (TCLTK_LIB): Point at locally-build libraries.
	* xdraw.c (unit_actually_visible): Remove.

Sat Oct 24 16:08:41 1998  Hans Ronne  <ronne@bmc.uu.se>

	* gvar.def (g_grid_color): Set default to dark-gray.
	* plan.c (plan_random): Fix panic crashes by adding case
 	TASK_COLLECT.
	* run.c (run_research): Fix science dialog crashes.
	* supply.c (heap_insert): Fix compile error.
	* ui.c (get_generic_images): Declare extern for use in maccolors.c.
	(nearest_cell): Fix meridian drawing for non-cylindrical worlds.
	* unit.c (has_advance_to_build): Skip line that prevents giving
 	units to indep side.
	(int nextid): Initialize to 0 instead of 1 to prevent 0-unit
 	crashes in side_number.
	
	* actions.c, combat.c, move.c, mtype.def, run2.c, unit.c, unit.h,
 	utype.def, world.c, world.h, maccolors.c, macconq.c, machelp.c,
 	macimf.c, macinit.c, maclist.c, macmap.c, macmenus.c,
 	macmouse.c. macrow.c, macwins.c: Remove all the old double-slashed
 	change markers.

	* maccolors.c: Remove prototypes for create_ppat_color &
 	fill_in_empty_name.
	(init_side_colors): Skip check for empty_string(g_unseen_color)
 	that kills the quick grid.
	(get_generic_images): Declare extern for use in get_color.
	(get_color): Rewrite to handle imf colors correctly. Add 3d
 	parameter in get_img call.
	(set_feature_color): Skip check for empty_string(g_unseen_color)
 	that kills the quick grid.
	(create_ppat_color): No longer used. Remove.
	* macdefs.h: Redefine miMoreGiveUnit from 6 to 17.
	* macinit.c (init_display): Remove remains of old iffed out ICN#
 	plotting code.
	(init_terrain_images): Rewrite to handle imf colors correctly.
	* macmap.c (draw_meridians): Rewrite to speed up and fix error in
 	locating map origin.
	* macmenus.c (do_menu_command): Fix yet another world map bug.
	* macmouse.c (do_mouse_down_map_content): Prevent ctrl-click peeks
 	at enemy units unless debugging. Fix crashes when ctrl-clicking
 	without playable units.
	* macprefs.c (interp_mac_ui_data): Add meridiancolor &
 	contourcolor.  Fix incorrect order of textcolor, gridcolor &
 	unseencolor.
	(ui_update_state): Add meridiancolor & contourcolor.  Fix
 	incorrect order of textcolor, gridcolor & unseencolor.
	* macrow.c (draw_region): Fix compile error.
	* XconqProj.rsrc (MENU 133 "More"): Move "Give Unit" submenu from
 	item 6 to 17.
	* Xconq.r: Update from XconqProj.rsrc using DeRez and modern R
 	includes with system 7 positioning data enabled in WINDs, ALRTs &
 	DLOGs. Now also contains "scientist" PICTs.
	* XconqMWC.r: New file, needed to compile CodeWarrior projects
 	using Xconq.r.

Sat Oct 24 15:51:18 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* tkconq.tcl: Rename from conqtk.tcl, for consistency, plus
	make various fixes.
	(popup_game_dialog, set_map_cursor): New procs.
	* tkconq.h (UI mapdown): Remove, never used.
	(Map autoselect, move_on-click, worldw): New slots.
	(Map pxw, pxh, curx, cury): Remove no longer used.
	* tkcmd.c: Re-enable use of map->prefixarg.
	(tk_execute_command): Set map slots correctly.
	(do_map): Add !<cmd> as option to send arbitrary tcl commands.
	(do_survey): Set the correct flags.
	* tkinit.c (set_optional_colors): Set colors only if request
	succeeds.
	* tkmain.c (dside): New global, pointer to side with display.
	(tk_numgames, tk_game_info): New tcl commands.
	(tk_mouse_over_cmd): Clear display if mouse not in map.
	(draw_unit_info): Display unit's tasks.
	(init_redraws): Make sure more of map window up-to-date.
	(eval_tcl_cmd): New function.
	* tkmap.c (create_map): Fill in more slots.
	(enable_in_unit_type_list): New function.
	(save_cur, restore_cur): Remove, no longer needed.
	(mapw_widget_cmd): Add xview and yview commands.
	(x_nearest_cell, x_nearest_boundary): Remove, call generic
	functions directly.

	* xconq.c (main): Call ui_mainloop after popping up new game
	dialog.

Sun Oct 11 16:31:55 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* init.c: Remove redundant decl of curdatestr.
	* ui.h (VP draw_features_names): New slot.

	* conqtk.tcl (do_initial_setup): Remove call to create_map_window,
	now done from C code.
	(create_map_window): Add more menu items, add mouseover pane,
	progress items, world map pane.
	(update_side_progress): New proc.
	* tkconq.h (Map vp): Remove slot, no longer used.
	* tkcmd.c (do_map): Add more subcommands.
	(do_refresh): Implement.
	* tkinit.c (open_display): Don't add bitmaps to unit list here.
	* tkmain.c (tk_mouse_over_cmd): New function.
	(ui_init): Don't update unit lists yet.
	(update_side_display): Add score and progress display.
	(update_message_display): Implement.
	(place_legends): New function.
	* tkmap.c: Merge in contents of tkdraw.c, make it possible to
	draw two map widgets in a map.
	(widget_vp): New function, access to map's main viewport.
	* tkdraw.c: Remove.
	* tcltk/Makefile.in (OBJS): Remove tkdraw.o.

	* x11/Makefile.in (tkconq): Remove XOBJS from dependencies.
	* xtconq.h (Map drawfeatureboundaries, drawfeaturenames):
	Remove, using vp versions instead.
	* xdraw.c (draw_terrain_row): Use vp->draw_feature_names and
	vp->draw_feature_boundaries.
	* xmap.c (create_map, set_from_controls, update_controls): Similarly.
	
Wed Sep 30 21:07:43 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* conqtk.tcl: Add more menu entries, more modal interaction
	procs.
	* tkcmd.c (do_quit): Simplify.
	* tkdraw.c: Set properties of newly-gotten GCs explicitly.
	* tkinit.c (init_display): Set up unit type list bitmaps.
	(close_display): Remove, never used.
	* tkmain.c, tkmap.c: Various cleanups.

	Supply line support from Sami Perttu  <perttu@cc.helsinki.fi>:
	* kernel/supply.c: New file.
	* kernel/Makefile.in, kernel/Imakefile: Compile it.
	* table.def (supply-out-threshold, supply-out-max, etc): New
	tables.
	* unit.h (Unit s_flow, s_conn): New slots.
	(supply_inflow, supply_connectedness): New macros.
	* run2.c (run_turn_start): Call run_supply.
	* xdraw.c (draw_map_info): Report on supply line.
	* test/supply.g: Test game for supply.

Thu Sep 24 19:47:56 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* conqtk.tcl: Put main window creation into a proc, add scrollbars
	to map, add callback handlers for modes, add help dialog.
	* tkconq.h: Add interaction slots to Map.
	* tkcmd.c: Fill in the commands that require interaction to
	get additional data.
	* tkmain.c: Add help and modal interaction commands.
	* tkmap.c: Add ask_* and grok_* functions similar to X11
 	interface.

Sat Sep 12 14:07:52 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* ui.c (parse_long_name_command): Handle newlines in command.

	* tcltk/Makefile.in: Add more dependencies.
	* conqtk.tcl: Default window to most of screen, improve packing,
	set up unit type list, etc.
	* tkconq.h: Use XColor * for colors, add more properties to maps.
	* tkcmd.c: Use per-map curunit.
	* tkdraw.c: Enable/modify more of the inherited X11 code, use
	Tk_GetGC to get GCs everywhere.
	* tkimf.c: Make solid color handling work.
	* tkinit.c: Use XColor * for colors everywhere.
	* tkmain.c: Add some more commands.
	(update_unit_type_list): New function.
	* tkmap.c: Add mouse input handling.
	
Fri Sep  4 17:13:41 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* tcltk/Makefile.in: Add .h dependencies.
	* conqtk.tcl: Add View Closer and Farther menu items.
	* tkcmd.c: Impl do_zoom_in, do_zoom_out.
	* tkconq.h, tkdraw.c, tkmap.c, tkmain.c
	* tkimf.c. tkimf.h: New files, Tk-specific image handling.
	* tkinit.c: New file, Tk interface initialization.

	* x11/Makefile.in (tkconq): Don't link in XOBJS.

Mon Aug 31 19:53:11 1998  Stan Shebs  <shebs@andros.cygnus.com>

	First version of a tcl/tk-based interface to Xconq.
	* tcltk: New directory.
	* tcltk/Makefile.in, tcltk/configure.in, conqtk.tcl, tkcmd.c,
	tkconq.h, tkdraw.c, tkmain.c, tkmap.c: New files.
	* configure.in (host_tools): Add tcltk.
	* Makefile.in (all-tkconq, all-tcltk): New actions.

	* x11/Makefile.in (TCLTK_LIB, TKUI_LIB): New variables.
	(XTOBJS): Rename from XOBJS, remove xconq.o, add xtmain.o.
	(xconq): Link xconq.o explicitly.
	(tkconq): New target.
	* xtconq.h: New file, Xt-specific parts of xconq.h.
	* xcloseup.c, etc: Include it instead of xconq.h.
	* xconq.c: Move Xt-specific code to xtmain.c, call new
	generic UI functions (initial_ui_init, ui_mainloop, etc).
	(init_all_displays): Move to here from xinit.c.
	* xtmain.c: New file.
	
Mon Aug 31 19:39:06 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* cmd.def (Wlog): New command.
	* cmd.c (do_warning_log): New function.
	* read.c (read_warning): Add ability to log warnings.
	* util.c (warnings_logged, ewfp): New globals.
	(log_warning): New functions, writes warnings to file.
	(init_error, etc): Call it.
	
	* mkterr.c (name_geographical_features): Allow a class name that
	is different from a specific name of a feature type, pass to
	specific generators.
	(name_highest_peaks, name_islands, name_lakes, name_bays): Add and
 	use name argument.
	(name_islands): Use regions to identify.
	(water_point): Remove, no longer needed.

	* run.c (end_the_game): Allow all sides to see everything.
	* run2.c (run_spies): Simplify code.
	(run_accidents): Interp accident damage table as a dice spec.

	* ancient.g: Add help info, commented-out advance tables.
	* flattop.g: Make atoll a liquid type.
	* standard.g: Update feature-types.

	* refman.texi: Describe feature-types variable more accurately,
	update info about accident-damage.
	
	* PROJECTS: Add various ideas, reflect above changes.

Mon Aug 17 18:22:43 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* unit.c (type_can_sit_on_conn): New function.
	* actions.c (check_create_at_action): Use it.

	* mkterr.c (name_geographical_features): Use more temp vars,
	add cases for islands and bays.
	(name_highest_peaks): Interpret a density parameter.
	(name_islands, name_bays): New functions.
	(name_lakes): Use regions to find lakes.
	* world.h (TRegion, TRegionLink): New types.
	(Area regions): New slot.
	* world.c (region_list, numregions): New globals.
	(region_value, divide_into_regions, add_neighbor): New functions,
	machinery to divide area into regions of uniform type.
	* macrow.c (draw_region): New function, debug display for terrain
	region computation.

	* gettysburg.g: Default day/night variant to true.
	* standard.g: Identify and name islands and bays.
	* stdterr.g (alt-smoothing): Reduce from 4 to 3.

	* PROJECTS: Remove item about stdplay.c, will always want to
	tune generic AI to play standard game well, also reflect
	above changes.

Mon Aug 10 19:19:41 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* ui.c (nearest_cell): Don't dereference null fraction pointers in
 	debug print (thanks to Michael Firnau<mfi@techfak.uni-kiel.de>).
	
	* combat.c (attempt_to_capture_unit): Account for stack
	protection.
	* nlang.c: Use strcat and strcpy instead of sprintf where possible.
	(others_here_desc): Fix reporting of incomplete units.

	* macdraw.c (draw_cell_block, draw_hex_region,
 	draw_border_line_multiple, draw_connection_line_multiple): Fix
 	logic of drawing solid colors vs images.
	* macwins.c (draw_side_status): Erase progress bar if designing.

	* gettysburg.g (stack-protection): Let infantry and cavalry
	prevent artillery capture.
	* ww2-bn.g: Allow Allies to capture coastal artillery, let
	artillery only attack/defend via firing.

Thu Jul  9 18:59:23 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* kernel.h (execute_task_aux): Remove decl.
	* task.c (execute_task_aux): Get function to call from table.

	* ancient.g: New game, simulation of ancient civilizations.
	* fantasy.g (accident-damage): Define.
	* postmodern.g (accident-vanish-chance): Define.
	(event-notices): Define.

	* PROJECTS: Add misc ideas, remove color/silhouette merge item.

Tue Jul  7 19:13:14 1998  Stan Shebs  <shebs@andros.cygnus.com>

	Action and task to collect materials and deliver to another unit.
	* action.def (extract): New action type.
	* table.def (acp-to-extract, material-to-extract): New tables.
	* task.def (collect): New task type.
	* cmd.def (collect): New command.
	* actions.c (prep_extract_action, etc): New functions.
	* task.c: Alphabetize task manipulation functions.
	(do_collect_task, collect_test, etc): New functions.
	(execute_task_aux): Add collect case.
	
	* task.def: Include names of all task manipulation functions
	for each task type.
	* kernel.h, kpublic.h, unit.h: Include task.def to declare
	functions.
	* task.c (create_build_task): Add unit argument.
	(set_move_to_task): Add distance argument.
	* tp.c (net_push_move_near_task, etc): Change to
	net_push_move_to_task.
	(net_push_hit_task, net_push_specific_hit_task, etc): Change to
 	net_push_hit_unit_task.
	* mplayer.c, plan.c, task.c, tp.c, ui.c, xcmd.c, xmap.c, ccmd.c:
 	Change all callers.

	* gvar.def (grid-color, meridian-color, unseen-color): Set to
	black.
	* combat.c (do_overrun_action): Handle withdraw and surrender
	chances.
	* read.c (CHECK_INDEX_1, etc): Improve text of warning.
	* ui.c (give_supplies): Add ability to give to adjacent units.
	* unit.c (change_unit_type): Call init_supply.
	* world.c (change_terrain_type): Reset material in cell.

	* maccmd.c (do_keyboard_command, etc): Use dside->prefixarg.
	(describe_keyboard, describe_text_commands): Remove.
	(do_collect): New function.
	* macdraw.c (draw_hex_region): Fix tests for unseen color case.
	* machelp.c (create_help_window): Use generic command help
	functions.
	* macmenus.c (apply_to_all_selected): If no map or list in
	front, find and use a random map.

	* xcmd.c (do_collect): New function.
	* ccmd.c (do_collect): Ditto.

Thu Jun 25 18:33:16 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* run.c (has_advance_to_research): Simplify.
	* unit.c (has_advance_to_build): Simplify, also return false for
	indep side.

	* xconq.c (unit_advance_dialog, global_advance_dialog): Add
	default (auto-pick) implementations.

Wed Jun 24 18:16:01 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* cmd.c (CmdTab): Comment out unused argtypes field.
	* generic.c (init_types): Don't clear utypes etc twice.
	* nlang.c (shortest_side_title): Add pluralnoun case.
	* read2.c: New file, overflow from read.c.
	* read.c (interp_utype_value_list, etc): Move to read2.c.
	* types.c: Add a comment.
	* ui.c (set_contour_interval): Declare.
	* Makefile.in, Imakefile (OBJS): Add read2.o.

	* macciv.c: Rename "science" to "advance" everywhere.
	* maccolors.c (set_default_colors): Fill from GDL variables.
	(build_colors_menu, build_side_menu): Use shortest_side_title.
	(fill_in_empty_name): Remove, no longer needed.
	* machelp.c, macwins.c: Clean up change comments.
	* macimf.c: Update calls to get_img.
	* macinit.c (init_unit_images): Update call to get_unit_type_images.
	* macrow.c (draw_contours): Use vp->contour_interval.

	From Hans Ronne	<ronne@bmc.uu.se>:
	* run.c (global_advance_dialog): Declare extern.
	(run_research): Set all involved cities to "Idle" when advance has
 	been completed, call global_advance_dialog instead of
 	unit_science_dialog.

	* macdefs.h (miSideGlobalAdvance): New menu item.
	(dGlobalAdvance): New dialog with items.
	(MAXPROJMENUS): Define.
	* macciv.c (global_advance_dialog): New function.
	* macmenus.cc(do_menu_command): Call global_advance_dialog.
	(adjust_menus): Enable miSideGlobalAdvance if advanced units exist.
	* macmouse.c (do_mouse_down_map_content): Enable ctrl-clicking
	on non-advanced units, call global_advance_dialog instead of
	unit_advance_dialog.

	* XconqProj.rsrc (CNTL 712 "Science Popup no Title"): New control.
	(DITL 805 "Global Science"): New dialog item list.
	(DLOG 805 "Global Science"): New dialog.
	(MENU 130 "Edit"): Remove command key Z for unused Undo command. 
	(MENU 132 "Play"): Add dots after "City Dialog".
	(MENU 134 "Side"): New item "Science Dialog". Set command key to Z.

Mon Jun 22 19:25:37 1998  Stan Shebs  <shebs@andros.cygnus.com>

	Rename "science" to "advance" everywhere.
	* atype.def: New file, was stype.def.
	* config.h, conq.h, game.h, generic.c, help.c, help.h, init.c,
	keyword.def, lisp.c, lisp.h, mknames.c, module.c, plan.c, read.c,
	run.c, side.c, side.h, table.def, tables.c, types.c, unit.c,
	unit.h, write.c: Rename "stype" to "atype", and so forth.

	* gvar.def (contour-color): Default to saddle-brown.
	(country-border-color): Default to pink.
	(meridian-color): Make default empty.
	* history.c (record_event): Reorganize notification.
	(notify_event): Add standard notifications.
	* ui.c, ui.h (imf_describe_hook): New global.
	(describe_imf): Move to here from xinit.c, make generic.

	* xconq.h (UI contour_color): Rename from contourcolor.
	(UI country_border_color, feature_color, etc): New slots.
	* xconq.c (update_event_display): Remove notification code,
	now in history.c.
	* xdraw.c (draw_meridians): Use side->ui->meridian_color.
	(draw_feature_name): Use feature_color.
	(draw_country_border_line): Use country_border_color.
	(draw_map_info): Reorganize initial tests.
	* xinit.c (init_display): Set imf_describe_hook.
	(set_colors): Init new color slots to defaults.
	(set_optional_colors): Init new color slots to global var values.
	(init_emblem): Remove call to get_default_emblem.
	(get_default_emblem): Remove, no longer needed.
	(x11_describe_image): New function.

	* cdraw.c (show_side_list): Use short_side_title.

	* PROJECTS: Remove redundant item about patrolling.

Sun Jun 14 13:56:18 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* xconq.c, cconq.c (unit_science_dialog): Define placeholders.

Sun Jun 14 13:45:48 1998  Hans Ronne	<ronne@bmc.uu.se>

	* maccolors.c, macconq.c, macconq.h, macdraw.c, macgworld.c
 	macimf.c, macinit.c, macmap.c, macmenus.c, macprefs.c, macwins.c:
 	Clean up and remove all double-slashed change markers.

	* keyword.def (science): Define keyword.
	(science-type): Define keyword.
	(s*): Define keyword.
	* mtype.def (m_resource_icon): Define.
	* utype.def (advanced): Define.
	* stype.def: New file, stype property definitions.	
	* table.def (ss_needed_to_research): Define.
	(us_needed_to_build): Define.
	(sm_consumption_per_rp): Define.
	(um_consumption_per_cp): Define.
	(um_consumption_per_size): Define.
	(um_consumption_to_grow): Define.
	
	* config.h (MAXSTYPES, INITMAXSTYPES): Define.
	* conq.h (set_s_type_name, etc): Prototype.
	* game.h (NONSTYPE): Define.
	(typedef enum Typetype): Add STYP = 3.
	(extern short numstypes): Declare.
	(typedef struct stype): Declare.
	Declare all functions accessing and setting stype properties.
	Include "stype.def" (new file).
	Declare table accessor functions and globals for stype support.
	(extern Stype *stypes): Declare.
	(extern PropertyDefn stypedefns[]): Declare.
	(for_all_science_types): Define macro.	
	(for_all_possible_science_types): Define macro.
	(checks): Define macro.
	(is_science_type): Define macro.	
	(extern short canaddstype): Declare.	
	(extern short tmpstype): Declare.
	(extern void stype_error): Prototype.	
	(extern void default_science_type): Prototype.
	(extern Obj *get_s_extension): Prototype.
	* actions.c (make_unit_complete): Kick out enemy users from cell.
	(can_have_enough_acp): Always return TRUE for advanced unit.	
	* civ.c: New file, advanced unit and science code.
	* combat.c (capture_unit): Kick out enemy users from cell.
	* generic.c (short numstypes): Declare.
	(short canaddstype): Initialize.
	(stype_error): New function.
	(Stype *stypes): Declare.
	(int curmaxstypes): Initialize.
	(init_types): Add stype support throughout function.
	(default_science_type): New function.
	(index_type_name): Add stype support.
	(allocate_table): Add stype support.
	(numtypes_from_index_type): Add stype support.
	* help.c (static void describe_stype): Prototype.
	(create_game_help_nodes, describe_game_design, describe_utype):
 	Add stype support.
	(describe_stype): New function.
	* help.h (enum nodeclass): Add stypenode.
	* init.c (short tmpstype): Declare.
	(check_game_validity): Add stype support.
	* lisp.c (new_stype): New function.
	(c_number): Add stype support.
	(stypep): New function.
	(numberishp): Add stype support.
	(equal): Add stype support.
	(fprintlisp): Add stype support.
	(sprintlisp): Add stype support.
	* lisp.h (enum lisptype): Add STYPE.
	(extern Obj *new_stype): Prototype.
	(extern int stypep): Prototype.
	* mknames.c (gen_from_rule): Add stype support.
	* module.c (load_game_module): Add stype support.
	(add_to_stypesset_s_type_name): Prototype.
	(lazy_bind): Add stype support.
	* move.c (move_unit): Kick out enemy users from cell.
	* plan.c (make_plausible_random_args): Add stype support.
	* read.c (init_predefined_symbols): Add stype support.
	(mtype_from_name, stype_from_name, ttype_from_name): New functions.
	(interp_form): Add stype support.
	(interp_stype, fill_in_stype): New functions.
	(INDEXP): Add stype support to macro definition.
	(add_properties): Add stype support.
	(add_to_stypes, interp_stype_value_list): New functions.
	* run2.c (run_advanced_units): Declare extern.
	(compute_advanced_acp): Declare extern.
	(run_turn_start): Call run_advanced_units.
	(compute_moves): Call compute_advanced_acp.
	* side.c (create_side): Add stype support.
	* side.h (typedef struct a_side): Add stype support.
	* tables.c (TableDefn tabledefns[]): Add stype support.
	Define many new accessor functions for stype support.
	* types.c (PropertyDefn stypedefns[]): New function.
	Define all functions for scientific advance properties.
	Include "stype.def". 
	* unit.c: Initialize defaults for advanced city support.
	(has_science_to_build): Declare extern.
	(free_used_cells): Declare extern.
	(create_unit): Modify for advanced city support.
	(type_allowed_on_side): Call has_science_to_build.
	(enter_cell): Kick out enemy users from cell.
	(kill_unit_aux): Call free_usedcells.
	* unit.h: Declare defaults for advanced city support.
	(typedef struct a_unit): Modify for advance city support.
	* world.c (allocate_area_terrain): Allocate user layer.
	* world.h (typedef struct a_area): Add user layer.
	(user_defined, user_at, set_user_at): New macros.
	(cell_is_within_n_steps, cell_is_within_reach,
 	for_all_cells_within_n_steps, for_all_cells_within_reach): New
 	macros.
	* write.c (write_stype_value_list):  New function.
	(write_types, star_from_type, name_from_typ): Add stype support. 
	 
	* macconq.h (typedef struct a_map): Add map->drawsizes.
	(typedef struct a_list): Add list->drawsizes.
	(extern int default_drawsizes): Declare.
	(extern void draw_unit_size): Prototype.
	* macdefs.h (OkButton): Define.
	(CancelButton): Define.
	(mBuildPopup): New menu.
	(mSciencePopup): New menu.
	(dCity): New dialog with items.
	(dScience): New dialog with items.
	(miPlayCityDialog): New menu item.
	* macciv.c: New file, advanced unit and science interface for mac.
	* machelp.c (insert_newlines): Change \n to \r also #ifdef __MWERKS__
	(set_help_content): Change \n to \r also #ifdef __MWERKS__
	* maclist.c (create_list): Initialize list->drawsizes.
	(draw_unit_list_entry): Optionally call draw_unit_size.
	* macmap.c (create_map): Initialize map->draw_sizes.
	(draw_selected_unit): Optionally call draw_unit_size.
	* macmenus.c (city_dialog): Declare extern.
	(do_city_dialog_mi): Prototype.
	(do_menu_command): Call do_city_dialog_mi.
	(do_city_dialog_mi): New function.
	(adjust_menus): Disable miPlayCityDialog.
	(enable_commands_for_unit): Enable miPlayCityDialog.
	* macrow.c (draw_units): Optionally call draw_unit_size.
	(draw_unit_and_occs): Optionally call draw_unit_size.
	* macmouse.c (city_dialog): Declare extern.
	(unit_science_dialog): Declare extern.
	(do_mouse_down_map_content): Ctrl-click opens city & science dialogs.
	* macwins.c (draw_unit_closeup): Optionally call draw_unit_size.
	(append_notice): Change \n to \r also #ifdef __MWERKS__
	(append_scores): Change \n to \r also #ifdef __MWERKS__
	
	* XconqProj.rsrc (cicn 2010-2146): Many new cicns. 
	(CNTL 710 "Build Popup"): New control.
	(CNTL 711 "Science Popup"): New control.
	(dctb 803 "City"): New dialog color table.
	(DITL 803 "City"): New dialog item list.
	(DITL 804 "Science"): New dialog item list.
	(DLOG 803 "City"): New dialog.
	(DLOG 804 "Science"): New dialog.
	(MENU 132 "Play"): New item "City Dialog".
	(MENU 710 "Build Popup"): New menu.
	(MENU 711 "Science Popup"): New menu.
	(PICT 4001 "Mad Scientist"): New picture. 
	(PICT 4002 "Busy Scientist"): New picture.
	(PICT 4003 "Idle Scientist"): New picture.	 

Sun Jun 14 13:10:32 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* ui.c (plot_meridians): Draw meridian labels midway between
	intersections.

	* xdraw.c (meridian_text_callback): Make it actually draw text.

Thu Jun 11 19:35:19 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* keyword.def (silhouette): New keyword.
	* imf.h (Image): Change most int slots to short.
	(Image style): New slot.
	(ImageFamily preferred_style): New slot.
	* imf.c (get_img): Add style arg, change all callers.
	(interp_image): Interpret silhouette keyword.
	(best_image): Search for matching style as well as size.
	* ui.h (VP num_contours, contour_interval, linebuf): New slots.
	* ui.c (new_vp): Init contour line parameters.
	(set_contour_interval): New function.
	(init_contour_lines): Remove.
	(contour_lines_at): Use viewport slots instead of globals.
	(get_unit_type_images): Remove style arg and related code.
	* ps.c: Use for_all_images.

	* xcmd.c (do_map): Add options to control color vs silhouette
	images, contour interval.
	* xdraw.c (draw_contours): Update for ui.c changes.
	* ximf.c, xutil.c: Update get_img calls.
	* xinit.c: Update get_unit_type_images call.
	(describe_imf): Mention tileness and style.
	* xmap.c (create_map): Prefer silhouettes for unit type buttons.

	* std-c.imf: Remove, merge contents into standard.imf.
	* imf.dir: Update.

	* PROJECTS: Reflect above changes.

	* kernel/Imakefile (OBJS): Add cmd.o.

Tue Jun  9 20:05:15 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* imfapp.c (make_imf_resources): Don't make resources out of
	synthesized images.
	* maccmd.c (do_distrust, do_doctrine, do_down,
 	do_force_global_replan, do_release, do_run, do_set_rate,
 	do_submit, do_trust, do_gdl, do_debug, do_debugg, do_debugm):
 	Remove, now generic.
	* maccolors.c: Use g_unseen_color everywhere.

Mon Jun  8 19:23:23 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* side.h (Side ai_may_resign, prefixarg): New slots.
	* ai.c (try_to_draw, give_up): Actually do if allowed to.

	* cmd.c (autofinish_start, autofinish_count): Move here from
 	cconq.c.
	(do_ai_side): Add +, - args to set AI permissions.
	(do_distrust, do_doctrine, do_down, do_force_global_replan,
 	do_release, do_run, do_set_rate, do_submit, do_trust, do_gdl,
	do_debug, do_debugg, do_debugm): New functions, generic versions.
	* ui.c (force_global_replan, generic_do_doctrine): Remove, now
	merged into generic commands.
	* util.c: Fix indentation.

	* x11/Makefile.in: Build imftk.
	* imftk.c, imftk.tcl: New files, new version of imf tool.
	* xcmd.c: Remove designer commands, and commands that are now
 	generic.
	* xconq.c (update_everything): Do XSynchronize if debugging
	graphics.
	* xmap.c (interp_key_command): Set prefixarg and beepcount.
	
	* ccmd.c: Remove designer commands, and commands that are now
	generic.
	(cmd_error): Beep only, if format string empty.
	* cconq.c (interpret_input): Set dside->prefixarg.

	* PROJECTS: Reflect above projects.

	From Hans Ronne <ronne@bmc.uu.se>:
	* maccolors.c (default_max_bufx): Increase to 600.
	(init_side_colors): Init grid color here.
	* macimf.c (mac_add_cicn): Fix to avoid heap fragmentation.
	* macinit.c (launch_game): Similarly.
	(init_terrain_images): Remove grid color init.
	(reinit_all_emblem_images, init_unit_cicns, init_emblem_cicns,
	dispose_emblem_cicns): Fix to avoid heap fragmentation.
	* macprefs.c: Ditto.
	* macmap.c (destroy_map): Fix world map disposal crash.
	(clear_unit_blast, draw_unselected_unit, update_cell_display): Fix
 	shoreline and grid drawing.
	* macrow.c (draw_row): Draw one more cell for grid/shoreline.
	(draw_gridlines, draw_shorelines): Optimize toolbox calls.
	
Fri Jun  5 17:08:47 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* gvar.def (contour-color, country-border-color, feature-colors,
	frontline-color, meridian-color, shoreline-color, side-colors,
	unit-name-color): New globals.
	(unseen-image-name): Remove.
	* mtype.def (color): Remove, never used.
	
	* cmd.c: Update decls.
	(key_commands_help_node, long_commands_help_node): New globals.
	(execute_long_command): Rename from execute_named_command,
	fix a bug.
	(describe_commands, describe_command_table): Remove.
	(describe_key_commands): New function.
	* help.c (describe_utype, describe_mtype): Don't describe color.
	* ui.c (get_unseen_images): Use g_unseen_color.
	* ui.h: Declare command handling functions and globals.

	* xconq.h (UI contourcolor): New slot.
	(UI neutcolor): Remove.
	* xcmd.c: Use only generic bits from cmd.c and ui.h.
	(do_help): Use new command help nodes.
	(do_map): Add contour-color control.
	* xdraw.c (draw_contours): Use side->ui->contourcolor.
	(draw_feature_boundary): Use graycolor instead of neutcolor.
	* xinit.c (set_colors, set_optional_colors): Set up contour
	color.

	* ccmd.c (cmd_error): Add side argument.
	* cconq.c (commands_help_node): Remove.
	(init_interaction): Update to new help nodes.
	* cconq.h (execute_command, etc): Remove decls.
	* cdraw.c (linear_char): Change to backslash.
	(draw_type_list_entry): Tweak the format.

	* PROJECTS: Reflect above changes.

Wed Jun  3 19:17:53 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* cmdline.c: Add options -V0 and -Vfalse.

	* greek.g: Rename |siege engine| to siege-engine, make money
	more important to construction plans, make more types of units
	dependent on money, tweak some combat probs, allow supply
	redistribution, add action-notices.
	* pelops.g: Add more hoplites and triremes to initial setup.

	* xconq.texi: Put curses info last.
	* commands.texi: Document run command.
	* curses-sect.texi: Reorganize, remove curses-only commands.
	* x11-sect.texi: Reorganize, remove X11-only commands, add
	description of intro game play, fix details of options.

	* cmd-diff.sh: Update to reflect command reorg.
	
	* PROJECTS: Add some random ideas.

	From Hans Ronne <ronne@bmc.uu.se>:

	* maccolors.c (set_default_color,
 	set_default_side_colors,init_side_colors): Fix for m68k Macs.
	* macrow.c (draw_row): #ifdef out the single-loop version,
	slightly slower.
	* macwins.c (side_rename_dialog): Update call to
 	dissect_colorscheme.
	
Mon Jun  1 18:12:24 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* conq.h (cxp_desc): Declare.
	* nlang.c (cxp_desc): New function.
	* combat.c (elevation_blocks, found_blocking_elevation): Fix
	to work if terrain has thickness, but no elevations.
	* move.c (border_slide_possible): Declare.

	* cave.g: Add beholder, coins, improve names of types, experience
	gain for adventurer, reduced incidence of treasures.
	* fantasy.g: Major cleanup, fix names, construction, occupancy,
	spell effects, vision, and so on.
	* standard.g: Remove "test" variant.
	* terrain.imf: Change white in sea and shallows to light blue,
 	less garish.

	* test/Makefile.in (game-diff, game.uses): New actions.
	* game-diff.sh: New script.
	* game-uses.sh: Make work.
	* imf-diff.sh, imf-uses.sh: Small improvements.

	* xcmd.c (do_fire): Report failure of action usefully.
	* xdraw.c (draw_unit_info): Show cxp and morale if defined.
	
	Merge all keyboard commands into a single all-platform list.
	* kernel/cmd.c: New file, generic command handling and command
	functions.
	* cmd.def (flash, map, new-map, orders, run, side, unit,
 	world-map): New commands, collected from ccmd.def and xcmd.def.
	* ui.h: Declare all command functions.
	* kernel/Makefile.in (OBJS): Add cmd.o.

	* xcmd.def: Remove, no longer used.
	* x11/Makefile.in: Remove xcmd.def dependencies.
	* xconq.h: Don't declare command functions here.
	(UI curmap): New slot.
	* xcloseup.c, xconq.c, xmap.c: Update direct calls to command
	functions.
	* xcmd.c (execute_command, do_add_player, etc): Remove, now in
	generic code, remove map args from all functions, and use
	side->ui->curmap instead.
	(do_flash, etc): Renamed from X-specific versions.
	(do_map): New functions, includes all X-specific display controls.
	(cmd_error): Make globally visible.
	* xmap.c (interp_key_command): Fix args to execute_command.

	* ccmd.def: Remove, no longer used.
	* ccmd.c (execute_command, do_add_player, etc): Remove, now in
	generic code, add side args to all command functions.
	(do_map, etc): Renamed from do_c_show.
	* cconq.c (interpret_input): Pass side and char args to
 	execute_command.

	* macconq.h: Remove decls of command functions.
	* maccmd.c (execute_command, do_add_player, etc): Remove, now in
 	generic code, add side args to all command functions.
	* macgworld.c, macmenus.c, macmouse.c: Update direct calls to
 	command functions.

	* PROJECTS: Reflect above changes.

Thu May 28 20:05:49 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* cmd.def: Add commands from Mac-specific file.

	* maccmd.def: Delete, no longer needed.
	* maccmd.c (mac_commands): Delete.
	(execute_named_command, etc): Remove search for Mac-specific cmds.
	(do_escape, etc): Rename from do_mac_escape.
	(do_set_view_angle): Rename from do_mac_set_map_angle.

	* help.h (HelpNode textsize): Remove, never used.
	* help.c (get_help_text): Remove ref.
	* run.c (run_local_ai): Return a value.
	* world.c (compute_feature_centroid): Tweak test.

	* xinit.c (init_terrain_images): Find solid color correctly.

Thu May 28 20:00:29 1998  Hans Ronne <ronne@bmc.uu.se>

	* applestuff.h: No longer needed, remove from project. 
	* macconq.c (init_toolbox): Pump up 68K stack size to 64K.
	* macconq.h : Change dissect_colorscheme prototype.
	Remove prototypes of functions used only in macrow.c.
	* maccolors.c: Remove char **colorscheme.
	(set_default_colors): Remove allocation of colorsheme array.
	Remove allocation of side->colorscheme. Zero all colorschemes.
	Change default shoreline color to blue.
	(set_default_side_colors): Fix 68K colorscheme bug.
	(init_side_colors): Fix 68K colorscheme bug.
	(dissect_colorscheme): Remove unused arg & fix 68K colorscheme bug.
	* macdraw.c (make_cell_clip): Moved here from macmap.c.
	(draw_border_line_multiple): Draw only W, NW & NE border for each
 	cell.
	* macgworld.c: Add control strip routine descriptors from applestuff.h.
	* macmap.c: Now contains all map-related code not in macrow.c or
 	macmouse.c.
	(WRAP_SX): Rename to UNWRAP_SX everywhere.
	(WRAP_RECT): Rename to UNWRAP_RECT everywhere.
	(WRAP_POLY): Rename to UNWRAP_POLY everywhere.
	(SHIFT_ORIGIN): Remove. Now included in draw_selection_animation.
	(RESET_ORIGIN): Remove. Now included in draw_selection_animation.
	(draw_meridians): Enable new Mac-specific function, disable
 	generic code.
	(draw_other_map): Add UNWRAP comment.
	(clear_unit_blast): Modify for new draw_gridlines and
 	draw_shorelines.
	(draw_selection_animation): Include SHIFT_ORIGIN and RESET_ORIGIN
 	macros.
	(draw_unselected_unit): Modify for new draw_gridlines and
 	draw_shorelines.
	(update_cell_display): Modify for new draw_gridlines and
 	draw_shorelines.
	* macmouse.c: Renamed from macmap2.c, now contains mouse-related
 	code only.
	(WRAP_SX, WRAP_RECT, WRAP_POLY, SHIFT_ORIGIN, RESET_ORIGIN):
 	Remove macros. No longer needed in this file.
	(select_all_dragged_over): Remove all WRAP_RECT macro calls.
	(select_area_and_zoom): Remove all WRAP_RECT macro calls.
	* macrow.c: New file with draw_row and all the functions it calls.
	(WRAP_SX): Rename to UNWRAP_SX everywhere.
	(WRAP_RECT): Rename to UNWRAP_RECT everywhere.
	(WRAP_POLY): Rename to UNWRAP_POLY everywhere.
	(draw_row): Rewrite function. Use one single loop only.
	(draw_terrain_row): Change y0 to y.  Put data types in arg list.
	(cell_update): Put data types in argument list.
	(draw_cliffs): Fix multiple kernel macro wrapping bugs.
	(draw_contours): UNWRAP line drawing at date line.
	(draw_gridlines): Change from run-length to single cell drawing.
  	Change x0 to x, x to xw.  Rewrite for cliff support.  UNWRAP line
 	drawing at date line.  Fix multiple kernel macro wrapping bugs.
	(draw_shorelines): Change from run-length to single cell drawing.
  	Change x0 to x, x to xw.  Rewrite for cliff support.  UNWRAP line
 	drawing at date line.
	(draw_borders): Put data types in argument list.
	(draw_connections): Put data types in argument list.
	(draw_feature_boundary_simple): draw_simple_feature_borders
 	renamed.  Change from run-length to single cell drawing.  Change
 	x0 to x, x to xw.  Fix multiple kernel macro wrapping bugs.
  	UNWRAP line drawing at date line.
	(draw_feature_boundary): Put data types in argument list.
	Fix kernel macro wrapping bug.		
	(draw_feature_name): draw_legend renamed.  Put data types in
 	argument list.  Fix multiple kernel macro wrapping bugs.
	(draw_people_row): Put data types in argument list.  Change from
 	run-length to single cell drawing.  Change x0 to x, x to xw.  Fix
 	multiple kernel macro wrapping bugs.
	(draw_materials): Put data types in argument list.  Fix kernel
 	macro wrapping bug.
	(draw_units): Put data types in argument list.
	(draw_unit_and_occs): Put data types in argument list.
	(draw_ai_region): Put data types in argument list.
	Fix kernel macro wrapping bug.
	* macwins.c (side_rename_dialog): Change dissect_colorscheme call.

Thu May 28 19:20:42 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* table.def (mp-to-traverse): Allow -1 as value, make default.
	* move.c (border_slide_possible): New function.
	(do_move_action, check_move_action): Use it.
	(total_move_cost, total_entry_cost): Fix traversal cost
 	calculation.
	* task.c (do_move_to_task): Check for border slide possibility.
	(plausible_move_dir): Fix traversal cost calculation.

	* test/Makefile.in (all): Add desc of imf diff test.
	* imf-diff.sh: Make smarter.

	* aircraft.imf: Enhance some images.
	* ancient.imf (archer, hoplite, peltast): Add larger images.
	* dwellings.imf (village-maker): Remove.
	* fantasy.imf (bugbear, treasure-chest): New.
	(carpet, holy-man): Remove.
	* insects.imf (web-maker, worker-ant, web-2): Remove.
	(web): Use web-2 data.
	* misc.imf (breath, diplomat): Remove.
	* people.imf (adventurer): Improve appearance.
	(elite): Add larger image.
	(trooper, worker): Add masks.
	* places.imf (nuclear-plant, oil-platform): New.
	* sf.imf (space-station, spaceyard): New.
	* terrain.imf (hills): Add color.
	(question): Remove.
	* imf.dir: Update.

	* empire.g (mech-infantry): Use halftrack instead of halftrack-2.
	(recon-plane): Use sr71 image.
	(fortress): Use fort image.
	* fantasy.g, galaxy2.g, greek.g, mars.g, panzer.g, postmodern.g,
 	quest.g, time.g, ww2-bn.g, ww2-div-eur.g: Put image names on first
 	line of unit type forms.
	* insects.g (web): Use image "web".
	* quest.g: Scatter objects around.
	* space.g: Add more help info.
	* standard.g: Cosmetic changes.
	* stdunit.g (mp-to-traverse): Allow ships to traverse rivers.
	
	* xcdesign.texi, design.texi: Remove platform conditionals,
 	include *-dsect.texi directly, add info about feature naming and
 	people in countries.
	* doc/Imakefile, doc/Makefile.in: Update dependencies.
	* curses.texi, mac.texi, x11.texi: Remove, no longer used.
	* refman.texi: Fixed description of feature-types.

	* PROJECTS: Add more more ideas.

Tue May 26 20:05:52 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* Version 7.2.1 released.

	* ui.c (add_default_unit_image, etc): Return image family
	resulting from running interp_hook.
	(get_unit_type_images, etc): Replace imf with generated default.

	* xshowimf.c (show_image_families): Run interp_hook on all
	images.
	(magnify_bitmap): Reverse endianness before creating bitmap.
	(update_or_export_image): Run interp_hook on image.

	* game.dir: Remove u-midearth.

Thu May 21 18:14:22 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* NEWS, README, xconq.spec, version.h: Bump to 7.2.1.
	* INSTALL: Add cygwin32 build instructions.

	* imf.c (best_image): Don't magnify if largest image larger
	than 1/2 the desired size.

	* ximf.c (x11_load_imf): Return imf if one passed in.

	* macimf.c (mac_add_cicn): Don't unlock if cicn was already
	plotted once, never lock the resource handle.
	(mac_create_cicn): Flag a replacement cicn as not initialized.

Tue May 19 18:55:04 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* imf.h (ImageFamily ersatz, numsizes): Make short.
	* imf.c, imf.h (imf_load_hook, imf_interp_hook): Declare to
	return image family.
	* ui.c (get_generic_images): Never clone imf, expect hook
	functions to do it if necessary.

	* ximf.c, ximf.h (x11_load_imf, x11_interp_imf): Clone family
	if on new display, return image family.

	* macimf.c, macimf.h (mac_load_imf, mac_interp_imf): Return
	image family.

Mon May 18 18:20:31 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* gvar.def (side-library): Remove default init.
	* imf.c (write_synthetic_also): New global.
	(write_imf): Use it.
	(get_imf, get_image_file, interp_imf): Clarify warnings.
	(compute_image_bbox): Fix edge case.
	(image_pixel_at, set_image_pixel_at): Speed up slightly.
	(add_shrunken_image, add_magnified_image): Compute bbox,
	speed up.
	* mknames.c (set_g_side_lib_default): Remove, no longer needed.
	(make_up_side_name): If no side library, name sides A, B, etc
	strictly sequentially.
	* ui.c (plot_meridians): Fix roundoff error in lat/long report.
	(get_generic_images): Remove unused settings of `cloned'.
	(add_default_unit_image): New function.
	(get_unit_type_images): Call it, remove default_hook arg.
	(add_default_terrain_image): Call image interp_hook, Rename from
	generic_get_default_terrain_image.
	(get_unseen_images): Remove default_hook arg.
	(add_default_emblem_image): New function.
	(get_emblem_images): Call it, remove default_hook arg.

	* imfapp.c (miView4x4): Remove, no longer useful.
	(main): Set imf_load_hook and imf_interp_hook.
	(imf_callback): Fix args to mac_interp_imf.
	(draw_one_image): Position bbox using draw_as_unit_image return.
	(draw_as_unit_image): Don't scale image.
	* macconq.c (main): Set imf_load_hook and imf_interp_hook.
	* macdraw.c (draw_unit_image): Don't scale image, share fallback
	drawing code.
	(draw_side_emblem): Similarly.
	* macimf.h (MacImage cicn_inited): New slot.
	* macimf.c (Image minw, etc): Remove uses.
	(mac_interp_image): New function, was body of mac_interp_imf.
	(mac_interp_imf): New arguments, call mac_interp_image, convert
	Lisp to raw data, convert raw data to Mac objects.
	(mac_create_cicn): Ditto.
	(mac_create_ppat): New function, was part of mac_interp_imf.
	(mac_copy_bytes): New function, like memcpy but can pad to
	Mac object requirements.
	(mac_init_cicn): New function to do dummy PlotCIcon, was part
	of init_unit_cicns.
	* macinit.c (add_default_unit_image, add_default_terrain_image,
 	add_default_emblem_image ): Remove, no longer needed.
	(init_unit_cicns, etc): Move here from maccolors.c.

	* panzer.g: Give towns many more hp.
	* magnusvew.g: Start Russian and some German non-vehicular units
 	in vehicles.
	* rom-civ-war.g: Fix a couple color names.

	* PROJECTS: Reflect above changes, add items about civ emulation
	and some random ideas.

	From Hans Ronne <ronne@bmc.uu.se>:
	* applestuff.h (_ControlStripDispatch): Comment out.
	* maccolors.c [NEW_HEADERS]: Include ColorPicker.h instead of Picker.h.
	* macconq.h, macimf.c [NEW_HEADERS]: Include MacTypes.h instead of
 	Types.h, MacMemory.h instead of Memory.h, Gestalt.h instead of
 	GestaltEqu.h, omit Desk.h.
	* macgworld.c (scroll_map_window): Fix case of "tall" areas.
	(auto_scroll_left, etc): Fix cast in GetKeys call.
	* macmap.c (draw_meridians): Mac-specific function, workaround
	for bugs in generic version.
	* macmap2.c (toggle_map_topline): Add another case for update
	without scroll.

	From Raj Menon <rxmtemp@mcdata.com>:
	* SelFile/Dir.c: Add ifdef __CYGWIN32__.
	* unix.c: Don't include netinet/tcp.h if __CYGWIN32__.

Thu May 14 18:23:00 1998  Stan Shebs  <shebs@andros.cygnus.com>

	Add interface-independent image scaling.
	* kernel/Makefile.in: Add dependencies on imf.h.
	* imf.h (Image minw, etc): Remove, no longer needed.
	(Image synthetic): New flag.
	(ImageFamily hook): New slot.
	(for_all_images): New macro.
	* imf.c (add_shrunken_image, add_magnified_image,
	image_pixel_at, set_image_pixel_at): New functions.
	(imf_load_hook, imf_interp_hook): New globals.
	(clone_imf): Clear image family hook.
	(best_image): Handle tiles and regular images separately,
	create and return shrunken or magnified images if necessary.
	(largest_image): New function.
	* ui.c (get_generic_images, get_unit_type_images, etc): Remove
 	interp and load hook args, use globals instead, change all
 	callers.

	* ximf.h (X11ImageFamily): New structure
	(X11Image monodata, etc): Remove, slots never used.
	* ximf.c (tmp_valid, tmp_display, tmp_root_window): Move here
	from xinit.c.
	(init_x11_image): Init color image.
	(x11_load_imf, x11_interp_imf): Remove dpy and rootwin args, use
 	info stored in hook if possible.
	(x11_interp_image): New function, does bulk of work that was in
	x11_interp_imf.
	* xinit.c (tmp_display, tmp_root_windo): Declare instead of
	defining.
	(init_display): Set imf_load_hook and imf_interp_hook.
	(x11_interp_fn, x11_load_fn): Remove, no longer needed.
	* xshowimf.c (main): Set imf_load_hook and imf_interp_hook.
	(show_image_families, update_or_export_image): Call
 	imf_interp_hook if defined.
	(find_image): Remove, use find_img instead.
	* xutil.c (write_x11_bitmaps): Reverse bits before writing.

	* xdraw.c (unit_actually_visible): Succeed if side->see_all.
	(draw_unit_image): Allow scaled 8x8 drawing.
	(draw_side_emblem): Draw offset shadow if style 1.
	(draw_side_info): Give side emblem more area.

	* insects.imf (web-2): Rename from web2.
	* insects.g: Tweak to match.

	* PROJECTS: Reflect above changes, add Mac project to elim
	need for toolbox to scale anything.

Thu May  7 19:09:18 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* tp.c: Add some prototypes.

Wed May  6 19:24:59 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* init.c (check_game_validity): Tighten up synthesis methods
	check.
	* ui.c (generic_get_default_terrain_image): New function,
	generic version of default terrain image generation.
	(get_terrain_type_images): Call it.

	* xconq.h (UI pref_color_unit_images_: New slot.
	(UI unitw, unith): Remove, never used.
	* xinit.c (init_display): Remove setting of unitw and unith.
	(init_unit_images): Prefer color images.
	(get_default_terrain_image): Remove, now generic.
	(init_terrain_images): Remove call of get_default_terrain_image.

	* refman.texi, hacking.texi: Remove references to external
	synthesis programs.

	* PROJECTS: Genericize some Mac project ideas.

	From Massimo Campostrini:
	* xconq.spec: Fix pathnames.
	* xcloseup.c (get_unit_picture): Eliminate unneeded foreground
	set, fix arguments to draw_unit_image.
	* xutil.c (write_xpm_file): Fix call to palette parsing.

Tue May  5 18:02:29 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* conq.h (past_name_or_number): Remove decl.
	* mkunits.c (add_preexisting_units): Report possunits correctly.
	* nlang.c (side_and_type_name, past_unit_handle): Use
 	side_adjective.
	(unit_handle): Report side vs origside in a consistent way.
	(short_unit_handle): Report self-units correctly.
	(past_name_or_number): Remove, never used.
	(constructible_desc): Say "Tech" instead of just "T".
	* plan.c (force_replan): Check on existence of plan.
	* run2.c (run_unit_fates): Check both general and unit-type-specific
	lost-surrender flags.
	* score.c (side_loses): Fix check of people vs control sides.
	(score_variant_desc): Don't try to scan variants if none present.
	* tp.c (sendnow, outgoing, etc): New globals.
	(crossbuf): Remove.
	(struct q_entry): New structure, packet queue entry.
	(save_outgoing_packet, flush_outgoing_queue, etc): New functions.
	(send_packet): Save outgoing packet until ready to send.
	(receive_data): Save incoming packets if current packet unfinished.
	(net_set_unit_main_goal): Don't deref null goal.
	(receive_unit_prop): Create null goal if packet so indicates.
	* write.c (write_globals): Always write Lisp-valued globals.

	* xcmd.c (do_copying, do_warranty): Ensure node visibility.
	(aux_resign): Improve wording of query.
	(aux_resign_2): Loop until valid side received.
	* xconq.c (main): Tweak sendnow.
	(run_game_proc): Flush outgoing queue when possible.
	* xinit.c (init_terrain_images): Test for existence of image
	before testing for solid color.
	* xmap.c (ask_side, grok_side): Make them really work.
	
	* mars.g (water-ice): Fix image name.
	* ww2-eur-42.g: Give Jerusalem and Haifa to British.
	
	* PROJECTS: Whack some vague ideas, add some more definite ones.

Wed Apr 22 17:07:21 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* xconq.h (UI eimages_loaded): New slot.
	* xinit.c (init_emblem_images): Allocate it, also allocate
	emblem image space for the maximum possible number of sides.
	(init_emblem): Make globally visible, set eimages_loaded.
	* xconq.c (update_side_display): Init a side's emblem if it
	wasn't already done (such as when the side is newly created).

Mon Apr 20 19:36:10 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* mh-solaris (NET_EXTRA_LIBS): Define.
	* x11/Makefile.in, curses/Makefile.in: Use NET_EXTRA_LIBS when linking.

	* nlang.c (notify_doctrine): Handle emptiness better.
	* ui.c (generic_do_doctrine): New function.
	* ccmd.c, xcmd.c (do_doctrine): Call it.

	From Massimo Campostrini:
	* rom-civ-war.g: Put ships in ports.

Thu Apr  9 20:43:46 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* Version 7.2 released.

	* README: Bump to 7.2.
	* Xconq.r, IMFApp.r: Updated from current resource files.

Wed Apr  8 19:29:20 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* version.h: Bump to version 7.2.

	* xconq.texi, xcdesign.texi, playref.texi, gdlref.texi: Bump to 7.2.

	* run2.c (unit_revolt): Add argument to bypass prob testing.
	(lost_unit_surrender, maybe_surrender_lost_to): New functions.
	(run_unit_fates): Call them, reorganize to actually work.

	* xcmd.c (do_release, do_repair): Implement.
	* xcmd.c, ccmd.c (do_take_unit): Remove, no longer used.

	* stdunit.g (lost-vanish-chance, lost-surrender-chance,
	lost-revolt-chance): Set up so that most cities of a losing
	side stay around, so other players can grab.

	* refman.texi: Document various new forms.
	* x11-dsect.texi: Remove inaccurate bit about resources.

	* Local.config (SCORESDIR): Set.
	* lib/Imakefile (install): Set up SCORESDIR.

Mon Apr  6 19:38:14 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* score.c (interp_score_record): Add new records to front of list.
	(last_record): Remove, no longer needed.
	(get_scores): Indicate world circumference with lower-case 'w'.

	* cave.g: New types next, orc-hole, and pentagram to generate
 	monsters, plus associated build tables.
	* classic.g: Clarify the module's blurb.
	* crater-lake.g: Turn off see-all by default.
	* postmodern.g: Don't allow land units on water, limit stacking
	of cities, don't start with any villages, use more variables,
	
	* refman.texi: Mention default for zoc-range.

Sun Apr  5 23:12:40 1998  Hans Ronne  <ronne@bmc.uu.se>

	* macconq.h (for_all_windows): New macro.
	* maccmd.c (message_dialog): Call update_all_map_windows when done.
	* maccolors.c (set_side_colors, set_feature_colors,
 	set_terrain_colors): Call update_all_map_windows when done.
	* macconq.c (handle_event): Call update_window for new front
 	window.
	(close_window, connection_method_dialog, serial_port_dialog,
 	won_game_dialog, lost_game_dialog, game_over_dialog): Call
 	update_all_map_windows when done.
	(force_update): Remove BeginUpdate before call to update_gworld.
	* macdesign.c (feature_rename_dialog, designer_save_dialog,
 	designer_reshape_dialog): Call update_all_map_windows when done.
	* macgworld.c (copy_clipped_to_map, update_all_windows,
 	update_all_map_windows, update_all_visible_windows,
 	update_all_visible_map_windows): New functions.
	(scroll_map_window): Modified for better function.
	(copy_from_gworld): Rewritten for better function.
	(update_resized_map): Modified for better function.
	(update_gworld): Modified for better function.
	(set_offscreen_buffers): Call update_all_map_windows when done.
	* macmap.c (grow_map, zoom_maps): Update maps in background
 	immediately.
	* macmenus.c (do_menu_command): Call update_window for selected
 	windows.
	(do_about_box, find_location_dialog, find_unit_dialog): Call
 	update_all_map_windows when done.
	* macprefs.c (set_preferences): Call update_all_map_windows when
 	done.
	* macwins.c (do_mouse_down_construction): Call update_window for
 	selected windows.
	(unit_rename_dialog, message_dialog): Call update_all_map_windows
 	when done.

Wed Apr  1 19:39:30 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* macprefs.c (ui_save_state): Remove, never used.

Tue Mar 31 20:59:45 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* side.c (see_cell): Check for existence of people sides.
	* task.c (compare_directions): Ditto.

	* empire.g: Fix images for engineers & wasteland.
	* midway.g: Add a unit-defaults to get units back on the map.

	From Massimo Campostrini:
	* Imakefile (SUBDIRS): Add lib.
	* Local.config: Add definitions needed for installation to work.
	* curses/Imakefile, doc/Imakefile, x11/Imakefile (install): Add.
	* doc/Imakefile: Update to reflect player/design manual split.
	* xconq.spec: New file, basic RPM spec.

	* galaxy2.g: Removed oxygen material, added notices, adjusted
	various tables, added speed variation due to damage.

Sun Mar 29 19:12:40 1998  Hans Ronne  <ronne@bmc.uu.se>

        * macconq.h (FEATURES): Increase to 10.
        (contourcolor, meridiancolor): Define.
        * macconq.c (adjust_cursor): Fix frozen selection bug.
        (update_window): Fix map update bug.
	* maccolors.c (set_default_colors): Add support for contourcolor &
 	meridiancolor.
 	(set_side_colors): Handle non-white Dialog bkColor correctly.
        * macmap.c (draw_meridians): Use meridiancolor.
        (draw_contours): Use contourcolor.
        (draw_row): Put draw_contours before draw_gridlines, make sure
 	draw_gridlines is called if contours are drawn.
        (draw_control_panel): Set the port. 
	* macmenus.c (adjust_menus): Fix PPC crash on launch bug in 4 new
 	submenus.

Sat Mar 28 11:25:28 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* stdunit.g: Fix a closing quote.

	* conq.h, skelconq.c, xconq.c cconq.c (ui_save_state): Remove,
 	instead expect that UI maintains state in a ready-to-write form.
	* write.c (write_side_properties): No longer call ui_save_state.
	* xinit.c (init_display): Ditto.

	* tp.c (must_ack): Remove, no longer used.
	(receive_game_checksum): Don't send mismatches to master,
	exacerbates the situation.

	* imf.c (write_imf): Handle another case of a symbol color name.

Thu Mar 26 19:47:07 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* stdunit.g (out-length): Increase for bases and cities.
	* ww2-div-pac (action-notices, action-narratives): Define.

	* macmap.c (draw_control_panel): Set the grafport always.

	From Hans Ronne:
	* macconq.c (adjust_cursor): Handle a special case of autoselect
 	with no selected units.

	From Massimo Campostrini:
	* SelFile.c (errno etc): Don't define if __GLIIBC__.

Thu Mar 19 18:56:41 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* maccmd.c, macconq.c, macconq.h, macdefs.h, macdesign.c,
	macdraw.c, macimf.h, macinit.c, maclist.c, macmap.c, macmap2.c,
	macmenus.c, macprefs.c, macwins.c: Remove marker comments.
	
	* cmdline.c: Remove unused -mail option.

	* cconq.6in, xconq6in
	* cmdline.6in, x11-sect.texi: Updated doc of command-line options.

	* INSTALL: Mention differences in procedures between using
	imake and configure.
	* NEWS: Updated.

	* PROJECTS: Added a few new ideas.

	More improvements from Hans Ronne:
	* ui.h (VP wide_viewport): New slot.
	* ui.c (xform_cell, calc_view_misc): Use it.
	(contour_lines_at): Make endpoints join up exactly.
	* macgworld.c: Fix to handle correctly for cylindrical worlds.
	* macmap.c (WRAP_SX, WRAP_RECT, WRAP_POLY): New macros for
	handling wrapped worlds, use everywhere, also use wrapped x
	values in more places.
	(create_map): Set vp->wide_viewport.
	(draw_other_map): Draw extra frame if wrapping.
	(draw_meridians): Make the viewport temporarily, so as to
	draw more meridians.
	* macmap2.c: Similarly.

Thu Mar 12 19:06:34 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* Local.config (DATADIR, XC_X11LIBDIR): Define.
	(GLIBDIR, IMFLIBDIR): Remove.
	* curses/Imakefile, kernel/Imakefile, x11/Imakefile, (DEFINES):
 	Use DATADIR.
	* x11/Imakefile: App defaults Xshowimf -> XShowimf.
	(EXTRA_DEFINES): Remove no-longer-used definitions.
	* doc/Makefile.in: Fix path to syms.texi.

Tue Mar 10 20:07:46 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* kernel.h, plan.c (wake_unit): Remove unused arguments.
	* kpublic.h, tp.c (net_wake_unit): Ditto.
	* mplayer.c, plan.c, side.c, task.c, xcmd.c: Fix callers.
	* tp.c (receive_command): Interpret new form of wake_unit.
	* plan.c (init_unit_plan): Initialize to PLAN_PASSIVE instead
	of PLAN_NONE.
	(set_unit_plan_type): If setting to PLAN_NONE, set to
	PLAN_PASSIVE instead and force a complete replan.
	(execute_plan): Do nothing if PLAN_NONE.
	(plan_passive): Do intro game's auto-build here.
	(decide_plan): Remove, no longer used.
	* tp.c (net_run_game): Return amount done.

	* xconq.c (run_game_proc): Use net_run_game result.
	* xdraw.c (draw_units, draw_unit_and_occs): Fix visibility tests.
	(draw_side_emblem): Skip more code if no image.
	(draw_map_info): Put up more info if actual unit being viewed.
	* xinit.c (go_dialog, init_assignw_player): Handle null-player
 	case.
	
	* insects.g: Change "worker" to "ant", "field" to "grass",
	remove 1-letter type names, fix speed of immobile types.
	* rising-sun.g: Fix locations of towns and bases.
	* stdterr.g: Add a blurb.
	* u-e1-1938.g: Tweak some more locations, change Chinese
	names to transliterations used in the 1930s.
	* u-e1-1998.g: Fix "bare" variant, Adis Abeba name, Fuzhou
	location.
	* u-e50-1998.g: Fix Adis Abeba name, Ouagadougou location.
	* ww2-38.g, ww2-42.g, ww2s-42.g, ww2s-pac-41.g: Fix list of
 	Japanese occupations, misc locations of combat units.
	
	* test-save.sh: Filter out saved game bits that will always
	mismatch.

Thu Mar  5 19:43:05 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* cmdline.c (parse_command_line): Rename options to -sim and -seq
	from -sm and -sq, fix call to parse_realtime_option.
	(game_usage_info): Update to reflect, show default real-time
	values.
	(parse_realtime_option): Remove unused -timeout option.
	(set_variants_from_options): Add real-time variant settings.
	* nlang.c (report_combat_special, etc): New functions.
	(report_combat): Call it.

	* classic.g, fantasy.g, flattop.g, galaxy.g, galaxy2.g,
	insects.g, monster.g, old-empire.g, postmodern.g, stdunit.g,
	time.g, wizard.g (action-notices): Add destroy messages.
	* stdunit.g: Improve some unit notes.

	* doc/Makefile.in: Add $(srcdir)/ to file names.
	* commands.texi (idle, repair): Document commands.
	* glossary.texi: More terms, random clarifications.
	* play.texi: Update library file descriptions.
	* refman.texi (acp-morale-effect, mp-to-enter-own, etc): Describe.
	* xcdesign.texi: Move glossary and license after permuted index.
	* xconq.texi: Fix node links.
	* mac-sect.texi, x11-sect.texi: Ditto.
	* x11-sect.texi: Fix descriptions of command options.
	* hacking.texi, refman.texi, x11-sect.texi: Fill some ragged
 	paragraphs.

Mon Mar  2 18:53:28 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* syms.texi: Remove, always recalculate.

	* conq.h (daynight): Declare.
	* imf.c (interp_imf_contents, interp_image): Use for_all_list.
	* mkunits.c (add_preexisting_units, place_unit, expand_countries):
	New functions.
	(make_countries): Call them.
	* nlang.c: Use %d instead of %ld for ints.
	* plan.c (move_into_formation): Improve leader validity test.
	* side.c (compute_see_chances): Fix calculation of
	any_people_see_chances.
	(see_cell): Fix usage of see chances.
	* tp.c (net_designer_change_side, etc): Ensure result defined.
	* ui.c (xform_occupant): Fix nmy set.
	* actions.c, run2.c, side.c: Remove redundant decls.
	* move.c, nlang.c, plan.c, ui.c, unit.c, write.c, ccmd.c: Reindent
 	various functions.
	
	* x11/Makefile.in (X_H): Add all files included by xconq.h.
	* xdraw.c (tmpmap): Move to here from xcmd.c.
	(draw_meridians): Use plot_meridians.
	(meridian_line_callback, meridian_text_callback): New functions.
	(cellbuf): Remove, never used.
	(draw_terrain_row, draw_hex_polygon): Simplify shading tests.
	(draw_units, draw_map_info): Avoid drawing invisible units.
	(unit_actually_visible): New function.
	
	* u-e1-1938.g: Ownership tweaks, downrate minor places to bases.
	* u-e50-1998.g: Add towns for sides that don't have any.

	* PROJECTS: Add various ideas, remove Mac name display item,
	now done correctly.

Fri Feb 27 18:07:09 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* conq.h, nlang.c (latlong_desc): Add argument to display only
	one of latitude or longitude.
	* ui.c (oneliner): Tweak caller.
	(nearest_cell): Adjust fractional position.
	(plot_meridians): New function, generic code to space and plot
	meridians in a viewport.
	* world.c (xy_to_latlong, latlong_to_xy): Use floats for
	intermediate calculations.
	* mkunits.c (make_countries): Tweak test of possible_units to
	work in empty list case.

	* macmap.c (draw_meridians): Use plot_meridians.
	(meridian_line_callback, meridian_text_callback): New functions.
	
	* earth-1deg.g, earth-50km.g, t-e1-river.g, t-e50-river.g,
	u-e1-1998.g, u-e50-1998: Various additions and cleanups.
	* ww2-eur-42.g, ww2s-eur-42.g: Jerevan is Soviet.
	* nat-names.g: Comment out Swazis (too rural), add some preferred
	unit names for sides.

Tue Feb 24 19:49:28 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* relief.g: Define and use a smoother gradation of colors.

Mon Feb 23 19:06:14 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* Makefile.in (MAKEDIRS): Add subdirectories of installed lib dir.
	(install-dirs): Set ownership of scores directory.
	* lib/Makefile.in (GAMEUID, GAMEGRP, DIRPERM, FILEPERM): Set to
	standard values.

	* imf.c (smallest_image): Move here from ximf.c, change to use
	only one argument.
	* ui.c (xform_cell_fractional): Fix direction of y calculation.
	* world.c (xy_to_latlong, latlong_to_xy): Simplify and fix.
	* history.c, imf.c, side.c, ui.c: Cosmetic improvements.

	* xcmd.def (meridians): New command.
	* xcmd.c (do_x_meridians): New function.
	* xconq.h (usefontchars): Remove, no longer used.
	(SHOW_LATLONG): Define.
	(UI default_latlong_interval): New slot.
	(Map drawcellpats): Remove, never used.
	* xdraw.c (xform_fractional, draw_meridians): New functions.
	(draw_map_view): Use.
	(draw_terrain_row): Remove disabled cellpat and fontchars code.
	(draw_unit_image): Use emblem_position.
	(draw_side_emblem): For style 1, draw gray box sized to emblem.
	(draw_side_info): Clear scores before updating in place.
	* ximf.c (x11_load_imf): Simplify.
	(x11_interp_imf, x11_make_color_pixmap): Fix calls to
 	parse_lisp_palette_entry.
	* xinit.c (init_unit_images): Update use of smallest_image.
	* xmap.c (create_ctrlpanel, etc): Use SHOW_LATLONG.
	* macmap.c (draw_meridians): Remove bounds arguments, determine
	internally.
	(draw_gridlines): Fix direction.

	* intro.g: Add a fixed map and unit setup.

	* PROJECTS: Remove a X11 resource usage not worth bothering
	with, clarify savefile restart idea.

Fri Feb 20 17:50:04 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* init.c (make_trial_assignments): Don't assign any players
	to sides not in game.
	(assign_players_to_sides): Skip over sides with no players.

	* xconq.c (update_turn_display): Update all sides if end of game.
	* xdraw.c (draw_terrain_row): Set foreground color correctly.
	(draw_contours): Fix loop bounds.
	(draw_side_info): Cache window, don't draw scores of sides that
	were never in the game.
	(draw_side_progress): Blank out progress for sides not in game.
	* xinit.c (init_bitmaps): Don't set up 8x8 hex bitmaps.
	* bitmaps/hex8.b, bitmaps/hex8b.b: Remove, never used.
	* xmap.c (draw_game_state): Use curdatestr.

Wed Feb 18 19:08:01 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* u-e1-1998.g, u-e50-1998.g: Rename from 1996 versions.
	* mod-usa.g: Update.

	* SelFile/Makefile.in (clean): Remove library.
	* curses/Makefile.in, x11/Makefile.in (clean): Remove constructed
 	man page.
	* doc/Makefile.in (clean): Remove more files.
	* test/Makefile.in (clean): Ditto.
	
	* imf.c (write_imf): Use write_color more.
	(color_matches_mono): Fix to work with 1-color palette.
	(write_palette_contents): Write palette name if possible.
	(write_color): Generalize to be more widely useful.
	(parse_lisp_palette_entry): Use first arg, instead of its car.
	* imf.h (parse_lisp_palette_entry): Tweak decl.
	* ui.c: Add some comments.
	(xform_cell): Eliminate unused code.
	* mkterr.c (name_highest_peaks): Handle small areas correctly.
	* world.c (xy_to_latlong, latlong_to_xy): Various fixes.

	* xconq.h (enum controltypeenum): New value SHOW_COVER.
	(Map drawterrain, etc): Delete, use VP slots instead.
	* xconq.c (update_cell_display): Only update for certain layers
	if right flag set.
	* xdraw.c (cell_overlay): New macro.
	(draw_terrain_row): Use it, shade cells with overlay.
	(draw_hex_polygon): Ditto.
	* xmap.c (create_map, etc): Use VP slots.
	(create_ctrlpanel): Add coverage display button.
	(set_from_controls, update_controls): Use button.

	* macmap.c (draw_top_line, draw_unit_info): Rearrange drawing
 	order so as to flicker less.
	* macmenus.c (find_something): Add ability to find other
	sides' units if allowed.

	* earth-1deg.g: Add Siberian swamps, other small changes.
	* nat-names.g: Add misc nationalities, Bosnia, Eritrea,
	Swaziland, etc, and add preferred units to many sides.
	* t-e1-river.g: Various adjustments.
	* u-e1-1938.g: Synchronize with u-e1-1998.g, shrink some
	minor cities into towns, towns into bases.
	* u-e1-1996.g: Make at least one town for each side in
	nat-names.g, fix some locations and sizes.
	* u-e50-1996.g: Ditto.
	
	* flags.imf: Add flags for the new nationalities.

Tue Feb 17 18:23:29 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* u-e1-1987.g: Remove, good for nostalgia but not much else.

Fri Feb 13 17:31:47 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* world.c (any_thickness): New global.
	(count_terrain_subtypes): Compute it.

	* macmap.c (cell_terrain): Remove useless argument.
	(draw_cliffs): Fix to work if thicknesses but no elevations.
	* imfapp.c (miViewSolidColor): New menu item.
	(show_solid_color): New global.
	(draw_as_terrain_image): Use it.
	
	* terrain.imf (swamp): Make more green than blue.

Thu Feb 12 19:21:00 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* mkterr.c (make_maze_terrain, dig_maze_path): Rewrite to generate
 	guaranteed continuous maze.
	(dig_maze_path_between, etc): New functions.
	* world.c: Add some comments.

	* macdefs.h (diMessageTo): Fix value.
	(dMessageReceive): Remover, never used.

	* cave.g (maze-passage-density ): Set.
	* gazala.g (unit-storage-x, out-length, in-length): Fix contents.

	* lib-uses.h: Include subdirectory with module name.

	From Massimo Campostrini <campo@ipifidpt.difi.unipi.it>:
	* galaxy.g: Add hp recovery and repair, nebula effect on vision,
	adjust hp for moons and planets.

Tue Feb 10 19:11:22 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* run2.c (unit_revolt): Use oldside, add notices to sides.

	* greek.g: Use money, tweak variant name, add some text.
	* greek.g, napoleon.g: Fix default world size.
	* pelops.g: Add correct calendar, origsides for units that
	won't revolt, and some hoplites.
	* u-greek.g: Remove Thoricus.

Tue Feb 10 18:32:29 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* conq.h (curdatestr, sunx, suny): Declare.
	* history.h (enum damage_reasons): Add attrition_dmg.
	* ui.h (VP drawterrain, etc): New slots.
	* combat.c (damage_unit): Add argument, record attrition death.
	(rescue_occupants): Rewrite to not use retreat_unit.
	* lisp.c (escaped_symbol): Handle numeral case separately.
	* nlang.c (latlong_desc): Rename from latlon_desc, add
	arguments for cell fractions.
	(generic_oneliner): Remove.
	* read.c (interp_variant_defns): Improve variable names,
	handle missing id differently.
	* run.c (run_game): Improve real-time game test.
	* run2.c (run_turn_start): Remove season name formatting,
	add player warning if last turn in game.
	(run_restored_turn_start): Call compute_season.
	(run_turn_end): Add a progress note, test for end of game here
	instead of at turn start.
	(compute_season): Format contents of curdatestr here.
	* scores.c (record_into_scorefile): Use a more compact format.
	(interp_score_record): Adjust to match new format.
	(score_variant_desc): New function, was part of get_scores.
	* side.c (send_message): Add more feedback.
	* ui.c (xform_cell_fractional): New function.
	(nearest_cell): Rewrite to return cell fractions.
	(oneliner): Generic version from Mac interface.
	* world.c (compute_all_feature_centroids): Rewrite.
	(xy_to_latlon, latlon_to_xy): Rewrite to use cell fractions.

	* macconq.h (Map drawterrain, etc): Remove, now in ui.h.
	* macdefs.h (miFileColors): New item, was top-level Colors menu.
	* maccmd.c (message_dialog): Build side mask correctly.
	* maccolors.c (set_default_colors): Tweak grid and shoreline
 	colors.
	* macmap.c: Use map->vp-> instead of map-> for drawing options.
	(GO_OFFSCREEN, RETURN_ONSCREEN): Fix var ref.
	(xform_fractional): New function.
	(draw_meridians): New function.
	(draw_map): Call it.
	* macmap2.c (oneliner): Remove.
	* macmenus.c (init_menus): Set up colors menu as submenu.
	* macprefs.c (interp_mac_ui_data, etc): Use
 	default-latlong-interval instead of default-latlong-incr.
	* macwins.c (create_scores_window): Capitalize window name.

	* africa.g, beirut.g, classic.g, empire.g, fantasy.g, flattop.g,
 	fred.g, future.g, gazala.g, greek.g, insects.g, intro.g,
 	monster.g, mormon.g, old-empire.g, postmodern.g, sc4.g, wizard.g,
 	ww2-bn.g, ww2-div-eur.g, ww2-div-pac.g: Define liquid terrain
 	types.
	* fred.g, 1756.g, 1757.g: Adjust calendar data.
	* feb-1917.g, gettysburg.g napoleon.g, red-october.g, ww2-adv.g,
 	ww2-div-eur.g, ww2-div-pac.g (calendar): Define in standard way.
	* panzer.g: Add defaults to real-time variant.
	* u-e1-1996.g: Adjust Hiroshima location.
	
	* PROJECTS: Add assorted new ideas, remove some obscure X11 ideas.

Wed Feb  4 19:53:06 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* combat.c (reckon_damage): Add argument, suppress "miss"
	messages if damage due to attacker firing.
	* init.c (init_data_structures): Allocate curdatestr.
	* kernel.h, kpublic.h: Remove some unused decls.
	* run2.c (curdatestr): Move here from Mac code.
	(run_turn_start): Compute it.
	* world.c (find_feature): Handle 0 fid.
	(feature_at): Simplify.
	(paint_feature): Paint even if fid is 0 (removes feature).

	* maccmd.c (get_a_visible_unit): New function.
	(do_attack, do_fire): Use it.
	* macconq.c (small_font_name,etc): Remove, never used.
	(movies): Allocate dynamically.
	(curdatestr): Remove, now in generic code.
	(update_turn_display): Don't compute curdatestr.
	* macinit.c (init_ui): Don't allocate curdatestr.
	* macmap.c (draw_top_line): Clean up use of curdatestr.
	* macwins.c (draw_game_date): Ditto.

	* 1756.g, 1757.g: Set initial-year-part.

	* mac-dsect.texi: Clarify description of some of the tools.
	* mac-sect.texi: Remove Unix-oriented doc viewing info,
	describe firing better.
	* x11-sect.texi: Add doc viewing and printing info.
	* xconq.texi: Misc small changes.

	From Antoine Makhlouf <mahloaa@musc.edu>:
	* combat.c (one_attack): Don't allow automatic counterattack if
 	acp-to-defend is insufficient.

Mon Feb  2 18:42:50 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* ui.c (vp_latlon_to_xy): New function.

	* maccmd.c (do_take): Beep if no materials in game.
	* macprefs.c: New file, preferences code that was in macconq.c.
	* macdraw.c: Use blackcolor instead of setting up a black color.
	(draw_cell_block, draw_hex_region, draw_border_line_multiple,
 	draw_connection_line_multiple, draw_unit_name, draw_legend_text):
 	Add arguments instead of looking up map.
	(draw_terrain_sample): Decide solid/pattern locally.
	* macimf.c: Do ANSI-style function definitions.
	* macinit.c (hit_player_setup_dialog): Reinit emblem images when
	side is added or renamed.
	(reinit_all_emblem_images): New function.
	* macmap.c (WATER): Eliminate, use only t_liquid test.
	* macmap2.c (toggle_survey): Redraw selections when going to
 	survey mode.
	
	* xconq.h (enum grayshade): Add black as a shade.
	(UI boxcurs, boxmask): Delete.
	(Map anim_state): New slot.
	* xconq.c (animate_current_proc): New function.
	(main): Set up to call it periodically.
	* xcmd.c (do_submit): Implement.
	(do_take): Use common code in ui.c.
	* xdraw.c (draw_cursor_icon): Merge into draw_current.
	(draw_current): Reflect acp a la Mac interface, use anim_state
	for blinking, remove boxcurs/boxmask use.
	* xinit.c (init_bitmaps): Remove boxcurs/boxmask setup.
	* bitmaps/boxcurs.b, bitmaps/boxmask.b: Remove.

	* earth-50km.g, t-e50-river.g, u-e50-1996.g: Various adjustments,
	add preferred sides for some places.

	* PROJECTS: Reflect above changes, remove some uninteresting
	X11 and curses projects.

Mon Jan 26 19:14:20 1998  Stan Shebs  <shebs@andros.cygnus.com>

	* utype.def (acp-morale-effect, morale-recovery): New properties.
	* history.def (H_UNIT_TYPE_CHANGED, H_UNIT_NAME_CHANGED): Add
	second parameter.
	* combat.c (maybe_hit_unit): Make morale affect retreat chance.
	(capture_unit_2): Adjust morale.
	* nlang.c (historical_event_desc): Add case for when name change
	event seems bogus.
	* run2.c: Add debug prints, temp vars for various functions.
	(run_morale_recovery): New function.
	(run_turn_start): Call it.
	(compute_acp): Adjust acp according to morale effect.
	(damage_unit_with_temperature): Allow occupants to try to escape
	freezing.
	(run_unit_fates): Simplify.
	(maybe_detonate_accidently): Merge into run_detonation_accidents.
	* unit.c (change_morale): Move here from combat.c.

	* maccmd.c, macconq.h, macdefs.h, macdesign.c, macdraw.c,
 	machelp.c, macinit.c, maclist.c, macmap.c, macmap2.c, macmenus.c:
 	Remove change markers.
	* maccolors.c, macconq.c, macdraw.c, macgworld.c, macmap.c,
 	macmap2.c: Reformat new code to match rest of Xconq Mac code.
	* maccolors.c (featColor, sideColor, etc): Change from arrays to
	pointers.
	(set_default_colors): Allocate them dynamically, fill in by
	assignment.
	(set_default_side_colors): Ditto.
	(get_color): Cast img->hook correctly.
	* macconq.c (get_preferences): Lock down prefs resource when
	reading from it.
	* macdraw.c (draw_unit_image): Use get_sideColor macro.
	* maclist.c (toggle_list_sidecolors): Move here from maccolors.c.
	* macmap2.c (toggle_map_sidecolors, etc): Move here from maccolors.c.

	* earth-50km.g, t-e50-river.g: Various adjustments.

	* PROJECTS: Reflect above changes, whack some decided-useless
	items, add items for morale effect on retreat chance and
	command list merging.

Mon Jan 19 19:12:40 1998  Hans Ronne  <ronne@bmc.uu.se>

	* applestuff.h: New header file with Apple control strip routine
	descriptors. Needed in macgworld.c.
	* maccmd.c (do_recenter): Return if not in front window.
	(set_focus): Call scroll_map_window to do offscreen scroll.
	(do_mac_set_angle): Rewrite for offscreen graphics.
	* maccolors.c: New file, side color code.
	* macconq.c (PREFSIZE): New macro constant.
	(default_draw_names): Change to TRUE.
	(main): Call set_default_colors & check_screen_depth.
	small_font_id: Change to geneva.	
	large_font_id: Change to geneva.	
	images_refnum: Initialize new extern short.
	(get_files): Save images_refnum.
	(get_preferences): Call read_xcol.
	(save_preferences): Call write_xcol.
	(save_preferences): Change BUFSIZE to PREFSIZE.
	(interp_mac_ui): Add many new preferences.
	(ui_update_state): Add many new preferences.
	(draw_font_sample): Save and restore current font.
	(set_preferences): Add 3 new dialogs & many new preferences.
	(set_preferences): Fix bug in Files dialog.
	(set_preferences): Fix crashing bug in Fonts dialog.
	(set_preferences): Dispose of old cicns and init new ones if the unit
	image set was changed.
	(set_preferences): Update all maps if unified_cicns was changed.
	(add_preferences_topic_items): Add 3 new dialogs & many new 
	preferences.
	(event_loop): Fix crash when starting w/o instructions window.
	(handle_event): Fix crash when typing w/o open window.
	(handle_event): Call handle_numeric_keypad.
	(update_window): Call copy_from_gworld.
	(action_point): Call scroll_map_window to do offscreen scroll.
	(get_string_from_item): Change BUFSIZE to PREFSIZE.
	(force_update): Only redraw content region in map windows.
	* macconq.h: Include QDOffscreen.h.
	(a_map): Add support for offscreen graphics.
	(a_map): Add many new map parameters.
	(a_list): Add list->sidecolors.
	draw_unit_image: Add emblem parameter to prototype.
	Declare defaults for the new map parameters.
	Add prototypes for functions in maccolors.c.
	Add prototypes for functions in macgworld.c.
	Define macro constants for feature color names.
	Declare sideColors and all associated variables.
	do_recenter: Declare extern.
	do_mac_zoom_in: Declare extern.
	do_mac_zoom_out: Declare extern.
	do_mac_set_map_angle: Declare extern.
	sanitize_for_menu: Declare extern.
	images_refnum: Declare extern.
	prefs_refnum: Declare extern.
	* macdefs.h: mColors: New menu.
	mViewText: New submenu with items.
	mViewGrids: New submenu with items.
	mViewColors: New submenu with items.
	mViewBorders: New submenu with items.
	mSideColorPopup: New popup menu with items.
	mSideColorUse: New popup menu with items.
	mViewMap: Items reorganized & renumbered.
	mViewList: Add one item.
	dPreferences: Add 3 new subdialogs.
	dsPreferencesFiles: Many new items.
	dsPreferencesMap: Many new items.
	dsPreferencesFonts: Many new items.
	dsPreferencesOffscreen: New subdialog with items.
	dsPreferencesImageSets: New subdialog with items.
	dsPreferencesColorSchemes: New subdialog with items.
	dOffscreen: New dialog with items.
	dSideColor: New dialog with items.
	dFeatureColor: New dialog with items.
	dScreenDepth: New dialog with items.
	aNoMem: New alert with items.
	aOneButtonAlert: New alert with items.
	aTwoButtonAlert: New alert with items.
	* macdesign.c (draw_design_window_tool): Add emblem in call 
	to draw_unit_image.
	* macdraw.c: best_terrain_images: Declare extern.
	(draw_unit_image): Rewrite for side colors & offscreen graphics.
	(draw_side_emblem): Rewrite for offscreen graphics.
	(draw_cell_block): Support map->solid_color_terrain.
	(draw_hex_region): Support map->solid_color_terrain.
	(draw_border_line_multiple): Support map->solid_color_terrain.
	(draw_border_line_multiple): Modify for offscreen graphics.
	(draw_connection_line_multiple): Support map->solid_color_terrain.
	(draw_connection_line_multiple): Modify for offscreen graphics.
	(draw_feature_borders): Support featureColor.
	(draw_elevation, draw_temperature, draw_coverage,
	draw_unit_name): Support textColor.
	(draw_unit_name): Dont draw names at low magnification.
	(draw_legend_text): Rewrite for textmasks and optimized fonts.
	(draw_legend_text): Change scaling formula for scaled fonts.
	(draw_blast_image): Modify for offscreen graphics.
	(plot_sicn): Modify for offscreen graphics.	
	* macgworld.c: New source file with all the new offscreen code.
	* macimf.h: mac_load_image_color: Remove this unused 
	prototype which causes a link error.	
	* machelp.c (draw_help): Add emblem in call to draw_unit_image.	
	* macinit.c: Remove declaration of gridcolor and unseencolor.
	(launch_game): Call init_side_colors.
	(launch_game): Call init_unit_cicns.
	(launch_game): Call init_emblem_cicns.
	(launch_game_2): Call build_colors_menu.
	(init_display): Remove locked ICN handles that mess up the heap.
	(init_display): Check default_power and show_instructions.
	(init_terrain_images): Modify check for gridcolor = unseencolor.
	* maclist.c (create_list): Support list->sidecolors.
	(draw_unit_list_entry): Add emblem in call to draw_unit_image.	
	* macmap.c: WATER: New macro used in draw_shorelines.
	GO_OFFSCREEN: New macro for offscreen graphics.
	RETURN_ONSCREEN: New macro for offscreen graphics.
	(update_cell_display): Rewrite for offscreen graphics.
	(update_cell_display): Support for map-> erase_names.
	(create_map): Rewrite for offscreen graphics & new parameters.
	(set_content_rect): Do not offset contentrect.
	(set_map_scrollbars): Fix 32K limit bug by scaling the shorts.
	(grow_map, zoom_map, draw_map): Rewrite for offscreen graphics.
	(draw_window_background): Change contentrect to portRect, use
	gridcolor if everything is visible.
	(draw_map_content): Modify for offscreen graphics.
	(draw_map_content): Delete all area-minimizing code.
	(draw_map_content): Support map->draw_latlong.
	(draw_area_background): Use gridcolor if everything is visible.
	(draw_control_panel): Add 2 new toggle boxes.
	(draw_top_line): Support small_font_id.
	(draw_info_text): Support small_font_id.
	(draw_related_maps): Clip drawing to map content.
	(draw_related_maps): Draw both offscreen and onscreen.
	(draw_other_map): Handle scrolling across dateline.
	(draw_row): Support map->simple_borders, grid_matches_unseen,
	map->shorelines, map->featurenames.
	(draw_row): Change cutoff magnification for featurenames to hh > 3.
	(draw_terrain_row): Support grid_matches_unseen.
	(draw_unit): Fix leakage of dotdotdots into grid.
	(draw_unit): Support map->boxmasks and icon_mask_color[s].
	(draw_unit): Draw city names at uniform size & position.
	(draw_unit_and_occs): Fix leakage of grouping boxes into grid.
	(draw_unit_and_occs): Support map->boxmasks and icon_mask_color[s].
	(draw_unit_and_occs): Draw city names at uniform size & position.
	(draw_unit_and_occs): Use emblem in draw_unit_image call.
	(draw_people_row): Fix wrapping bug.
	(draw_people_row): Support frontlineColor.
	(draw_people_row): Support map->simple_borders.
	(draw_legend): Draw featurenames offset in featureColor and double size.
	(draw_unit_blast): Rewrite for offscreen graphics.
	(clear_unit_blast): Rewrite for offscreen graphics.
	(invert_map): Rewrite for offscreen graphics.
	(draw_selections): Rewrite for offscreen graphics.
	(draw_selections_at): Rewrite for offscreen graphics.
	(draw_selected_unit_setport): Rewrite for offscreen graphics.
	(draw_selected_unit): Handle transport + occ & 3d unit correctly.
	(draw_selected_unit): Remove mag lines which leaked into the grid.
	(draw_selection_animation): Handle transport + occ & 3d unit correctly.
	(draw_selection_animation): Handle new definition of contentrect.
	(draw_selection_animation): Also draw the black selection box.
	(erase_selection): Rewrite for offscreen graphics.		
	(erase_selections): Rewrite for offscreen graphics.		
	(draw_unselected_unit): Redraw names & shorelines correctly.
	(destroy_map): Clean up map ids and window numbers, trash the gworld,
	always dispose of the window, erase other-map boxes, zero map->id to
	show that it no longer exists.
	(oneliner): Support map->draw_latlong.
	(draw_simple_feature_borders, draw_shorelines, draw_gridlines,
	draw_unit_names_only): New functions.	
	* macmap2.c (map_scroll_fn): Rewrite for offscreen graphics.
	(do_mouse_down_map): Rewrite for offscreen graphics.
	(do_mouse_down_control_panel): Add two new buttons.
	(set_map_mag): Call draw_related_maps.
	(toggle_map_topline): Modify for offscreen graphics.	
	(toggle_map_topline): Support map->draw_topline.	
	(toggle_map_topline): Call draw_related_maps.	
	(toggle_map_topunit): Modify for offscreen graphics.	
	(toggle_map_topunit): Support map->draw_topline.	
	(toggle_map_topunit): Call draw_related_maps.	
	(do_mouse_down_map_content): Support control-clicking on map.
	(scroll_best_map_to_unit): Modify for offscreen graphics.
	(scroll_to_unit): Rewrite for offscreen graphics.	
	* macwins.c (side_rename_dialog): Handle color schemes.
	(draw_unit_closeup): Add emblem in call to draw_unit_image.	
	* macmenus.c: sanitize_for_menus now declared in macconq.h.
	colorsmenu: Declare new MenuHandle.
	(init_menus): Add Colors menu and 4 new View Map submenus.
	(do_menu_command): Add Colors menu & 4 View Map submenus.
	(do_menu_command): Use default_power in call to create_map.
	(do_menu_command): Fix worldmap-related crashes.
	(do_menu_command): Compute size of worldmap correctly.
	(do_menu_command): Modify for offscreen graphics.
	(do_menu_command): Support list->sidecolors.
	(do_find_location_mi): Use offscreen scrolling if possible.
	(adjust_menus): Add Colors menu & 4 View Map submenus.
	(adjust_menus): Support list->sidecolors.	
	* XconqProj.rsrc: New resources for preferences, side colors.
	DITL 701 "Preferences File Items" modified.
 	DITL 702 "Preferences Map Items" modified.
	DITL 703 "Preferences Font Items" modified.
	DLOG 700 "Preferences" modified.
	MENU 136 "Map View" modified.
	MENU 208 "List View" modified.
	MENU 701 "Small Font Popup" modified.
	MENU 703 "Large Font Popup" modified.
	PICT 130 "Map Controls TL" modified.

Mon Dec 29 17:34:07 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* cmd.def (^P): New command, unit repair.
	* mkunits.c (make_countries): Add some error checking, fix removal
	of isolated populations.
	* mplayer.c (estimate_strengths): Fix to know initial strengths
	accurately, prevents premature resignation.

	* macconq.h (ATTACK_MODAL): New mode.
	* macconq.c (adjust_cursor): Use it.
	* maccmd.c (do_attack): Move code here.
	(do_detonate, do_fire, do_fire_into): Use common code.
	(do_repair): New function.
	* macmap2.c: Include cmd.def and maccmd.def.
	(do_mouse_down_map_content): Add ATTACK_MODAL case, share mode
 	exit code.
	* macmenus.c: Enable Find Next Occupant only when unit selected.
	(do_move_mi, etc): Remove.

	* gazala.g: Add some help strings, fine-tune supply sources.
	* monster.g: Let fire departments repair buildings.
	* earth-50km.g, t-e50-river.g, u-e50-1996.g: Various adjustments.

	* PROJECTS: Remove/merge some items, reflect above changes.

Wed Sep 17 19:15:55 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* cmd.def (idle): New command.
	* tp.c (net_set_sentry_task): New function.
	* utype.def (generic-char): New unit type property.
	* unit.c (shortest_generic_name): New function.
	* nlang.c (others_here_desc, occupants_desc): Use it.
	* ui.c (get_generic_images): Only load imf dir once.
	* world.c (paint_border, paint_connection): Fix display update.

	* maccmd.c, xcmd.c, ccmd.c (do_idle, etc): New functions.
	* macmenus.c: Remove prototypes for nonexistent functions.

	* modern.g: Add city hp, steel consumption.
	* mod-usa.g: Set lat/long, adjust roads.
	* napoleon.g: Let leaders redistribute supply.
	* panzer.g: Define generic names for unit types.
	* u-e50-1996.g: Adjust Texas city locations.

	* PROJECTS: Reflect above changes, remove pointless library tasks.

Mon Aug 11 20:16:23 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* table.def (mp-to-enter-own): New table.
	* help.c (uu_table_row_desc): Add connective argument.
	* history.c (get_nth_history_line): Rewrite.
	(update_total_hist_lines, build_hist_contents): New functions,
	taken from Mac interface.
	* init.c: Remove warning about ZOC range.
	* mkunits.c (expand_country): Account for advantage when adding
	units.
	* move.c (in_blocking_zoc, zoc_move_cost): Handle ZOC range > 1.
	(test_blocking_zoc, zoc_cost_fn): New functions.
	* nlang.c (usual_date_string): Fix bug.
	* run2.c (run_attrition): Don't do attrition on incompletes.

	* macdefs.h (miMorePlanTypes, miMoreAIControl, miSideSendMessage,
	miPlanTypeNone, etc): New menu items.
	(miWeatherStorms): Remove.
	* maccmd.c (message_dialog): Add editable side-to field.
	* maclist.c (list_vscroll_fn): Fix rect size.
	* macmenus.c (init_menus, etc): Add unit plan type submenu, AI
 	control message send menu items.
	(do_plan_type_mi, do_one_plan_type): New functions.
	(enable_commands_for_unit): Filter out dead units.
	* macwins.c (set_history_scrollbar, etc): Rewrite history list
 	handling, move some code to history.c.
	(draw_historical): Merge from event and date drawing.
	
	* gettysburg.g: Increase infantry ZOC range to 2.
	* greek.g: Increase a and c hp, add attrition and accidents.
	* insects.g: Restore commented-out attrition table.
	* standard.g: Add unit growth to large country variant.

	* PROJECTS: Reflect above changes, remove some mystifying items.

Sun Jul 27 16:43:58 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* mac.c (close_scorefile_for_writing): New function.
	* system.h (close_scorefile_for_writing): Add decl.
	* score.c (get_scores): Don't list total playings if same as
	count for the one player.
	* nlang.c (rel_short_side_title, etc): Remove, never used.
	(parse_usual_date): Add more cases.
	
	* africa.g: Add more types of animals, food and food effects.
	* animals.imf: Images for new types of animals.
	* misc.imf (crown): Move here from people.imf.
	* people.imf (explorer): New image.
	* imf.dir: Update to reflect changes.
	
	* mac-sect.texi: Add more info.

	* PROJECTS: Update to reflect above changes.

Wed Jul  9 19:37:20 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* imf.c (color_matches_mono): Fix test.
	(emblem_position): New function.
	* imfapp.c (draw_one_image): Call it.
	* macdraw.c (draw_unit_image): Ditto.

	* */Makefile.in (datadir): Default to $(prefix)/lib/xconqdir,
	fix installation ownership tweaking.
	* unix.c (default_library_filename): Use new pathname.
	(open_scorefile_for_writing): Set uid.
	(close_scorefile_for_writing): New function, resets uid.
	* score.c (write_scorefile): Call it.
	* xconq.c (main): Set uid.

	Split manual into player and designer manuals.
	* xcdesign.texi: New file.
	* xconq.texi: Restrict to only player info.
	* design.texi: Reword introductory section.
	* curses-sect.texi: Update nodes and menus.
	* doc/Makefile.in: Reorganize lists of files and actions.

	* kwic.c: Sort more thoroughly.

	* coral-sea.g, fred.g, etc: Improve the blurbs.
	* greek.g (cp-on-creation, cp-per-build): Redundant, remove.
	* normandy.g: Use symbols for units, add British airborne.
	* sf.imf (asteroid-belt, etc): New images.
	* imf.dir: Update.

	* PROJECTS: Reflect changes.

Thu Jul  3 18:31:15 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* metz-1944.g, ob-nor-alld.g, ob-nor-axis.g: Use symbols instead
	of numbers to identify each unit.
	* ob-nor-axis.g: Fill in more German divisions.

Thu Jun 26 20:20:45 1997  Stan Shebs  <shebs@andros.cygnus.com>

	From Keir Novik <ken21@cam.ac.uk>:
	* ng-ships.g: Add many more ship names, including destroyers
	and Soviet battleships.

Thu Jun 26 19:22:34 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* mtype.def (description-format): Remove, was useless.
	* ttype.def (description-format): Ditto.
	* help.c (describe_mtype, describe_ttype): Remove refs.
	* utype.def (type-in-game-max, type-per-side-max): Fix bounds.
	* lisp.c (eval_number): Move here from read.c.
	* nlang.c (unit_handle): Add handling of description-format.
	(plan_desc): Make normal descriptions more succinct, describe
	formation.
	(goal_desc): Describe formation goal better.
	* plan.c (plan_desig): Make info relate to struct better.
	* read.c (fill_in_features): Robustify feature list parsing.
	* run2.c (unit_revolt): Don't let units revolts to sides that
	have never seen them.

	* macdraw.c (draw_unit_image): Use improved algorithm for emblem
	placement.
	* macmap.c (draw_unit_info): Remove formation description.
	* macwins.c (calc_construction_rects): Increase width of type
	subarea.

	* beirut.g: Adjust imagery and vision.
	* gettysburg.g: Add description formats, tweak names of multi-part
	units.
	* space.g: Add gas giants, several types of stars, workable
	construction and occupancy rules, and star name generation.
	* wizard.g: Use type names instead of letters, fix occupancy
	rules, add stacking.

	* refman.texi: Fix doc of features and description format.
	* mac-sect.texi: Document preferences, more menu items, and
	construction window.

	* INSTALL: Mention CFLAGS and LDFLAGS.
	* PROJECTS: Reflect above changes, add some ideas.

	From Michael Firnau <mfi@techfak.uni-kiel.de>:
	* xutil.c (parse_xpm_colors): Fix misuse of strcmp.

Wed Jun 11 20:49:46 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* actions.c (check_research_action): Test um_to_research.
	* combat.c (capture_unit): Add argument.
	(one_attack): Record attacks.
	* run2.c: Fix callers of capture_unit.
	* gvar.def (zz-run-serial-number): Add internal name indication.
	* history.c (record_unit_side_change): Record surrenders also.
	* imf.c (interp_image): Handle embed-size property.
	* move.c (move_unit): Add disabled code to record movement.
	* nlang.c (historical_event_desc): Add surrender description.
	
	* xcmd.def (pattern, solid): New commands.
	* xcmd.c (do_build): Fix test of building while an occupant.
	(do_x_prefer_pattern, do_x_prefer_solid_color): New functions.
	* xconq.h (UI pref_solid_color_terrain): New slot.
	* xconq.c (main): Move possible game collection into
 	popup_game_dialog.
	* xdesign.c (update_curutype): Fix.
	* xdraw.c (draw_units): Adjust position of stack indicator.
	(draw_unit_image): Add argument to alter appearance of image.
	(draw_side_info): Draw score info.
	(draw_side_progress): Adjust sizes, draw amount in reserve.
	* xcloseup.c, xmap.c: Fix callers of draw_unit_image.
	* xinit.c (init_terrain_images): Fix search for color data.

	* macconq.c (interp_mac_ui_data, ui_update_state): Remember font
 	sizes.
	* macdraw.c (draw_hex_region): Improve solid color drawing test.
	* macinit.c (init_terrain_images): Find solid color directly,
	not by looking for "best" image at 1x1.
	* macmap.c (draw_unit_info): Describe formation.

	* macwins.c (seed_side_rename_string, get_side_rename_string): New
 	functions.
	(side_rename_dialog): Call them.
	(preferred_closeup_size): Space closeup text more closely.
	(draw_unit_closeup): Format more like to map unit info.

	* emblems.imf: Improve some backgrounds.
	* terrain.imf: Pick some better solid colors, simplify desert,
	remove soggy terrain (same as flooded).
	* midearth.g (see-occupants): Remove, only sets to default.
	
	* commands.texi: Remove T command.
	* mac-sect.texi: Move doc of @ to here from commands.texi, fix
	definitions of zoom-in/out.
	* x11-sect.texi: Describe "pattern" and "solid" commands.
	* refman.texi: Describe recent GDL changes.

	* PROJECTS: Reflect some changes above, remove a couple excessive
 	ideas.

	* all.g: Update for recent GDL changes.
	* cmd-diff.sh: Add info about the interface defining each command.

Fri May 30 17:43:59 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* imf.h (find_color_name): Make visible to all.
	* imf.c (write_imf): Handle more solid color possibilities.
	(parse_lisp_palette_entry): Recognize more color names.

	* macimf.c (mac_add_ppat): Improve heuristics for solid color
	vs mono patterns.
	(interp_ctab): Recognize more color names.
	(make_generic_image_data): Handle colors correctly.

	* imfapp.c (draw_as_terrain_image): Draw solid colors correctly.
	(draw_as_unit_image): Draw colors as terrain.

	* terrain.imf: Tweak "straw", plus use more symbolic color names.

Wed May 28 19:22:16 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* side.c (cover_area): Add argument for unit's transport.
	(cover_area_1): Move initial tests into cover_area, update
	display if any coverage change when debugging is on.
	* actions.c (make_unit_complete), side.c, unit.c: Update calls
 	to cover_area.
	* unit.c (leave_cell_aux): Add argument for old transport.

	* mknames.c (assign_unit_number): Don't overwrite existing
	number if unit is a numbered type.

	* ui.c (get_unit_type_images): Add argument for preferred style.

	* macdefs.h (diPrefsColorUnitImages): New dialog item.
	* macconq.c (color-unit-images): New preference property.
	(ui_update_state, set_preferences, etc): Handle it.
	* macdraw.c (pref_solid_color_terrain): Rename from
	solid_color_terrain.
	(draw_coverage): Don't draw alt coverage if no LOS.
	* macinit.c (init_unit_images): Choose silhouette vs full color
	based on preference.
	* imfapp.c: Define UPP-related macros.
	(make_imf_resources): Append size to non-8x8 patterns and colors.
	* macimf.c (mac_add_ppat): New function.
	(mac_load_imf): Call it, also look for 1x1 and 32x32 images.
	(mac_create_cicn): Detect memory exhaustion.

	* gazala.g: Add supply effects, numbers for numbered units.
	* std-c.imf: New file, color versions of standard unit images.
	* imf.dir: Add new images.
	* terrain.imf: Various cleanups.

	* PROJECTS: Remove item about standard unit images.

Wed May 21 19:39:50 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* gvar.def: Set default advantage bounds to 0.
	* init.c (init_side_advantage): Adjust side's maxadvantage up if
	country synthesis will be performed.
	* write.c (write_side_properties): Tweak maxadvantage default.

	* nlang.c (generic_oneliner): Improve description of control and
	people.

	* ui.c (special_strcmp): New function, sorts standard-game-based
	games to front to list.
	(module_name_compare): Call it.

	* macinit.c (display_selected_game): Simplify blurb default.
	* macdesign.c (draw_design_window_tool): Indicate control drawing
	more clearly.
	(paint_on_drag): Fix mistake in control/people painting.

	* game.dir: Add beirut, midway, postmodern, steppes, time;
	remove planets.
	* cherbourg.g: Add a blurb.
	* magnusvew.g, ww2-div-pac.g, ww2s-42.g, ww2s-pac-41.g: Remove
 	advantage-max settings.
	* postmodern.g: More cleanup.
	* steppes.g: Tweak for addition to game list.
	* p-e1-1938.g: Adjust to match earth-1deg.g changes.
	* u-e1-1938.g: Sort into new standard unit order.
	* ww2-e38.g, ww2-39.g: Add control layer.
	* ww2-42.g: Adjust control layer to match earth-1deg.g changes,
	remove towns already in u-e1-1938.g.

	* PROJECTS: Remove useless mention of possible doctrine slots,
	remove implemented item about advantage adjustment.

Wed May 14 19:38:32 1997  Massimo Campostrini <campo@ipifidpt.difi.unipi.it>

	* x11/Imakefile, curses/Imakefile: Added -lm flag to link.
	* doc/Imakefile: Fix.

	* imf.c (parse_lisp_palette_entry): New function, use everywhere.

	* ximf.c (x11_interp_imf): Make a color pixel for a 1x1 image.
	(x11_make_color_pixmap): Use parse_lisp_palette_entry.
	* xutil.c (write_xpm_file): Ditto.
	* xmap.c (USEIMAGE): Enable.

	* terrain.imf: Add solid color images for all terrain types.

Wed May 14 18:38:35 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* utype.def (courage-max, courage-min, opinion-max, opinion-min,
	revolt-at-opinion-min):	New properties.
	(has-opinions): Remove.
	* table.def (opinions-on-creation): New table.
	* run2.c (run_revolts, unit_revolt): Use unit opinions if defined.
	* unit.c (init_unit_opinions): Use new unit type properties.
	* unit.h (unit_opinion, unit_courage, etc): New macros.
	* nlang.c (parse_date): Remove, never used.
	(monthdays): New global.
	(usual_date_string): Use to make accurate dates.
	(relative_date_string): Add cases for calendar types.
	* tp.c (remove_chars): Work on any buffer.
	* write.c (shortest_escaped_name): Always use internal name.

	* mormon.g: Add some documentation.

	* refman.texi: Reflect above GDL changes.
	* PROJECTS: Remove implemented parts of opinion/morale project.

Tue Apr 29 20:54:39 1997  Jay Schuster <jay@pcc.com>

	* task.c (parse_location): Fix conditional nesting.

Tue Apr 29 05:14:57 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* nlang.c (notify_combat): Don't assume units non-null.
	(destination_desc): Handle out-of-area destinations.

	* xutil.c (write_xpm_file): Handle named colors correctly.

	* cmdline.c (default_player_spec): New global.
	(set_players_from_options): Fill it in when joining a game.
	(parse_command_line): Set initially_no_ai instead of option_no_ai.
	* init.c (initially_no_ai): New global.
 	(make_trial_assignments): Use it.
	* tp.c (receive_data): Handle crossbuf upon entry to function,
	warn when crossbuf packet overwritten.
	(receive_packet): Make trial assignments when download complete,
	don't retransmit join requests.
	(receive_player_prop): Interpret "Passign" packets.
	* tp.h (receive_action): Remove decl, now static.

	* xconq.c (main): Send default player spec when joining a game,
	call launch_game when hosting.
	(launch_game): Move late-stage init code here.
	(set_you_player): Fill in more rids.

Thu Apr 24 19:07:38 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* cmdline.c (set_variants_from_options, set_players_from_options):
	Handle case of joining game.
	* tp.c (remove_chars): New function.
	(receive_data): Use it, also process cross packet if one present
	after ack received.

	* xconq.c (main): Set up master_rid, parse variant and player
	options even if joining an existing game.
	* cconq.c (main): Set up master_rid.

Tue Apr 22 19:26:25 1997  Stan Shebs  <shebs@andros.cygnus.com>

	TCP-based networking support for Unix Xconq.
	* cmdline.c (general_usage_info): Document -host.
	* cmdline.h: Add decls.
	* unix.c (open_remote_connection, etc): Add socket-making
	and -connecting code, plus reading and writing.
	* xconq.c (main): Add interpretation of hosting and joining
	options.
	(run_game_proc): Poll for data from remote programs.
	* xconq.h (side_has_local_display): New macro.
	* xinit.c (init_all_displays): Use it, make numdisplays local.
	* x2imf.c, imf2x.c, xshowimf.c (numremotes, my_rid): Define.
	* cconq.c (main): Call net_run_game.

	* cmdline.c (parse_command_line): Add -noai option.
	(player_usage_info): Document it.
	(set_players_from_options): Use it.
	* conq.h: Move decls from other places.
	* init.c, run.c, skelconq.c: Fix up some comments.
	* mkroads.c (terrs): Make array of shorts.
	* read.c (eval_number): New function.
	(fill_in_side, interp_unit_plan): Use it.
	(interp_variant_defns): Fix details of syntax handling.
	* run2.c (compute_moves): Do for indep units also.
	* task.c (do_produce_task): Check validity of material type.
	* unit.c (enter_cell): Check that unit can be on connection.
	* util.c (init_error, etc): Add debugging print of message.
	* write.c (write_variants): New function.
	(write_game_module): Use it.
	
	* duel.g: Fix syntax of variant.
	* mod-usa.g: Update positions of oil platforms.
	* omaha.g: Put infantry inside landing ships.
	* pearl.g: Use symbol for Honolulu.
	* red-october.g: Put sailors inside fleet.
	* rising-sun.g: Let base module set up first two sides.
	* russian-rev.g: Rely on more defaults in unit type defns.

	* test-save.sh: Add ability to test one module.
	* savetst1.inp: Do a little more movement.

Tue Apr 15 20:20:20 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* actions.c (lookup_action_type): Fix typo.
	* plan.c (any_auto_repair): Fix extern decl.
	* read.c (interp_action): Fix parsing details.

Mon Apr 14 19:12:40 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* actions.c (check_create_common): Test u_tech_to_own.
	* combat.c (do_attack_action): Don't surrender to a low-tech side.
	(attempt_to_capture_unit): Similarly for capturing.
	* help.c (describe_utype): Detect and report when materials in
	game never handled by unit.
	* move.c (do_move_action): Handle disembarkation correctly.
	* nlang.c (constructible_desc): Fix spacing.
	(others_here_desc, occupants_desc): Report incomplete units
	separately.
	* run2.c (run_surrenders): Don't surrender to indep units.
	(unit_surrender): Use correct location.
	* side.c (cover_area_1): Renamed from cover_area.
	(cover_area): Iterate over all trusted sides.
	* unit.c (change_unit_type): Let everybody see the change.
	(set_unit_side): Use u_tech_from_ownership.

	* maccmd.c (do_one_disembark): Fix test.
	(do_trust): Add trust display option.
	* macdefs.h (diPrefsIncrText, diPrefsIncr): New dialog items.
	* macconq.c (default_latlong_incr): New global.
	(set_preferences): Set it from preferences dialog.
	* macconq.h (Map latlongincr): New slot.
	* macmap.c (create_map): Set it.
	(draw_map_content): Fix calculation of visible region,
	use latlongincr to space lines.
	* macmap2.c: Draw unit info when unit deselected.
	* macmenus.c (enable_commands_for_unit): Disable build item
	if occupant and can't build.
	* macwins.c (adjust_construction_items): Adjust list element size.
	(draw_unit_closeup): Use standard description functions.
	
	* 1805.g: Use side symbols.
	* napoleon.g: Remove redundant cp-* tables.
	* africa.g: Add help strings, new material type "water",
	set up see-chance-adjacent table.
	* beirut.g: Add LOS and firing for tanks, wrecked building type,
	surrenders.
	* earth-50km.g, t-e50-river.g: More adjustments.
	* u-e50-1996.g: Add more bases in western hemisphere.
	* mormon.g: Allow more construction of places, allow forts to
	construct armies, and Indians to reproduce.
	* stdunit.g: Don't let nukes carry fuel.
	* game.dir: Add "mormon".

	* play.texi (Unit Info): New section/node.
	* mac-sect.texi: Update description of menus.

	* PROJECTS: Merge general and kernel categories, remove some
	more undesirable items, add some generic user interface ideas.

Mon Apr  7 20:08:49 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* move.c (check_move_action): Detect whether unit could ever
	have enough mp to do the move.
	* task.c: Call set_unit_reserve to put units into reserve.
	(do_move_to_task, do_approach_subtask): If not enough mp this
 	turn, go into reserve.

	* cmd.def (take-unit): Remove, can't decide what it should do.
	* help.c (uu_table_row_desc, etc): Add argument for connective
	word to use.
	(describe_concepts): Improve on text.
	(describe_game_design): Don't display temperature range if no
	variation possible.
	(describe_utype): Add/enhance various descriptions.
	(describe_world): Don't describe year/day if not defined.
	* nlang.c (occupants_desc, etc): Use shortest unique name.
	(plan_desc): Don't describe supply flags if no materials.
	(goal_desc, report_take): New functions.
	* ui.c (take_supplies): Report need rather than transfer.

	* macdefs.h (miFindNextOccupant, miFindDistance, miMoreGive,
	miMoreTake, miMoreEmbark, miMoreDisembark): New menu items.
	(dFindLocation, dFindUnit): New dialogs.
	* macmenus.c: Handle new menu items.
	(do_find_location_mi, do_find_unit_by_name_mi, etc): New functions.
	(adjust_menus): Fix handling of more menu.
	(any_transport_here): New function.
	(enable_commands_for_unit): Call it.
	* maccmd.c (do_detonate_command): Replace with code from
	macmenus.c.
	(do_dir, etc): Flag to scroll to unit.
	(do_give_unit): Interpret prefix arg.
	(do_take): Implement.
	* macconq.c (recalc_spacing): Calculate tophgt and topunithgt.
	* macmap.c (create_map): Remove calcs of tophgt etc.
	(draw_map): Reset values of map->toph etc each time.
	(toggle_map_topline, toggle_map_topunit): Ditto.
	(draw_unit_info): Add occupant and stack info.

	* intro.g: Add help strings, change how armor uses movement
	in mountains, remove redundant cp-* tables.
	* third-age.g: Add help strings, side symbols.

	* play.texi: Make list of games consistent with game.dir.

	* PROJECTS: Remove do_take_unit items, add some things to do
	for the Mac interface.

Wed Mar 26 19:42:03 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* ccmd.c (do_dir): Make it work.
	(do_doctrine): Handle case of empty argument.
	* xcmd.c (do_doctrine): Ditto.
	* xinit.c (init_terrain_images): Add case for solid colors.
	* xmap.c (draw_view_in_panner): Start using pixmap instead of
	image for rendering.

	* terrain.imf (plains, mountains, sea): Add solid colors.

Tue Mar 25 20:18:20 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* config.host: Restore Linux case, fix syntax of variable set.
	* configure.in: Fix use of config.host.
	* config/mh-linux: Restore.
	* kernel/Makefile.in, curses/Makefile.in: Link with -lm.
	* curses/Makefile.in, x11/Makefile.in: Make executables setuid.

	* unit.c (utype_name_n): Fix tipo.
	* world.c (xy_to_latlon): Compute center line differently
	depending on projection.
	* write.c (write_units): Always write unit symbol.

	* earth-1deg.g: Adjust terrain and features, especially in polar
	regions.
	* earth-50km.g: General cleanup of terrain bogosity.
	* u-e50-1996.g: Move/add towns to match.
	* midway.g: Use restriction of t-pacific, add more units.
	* t-pacific.g: Adjust terrain correctly for projection.
	* ww2-pac-41.g: Move/add units to match.

	* xconq.texi: Tweak formatting.
	* PROJECTS: Reflect library projects.

Sun Mar 16 16:03:59 1997  Massimo Campostrini <campo@ipifidpt.difi.unipi.it>

	* xutil.c (write_xbm_file): Init a local correctly.

Sun Mar 16 15:35:39 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* keyword.def (projection): New keyword.
	* world.h (Area projection, halfheight): New slots.
	* read.c (interp_area): Recognize projection.
	* write.c (write_area): Write projection.
	* world.c (set_area_shape): Compute halfheight.
	(xy_to_latlon, latlon_to_xy): New functions.
	* nlang.c (latlon_desc): Call xy_to_latlon.

	* macmap.c (draw_map_contents): Draw lat/long lines if requested.

	* t-africa.g: Fix latitude and longitude.
	* t-pacific.g: Ditto, also use projection 1, adjust terrain to
	match.
	* ww2-pac-41.g: Adjust unit positions to match terrain changes.

Thu Mar 13 19:17:55 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* keyword.def (always, near): New keywords.
	* conq.h (any_people_side_changes): Fix decl.
	* combat.c (capture_unit_2): Notify when any info received as
	a side effect of capture.
	* lisp.c (read_form_aux): Fix handling of punctuation in numbers.
	(escaped_symbol, escaped_string): Move to here from write.c.
	(interp_short_array, interp_long_array): Move to here from read.c.
	* move.c (carryable, accelerable, etc): Move here from mplayer.c.
	(accelerator): New function.
	* mplayer.c (review_theaters): Recalc units waiting for transport.
	(mplayer_finish_movement): Remove redundant test of waiting units.
	(search_for_available_transport): Add argument for purpose of
	search, push an occupy task on the would-be occupant's agenda.
	* read.c (interp_table): Load default game if necessary.
	(interp_standing_order): Rewrite to interpret new syntax.
	* run2.c (any_tooling_attrition, etc): Make into shorts.
	(can_satisfy_need): Account for doctrine when computing.
	* score.c (record_into_scorefile): Record more types of variants,
	record advantage as 'a' instead of '+'.
	(get_scores): Display more types of variants.
	* tp.c (net_push_occupy_task): New function.
	* unit.c (interp_utype_list): Move to here from read.c.
	* unit.h (is_task_type): New macro.
	* world.c (num_people_at): Move to here.
	* write.c (write_units): Write side symbol if defined.

	* side.h (sordercond): New enum.
	* plan.c: Update standing order code.
	* side.c (add_standing_order): Provide better feedback.
	(parse_standing_order): Add listing for orders.
	* task.c (parse_task): Add case to help with order cancel.
	* read.c (interp_standing_order): Rewrite to interpret new syntax.
	* write.c (write_standing_orders): Write using a new syntax.

	* imfapp.c: Add support for MW; UPPs, QD access macros, console
	stubs.
	* mac.c: If __MWERKS__, comment out AppleTalk code.
	
	* macconq.h, macinit.c, macmap.c: Fix decls.
	
	* neurope.g: Remove now-unneeded include.
	* ww2-sides.g: Add a symbol to each side form.

Mon Mar 10 19:23:33 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* imf2imf.c (syntax_error, prealloc_debug): Define.

	* Imakefile (SUBDIRS): Add doc.
	* Local.config (GLIBDIR, IMFLIBDIR): Default to system places.

	* curses/Imakefile (DEFINES, etc): Use common set.
	* x11/Imakefile: Ditto.
	* kernel/Imakefile: Ditto, also build skelconq and imf2imf.
	* doc/Imakefile: Add actions for building doc things.
	* SelFile/Imakefile: Don't install library by default.

Thu Mar  6 19:05:18 1997  Massimo Campostrini <campo@mail.difi.unipi.it>

	* Local.config (EXTRA_DEFINES): Move Xconq lib dir here from
	curses/Imakefile.
	* xshowimf.c: Test for a missing image.
	* u-midearth.g: Set default-base-module.

Thu Mar  6 18:39:31 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* texinfo.tex: Update to version 2.185.

	* misc.h, ui.c (limitn): Rename from limit, avoids Sun C bug.

	* fantasy.g: More cleanups.
	* neurope.g: Add variants, convert cities in old format.
	* t-africa.g: Remove commented-out junk.
	* ww2-pac-41.g: Update positions of units in Hawaii.

Wed Mar  5 20:04:49 1997  Stan Shebs  <shebs@andros.cygnus.com>

	From Larry Schwimmer <rosebud@cyclone.Stanford.EDU>:
	* config.h (SAVEFILE, CHECKPOINTFILE, ERRORFILE, INTRO_GAME):
	New definitions.
	* unix.c (game_homedir, game_filename): New functions.
	(saved_game_filename, etc): Use them.
	(score_file_pathname): New function.

	* keyword.def (stop): Remove.
	* ai.c (set_side_ai): Handle empty names better.
	* init.c (patch_object_references): Only init actorstate if
	does not already exist.
	* mkrivers.c, mkterr.c, run.c, run2.c, tp.c, unit.c: Fix some
 	indentation.
	* plan.c (decide_plan): Use INTRO_GAME.
	* read.c (interp_unit): Use init_unit_actorstate.
	* score.c (ScoreRecord numturns): New slot.
	(eval_sk_form): Remove K_STOP case.
	(basic_player_name): New function.
	(record_into_scorefile, get_scores): Rearrange record format,
	fix advantage recording.

	* xconq.h (STANDARD): Delete, never used.
	(controltypeenum): Add SHOW_CONTROL, SHOW_CLOUDS, SHOW_WINDS.
	(Map drawcontrol, etc): New slots.
	* xconq.c (add_default_player): Change name of env var.
	* xdraw.c (draw_clouds_row, draw_temperature_row, draw_winds_row):
	New functions.
	(draw_row): Call them.
	(draw_unit_info): Use more nlang.c functions.
	* xmap.c: Add flags and buttons for weather drawing.

	* mac.c: Various cosmetic improvements.
	* macmap.c (draw_row): Move weather drawing to here from terrain
	row drawing.

	* SelFile/Dir.c: Fix compilation on Alpha.

	* t-pacific.g: Remove alignment markings, adjust some positions.

	* xconq.texi: Add some contributor names.
	* refman.texi (stop): Remove description.

	* PROJECTS: Reflect above changes, remove some pointless items.

Thu Feb 27 19:23:18 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* combat.c (will_report_damage): New function.
	(reckon_damage): Call it.
	* nlang.c (report_combat): Report misses.
	* help.c, help.h: Make almost all functions static.
	* side.c (paint_view_1): Don't call see_exact.
	* unit.c (designer_create_unit): Ditto.
	* world.c (paint_cell_1, etc): Ditto.

	* ui.h (LineSegment): New struct.
	* ui.c (draw_temperature_here, draw_winds_here): Move here from
 	macdraw.c.
	(init_contour_lines, contour_lines_at): New functions.

	* util.c (error_is_bug): New global.
	(case_panic): Ditto.
	* ui.c (xform): Ditto.
	
	* macconq.h (draw_temperature_here): Remove decls.
	* macdesign.c (designer_overlay): Remove, no longer used.
	(disable_designing): Reset maps' see_all state.
	(do_mouse_down_design): Remove map redrawing code.
	(apply_designer_tool): Fix view painting.
	* macmap.c (cell_overlay, cell_terrain): Fix designer case, add
	map argument.
	(draw_contours): Use contour_lines_at.

Mon Feb 24 19:57:22 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* cmd.def (+, -): New commands.
	* keyword.def (act): Remove.
	* actions.c (lookup_action_type): New function.
	* read.c (interp_unit_act): Remove.
	(interp_unit): Interpret action-related slots directly.
	(interp_action): New function.
	(interp_unit_plan): Use temp var for plan.
	* write.c (write_unit_act): Write flatter output.
	(write_action): New function.
	* unit.c (flush_dead_units): Detect case where all units in
	unitlist are flushed.

	* maccmd.c (do_down, do_up): New functions.
	* macmenus.c (do_down_command, do_up_command): New functions.
	* macwins.c: Remove unnecessary test of construction_run.

	* xconq.h (Map vx, vy, vw, vh, vw2, vh2): Remove slots, unneeded.
	* xdraw.c (xform, etc): Return void instead of int.
	(draw_area_background): Fix calculation for cylinder.
	(draw_map_view): Use local vars instead of map slots for temps.
	(draw_terrain_row): Fix wrapping for cylinder drawing.
	(draw_units): Similarly.
	* xmap.c (help_terrain_type): Fix formatting of help string.
	(grok_position): Add unit result argument.
	* xcloseup.c, xcmd.c: Change callers.
	* xcmd.c (aux_add_terrain_2, etc): Make help work correctly
	while in modal loop.
	(aux_attack): New function.
	(do_attack): Call it.
	(aux_remove_terrain, do_remove_terrain_2, aux_remove_terrain_2):
 	New functions.
	(do_remove_terrain): Call.
	(do_down, do_up): New functions.

	* ccmd.c (do_down, do_up): New functions.

	* nat-names.g: Add Sierra Leoneans, Tongans, also more unit
	names.
	* pearl.g: Flatten out action properties.
	* u-e1-1996.g: Make Guayaquil Ecuadorean.

	* commands.texi: Use @kbd instead of @code, document ^E instead
	of ^D as disembark command.
	(+, -): Document new commands.
	* curses-sect.texi, x11-sect.texi, x11-dsect.texi: Use @kbd
	in tables.
	* hacking.texi: Add @bullet to @itemize usages.
	* refman.texi: Similarly, also document new symbols, fix node
	references.

	* test/Makefile.in (all): Add help info.
	(imf.uses): New target.
	* all.g: Update to reflect current GDL.
	* cmd-diff.sh: Reflect new format of commands in .texi files.
	* imf-uses.sh, game-uses.sh: New files.
	* lib-uses.sh: Rewrite to not expand wildcard-resembling names
 	like "m*".
	* src-uses.h: Add comments.

	* PROJECTS: Reflect above changes.

Mon Feb 17 12:46:32 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* misc.h (limit): New macro.
	* ui.c: Use it.
	* nlang.c (notify_doctrine_1): New function.
	(notify_doctrine): Use it, list all doctrines if no match on name
	or id.
	* plan.c (repair_if_damaged): Use doctrine to decide when damage
	warrants repair.
	(capture_indep_if_nearby, capture_useful_if_nearby): Don't
	do anything if already heading towards captureable unit.
	* read.c (fill_in_doctrine): Assume construction run array exists.
	* side.c (new_doctrine): Move slot defaulting to here from
	init_doctrine, improve default values.
	(clone_doctrine): Always allocate construction run.
	* write.c: Reflect improved defaults.

	* ui.h (VP sxmin, symin, sxmax, symax): New slots.
	(VP sx, sy): Make int-sized.
	* ui.c (xform_cell): Decide wrapping in cylindrical area based on
 	which wrapping will cause the cell to appear in the viewport.
	(calc_view_misc): New function.
	(set_view_size, set_view_power): Use it.
	(center_on_focus): Use set_view_position.
	* macmap.c (create_map, set_map_scrollbars, draw_terrain_row):
	Update to reflect ui.c changes.

Mon Feb 10 19:19:04 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* ai.c (bhw_max): New global.
	(basic_capture_worth): Fix test of acp.
	* mplayer.c (preferred_build_type): Use bhw_max to scale type
	preferences.
	* util.c (select_by_weight): Handle zero values better.

	* plan.c (repair_if_damaged, repair_here): New function, use in
 	plan_offense etc to decide to get repairs.
	* task.c (do_capture_task): Fix approach calculation.
	(do_repair_task): Fill in usefully.
	(create_repair_task, set_repair_task): New functions.

	* table.def (body-height, weapon-height): New tables.
	* utype.def (fire-angle-max): New property.
	(fire-velocity-max, fire-velocity-min): Remove.
	* combat.c (found_blocking_elevation, elevation_blocks): Compute
 	parabolic instead of flat trajectory.

	* history.def (unit-gone): New historical event type.
	* move.c (do_move_action, etc): Use it if unit disappears while
 	moving.
	(over_nothing, etc): New enum values, use everything
	to test ferrying by transport.

	* keyword.def (row-bytes): Remove.
	* imf.c (K_ROW_BYTES): Remove reference.
	* ttype.def (color): Remove, no longer used.
	* help.c (describe_ttype): Remove use of t_color.
	* macimf.c: Tweak image size test.
	* macinit.c (t_color_defined): Remove, no longer used.

	* gettysburg.g: Adjust colors of terrain, add withdraw chance,
	weapon height.
	* nat-names.g: Update to reflect new flag names.
	* panzer.g: Add fire-angle-max, weapon-height, body-height.
	* ww2-div-pac.g: Adjust some image names.
	* colors.imf (dark-gray, light-gray): Add.
	* flags.imf (flag-kazakhstan, etc): Add.
	* milsym.imf (army-hq, marine-bn, etc): Add.

	* PROJECTS: Add item about follow-action, remove item about
	sabotage.

Thu Feb  6 20:06:14 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* skelconq.c (main): Call run_local_ai.

	* test/Makefile.in (check-actions): Rename from check-acts.
	* test-acts.h, test-save.sh: Convert to Bourne syntax.

Wed Feb  5 19:52:39 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* cconq.c (ask_unit): Rewrite so no statements unreachable.

	* history.c (record_event): Just flag that post-event scores
	should be checked, don't do it just yet.
	* run.c (run_game): Do it here.
	(test_for_game_end): Call all_sides_draw.
	* score.c (side_wins, side_loses, all_sides_draw): Record event
	after side status changes.
	(check_post_action_scores, check_post_event_scores): Remove unused
 	arguments.

	* actions.c (execute_action): Fix caller.

	* xcloseup.c: Standardize argument orders for various functions,
	clean up some string handling, simplify some code.
	* xcmd.c: Reflect argument order changes.
	* xconq.c (raise_widget): Rename from RaiseWidget and move here
	from xcloseup.c.
	* xdesign.c: Call net_create_feature instead of create_feature.
	* xdraw.c: Init more colors to default values.
	* xhelp.c: Conditionalize designer help info properly.
	* xshowimf.c: Prototype properly.

	* wizard.g: Add toolup and research times, remove redundant
	char properties, fix starvation table.

Mon Feb  3 20:03:28 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* imf.c (load_image_families): Parse line without using scanf.
	* ui.c (hws, etc): Make hexes at "8x8" mag be 10x10, adjust
	all numbers correspondingly.
	* util.c (debugging_string): New function.

	* macdraw.c (draw_country_borders): Make gray borders thinner.
	(draw_winds): Scale wind force correctly.
	* macinit.c (filter_splash): Give feedback on debug flags.
	(add_default_terrain_image): Always flag as ersatz.

	* x11/Makefile.in (LDFLAGS): Define.
	* imf2x.c (main): Add argument -match.
	* x2imf.c (main): Call init_lisp.
	* xcmd.c (aux_build): Fix handling of '?'.
	* xconq.c (main): Add name of program to first notification.
	* xconq.h (UI dots): New slot.
	* bitmaps/dots.b: New file.
	* xinit.c: Include it.
	(report_missing_images): New function.
	(set_optional_colors): New function, broken out of set_colors.
	(CLOSE_ENOUGH): Make more lenient on matches.
	(get_default_terrain_image): Make default image like Mac version.
	* xdraw.c (draw_contours): New function.
	(draw_row): Call it, draw less on edges.
	(draw_units): Draw ellipsis dots if multiple units stacked.
	(draw_border_line_mult, etc): Rename from ..._multiple,
	use black as foreground color if none given.
	(draw_unit_image): Draw plain boxes at small scales, don't
	draw emblem if embedded in image already.
	(draw_side_info): Draw willingness to declare draw, highlight
	winning sides.
	* xmap.c: Improve default size for top left area.
	(help_unit_type): Fix so it is actually helpful.
	* xutil.c (read_xbm_file, read_xpm_file): Fix various details.
	(write_xbm_file, write_xpm_file): Fix structure names written.

	* 1757.g, africa.g, empire.g, ww2-adv.g, ww2-div-pac.g: Eliminate
 	commented-out image names.
	* ww2-div-eur.g: Make org material have effect, add more bomber
	parameters.
	* nw-europe.g: Make default see-all variant be false, add
	bombers inside airbases.
	* ww2-eur-42.g: Add cliff and salt-marsh border layers.

	* PROJECTS: Remove done or useless X11 items, add a couple.

Wed Jan 29 19:08:10 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* keyword.def: Sort keywords alphabetically.
	(sun): New area property.
	* world.h (Area sunx, suny): New slots.
	* world.c (init_area, calculate_world_globals): Set values.
	* read.c (interp_area): Read the property.
	* run2.c (compute_sun): Use the property.
	* write.c (write_areas): Write the property.

	* history.def (unit-merged): New event type.
	* actions.c (do_transfer_part_action): Use it.
	* nlang.c (historical_event_desc): Describe it.

	* actions.c, combat.c, move.c: Compactify testing in
 	prep_*_action.
	
	* actions.c (do_produce_action, do_alter_cell_action,
 	do_remove_terrain_action): Call distribute_material.
	(notify_tech): New function.
	(do_research_action): Call it.
	(adjust_tech_crossover): Fix calculation.
	(notify_tp): New function.
	(do_toolup_action): Call it.
	(adjust_tooling_crossover): Fix calculation.
	(check_create_common): New function.
	(check_create_in_action, check_create_at_action): Call it.
	(distribute_material): Distribute to more units nearby.
	(give_away): New function.

	* ai.c (lookup_goal_type): Move here from read.c.
	* nlang.c (report_combat, notify_combat): Move here from combat.c.
	* plan.c (lookup_plan_type): Move here from read.c.

	* lisp.c, lisp.h (cdddr): New function.
	* read.c: Use it, use more temp vars and fewer redundant calls.
	
	* mplayer.c (mplayer_adjust_plan): Go into reserve if unit
	plan being executed too many times in a single turn.
	* run.c (move_one_unit_multiple): Remove play rate control code.

	* run2.c (compute_acp, etc): Add some warnings.

	* PROJECTS: Add item about material consumption when changing
	type.

Mon Jan 27 18:54:58 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* imf.c: Call syntax_error for most syntax errors.
	(write_color): New function.
	(find_color_name): Detect red, green, and blue.

	* side.c, side.h (calc_vision): Remove.
	* macdesign.c: Remove calc_vision calls.

	* xconq.h (UI told_outcome): New slot.
	* xconq.c (update_side_display): Remove end-of-game code.
	(update_turn_display): Add better end-of-game handling.
	* xinit.c: Stub out cellcolor setting.
	* ximf.c (x11_make_color_pixmap): Work on any color screen
	depth, various optimizations.

	* macconq.h (Map see_all): New slot.
	* macconq.c (update_turn_display): Set it for all maps if
	the game has ended.
	* macmap.c (cell_terrain, etc): Use map->see_all.
	* macmap2.c: Tweak map->see_all flag instead of side flag.
	
	* imfapp.c: Read/write notes in xcif resource correctly,
	don't make xcif for colors.
	(syntax_error): New function.

	* fred.g: Remove hills terrain type, make supplies matter,
	let armies and leaders escape combat.
	* 1756.g: Fix module instructions, start armies and leaders in
	fortresses.
	* t-cent-eur.g (area terrain): Reflect removal of hills type.
	* hill.g: Comment out action-messages.
	* mod-usa.g: Remove Birmingham (it's not the one in Alabama),
	include u-e50-1996.g instead of earth-50km.g.
	* normandy.g: Remove bogus coastal artillery.
	* t-normandy.g: Add railroad spur to end of Cotentin peninsula.
	* ww2-bn.g: Let railroad artillery live but be immobile away
	from tracks.
	* sf.imf, ships.imf, standard.imf: Clean up some images, add more
 	colors/masks.
	
	* PROJECTS: Remove some X11 items either done or useless.

Thu Jan 23 18:50:19 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* macimf.c (mac_create_cicn): Fix computation of mono images.

	* imf.c (get_img): Add new images in order of size.

	Eliminate image colors as a distinct type of object.
	* imf.h (ImageColor): Remove.
	* imf.c (interp_color, etc): Remove.
	(write_imf): Detect colors and write specially.
	* read.c (interp_form): Remove K_COLOR case.
	* macimf.h (MacImage colordefined, color): New slots.
	* macimf.c: Detect constant-color patterns and make into
	1x1 images.
	(interp_ctab): Don't look for color names.
	(mac_load_image_color): Remove.
	* macconq.h (tcolors): Make into array of MacImage *.
	* macinit.c (init_terrain_colors): Merge into init_terrain_images.
	* macdraw.c, macmap.c: Change all uses of tcolors.
	* imfapp.c (collect_all_colors, make_imc_resources, etc): Remove.
	
	* imfapp.c: Add submenu to set window background color.
	
	* colors.imf: Make colors into 1x1 images.
	* imf.dir: Add color names.

	* All game designs: Eliminate terrain color properties or
	change into image-name properties.

	* PROJECTS: Reflect above changes.

Mon Jan 20 19:29:55 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* config.guess, config.sub: Update to current FSF versions.
	* config.host: Update from top-level FSF configure.in.
	* config: Update contents to current FSF version.

	* imf.h (Image rowbytes): Remove slot.
	(computed_rowbytes): New macros.
	* imf.c (write_pixmap, etc): Always compute the rowbytes.
	(interp_bytes): Detect more syntax errors.
	* macimf.c: Use computed rowbytes everywhere.

	* aircraft.imf, ancient.imf, dwellings.imf, emblems.imf,
 	fantasy.imf, milsym.imf, misc.imf, people.imf, places.imf, sf.imf,
 	ships.imf, tanks.imf, vehicles.imf, wizard.imf: Clean up many
	images, add color, masks, multiple sizes, remove some unused
	images, add others.
	* weapons.imf: New file.
	* colors.imf: Remove xxx[1234] colors, never used.
	* imf.dir: Update.

	* empire.g, flattop.g, midearth.g, modern.g, monster.g, panzer.g,
 	postmodern.g, sc4.g, third-age.g, ww2-div-pac.g: Fix image
 	references.
	* postmodern.g: Fix production/consumption oddities, add tech
	development parameters.
	* wizard.g: Fix construction tables.

	* test/buildtransp.g: Fix to use standard game.

Thu Jan 16 19:05:01 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* table.def (consumption-per-fire, material-to-attack): New tables.
	(material-to-fight): Remove.
	* combat.c: Use new tables when testing action validity and
	material consumption.
	* move.c (move_unit): Change control of unit's new location.

	* ai.c, ai.h (AI_ops): Change preferred_build_type slot to
	adjust_plan slot.
	(ai_preferred_build_type): Remove.
	(ai_adjust_plan): New function.
	(try_to_draw, give_up): Move here from mplayer.c.
	* mplayer.c (mplayer_adjust_plan): New function.
	(mplayer_finish_movement): Reduce redundant scanning.
	* run.c (move_one_unit_multiple): Return if unit has a task
	outcome that the AI should examine.
	(run_ai_plan_adjust): Call ai_adjust_plan.
	* task.c (execute_task): Return if task outcome to look at.

	* side.c (update_side_display_all_sides): New function.
	* actions.c, run2.c, side.c: Call it instead of looping over sides.

	* init.c (init_view): Check area shape, only allocate material
	views if any terrain storage possible.
	* side.c (people_always_see): New global.
	(see_cell): Use it.

	* macconq.c (default_draw_latlong): New global, preference for
	drawing lat/long of locations.
	* macdefs.h (diPrefsLatLong): New dialog item.
	* macmap.c: Pass value to generic_oneliner.
	* nlang.c (generic_oneliner): Add argument to control addition
	of lat/long position to line.

	* ww2-div-eur.g: Don't allow metro divisions to initiate attacks,
	increase V-2 range and only allow hits on places.
	(bomber): New unit type.
	(air): Remove material type.
	(missile): New material type.
	(estuary): New terrain type.
	* t-nw-eur.g: Add estuaries.
	* nw-europe.g: Add bombers, original sides to French towns.
	* stdterr.g (alt-blob-size): Reduce to 100.
	* ww2-adv.g (control-range, keep-control-range, hp-min): Define.
	* empire.g, insects.g, ww2-div-pac.g: Rename to material-to-attack
 	from material-to-fight.
	* ww2-adv.g: Rename to material-to-fire from material-to-fight.
	* ww2-eur-42.g: Add base Kalinin.

	* animals.imf (frog): Move to here from misc.imf.
	* insects.imf: Add masks to all images.
	* objects.imf, people.imf, places.imf, vehicles.imf: New files,
 	move appropriate images to here from misc.imf.
	* terrain.imf (flagstone, floor, mists, rock): Add color images.
	* imf.dir: Rebuild.

	* PROJECTS: Reclassify some general items as kernel items,
	add some ideas.

Thu Jan  9 17:58:19 1997  Stan Shebs  <shebs@andros.cygnus.com>

	* combat.c (report_combat): New function, call instead of
	notify_combat everywhere.
	* help.c (tt_table_row_not_default, tm_table_row_not_default,
	tt_table_row_desc, tm_table_row_desc): New functions.
	(describe_ttype): Call them.
	(tb_dice_desc): New function.
	(describe_utype): Call it, describe more combat tables.
	* init.c (kill_excess_units): New function.
	(final_init): Call it.
	* nlang.c (oneliner): Describe control of cell.
	* run2.c (run_unit_starvation): New function, call at every
	turn end.

	* game.dir: Add gazala, ww2s-pac-41, remove duel, napoleon.

	* africa-1850.g: Improve terrain view.
	* africa.g: Add animals, ship, cities, capacities.
	* t-africa.g: Add European cities and access to African towns.

	* animals.imf: New file, move elephant from ancient.imf.
	* insects.g: Fix various table, add bee stings.
	* modern.g: Add more material handling.
	
	* emblems.imf: Add axis/allies combo emblems.
	* ww2-stdunit.g: Define emblems for each side.
	* ww2s-42.g: Add Pacific theater units.
	* ww2s-eur-42.g: Add original sides to various towns.
	* ww2s-42.g, ww2s-eur-42.g: Add instructions.
	* ww22-pac-41.g: Rename from ww2s-pac-42.g, add many more
	starting units.

	* ww2-eur-42.g: Make Ireland neutral terrain, make Vichy France
	exist but still be inactive side.
	* ww2-div-pac.g: Define the sides, remove side library.
	* coral-sea.g, midway.g, pearl.g, ww2-pac-41.g: Remove side
	declarations.

	* imf.dir: Reflect above changes.

	* PROJECTS: Add various ideas prompted by library work,
	remove a couple library items.

Thu Dec 19 20:45:57 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* help.h: Fix declarations involving TextBuffer.
	* kernel.h, kpublic.h: Fix return type of set_side_self_unit.
	* ai.c, help.c, read.c, run.c, run2.c, score.c, task.c,
	tp.c, unit.c: Remove unused variables.
	* plan.c (side_planning_to_capture): Make static.
	* read.c (PARSE_PROPERTY_RETURN): New macro.
	(interp_unit): Use it.
	* run2.c (request_additional_side): Make void.
	* side.c (set_side_self_unit): Ditto.

	* cdraw.c: Add side arg to calls to task_desc.
	* xcloseup.c, xdraw.c: Ditto.

Wed Dec 18 22:58:24 1996  Stan Shebs  <shebs@andros.cygnus.com>

	Support for table entries that are dice specs.
	* game.h (TAVINT, TABDICE): New macros.
	(TableDefn): Delete unused cnst slot.
	* table.def, tables.c: Add extra argument to all table macros.
	* write.c (write_really_num_prop): Delete.
	(write_table): Add value type arg, call add_num_or_dice_to_form
	everywhere.
	(add_num_or_dice_to_form): Test value type.
	
	* keyword.def (point-value): New keyword.
	* unit.h (unit_appear_var_x, unit_appear_var_y): Rename from
	unit_appear_x and unit_appear_y.
	* world.c (random_point_in_area): Do less if variation not
	allowed.

	* read.c (fill_in_side): Merge feature namers.
	(interp_unit_defaults): Delete K_PLAN case, not used.
	(interp_unit): Handle extra args to "appear", point-value.
	* run2.c: Update callers.
	* unit.c (init_unit_extras): Init variation slots.
	
	* macconq.h (UI followaction): Delete slot, never used.
	(Map id): New slot.
	* macdefs.h (mMore, etc): New menu and items.
	(cView): New cursor.
	* maccmd.c: Use front_map everywhere.
	* macdesign.c: Make view painting work.
	(designer_overlay): New function.
	* macmap.c (cell_overlay): Add designer_overlay case.
	(create_map): Record map id.
	(front_map): New function.
	* macmenus.c: Add support for the "more" menu.

	* game.dir: Remove "future".
	* africa-1850.g: New file, African exploration.
	* coral-sea.g: Fill in features, tweak terrain, make Port
	Moresby more valuable.
	* gazala.g: Fix syntax of per-unit point value.
	* nw-europe.g: Add V2 bases in Holland.
	* ww2-div-eur.g: Add combat capability for V2 bases.

	* PROJECTS: Remove items for changes above, add item about
	default unit plan.

Fri Dec 13 17:41:16 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* keyword.def (aa): Remove, never used.
	* read.c, run2.c, unit.h: Remove refs to actualactions.

	* nlang.c (latlon_desc): Return empty string if no circumference.
	(generic_oneliner): Only call latlon_desc if meaningful.

	* game.dir: Remove some games that are not done.
	* ww2-bn.g, ww2-div-eur.g, ww2-div-pac.g: Use anchor image for
	ports.
	* ww2-div-pac.g: Add more transport and combat rules.

Wed Dec 11 19:09:05 1996  Massimo Campostrini <campo@mail.difi.unipi.it>

	* keyword.def (standing-order): New keyword.
	* read.c (interp_standing_order): New function.
	(fill_in_side): Call it.
	* write.c (write_standing_orders): New function.
	(write_side_properties): Call it.
	(write_really_num_prop): New function.
	(write_units): Call it.
	(write_unit_act): Write action state if actualmoves nonzero.

	* refman.texi (standing-order): Document side property.

	* ximf.c (x11_make_color_pixmap): Make image by drawing points
	instead of using images.
	* xshowimf.c (magnify_colrpix): Ditto.

Mon Nov 11 18:17:09 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* run.c (run_ai_plan_adjust): Don't run if no actionvector yet.

	* ai.c (set_side_ai): Always set player->aitypename, use
	copy of string when setting.
	* init.c (init_ranged_views): Rename from init_area_views, make
	static.
	* mkterr.c (fix_adjacent_terrain): Add progress display, check
	validity of table values.
	* read.c (read_rle): Fix reading of negative numbers.
	* side.c (see_cell): Merge setting of unit view date.
	* side.h (terrain_view_date, etc): Default to 0 instead of -1.
	* table.def (adjacent-terrain-effect): Fix upper bound.

Fri Nov  8 17:42:29 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* t-africa.g: Fill in rest of terrain details, add town Djibouti.

Thu Oct 31 19:39:56 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* nlang.c (latlon_desc): Add code for decimal lat/lon.

	* run.c (run_game): Disable writing of state info.
	* tp.c (send_game_checksum): New function.
	(net_run_game): Call it.
	(receive_run_game): New function, handles X packet.
	(receive_game_checksum game_checksum): New functions.

	* africa.g: New file, African exploration game.
	* t-africa.g: New file, 10 mile/hex map of Africa.
	* earth-1deg.g: Fix latitude and longitude.
	* earth-50km.g: Add latitude and longitude, shift terrain to
	be more accurate.
	* nat-names.g: Add recently-formed nations.
	* t-e50-river.g: Add more rivers.
	* u-e50-1996.g: Add various places, move many others.
	
	* PROJECTS: Remove some useless items, edit some others.

Thu Oct 24 18:46:10 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* nlang.c (latlon_desc): New function.
	(generic_oneliner): Call it.

	* read.c (fill_in_side): Read per-side instructions.
	* write.c (write_side): Write per-side instructions.
	* machelp.c (insert_newlines): New function.
	(create_instructions_dialog): Call it, display per-side
	instructions if available.

	* world.c (paint_feature_1): Don't recompute centroid always,
	too slow for large features.

	* cherbourg.g: Use per-side instructions.
	* galaxy.g: Generate rougher alt layer.
	* metz-1944.g: Add line-of-sight, railroad layer, railroad
	artillery.
	* nat-names.g: Mention Eritrea.
	* earth-1deg.g: Add lat/long for area.
	* t-e1-river.g: New file, rivers for earth-1deg.
	* u-e1-1996.g: New file, earth-1deg cities updated for 1996.
	* t-e50-river.g: New file, expanded rivers from earth-50km.g.
	* u-e50-1996.g: New file, cities from earth-50km.g.

	* commands.texi: Document disembark command.
	* mac-sect.texi: Document zoom in/out commands.
	* x11-sect.texi: Fix doc of zoom in/out commands.
	* x11-dsect.texi: Standardize format of designer commands.
	* refman.texi: Document new tables and properties, merge
	backdrop sections together, add "Game End" section.

	* PROJECTS: Remove some useless items, reflect above changes.

Thu Oct 17 18:12:51 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* mac.c: Add basic AppleTalk support.
	* tp.c (close_file_port): New function.
	* read.c: Remove redundant decls.

Fri Oct 11 16:37:58 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* keyword.def (action-priorities): New side property.
	* side.h (Side action_priorities): New slot.
	* unit.h (UnitExtras priority): New slot.
	(unit_extra_priority): New macro.
	* read.c (fill_in_side): Interpret action-priorities.
	(fill_in_unit): Interpret priority.
	* unit.c (init_unit_extras): Init priority slot.
	* run.c (highest_unit_priority, lowest_unit_priority): New globals.
	(run_game): If all units of a given priority are done moving,
	increment the current priority and recompose action vectors.
	(compose_actionvectors): Only add units with exactly matching
	priority.
	(unit_priority): Account for individual unit priority and side
	unit type priorities.
	(init_run): New function.
	* init.c (final_init): Call it.

	* world.h (for_all_features): New macro.
	* write.c, world.c: Use it.
	(destroy_feature): Fix unsplicing of feature.
	* tp.c (net_create_feature, etc): New functions.
	* kernel.h, kpublic.h: Add decls.
	* mkrivers.c, mkterr.c: Include kernel.h.

	* nlang.c (destination_desc): New function.
	(task_desc): Add side arg.
	* maclist.c, macmap.c, macwins.c: Change callers.

	* side.h (is_designer): New macro.
	* actions.c, run.c, side.c, macdraw.c, macmap2.c, macmenus.c: Use it.

	* macmenus.c (feature_menu_fids): New global.
	(build_feature_menu): Record position of each feature in menu.
	(update_feature_menu): Remove, useless.

	* macdesign.c (draw_design_window_tool): Improve drawing of
	feature info.
	(do_mouse_down_design): Use aux array to find selected feature
	from popup, rebuild feature menu after every change, call net_
	routines to make feature list changes.
	
	* PROJECTS: Reflect above changes.

Wed Oct  9 18:52:12 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* table.def (productivity-adjacent): New table.
	* run2.c (run_economy): Account for adjacent productivity.
	(unit_consumes): Merge into run_unit_base_consumption.

	* utype.def (see-terrain-if-captured): New property.
	* table.def (see-others-if-captured): New table.
	* combat.c (capture_unit_2): Add case for seeing other side's
	terrain and unit info.
	* move.c (change_control_side_around): New function.
	(move_unit): Call it.

	* world.c (compute_all_feature_centroids, etc): Compute
	bounding box of feature.
	(paint_feature_1): Recompute centroid, update display of
	adjacent cells.

	* table.def (control-range, keep-control-range): New tables.
	(unit-control-chance, etc): Rename from control-chance, etc.
	* keyword.def (control-sides): New keyword.
	* world.h (Area controlside): New layer.
	(control_sides_defined, control_side_at, set_control_side_at,
	NOCONTROL, controlled): New macros.
	* read.c (fill_in_control_sides): New function.
	(fill_in_side): Call it.
	* score.c (side_loses): Remove losing side's control of cells.
	* tp.c (net_paint_control): New function.
	(receive_world_prop): Interpret control-sides packet.
	* world.c (allocate_area_control_sides, fn_control_side_at,
	fn_set_control_side_at, paint_control): New functions.
	* write.c (write_area_control_sides): New function.
	(write_areas): Call it.

	* macconq.h (Map drawcontrol): New slot.
	(Map drawborders, drawconnections): Remove slots.
	* macdefs.h (miViewControl): New menu item.
	* macmap.c (create_map): Init drawcontrol slot.
	(draw_people_row): Draw both control and people sides.
	* macdraw.c (draw_country_borders): Add ability to draw
	a dark gray country border.
	* macmap2.c: Add toggling for side control display.
	(toggle_map_control): New function.
	* macmenus.c: Add toggling for side control display.
	* macdesign.c: Add painting of control layer.
	(draw_design_window_tool): Clip long text strings.
	* macconq.c (get_files): Open second image file.

	* standard.g: Add useful values for see-terrain-if-captured and
	see-others-if-captured.

	* ww2-adv.g (people-surrender-chance): Comment out for now.
	* ww2-eur-42.g: New bases Tobruk and Tallinn, new towns Bremen,
	Stettin, Florence, Taranto, Trieste, Venice.
	(control-sides): New layer.
	(people-sides): Change to reflect prewar countries.
	* eur-100km.g: Small tweaks to terrain and rivers.

	* voyages.g: Adjust capacities for food and water to work
	around lossage in consumption calculations.
	(productivity-adjacent): Define for fleets.
	* magellan.g: Add wind variant, disallow variable advantage.

	* cave.g: Add new image names for some types, give items a
	size of 0 in terrain.

	* PROJECTS: Remove various useless items.

Sun Sep 29 13:33:24 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* table.def (tp-damage): New table.
	* utype.def (fire-velocity-max, fire-velocity-min: New properties.

	* combat.c (change_morale): New function.
	(maybe_hit_unit, hit_unit): Call it, add code to lose tp if
	damaged.
	* move.c (do_move_action, total_move_cost): Allow multi-cell
	move actions.
	* task.c (do_move_to_task): Do multi-cell move if within range.
	* read.c (fn_set_terrain_view, etc): Move to side.c.
	* score.c (get_scores): Fix reporting of total games, add more
	sanity checks.
	* mkroads.c (compare_road_directions): Test cells beyond current
	road location to decide which dirs desirable.
	
	* macdefs.h (sImagesBWFilenames, sImagesColorFilenames): New
	string resources.
	* macconq.c (get_files): Choose image file name based on whether
	ColorQD available.
	* macimf.c (mac_create_cicn): New function.
	(mac_interp_imf): Call it.
	* imfapp.c (miFileBWOnly): New menu item.
	(write_color): New global.
	(make_imf_resources): Rewrite to separate handling of color images
	from monochrome images.
	(make_ppat_resource, make_cicn_resource): New functions, split from
	make_imf_resources.

	* macmenus.c (adjust_menus): Check/uncheck scores menu.

	* chess.g: Use grays for row colors, limit all types to one
	action, define move-range for multi-hex movers, disable
	counterattacks, suppress emblem display, add a set of
	chess images.
	* magellan.g (terrain-view): Update to match reader.
	* voyages.g: Fix food/water amounts.
	
	* PROJECTS: Reflect above changes, remove item about
 	elevation-at-max-range, add item about fire velocities.

Sun Sep 22 15:49:36 1996  Massimo Campostrini <campo@mail.difi.unipi.it>

	* help.c: Fix punctuation and spacing.
	* time.g: "flying cities" can safely fly over sea.
	* kernel/Imakefile: Add obstack.o.

Sun Sep 22 15:30:27 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* gvar.def (advantage-max): Change default from 100 to 10.
	(alt-blob-density, etc): Change defaults to be more like values
	in stdterr.g.
	* task.def (hit-unit): Fix argument type string.
	* mkterr.c (compose_area): Simplify elevation calcs, add debug
	displays.
	* nlang.c (task_desc): Fix description of hit-unit and move-to,
	add description for resupply.
	* plan.c (plan_offense): Detect disappearance of intended victim
	from targeted location, search for its new location.
	(find_alternate_hit_target, alternate_target_here): New functions.
	(victim_here): Record type and side of victim.
	(go_after_victim): Use to set up more specific hit tasks.
	* run2.c (run_turn_start): Display turn even if only debugging AI.
	* task.c (target_visible): New function.
 	(do_hit_unit_task): Call it, add case to fire at adjacent unit.
	* mplayer.c (try_to_draw): New function, use instead of always
	declaring willingness to draw.

	* macconq.c (init_fonts, recalc_spacing): New functions.
	(main): Call init_fonts.
	(init_toolbox, init_rects, init_ae): Make static.
	(update_turn_display): Only redraw maps if not already seeing all.
	(title_font_id, title_font_size, etc): New globals.
	* machelp.c: Use title font instead of large font for topics.
	* macmap.c: Fix calculation and update of topline and unit info
	areas when font changes.
	(draw_unit_info): Put two tasks on a single line.
	* macwins.c: Use large font in game status window.

	* stdterr.g: Make elevation ranges non-overlapping.

	* PROJECTS: Reflect above changes, remove redundant items
	about prescheduling and preevaluating plans.

Wed Sep 18 19:49:05 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* keyword.def (messages): Remove.
	* score.h (Scorekeeper messages): Remove slot.
	* read.c (interp_scorekeeper): Remove interp of messages.

	* mkterr.c (make_earthlike_terrain): Add detection and generation
	of more types of terrain.
	(compose_earthlike_area, earthlike_terrain_from_percentiles):
	New functions.
	* nlang.c (others_here_desc, occupants_desc): New functions.
	* run2.c (run_appearances): Iterate so as to handle appeance
	of occupants.
	* unit.c (unit_desig): Don't constrain length of type info.
	(shortest_unique_name): Give priority to single-char names.
	
	* macconq.c (get_files): Don't always disable statistics.
	(set_preferences): Rewrite to use a popup to select which
	subdialog to use, add font selection/sizing code.
	* macdefs.h: Change definitions to match new prefs dialog.
	* macdesign.c, macdraw.c, machelp.c, macinit.c, maclist.c,
	macmap.c, macwins.c: Use variable font sizes for all text.
	* macmenus.c: Don't set up font sizes menus here.
	* maccmd.c (do_one_clear_plan): Clear task agenda also.

	* cconq.c (schedule_movie, play_movies): Implement for real.
	* cdraw.c (draw_map): Fix up status line display.
	(draw_row): Reorganize.
	(draw_unit_details): Use more common kernel code.
	(draw_type_list_entry): Add total gain/loss columns.

	* refman.texi: Remove mention of scorekeeper messages property.

	* PROJECTS: Reflect above changes.

Fri Sep 13 17:26:25 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* table.def (see-mistake-chance, looks-like): New tables.
	* side.c (compute_see_chances): Add init calcs for mistakes.
	(test_for_viewer, etc): Collect pointer to viewing unit,
	account for vision range.
	(mistaken_type): New function.
	(see_cell): Call it, find unit doing the mistaken viewing.

	* plan.c (decide_plan): Don't clear agenda.

	* unit.c (side_owns_occupant): New function.

	* macdefs.h (diPlayerSetupAdvantageRange): New item.
	* macinit.c (set_player_setup_button_states): Fill it in.
	* macmap.c (grow_map): Add update region for grow box.
	(draw_unit_and_occs): Draw main unit if occ visible.
	* imfapp.c: Don't copy imf names.

	* panzer.g: Make slopes appear at intermediate elevations.
	(see-mistake-chance, looks-like): Define.
	* monster.g: Don't detonation do anything to rubble piles.
	* dwellings.imf (city20-intact): Add 16x16 image.

	* PROJECTS: Reflect above changes.

Tue Sep 10 19:26:30 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* gvar.def (random-events): Remove.
	* keyword.def (attrition-in-terrain, accidents-in-terrain,
	units-revolt, units-surrender): Remove, no longer used.
	* run2.c (randomeventmethods): Remove.
	(run_accidents, etc): Add init_* code to beginning of these.

	* conq.h (movie_type, MovieType): Remove.
	(schedule_movie): Change movie type argument to char *.
	* actions.c, combat.c, history.c: Fix callers.
	* macconq.c, skelconq.c, cconq.c, xconq.c (schedule_movie,
 	play_movies): Rewrite to localize types of movies, add screen
 	flash.
	* macmap.c (clear_unit_blast): Make it do something.
	(invert_map): New function.

	* combat.c (hit_unit_with_detonation): New function.
	(detonate_unit): Call it, also flash screen.
	
	* mplayer.c (create_initial_theaters): Don't assign every
	people-owned cell to home front.
	(mplayer_react_to_task_result): Try more options if blocked
	by enemy unit.
	(change_to_adjacent_theater): Add options to change to theaters
	closer or further than current one.

	* beirut.g, fantasy.g (random-events): Remove.
	* monster.g: Various adjustments to combat, occupancy, etc.
	* tokyo.g: Name some more buildings, remove some mobs.
	* dwellings.imf (city20-intact): New image.

	* hacking.texi: Add more info about side list, add basic
	description of networking support.

	* PROJECTS: Remove some useless items, remove inner/outer
	theater reassignment item.

Fri Sep  6 17:35:42 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* kernel.h: Move more definitions here from unit.h etc.
	* side.c (see_cell): Set unit view date more often.
	* plan.c (resupply_if_low, rearm_if_low): Test for prior
	existence of a resupply task.
	* run.c (run_game): Add still more debugging output, call
	test_for_game_end() during turn start.
	(move_one_unit_multiple): Don't break if side has local AI,
	causes out-of-sync probs if AIs running.
	(run_ai_plan_adjust): Rename from run_ai_planning.
	* tp.c (send_packet): Add recovery from timeout.
	(special_timeout): Remove.
	* write.c (write_entire_game_state, etc): Don't record save as
	an event if debugging, don't record realtime values.

	* mac.c (low_serial_receive): Add debugging printout.
	* macwins.c: Remove unnecessary calls to execute_task.

	* modern.g: Add steel-mill, fix production and consumption tables
	in various ways.
	* standard.imf: Add 32-bit monochrome images, remove color city20
	image.

Mon Sep  2 11:44:56 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* imf.c (get_imf): Allocate space for name here.
	* cmdline.c (args_used): New global.
	(parse_command_line): Build it.
	* xconq.c (main): Use it.
	(exit_xconq): Write score summary.
	* xmap.c (handle_key_event): Remove special ^A handling.

	* ai.h, ai.c (ai_react_to_unit_loss, ai_planning_to_capture,
	ai_guide_explorer, ai_analyze_after_moves): Remove, no longer
	useful.
	* mplayer.c (mplayer_planning_to_capture,
	mplayer_analyze_after_moves): Ditto.
	* unit.c (kill_unit_aux): No longer call ai_react_to_unit_loss.
	* plan.c (decide_plan): Remove side argument, fix callers.
	* run.c (run_game): Return right after starting or ending
	turn.
	(run_local_ai): Add args for when and how much to do, call
	ai_finish_movement when appropriate.
	* macconq.c (event_loop): Fix caller.
	* cconq.c (main): Ditto.

	* PROJECTS: Remove unimplementable item about mplayer cheating.

Sat Aug 31 12:49:32 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* actions.c (execute_action): Remove useless code bit.
	* imf.c (compute_image_bbox): Also look at rawmaskdata.
	* plan.c (init_unit_plan): Don't look at cp.
	(set_waiting_for_tasks): New function, was wait_for_orders.
	(plan_passive, etc): Call it.
	(plan_defense): Don't go into reserve if tasks to be done.
	(victim_here): Return true if only choosing best of several
	alternatives.
	* side.h (Side curactor_pos, curactor, curactor_id): New slots.
	* run.c (run_game): Don't finish_turn of brainless sides.
	(compose_actionvectors): Add contents of init_actionvector.
	(units_still_acting): Start scanning at curactor_pos.
	(side_move_some_units): Ditto, and set curactor_pos etc.
	(unit_still_acting): Remove second arg, change callers.
	* run2.c (init_actionvectors): Remove.
	* task.c (attack_can_damage_or_capture): New function.
	(do_hit_unit_task): Call it.
	(do_move_dir_task): Be willing to enter trusted units.

	* mplayer.c (review_units): Add adjustment of number of
	defensive units if too many.
	(mplayer_react_to_action_result): Empty out.

	* unit.h (is_present, in_action, is_acting): Remove.
	* macwins.c: Change references to use in_play.

	* maccmd.c (do_one_ai_control): Remove mod of waitingfortasks.
	* macconq.c (maybe_select_next_unit): Only use scrolltounit
	to decide what to do with curunit, not whether to use curunit.
	* macimf.c (make_generic_image_data): Recompute image bboxes.

	* modern.g: New material types petrol, coal, lumber, iron-ore,
	steel, new unit types oil-tanker, sawmill, iron-mine, refinery,
	add table contents go with these.

	* PROJECTS: Remove some of the lamer game ideas, reflect above
	changes.

Tue Aug 27 19:16:05 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* gvar.def (run-serial-number): New global.
	* run.c (run_game): Increment it.

	* actions.c (execute_action): No longer call
	ai_react_to_action_result.
	* ai.c (set_side_ai): Call net_force_replan.
	* init.c (final_init): Call ai_init_shared.
	* mplayer.c (mplayer_init): No longer call ai_init_shared.
	(analyze_the_game): Only set willingnesses if they changed.
	* unit.h (Plan last_task, last_task_outcome): New slots.
	* plan.c (init_unit_plan): Clear.
	(plan_passive): Don't call AI code.
	(plan_offense_support, plan_explorer_support): Ditto.
	(side_planning_to_capture): New function.
	(victim_here, etc): Call it instead of AI code.
	* run.c (need_ai_planning, need_ai_task_reaction,
	need_ai_for_new_side): New global vars.
	(run_game): Calculate and return sum of all types of things
	that run step might have done, remove AI code.
	(test_for_game_end): Remove sides after a draw.
	(run_local_ai): Move AI code here from elsewhere.
	(run_ai_planning): New function.
	* task.c (execute_task): Record task execution in unit plan,
	remove AI code.
	* tp.c (broadcast_randstate): Remove.
	(net_run_game): Add serial number and randstate to X packet.
	(receive_data): Buffer packet received while waiting for ack,
	process after expected packet.
	(receive_packet): Interpret new parameters to X packet.
	* ui.c (force_global_replan): Move here from plan.c.

	* macconq.c (event_loop): Call run_local_ai before run_game also.

Thu Aug 22 19:19:34 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* ai.c (set_side_ai): Don't run if AI is remote.
	* plan.c (decide_plan): Skip AI code if AI is remote.
	* task.c (create_hit_task, create_specific_hit_task): New functions.
	(set_hit_task, etc): Call them.
	* tp.c: Always test numremotes before broadcasting.
	(send_version): New function.
	(broadcast_command_5): Rename from broadcast_command_4, don't
	have side as special argument.
	(net_set_move_to_task, etc): Free temporary task after using it.
	(broadcast_packet): Warn if trying to send while in run_game.
	(receive_packet): Interpret new packet type V.
	(receive_command, etc): Interpret all subtypes that can be
	sent.
	* run.c (in_run_game, need_ai_init_turn): New globals.
	(run_game): Set/use them, track randstate changes, move
	summary of activity closer to end of function.
	(init_movement): Remove AI code.
	(run_local_ai): New function.
	* macconq.c (event_loop): Call it.

	* PROJECTS: Reflect above changes.

Tue Aug 20 20:16:20 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* run.c (run_game): Reset planexecs and taskexecs.
	* plan.c (execute_plan): Increment planexecs.
	* task.c (execute_task): Increment taskexecs.
	* tp.c (net_run_game): Reorganize, save last randstate before
	running, transmit X packet if any plan or task execs.
	(broadcast_randstate): Add argument.
	(send_quit, receive_quit): New functions.
	(receive_packet): Interpret new packet type Q.
	(receive_action, receive_task): Warn about bad data in packet.

Mon Aug 19 20:52:12 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* mkterr.c (name_highest_peaks): Don't say anything if can't run.

	* mplayer.c (assign_to_defense): New function.
	(mplayer_decide_plan): Call it.
	* plan.c (plan_defense): Add handling for various cases.
	* task.c (do_build_task): Clear old unit id if no longer needed.

	* tp.c: Replace "not networkable" warnings with code for all
	but some tasks.
	(broadcast_randstate, broadcast_command_4, receive_command,
	broadcast_side_property_2, broadcast_unit_property_5): New
	functions.
	(receive_packet): Interpret new packet types C and X.
	(net_run_game): New function.
	* macconq.c (event_loop): Call it.
	* macinit.c (hit_player_setup_dialog): Make cancellation undo
	any remote setups.
	* mac.c: Add some comments.

	* PROJECTS: Add item about distribution of elevations.

Fri Aug 16 17:47:54 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* plan.c (set_unit_main_goal, set_unit_waiting_for_transport,
	force_replan): New functions.
	* tp.c (net_set_unit_main_goal, net_set_unit_waiting_for_transport,
	net_force_replan): New functions.
	* mplayer.c: Call them.
	* kernel.h, kpublic.h: Declare them.

	* side.c (init_view): Init base array of material views.
	* table.def (see-material-always): Fix default.

	* commands.texi (doctrine, release): Document.
	* refman.texi: Document recently-added symbols, remove most
	of the "defaults to 0", use a general default comment.

	* PROJECTS: Reflect above changes, remove some junk items.

Thu Aug 15 19:03:15 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* keyword.def (trk): New keyword.
	* table.def (lose-track-chance, spy-track-chance, track-chance):
	New tables.
	* side.h (remove_side_from_set): New macro.
	* unit.h (Unit tracking): Rename from "spotted".
	(side_tracking_unit): New macro.
	* side.c (all_see_occupy, all_see_leave): Use it.
	(maybe_track, maybe_lose_track): New functions.
	* move.c (move_unit): Call them.
	* read.c (interp_side_mask_list): New function.
	(interp_unit): Interpret tracking slot.
	* run2.c (spy_on_location): Account for spy track chance.
	* write.c (write_unit_properties): Write tracking.

	* table.def (see-material-always): New table.
	* side.c (init_view): Set up material views, fix any_los
	calculation to run only once.
	(see_materials): New function.
	(see_cell, see_exact): Call it.
	* write.c (write_side_view): Write material view layers.

	* kernel.h, kpublic.h: Update random decls.
	* mplayer.c: Call networkable functions in kernel only, replace
	unit slot tweaking with function calls.
	* task.c (set_build_task): New function.
	* plan.c: Call it.
	(set_construction): Remove.
	* tp.c (net_reserve_unit, net_clear_task_agenda,
	net_push_move_near_task, net_set_build_task): New functions.

	* run.c (ok_to_exit): New global.
	(end_the_game): Dump statistics after informing side of outcome,
	set the global.

	* world.h (Area): Remove unused constant slots consttemp, etc.

	* macconq.c (want_to_exit): New global.
	(event_loop): Use it to decide about exiting.
	(won_game_dialog, lost_game_dialog, game_over_dialog): Set it
	instead of exiting directly.
	* macmap.c (draw_materials): Use material_view.

	* refman.texi: Document spy-track-chance.

	* PROJECTS: Reflect above changes, remove a couple mysterious
	items.

Tue Aug 13 18:57:16 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* utype.def (lost-revolt-chance, lost-vanish-chance,
	lost-wreck-chance): New unit properties.
	* table.def (lost-surrender-chance): New table.
	* run2.c: New file, turn start/end computations from run.c.
	(unit_revolt): Make revolting unit go over to original side
	or to side with most units of same type.
	(run_unit_fates): New function.
	* kernel/Makefile.in, kernel/Imakefile: Add run2.o.

	* unit.c (wreck_unit): New function.
	* move.c, run2.c: Call it.

	* init.c (patch_object_references): Fix placement of unit when
	can live on connection only.
	* unit.c (can_occupy_conn_1): New function.
	(can_occupy_conn): Call it, fix multi-connection behavior.

	* history.c (dump_statistics): Don't dump if empty filename.
	* mac.c (statistics_filename): Ask user for file name.

	* macdesign.c, macmenus.c: Use nonempty strings in SFPutFile.

	* ui.c (set_view_position): Increase size of scroll range if
	area is cylindrical.
	* macmap.c (set_map_scrollbars): Fix calculation of horizontal
	scrollbar max.

	* ww2-adv.g (lost-vanish-chance): Keep places around even if
	the side loses.

	* PROJECTS: Reflect above changes

Sat Aug 10 16:33:57 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* combat.c (rescue_occupants): New function.
	(damage_unit): Call it.

	* plan.c (init_unit_plan): Be more thorough about clearing plan.
	* task.c (add_task): Create plan if none present for incomplete
	unit.

	* macdefs.h (miViewCompleted, miViewIncomplete): New list view
	menu items.
	* macconq.h (List listglimpsed): Remove slot.
	(List completed_units, incomplete_units): New slots.
	* maclist.c (create_list): Init them.
	(add_unit_to_list): Test completed units view options before
	adding a unit.
	(toggle_list_completed, toggle_list_incomplete): New functions.
	* macmenus.c (do_menu_command): Call them.
	Adjust new menu items.

	* PROJECTS: Reflect above changes, clarify a couple items.

Fri Aug  9 17:26:29 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* move.c: New file, gets movement code from actions.c.
	* kernel/Makefile.in, kernel/Imakefile (move.o): Add.

	* gvar.def (action-movies, action-narratives, action-notices,
	event-movies, event-narratives, event-notices): New globals.
	(action-messages, event-messages): Remove.
	* actions.c (notify_action, pattern_matches_action,
 	action_desc_from_list ): New functions.
	(execute_action): Call.
	* history.c (notify_event): New function.
	* nlang.c (pattern_matches_event, event_desc_from_list): New
	functions.
	(historical_event_desc): Call them.
	* run.c (maybe_starve): Remove notify call.

	* run.c: Add debug prints to all automatic processes, organize
	prerequisites tests better.

	* game.def (PropertyDefn): Remove unused default function slot.
	* types.c (utypedefns, etc): Remove init of slot.

	* galaxy.g, insects.g, mormon.g, old-empire.g, sc4.g, standard.g,
	stdunit.g, time.g: Update message generation to use new vars.
	* sc4.g: Add multiple types of bombers, bomber detonation,
	variants, improve on hit chance table.

	* commands.texi: Add info about designer commands.

	* PROJECTS: Reflect above changes.

Wed Aug  7 19:05:53 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* table.def (capacity-negation, consumption-per-add-terrain,
 	material-per-remove-terrain, material-to-add-terrain,
 	material-to-remove-terrain, material-to-research): New tables.
	* unit.c (can_occupy_conn): Test for capacity negation.
	* actions.c (check_research_action, check_alter_cell_action,
	etc): Check material avail.
	(do_alter_cell_action, do_add_terrain_action, etc): Consume
	materials.

	* lisp.h, lisp.c: Make reader helpers static.
	(linenobuf): Allocate dynamically.

	* macdraw.c (draw_cell_block, draw_hex_region, etc): Rename arg
	for clarity.
	(draw_border_line_multiple, draw_connection_line_multiple):
	Account for overlay.
	(draw_cloud_block): New function.
	* macmap.c (draw_row): Call it, move other cloud-drawing code here.
	(draw_borders, draw_connections): Pass night as overlay to
	lower-level drawing.

	* ccmd.c (do_c_set_info_lines): Fix calculation.

	* hacking.texi: Clarify display rules for night.

	* PROJECTS: Reflect above changes, expand on narrative item.

Sun Aug  4 15:30:48 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* run.c (run_environment): Fix truncation bug in wind effect
	on clouds.
	(all_see_cell_weather): Update cloud view separately.
	* macmap.c (update_cell_display): Update if cloud view changed.

	* conq.h, help.h, print.h, ui.h, unit.h: Remove decls of functions
	never defined nor used.

	* keyword.def (ever-ask-side): Remove, never actually used.
	* side.h (Doctrine ever_ask_side): Remove slot.
	* nlang.c, read.c, side.c, write.c: Remove references.
	* plan.c (doctrine_allows_wait): Remove.

	* plan.c (plan_passive): New function, was part of execute_plan.

	* cmdline.c (parse_command_line): New options -pre and -post.
	(gdl_spec): New structure.
	(add_a_gdl_spec): New function.
	(load_all_modules): Call it.
	(general_usage_info): Add note if designing is disabled.

	* stdunit.g (cp-on-creation, cp-per-build): Remove redundant
	clauses, are same as default.

	* third-age.g: New game module.
	* t-midearth (game-module): Make midearth be default base module.

	* test-perf.sh: New test script.
	* perftest.inp: New test script input.
	* test/Makefile.in (check-perf): New action.

	* PROJECTS: Reflect above changes.

Thu Aug  1 19:33:37 1996  Timo Korvola  <tkorvola@dopey.hut.fi>

	* xcloseup.c (integer_select_popup): Use a proper buffer.
	* xmap.c (interp_key_command): Don't reset prefix arg always.
	(handle_key_event): Reset it here instead.

Thu Aug  1 19:16:59 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* combat.c (retreat_unit): Don't retreat if can't act to move.
	* init.c (patch_object_references): Fill in formation's leader.
	* plan.c (move_into_formation): Handle case of leader dying.
	* read.c (interp_plan): Don't fill in leader yet.

	* gvar.def (create-units-from-specs): New global.
	* read.c (unit_specs, last_unit_spec, default_unit_spec): New
	globals.
	(init_predefined_symbols): Initialize.
	(interp_unit_defaults): Record default spec.
	(find_unit_spec_by_name, find_unit_spec_by_number): New functions.
	(interp_unit): Call them, record unit spec if required,
	adjust @ property by restricted area offset.

	* cobra.g: Use ob-nor-* files, change some units to refer
	to OB forms.
	* ob-nor-alld.g, ob-nor-axis.g: Fix module names, add more
	info about some units.

	* PROJECTS: Reflect above changes, remove item about constant
	layers.

Tue Jul 30 18:51:27 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* combat.c (found_blocking_elevation, elevation_blocks):
	Handle case of no elevation in world.

	* tp.c (net_wake_unit): New function.

	* conq.h, kernel.h, kpublic.h, system.h, tp.h: Add various decls.
	* init.c, nlang.c, skelconq.c, tp.c: Remove excess decls.

	* history.c (record_event): Check number of parameters, check
	unit validity for unit data in events.
	(record_unit_side_change): Handle side loss better.
	* init.c (patch_object_references): Be more specific about cause
	of placement failure.
	* lisp.c (read_form_aux): Don't put back EOF chars after numbers.
	* tp.c (net_add_task): New function.

	* skelconq.c: Include kpublic.h, use networked functions, provide
	more info about calls of display update functions.
	(main): Start time tracking earlier.
	(list_sides): Show more info.
	(launch_game, set_you_player): Fix definitions.
	
	* maccmd.c, macconq.c, macconq.h, macmap.c: Remove excess decls.

	* xcmd.c (execute_named_command): Fix call to
	parse_long_name_command.
	(do_copying, do_warranty): Go to appropriate help nodes.
	(do_wake, do_wake_all): Use networked functions.
	* xconq.c, xdraw.c: Remove excess decls, fix defns of remote fns.

	* ccmd.c (execute_named_command): Fix call to
	parse_long_name_command.
	(describe_long_commands): New function.
	(do_submit): Fill in body.
	* cconq.c (main): Force side priority before calling run_game.
	(make_current): Draw curunit explicitly.
	* cconq.h: Remove excess decls.
	* cdraw.c (show_closeup): Describe transport if applicable.

	* test-ai.sh: Fix options to skelconq command.
	* aitest.inp: Add (quit if-end) commands.

	* PROJECTS: Reflect above changes, move warning-to-file item
	from curses to generic interface.

Sat Jul 27 11:54:06 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* unit.c (init_unit_extras): Init the sym slot correctly.

	Remove the old and useless "game compiler".
	* compile.c: Delete.
	* Makefile.in, Makefile.dos: Remove references, merge GOBJS
	with OBJS list, remove build of special.h.
	* config.h (COMPILER): Remove.
	* game.h, generic.c, read.c, tables.c, types.c [SPECIAL]: Remove.
	* skelconq.c (do_compile): Remove.
	* skelconq.6in: Remove reference to compiler.

	* skelconq.c (add_remote_player, launch_game, set_you_player):
	Add empty versions.

	* cmd.def (doctrine): New command.
	* maccmd.c, xcmd.c, ccmd.c (do_doctrine): New function.
	* nlang.c (notify_doctrine): New function.
	* side.c (set_doctrine): Ditto.
	* tp.c (net_set_doctrine): Ditto.

	* unit.h (Unit transport_id): New slot.
	* unit.c (create_unit): Init it.
	* read.c (interp_unit): Fill it.
	* init.c (patch_object_references): Get transport spec from new
	slot, leave existing transport if different.

	* read.c (add_to_area): New function.
	(interp_area): Call it.

	* imf.c (validify_imf_name): New function.
	* imfapp.c (collect_all_resources): Call it.

	* imf.h (ImagePalette palette): New slot.
	* imf.c (write_palette_contents): Write color by name if
	possible.
	(write_imp): Call it.
	(find_color_name): New function.
	* macimf.c (mac_add_cicn): Skip if empty handle.
	(interp_ctab): Handle color names.

	* nlang.c (generic_oneliner): New function.
	* macmap.c (oneliner): Call it.

	* module.c (do_module_variants): Do object patching and validity
	check if any variants evaluated forms.
	* macinit.c (implement_variants): Remove validity check, is now
	in generic code.

	* misc.imf: Remove farm image, rename port to anchor.
	* empire.g, modern.g, ww2-adv.g: Update references.
	* ww2-eur-42.g: Make Switzerland and Sweden neutral always,
	add variants to make Spain and Turkey neutral optionally.

	* PROJECTS: Reflect above changes, remove some silly items,
	move some from "general" category to more-specific ones.

Wed Jul 24 19:25:21 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* imf.c (write_imf_dir): New function, was in imfapp.c.

	* macinit.c (add_default_terrain_image): Remove redundant test.

	* macimf.c (mac_add_cicn): New function.
	(mac_load_imf): Call it.
	* imfapp.c: Call tprintf wherever possible.
	(collect_all_resources): Call it, also add argument
 	resource file refnum, use to ignore resources from other files,
 	assign names to anonymous resources instead of ignoring, handle
	any resource ending in " mxn".
	(collect_all_colors): Add argument resource file refnum, use to
 	ignore resources from other files.
	(miViewBBox): New menu item.
	(show_bbox): New global.
	(do_menu_command, adjust_menus): Handle new menu item.
	(draw_one_image): Test show_bbox.
	(save_imf_dir_file): Call write_imf_dir.
	(make_imf_resources): Count icons, append size if multiple.
	Also lock all pixpat-related handles.
	
	* hacking.texi: Add description of what interface should do
	when images are missing.

	* PROJECTS: Reflect above changes, add item about X11 interface
	complaining about missing imagery.

Mon Jul 22 19:22:47 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* keyword.def (initial-center-at, resupply-percent,
	rearm-percent, repair-percent): New keywords.
	* utype.def (cp-attrition): New property.
	* actions.c (check_move_action): Conditionalize addition of acp.
	(make_unit_complete): Inform trusted sides of completion.
	* combat.c (capture_occupant): Add code for escape and scuttle
	cases.
	* help.c (describe_concepts): Add more concepts.
	(any_ut_capacity_x, any_enter_indep): New functions.
	(describe_utype): Use them, and add mentions of material
	consumption for various activities.
	* init.c (make_weather): Initialize clouds randomly.
	* plan.c (victim_here): Use capture_chance instead of uu_capture.
	(low_on_supplies_one): Use resupply_percent doctrine.
	(low_on_ammo_one): Use rearm_percent doctrine.
	* read.c (fill_in_side): Interp initial-center-at.
	(fill_in_doctrine): Interp resupply-percent, etc.
	* run.c (run_cp_attrition): New function.
	(run_turn_start): Call it.
	(run_environment): Calculate cloud changes.
	* side.h (Doctrine resupply_percent, rearm_percent,
	repair_percent): New slots.
	(Side init_center_x, init_center_y): New slots.
	* side.c (create_side): Init them.
	(init_doctrine): Init new slots.
	* task.c (do_move_to_task): Fix bug.
	* ui.c (pick_a_focus): Use initial-center-at if set.
	* write.c (write_doctrine): Write new slots.

	* nlang.c (sidemask_desc): New function.
	* maccmd.c (message_dialog): Move side mask desc to generic code.
	
	* ui.c (parse_long_name_command): Add return argument for prefix,
	parse and return number prefixed to command.
	* maccmd.c (execute_named_command): Fix caller.
	(create_command_dialog): Seed command buffer with prefix arg.
	* macmap.c (draw_selected_unit): Indicate move near tasks with
	a radius, draw second move task as line from end of first.
	* macwins.c (unit_doctrine): New macro.
	(adjust_construction_controls): Use it.

	* napoleon.g: Make temperature-year-cycle an area property.
	* stdunit.g (default-doctrine): Define rearm-percent.
	* ww2-eur-42.g: Set initial-center-at for all sides.

	* refman.texi: Document new doctrine slots.
	* hacking.texi: Add a suggestion from projects list.

	* PROJECTS: Reflect above changes, remove some doctrine-related
	nonsense ideas, add projects for display of clouds.

Thu Jul 18 19:29:26 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* xcmd.c, ccmd.c (do_release): New function.
	(do_submit): Rename from do_surrender_to.

Wed Jul 17 19:15:09 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* cmd.def (release): New command.
	(submit): Rename from surrender-to.
	* side.c (set_controlled_by): New function.
	* tp.c (net_set_controlled_by): New function.

	* conq.h (checkpoint_interval): Rename from checkpointinterval.
	* run.c, cmdline.c: Fix references.

	* macconq.h, macdraw.c (solid_color_terrain): New global.
	* macdefs.h (diPrefsSolidColorTerrain): New preferences item.
	* macconq.c (interp_mac_ui_data): Get preference for solid color.
	(ui_update_state): Record preference for solid color.
	(set_preferences): Handle solid color preference.
	* macdraw.c (draw_cell_block, draw_hex_region,
 	draw_border_line_multiple, draw_connection_line_multiple): Draw in
 	solid color if preferred.

	* maccmd.c (do_release): New function.
	(do_submit): Implement.

	* ui.c (free_vp): New function.
	* macmap.c (destroy_map): Call it, free other substructures.

	* maccmd.c: Put Mac-specific commands into separate table.
	(describe_text_commands): New function.
	* machelp.c (create_help_window): Add separate node for text
	commands.

	* imf.h (Image bboxx, etc): New slots.
	* imf.c (compute_image_box, compute_image_bboxes): New functions.
	(interp_imf_contents): Call.

	* macdraw.c (draw_unit_image): Use image bounding box to place
 	emblem.
	* imfapp.c: Ditto.

	* refman.texi: Document recently-added GDL constructs.

	* PROJECTS: Reflect above changes, add items about side control,
	AI usage of kernel.

Thu Jul 11 21:33:40 1996  Massimo Campostrini <campo@sunthpi3.difi.unipi.it>

	* read.c (interp_unit_plan): Build task agenda in correct order.
	* write.c (write_side_properties): Write escaped rather than
	raw unit type names.
	* flags.imf (flag-ukraine): Color it "azure and golden yellow".

Thu Jul 11 18:26:48 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* keyword.def (sym, last-alliance-wins): New keywords.
	* utype.def (hp-to-recover, morale-max): New properties.
	* table.def (morale-on-creation, morale-hit, morale-hit-by,
	morale-terrain-effect): New tables.

	* actions.c (do_move_action, do_enter_action): Wreck or vanish
 	units that attempt to move from the end of a connection over
 	hostile terrain.
	(set_created_unit_props): Compute the unit's initial morale.
	* combat.c (maybe_hit_unit): Adjust the attacker's morale.
	(hit_unit): Adjust the defender's morale.
	* nlang.c (morale_desc): New function.

	* unit.h (UnitExtras sym): New slot.
	(unit_symbol): New macro.
	* init.c (patch_object_references): Find transports by symbol.
	* read.c: Interpret symbol property of unit.
	* unit.c: (find_unit_by_symbol): New function.
	* write.c: Write symbol property, reference transport by symbol
	if one defined.

	* help.c (describe_scorekeepers): Describe alliance scorekeeper.
	* mplayer.c: Test alliance scorekeeper.
	* nlang.c (side_score_desc): Show points if using alliance
	scorekeeper.
	* score.c (check_post_turn_scores): Test alliance scorekeeper.
	(eval_sk_form): Ditto.
	(eval_sk_last_alliance_wins): New function.

	* run.c (run_hp_recovery): Test min hp to recover.

	* lisp.c (read_form, read_form_from_string): Clear numread
	field of temporary stream.

	* imf.h (ImageColor): Make color slots unsigned shorts.
	* macdraw.c, macmap.c: Remove shifts of raw color values.
	* colors.imf: Multiply all values by 256.

	* space.g: New file, outer space game.
	* stdunit.g (mp-to-leave-terrain): Make leaving water expensive
	for ground units (prevents walking off bridges).
	* ww2-eur-42.g: Use last-alliance-wins scorekeeper.
	* ww2-pac-41.g: Use symbols instead of names for transports.

	* PROJECTS: Reflect above changes.

Mon Jul  8 19:05:02 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* keyword.def (image-name): New keyword.
	* world.h (Area image_name): New slot.
	* read.c (interp_area): Read it.
	* write.c (write_areas): Write it.

	* run.c: Notify all of reason whenever ending of game.
	(maybe_starve): Notify owner of unit's starvation.
	* side.c (send_message): Conceal sender if requested.

	* help.c: Use tbcat instead of tbprintf where possible.
	* obstack.c (ANSI_PROTOTYPES): Define if necessary.
	* unit.c (num_sides_allowed): New function.

	* macconq.c (update_side_display): Enable see_all for all maps
	when the game ends.
	(update_message_display): Display messages as notices instead
	of with a modal dialog.
	* maclist.c: Add column that displays current task.
	* macmap2.c (do_mouse_down_map_content): Beep if no unit succeeds
	at the move-on-click.
	* macmenus.c: Fix unit give menu to enable/disable appropriately.

	* quest.g: Add multiple ranks of humans, fix food/water needs,
	allow lairs to make monsters, make world have more land.
	* ww2-eur-42.g: Give the Soviets more towns.

	* commands.texi: Document how to send anonymous messages.

	* PROJECTS: Reflect above changes, remove some mystifying
	items.

Fri Jul  5 17:40:41 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* world.h (limity): Rename from limit, avoid prob with obstack.h.
	* world.c, plan.c> Change callers.

	* help.h (TextBuffer): New type.
	* help.c: Change third argument of help functions from char * to
	TextBuffer.
	(tbprintf, tbcat): New functions, use everywhere instead of
	tprintf and strcat.
	* copying.awk, copying.c: Ditto.
	* maccmd.c (describe_command, etc): Ditto.
	* machelp.c (describe_menus, describe_mouse, etc): Ditto.
	* ccmd.c, cconq.c: Ditto.
	* xcmd.c, xhelp.c: Ditto.

	* obstack.h, obstack.c: New files.
	* Makefile.in (OBJS): Add obstack.o.
	* help.c (get_help_text): Use obstack to build help text.

	* module.c (describe_game_modules, etc): Move to help.c.
	* help.c (describe_world): New help function and node.

	* mknames.c (choose_from_weighted_list): New function.
	(make_up_side_name): Call it.
	* mkunits.c (make_countries): Ditto, select from constructed
	list of possible units for the side.

	* world.c (init_world): Init area.temp_year.

	* machelp.c (draw_help): Draw a dividing line, erase larger area.
	
	* ng-weird.g: Add a game module form and blurb.
	* u-e1-1987.g: Add possible sides for most cities.

	* PROJECTS: Reflect above changes, add item about search
	button/command for help.

Fri Jul  5 17:07:12 1996  Massimo Campostrini <campo@sunthpi3.difi.unipi.it>

	* side.c (standing_order_desc): new function.

	* Xconq.ad: tweaks.
	* xconq.h (orders_radio): New member in UI.
	* xcloseup.c (orders_clone_call, orders_add_named,
 	deactivate_orders, orders_save_call, orders_restore_call,
 	orders_check): New functions; support for order save/restore;
 	cleanup.

	* Local.config: New file, common settings for Imakefiles.
	* Imakefile, SelFile/Imakefile, curses/Imakefile,
	kernel/Imakefile, x11/Imakefile: Use it.
	* INSTALL: Document that Local.config is available to modify.

Wed Jul  3 18:24:05 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* gvar.def (temperature-year-cycle): Remove.
	* keyword.def (daylight-fraction, twilight-fraction,
	temperature-year-cycle, units, sides): Add.
	* world.h (World daylight_fraction, twilight_fraction): New slots.
	(Area temp_year): New slot.
	* read.c, write.c: Read and write these slots.
	* world.c (init_world, set_world_circumference): Set them.

	* init.c (patch_object_references): Put units inside transports
	if they would vanish or wreck in the open.

	* side.h (Side possible_units): New slot.
	* side.c (init_sides, create_side): Set it.
	* mkunits.c (make_countries): If side has possible units that
	are present in the world, give one of them to the side.

	* stdunit.g (mp-to-enter-unit): Reduce aircraft landing times.
	(retreat-chance): Allow some units to retreat.
	* nat-names.g: Add possible units for some sides.
	* u-e1-1987.g (synthesis-methods): Add make-countries.

	* PROJECTS: Reflect above changes, remove some silly items.

Sun Jun 30 11:47:34 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* cconq.c: Fix decl.
	* unix.c (open_remote_connection, low_send, low_receive,
	close_remote_connection): Define.
	* skelconq.c, xconq.c (low_send, low_receive): Remove defns.

	* mplayer.c: If scorekeeper analysis fails, report to other players.
	(build_base_for_self, etc): Test u_is_base before deciding to build.
	* plan.c: Add some comments.

	* macconq.h (Map drawfeatureboundaries): New slot.
	* macmap.c (create_map): Set it.
	(draw_feature_boundary): New function.
	(draw_row): Call it.
	* macdraw.c (draw_feature_borders): New function.

	* macinit.c (interpret_variants): Disallow world size change if
	size already set.

	* macmap2.c (scroll_best_map_to_unit): Add argument to control
	whether map brought to front when found.
	* maclist.c, macmap2.c, macmenus.c, macwins.c: Update callers.

	* gazala.g: New file, Gazala battles 1942.
	* panzer.g: Don't assign numbers to wrecks.
	* ww2-pac-41.g: New file, Pacific Ocean in December 1941.
	* t-pacific.g: Fill in and adjust terrain.
	* ww2-div-pac.g (a-inf-bn): Add ground unit types of various sizes.
	(apd, aa): New ship types.
	* PROJECTS: Reflect above changes, remove item about decimal
	numbers.

Mon Jun 24 19:29:35 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* combat.c (elevation_blocks): New function.
	(found_blocking_elevation): Add actual testing of intervening
	elevations.
	(retreat_unit): Try entering units as well as moving.
	* init.c (check_game_validity): Check synthesis list.
	* lisp.h (Strm): Add slots for context display.
	* lisp.c (strmgetc, strmungetc): Record chars read.
	(sprintf_context): Change argument type, add display
	of last n chars read.
	* world.c (search_straight_line): New function.

	* PROJECTS: Reflect above changes.

Mon May 27 17:50:52 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* keyword.def (already-seen, already-seen-independent): New
	per-side properties.
	* side.h (Side already_seen, Side already_seen_indep): New slots.
	* init.c (already_seen_chance): New function.
	(init_view_cell): Call it.
	* mkroads.c (unit_sees_other_unit): Ditto.
	* read.c (fill_in_side): Interpret new properties.
	* write.c (write_side_properties): Write new properties.

	* unit.c, unit.h (sort_units): Add argument.
	* init.c (run_synth_methods): Update caller.
	* run.c (run_turn_start, run_restored_turn_start): Ditto.
	* write.c (write_units): Ditto.

	* tp.c (net_wake_area): New function.

	* cmdline.c: Add interpretation of -join, -host, remove -wait.

	* conq.h, util.c: Move debugging-related decls to misc.h.
	
	* mac.c (open_remote_connection): Add argument.
	(low_send, low_receive): Only do cursor ops if cursors defined.
	* macconq.c, macconq.h, macinit.c: Fix callers.
	(connection_method_dialog): Set name of connection method.

	* cconq.c (main): Add basic networking support.
	(init_display) [MAC]: Call nodelay.
	* cconq.c, ccmd.c: Include kpublic.h, translate calls to
 	network-aware versions.
	(launch_game): Fill in.
	(low_send, low_receive): Remove.
	(serial_port_dialog): Add dummy version.

	* PROJECTS: Add item about contour line display under X.

Sat May 25 15:14:54 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* ui.c (advance_into_cell): If an independent unit's type allows,
	enter it rather than attack.

Thu May 23 19:33:17 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* curses/Imakefile (DEFINES): Remove extra quote.
	* kernel/Imakefile: Undefine unix.

	* init.c (run_synth_methods): Sort units before running.
	* mknames.c (namerlist, lastnamer): New globals, list of all
	defined namers.
	(init_namers): Initialize them.
	(make_namer): Add new namer to end of list.
	* tp.c (download_to_player): Change download init packet to
	"GameModule".
	(net_send_message, broadcast_message, 
	(net_set_trust, etc): Add warning if networking not implemented
	for the operation.
	(net_set_side_self_unit, etc): Broadcast setting of value.
	(broadcast_unit_property, etc): Add side argument.
	(receive_packet): Make 'M' packet for messages, 'G' to start
	download.
	(receive_side_prop, receive_unit_prop): Interp more subtypes
	of packets.
	* write.c (write_globals): Don't write elapsed time before
	game starts.
	(write_namers): New function to write all namers.
	(add_to_packet): Fix bugs in handling of large strings.
	
	* lisp.c (sprintlisp): Add an argument maxlen, that is the
	maximum amount of buffer that may be written upon.
	(sprint_list): Ditto.
	* init.c, lisp.c, module.c, read.c, macconq.c, xinit.c: Change
 	all callers.

	* maccmd.c (message_dialog): Pass in prefix arg and use
	to seed choice of destination side(s).
	* macdesign.c (adjust_designer_cursor): Return a cursor
	handle instead of pointer.
	* macconq.c (adjust_cursor): Fix call to adjust_designer_cursor.
	(low_init_warning, etc): Write message to debug output file.

Sun May 19 12:07:33 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* xcmd.c, xdesign.c, map.c: Include kpublic.h, change all
 	references to kernel functions now declared in kpublic.h.

	* kernel.h (paint_cell, etc): Move decls here from world.h.
	* kpublic.h (net_paint_cell, etc): Declare.
	* tp.c (send_assignment): Add "assign" substring to packet.
	(send_id): Use a P packet instead of Y.
	(download_to_player): Set module original name.
	(net_request_additional_side, net_resign_game): Fill in.
	(net_set_side_longname, etc): Broadcast settings.
	(net_set_unit_plan_type, etc): Ditto.
	(broadcast_unit_property, broadcast_unit_property_2): New functions.
	(net_paint_cell, broadcast_layer_change, etc): New functions.
	(broadcast_packet): New function, use in other broadcasters.
	(receive_packet): Make new module be mainmodule, call new receive
	functions.
	(receive_action): Rebroadcast received action if master, don't
	call run_game.
	(receive_player_prop, receive_unit_prop, receive_world_prop): New
	functions.
	(receive_side_prop): Remove mistaken extra net_* calls.

	* macdesign.c (paint_cell, etc): Use network versions.

	* plan.c (decide_plan): Also test module original name to
	see if it is the intro game.
	* write.c (write_entire_game_state): Copy over original module
	name if set.

Thu May 16 18:56:08 1996  Stan Shebs  <shebs@andros.cygnus.com>

	Isolation of interface from kernel-modifying functions.
	* kernel.h: New file, declarations of functions callable
	only from kernel.
	* kpublic.h: New file, declarations of networking-aware
	functions available to interfaces.
	* conq.h, side.h, unit.h: Remove kernel-only function declarations.

	* actions.c, init.c, mkunits.c, mplayer.c, plan.c, read.c, run.c,
	score.c, side.c, task.c, tp.c, unit.c, world.c:	Include kernel.h.
	* actions.c, tp.c, ui.c: Include kpublic.h.

	* action.def: Add net_prep_... functions to all actions.
	* actions.c: Add definitions of net_prep_... functions.
	* plan.c (decide_plan, plan_offense, etc): Make static.
	* side.c (set_side_longname, etc): New functions.
	* tp.c (net_request_additional_side, net_resign_game, etc):
	New functions, network-aware versions of kernel modifiers.
	* ui.c: Change all references to kernel functions now declared in
 	kpublic.h.
	(disband_unit): Move to unit.c.

	* maccmd.c, macdesign.c, macmap2.c, macmenus.c, macwins.c:
	Include kpublic.h, change all references to kernel functions
	now declared in kpublic.h.

	* macconq.c: Fix reference to current_cursor.

Tue May 14 19:12:30 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* actions.c (prep_move_action, etc): Don't call
	broadcast_next_action.
	* ai.c (set_side_ai): Make any empty name disable AI.
	* run.c (run_game): Compress reports of no actions being run.
	* tp.c (send_join): Retry join message until acknowledged or
	tried many times.
	(tp_finish_turn, tp_set_side_ai, broadcast_side_str_property,
	tp_prep_move_action, tp_set_move_to_task, broadcast_add_task,
	receive_task): New functions.
	(receive_data): Remember remote sender's id across calls,
	compress debug reports.
	(receive_packet): Interpret 'T' packets.
	(receive_side_prop): Interpret ai and turn finish packets.
	(init_file_port): Fix setup of rids.
	(low_file_receive): Interpret mixed-message file.
	* ui.c (prep_move_action, etc): Define macros to map kernel
 	versions to networked versions.

	* macconq.h (Serial.h): No longer include.
	* macconq.c (connect_game_dialog): If join message never
 	acknowledged, close the connection and clear the state.
	* macinit.c (add_remote_player): Test player->rid.
	* maccmd.c, macmenus.c (finish_turn, etc): Define macros
	to map kernel versions to networked versions.

	* mac.c (connection_method, hosting): Move here from macconq.c.
	(open_remote_connection, close_remote_connection,
	init_serial_port, close_serial_port, low_send, low_receive,
	low_serial_send, low_serial_readchars): Ditto.

	* run.c (change_people_side_around): Add cover for own side,
	add/subtract cover for trusted sides.
	* PROJECTS: Update to reflect this.

Wed May  8 19:51:40 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* actions.c (unit_blockable_by): Fix a unit reference.
	* side.c (see_weather): Remove recursive call.

	* mac.c, unix.c (open_scorefile_for_reading,
	open_scorefile_for_writing): Open scorefiles in their own dir.

	* standard.g (scorefile-name): Define.
	* napoleon.g (surrender-chance-per-attack, retreat-chance,
	withdraw-chance-per-attack, acp-for-retreat): Add tables.
	* 1805.g: Disable construction more thoroughly, put some leaders
	in their corps.

	* PROJECTS: Remove items about scorefiles in subdirs and about
	Mac scorefile finding.

Sun Apr 28 16:17:38 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* tp.c (must_ack): New global.
	(send_packet): Use it.
	(broadcast_next_action): Use tprintf to format, bash the local
	unit's next action if not the master.
	(PACKETBUFSIZE): Reduce to more reasonable value.

	* macconq.c (open_remote_connection): Tweak must_ack instead
	of special_timeout when announcing self to remote.
	(nothing_count, nothing_timeout): New globals.
	(low_receive): Use them to compress debugging output.
	* macinit.c (add_remote_player): Remove serial line
	hack, move to player dialog handling.

Thu Apr 25 18:14:34 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* macconq.h (UI itertime): Remove slot, never used.
	* macconq.c (event_loop): Test my_rid.
	(open_remote_connection): Set remote ids correctly.
	* macinit.c (player_setup_dialog): Ditto.
	(add_remote_player): Use remotewanted slot of player.

	* side.h (side_has_display): Test for remote UI also.
	* tp.h (RUI): New structure.
	* tp.c (my_rid, master_rid, tmprid): New globals.
	(broadcast_next_action, etc): Test master_rid to decide
	whether to send to all or just to master.
	(special_timeout): New global.
	(send_packet): Use it.
	(receive_packet): Add debugging output to 'R' handling.
	(init_remote_ui): New function.
	* init.c (assign_players_to_sides): Call it.
	* nlang.c (long_player_title): Don't say "You" if player remote.
	* run.c (run_game): Remove tests of side->rid.
	* write.c: Use tmprid everywhere.

Mon Apr 22 19:08:24 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* tp.h: New file, declarations for transport protocol.
	* conq.h: Include it.
	* player.h (Player rid): New slot.
	* side.h (Side rid): New slot.
	* init.c (assign_players_to_sides): Set rid.
	* run.c (run_game): Use rid to decide if side really finished.
	(unit_still_acting_no_plan): New function.
	(side_move_some_units): Use it.
	* side.c (set_autofinish): Call broadcast_side_property.
	* tp.c (STARTPKT, ENDPKT, ESCAPEPKT): New definitions.
	(numremotewaiting, isremote, remote_id): Move to here.
	(send_id): New function.
	(download_to_player): Use it.
	(broadcast_side_property): New function.
	(send_packet): Add checksum and escape character machinery.
	(receive_data): Similarly, plus fixes to packet collection.
	(receive_packet): Understand 'S'ide and 'Y'ou packets.
	(receive_side_prop): New function.
	(fromhex, tohex): New functions.
	* write.c (add_to_packet): New function.
	(start_form, add_to_form, etc): Call it.
	(flush_write): New function.
	(write_game_module): Call it.

	* conq.h: Add many decls from other files.
	* actions.c, init.c, mplayer.c, read.c, unit.c, write.c: Move
	globally visible decls to conq.h.
	* lisp.h (for_both_lists): Move here from read.c.
	* player.h: Fix tabbing.

	* init.c (patch_object_references): Call shortest_unique_name
	to preallocate space.
	(prealloc_debug): Remove call to shortest_unique_name.

	* macinit.c (player_setup_dialog): Set up display name for
	players in remote program.
	(set_you_player): New function.
	* macdefs.h (cSendPacket, cReceivePacket): New cursor definitions.
	* macinit.c (sendcursor, receivecursor): New globals.
	* macconq.c (adjust_cursor): Use a global variable to record
	the current cursor.
	(low_send, low_receive): Adjust cursor to show data movement.

	* duel.g: Make sequential movement optional.

Thu Apr 18 20:06:52 1996  Stan Shebs  <shebs@andros.cygnus.com>

	Additional network support.
	* tp.c (send_packet): New function.
	(send_join, etc): Use it.
	(receive_data): New function.
	(receive_packet): Patch object refs after downloading.
	(receive_action): Collect actee and use.
	(low_file_send, low_file_receive): New functions.
	* write.c: Call send_packet instead of low_send.
	(write_run): Don't forget the comma!

	* macconq.c (close_remote_connection, close_serial_port): New.
	(file_port_dialog): Remove.
	(init_file_port): Move to tp.c.
	(low_send, low_receive): Move file code to tp.c.
	(event_loop): Call receive_data.
	(exit_macconq): New function, use instead of ExitToShell.
	* macmenus.c: Ditto.
	* macinit.c (add_remote_player): Limit remotes if serial line.

	* macmap.c (draw_contours): Handle case of no contours.

	* world.c (paint_elev_1): Adjust range of elevations if
	appropriate, update cells around altered cell (so contour line
	changes will show).
	
	* metz-1944.g: Add elevations layer, put artillery in forts.

	* PROJECTS: Remove implemented networking items, shift some general
	to kernel items.

Mon Apr 15 18:30:11 1996  Stan Shebs  <shebs@andros.cygnus.com>

	First pass at network support.
	* tp.c: New file, implements game transport protocol.
	* actions.c (broadcast_next_action): Move to tp.c.
	* imf.c (write_imf): Skip if fp is NULL.
	* lisp.c (read_form_from_string): Add argument that returns the
	rest of the string.
	* module.c (read_forms): Read from module's string contents if
	defined.
	* run.c (run_game): After testing for game start, always do rest
	of game state tests also, so first run_game call will do turn
	start calculations if appropriate.
	* write.c: Never use fp directly, always go through output
	functions.
	(start_form, etc): If not writing to file, send to remotes.
	(add_form_to_form, add_to_form_no_space, add_char_to_form,
	add_num_to_form_no_space): New functions.

	* macdefs.h (dConnectionMethod, etc): New definitions.
	* macconq.c (isremote): New global.
	(event_loop): Handle input from remote games.
	(connection_method_dialog): Fill in more details.
	(serial_port_dialog): New function.
	(file_port_dialog, init_file_port): New functions.
	* macinit.c (variants_dialog): Skip if remote (for now).
	(low_send, low_receive, low_serial_send, low_serial_receive,
 	low_serial_readchars):
	(send_assignment, download_to_player): Move to tp.c.

	* task.c (do_resupply_task): Return completion if not
	meaningful for the game.

	* ancient.imf (owl, shield-spear, winged-bull): New images.
	* pelops.g: Use them for side emblems.

	* milsym.imf (glider-bn): Add mask.
	* ww2-bn.g: Add more supply to places, disallow attacks by HQs.
	* metz-1944.g: New game, siege of Metz in 1944.
	* ww2-stdunit.g: Make bases be already seen, add side adjectives.
	* ww2s-pac-42.g: New game, Pacific theater using standard units.

	* PROJECTS: Reflect above items, add some new ideas.

Sat Apr  6 14:59:47 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* Version 7.1 released.

	* mac-sect.texi: Add more documentation about view menus.

Thu Apr  4 19:09:17 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* version.h: Bump to 7.1.0.

	* xconq.texi, gdlref.texi, playref.texi, curses.texi, mac.texi,
 	x11.texi: Update to 7.1.0 and current month.

	* curses-sect.texi, mac-sect.texi, x11-sect.texi: Rename from
	curses-chap.texi, etc.
	* curses-dsect.texi, mac-dsect.texi, x11-dsect.texi: Ditto.
	* play.texi, design.texi, curses.texi, mac.texi, x11.texi: Fix
	references.
	* doc/Makefile.in: Ditto.
	
	* design.texi: Fix a node.
	* curses-chap.texi: Fix some nodes.
	* curses-dchap.texi: Add descriptions of designer's commands.
	* mac-dchap.texi: Lower sections to subsections, etc.
	* x11-dchap.texi: Fix up sectioning generally.
	* curses.texi, mac.texi, x11.texi: Add chapter headings for
 	included sections.

	* mpw-make.in (OBJECTS): Add copying.c.o.

Wed Apr  3 19:01:12 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* curses-chap.texi: Escape @-signs in screen shot.
	* refman.texi: Fix node cross-references.

	* xcmd.c (do_disembark): Implement for real.

	* config.h: Include stddef.h et al if MPW_C.
	* nlang.c (vnotify): Define if MPW_C.

	* unit.c (change_cell_aux): Make static void.
	(flush_dead_units): Init prevunit always.

	* init.c (final_init): Remove unused locals.
	* mkroads.c (sort_road_segments): Ditto.
	* mplayer.c (remove_small_theaters): Ditto.
	* run.c (run_environment, mix_winds, run_disappearances,
	auto_repair_unit): Ditto.
	* task.c (do_move_to_task): Ditto.
	* unit.c (enter_cell, enter_cell_aux, leave_cell, change_cell,
	flush_dead_units): Ditto.

	* maccmd.c (do_dir): Remove unused locals.
	* macconq.c (play_movies): Ditto.
	* macimf.c (mac_load_imf): Ditto.
	* macinit.c (draw_world_outline, filter_world_setup): Ditto.
	* macmap.c (draw_contours): Ditto.
	* macmap2.c (drag_for_distance): Ditto.
	* macwins.c (create_scores_window): Ditto.

	* macconq.h (Scrap.h, Devices.h): Include.
	(NewAEEventHandlerProc, etc): Cast to appropriate types.
	
Tue Apr  2 18:53:06 1996  Stan Shebs  <shebs@andros.cygnus.com>

	Finish PowerMac port.
	* macconq.c (do_ae_open_application_proc, etc): New universal
	proc pointers, use instead of direct function calls.
	* machelp.c (draw_instructions_text_proc, etc): Ditto.
	* macinit.c (filter_splash_proc, etc): Ditto.
	* maclist.c (list_vscroll_proc, etc): Ditto.
	* macmap2.c (map_scroll_proc): Ditto.
	* macwins.c (history_scroll_proc, etc): Ditto.
	* macconq.h: Remove callback decls.
	(NewAEEventHandlerProc, etc): Provide default definitions.

	* ai.c (ai_save_state): Don't do anything if no reason.

	* fantasy.g (hit-chance, capture-chance): Bring chances
	within bounds.
	* empire.g (sides-max): Set to program's max.
	* ww2-eur-42.g: Fix position of German sub fleet.

Sun Mar 31 12:46:51 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* ww2-42.g: Use "uk" not "gb" as symbol for British side.

	* ai.c (basic_capture_worth): Account for capture by attack.
	* mplayer.c: Use trusted_side instead of comparing sides.
	(rethink_plan): Add case to detect chance to capture useful units.
	* plan.c (indep_captureable_here): Put found type into tmputype.

	* init.c (make_up_a_side): Fix decl.
	* read.c (read_rle): Fix case of reading a negative value not
	prefixed by a run length.

	* macconq.c, macinit.c: Add universal proc pointers for dialog
 	filters.
	* macdesign.c, macmenus.c: Don't cast to DlgHookProcPtr.

	* macdesign.c (OPTION_CYCLE): Add new arg for increment size.
	(do_mouse_down_design): Let Command-click adjust elev by 10.

	* gettysburg.g (eye-height): Define.
	(area cell-width): Set to measure in feet.
	(area aux-terrain stream): Fix course of Mule Run.
	(area elevations): Set to more realistic values overall.

	* PROJECTS: Clarify and add some Mac and interface items.

Fri Mar 29 17:32:23 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* task.def (move-to, occupy): Add direction choice as arg.
	* task.c (do_moveto_task, do_occupy_task): Use correct arg to
 	subtask.
	(do_approach_subtask): Comment out unused cases, add error
	warnings.
	(create_move_to_task, create_move_near_task, create_occupy_task):
	Initialize direction choice arg.

	* init.c (make_trial_assignments): Make prespecified assignments.
	* write.c (write_side_properties): Write player id.
	(write_player): Write player's id.

	* macwins.c (set_construction_length): Optimize slightly.
	(adjust_construction_controls): Don't use doctrine unless run
 	length is at least 1.
	
	* NEWS: Update to reflect changes last release.

Thu Mar 28 18:54:59 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* earth-2deg.g: Tweak terrain in various ways, move some cities
	to better locations, rename Leningrad to St Petersburg.
	* eur-50km.g, eur-100km.g, ww2-eur-42.g: Remove commented-out data.
	* fantasy.g (capture-chance): Uncomment, fix a clause.
	* future.g: Remove default cp table values, add toolup defns.
	* gettysburg.g: Remove commented-out data.
	(elevation-min, elevation-max): Set to realistic values.
	(area elevations): Fill in more realistic data.
	* hill.g: Remove old junk.
	* postmodern.g: Clean up construction and tooling defns.

Wed Mar 27 19:40:40 1996  Stan Shebs  <shebs@andros.cygnus.com>

	From Douglas Ghormley <ghorm@cayuse.CS.Berkeley.EDU>:
	* xcmd.c (do_add_terrain, aux_add_terrain_2): Fix typos.
	* xmap.c (handle_map_click): If a modal handler is present,
	call it and return.

Wed Mar 27 18:52:38 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* xhelp.c (update_help): Work around an apparent widget bug.

	* init.c (make_up_a_side): Fill in side from side-defaults.
	* read.c (for_all_list): Use in most places.
	(for_both_lists): New macro.
	(add_to_utypes, etc): Use it.
	(fill_in_doctrine): Alloc construction run vector if necessary.
	(interp_utype_list): Eval list of types.
	(interp_utype_value_list): Ditto, plus fill in missing cases.
	(interp_mtype_value_list): Ditto.
	* write.c (write_doctrines): Tweak output format.

	* macwins.c (editedrunlength): New global.
	(adjust_construction_controls): See construction run length from
	doctrine if defined.
	* maccmd.c (unit_do_build_2): Set editedrunlength from arg.

	* stdunit.g (doctrine construction-run): Fix syntax.

	* PROJECTS: Remove generic doctrine items, add specific items
	for doctrine handling in some interfaces.

Tue Mar 26 19:10:45 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* mplayer.c (give_up): Only resign to sides still in game.
	* side.c (side_loses): Warn and ignore rather than error out
	if trying to lose to nonsensical side.

	* fred.g: Reduce depot cp, increase army hp-max.
	(side-library): Remove.
	* 1756.g, 1757.g: Add side Empire, set more army HPs correctly,
	add some missing leaders.

	* PROJECTS: Add items about taking of units and layer mods.

Fri Mar 22 17:37:26 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* plan.c: If after calling resupply_if_low or rearm_if_low, and
	there is a task on the agenda, execute it and return.

	* ccmd.def (run): New command.
	(both): Remove command.
	* cconq.c (autofinish_start, autofinish_count): New globals.
	(init_interaction): Default to not auto-finish.
	(maybe_handle_input): Prefer to scroll to units already visible.
	(update_turn_display): Disable auto-finish if no longer free
	running.
	* ccmd.c (do_quit): Even better now.
	(do_resign): Add ability to resign to a specific side.
	(do_c_use_both_chars): Remove.
	(do_c_run): New function.
	(do_c_show): Add both-char and linear-char options.
	* cdraw.c (drawlinear, linear_char, bord_char, conn_char): New
	globals.
	(draw_terrain_row): Use them.
	(draw_units): Use cur_at for unit side separately.

	* curses-chap.texi, curses-dchap.texi, mac-chap.texi,
	mac-dchap.texi, x11-chap.texi, x11-dchap.texi: Move all
	section types "down" 1 level.

	* mac-chap.texi: Add explanations of map and list view menu items.

	* curses-chap.texi: Add a screen shot and explanation, document
	"run" and "show" commands, remove "both" command.

	* PROJECTS: Update to reflect above changes.

Wed Mar 20 19:04:47 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* macmenus.c (quit_the_game): Don't exit immediately just because
	everybody is declaring a draw.

	* cconq.c (announce_lengthy_process, announce_progress,
	finish_lengthy_process): Always write out begin/end notices.
	(exit_cconq): Write out final scores.
	* ccmd.c (do_add_player, do_detach, do_produce, do_resign):
 	Implement.
	(do_quit): Reorganize to work better.

	* PROJECTS: Remove curses command implementation items.

	* design.texi, play.texi: Remove raise/lower section stuff.

Mon Mar 18 18:12:54 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* nlang.c (constructible_desc): Add unit char if different
	from first char of type name.
	(construction_desc): Give more space to unit name and type.

	* macmenus.c (te_cut, te_copy, te_paste): New functions.
	(do_menu_command): Call them, on both command and construction
	windows.
	(adjust_menus): Enable Edit items for construction window.
	* macwins.c (set_construction_run_length): New function.
	(create_construction_window): Call it.
	* maccmd.c (do_build): Ditto.
	* macwins.c (do_key_down_construction): Recognize only chars of
 	types that can be constructed by the selected units, call TEKey on
 	all leftover chars.
	
	* imfapp.c (prealloc_debug): Add empty definition.

	* greek.g (acp-to-attack): Adjust siege engine needs to match
	available acp per turn.

	* refman.texi: Add information about library file structure.
	* curses-chap.texi: Fix a cross-reference.
	* mac-dchap.texi: Remove an obsolete comment.
	* texi2html: Add a -split_section option.

	* PROJECTS: Shift some projects from general to kernel,
	done with documenting library file standards and showing
	type chars in Mac construction window.

Fri Mar 15 17:28:24 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* macmap.c (grow_map): Fix calculation of invalrects.
	(draw_map_content): Draw extra rows at bottom, bug workaround
	rather than a real solution.
	(draw_unit_blast, clear_unit_blast): New functions.
	* macconq.c (play_movies): Call them.

	* PROJECTS: Move DOS-related item to testing, add item about
	redrawing Mac grow box.

Fri Mar 15 17:27:00 1996  Massimo Campostrini <campo@sunthpi3.difi.unipi.it>

	* xcloseup.c (update_order_widgets): Fix a bug.
	(order_tparms_call): Add more tasks.

Thu Mar 14 19:22:45 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* table.def (zz-basic-fire-worth): New table.
	* ai.c (basic_fire_worth, set_uu_bfw): New functions.
	(ai_init_shared): Call set_uu_bfw.

	* ai.c (basic_hit_worth): Test if acp allows attack.

	* ai.h (AI_ops planning_to_capture): New slot.
	* ai.c (ai_planning_to_capture): New function.
	* plan.c (victim_here, target_here): Call it.
	(indep_captureable_here): Only consider if capture chance is at
	least 10%.

	* mplayer.c (compute_theater_bounds): New function.
	(review_theaters, remove_small_theaters): Call it.
	(mplayer_planning_to_capture): New function.

	* run.c (side_move_some_units): Use fast play rate if all sides
	are moving sequentially.

	* unit.h (for_all_tasks): New macro.
	* nlang.c, plan.c, write.c, macmap.c, macwins.c: Use it.

Wed Mar 13 19:51:23 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* macinit.c (draw_player_setup_list): Shrink vertical space
	for side/player info if many sides.
	(hit_player_setup_dialog): Beep if side removal fails.

	* actions.c (unit_blockable_by): Use trusted_side.
	* combat.c (capture_unit): Give captured unit to
	original side if friendly to it.
	* nlang.c (unit_handle): Describe original side if defined.
	* read.c (interp_unit_defaults, interp_unit): Evaluate value
	of side and origside properties.

	* eur-100km.g, ww2-eur-42.g: Tweak shape of USA.
	* ww2-eur-42.g: Add more US cities, set original sides for
	occupied cities, declare that France trusts all Allies.

	* panzer.g (acp-to-attack): Disable attacks on wrecks or blocks.

	* refman.texi (bridge): Describe.

	* PROJECTS: Reflect above changes.

Tue Mar 12 20:08:36 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* world.c (paint_border, paint_connection): Update cell displays
	manually, since see_exact may not.

	* xdesign.c (design_terrain_callback, design_bg_terrain_callback):
	Update controls and cursor for all maps.
	
Tue Mar 12 18:41:11 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* lisp.c (fprintlisp): Write strings and symbols with appropriate
	escape codes and quoting for special characters.
	* write.c (write_globals): Suppress evaluation of global Lisp
	variables being written.

	* mkrivers.c (make_up_river_borders): Add better rules for
	when to stop tracing a river, remove weird code bit that
	was aborting 3/4 of river creation.
	(DebugRiver): New global, controls debugging feature creation.

	* midearth.g, napoleon.g, stdterr.g, ww2-adv.g, ww2-div-eur.g,
	ww2-div-pac.g (river-chance): Adjust down by about 4, to be
	consistent with change to mkrivers.c.

	* play.texi: Add more info about standing order handling.

	* PROJECTS: Update for above changes, clarify some testing items.

Mon Mar 11 19:57:35 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* actions.c (in_blocking_zoc): Fix calculation when units are
	in same cell.
	* combat.c (do_overrun_action): Account correctly for ZOC
	effects and movement costs.
	* game.h (TableDefn): Make index1, index2 char-sized slots.
	* mkrivers.c (make_up_river_borders): Create river-related
	features (for debugging), don't flip directions after source
	has been chosen.
	* mkterr.c (flatten_liquid_terrain): Raise up low spots that
	are all-liquid before lowering spots around edges.
	* plan.c (low_on_supplies_one): Be true if supply at exactly
	half of fullness.
	* run.c (compute_sun): Use world's axial tilt.
	* unit.c (change_unit_type): Count losses and gains.

	* mplayer.c: Numerous cleanups and improvements.
	(determine_subgoals): Add goals to protect own starting units.
	(remove_theater): New function.
	(remove_small_theaters): Use it.
	(has_unsatisfied_goal): New function.
	(mplayer_decide_plan): Use it.
	(mplayer_react_to_action_result): Check supply levels.
	
	* macmap.c (draw_row): Fix shortening of row.
	* macwins.c (draw_side_status): Rewrite so that entire progress
	bar disappears for non-moving sides when players move sequentially,
	and to show units in reserve with a dark gray area.

	* gettysburg (world): Set the world's axial-tilt.
	* sc4.g: New game, emulation of a popular Mac game.

	* refman.texi: Add more details about combat tables, remove
	all internal-only symbols prefixed with "zz-".

	* lib-uses.h, src-uses.sh, sym-diff.sh, getsyms.h: Ignore symbols
	beginning with "zz-".

	* PROJECTS: Remove items corresponding to above changes,
	add project to implement old "bridge" table, add project
	to get weak mplayers to ally with each other.

Wed Mar  6 19:26:56 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* mkterr.c (compose_area): Account for complicated combinations
	of terrain elevation ranges.

	* unit.c (change_unit_type): Update view coverage before and
	after type change.

	* macconq.c (update_unit_display): Unselect dead units.
	* macmap.c (draw_contours): Never use more than 20 contour lines.

	* empire.g: Add combat capability for fortresses.
	(unit-storage-x): Add combat-related storage capacity.
	(in-length): Let every unit get petroleum up to 2 cells away.
	(out-length, in-length): Every unit can get every material
	from an adjacent unit.

	* panzer.g (alt-percentile-min, alt-percentile-max): Reduce
	amount of slope terrain.

	* stdterr.g (elevation-min): Don't let mountain and ice
	elevations overlap with others.
	
	* x11-chap.texi: Document how to set see-all to false from
	the command line.

Mon Mar  4 18:13:51 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* misc.h (LibraryPath, xconq_libs, etc): Move here from system.h.
	* xutil.c: (xconqlib): Remove.
	(xconq_libs, prealloc_debug): Define so utility progs link.

	* actions.c (make_unit_complete): Have transport share any
	available supply.
	* imf.c (best_image): Don't return exact match images if
	they are tiles.
	(right_depth): Remove, useless.
	* imf.h (right_depth): Ditto.
	* mkterr.c (make_blobs): Scale down dz a second time if still
	too large.
	(smooth_layer): Fix calculation around edges.
	(compose_area): Remove redundant inside_area test, clip elevations
	to bounds.
	(set_edge_values): Clip elevations to overall area bounds.
	* plan.c: Set movement tasks rather than pushing them usually.
	* run.c (try_sharing): Don't make static.

	* macconq.h (MOVE_TO_MODAL): New mode.
	* macconq.c (adjust_cursor): Add new mode to switch.
	* maccmd.c (do_move_to): Implement.
	(do_move_to_command, do_one_move_to): New functions.
	* macmap2.c (do_mouse_down_map_content): Add new mode.
	* macmenus.c: Call query_position_modally instead of do_move_to.

	* macdefs.h (sicnMiss, sicnHit, sicnKill): New small icons.
	* macdraw.c (numblastsicns, blastsicnhandle): New globals.
	(draw_blast_image): Rewrite to load and use blast icons.

	* macmap.c (draw_contours): Use min of elevs at corner if any of
 	adjacent cells is liquid terrain.

	* flags.imf (flag-germany): Fix ordering of colors.
	* panzer.g (elevation-min, elevation-max, alt-percentile-min,
	alt-percentile-max): Tweak to make elevations more plausible.
	* stdterr.g (elevation-min, elevation-max): lower mountain
	elevation range, make ice only at high elevtioans.
	(liquid): Don't classify ice as a liquid.
	(river-chance): No chance for ice, higher chance for mountains.
	* stdunit.g (mp-to-enter-terrain): Don't let ships use roads.

	* PROJECTS: Clarify many items, dispose of a couple.

	From Tom Baker <twb@aloft.att.com>:
	* empire.g: Add distinct images to many unit types, refueling
	at harbors and airfields, varying acp-per-turn and cp for many
	types, varying capture chances,
	(see-chance, independent-capture-chance, protection): Define.
	(attack-terrain-effect, defend-terrain-effect): Add, but empty.
	(cp-on-creation, cp-per-build): Remove, values are all defaults.

Fri Mar  1 16:30:13 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* system.h (LibraryPath): New structure.
	* init.c (xconq_libs, last_user_xconq_lib): New globals.
	(add_library_path): New function.
	(init_library_path): Call it.
	* cmdline.c (parse_command_line): Ditto.
	* mac.c, unix.c (open_module_library_file, etc): Iterate through
 	list of library paths to find a file to open.
	* ui.c (get_generic_images): Use xconq_libs.

	* init.c (prealloc_debug): New function.
 	(final_init): Call it.
	* util.c (toggle_debugging): Ditto.
	* unit.c (unit_desig): Allocate all buffers if arg == NULL.
	
	* actions.c (move_unit): Only use change_cell for units in open.
	* cmdline.c (parse_command_line): Be more informative about
	unrecognized options.
	* score.c (point_value, side_point_value): Count scheduled
	reinforcements in the side's points.
	* unit.c (init_unit_extras): Init point value to negative value.
	(change_cell_aux): Set occupant position here instead of in
	change_cell.
	* write.c: Move external decls to top of file.

	* macmap.c (draw_row): Don't draw contour lines if viewing
	map at an angle.

	* gettysburg.g (already-seen): Everybody sees all initial units
	on the map.
	* napoleon.g (supply): New material type, merges food and shot.
	(mp-to-traverse): Let roads negate difficult terrain.
	* 1805.g: Fix side of some leaders, add road and river data.

	* PROJECTS: Update to reflect above changes, add item about
	displaying features boundaries in Mac interface.

Sun Feb 25 15:13:39 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* config.guess: Update from FSF version, gets new OS bits.

	* xdesign.c (update_curttype): Don't call set_design_tool,
	but call it after most calls to update_curttype.

	* side.h (alt_cover, set_alt_cover): New macros.
	* side.c: Rewrite line-of-sight code again.
	* unit.c (change_cell, change_cell_aux): New functions.
	(set_unit_position, add_unit_to_stack, remove_unit_from_stack,
 	glimpse_adjacent_terrain): New functions, also call these instead
 	of multiple inline code fragments.
	* actions.c (move_unit): Call change_cell.

	* dir.h (angle_with): Move to here from actions.c.
	* combat.c (capture_unit_2): Assign number to captured unit.
	* mknames.c (make-namer): Remove excess declaration.
	* mkterr.c (compose_area): Compute and use actual range of
	raw elevations to choose real elevations.
	* ui.c (xform_unit): Warn but don't fail if unit not actually
	in stack.
	* world.h (World daylight_width): Rename from circumf_3_10.
	(World twilight_width): New slot.
	* world.c (final_init_world): Seed area.minelev and area.maxelev
	from actual values.
	* write.c (write_entire_game_state): Don't require mainmodule
	to exist.
	(write_area_elevations): Write out offset from area.minelev.
	(fn_elevation_at_offset): New function.

	* macmap.c (draw_contours): New function, draws contour lines
	in a cell.
	(draw_row): Call it.
	* macdraw.c (draw_coverage): Also show alt cover if debugging.

	* gettysburg.g: Add line-of-sight, thickness for tree-covered
	terrain, greater elevation variations.
	* panzer.g (eye-height): Define.

	* hacking.texi: Add warning about use of malloc.

	* PROJECTS: Update to reflect project completions.

Thu Feb 22 17:11:34 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* table.def (counterattack, countercapture): Rename from
	counter-attack and counter-capture.
	* combat.c: Update references.

	* keyword.def (sides): Remove, not really part of GDL.
	* score.c (interp_score_record): Match keyword "manually".

	* xcmd.c (do_add_player, do_resign): Implement.
	(aux_resign_b): New function.

	* xconq.h (cellpainttool): Rename from terrainpainttool.
	(bordpainttool, connpainttool): New tool types.
	* xdesign.c (set_design_tool): Choose terrain tool based
	on terrain subtype.
	(update_curttype): Call set_design_tool after changes.

	* xinit.c (snowy.b, elev.b, therm.b, units.b, resource.b):
	Don't include unused bitmaps.
	(init_cursor): Set up cursors for border and connection painting.

	* commands.texi: Add some details about some commands.
	* refman.texi (if-needed): Remove description.
	(counterattack, countercapture): Make names match code.
	* x11-chap.texi: Add description of new commands, details
	about how to restore multiplayer saved games.

	* PROJECTS: Remove items about X11 commands and bitmaps.

Mon Feb 19 17:02:38 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* unit.c (flush_dead_units): Handle case of empty unit list.

	* keyword.def (sides): New keyword.
	* score.c (ScoreRecord): New structure, record of old game.
	(records, last_record): New globals.
	(read_scorefile, interp_score_record, get_scores): New functions.

	* macdefs.h (miWindowsScores): New windows menu item.
	(wScores): New window.
	* macconq.h: Declare scores window variables and functions.
	* macconq.c: Call grow, zoom, mouse down, etc routines for scoreswin.
	* macwins.c (scoreswin, scores_text, scores_v_scrollbar): New
	global variables.
	(scores_dialog, create_scores_window, etc): New functions.

	* plan.c (low_on_supplies_one): New function.
	(resupply_if_low): Call it.
	(rearm_if_low, low_on_ammo_one): Similarly.
	(supplies_here): True only if not self and will transfer supply.
	* task.c (do_resupply_task): Test first argument to decide
	whether to resupply a particular material or all of them.
	(set_resupply_task): Add argument for material type.
	(create_resupply_task): New function.
	* maccmd.c (do_resupply): Update call to set_resupply_task.
	* xcmd.c (do_resupply): Ditto.
	* ccmd.c (do_resupply): Ditto.

	* init.c, side.c: Remove redundant test of cover array.
	* mkunits.c (make_countries): Simplify code.
	* plan.c (operating_range_best): Rewrite calculation to be correct.
	* run.c (change_people_side_around): Update displays if coverage
	change.
	* side.c (calc_coverage): Add coverage for see-always units.
	* ui.c (parse_long_name_command): Fix details, remove trailing
	whitespace from the argument.

	* run.c (players_requested): New global.
	(request_additional_side): Add argument specifying player.
	(add_new_sides_to_game): Use player specs, init unit gain.
	* cmdline.c (parse_player_spec): Move to run.c.
	* maccmd.c (do_add_player): Pass arg to request_additional_side.

	* macdraw.c (draw_coverage): Use local buffer.
	* macmap.c (draw_row): Don't draw coverage numbers if cells too
 	small.
	(draw_cliffs): Abut right and left cliffs even if grid drawing
	is on.
	* macwins.c (activate_notice): Activate the notice's text.

	* cconq.c (sioux.h) [__MWERKS__]: Include.
	(main) [__MWERKS__]: Configure the SIOUX window.
	(InstallConsole, etc): Remove, assume SIOUX linked in.
	* v_maccur.c (maccur_event_loop) [__MWERKS__]: Check for
	SIOUX events.

	* PROJECTS: Update scores window item.

Tue Feb 13 19:45:38 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* side.c (parse_order_cond): Init locals before using.

	* macconq.c, ui.c, util.c [MWC_INIT_BUG]: Remove nasty MW CW6 bug
 	workaround, no longer needed.
	* macmenus.c (adjust_menus): Cast arg to GetScrap.

	* cconq.c (main) [__MWERKS__]: Get command-line arguments.
	(InstallConsole, etc): Define as empty functions.
	* ccmd.c (do_save): Get result from ask_string.
	* cdraw.c (set_scroll): Initialize locals correctly.

	Add Metrowerks compatibility to libcurses.
	* curses.h (QD): Define to expand into QD global refs.
	* v_maccur.c: Use it.
	* curses.c (wdeleteln): Initialize local before using it.

Mon Feb 12 19:32:59 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* macdefs.h (aConfirmResign): New alert.
	* maccmd.c (do_resign): Implement.

	* macinit.c (draw_world_outline, dims_from_point): New functions.
	(filter_world_setup): Rubberband world outline while mouse down.

	* macwins.c (draw_historical_event): Don't draw anything that
	would overlap the bottom scroll area.

	* macconq.c (event_loop): Call TEIdle for command window.
	(handle_event): Change to return void.
	(activate_window): Call activate_command for command window.
	* maccmd.c: Add notices to go along with error beeps,
	clean up textual command handling code.
	(activate_command): New function.
	(get_command_and_do): New function.
	(do_key_down_command, do_mouse_down_command): Call it.
	* macmenus.c (do_menu_command): Handle editing shortcuts for
	the command window.
	(adjust_menus): Enable/disable edit menu items correctly.

	* PROJECTS: Update to reflect above changes.

Thu Feb  8 18:56:37 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* xconq.c (fire_state): New structure.
	(animate_fire_proc): New function.
	(update_fire_at_display): Set up timeout to call animate_fire_proc.

	* xconq.c, xshowimf.c, xutil.c (strdup): Replace with calls to
	copy_string everywhere.

	Make the Mac textual command dialog nonmodal.
	* maccmd.c (enable_command, create_command_dialog, draw_command,
	do_key_down_command, do_mouse_down_command): New functions.
	* macconq.h: Declare them.
	* macconq.c: Call them from appropriate window dispatchers.
	* macdefs.h (miWindowsCommand): New menu item.
	(wCommand, cCommandDoButton): New window and button.
	* macmenus.c (do_menu_command, adjust_menus): Handle new menu item.

	* PROJECTS: Remove above item.

Tue Feb  6 20:40:26 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* xconq.c (update_fire_at_display, update_fire_into_display):
	Call compute_fire_line_segment.

Mon Feb  5 18:57:58 1996  Massimo Campostrini <campo@sunthpi3.difi.unipi.it>

	* xcloseup.c: For unit closeup, add drawing of unit's toolup level
 	if any, for side closeup, add drawing of side's tech level and
 	trusted sides if any, for orders popup, implement editing of
 	condition, task type, task parameters (incomplete but working).
	* Xconq.ad, Xconq-co.ad: Add resources for above changes.

Wed Jan 31 19:47:06 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* mplayer.c (estimate_strengths): Rework strength estimates
	if a new side has been added.
	(mplayer_react_to_new_side): Call estimate_strengths.

	* write.c (write_rle): Put out a '*' to separate run from value
	if the value is negative.
	* read.c (read_rle): Handle negative values.

Mon Jan 29 20:57:22 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* run.c (add_new_sides_to_game): Recalculate views of all sides.
	(finish_movement): Don't call flush_side_dead.
	* side.c (cover_area): Use different vision ranges for start
	and end	locations, update cell display when coverage starts or
	ends at 0.

	* unit.c (flush_dead_units): Rewrite to really work.
	(put_unit_on_dead_list, flush_side_dead): Remove, no longer used.

	* gettysburg.g (initial-day-part): Fix.

	* refman.texi (if-needed): Document as its own symbol,
	helps automated src/doc comparisons work.
	* PROJECTS: Various new ideas.

Fri Jan 26 17:58:30 1996  Stan Shebs  <shebs@andros.cygnus.com>

	From Tom Baker <twb@aloft.att.com>:
	* postmodern.g: Clean up garbage left over from automated
 	conversion.

Thu Jan 25 19:28:51 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* xconq.c (update_cell_display): Don't try to draw coverage
	changes.

	* xcloseup.c (TASK_MOVETO): Rename to TASK_MOVE_TO.
	* xcmd.c, xmap.c (set_move_to_task): Rename from set_moveto_task.
	* ccmd.c: Ditto.
	* xcmd.c (set_move_dir_task): Rename from set_movedir_task.
	* cconq.c: Ditto.
	
	* run.c (add_new_sides_to_game): Resize unit opinions, make
	interfaces update completely, reset count of sides to add.
	* unit.c (init_unit_opinions): Add an argument, resize the
	opinion if there are more sides in the game.
	* read.c, unit.c, unit.h: Fix callers and declarations.
	
	* refman.texi: Fill in more task type descriptions, reorganize
	backdrop environment section and add more details there.
	(ever-active): Describe.
	* curses-chap.texi: Various minor clarifications.

Mon Jan 22 20:13:44 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* gvar.def (advantage-default, advantage-max, advantage-min):
	Limit extremes to 100 instead of VARHI.
	* task.c (do_approach_subtask): New function, split out from
	do_move_to_task.
	(do_occupy_task): Use it to approach the transport.
	(parse_unit, parse_location): New functions.
	(parse_task): Call them, interpret more kinds of task argument
	type letters.

	* commands.texi (follow-action): Clarify effect.
	* play.texi: Various minor wording improvements.
	* playref.texi: Update year.
	* refman.texi: Describe vision parameters in more detail,
	improve wording of spying parameters.
	* x11-chap.texi: Add detail about unit info window.

Fri Jan 19 17:35:46 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* game.h (PROPLO, PROPHI, TABLO, TABHI, VARLO, VARHI): New macros,
	symbolic limits on values of GDL parameters.
	* gvar.def, table.def, ttype.def, utype.def: Use them.

	* task.def (TASK_CAPTURE): Rename from TASK_CAPTURE_UNIT, add
	unit type and side arguments.
	(TASK_MOVE_DIR, TASK_MOVE_TO): Rename from TASK_MOVEDIR, etc.
	* task.c (do_capture_task): Rename from do_capture_unit_task,
	add code to use unit type and side to decide what to go after.
	(do_move_dir_task): Rename from do_movedir_task.
	(do_move_to_task, create_move_to_task, etc): Similarly.
	(create_move_near_task): Similarly.
	(do_move_dir_task, etc): Similarly.
	* mplayer.c, nlang.c, plan.c, ui.c, unit.h: Change all callers.
	* maccmd.c, macmap.c: Ditto.

	* xconq.texi: Update dates.
	* play.texi: Remove empty trade section, add standing order
	description.

Thu Jan  4 19:43:25 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* system.h (open_scorefile_for_reading, open_scorefile_for_writing):
	Declare.
	* unix.c (open_scorefile_for_reading, open_scorefile_for_writing):
	New functions.

Wed Jan  3 19:29:57 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* side.c (init_visible_elevation_2, calc_visible_elevation_2): New
	functions.
	(cover_area): Use these for new location elevation visibility
	calculation.

	* maccmd.c (do_distance): Implement.
	* macconq.h (DISTANCE_MODAL): New enum.
	* macconq.c (adjust_cursor): Add DISTANCE_MODAL.
	* macmap2.c (drag_for_distance): New function.
	(do_mouse_down_map_content): Call it.

	* macdefs.h (mViewAngles): New menu.
	(miViewAngle): New view menu item.
	* macmenus.c (init_menus): Create view angle menu.
	(do_menu_command): Handle view angle menu.`

	* macmap.c (update_cell_display): Don't update if only
	coverage changed and not currently displaying coverage.
	(draw_unit_info): Use supply_desc.

	* macwins.c (draw_side_status): Don't error out if previous
	status nonexistent, just warn and return.

Tue Jan  2 19:30:30 1996  Stan Shebs  <shebs@andros.cygnus.com>

	* keyword.def (ever-active): New keyword.
	* side.h (Side everingame): New slot.
	* read.c (fill_in_side): Read it.
	* write.c (write_side_properties): Write it.
	* run.c (init_movement): Set everingame for sides.

	* table.def (counter-attack, counter-capture): New tables.
	* combat.c (one_attack): Add counterattack and counter-capture
	support.

	* side.c (cover_area): Rewrite to calculate both decrement
	of coverage at old location and increment at new, change
	argument list to include both locations.
	* actions.c (make_unit_complete): Update call to cover_area.
	* unit.c (enter_cell_aux, leave_cell_aux): Ditto.

	* mac.c (open_scorefile_for_reading, open_scorefile_for_writing):
	New functions.
	* score.c (record_into_scorefile): Use open_scorefile_for_reading,
	don't record details of sides never in the game.

	* ai.c (ai_init_shared): Remove computation for t_fraction.
	(set_t_fraction): Remove.

	* nlang.c (side_name, side_adjective): Move here from side.c.
	(supply_desc, location_desc): New function.
	* xdraw.c (draw_map_info): Use it.

	* mplayer.c, plan.c, ps.c, run.c, side.c, ui.c: Use all_see_all
 	instead of g_see_all.
	* xcmd.c (aux_move_look): Ditto.
	* xmap.c (create_map, create_map_controls, etc): Ditto.

	* plan.c (victim_here, target_here, etc): Use units_visible
 	instead of g_see_all.
	* task.c: Ditto.
	* ccmd.c (do_fire): Ditto.

	* PROJECTS: Reflect above changes, remove some nonsense items.

Sat Dec 30 12:35:25 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* module.c (load_default_game): Load the default base module
	of the default base module, if defined.

	* ai.h (AI_ops to_react_to_new_side): New slot.
	* ai.c (ai_react_to_new_side): New function.
	* mplayer.c (mplayer_react_to_new_side): New function.
	* run.c (add_new_sides_to_game): Compute priority of new
	side, call ai_react_to_new_side for other sides if needed.

	* lisp.c (print_form_and_value): New function.
	* module.c (read_forms, do_one_variant): Call end_printing_forms.
	* read.c (interp_form): Call print_form.
	* skelconq.c (print_form, end_printing_forms): New functions.
	* xconq.c (print_form, end_printing_forms): Ditto.
	* cconq.c (print_form, end_printing_forms): Ditto.
	* macconq.c (print_form, end_printing_forms): Ditto.
	* maccmd.c (do_gdl): Call end_printing_forms.

	* cconq.c (printlisp): Remove, never used.
	* xconq.c (printlisp): Ditto.

	* ui.c (record_imf_get): Allocate more space to record
	gotten images if necessary.

	* PROJECTS: Clarify some items, remove item about making
	print form work.

Thu Dec 28 17:59:56 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* ui.c (compute_fire_line_segment): New function.
	* macconq.c (update_fire_at_display, update_fire_into_display):
	Use it to calculate fire lines to draw.

Mon Dec 18 19:41:48 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* gvar.def, ttype.def, utype.def: Fix some bounds.
	* table.def: Fix some range table bounds.

	* unit.h (Plan execs_this_turn): New slot.
	* plan.c (execute_plan): Increment and test for too many
	plan executions in one turn.
	(plan_random): Make generation of random tasks more realistic,
	use add_task instead of setting tasks slot directly.
	* run.c (compose_actionvectors): Clear units' execs_this_turn.
	* task.c (aux_resupply_here): Use unit_trusts_unit.

	* test/loop.g: New file, test of mplayer AI looping bug.

	* commands.texi: Document standing order command.
	* PROJECTS: Add items about image handling for older Macs.

Sat Dec 16 08:39:22 1995  Massimo Campostrini <campo@sunthpi3.difi.unipi.it>

	* time.g: Reduce rate of progress, add variant for even slower
	progress, make various other tweaks.

Tue Dec 12 19:21:54 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* imfapp.c (make_imf_resources): Clear base addresses of pixmaps
	and bitmaps that will go into cicn resource.
	(draw_topline): Display imf notes if present.
	* macimf.c (mac_interp_imf): Use mono and mask sicns to build
	16x16 cicn bitmaps and masks.

Mon Dec 11 18:49:50 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* imf.h (Image notes, ImageFamily notes, ImagePalette notes,
	ImageColor notes): New slots.
	* imf.c (new_imf, get_img, new_image_palette, new_image_color):
	Init notes slots.
	(interp_imf_contents, interp_image, interp_palette, interp_color):
 	Read notes slots.
	(write_imf, write_imp, write_imc): Write notes slots.
	* lisp.c (fprintlisp): Check for attempts to print NULL object.

	* PROJECTS: Update to reflect above changes.

Sun Dec 10 16:34:47 1995  Massimo Campostrini <campo@sunthpi3.difi.unipi.it>

	* xconq.h (Map panner_pix): New slot.
	* xmap.c (create_map): Init panner_pix.
	(draw_view_in_panner): Use map's panner pixmap instead of local var.

	* Imakefile, curses/Imakefile, SelFile/Imakefile, kernel/Imakefile:
	Use a separate CDEBUGFLAGS in each subdir's Imakefile.

Sun Dec 10 15:54:35 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* table.def (bridge, in-length, independent-density, out-length):
	Fix bounds of table values.
	* utype.def (hp-per-disband): Fix bounds.

	* config.h (REUSE_DEAD): Remove.
	* game.h (canaddutype, canaddmtype, canaddttype): Declare.
	* generic.c (canaddutype, canaddmtype, canaddttype): Move here
	from read.c.

	* actions.c (do_repair_action, do_transfer_part_action): Call
	add_to_unit_hp to modify hp.

	* side.h (Side point_value_cache, point_value_valid): New slots.
	* score.c (side_point_value): New function.
	(eval_sk_last_side_wins): Use it.
	* nlang.c (side_score_desc): Ditto.
	* unit.c (change_unit_type, change_unit_side, kill_unit_aux):
	Invalidate sides' point value caches.

	* plan.c (execute_standing_order): Add "in" and "near" cases.
	* task.c (parse_task): Add argument (side), parse all kinds of
	tasks, report syntax errors to player.
	(lookup_task_type): Move here from read.c.
	* side.c (add_standing_order): Add case for order removal.
	(order_conds_match): New function.
	(parse_unit_type, parse_order_cond): New argument (side), handle
	more cases, report syntax errors to player.
	(get_next_arg): Handle quoted arguments.

	* side.h (Side instructions, knows_about, coverage_alt): New
 	slots.
	(Doctrine): Make construction_run pointer instead of array.
	* side.c (init_sides, create_side): Init instructions.
	(init_doctrine): Allocate construction_run.
	(clone_doctrine): Clone construction_run data also.

	* read.c (set_utype_property, fill_in_mtype, fill_in_ttype,
 	CHECK_VALUE, interp_variable): Check property value bounds, check
 	value types.
	(interp_utype_list, etc): Return if output array is NULL.
	(read_layer): See chartable with identity map in the by-char
	and by-name cases.

	* world.c (allocate_area_people_sides): Init with memset.

	* ww2-adv.g: Disable sub-fleet attacks against non-ships,
	add in-lengths and out-lengths for various units.
	* ww2-42.g (people-sides): Fix encoding of unpopulated areas.

	* refman.texi: Various cleanups, description of interpolation
	lists.

	* PROJECTS: Add many small items, remove those resolved above.

Tue Dec  5 18:58:12 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* Xconq.r: Add connection method dialog, unit info item to menu.
	* IMFApp.r, Xconq.r: Update version resources.

Mon Dec  4 20:03:26 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* mplayer.c (mplayer_decide_plan): Fix NULL deref found by
	automated testing of time.g.

Mon Dec  4 19:31:55 1995  Massimo Campostrini <campo@sunthpi3.difi.unipi.it>

	* aircraft.imf, sf.imf: Add masks for many images.

Mon Dec  4 19:05:16 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* game.h (VarDefn): Add slots for setters.
	* generic.c (vardefns): Initialize them.
	(init_globals): Call setters unconditionally.
	* read.c (interp_variable): Loop through vardefns to find the
	global to set.
	* write.c (write_globals): Ditto.

	* history.h (HistEvent): Remove unused slots.

	* unit.c (designer_change_side): New function.
	* macmenus.c (do_one_give_unit): Use it.

	* nlang.c (side_score_desc): New function.
	* macwins.c (draw_side_status): Use it.

	* plan.c (can_produce): New function.
	(can_build_or_help): Ditto.
	* macwins.c (update_construction_unit_list, etc): Use it.

	* task.def (produce): New task type.
	* task.c (create_produce_task, push_produce_task,
 	do_produce_task): New functions.

	* history.h (HistEvent): Use SideMask for side bit vector.
	* side.c (send_message): Ditto.
	* unit.h (Unit): Ditto.
	* macconq.h (List): Ditto.

	* maccmd.c (unit_do_build_2): New function.
	(do_build): Use it.
	(do_produce): Implement it for real.
	(unit_do_produce_2): New function.

	* conq.h, game.h, history.c, lisp.c, mkrivers.c, mkroads.c,
 	nlang.c, score.h, side.h, ui.h, world.c, macinit.c, macmap2.c:
	Use "int" instead of "long" wherever 32-bit integers will suffice.

	* empire.g: Generalize to use list of engineer types instead
	of just engineers.
	* mars.g: Many changes, including stacking, construction, combat.
	* ww2-eur-42.g: Move Le Havre to more plausible location.

	* PROJECTS: Update to reflect above changes, add many new items.

Thu Nov 30 19:39:21 1995  Massimo Campostrini <campo@sunthpi3.difi.unipi.it>

	* ai.h, ai.c, mplayer.c: Change argument rslt from int to
	TaskOutcome in functions ai_react_to_task_result,
	to_react_to_task_result, mplayer_react_to_task_result.

	* mplayer.c: New "ad hoc" code to handle research and ugrading
	for the "time" period.  New routines assign_to_research_on,
	can_research_on, needs_research, find_game_class.  Code added
	to mplayer_init, mplayer_init_turn, reset_strategy,
	decide_resignation, review_units, mplayer_decide_plan.
  	(GameClass) New	enum.
	(game_class): New global.

	* mplayer.c (mplayer_preferred_build_type): Return NONUTYPE
	if it cannot make a selection.
	(select_by_weight): Return -1 on error.
	* task.c, unit.h (find_unit_to_complete): New function, was
	code in do_build_task.
	* task.c (do_moveto_task): Look for transports inside other
	units.

Thu Nov 30 19:33:32 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* cobra.g (initial-day-part): Fix.

Tue Nov 28 20:19:34 1995  Massimo Campostrini <campo@sunthpi3.difi.unipi.it>

	* time.g: New game module, Civilization-type game.

Tue Nov 28 18:50:40 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* ccmd.def (show): New command, controls what is drawn in map.
	* ccmd.c (do_c_show): New function.
	* cdraw.c (low_notify): Optimize slightly.
	(show_game_date): Make it work again.

	* macinit.c (init_display): Call init_ui_chars.
	* macwins.c (do_key_down_construction): If the key matches
	the character for a unit type, select that type.

	* PROJECTS: Update to reflect above changes.

Mon Nov 27 19:06:47 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* mplayer.c (remove_small_theaters, move_theater_cell): New
	functions.
	(create_initial_theaters): Call remove_small_theaters.
	* run.c (add_to_unit_hp): New function, replace hp adjustments
	with calls to it.

	* macmap.c (create_map): Use topunithgt.
	(draw_unit_info): Use unit_handle for basic unit info.
	* macmap2.c (toggle_map_topline, toggle_map_topunit): Fix
	to interact with each other correctly, scroll rect instead
	of redrawing.

	* util.c (update_debugging, toggle_debugging): Move here from
	maccmd.c.
	* macconq.h (update_debugging, toggle_debugging): Remove decls.
	* maccmd.c (do_debug, do_debugg, do_debugm): Call draw_game.
	* cconq.c (main): Call update_debugging instead of
	init_debug_to_stdout.
	* ccmd.c (do_debug, do_debugg, do_debugm): Use toggle_debugging.

	* flags.imf (flag-dutch, flag-slovakia): New images.
	* napoleon.g: Add spying, do minor cleanups.
	* omaha.g: New scenario, Omaha Beach landings.
	* quest.g (diamond-ring, treasure-chest, lair): New unit types.
	(mp-to-enter-terrain, mp-to-leave-terrain): Adjust for difficult
	terrain.
	(mp-to-traverse): Let everybody use roads to move more easily.
	(start-with, favored): Add entries for monster lairs.
	* ww2-adv.g: Add usage of oil by ground units.
	* ww2-bn.g (cell-width): Fix.
	(free-mp): Give all infantry types at least 1.
	(occupant-combat): Disable for ground units on transports.

	* news.txt: Remove comment about being a first release.

	* imf2imf.1: New file, man page for imf2imf.

	* design.texi: Add more info on image design tools.
	* refman.texi: Describe image family naming rules.
	* PROJECTS: Update to reflect above changes, number entries.

Tue Nov 21 18:54:39 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* xutil.c (keyword_value): Remove.

Tue Nov 21 18:18:41 1995  Massimo Campostrini <campo@sunthpi3.difi.unipi.it>

	* actions.c (garrison_unit): Fix handling of occupants.

Tue Nov 21 17:42:25 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* actions.c (do_create_in_action): Fix order of arguments to
	garrison_unit.
	(garrison_unit): Save id of unit being garrisoned in a global.
	* history.def (unit-garrisoned): Add parameter.
	* history.c (record_unit_death): Record the unit being garrisoned
	if event requires.
	* init.c (u_possible): New global, cache of types that might
	possibly appear in the game.
	(cache_possible_types): New function.
	* mplayer.c: Misc cleanups.
	(review_theaters): Count independent units as part of "enemy"
	strength in the theater.
	* nlang.c (long_player_title): Fix ordering of AI vs player info.
	(historical_event_desc): Add descriptions of new event types.
	(write_unit_record, write_combat_results): Use u_possible to
	decide which unit types to mention in statistics.
	* table.def (fire-attack-terrain-effect, fire-defend-terrain-effect):
	New tables.

	* maclist.c (draw_unit_list_entry): Suppose location display
	if not in world, include date of appearance if will appear later.
	* imfapp.c (keyword_value): Remove.

	* refman.texi: Update to include all recently-added GDL symbols.

	* classic.g (speed-damage-effect): Fill in completely.
	* old-empire.g (speed-damage-effect): Ditto.
	(mp-to-enter-unit, free-mp): Don't left aircraft land and take off
	again in the same turn.
	(auto-repair): Let cities repair ships.
	* standard.g (noisy): New variant.
	* dwellings.imf (barn): New image.
	* fantasy.imf (yeti): Ditto.
	* insects.imf (scorpion): Ditto.
	* misc.imf (halftrack): Colorize, add 16x16 version.
	(halftrack-2): New image, was old halftrack.
	(mortar, mortar-sym): Improve appearance.
	(refinery): New image.
	* tanks.imf (pz-4-gray): New image.
	* imf.dir: Update to include new images.

Fri Nov 17 18:28:41 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* game.dir: Remove feb-1917.
	* 1757.g, normandy.g: Use regular instead of x property for
	appearance times.
	* fantasy.g, flattop.g, galaxy.g, insects.g, napoleon.g, panzer.g,
 	roman.g, russian-rev.g, ww2-38.g, ww2-39.g, ww2-42.g, ww2s-42.g,
 	ww2s-eur-42.g (synthesis-methods): Add random unit naming.
	* flattop.g: Allow stacking of ships, add low chance of
	seeing subs, add free mp for aircraft, disable zoc for
	PBYs and subs.
	* quest.g: Add more unit types, add stacking, material
	production and consumption, and roads.
	* PROJECTS: Update to reflect above changes.

Wed Nov 15 19:25:24 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* history.def (unit-died-in-accident, unit-wrecked-in-accident,
	unit-died-from-temperature): New history event types.
	* history.h (gain_reasons): Remove gift_gain.
	(loss_reasons): Remove left_world_loss, gift_loss.
	(damage_reasons): New enum.
	* history.c (record_unit_death): Account for new event types.
	(record_unit_side_change): Count non-capture as "other" gain
	or loss.
	* combat.c (damage_unit): Add argument giving reason for damage,
	use to choose which hevt to pass if unit dies.
	* nlang.c (gain_reason_names, loss_reason_names): Update to
	match changes in list of gain/loss reasons.
	* run.c (damage_unit_with_temperature): Record that unit died
	due to temperature.

	* keyword.def: Remove third argument from definitions, almost
	never useful, remaining uses special-cased.
	* lisp.h: Update include of keyword.def.
	* mkrivers.c (make_rivers): Use keyword value directly.
	* mkroads.c (make_roads): Ditto.
	* read.c (keywordtable): Remove value slot.
	(keyword_value): Remove.
	(init_constant): Add argument for value.
	(init_predefined_symbols): Supply former keyword values directly.

	* read.c (interp_unit): Add properties for appear and disappear.
	* run.c (run_appearances, run_disappearances): Rewrite to use
	unit extras structs instead of extension properties.
	* score.c (point_value): Use extras struct instead of extension
	property.
	* unit.c (init_unit_extras): New function.
	(create_unit): Use it.
	* write.c (write_units): Write out unit extras.
	* gettysburg.g: Use regular instead of x property for appearance
	times.
	* PROJECTS: Remove item about x properties.

	* init.c (init_side_balance): Only init if not restored from
	saved game.

	* ui.c (record_imf_get): Expand interface-specific image data
	into generic form, for recording in saved games later.

	* mplayer.c (mplayer_decide_plan): Only assign unit to offense
	if it can actually attack something.
	* plan.c: Add some comments.

	* run.c (add_new_sides_to_game): Init any AI for the new side.
	* macconq.c (update_side_display): Get emblem images for a newly
	added side.

Sun Nov 12 17:21:58 1995  Massimo Campostrini <campo@sunthpi3.difi.unipi.it>

	* imf.h, xutil.c (readimf_hook): Add an argument.
	* imf2x.c (main): Remove unused vars.

	* xcmd.def (orders): New command, brings up standing orders windows.
	* xconq.h (UI): Add slots to record orders windows state.
	* xcloseup.c: Add popup windows to manage standing orders.
	* xcmd.c (do_x_orders_popup): New function.
	* xprint.c (handle_done_print_help): New function.

Sun Nov 12 16:13:30 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* lisp.c (read_list): Rewrite to not call itself recursively,
	reduces stack usage when reading long lists.

	* read.c (read_aux_terrain_view_layer, read_material_view_layer):
	New functions.
	(fill_in_side): Use them.
	* side.c (init_view): Set up views of aux terrain and materials.
	* write.c (write_side_view): Write them out.

	* ui.c (record_imf_get): New function.
	(get_unit_type_images, etc): Use it.
	* write.c (write_images): New function.
	(write_game_module): Use it, also clean up formatting of whitespace
	in game module form output.
	(write_table): Fix formatting of table output.
	
Thu Nov  9 19:49:11 1995  Stan Shebs  <shebs@andros.cygnus.com>

	Beginnings of multi-program multi-player support.
	* actions.c (broadcast_next_action): New function.
	(prep_move_action, etc): Call it.
	* macconq.c (connection_method_dialog): New function.
	(connect_game_dialog): Call it.
	(init_connection_method, init_serial_port): New functions.
	(low_send, low_receive): Ditto.
	* macinit.c (download_to_player, send_assignment): New functions.
	
	* macdefs.h (miViewTopunit): New View menu item.
	* macmap.c (create_map): Init topline and topunit sizes separately.
	(draw_map): Draw topline and topunit areas separately.
	* macmap2.c (toggle_map_topline): Account for topunit area.
	(toggle_map_topunit): New function.
	* macmenus.c (do_menu_command): Add case for topunit view item.
	(adjust_menus): Enable/checkmark topunit view item.

Mon Nov  6 20:03:17 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* actions.c (play_action_messages): Clean up and fix.
	* history.c (play_event_messages): New function.
	(record_event): Call it.
	* nlang.c (historical_event_desc): Improve usage of
	event messages.
	* module.c (do_one_variant): Record values of integer-valued
 	variants.
	* write.c (write_game_module): Write data about each variant.
	* combat.c (reckon_damage): Change reporting of damage to list
 	dead unit's actions before its death.
	* world.c (world_distance): New function.
	* world.h (lighting): Use it.

	* macconq.c (play_movies): Clean up sound handling.
	(play_sound): New function.

	* ww2-eur-42.g (synthesis-methods): Add random name/number gen.

	* PROJECTS: Add/remove/update various items.

Fri Nov  3 17:13:09 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* imfapp.c (collect_all_resources): Look for more types of
	modified imf names.
	(write_location): New flag.
	(make_imf_resources): Use it.
	* macimf.c (mac_load_imf): Set ppat to actual size instead of
	8x8, create distinct 8x8 PAT if ppat is larger.
	(convert_ctab): Terminate loop correctly.

	* dwellings.imf (castle, castle-2): Make consistent.
	(village2): Rename to village-2.
	* fantasy.imf (dragon2): Rename to dragon-4.
	* insects.imf (spider): Fix missing pixel.
	* terrain.imf: Split large-than-8x8 images into real-size and
	8x8 images.
	* roman.g (oppidum): Use village-2.

Tue Oct 31 20:07:40 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* cmd.def (on): Rename standing order command to "if".

	* world.h (Area): New slot numcells.
	(border_at, connection_at): New macros.
	* world.c (set_area_shape): Compute area.numcells.
	(area_cells): Remove.
	(border_at, connection_at): Remove functions.
	(set_border_at, set_connection_at): Test existence of cell
	at other end of connection, rather than requiring cell to
	be inside area.
	(patch_linear_terrain): Test need to patch before patching.
	* init.c, mkterr.c, mkunits.c: Use area.numcells.

	* read.c (interp_one_clause): Reduce the number of redundant
	Lisp operations.

	* util.c (pfp, profile_printf): Remove, never used.
	* misc.h (profile_printf): Remove decl.

	* maccmd.c (update_debugging, toggle_debugging): Don't
	change profiling flag here.
	(toggle_profiling): New function.
	(do_profile, do_trace): Call it.
	* macinit.c (filter_splash): Toggle profiling if 'P' typed.
	(filter_new_game): Ditto.
	* macwins.c (draw_game_date): Draw profiling state.
	* DO_FIRST.mac, README.mac: Update to reflect removal of
	Mac binary files from regular source tree.

	* stdunit.g (speed-damage-effect): Extend interpolation lists
	to cover all possible hp values.

Sun Oct 29 15:00:45 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* lisp.c (interpolate_in_list): Rewrite to return an outcome
	code, and not to try to extrapolate.
	(interpolate_in_list_ext): New function, interpolation that
	can extrapolate on either or both sides of range.
	* lisp.h: Update decls to match changes.
	* actions.c, run.c: Update all callers of list interpolation.

Thu Oct 26 19:56:16 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* lisp.c, lisp.h: Rewrite symbol handling to use a hash table
	with buckets of linked symbols.
	(maxsymbols): Remove, no fixed limit on number of symbols now.
	(hash_name): New function.
	* util.c (report_malloc): Don't report maxsymbols.
	* read.c (utype_from_symbol): New function.
	(interp_unit, interp_utype_list, etc): Use it instead of
	utype_from_name.
	(utype_from_name): Test symbol binding before testing
	long and short type names.
	
	* combat.c (detonate_unit, detonate_on_cell): Always call
 	damage_terrain.
	(damage_terrain): Damage connections and borders if possible.
	(damaged_terrain_type): New function, was code in damage_terrain.

Tue Oct 24 19:09:39 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* lisp.c, lisp.h (symboltable): Make static.
	(c_number, c_string): Test object type.
	(intern_symbol): Rename local new to new1.
	* read.c (interp_world): Only use set_world_circumference
	to set circumference.
	(interp_area): Only use set_area_shape to set the width and
 	height.
	* world.h (World): New slot circumf_3_10.
	(Area): New slot halfheight.
	(x_in_area, x_inside_area): New macros.
	(for_all_cells, for_all_interior_cells): Use them.
	(lighting): Use world.circumf_3_10.
	* world.c (set_world_circumference): Compute circumf_3_10.
	(set_area_shape): Compute halfheight.
	* mkterr.c, ps.c, run.c, ui.c, macmap.c: Use area.halfheight
	everywhere.
	* macinit.c (launch_game_2): Only use set_area_shape to set
	the default width and height.

Sun Oct 22 16:20:58 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* keyword.def (original-module, original-variants,
	original-version): New keywords.
	* module.h (Variant): New slots hasintvalue, intvalue.
	(Module): New slots origmodulename, origvariants, origversion.
	* read.c (interp_variant_defns): Add more error checking,
	(interp_game_module): Recognize new properties.
	* score.c (record_into_scorefile): Use original values of
	module properties if defined, record version and variants,
	don't nest player info in "(player ...)" form.
	* write.c (write_entire_game_state): Fill in orig* slots.
	(write_game_module): Write orig* slots.

	* unit.h (Unit): Revert to allocating pointer to supply data,
	instead of making unit variable-sized; created alignment problems,
	no observable benefit.
	(UnitExtras): New structure, space for optional unit slots.
	(unit_point_value, unit_appear_turn, etc): New macros.
	* read.c (interp_unit): Allocate unit extras if needed.
	* run.c, write.c: Use unit_hook macro everywhere instead of
	unit->hook.
	* score.c (unit_point_value): Rename to point_value.
	* unit.c (allocate_unit_block): Revert to previous form.

	* game.h (checku, checkm, checkt): Remove entirely.
	* help.c (describe_concepts): Add mention of hp.
	* lisp.h (for_all_list): New macro.
	* side.c (become_designer, become_nondesigner): Simplify.
	(see_weather): New function, take code from see_cell, call
	in both see_cell and see_exact.
	* types.c (get_u_extension, etc): Uncommment.
	* world.c (change_terrain_type): Fix calculation of which
	sides' views to update, add notification if units die.

	* maccmd.c (do_one_add_terrain): Make prefixarg specify terrain
	type by relative number among possibilities.
	* macmap.c (cell_terrain): Add special case for see_all.
	(draw_cliffs, oneliner): Use cell_terrain to get terrain type.
	* macwins.c (last_status_*): New variables, globals that track
	what's been drawn for side status.
	(draw_game): Initialize them.
	(draw_side_status): Don't draw things if values haven't changed
	since the last draw.

	* empire.g: Add characters for material types, add production
	and consumption of lcm and hcm for ships and such, allow
	engineers to build highways again.
	(park): New unit type, a non-acting facility.
	(education, happiness): New material types.
	
	* PROJECTS: Various additions and deletions.

Thu Oct 19 20:47:33 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* xconq.c (update_fire_at_display, update_fire_into_display):
	Use invert mode to draw.

Wed Oct 18 20:12:20 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* cmdline.c (set_players_from_options): Initialize scan
	properly if merging with existing players.
	* game.h (checku, checkm, checkt): Define as macros.
	* generic.c (checku, checkm, checkt): Comment out.
	* world.h (in_area, inside_area): Define as macros.
	* world.c (in_area, inside_area): Comment out.
	* mplayer.c: Use all_see_all instead of g_see_all (usually).

	* macconq.c (position_on_screen): Test for Color QD before
	looking at graphic devices.
	(set_standard_state): Adjust zoomrect in non-CQD case.
	(get_main_screen_size): New function.
	* machelp.c (instructions_dialog): Use it.
	(zoom_help): Adjust zoomrect in non-CQD case.
	* macmap.c (create_map): Use get_main_screen_size.
	* macwins.c (create_game_window): Ditto.
	(create_construction_window): Ditto.
	(create_history_window): Ditto.
	(create_notice_window): Ditto.
	(zoom_notice): Adjust zoomrect in non-CQD case.

Mon Oct 16 18:51:17 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* run.c (compute_sun): Interpret initial-day-part in 1/100ths
	of a turn, which allows fine adjustment of sun position.

	* ww2-bn.g (hq-air-div): Rename to hq-para-div.
	(free-mp): Define for nonmotorized infantry.
	* ob-nor-alld.g: Change 82nd and 101st units to be paras,
	add regiments attached for D-Day.
	* normandy.g: Make 82nd and 101st divisions appear in Normandy
	on the first turn, around historical drop zones.
	(initial-date): Start game at midnight.
	* cherbourg.g (initial-day-part): Tweak.

Sun Oct 15 14:59:20 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* cmd.def (on): New command, sets standing orders.
	* side.h (StandingOrder): New structure.
	(Side): Add slots order, last_order, uorders.
	* side.c (new_standing_order, add_standing_order,
 	parse_standing_order, parse_unit_type, parse_order_cond,
	get_next_arg): New functions.
	* task.c (clone_task, parse_task): New functions.	
	* plan.c (execute_standing_order, task_is_in_agenda,
	tasks_match): New functions.
	(execute_plan): Execute standing order if applicable.
	* read.c (utype_from_name): Make visible everywhere.
	* run.c (side_move_some_units, move_one_unit_multiple):
	Detect if unit might have a standing order to do, go into
	plan execution if so.
	* maccmd.c (do_standing_orders): New command function.
	* xcmd.c (do_standing_orders): Ditto.
	* ccmd.c (do_standing_orders): Ditto.

	* unit.h (Unit): Make unit structure variable-sized, record
	supply info as array at end of unit struct.
	* unit.c (allocate_unit_block): Calculate unit size for this
	game and set up a block of units of that size.
	(create_unit): Remove supply array allocation code.
	* read.c (interp_unit): Disallow addition of more material types
 	after a unit has been created.

	* init.c (check_game_validity): Check u_parts validity
	separately from relationship to u_hp.
	* side.c (agreementdesigbuf): Allocate dynamically.
	* unit.h (completed): Test unit cp against cached array of
	completeness values.
	* unit.c (init_units): Allocate completeness cache.
	(create_unit): Fill in cache if uninitialized.
	* write.c (write_task): Test validity of task type.

	* maccmd.def (DP, DT): New debugging commands.
	* maccmd.c (favored_type): Move to ui.c.
	(toggle_debugging): Update Think C profiling code.
	* macdraw.c (draw_connection_line_multiple): Pull some
	calculations out of loop.
	* macimf.c (mac_interp_imf): Don't call color pattern/icon
	interpretation if Color Quickdraw not available.
	* macinit.c (filter_splash): Let 'P' enable profiling.

Fri Oct 13 17:58:14 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* nlang.c (short_player_title): Improve layout of title.
	* score.c (record_into_scorefile): Put sides on separate line,
	write out advantage of each side.

	* macwins.c (draw_unit_closeup): Draw text in Monaco 9.

Thu Oct 12 19:43:36 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* mpw-make.in (EXTRALIBS_MPW_C): Rename to EXTRALIBS_C.
	* macconq.h: Clean up header compatibility definitions;
	use absence of __CONDITIONALMACROS__ to detect pre-universal
	headers.
	* XconqMPW.r: Include Xconq.r instead of XconqProj.rsrc.

Wed Oct 11 20:16:31 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* mac/Xconq.r, mac/IMFApp.r: New files, Mac resources in Rez
	syntax.
	* XconqProj.rsrc.hqx, IMFAppProj.rsrc.hqx: Remove.

Wed Oct 11 19:16:56 1995  Massimo Campostrini <campo@sunthpi3.difi.unipi.it>

	* actions.c (garrison_unit): Fix mistake calculating hp2.
	* ui.c (center_on_focus): Unwrap if in upper right of cylinder.
	* xdraw.c (draw_map_view): Call wrapx on left end of row.
	* xinit.c (popup_game_dialog): Add chains to widgets.
	* Xconq.ad, Xconq-co.ad: Update resources for game selection.

	* roman.g: Add parameters to make it play standalone, tweaked
	some existing capacity and combat parameters.

Tue Oct 10 19:28:32 1995  Massimo Campostrini <campo@sunthpi3.difi.unipi.it>

	* xcmd.def (side, unit): New commands.
	* x11/xcloseup.c: New file, closeup windows for X11 interface.
	* xconq.h (UI): Add slots for closeups.
	(SideCloseup, UnitList, UnitCloseup, CloseupSummary): New structures.
	(for_all_unit_closeups. etc): New macros.
	* xcmd.c (do_x_unit_closeup, do_x_side_closeup): New functions.
	* Xconq.ad, Xconq-co.ad: Add resources for closeups.

Tue Oct 10 18:54:19 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* macconq.c (main): Initialize AppleEvents after basic data
	structures.
	(init_ae): Warn if any handlers fail to install.
	(update_turn_display): Call draw_unit_info.
	(update_event_display): Remove now-unused game-end code.
	(update_unit_display): Always call update_unit_in_maps.
	(update_unit_in_maps): Call draw_unit_info if appropriate.
	* macmap.c (update_cell_display): Ditto.
	(create_map): Leave space for unit info area.
	(draw_unit_info, draw_info_text): New functions, draw textual
	info about selected unit in top part of a map.
	(draw_selections): Call draw_unit_info if appropriate.
	(draw_selections_at): Ditto.
	
Mon Oct  9 19:13:38 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* keyword.def (terrain-view-dates, aux-terrain-view,
	aux-terrain-view-dates, material-view, material-view-dates,
	temperature-view, temperature-view-dates, cloud-view,
	cloud-bottom-view, cloud-height-view, cloud-view-dates,
	wind-view, wind-view-dates, gain-counts, loss-counts,
	attack-stats, hit-stats, embed-size): New keywords.
	* side.h (Side): New slots for view data.
	(material_view, set_material_view, etc): New macros.
	(side_won): Fix test.
	* ai.c (cell_unknown): Test tmpside->see_all.
	(base_building): Remove.
	* nlang.c (write_side_results): Write scores.
	* read.c (fill_in_side): Interpret new view layer properties.
	(interp_atkstats_list, interp_hitstats_list, interp_short_array,
	interp_long_array): New functions.
	(read_terrain_view, read_unit_view, read_unit_view_dates):
	Remove.
	(read_view_layer): New function.
	* run.c (end_the_game): Call record_into_scorefile.
	* score.c (record_into_scorefile): Write out sides and scores.
	* write.c (write_side_properties): Write side statistics.
	(write_side_view): Write new view layers.
	(write_one_side_view_layer): New function.
	* imf.h (ImagePalette): New type.
	* imf.c (WHITE_THRESHOLD, BLACK_THRESHOLD): New macros.
	(palettes, numpalettes): New variables.
	(interp_image): Warn if existing data overwritten.
	(new_image_palette, canonical_palette_name, get_imp, find_imp,
	palette_name_compare, sort_all_palettes, write_imp): New functions.
	(interp_form_imfonly): Remove.
	(check_imf, bitmaps_match, color_matches_mono): New functions.
	(write_imf): Look up keywords to write.
	
	* imf2x.c (main): Use load_imf_file.
	* xutil.c (read_any_file): Ditto.
	* xutil.h (interp_form_imfonly): Remove decl.

	* imfapp.c (collect_all_resources): Call check_imf.
	* macconq.c (update_turn_display): Call end-of-game dialogs here.
	(update_event_display): ...instead of here.
	* macimf.c (mac_interp_imf): Fix size calculations.
	* macmap.c (oneliner): Use real terrain data if no view.

	* PROJECTS: Update to reflect above changes.

Wed Oct  4 18:59:16 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* mpw-configure: New file, configuration script for MPW.
	* mpw-make.in: New file, MPW Makefile fragment.
	* mac/Makefile.hqx: Remove.

	* mplayer.c (has_goal): Uncomment.
	(mplayer_decide_plan): Use it.
	(estimate_strengths): When looking at view to count units, don't
 	count own or allied units, since they have already been counted.

Tue Oct  3 19:40:31 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* tanks.imf: Add emblems and some 16x16 images.

	* imf2imf.c (main): Check for failure to open output file.

Tue Oct  3 19:12:05 1995  Massimo Campostrini <campo@sunthpi3.difi.unipi.it>

	* x11/Imakefile (IhaveXPM): New conditional, for XPM library.

Tue Oct  3 18:57:49 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* misc.h (DMprintf, DGprintf, DMprintlisp, DGprintlisp): Test
	the correct file pointers.
	* mplayer.c (mplayer_preferred_build_type): Account for normal
	completion time, add debug display of weights.
	* nlang.c (normal_completion_time): Account for toolup time.
	* task.c (clear_task_agenda): Tweak working of debug message.
	* macdraw.c (draw_theater_borders): Rename to
	draw_ai_region_borders.
	* macmap.c (draw_borders, draw_connections, etc): Make static.
	(draw_theater): Rename to draw_ai_region.
	(draw_units): Don't draw units if smaller than 8 pixels across.
	* macconq.h: Remove decls of now-static functions.

Mon Oct  2 18:54:54 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* game.h (could_be_on, could_live_on): New macros, better
	tests of unit-terrain compatibility.
	(could_move, will_garrison): Remove.
	(could_hit): Add test of uu_fire_hit.
	* ai.c (ai_init_shared): Use could_be_on instead of could_move.
	* mplayer.c (probably_explorable): Ditto.
	* plan.c (can_move): Ditto.
	(clear_task_agenda): Return number of tasks removed,
	don't do any debugging printout.
	* unit.h (clear_task_agenda): Update decl.
	* help.c (notify_instructions): Move here from xconq.c.
	* run.c (compute_acp): Account for effect of temperature on acp.
	(unit_consumes): Account for effect on base consumption.
	* task.c (add_task): Add debugging prints.
	* ui.c (char_to_dir): Fix control char case.
	* unit.c (unit_allowed_on_side): Test per-side limits on units.

	* xconq.c (run_game_proc): Do more actions per call, call less
	often, call much less often if nothing happening.
	(update_fire_at_display): Draw the actual lines of fire.
	(update_fire_into_display): Ditto.
	* xdraw.c (draw_units, draw_unit_and_occs): Don't draw occs or
	surrounding box if would be too small (less than 8 pixels wide).

	* PROJECTS: Update to reflect above changes, add items from
	imf2imf doc and for background picture drawing.

Mon Sep 25 19:27:44 1995  Massimo Campostrini <campo@sunthpi3.difi.unipi.it>

	* aircraft.imf (cargo, cruise, fghtrbmbr, stealth): New images.
	* misc.imf (silo, worker-2): New images.
	(cavalry): Adjust slightly.
	(port): Add 16x16 image.
	(spysat): Add mask.
	* sf.imf (domed-city): New image.
	(hovercraft): Add mask.
	* standard.imf (town20): Add 32x32 image.

Mon Sep 25 18:21:07 1995  Stan Shebs  <shebs@andros.cygnus.com>
	
	* unit.c (init_unit_actorstate): Add a flag indicating whether
	to initialize the unit's acp to a distinctive value.
	(create_unit, change_unit_type): Fix calls.
	* actions.c (make_unit_complete): Ditto.
	* init.c (patch_object_references): Ditto.
	* run.c (run_appearances): Ditto.
	* combat.c (capture_unit_2): Only clear any pending action, leave
	all other action slots alone.
	* unit.h (init_unit_actorstate): Update decl.
	* read.c (read_utype_doctrine): Ensure that side->udoctrine
	is actually allocated.

	* all.g: Remove commented-out properties, add references to
	new things.

Thu Sep 21 18:28:12 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* pearl.g (initial-date): Use "Dec" instead of "December".

	* write.c (write_unit): Write out not-yet-appeared units'
	position correctly.

	* lisp.c (sprintf_line_numbers): Rename to sprintf_context,
	extend to let line numbers be undefined, and to display a
	context rather than line numbers if no line numbers.
	(read_form_aux): Only update line numbers if ptrs non-NULL.
	* lisp.h: Update decls to match.
	* read.c (add_properties): Check syntax more thoroughly.
	* score.c (eval_sk_test): Interpret `/=' (K_NE).

	* test/tiny.g: New test game design.
	* test/warn.g: Add tests of property add syntax, move type
	decls in front of random form tests.
	* PROJECTS: Remove item about pointers to line numbers.

Wed Sep 20 19:19:03 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* combat.c (attempt_to_capture_unit): Declare as static.
	* side.h (Side): Remove auxterrviewdate, cloudbottomviewdate,
	and cloudheightviewdate.
	* side.c (init_view): Don't allocate auxterrviewdate.
	* world.h (apply_to_path): Declare sorting callback function
	to return an integer.
	* world.c (apply_to_path): Set number of choices to be
	the result from sorting callback function.

Tue Sep 19 18:46:33 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* run.c (run_environment): General cleanup, so that temperature
	and wind calculations can run independently, and removal of
	temperature effects on unit.s
	(all_see_cell_weather): Add update for temperature changes.
	(run_environment_effects); New function.
	(run_turn_end): Call it.
	* side.c (init_view): Allocate terrain view date, allocate
	only one date layer for cloud view layers.
	(see_cell): Update views of temperature and clouds.
	* world.c (allocate_area_scratch): Check for error case.

	* xcmd.def (z-in, z-out): Rename to zoom-in, zoom-out.
	* xcmd.c (aux_move_look, aux_move_dir): Use char_to_dir.
	(do_set_map_angle): Remove.

	* napoleon.g: Add a clouds variant, add chars to unit types
	that need them.
	(unit-storage-x): Define.
	(see-weather-always): Set to false.
	(base-production, productivity, base-consumption, out-length):
	Define.
	(temperature-attrition): Define for land forces.
	(independent-density): Define for cities.
	* 1805.g: Remove commented-out unit list, sort unit list.

	* PROJECTS: Move C code items out of library section,
	add items for Napoleon game.

Mon Sep 18 19:27:55 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* table.def (fire-damage): Default to -1 instead of 0.
	(hit-by): Rename um_hitby to um_hit_by.
	* actions.c (garrison_unit): Calculate hp2 loss correctly.
	(type_can_create, type_can_complete): Test tooling limits.
	(construction_possible): New function.
	* conq.h (one_attack, fire_on_unit, etc): Remove decls.
	* combat.c (one_attack, fire_on_unit, etc): Make static.
	(maybe_hit_unit): Add arg indicating if firing, use separate
	fire hit chance and damage tables if so.
	(capture_unit): Call garrison_unit to garrison the prisoner.
	(type_can_fire): Check fire damage table.
	* help.c (describe_utype): Describe more self-unit properties.
	* init.c (final_init): Call final_init_world.
	(init_view_cell): View the weather conditions.
	* lisp.c (interpolate_in_list): Check for unusual cases.
	* run.c (all_see_cell_weather): New function.
	(run_environment): Call it.
	* side.h (Side): New slots for weather view layers.
	(aux_terrain_view, set_aux_terrain_view, temperature_view,
	set_temperature_view, etc): New macros.
	* side.c (init_view): Allocate char for terrain view,
	maybe allocate other (aux terrain, weather, etc) view layers.
	(see_cell): Update wind view if changed.
	* ui.h (VP): Add slots for perspective display.
	* ui.c (new_vp): Calculate perspective display slots.
	(xform_cell): Fix bug in transformation of leftside x values
	in cylindrical areas, clean up perspective calculation.
	(nearest_cell): Fix bug in calcuation with negative numbers.
	* world.h (area): New slots, caches for elev range.
	(CALM): New macro.
	* world.c (final_init_world): New function.

	* maccmd.c (do_mac_set_map_angle): Reflect cleanup in ui.c.
	* macdesign.c (draw_design_window_tool): Add arg to draw_winds.
	* macdraw.c (draw_temperature_here, draw_winds_here): Test
	only against view, always draw around edge of known area.
	* macmap.c (cell_terrain): Use terrain_view.
	(draw_terrain_row, draw_cliffs, etc): Draw from view rather than
 	actual data.
	* macwins (init_construction_lists): Test that construction is
	actually possible before adding a type.

	* voyages.g (see_weather_always): Set to false if having wind.

	* PROJECTS: Update to reflect above changes, remove some
	obsolete items.

Fri Sep 15 17:27:05 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* russian-rev.g (road-chance): Fix syntax.
	* roman.g (road-chance): Ditto.

Fri Sep 15 16:59:05 1995  Massimo Campostrini <campo@sunthpi3.difi.unipi.it>

	* midearth.g (acp-min): Add, so that units with 1 ACP left will
 	not be unable to act.
	(mp-to-enter-terrain): Make fording and crossing mountains slower,
	trolls can now cross plains, slowly (they can only move by night :-).
	(defend-terrain-effect, attack-terrain-effect): Define.

Fri Sep 15 16:49:35 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* classic.g: Improve and clean up comments.
	(visibility): Define for subs and nukes.
	(free-mp): Set to 1 for all unit types.
	(speed-damage-effect): Define for bombers and ship types.
	(acp-to-attack): Set to 0 for city types.
	(hit-chance): Set to 100 for all types vs nukes.
	(damage): Add missing parens to bb damage clause.
	(consumption-per-attack): Set to 1 for ammo for all types.
	(auto-repair, auto-repair-range): Define instead of hp-per-repair.
	* stdunit.g: Improve comments.
	(vanishes-on): Make armor vanish in swamp.
	(unit-size-in-terrain): Set aircraft to have 0 size.
	(free-mp): Set to 1 for all unit types.
	(speed-damage-effect): Define for bombers and ship types.
	(point-value): Set for cv, bb, and nukes.

Thu Sep 14 20:24:35 1995  Massimo Campostrini <campo@sunthpi3.difi.unipi.it>

	* Xconq-co.ad: Colorize designer dialog.

	* roman.g: Adjust capacity, construction, and combat.
	* rom-civ-war.g: Fix date, and change construction time from
	the basic game.

Thu Sep 14 18:56:06 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* play.texi: Wording fixes from Cary Renzema <caryr@mxim.com>.

	* utype.def (elevation-at-max-range): Remove.
	* imf2imf.c (main): New option --explode option to put each
	image family into a separate file.
	* nlang.c (init_calendar): Recognize calendar step names
	that are symbols as well as strings.
	(parse_usual_date): Be pickier about date formats.
	* read.c (readerrbuf): Allocate only in init_predefined_symbols.
	(add_to_table): Allocate table when setting to a constant value,
	detect extra junk in table clauses.
	(add_properties): Warn about extra junk in form.

	* mac/Makefile.hqx: Update to reflect source changes.

	* PROJECTS: Add items about design of standing orders and
	about computing fire elevation.

Wed Sep 13 19:32:50 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* table.def (fire-hit-chance, fire-damage): New tables.

	* refman.tex: Update to reflect recent GDL changes.
	* hacking.texi, glossary.texi: Wording tweaks.

Tue Sep 12 18:01:02 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* xcmd.c (do_disembark): Add empty definition.

	* read.c (interp_unit): Set unit's hp2 along with hp.
	* run.c (run_hp_recovery): Ditto.
	* unit.c (change_unit_type): Ditto.

	* kernel/imf2imf.c: New file, image merge/split tool.
	* kernel/Makefile.in (imf2imf): Add build rule.

	* xutil.c (interp_form_imfonly): Move to imf.c.
	* xutil.h (interp_form_imfonly): Move decl to imf.h.
	* xutil.c (read_imf_file): Merge into read_any_file.
	* xutil.h (read_imf_file): Remove decl.

	* imf.h: Add extern to all function decls.
	(new_imf): Remove decl.
	* imf.c (new_imf): Make static.

	* imfapp.c (useColorQD): New global.
	(main): Initialize it.
	(do_menu_command): Toggle it from menu item.
	(adjust_menus): Adjust menu item from it.
	(draw_as_terrain_image, draw_as_unit_image, draw_as_emblem_image):
	Use it to control use of Color QuickDraw drawing functions,
	also use select_icons and select_tiles to decide about drawing.
	(collect_all_resources): Find and read cicns with " 16x16"
	appended to the basic image name.
	* macimf.c (mac_load_imf): Read in cicns with " 16x16" appended
	to name.
	* tanks.imf: Add emblems to German and Soviet tanks, add some
	16x16 color images.
	* PROJECTS: Delete projects concerning IMFApp.

Mon Sep 11 20:16:02 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* utype.def (speed-wind-angle-effect): Remove.
	* actions.c (can_occupy_conn): Move to unit.c.
	(unit_speed): Calculate wind effect correctly.
	(wind_value, number_member): New functions.
	* help.c (describe_utype): Update desc of wind effect.
	* voyages.g (game-module): Add real wind effect property to
	the wind variant.
	* ai.c (offensive_worth): Remove, never used.
	(is_base_for, is_carrier_for): Uncomment.
	* plan.c (should_build_base): Remove unused function.
	* read.c (interp_game_module): Don't test program version
	if property's value is any empty string.
	(interp_unit): Don't read opinions if property is NULL.

	* nlang.c (init_nlang): New function.
	(notify_all, notify, absolute_date_string, plural_form): Don't
 	allocate string buffer on demand, assume already allocated.
  	* init.c (init_data_structures): Call init_nlang.

	* cmd.def (disembark): New command.
	(angle): Remove.
	* ui.c (char_to_dir): New function.

	* maccmd.c (do_dir, do_dir_multiple): Call char_to_dir.
	(do_build): Seed run length from prefix argument.
	(do_disembark, do_one_disembark): New functions.
	(do_one_embark): New function.
	(do_embark): Call it.
	(do_mac_zoom_in, do_mac_zoom_out): New functions.
	* maccmd.def (angle, zoom-out, zoom-in): New commands.
	* macinit.c (open_progress_dialog): Removed unused code.
	* macmenus.c (quit_the_game): Call designer code first.
	* macwins.c (currunlength): Make globally visible.

	* ccmd.c (do_build): Only ask about types that may be built.
	(impl_build): New function.
	(do_copying, do_warranty): Bring up correct help node.
	(do_disembark): New function.
	(do_fire_into): Implement for real.
	(do_set_map_angle): Remove.
	* cconq.c (ask_unit): Call make_current_at, do other fixes.
	(make_current_at): New function.

	* test/all.g: Update to reflect recent GDL changes.

	* PROJECTS: Update to reflect above changes, add items about
	behavior of construction dialog in Mac interface.
	* TODO: Update item about shared dir interp code.

Fri Sep  8 17:52:03 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* macconq.c (handle_event): Call TrackGoAway for window closing.
	* macmenus.c (adjust_menus): Fix reference to optterrmenu, only
	adjust items of optional terrain or material view menus	if the
	menu itself is enabled.

Thu Sep  7 19:45:13 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* macconq.h (constructionunitlist, constructiontypelist): Remove
	decls.
	* macwins.c (init_construction_lists): Only add types that the
	side may have.
	(do_key_down_construction): Only send digits to run length box,
	fix computation of which chars to get from the box.
	(select_type_in_construction_window): Fix selection test.
	(update_type_list_for_unit): Use types actually in list, not
	all unit types.
	* xcmd.c (do_build): Only ask about types allowed on the side.
	* conq.h (eval_boolean_expression): Move decl to lisp.h.
	* help.c (describe_utype): Add description of allowed sides
	for the unit type.
	* lisp.c (maxsymbols): Increase to 1000.
	* module.c (extension_value): Unused, delete.
	(eval_boolean_expression): Move to lisp.c.
	* side.h (Side): New slot uvail, cache of allowed unit types.
	* side.c (type_allowed_on_side): Precompute and cache results
	of side class tests.

Wed Sep  6 18:49:01 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* unit.c (add_unit_to_vector): Make run error if null vector.
	(remove_unit_from_vector): Don't remove from null vector.

	* ww2s-eur-42.g: Upgrade/downgrade various bases/towns/cities,
	add USA towns and cities, merge in contents of u-eur-1942.g
	* u-eur-1942.g: Remove.
	* PROJECTS: Remove relevant item.

Tue Sep  5 18:38:15 1995  Stan Shebs  <shebs@andros.cygnus.com>

	Update from Labor Day weekend hacking - date synthesis, more road
	synthesis, online GPL, and adding side during game.
	* gvar.def: Update some comment strings.
	(edge-road-density, initial-date-max, initial-date-min): New GDL
	globals.
	(real-time-for-game, etc): Increase upper bounds.
	* utype.def (road-to-edge-change, spur-chance, spur-range): New
	unit type properties.
	* conq.h, help.h, side.h, world.h: Update various function
	declarations.
	* actions.c: Remove commented-out static decls.
	(do_alter_cell_action): Call change_terrain_type.
	(do_add_terrain_action,	do_remove_terrain_action): Clean up
	report of changes, always consume acp even if no change.
	* combat.c (change_terrain_type): Move to world.c.
	* kernel/copying.awk: New file, awk script to edit GPL into
	copying.c.
	* kernel/copying.c: New file, GPL and non-warranty as help nodes.
	* kernel/Makefile.in, kernel/Imakefile, Makefile.dos: Add copying.o.
	* help.c (firsthelpnode): Rename to first_help_node.
	(lasthelpnode): Rename to last_help_node.
	(copying_help_node, warranty_help_node, default_prev_help_node):
	New global help nodes.
	(init_help): Set up warranty and GPL help nodes.
	(add_help_node): Use default_prev_help_node.
	(get_help_text): Preallocate more space for GPL node.
	(describe_help_system): New function.
	(describe_copyright): Move to copying.c.
	(describe_setup): Call describe_synth_run for each method.
	(describe_synth_run): New function.
	init.c (synthmethods): Add calls and runs fields.
	(make_up_a_side): Return the made-up side.
	(run_synth_methods): Track calls and runs of each method.
	(get_synth_method_uses): New function.
	(make_weather, make_initial_materials): Add arguments.
	(make_random_date): Add arguments, make it generate dates within
	a specified range.
	(final_init): Call init_self_unit.
	mknames.c (name_units_randomly): Add arguments.
	mkrivers.c (make_rivers): Ditto.
	mkroads.c (make_roads): Add arguments, add code to generate
	roads that run to the edge of the area, roads that run across
	the area, and spur roads.
	(road_at, find_adj_inside_area, test_road_segment,
	sort_road_segments, compare_road_directions): New functions.
	(lay_connecting_road, can_be_connection_on): Remove.
	mkterr.c (make_fractal_terrain, etc):  Add arguments, call
	adjacent and liquid terrain postprocessors.
	(fix_adjacent_terrain, flatten_liquid_terrain): New functions.
	mkunits.c (make_countries, make_independent_units): Add arguments.
	(make_countries): Detect when a side is being added in the middle
	of a game, compute number of units for it.
	(average_numunits): New function.
	nlang.c: Cleanup and rewrite of date handling.
	(CalendarType, UsualDateStepType): New enums.
	(UsualDate): New structure.
	(parse_date): New function.
	(init_calendar): New function.
	(absolute_date_string): Call it if no calendar defined.
	(turns_between, set_initial_date): New functions.
	(parse_usual_initial_date): Remove.
	(parse_usual_date): New function.
	* plan.c (init_unit_plan, set_unit_plan_type, set_unit_asleep,
 	set_unit_reserve, set_unit_ai_control, dispose_of_plan): Move here
	* unit.c: ...from here.
	* run.c (request_additional_side, add_new_sides_to_game): New
	functions, ability to add sides in middle of a game.
	(run_turn_start): Call add_new_sides_to_game.
	* side.c (init_self_unit): New function.
	* world.c (apply_to_path): Change to set higher priority on
	directions to get closer to endpoint of path, a la unit movement.
	(random_edge_point): New function.

	* maccmd.c (do_add_player): Call request_additional_side.
	(do_copying, do_warranty): Bring up apprpriate help nodes.
	(do_reserve, etc): Add prefixarg as argument.
	* macconq.c (init_ae): Uncomment-out do_ae_join_game usage.
	(update_side_display): Detect additional side and redraw entire
	window instead of just one side.
	* machelp (help_dialog): Add argument, node to display.
	* macwins.c (draw_game): Resize window if more sides in game.

	* cherbourg.g, cobra.g, normandy.g (initial-day-part): Set.
	* normandy.g (initial-date): Set.
	* ww2-bn.g (initial-date, initial-day-part): Remove.
	* panzer.g (road-to-edge-chance, edge-road-density, spur-chance,
	spur-range): Set.
	* stdunit.g (road-to-edge-chance, edge-road-density, spur-chance,
	spur-range): Ditto.
	(road-chance): Add small "town to elsewhere" chances.

	* PROJECTS: Update to reflect above changes.
	* TODO: Add mention of cylinder map bug, new side addition bugs,
	remove empire engineer terrain add bug.

Fri Sep  1 16:27:13 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* empire.g: Fill in plane acps, add ability of various planes
	to carry nukes, add ability to produce and to detonate nukes,
	other small changes.
	* future.g: Add world-seen as variant, rename "destroyer" to
	"defender", add more supply handling, make the unit type notes
	be actual note properties.
	* modern.g: Add fishing boat and shipyard types.
	* game.dir: Add future, insects, and planets.

Fri Sep  1 04:18:49 1995  Stan Shebs  <shebs@cygnus.com>

	* kernel/Makefile.in, x11/Makefile.in, curses/Makefile.in
 	(UNIX_CFLAGS): Remove -DUSE_CONSOLE.
	* kernel/Imakefile, x11/Imakefile, curses/Imakefile (DEFINES): Ditto.
	* kerncmp.com (COMP_FLAGS), xcmp.com (VMS_DEFS): Remove USE_CONSOLE.
	* skelconq.c, imf2x.c, x2imf.c, xshowimf.c, xutil.c (USE_CONSOLE):
 	Remove default definition.

Thu Aug 31 18:04:06 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* milsym.imf: Add more symbols, mostly regiment- and brigade-size.
	From Dan Koppenheffer <dan@snowwhite.apd.litton.com>.
	* imf.dir: Rebuilt.

	* DO_FIRST.mac, README.mac: Update to reflect current code,
	add mention of CW support.

	Remove USE_CONSOLE macro everywhere.
	* maccmd.c, macconq.h, macconq.h, macinit.c, cmdline.c, help.c,
	init.c, lisp.c, misc.h, read.c (USE_CONSOLE): Remove usages.
	* misc.h (Dprintf, DMprintf, DGprintf, etc): Test debug file
	pointer before printing.
	* util.c (init_debug_to_stdout): New function, inits debug
	file pointers.
	* cconq.c, xconq.c (main): Call init_debug_to_stdout.

	* macwins.c (m_per_row): New global.
	(preferred_closeup_size): Fix calculation of space for unit
	supply display in closeups.
	(draw_unit_closeup): Similarly.
	
	* hacking.texi: Add discussion of command functions.

	* actions.c (has_enough_acp): Return FALSE if unit cannot act.

Tue Aug 29 19:17:11 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* ww2-adv.g: Add some help strings, add toolup parameters, add
 	different completenesses for different types, add more hit
 	chances, add consumption of planes in air attacks, increase
 	numbers of starting units in random setup.
	* ww2-eur-42.g: Define some ground units for UK and US, add Afrika
 	Korps armor unit and others in North Africa, add German sub
 	fleets, add Soviet Black Sea fleet, add Damascus as base, give
 	Adana to Turkey, add tooling for various types to various cities.

Mon Aug 28 18:47:58 1995  Stan Shebs  <shebs@andros.cygnus.com>

	Changes to compile using Metrowerks C.
	* macconq.h (SET_PAT_ELT, PAT_ELT): New macros, accessors to
	pattern elements.
	(AEEventHandleUPP) [THINK_C]: Define as ProcPtr.
	(ControlActionUPP) [THINK_C]: Define as ProcPtr.
	(SndListHandle) [THINK_C]: Define as Handle.
	(SetMenuItemText) [THINK_C]: Define as SetItem.
	(InsertMenuItem) [THINK_C]: Define as InsMenuItem.
	* macimf.h: Define SET_IMG_PAT and IMG_PAT correctly for
	each compiler (actually, each set of headers).
	* macconq.c: If __MWERKS__, include Sound.h and define
	MWC_INIT_BUG.
	(init_ae): Cast function pointers to AEEventHandlerUPP.
	(play_movies): Cast sound handles toSndListHandle.
	(init_integer_arrays) [MWC_INIT_BUG]: Initialize arrays
	of integers that MW C causes to disappear if they are
	initialized statically.
	(InstallConsole, RemoveConsole, WriteCharsToConsole,
	ReadCharsFromConsole, __ttyname) [__MWERKS__]: New functions,
	stubs for standard I/O.
	* macdraw.c: Use IMG_PAT to get mono pattern from an image.
	* macinit.c (animationpatterns): Remove.
	(animation_patterns): New global, array of pointer to patterns.
	(init_patterns): Fill animation_patterns from resource.
	(draw_variant_help): Define using ANSI style.
	* macmap.c: Use animation_patterns instead of animationpatterns.
	* macmap2.c: Use ControlActionUPP instead of ProcPtr.
	* macwins.c: Ditto.
	* macmenus.c (sanitize_for_menu): Define using ANSI style.

	* config.h: Include <stddef.h>.
	* mac.c: Don't include <Values.h>.
	* mkunits.c (expand_country): Fix reference to unit type.
	* plan.c (build_time): Initialize research_delay.
	* side.c (find_next_unit): Remove useless print code.
	* ui.c (mags, hhs, ...) [MWC_INIT_BUG]: Don't initialize
	global arrays.
	* util.c (dirx, diry) [MWC_INIT_BUG]: Ditto.

Fri Aug 25 16:44:24 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* Version 7.0.1 released.

	* NEWS: Update for 7.0.1.
	* version.h: Bump to 7.0.1.

	* maccmd.c (do_one_dir_move): Use advance_into_cell instead
	of setting up a move task.
	* xcmd.c (aux_move_dir): Pass unit at location as other unit
	argument to advance_into_cell.

Wed Aug 23 18:46:54 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* actions.c (do_move_actions): Simplify wreck code.
	* combat.c (change_terrain_type): New function, includes
	change of terrain and possible wreck or vanish of units there.
	(damage_terrain): Use it.
	* gvar.def (g_min_radius, g_separation_max, g_separation_min):
	Rename to g_radius_min, etc.
	(g_unit_per_side): Rename to g_units_per_side_max.
	* help.c, init.c, mplayer.c: Reflect renamings.
	* history.c (statistics_wanted, statistics_dumped): New globals.
	(dump_statistics): Use them.
	* mkunits.c (good_place): Cache distance after calculating.
	* nlang.c (short_side_title_with_adjective): New function.
	(short_side_title_plural_p): New function.
	(notify_all_of_resignation): New function.
	* run.c (compose_actionvectors): Account for unit priority.
	(unit_priority): Use action-priority value.
	(set_play_rate): Add sanity checks.
	(run_environment): Use terrain_visible macro.
	(run_economy): Remove unused people limit code, done elsewhere.
	(run_people_consumption): Call change_terrain_type if terrain
	was exhausted of supplies.
	(run_cell_consumption): Ditto.
	(change_people_side_around): Decrement viewing coverage of
	previous side.
	(resign_game): Use notify_all_of_resignation.
	(end_the_game): Notify all of game end.
	* score.c (side_loses): Give over units and people if
	losing to a specific other side.

	* macdefs.h (diPrefsStatistics): New dialog item.
	* macconq.c (get_files): Don't want statistics by default.
	(interp_mac_ui_data): Add more error checking, recognize
	want-statistics as a preference property.
	(ui_update_state): Delete argument, add binding for
	want-statistics.
	(set_preferences): Add want-statistics checkbox.
	(play_movies): Get unit by looking up id.
	macmenus.c (do_menu_command): Update preference file when
	sound enabled or disabled.

	* planets.g: Fix module name, remove commented-out units.
	* starwars.g (acp-to-attack): Don't let cities attack
	anything.
	(country-radius-min, country-separation-min,
 	country-separation-max, country-terrain-max): Define so
	that "countries" can be the planets in planets.g.
	(random-starwars-town-names): Define, use to name towns
	and cities.

Mon Aug 21 19:11:27 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* combat.c (maybe_hit_unit): Pass unit id to schedule_movie.
	* xconq.c (play_movies): Get unit for blast movies by looking
	up id recorded with movie, instead of casting to pointer.

	* starwars.g: Fix various bogosities, add detonation for
	death stars.
	(* planets.g: Replace with multi-small-planet version.)
	* insects.g: New file, update of old game featuring
	battling insects.

Wed Aug 16 19:27:39 1995  Stan Shebs  <shebs@andros.cygnus.com>

	* Xconq 7.0 released.
