2000-06-19  Stan Shebs  <shebs@shebs.cnchost.com>

	* version.h: Bump to 7.3.3.

	* xconq.spec: Update version.
	* Xconq.r, IMFApp.r: Update version resources.
	* NEWS: Update.

	* INSTALL: Add info about handling tcl/tk libs.
	* x11/Makefile.in: Use TCL_LIB_SPEC and TK_LIB_SPEC instead of
	TCL_BUILD_LIB_SPEC and TK_BUILD_LIB_SPEC.

	* INSTALL-mac, README-mac: Update.

	* macconq.h (GETKEYS_ARG_TYPE): Define.
	* macgworld.c, macmenus.c: Use in GetKeys calls.

	* macdraw.c (draw_side_emblem): Use PlotCIcon with 2-color images.

2000-06-17  Hans Ronne <hronne@2.sbbs.se>

	Fix loading of emblem images from saved games.
	* imf.c (get_generic_images): Check that the image location has
	been loaded.
	* ui.c (get_emblem_images): Set default emblem names correctly.

2000-06-16  Hans Ronne <hronne@2.sbbs.se>

	* macconq.c (adjust_cursor): Fix autoscrolling for the worldmap.
	* macmap.c (create_map): Limit size of worldmap to 1/4 of the screen.
	* advterr.g: Add solid color tiles for advt images.
	* Xconq.r: Fix linefeeds.

2000-06-15  Hans Ronne <hronne@2.sbbs.se>

	* macgworld.c (update_resized_map): Fix gworld size bug for big maps.

2000-06-15  Hans Ronne <hronne@2.sbbs.se>

	* macgworld.c (update_gworld): Fix gworld size bug for big maps.
	* Xconq.r: Restore correct version number.

2000-06-15  Hans Ronne <hronne@2.sbbs.se>

	Fix some more glitches in the mac interface.
	* macconq.c (adjust_cursor): Remove debugging beep calls.
	* macdefs.h (diVariantsIndepsAI): Remove.
	(diVariantsIndepsBuild): Remove.
	(diVariantsIndepsResearch): Remove.
	(diVariantsIndepsTreasury): Remove.
	(diVariantsFirstCheckBox): Change to 10.
	* macinit.c (MAXCHECKBOXES): Change to 10.
	(variants_dialog): Remove indepside variants.
	* XconqProj.rsrc (DITL 131 "Variant Items"): Remove indepside text.
	* Xconq.r: Update from XconqProj.rsrc.

2000-06-15  Stan Shebs  <shebs@shebs.cnchost.com>

	* version.h: Bump to 7.3.2.

	* xconq.spec: Update version.
	* Xconq.r, IMFApp.r: Update version resources.
	* NEWS: Update.

	* search.g, t3.g: Fix syntax.
	* test-save.sh: Fix pathnames.
	* test-run.sh, test-test.sh: Fix use of -L.

2000-06-15  Hans Ronne <hronne@2.sbbs.se>

	* advt32x32.gif: New terrain image file.
	* advt24x26.gif: New terrain image file.
	* advt44x48.gif: New terrain image file.
	* advterr.g: Use the new terrain images.
	
	* init.c (set_ai_for_player): Fix NULL player crashes.

2000-06-14  Stan Shebs  <shebs@shebs.cnchost.com>

	* version.h: Bump to 7.3.1.

	* xconq.spec: Update version.
	* Xconq.r, IMFApp.r: Update version resources.
	* NEWS: Update.

	* init.c (set_ai_for_player): Allow any empty string.
	* tkconq.tcl (add_player_dialog_items): Split indepside button
	into one to add/remove, another to configure.
	(set_indepside): New proc.
	(popup_indepside_config): Rename from popup_indepside, limit to
	config of indepside options.
	(cancel_indepside): New proc.
	* tkinit.c (init_display): Remove indepside settings, too late
	to have any effect here.
	* tkmain.c (tk_launch_game): Do it here instead.

2000-06-13  Stan Shebs  <shebs@shebs.cnchost.com>

	* configure.in: Add --enable-alternate-scoresdir.
	* configure: Regenerate
	* Makefile.in (scoresdir): Get from configure.
	* INSTALL: Mention new configure option.

	* score.c (eval_sk_last_side_wins, eval_sk_last_alliance_wins):
	Let indepside win if played by AI.

	* macconq.h: Include kpublic.h here...
	* maccmd.c, maccolors.c, macconq.c, macconq.h, macdesign.c,
	macgworld.c, macmenus.c, macmouse.c, macprefs.c, macunit.c,
	macwins.c: ...instead of here.
	* Xconq.r: Tweak version resources.
	* IMFApp.r: Update from current resource file.

	* README: Rewrite to describe Xconq better.
	* xconq.spec: Update.

2000-06-11  Stan Shebs  <shebs@shebs.cnchost.com>

	* config.guess, config.sub: Update to versions dated
	2000-05-30 and 2000-06-10, respectively.

2000-06-09  Stan Shebs  <shebs@shebs.cnchost.com>

	* version.h: Bump to 7.3.0.

	* README: Update to 7.3, improve some phrasing.
	* xconq.spec: Update versions and paths.
	* Xconq.r, IMFApp.r: Update version resources.

	Fix Unix installation issues, make consistent with FHS 2.1.
	* Makefile.in (datadir): Set to $(prefix)/share/xconq.
	(scoresdir): Set to /var/lib/xconq/scores, pass down to sub-makes.
	* kernel/Makefile.in (ALL_CFLAGS): Define XCONQSCORES.
	* unix.c (score_file_pathname): Use value of XCONQSCORES verbatim.
	* */Makefile.in (datadir): Set to $(prefix)/share/xconq.
	* curses/Imakefile (DEFINES): Don't define XCONQDATA.
	* tcltk/Makefile.in (ALL_CFLAGS): Ditto.
	* images/Makefile.in (imagesdir): Rename from gameimdir, set
	to $(datadir)/images.
	* x11/Makefile.in (install-only): Install ximfapp instead of
	xshowimf.
	(clean): Be more thorough.
	* NEWS: Mention pathname changes.

	* init.c: Cosmetic improvements.
	* score.c (record_into_scorefile): Skip player-less sides.
	* ximfapp.c: Eliminate compile warnings.

	* INSTALL: Clarify tcl/tk steps, fix path refs.
	* cconq.6in, cmdline.6in, xconq.6in, xtconq.6in: Update
	pathnames, describe environment vars.

2000-06-08  Stan Shebs  <shebs@shebs.cnchost.com>

	* NEWS: Update.
	* INSTALL: Add some clarifications.
	* INSTALL-mac: Update.
	* cconq.6in, skelconq.6in, xconq.6in, xtconq.6in: Update
	file names and doc names.
	* gdlref.texi, hacking.texi, playref.texi, xcdesign.texi,
	xconq.texi: Update dates and subtitle.
	* xconq.texi: Mention contributors, add doc for new setup
	dialog options.

	* ai.c, goal.def, module.c, tp.c: Fix dates.

	* PROJECTS: Mention need for a command option for indepsides.

2000-06-05  Stan Shebs  <shebs@shebs.cnchost.com>

	* tkconq.tcl (handle_key_binding): Handle unusual window paths
	that sometimes get passed in.

	* advances.g, anc-near-east.g: Change indepside variants into
	variable settings.

2000-06-04  Stan Shebs  <shebs@shebs.cnchost.com>

	More rewriting of variant handling and player setup.
	* keyword.def (indepside-has-ai, indepside-can-build,
	indepside-can-research, indepside-has-treasury): Comment out,
	will no longer define as variants.
	* ai.c, ai.h (next_ai_type_name): Rename from next_ai_type.
	(find_ai_type): New function.
	* cmdline.c (unixify_variant_name): Remove.
	(game_usage_info): Use variant ids as argument names.
	* kernel.h (set_ai_for_player, etc): Move here from conq.h.
	* init.c (make_up_a_side): Remove set of ingame, redundant.
	(set_ai_for_player): Warn about invalid AI types.
	* iplayer.c, mplayer.c: Remove decls now in ai.h.
	* kpublic.h: Rearrange some decls.
	* module.c (do_one_variant): Remove indepside variants.
	* read.c (force_all_variants): New global.
	(add_std_var): New function.
	(interp_variant_defns): Rewrite to use it for all variant
	setup.
	(add_more_variants): Remove, no longer needed.
	(interp_game_module): Call interp_variant_defns.
	* run.c (init_movement): Simplify code.
	* score.c (eval_sk_last_side_wins, eval_sk_last_alliance_wins):
	Don't require indepside to lose.
	(record_into_scorefile): Use a switch statement for variants.
	(score_variant_desc): Remove indepside variants.

	* macinit.c (interpret_variants, implement_variants): Remove
	indepside variants.
	(hit_player_setup_dialog): Use net_exchange_players.

	* tkconq.tcl (add_variants_dialog_items): Wrap help text by
	words.
	(add_player_dialog_items): Always create indepside entry but
	conditionalize packing, add indepside button, improve test of
	random/sidelib name button enabling.
	(popup_indepside, ok_indepside): New procs.
	* tkinit.c (init_display): Seed indepside globals.
	* tkmain.c (tk_set_indepside_options): New tcl command.
	(tk_set_ai_for_player): Interpret AI name passed directly.
	(interpret_variants): Remove indepside variants.

2000-06-01 Hans Ronne <hronne@2.sbbs.se>

	Fix drawing of selections and grouping boxes on the mac.
	* macmap.c (draw_selected_unit): Remove unused sx1, sy1, sh1 and sw1.
	(draw_selected_unit): Remove unused wholecell and drawmags code.
	(draw_selected_unit): Apply sy correction for occs like in
	draw_unit_and_occs.
	(draw_selected_unit): Tweak sh and sw of box if uw > 16 like in
	draw_unit_and_occs.
	(draw_selection_animation): Ditto.
	* macrow.c (draw_unit_and_occs): Move sy correction for occs
	outside the recursive loop.

	* read.c (add_more_variants): Comment out indepside stuff.

2000-05-31  Stan Shebs  <shebs@shebs.cnchost.com>

	* combat.c (model_1_attack): Use set_unit_origside.
	* kernel.h, unit.c (set_unit_side, set_unit_origside): Make return
	void.
	* kpublic.h: Remove unused decls.

	* blasts.imf: Add color images for nukes.
	* cherbourg.g: Remove bogus transport ids.
	* ww2-bn.g: Double out-length for corps HQs.
	* ww2-div-pac.g: Let carrier air units attack ground types.

	* PROJECTS: Add various ideas.

2000-05-30 Hans Ronne <hronne@2.sbbs.se>

	Fix some more indepside problems.
	* gvar.def (g_no_indepside_ingame): New gvar.
	* init.c (indepside_needed): Check g_no_indepside_ingame.
	* side.c (cover_area): Don't test for !indep(unit).
	* beirut.g (no-indepside-ingame) Set it to true.
	* gazala.g (no-indepside-ingame) Set it to true.
	* panzer.g (no-indepside-ingame) Set it to true.

2000-05-30  Stan Shebs  <shebs@shebs.cnchost.com>

	* score.c (side_loses): Tweak syntax to elim warning.
	* plan.c (set_formation): NULL leader clears formation.
	* tkcmd.c (aux_set_formation): Add user feedback, option
	to clear formation.
	(do_quit): Don't confirm if game over.
	(do_save, do_survey): Don't allow after game is over.

	Add help strings for variants.
	* module.h (Variant help): New field.
	* read.c (interp_variant_defns): Fill it in, supply default
	help strings for standard variants.
	(add_more_variants): Comment out people and supply system
	variants, they don't work.
	* cmdline.c (game_usage_info): Use help strings.

	* tkconq.tcl: Say "config" instead of "configure" consistently.
	(show_variant_help): Use varianthelp global.
	* tkmain.c (interpret_variants, interpret_checkbox): Set up
	tcl global varianthelp.

	* magellan.g, panzer.g, standard.g, ww2-eur-42.g: Add help
	strings to variants.

	* refman.texi: Update reference manual.

	* tkmain.c (play_movies): Slow down nuke movie.

2000-05-29 Hans Ronne <hronne@2.sbbs.se>

	Fix problems with indepside winning or losing games.
	* ai.c (give_up): Allow indepside to resign if played by human.
	* score.c (init_scores): Include indepside in num_sides_originally
	if in game.
	(check_pre_turn_scores): Use for_all_sides instead of
	for_all_real_sides.
	(check_post_turn_scores): Ditto.
	(check_post_action_scores): Ditto.
	(check_post_event_scores): Ditto.
	(eval_sk_last_side_wins): Ditto.
	(eval_sk_last_alliance_wins): Ditto.
	(side_loses): Ditto.
	(all_sides_draw): Ditto.
	(record_into_scorefile): Ditto.
	(side_loses): Allow indepside to resign if played by human.

2000-05-29 Hans Ronne <hronne@2.sbbs.se>

	Add support for indepside in tcl/tk player setup list.
	* tkmain.c (tk_side_ingame): Include indepside if really in game.
	* tkconq.tcl (add_player_dialog_items): Define firstside as either
	0 or 1.
	(add_player_dialog_items): Iterate from $firstside.

	Add popup dialog for indepside configuration in mac player setup
	dialog.
	Add ability for keyboard scrolling in new game dialog.
	* init.c (exchange_players): Make it work also for indepside if
	present.
	* macdefs.h (diPlayerSetupConfigure): Define to 15.
	(dConfigureSide): New dialog and items.
	* macinit.c (configure_indepside_dialog): New function and prototype.
	(filter_new_game):  Add support for Escape key.
	(filter_new_game): Add support for keyboard scrolling of newgamelist.
	(set_player_setup_button_states): Handle diPlayerSetupConfigure.
	(handle_player_setup_event): Remove code that blocks autoKey use.
	(hit_player_setup_dialog): Handle diPlayerSetupConfigure.
	* macmap.c (create_map): Always start with side colors in worldmap.
	* XconqProj.rsrc (DITL 130 "Player Setup Items"): Tweak positions.
	(DITL 130 "Player Setup Items"): Add "Configure Indep Side" button.
	(DITL 138 "Configure Side Items"): New dialog items list.
	(DLOG 138 "Configure Side"): New dialog.
	* Xconq.r: Update from XconqProj.rsrc.

2000-05-28 Hans Ronne <hronne@2.sbbs.se>

	Add support for indepside in mac player setup list.
	* init.c (make_trial_assignments): Call indepside_needed.
	(make_trial_assignments): Check indepside->ingame before adding
	players.
	(indepside_needed): New function, checks if game has independent
	units.
	* macinit.c (firstside): Define to (indepside->ingame ? 0 : 1).
	(selected_a_player): Start with firstside.
	(draw_player_setup_list): Tweak playerh and playerbaseline settings.
	(draw_player_setup_list): Test for numtotsides instead of numsides.
	(draw_player_setup_list): Start with firstside.
	(select_player): Start with firstside.
	(player_setup_dialog): Remove commented out code.
	(set_player_setup_button_states): Test for numtotsides instead of
	numsides.
	(handle_player_setup_event): Start with firstside.
	(handle_player_setup_event): Stop at numsides instead of
	numplayers - 1.
	(hit_player_setup_dialog): Use playerh + firstside instead of
	playerh + 1.

	* advances.g (indepside-can-research): Set it to false.
	(set-sides-max): Remove limit.
	* anc-near-east.g (set-sides-max): Ditto.
	
2000-05-26  Stan Shebs  <shebs@shebs.cnchost.com>

	* run2.c (update_cell_display_all_sides): Update if terrain is
	seen (thus updating people and control view).
	* side.c (cover_area): Don't let inactive sides inform their
	allies of view changes (prevents transitive bizarrities).

2000-05-25 Hans Ronne <hronne@2.sbbs.se>

	Fix some selection and display bugs in the mac interface.
	* macconq.c (adjust_cursor): Move autoselect of curunit to
	maybe_select_next_unit.
	(maybe_select_next_unit): Make sure the current unit always is
	selected if on autoselect.
	(maybe_select_next_unit): Make animation_pattern_state negative
	during blinks.
	* macmap.c (draw_selected_unit): Dont draw animation_patterns when
	using blinking curunit.
	(update_cell): Dont call draw_unit_info when
	animation_pattern_state is negative.
	* macrow.c (draw_unit_and_occs): Tweak size of grouping boxes.

	* advances.g (indepside-has-ai, indepside-can-build, economy,
	supply): Remove redundant settings.
	* anc-near-east.g (indepside-has-ai): Remove redundant variant.
	
2000-05-25  Stan Shebs  <shebs@shebs.cnchost.com>

	* tkconq.tcl (create_map_window, etc): Make most inter-pane
	borders width 1, tweak grips so scrolling doesn't leave junk.

	Suggested by Patrick Welche <prlwl@newn.cam.ac.uk>:
	* x11/Makefile.in (TCL_DL_LIBS): Get value from configure and use.

2000-05-24  Stan Shebs  <shebs@shebs.cnchost.com>

	* history.c (record_event): Allow unit ids to refer to dead units.
	* combat.c (detonate_unit): Fix visibility test, add special
	hack case for nuclear weapons.

	* tkconq.h (UI blastimages): Make larger.
	(UI bombpics, hitpics): Remove, no longer needed.
	* tkinit.c (init_bitmaps): Remove setup of hitpics.
	(init_other_images): Set up nuke images also, do with loop.
	* tkmain.c (play_movies): Add case for nukes, use cell blast
	or unit blast as appropriate.
	* tkmap.c (draw_unit_blast): Renamed from draw_blast.
	(draw_cell_blast): New function.
	(draw_blast_image): Change flashing to white out screen, add
	color image handling.

	* blasts.imf: Add new images nuke1, nuke2, nuke3, comment out
	standard blasts' color images.
	* imf.dir: Update.

	* beirut.g: Make buildings a little taller, allow car bombs
	to do detonation attacks, start factions further apart, let
	militia recover hp.

2000-05-22  Stan Shebs  <shebs@shebs.cnchost.com>

	* tkconq.tcl (create_map_window): Shrink side list and world map
	to max of 40% of vertical space each.
	(fill_in_side_list): Only do second column of treasury items if
	actually needed.
	* tkmap.c (MapW maxheight): New field.
	(config_specs): Add -maxheight option.
	(mapw_configure): Use it.
	
2000-05-21  Hans Ronne <hronne@2.sbbs.se>

	Fix various unit visibility and display problems.
	* gvar.def (g_peek_at_enemy): Remove, use g_see_all instead.
	* side.c (side_sees_unit): Remove g_peek_at_enemy.
	* ui.c (occupants_visible): Change side_controls_unit to
	side_sees_unit.

	* macconq.h (show_unit_closeup): New prototype.
	(create_unit_closeup): Return UnitCloseup in prototype instead of void.
	* macdesign.c (enable_designing): Set dside->see_all to true.
	(disable_designing): Set dside->see_all to frontmap->see_all.
	* macmenus.c (do_closeup_mi): Rewrite so that it works. 
	(do_closeup_mi): Call show_unit_closeup instead.
	(do_closeup_mi): Call scroll_to_selected_unit_in_list.
	* macmouse.c (do_mouse_down_map_control_panel): Also toggle
	dside->see_all.
	(do_mouse_down_map_content): Check for map->see_all when ctrl-clicking.
	(do_mouse_down_map_content): Call show_unit_closeup instead.
	* macunit.c (show_unit_closeup): New function.
	(find_unit_closeup): Don't test if the window is visible.
	(create_unit_closeup): Exit if we may not examine the unit.
	(create_unit_closeup): Return UnitCloseup instead of void.
	(draw_unit_closeup): Blast the closeup if the unit has defected.
	* macwins.c (side_research_dialog): Use see_all instead of
	g_peek_at_enemy.
	* XconqProj.rsrc (dctb 810 "Simple Closeup"): Add new dialog color
	table.
	* Xconq.r: Update from XconqProj.rsrc.
	* advances.g (peek-at-enemy): Remove.
	(indepside-has-ai): set to false. 
	(mostly-water): Comment out.
	
2000-05-20  Hans Ronne <hronne@2.sbbs.se>

	* macconq.c (mouseoverbuf): Increase from 100 to BUFSIZE to fix
	overflow crashes.
	* macunit.c (draw_advanced_closeup): Initialize disabled to TRUE.
	* nat-names.g (paraguayan-place-names): Spell it correctly.
	* ng-african.g (mauritanian-place-names): Add it.

2000-05-14  Hans Ronne <hronne@2.sbbs.se>

	Add option to use blinking current unit and selection masks on the mac.
	* macconq.c (maybe_select_next_unit): Add code for blinking
	current unit.
	* macconq.h (default_blinking_curunit): Declare.
	(default_selectionmasks): Declare.
	(a_map): Add short blinking_curunit & short selectionmasks.
	(draw_unit_image): Add selected arg in prototype.
	(toggle_blinking_curunit): New prototype. 
	(toggle_selectionmasks): New prototype. 
	* macdefs.h (diPrefsBlinkingUnit): New dialog item.
	(diPrefsAnimatedBox): New dialog item.
	(diPrefsSelectionMasks): New dialog item.
	(diPrefsSelectionBoxes): New dialog item.
	(miBlinkingCurunit): New menu item.
	(miSelectionMasks): New menu item.
	* maccolors.c (default_blinking_curunit): Initialize.
	(default_selectionmasks): Initialize.
	* macdesign.c (draw_design_window_tool): Add selected arg in
	draw_unit_image call.
	* macdraw.c (draw_unit_image): Pass in selected argument from above.
	(draw_unit_image): Call draw_unit_mask for selected units.
	(draw_unit_image): Add code for drawing selection masks with
	default boxes.
	(draw_unit_mask): New function and prototype.
	(draw_unit_mask_layer): New function and prototype.
	* machelp.c (draw_help): Add selected arg in draw_unit_image call.
	* maclist.c (draw_unit_list_entry): Add selected arg in
	draw_unit_image call.
	* macmap.c (create_map): Set map->blinking_curunit &
	map->selectionmasks.
	(draw_selected_unit): Add selected arg in draw_unit_image calls.
	(draw_selected_unit): Abort if map->selectionmasks is true.
	* macmenus.c (do_menu_command): Handle miBlinkingCurunit &
	miSelectionMasks.
	(adjust_menus): Handle miBlinkingCurunit & miSelectionMasks.
	* macmouse.c (toggle_blinking_curunit): New function. 
	(toggle_selectionmasks): New function. 
	* macrow.c (draw_units): Add selected arg in draw_unit_image calls.
	* (draw_unit_and_occs): Add selected arg in draw_unit_image calls.
	* macprefs.c (interp_mac_ui_data): Handle default_blinking_curunit
	& default_selectionmasks.
	(ui_update_state): Handle default_blinking_curunit &
	default_selectionmasks.
	(set_preferences): Handle default_blinking_curunit &
	default_selectionmasks.
	(add_preferences_topic_items): Handle default_blinking_curunit &
	default_selectionmasks.
	* macunit.c (draw_simple_closeup): Add selected arg in
	draw_unit_image calls.
	(draw_closeup_content): Add selected arg in draw_unit_image calls.
	* XconqProj.rsrc (DITL 705 "Preferences Image Sets Items"): Add
	four radio buttons.
	(MENU 217 "Colors and Masks Popup"): Add two new menu items.
	* Xconq.r: Update from XconqProj.rsrc.
	
	Various fixes to mac unit drawing. Add ability to draw incomplete
	units in gray.
	* maccolors.c (graycolor): Initialize new RGBColor.
	(blackcolor): Move initialization from init_side_colors to head of
	file.
	* macconq.h (graycolor): Declare.
	(draw_unit_image): Add sidecolors arg in prototype.
	* macconq.c (event_loop): Add automatic profiling of run_local_ai
	and net_run_game.
	* macdraw.c (draw_unit_image): Rewrite and simplify.
	(draw_unit_image): Use sidecolors also for pixmaps. 
	(draw_unit_image): Draw gray pixmaps instead of using gray_out_rect. 
	(draw_unit_image): Pass in sidecolors argument from above.
	(draw_unit_image): Handle emblem argument from above correctly.
	* macdesign.c (draw_design_window_tool): Add sidecolors arg in
	draw_unit_image call.
	(do_mouse_down_design): Fix menu item number bug.
	(mark_allowed_sides): Fix menu item number bug.
	* machelp.c (draw_help): Add sidecolors arg in draw_unit_image call.
	* macinit.c (blackcolor): Remove declaration.
	* macimf.c (mac_create_cicn): Use mask data if no mono data and
	vice versa.
	* maclist.c (draw_unit_list_entry): Add sidecolors arg in
	draw_unit_image call.
	* macmap.c (draw_selected_unit): Add sidecolors arg in
	draw_unit_image calls.
	(draw_selected_unit): Set correct emblem arg in draw_unit_image calls.
	* macrow.c (draw_units): Add sidecolors arg in draw_unit_image calls.
	(draw_units): Set correct emblem arg in draw_unit_image calls.
	* (draw_unit_and_occs): Add sidecolors arg in draw_unit_image calls.
	(draw_unit_and_occs): Set emblem correctly to map->draw_emblems.
	* macunit.c (draw_simple_closeup): Add sidecolors arg in
	draw_unit_image calls.
	(draw_simple_closeup): Set correct emblem arg in draw_unit_image
	calls.
	(draw_closeup_content): Add sidecolors arg in draw_unit_image
	calls.
	(draw_closeup_content): Call draw_unit_image instead of using
	special code.
	(draw_closeup_content): Make sure dead unit names are erased from
	garrison list.
	
2000-05-09  Hans Ronne <hronne@2.sbbs.se>

	* unit.c (shortest_unique_name): Fix crashing bug.

2000-05-07  Hans Ronne <hronne@2.sbbs.se>

	Various bug fixes in the interfaces.
	* macinit.c (player_setup_dialog): Make sure the dialog is drawn.
	* macconq.c (handle_keystroke): Filter cmdKey handling for keypad etc.
	* macmap.c (create_map): Don't center on focus for world map.
	* macmenus.c (build_side_menu): Remove extra "independent" item.
	(enable_commands_for_unit): Remove special indepside code.
	(enable_commands_for_unit): Check u_acp_to_change_side.
	(do_give_unit_mi): Use (mi - 1) in side_n call.
	* tkcmd.c (really_do_give_unit): Fix NULL side crashes.
	
	Release versions of Advances and Ancient Near East games.
	* ane.g. Remove obsolete file.
	* advances.g. New base module. Replaces ane.g.
	* advterr.g. New file. Terrain for advances games.
	* anc-near-east.g. New file. Ancient Near East game.
	* game.dir. Add advances.g & anc-near-east.g.
	* t-near-east.g. New file. Map of Near East.
		
2000-05-01  Stan Shebs  <shebs@shebs.cnchost.com>

	* cmd.c (notify_relationships): New function.
	(do_distrust, do_trust): Use, plus add more feedback.
	* move.c (change_control_side_around): Simplify.
	* run2.c (interpolate_temperature): Add experimental rewrite that
	tries to do interpolation within triangles formed by three nearest
	key points, but leave commented out.
	(run_environment): Simplify temperature calcs, use tmp1 layer to
	record coating terrain changes.
	(all_see_cell_weather): Use a mask for update types.
	* write.c (write_area_temperatures): Allow negative temperatures.

	* ww2-eur-42.g: Add more temperatures, tweak initial-year-part.

	* tkconq.tcl (update_game_side_info): Disappear the progress
	bars for never-active sides.

	* PROJECTS: Add less-critical changes.

2000-04-28  Stan Shebs  <shebs@shebs.cnchost.com>

	* mplayer.c (decide_resignation): Get the max of the chances
	vs all sides, not just the last one.
	* write.c (write_side_properties): Priority default is -1.

	* tkconq.tcl (fill_in_side_list): Fix size of loss line.
	(update_game_side_info): Alter appearance of progress bar if side
	not in game.
	(update_side_progress): Add argument to pass side->finishedturn,
	gray out progress in more cases.
	* tkmain.c (update_side_progress_display): Pass finishedturn,
	do nothing if side not in game.
	* tkmap.c (draw_unit_name): Don't draw unit numbers, too much
	clutter.

	* refman.texi: Clarify workings of side priority.

2000-04-25  Stan Shebs  <shebs@shebs.cnchost.com>

	* version.h: Bump to 7.2.97.

	* tkconq.tcl (add_player_dialog_items): Improve side button names.
	(select_player): Enable/disable sidelib button.

	* task.c (do_build_task): Explain task failure for units that
	can't develop.

	* world.c (create_feature): Call init_features if necessary.
	(destroy_feature): Clear destroyed feature from layer.

	* tkconq.tcl (delete_feature): New proc.
	(update_feature_name_entry): Update delete button.
	* tkmain.c (tk_destroy_feature): New tcl command.
	(tk_create_new_feature): New default name should not be a number.

	* PROJECTS: Mention idea for feature renumbering/sorting.

2000-04-24  Stan Shebs  <shebs@shebs.cnchost.com>

	* ai.c (set_side_ai): Reset num_local_ais, to force recalc.
	* cmd.c (do_ai_side): Add feedback on which AI is running.
	* nlang.c, conq.h (point_value_desc): New function.
	* mplayer.c (search_for_available_transport): Improve test
	of usability, make transport's plan type match occupant's
	plan type (in lieu of being more intelligent about running
	units with passive plans).
	* run2.c (run_appearances, run_disappearances): Notify user
	when units appear and disappear.
	* run.c, side.c: Cosmetic improvements.

	* cmdline.c (parse_command_line): Make -host a general option,
	display info about game module, put variant info after it.
	(general_usage_info): Mention -x, flush refs to options that have
	been removed.
	(player_usage_info): Similarly.
	(set_players_from_options): Fix location of indepside player
	creation, use make_default_player_spec.
	* tkmain.c: Similarly.
	* skelconq.c, wconq.c, xconq.c, xtconq.c (make_default_player_spec):
	Define.
	* xconq.c (main): Make version/usage info appear without welcome
	message.

	* tkconq.tcl (add_player_dialog_items): Add a popup menu for
	selecting side name directly.
	(set_name_from_side_lib_cmd): New proc.
	* tkmain.c (tk_side_lib_size, tk_side_lib_entry,
	tk_side_lib_entry_available, tk_set_name_from_side_lib): New tcl
	commands.
	(draw_unit_info): Describe point value.

	* ww2-div-eur.g: Add more help info, remove coast-defense type,
	add lowland type, rename v2-base to v2-launcher, take places
	out of stacking calcs, add more ZOC restrictions, make v2
	launchers mobile, set point values better, etc.
	* t-nw-eur.g: Add Italy and CONUS staging areas, add lowland.
	* nw-europe.g: Set Allied units to show up later, make some
	towns into ports.

2000-04-20  Stan Shebs  <shebs@shebs.cnchost.com>

	* tkconq.h (enum mapmode): New values no_tmp_mode and attack_mode.
	(Map tmp_mode): New field.
	* tkinit.c (init_cursors): Set up attack_mode cursor.
	* tkmain.c (update_mouseover): Set tmp_mode specially for
	attackable units.
	(could_attack): New function.
	* tkmap.c (set_tool_cursor): Use value of tmp_mode if set.

	* bitmaps/attackcurs.b, bitmaps/attackmask.b: New bitmap files.

	* PROJECTS: Add more notes about things to do.

2000-04-19  Stan Shebs  <shebs@shebs.cnchost.com>

	* help.c (create_game_help_nodes): Change displayed name of game
	design node, make weather note conditional.
	(describe_game_module_aux): Put notes with module ref.
	(describe_utype, describe_ttype, describe_mtype, describe_atype):
	Put notes at top instead of bottom.
	(tb_bool_desc): Simplify.

	* world.c, world.h (numfeatures): New global.
	* world.c (init_features, create_feature, destroy_feature): Update
	it.
	(num_features): Remove.
	* ps.c (dump_ps_view): Use numfeatures global.

	* tkconq.h (UI numfeatures): Remove.
	* tkcmd.c, tkmain.c, tkmap.c: Use numfeatures global.
	* tkconq.tcl (adjust_view_menu): Use view_option_names for
	strings, use numfeatures to enable/disable feature view control.
	(popup_help_dialog): Enable Help and Back buttons, increase
	default size of text area.
	* tkmain.c (describe_map): Add more info.
	(node_stack, etc): New globals.
	(tk_help_goto): Maintain and use stack of visited nodes.

	* xdraw.c, xmap.c: Use numfeatures global.

	* stdunit.g: Don't let cities initiate attacks.

2000-04-18  Stan Shebs  <shebs@shebs.cnchost.com>

	* ui.h (VP draw_meridians, meridian_interval): Rename from
	draw_latlong and latlong_interval.
	(VP lat_label_lon_interval, lon_label_lat_interval): New fields.
	* ui.c (set_meridian_interval, vp_latlong): New functions.
	(plot_meridians): Rewrite to space text labels better for
	scrolling.

	* macconq.h (default_draw_meridians, default_meridian_interval):
	Rename from "latlong" versions.
	* macdefs.h (diPrefsMeridians): Similarly.
	* macgworld.c, macmap.c, macmouse.c, macprefs.c: Similarly,
	including rename of pref symbols to default-draw-meridians and
	default-meridian-interval.

	* tkcmd.c, tkconq.h, tkinit.c, tkmain.c, tkmap.c: Similarly.

	* xcmd.c, xdraw.c, xinit.c, xmap.c, xtconq.h: Similarly.

	* lisp.c, lisp.h (choose_from_weighted_list): Add argument to
	allow "flat" lists of weights and values.
	* mknames.c (gen_from_rule): Use it, add case for string
	leading rule.
	* combat.c, mknames.c, mkunits.c: Update callers.

	* warn.g: Add tests for namer warnings.

	* xconq.texi: Various updates, including capitalization of
	index entries.
	* PROJECTS: Reflect above and other changes.

2000-04-17  Stan Shebs  <shebs@shebs.cnchost.com>

	* keyword.def (vanish): New keyword.
	* utype.def (encounter-result): New property.
	* combat.c (model_1_attack): Use it.
	* lisp.c (choose_from_weighted_list): Add a warning.
	* unit.c (change_unit_type): Make work for changing to
	an advanced unit.

	* civ2.g: Add village encounter results.

2000-04-15  Stan Shebs  <shebs@shebs.cnchost.com>

	* ww2-div-eur.g: Add fortification and city unit types,
	make towns not have occupants, add stack protection.
	* nw-europe.g: Add many towns, some more cities, fortifications.
	* t-nw-eur.g: Fix positioning, add more roads and railroads,
	add countries as features.

	* u-e1-1938.g, u-e1-1998.g: Add bases at Anchorage and Dutch
	Harbor.
	* ww2-38.g, ww2-39.g, ww2-42.g, ww2s-42.g, ww2s-pac-41.g: Include
	t-e1-river.g.
	
2000-04-11  Stan Shebs  <shebs@shebs.cnchost.com>

	* tp.c (download_game_module): Make sure indepside is filled in.
	(net_resign_game, receive_side_prop): Handle NULL sides when
	resigning.
	* write.c (write_areas): Don't write area size if not yet defined.
	(write_sides): Write indepside data using independent-units form.
	(add_num_or_dice_to_form): Don't write 0 addends.
	(add_form_to_form): Increase buffer from 16K to 50K.

	* commands.texi: Add more indexing of commands.

2000-04-10  Stan Shebs  <shebs@shebs.cnchost.com>

	* tkconq.h: Include sys/time.h here instead of in tkmain.c.
	(Map): Make scroll mode and last raw x,y into 2-element arrays,
	add autoscroll_delaying and autoscroll_start_time arrays.
	* tkconq.tcl (create_map_menus): Label meridian interval menu
	items in degrees.
	(autoscroll): Add argument, remove w_autoscroll proc.
	* tkmain.c (autoscroll_delay): New global.
	(autoscroll_width): Reduce to 16 pixels.
	(autoscroll): New function, autoscrolls both main and world maps,
	also don't try to scroll if at edge of map.
	(update_mouseover, update_world_mouseover): Use it.
	* tkmap.c (set_tool_cursor): Add argument.
	(set_w_tool_cursor): Remove.
	* tkcmd.c, tkmain.c: Change all callers.

	* cmd.def: Rename "D" debug toggle to "DD", for consistency.

	* commands.texi: Make consistent with code.
	* refman.texi: Fix small mistakes from last checkin.

2000-04-08 Hans Ronne <hronne@2.sbbs.se>
	
	* trident.gif: Use white background so that it works on the mac.

2000-04-08 Hans Ronne <hronne@2.sbbs.se>
	
	Various bug fixes in the mac interface.
	* Floating.c: Update comments with new stuff from 02-06.
	* macconq.c (handle_keystroke): Move handle_numeric_keypad call.
	* macinit.c (hit_player_setup_dialog): Fix select added player bug
	and put added player under mplayer control by default.
	* macwins.c (do_key_down_construction): Feed erase key and digit keys 
	to the run length text field. Let all other keys fall through.
	
	Add side research support to the mac interface.
	* macconq.c (event_loop): Call hit_research_dialog.
	(handle_keystroke): Call do_key_down_research.
	(update_window): Call draw_research_dialog.
	(update_side_display): Rewrite. Add side research support.
	* macconq.h (researchwin): New Dialogptr.
	(show_research_dialog): New prototype.
	(draw_research_dialog): New prototype.
	(do_key_down_research): New prototype.
	(hit_research_dialog): New prototype.
	(build_research_menu): Move prototype here.
	(build_construction_menu): Move prototype here.
	* macdefs.h (dSideResearch): New dialog and items.
	* macmenus.c (do_menu_command): Add side research in miWindowsResearch.
	(adjust_menus): Add side research in miWindowsResearch.
	(adjust_menus): Add CheckItem for miWindowsResearch.
	* macunit.c (build_research_menu): Move prototype to macconq.h.
	(build_construction_menu): Move prototype to macconq.h.
	* macwins.c (researchwin): Intitialize.
	(show_research_dialog): New function.
	(draw_research_dialog): New function.
	(do_key_down_research): New function.
	(hit_research_dialog): New function.

	* XconqProj.rsrc (DLOG 811 "Side Research"): New dialog.
	(DITL 811 "Side Research"): New dialog item list.
	(MENU 134 "Side"): Add "Auto Research" item.
	* Xconq.r: Update from XconqProj.rsrc.
	
	Add option for running side research on automatic.
	* kernel.h (set_autoresearch): Prototype extern.
	* kpublic.h (net_set_autoresearch): Prototype extern.
	* macconq.c (auto_pick_side_research): Prototype.
	(update_side_display): Call auto_pick_side_research.
	* macdefs.h (miSideAutoResearch): New item. Reorder Side menu.
	* macmenus.c (do_menu_command): Add case miSideAutoResearch.
	(adjust_menus): Handle miSideAutoResearch.
	* run.c (auto_pick_side_research): New function and prototype.
	* side.c (create_side): Set side->autoresearch to FALSE.
	(set_autoresearch): New function.
	* side.h (struct a_side): Add side->autoresearch. 
	* tp.c (net_set_autoresearch): New function.
	(receive_side_prop): Add support for side->autoresearch.
	
2000-04-07  Stan Shebs  <shebs@shebs.cnchost.com>

	* atype.def (char, occurrence): Remove, never used.
	* help.c (describe_game_design): Remove ref to a_char.
	(describe_utype): Add more info about production tables.
	* lisp.c (read_form_aux): Make dice spec warning more useful.

	* ai.c (next_ai_type): Simplify.
	* conq.h (has_advance_to_research): Declare here.
	* cmd.c, run.c, macunit.c, macwins.c, tkmain.c: ...instead of here.
	* combat.c: Cosmetic changes.
	* iplayer.c: Remove more unused code, elim warnings.
	* mplayer.c (mp_collect_here): Declare.
	* plan.c: Comment out unused code.
	* supply.c: Remove unused globals.

	* tkconq.h (UI sidecloseuplist, etc): Remove, never used.
	(Map w_lastrawx, w_lastrawy, wscrollmode): New fields.
	* tkconq.tcl (make_normal_bindings): Add motion binding for
	world map.
	(w_autoscroll): New proc.
	* tkmain.c (tk_world_mouse_over_cmd): New tcl command.
	(update_world_mouseover): New function.
	* tkmap.c (worldw_vp, set_w_tool_cursor): New functions.

	* africa.g, empire.g, modern.g: Fix dice specs.

	* refman.texi: Remove ref to color type property, clarify
	which types have which generic properties.
	* PROJECTS: Reflect recent projects.

2000-04-06  Stan Shebs  <shebs@shebs.cnchost.com>

	* game.h (for_all_border_types, for_all_connection_types): Move
	to here from supply.c.
	* generic.c (first_bord_type, next_bord_type, first_conn_type,
	next_conn_type): New globals.
	* world.c (count_terrain_subtypes): Calculate values for these.
	* supply.c (optimize_terrain): Remove, no longer needed.
	* move.c, nlang.c, ps.c, run.c, task.c, ui.c, unit.c, macrow.c:
	Use the macros everywhere.
	* nlang.c (linear_desc): Comment out info about directions.
	(location_desc): Attach linear desc to terrain name only.
	* ui.c (toggle_user_at): Add error messages for failures.

	* imf.c (add_shrunken_image): Set the mask bit using
	the same choice of pixel as for the color image.

	* tkimf.c (tk_make_color_pixmap, etc): Don't use XImages
	if the image is of odd size.
	* tkmain.c (draw_unit_info): Add supply line info, make
	size display optional.

	* xcutil.c (read_any_file): Allow .g files.

	* civ2.g: Use noun instead of name/plural-noun/adjective
	for sides.
	* earth-1deg.g: Tweak some feature names and boundaries.
	* earth-50km.g: Similarly, plus add and name some more
	Pacific and Indonesian islands.
	* trident.gif: Fill in some holes.

2000-04-02  Stan Shebs  <shebs@shebs.cnchost.com>

	* gvar.def (unit-name-color): Change default to white.
	* history.def (blocking-zoc): New action failure type.
	* keyword.def (transition): New keyword.
	* cmdline.c (set_players_from_options): Don't create a player for
	the indepside if one already exists.
	* combat.c (model_1_attack): Capture advanced unit in stack
	instead of destroying it.
	(check_fire_into_action, check_capture_action): Not allowed in
	combat model 1.
	* imf.c (interp_image, write_image): Use transition keyword.
	* move.c (check_move_action): Return distinct failure code if
	blocked by ZOC.
	(in_blocking_zoc): Fix typos, add traverse-blocking case.
	(unit_traverse_blockable_by, any_friendly_at): New functions.
	* nlang.c (apparent_unit_handle): New function.
	* plan.c, run.c, ui.c: Confirm that user layer exists before
	calling user_at.
	* run.c (run_advanced_units): Allocate user layer here.
	* ui.c (collect_possible_games): Remove Mac-specific code, never
	used.
	(oneliner): Use apparent_unit_handle to describe some units.
	* world.c (allocate_area_terrain): Don't allocate user layer here.
	* run2.c (run_auto_repair): Let occupants do repairs.
	* unit.c (add_to_unit_hp): Move to here from run2.c.
	* read.c, side.c, unit.h, write.c: Cosmetic changes.
	* iplayer.c: Remove unused code.

	* tkinit.c (set_colors): Tweak setup of unit_name_color.
	(init_material_images): Flush unused code.
	* tkmap.c (draw_units): Draw name of uncovered unit under
	some circumstances.
	(draw_unit_name): Use unit_name_color.
	(draw_resource_usage): Use material images if possible.

	* civ2.g: Use real images for materials, set
	size-limit-without-occupant, make ZOCs work right, add auto-repair
	ability for some city improvements, use trident images from
	FreeCiv.
	* images/trident.gif, images/civmisc.gif: New files, images
	borrowed from FreeCiv's "trident" tileset.

	* doc/Makefile.in (syms.texi): Abbreviate some keywords to
	make the formatting work.
	* refman.texi: Describe new plan types, file-based images
	and other new image properties.
	* syntax.texi: Use @smallexample instead of @example.
	* xconq.texi: Fix line length.
	* PROJECTS: Reflect above work.

2000-03-27  Stan Shebs  <shebs@shebs.cnchost.com>

	* world.c (compute_feature_centroid): Restructure to be
	easier to understand.

	* tkconq.h (enum mapmode): New values no_scroll_mode,
	scroll_up_mode, etc.
	(Map): New field scrollmode.
	* tkconq.tcl (make_unit_paint_frame): Include emblems in
	unit image sample.
	(dbg_set_design_data): Update unit paint frame emblem.
	(make_feature_paint_frame): Rewrite to make feature renaming
	an integral part of paint frame instead of a dialog.
	(update_feature_name_entry): New proc.
	(new_feature): Don't tweak popup's label here.
	* tkinit.c: Include new scroll cursor bitmaps.
	(init_cursors): Use them.
	* tkmain.c (tk_feature_desc): New tcl command.
	(tk_feature_info, tk_set_feature_info): Rename from
	..._feature_name, extend to get/set type name also.
	(tk_create_new_feature): Recalc feature-related caches.
	(update_mouseover): Set map->scrollmode also.
	* tkmap.c (draw_row): Wrap x before passing to subrs.
	(draw_feature_boundary): Wrap x before using.
	(set_tool_cursor): Set cursor to a scroll cursor if in
	map is scrolling.

	* bitmaps/scursdown.b, bitmaps/scursdownm.b, bitmaps/scursleft.b,
	bitmaps/scursleftm.b, bitmaps/scursright.b, bitmaps/scursrightm.b,
	bitmaps/scursup.b, bitmaps/scursupm.b: New files, bitmaps
	indicating autoscroll direction.

	* PROJECTS: Add more ideas.

2000-03-25  Stan Shebs  <shebs@shebs.cnchost.com>

	* combat.c: Cosmetic improvements.
	* imf.c (interp_image): Add info to error message, set
	numsubimages correctly for special image types.

	* imfapp.tcl: Add 24x26 and 44x48 magnifications.
	* tkiapp.c (ui_init): Add alternate location to find imfapp.tcl.
	* ximfapp.c (add_library_path): New function.
	(main): Use it to implement -L option.

	* tkconq.tcl (make_terrain_paint_frame): Don't overlap
	foreground and background terrain, use bgcolor in imfsamples.

	* ww2-bn.g: Rename ground-unit-types to just ground-types,
	add terrain effect on defense, make towns protect occupants.
	* u-e1-1938.g, u-e1-1998.g, u-e50-1998.g: Fix position of
	Panama City.

	* doc/PROJECTS: Reflect above work, add more thoughts about
	game work in progress.

2000-03-23  Stan Shebs  <shebs@shebs.cnchost.com>

	* cmdline.c (parse_command_line): Warn about using -host, -join.

	* tkconq.tcl (add_program): Don't mess with chat window if not
	open.
	* tkmain.c (tk_set_remote_for_player): Remove, no longer used.
	(host_the_game): Return a result, remove unused code that
	sets up players.
	(try_join_game): Remove commented-out code.

	* wconq.c: Remove unneeded decls.
	* xconq.c: (main): Rewrite -host, -join startup sequences.
	(accept_all_remotes): New function.

2000-03-21  Stan Shebs  <shebs@shebs.cnchost.com>

	* world.c, world.h (any_elev_variation): New global.
	(calculate_world_globals): Compute it.
	(allocate_area_elevations): Set initial elevations to minimum
	required by terrain type.
	* help.c (describe_ttype): Use any_elev_variation.

	* tkcmd.c (do_design): Go to survey mode when done designing.
	* tkconq.tcl (any_elev_variation, any_temp_variation,
	any_wind_variation, any_clouds): New tcl globals.
	(popup_design_palette): Use them to decide button activation,
	also permanently disable material painting.
	(make_terrain_paint_frame): Increase size of samples.
	* tkinit.c (init_display): Set new tcl globals.
	* tkisamp.c (draw_one_image): Pick out subimage to draw.

	* stdunit.g: Prevent armor from crossing from road end in
	mountains etc to passable terrain.

	* commands.texi: Fix doc of "if" command.
	
	* cmd-diff.sh: Update to match syntax of manual source.

	* PROJECTS: Remove some more lame ideas.

2000-03-17  Stan Shebs  <shebs@shebs.cnchost.com>

	* keyword.def (non-advance): New keyword.
	* read.c (init_predefined_symbols): Set it up as a constant.

	* tkconq.tcl (dbg_set_design_data): Add argument.
	(make_elev_paint_frame): Add raise/lower buttons.
	(set_elevation, raise_elevation, lower_elevation): New procs.
	* tkmain.c (tk_set_design_data): Use extra argument for
	incr/decr amount for elevations.
	* tkmap.c (handle_designer_mouse_down): Recompute contour
	line info when altering elevations.

	* ancient.g: Use side-color-library.
	* all.g: Rename side-colors to side-color-library.

	* refman.texi: Document many more recently-added constructs.
	* PROJECTS: Reflect recent work.

2000-03-16  Stan Shebs  <shebs@shebs.cnchost.com>

	* gvar.def (side-color-library): Rename from side-colors.
	* lisp.c, lisp.h (choose_from_weighted_list): Move to here
	from mknames.c.
	* mkunits.c: Remove decl of fn.
	* mknames.c (total_color_weights): New global.
	(make_up_side_name): Add choice of random color scheme.
	(name_in_use): Test for color scheme in use.
	* ui.c (get_emblem_images): Allow use of color scheme as emblem.
	(contour_lines_at): Handle elevation range changes.

2000-03-13  Stan Shebs  <shebs@shebs.cnchost.com>

	* version.h: Bump to 7.2.96.

	* refman.texi: Document many added symbols.

2000-03-12  Stan Shebs  <shebs@shebs.cnchost.com>

	* unit.h (has_acp_left): Test against 0 instead of acp-min.
	* unit.c (change_unit_type): Make side change to indepside
	instead of NULL.
	* skelconq.c, cconq.c (unit_research_dialog, side_research_dialog):
	Add dummy versions.
	* actions.c, combat.c: Cosmetic changes.
	* iplayer.c: Remove unneeded decls.

	* cobra.g: Make self-contained.
	* ob-nor-alld.g, ob-nor-axis.g: Remove, not really used or useful.

	* PROJECTS: Contrib dir exists, add proposal to remove
	create-units-from-specs.

2000-03-11  Stan Shebs  <shebs@shebs.cnchost.com>

	* mkroads.c (make_roads): Use actual value of K_ROAD_X.
	* move.c (total_move_cost): Add effect of coating types.
	* mplayer.c (update_side_strategy): Add per-side research
	decision.
	(add_goal): Warn about goal overflow.
	(mplayer_decide_plan): Use for advanced units unless auto
	constructing/researching, decide to collect materials if
	there is a goal to have some.
	(mplayer_adjust_plan): Similarly, plus add a goal to get
	materials if units to be constructed need them.
	(assign_to_collection, mp_collect_here,
	assign_to_colonization support): New functions.
	* plan.c (execute_plan): Use for advanced units unless auto
	constructing/researching.
	(plan_colonize): Call plan_colonize_support if unit not
	a mobile type.
	* run.c (run_game): Stop game action if any designers active.
	* run2.c (run_environment): Add special code to detect and
	use mud and snow coating types.
	* task.c (do_build_task): Test requested location before
	doing create-in, try all directions if no location for a
	create_at.

	* tkmap.c (GRAY): Add darkgray option.
	(cell_drawing_info): Add overlay color result, make coatings
	override other overlay types.
	(draw_terrain_row, draw_terrain_transitions): Fix coating
	drawing.

	* ancient.g: Make units vanish in forest (prevents attempts
	to construct there), adjust hit chances on animals vs people,
	change Mitanni side color.
	* civ2.g: Default variants to off, change settlers image,
	let cities see whole area, let units build roads and rails,
	lower cost of movement on them.
	* ww2-adv.g: Add mud/snow effects.
	* ww2-eur-42.g: Add/adjust temperature stations, add in
	ww2-sides.g.
	* images/settler.gif: New image.
	* imf.dir, people.imf: Add it.

	* PROJECTS: Remove some more unmotivated items, reflect
	accomplishment of basic Civ emulation.

2000-03-09  Stan Shebs  <shebs@shebs.cnchost.com>

	* ai.c (goal_truth): Handle GOAL_HAS_MATERIAL_TYPE.
	(colonizing_worth): Also consider a unit to be a colonizer
	if it can build any type that can build more of it.

	* tkcmd.c (aux_add_terrain_2): Require linear types to be
	specified by clicking on adjacent cell.
	* tkinit.c (init_display): Call init_ui_chars.
	* tkmain.c (ask_unit_type): Use unitchars array.
	(ask_terrain_type): Use terrchars array.
	* cconq.c, xmap.c: Similarly.

2000-03-05  Stan Shebs  <shebs@shebs.cnchost.com>

	* task.def (TASK_BUILD): Add args for location at which to build.
	* task.c (do_build_task): Pass location to create-at action.
	* iplayer.c, mplayer.c, kpublic.h, plan.c, task.c, tp.c,
	ccmd.c, macunit.c, macwins.c, tkcmd.c, xcmd.c: Update all calls.

	* task.def (TASK_DO_ACTION): Remove, never used.
	* task.c (do_action_task): Remove.
	* xcloseup.c: Remove ref.

	* cmd.c (do_research): Let "research nothing" stop research.
	* run.c (units_still_acting): Don't end turn if research topic
	still needs to be chosen.
	(run_population): Add a hack for effects of "Granary".
	* run2.c (run_side_research): Skip if researchers resting.

	* tkconq.tcl (popup_splash_screen): Improve button names.
	(fill_in_side_list): Omit default scorekeeper text.
	(popup_research_dialog): Add "Rest" button.
	(rest_research): New proc.
	* tkmain.c (update_side_display): Move research popup to here
	from update_turn_display.
	(tk_set_side_research): Handle resting case.

	* civ2.g: Rename "fishery" to "ocean/fish", limit number
	of wonders, forbid multiple improvements of the same type
	in a city, make research go faster.

	* ww2-div-eur.g: Limit number of battleship attacks.
	* nw-europe.g: Add London.
	* t-nw-eur.g: Add beaches.
	* ww2-adv.g: Remove cliffs and salt-marsh terrain types,
	add beach terrain type, constrain transports to only be
	able to unload across beaches.
	* ww2-eur-42.g: Similarly, for the actual terrain layers.

	* PROJECTS: Reflect beach additions, remove redundant build
	item.

2000-02-29  Stan Shebs  <shebs@shebs.cnchost.com>

	* table.def (mp-to-enter-terrain): Allow negative values.
	* move.c (do_move_action): Tweak argument names for consistency,
	comment out tests of vanishing on terrain being left from.
	* run2.c (interpolate_temperature): Rewrite to fix/simplify.
	(try_sharing_with_cell): Share with all trusted units.
	(run_economy): Don't round capacities of 1 to 0.
	* ai.c (next_ai_type): New function.
	* tkconq.tcl (cycle_ai_cmd): Rewritten, was toggle_ai_cmd.
	* tkmain.c (tk_set_ai_for_player): Rewrite to use -cycle
	argument.
	* tkmap.c (any_coating_at): New function.
	(cell_drawing_info, draw_terrain_row): Use to detect and draw
	coatings.
	(handle_designer_mouse_down, paint_on_drag): Add ability to
	paint coatings.

	* game.dir: Remove unfinished games empire.g and postmodern.g.
	* ww2-adv.g: Add snow terrain, remove port cities, let sub
	and asw fleets see farther, let ground units build bases,
	tinker with combat odds, add temperature model.
	* ww2-eur-42.g: Add key points for temperatures, add more
	German subs, make France be controlled by Germany, add
	instructions.
	* ww2-stdunit.g: Remove, not very useful.
	* ww2s-42.g, ww2s-eur-42.g, ww2s-pac-41.g: Add contents of
	ww2-stdunit.g, make standard game be base module.
	* ww2-div-eur.g: Let ground types land through beach borders.
	* ww2-div-eur.g, ww2-bn.g: Don't use large speeds.

	* PROJECTS: Reflect above work.

2000-02-23  Stan Shebs  <shebs@shebs.cnchost.com>

	* combat.c (check_attack_action, check_fire_at_action,
	capture_unit_2): Fix independent unit tests.

	* tkimf.c (tk_make_color_pixmap): Use endian-portable code
	to fill in ximbuf.
	* tkmain.c (initial_ui_init): Provide more info about why
	tcl files couldn't be loaded.
	* tkmap.c (draw_units): Fix visibility tests so that
	named visible units can get their names displayed.
	(handle_designer_mouse_down): Make the newly-created unit
	the current unit.

	* nat-names.g, ng-african.g, ng-american.g, ng-asian.g,
	ng-european.g, ng-misc.g: Add rest of per-nation random
	place names.
	* stdunit.g: Add more independent towns.

	* images/dwellings32.imf: New file.
	* dwellings.imf: Use it for walltown, rename b/w image to
	walltown-s, also rename b/w parthenon image.
	* ancient.imf, ships.imf: Similarly for hoplite and trireme.

	* PROJECTS: Reflection of above projects, plus general sweep
	of junky ideas.

2000-02-16  Stan Shebs  <shebs@shebs.cnchost.com>

	* task.c (do_produce_task): Adjust correct task argument.

	* refman.texi (material-to-produce): Clarify behavior.

2000-02-06  Hans Ronne  <hronne@pp.sbbs.se>

	Mac interface improvements: Integrate advanced unit (city) dialog
	with normal unit closeup and make it non-modal. Add a new list for
	setting research tasks to the construction window. Improve help
	window and make it floating. Add help buttons to unit
	closeups. Rewrite event_loop and handle_event for better support
	of non-modal dialogs. Add dialog support to floating window
	code. Add support for Return, Escape and Up and Down Arrow keys to
	player setup dialog. Add support for Page Up Page Down and Escape
	keys to list scrolling code.
	
	Kernel improvements: Add network support for curadvance,
	autobuild, autoresearch and autoplan. Other new functions:
	research_desc and researchible_desc.

	* Floating.c (IsDialog): New function.
	(UpdateFloats): Test for IsDialog.
	(MakeDialogFloat): New function.
	(SelectTheWindow): Test for IsDialog.

	* Floating.h: include <Dialogs.h>.
	(IsDialog): Prototype.
	(MakeDialogFloat): Prototype.

	* macconq.c (handle_keystroke): New function and prototype.
	(drag_window): New function and prototype.
	(event_loop): Call get_global_mouse & adjust_cursor first of all.
	Rewrite handling of keystrokes and dialog events.
	Comment out redundant adjust_cursor call.
	(adjust_cursor): Add work around for Appearance Manager bug.
	(handle_event): Use MacFindWindow instead of FindWindow.
	Call drag_window instead of DragTheWindow.
	Add case inCollapseBox. Comment out case keyDown and case autoKey.
	Test for IsDialog on suspend/resume events.
	(grow_window): Add call to update_all_visible_dialogs.
	(zoom_window): Add call to update_all_visible_dialogs.
	(close_window): Call update_all_visible_dialogs instead of update_all_map_windows.
	(update_unit_display): Check if closeup is visible before updating.
	Use update_window instead of draw_unit_closeup.
	(update_unit_acp_display): Use update_window instead of draw_unit_closeup.
	(force_update): Use update_window instead of EraseRect.
	
	* macconq.h (do_key_down_list): New prototype.
	(hit_player_setup_dialog): Change prototype to return void.
	(hit_closeup_dialog): New prototype.
	(do_key_down_closeup): New prototype.
	(do_key_down_help): New prototype.
	(update_all_dialogs): New prototype.
	(update_all_visible_dialogs): New prototype.
	
	* macdefs.h (HelpButton): Define as 3.
	(mAdvancePopup): Rename to mResearchPopup.
	(diCityBuildTimes): Define as 97.
	(diCityMap): Change from 3 to 98.
	(dCloseup): Define as 810.
	(cDevelopButton): Define as 136.
	
	* macgworld.c (handle_numeric_keypad): Remove list window code.
	Remove gworld snapshot and debugger key code.
	(update_all_dialogs): New function.
	(update_all_visible_dialogs): New function.
	
	* machelp.c (create_help_window): Tweak helptopicrect.
	Use floatsbarwid instead of sbarwid everywhere.
	Tweak viewrect and vscrollrect. Call MakeFloat at end.
	(draw_help): Use floatsbarwid instead of sbarwid.
	Draw a default line around the close button.
	(help_vscroll_fn): Change jump size from 1 to 2.
	(do_key_down_help): New function.
	(grow_help): Use floatsbarwid instead of sbarwid. Tweak viewRect.
	(zoom_help): Use floatsbarwid instead of sbarwid. Tweak viewRect.
	
	* macinit.c (player_setup_dialog): Change selectedplayer from 0 to 1.
	Call MakeDialogFloat at end.
	(handle_player_setup_event): Cancel on cmd-dot.
	Add support for Return, Esc, Up arrow and Down arrow keys.
	(hit_player_setup_dialog): Change "pt" to "mouse" everywhere.
	Save and restore the graphics port.
	Call launch_game_2 directly at the end.
	
	* maclist.c (scroll_list_using_key): Remove function and prototype.
	(do_key_down_list): New function based on scroll_list_using_key.
	Remove support fort list scrolling from the numeric keypad.
	Add support for PageDown PageUp and Escape keys.
	
	* macmenus.c (city_dialog): Remove prototype.
	(global_advance_dialog): Rename prototype to side_research_dialog.
	(do_city_dialog_mi): Remove function and prototype.
	(do_menu_command): Remove City Dialog from Play menu.
	Change global_advance_dialog to side_research_dialog.
	
	* macmouse.c (city_dialog): Remove prototype.
	(do_mouse_down_map_content): Remove city dialog code.
	
	* macunit.c: New name for macadv.c. Now contains all windows
	and dialogs that refer to individual units in one place. The closeup
	code from macwins.c has been moved here and integrated with the
	advanced unit (city) closeup code. global_advance_dialog has been
	renamed to side_research_dialog and moved to macwins.c. 
	(city_dialog): Remove function and prototype.
	(draw_simple_closeup): New prototype.
	(draw_advanced_closeup): New prototype.
	(build_construction_menu): New function and prototype.
	(build_research_menu): New function and prototype.
	(unit_advance_win): New global.
	(unit_build_win): New global.
	(unit_plan_win): New global.
	(lastunitcloseuph): Move here from macwins.c.
	(lastunitcloseupv): Move here from macwins.c.
	(m_per_row): Move here from macwins.c.
	(nummrows): Move here from macwins.c.
	(closeup_spacing): Move here from macwins.c.
	(closeupwinwid):  Move here from macwins.c.
	(find_unit_closeup): Move here from macwins.c.
	(create_unit_closeup): Move here from macwins.c.
	(unit_closeup_from_window): Move here from macwins.c.
	Use dCity and dCloseup for advanced and non-advanced units.
	Use MakeDialogFloat instead of MakeFloat.
	(preferred_closeup_size): Move here from macwins.c.
	(draw_unit_closeup): First part of same function from macwins.c.
	Add test for side_sees_unit. Move update_cell_display call first.
	Call either draw_simple_closeup or draw_advanced_closeup.
	(destroy_unit_closeup): Move here from macwins.c.
	(do_mouse_down_unit_closeup): Move here from macwins.c.
	(do_key_down_closeup): New function.
	(hit_closeup_dialog): New function. Second half of old city_dialog.
	(draw_advanced_closeup): New function. First half of old city_dialog.
	Use last_task->args[3] instead of tasks->args[3] for runlength field.
	Use unit->plan->type + 1 to set the plan menu control value.
	Don't hide diCityBuildEdit. Hilite it instead.
	(draw_city_statistics): Rename to draw_closeup_content.
	Change first argument to DialogPtr. 
	Add tmprect. Enable draw_unit_size call.
	(draw_unit_size): Add support for unit closeups.
	Save and restore current font, style and size.
	(unit_advance_dialog): Rename to unit_research_dialog.
	Change mAdvancePopup to mResearchPopup.
	(global_advance_dialog): Move to macwins.c.
	
	* macwins.c (has_advance_to_research): Prototype extern.
	(get_selected_construction_advance): New function and prototype.
	(update_unit_list_for_advance): New function and prototype.
	(select_advance_in_construction_window): New function and prototype.
	(update_construction_advance_list): New function and prototype.
	(update_advance_list_for_unit): New function and prototype.
	(construction_advance_list): New global ListHandle.
	(*research_units): New global UnitVector.
	(numpossadvances): New global int.
	(*possibleadvances): New global int.
	(researchbutton): New global ControlHandle.
	(advancelistrect): New global rect.
	(lastunitcloseuph): Move to macunit.c.
	(lastunitcloseupv): Move to macunit.c.
	(m_per_row): Move to macunit.c.
	(nummrows): Move to macunit.c.
	(closeup_spacing): Move to macunit.c.
	(closeupwinwid):  Move to macunit.c.
	(create_construction_window): Handle research button and advances list.
	(init_construction_lists): Update construction_advance_list.
	(draw_construction): Update advancelistrect.
	(calc_construction_rects): Make room for construction_advance_list.
	(activate_construction): Activate construction_advance_list.
	(do_mouse_down_construction): Handle research button and advances list.
	(update_construction_unit_list): Test for can_research.
	(maybe_add_unit_to_construction_list): Test for can_research.
	(adjust_construction_controls): Add support researchbutton.
	(adjust_construction_items): Add support for construction_advance_list.
	(side_research_dialog): Move global_advance_dialog here and rename it.
	Change mAdvancePopup to mResearchPopup.
	(find_unit_closeup): Move to macunit.c.
	(create_unit_closeup): Move to macunit.c.
	(preferred_closeup_size): Move to macunit.c.
	(draw_unit_closeup): Move to macunit.c.
	(unit_closeup_from_window): Move to macunit.c.
	(do_mouse_down_unit_closeup): Move to macunit.c.
	(destroy_unit_closeup): Move to macunit.c.
	
	* XconqProj.rsrc (CNTL 129 "Research Button"): Tweak position.
	(CNTL 130 "Close Button"): Tweak position.
	(CNTL 136 "Develop Button"): New control.
	(CNTL 714 "Runlengh Popup"): New control.
	(dctb 803 "City"): Rename to "Advanced Closeup".
	(DITL 803 "City"): Rename to "Advanced Closeup". Add Help button.
	(DITL 804 "City Research"): Rename to "Unit Research".
	(DITL 807 "City Build"): Rename to "Unit Build".
	(DITL 808 "City Plan"): Rename to "Unit Plan".
	(DITL 810 "Simple Closeup"): New dialog item list.
	(DLOG 803 "City"): Rename to "Advanced Closeup".
	(DLOG 804 "City Research"): Rename to "Unit Research".
	(DLOG 807 "City Build"): Rename to "Unit Build".
	(DLOG 808 "City Plan"): Rename to "Unit Plan".
	(DLOG 810 "Simple Closeup"): New dialog.
	(ictb 803 "City"): Rename to "Advanced Closeup".
	(MENU 714 "Runlengh Popup"): New menu.
	
	* Xconq.r: Update from XconqProj.rsrc.

	* conq.h (research_desc): New prototype.
	(researchible_desc): New prototype.
	(can_research): New prototype.
	
	* kernel.h (set_unit_curadvance): New prototype.
	(set_unit_autoplan): New prototype.
	(set_unit_autoresearch): New prototype.
	(set_unit_autobuild): New prototype.
	
	* kpublic.h (net_set_unit_curadvance): New prototype.
	(net_set_unit_autoplan): New prototype.
	(net_set_unit_autoresearch): New prototype.
	(net_set_unit_autobuild): New prototype.
	
	* nlang.c (research_desc): New function.
	(researchible_desc): New function.

	* plan.c (set_unit_curadvance): New function.
	(set_unit_autoplan): New function.
	(set_unit_autoresearch): New function.
	(set_unit_autobuild): New function.
	(can_research): New function.
	
	* run.c (unit_advance_dialog): Rename to unit_research_dialog.
	(global_advance_dialog): Rename to side_research_dialog.

	* tp.c (net_set_unit_curadvance): New function.
	(net_set_unit_autoplan): New function.
	(net_set_unit_autoresearch): New function.
	(net_set_unit_autobuild): New function.
	(receive_unit_prop): Handle curadvance, autoplan, autoresearch & autobuild.
	
	* tkmain.c (unit_advance_dialog): Rename to unit_research_dialog.
	(global_advance_dialog): Rename to side_research_dialog.
	
	* xtconq.c (unit_advance_dialog): Rename to unit_research_dialog.
	(global_advance_dialog): Rename to side_research_dialog.
	
2000-02-06  Hans Ronne  <hronne@pp.sbbs.se>
	
	Fix terrain images related problems on the mac. Allocate cicns
	using xmalloc instead of hanging them at the top of the heap. Remove
	heap gymnastics code. 
	* macconq.h (interp_named_color): Remove prototype.
	(reinit_all_emblem_images): Remove prototype.
	(init_emblem_cicns): Remove prototype.
	(init_unit_cicns): Remove prototype.
	(dispose_emblem_cicns): Remove prototype.
	(dispose_unit_cicns): Remove prototype.
	* macconq.c (update_side_display): Remove argument in init_emblem_images.
	* macimf.c (mac_interp_image_1): Fix 88x96 bug. Remove special case.
	(mac_create_cicn): xmalloc cicnhandle & datahandle instead of using heap.
	(mac_init_cicn_1): Remove heap gymnastics code.
	(interp_ctab): xmalloc ctabhandle instead of using heap.
	* macinit.c: (dispose_unit_images): Prototype.
	(dispose_emblem_images): Prototype.
	(dispose_terrain_images): Prototype.
	(hit_player_setup_dialog): Call init_emblem_images instead.
	(launch_game): Call init_emblem_images instead.
	(launch_game): Remove call to init_emblem_cicns.
	(interp_named_color): Remove function.
	(reinit_all_emblem_images): Remove function.
	(reinit_all_emblem_images): Remove function.
	(reinit_all_terrain_images): Remove function.
	(init_all_emblem_images): Move content to init_emblem_images.
	(init_unit_cicns): Remove function.
	(init_emblem_cicns): Remove function.
	(init_terrain_cicns): Remove function.
	(init_unit_images): First call dispose_unit_images.
	(init_emblem_images): First call dispose_emblem_images.
	(init_terrain_images): First dispose_terrain_images.
	(dispose_unit_images): Old dispose_unit_cicns. Now also frees uimages.
	(dispose_emblem_images): Old dispose_emblem_cicns. Now also frees eimages.
	(dispose_terrain_images): New function.
	* macprefs.c (set_preferences): Call init_unit_images instead.
	* macwins.c (side_rename_dialog): Call init_emblem_images instead.

2000-01-05  Hans Ronne  <hronne@pp.sbbs.se>
	
	Fix problem with city development and upgrades in "time" game.
	* mplayer.c (review_units): Use PLAN_IMPROVING for upgrading cities.
	(assign_to_develop_on): Use PLAN_IMPROVING for developing cities.
	(assign_to_develop_on): Call net_clear_task_agenda before pushing new task.
	* plan.c (plan_improve): Call execute_task and return if we have a task.
	
	Fix bad mtype errors in non-civ2 games.
	* side.c (create_side): Initialize m to NONMTYPE.
