Tue Sep 25, 2001 : Michael Deutschmann <michael@talamasca.ocis.net>
	
	* src/cpu.S (ex_reset, cpu65_step): 
	  zero cpu65_debug.op when starting CPU.

	* src/debugger.c (show_lc_info, show_misc_info): Fix dumb "&" vs 
	  "&&" typos.
	
	* src/misc.c (reset_soft_switches): Put SS_IOUDIS back into power-on
	  settings.

	* src/cpu.S (Continue,DoBxx,op_BRA): In COUNT_CYCLES mode, cleared 
	  EffectiveAddr_E, to make sure high word is zero after using it
	  for scratch.

	* sre/keys.c (c_periodic_update): Removed callout to 
	  reset_soft_switches()...
	* src/misc.c (reset_hardware): and moved it to this new function
	* src/misc.h: add prototype for reset_hardware().
	* src/cpu.S (ex_reset): add callout to reset_hardware().

Sun Sep 23, 2001 : Michael Deutschmann <michael@talamasca.ocis.net>

	* configure.in: updated and renamed to...
	* configure.ac: this, for autoconf 2.5x.

	* configure.ac: added AM_PROG_AS for automake 1.5

	* src/Makefile.am: added hack to keep assembly working under 
	  automake 1.5.  Also unrelated comment updates
	
	* src/xvideo.c (getshm): Added cast to suppress compiler warning, 
	  in detecting shmat()'s -1 failure value
	
	* src/svideo.c: include <stdlib.h> for bsearch() prototype.

Thu Sep 20, 2001 : Michael Deutschmann <michael@talamasca.ocis.net>
	
	* src/misc.c (iie_initialize_switches): rename to "reset_soft_switches"

	* src/misc.c (reinitalize): moved "softswitches =" line to...
	* src/misc.c (reset_soft_switches): ...here.  In passing, removed 
	  SS_IOUDIS and added SS_BANK2.
	
	* src/misc.h: added prototype for reset_soft_switches().

	* src/keys.c (c_periodic_update): call reset_soft_switches on reset 
	  key, when in //e mode.
	
	* Makefile.am: distribute README.clockhd

Wed Sep 19, 2001 : Michael Deutschmann <michael@talamasca.ocis.net>

	* src/clock_hd.c (clockhd_readwatch): removed unneeded 
	  code for handling nanosecond wraparound.

	* src/clock_hd.c: add include of <sys/time.h>	

	* src/clock_hd.c (clockhd_readwatch,clockhd_setmark): corrected 
	  to use timeval (microseconds), not timespec (nanoseconds).

Sun Sep 16, 2001 : Michael Deutschmann <michael@talamasca.ocis.net>

	* src/cpu.S, src/debug.l-cpp, src/debugger.c, src/display.S,
	  src/interface.c, src/memory.S, src/misc.c, src/misc.h, 
	  src/opcodes.c, src/prefs.c, src/vidpriv.h, src/vidsup.c:
	  Removed APPLE_IIE #ifdefs.  //e support is now 
          officially unconditional.

	* configure.in: Remove APPLE_IIE define.

	* configure.in: bump revision to 0.4.7d.

	* src/misc.c (emu_dma, dma_map): New function.
	* src/misc.h: Added support definitions for emu_dma.

	* src/debugger.c (bload):  Rework to use emu_dma().

	* src/gluepro.h, src/glue.h: Added new callgate support.

	* Updated copyright headers on all files for 2001.

	* src/clock_hd.c: new file
	* src/Makefile.am: Add src/clock_hd.c, and set up to use the math 
	  library.  Also added clock_hd.c to genglue rule.
	* src/misc.h: Added prototype for new clockhd_install, as well as 
	  old disk_install function.
	* src/misc.c (c_initialize_tables): Added callout to clockhd_install.

Tue Jan 23, 2001 : Michael Deutschmann <michael@talamasca.ocis.net>

	* configure.in: Bump revision to 0.4.7c.

	* src/devaudio.c: Increase CLOCK_SPEED_6502 at Munafo's request.

	* src/devaudio.c (devaudio_init): Added update from Munafo, new 
	  ioctl call to smooth audio.

	* src/prefs.c (load_settings): Fix segfaults on invalid or blank
	  configuration-file lines.

Wed Nov 8, 2000 : Michael Deutschmann  <michael@talamasca.ocis.net>

	* src/cpu.S (cpu65_nmos): backout an unneccessary whitespace change
	  (at op_ROR_abs_x) accidentally introduced during earlier edits to 
	  this table. 

Sun Nov 5, 2000 : Michael Deutschmann  <michael@talamasca.ocis.net>
	
	* configure.in: fix option-handling to properly handle
	  --enable-debugger=no. 

	* configure.in: add new option, --enable-cycles, which turns on 
          the COUNT_CYCLES define.

	* src/xvideo.c (video_init): fix dependence on old 
	  soundAllowed variable. 

Wed Nov 1, 2000 : Michael Deutschmann  <michael@talamasca.ocis.net>

	* src/misc.h: remove soundAllowed.

Tue Oct 31, 2000 : Michael Deutschmann  <michael@talamasca.ocis.net>
	
	* src/devaudio.c: new file, based on Robert Munafo's sound 
	  driver work.

	* src/devaudio.h: new file, declare functions from devaudio.c.

	* src/prefs.h: added declaration for sound_ready.  Added new 
	  SOUND_* defines for sound_mode values.
	* src/prefs.c: declare sound_ready, and redo sound_table to 
 	  use new constants and include new driver.
	
	* src/interface.c (c_interface_parameters): added ability to 
	  select /dev/audio driver.

	* src/misc.c (c_initialize_sound) : rewrite to allow use of 
	  /dev/audio driver and sound_ready.
	* src/misc.c (c_initialize_firsttime) : add callout to 
	  devaudio_init().
	
	* src/misc.c (c_initialize_firsttime) : revise PC speaker 
	  initialization to set sound_ready, not soundAllowed.

	* src/misc.c (reinitialize): Initialize cycle counter to 0.

	* src/cpu.S:  Bug fix -- cpu65_timings array has to be a 
	  32-bit word array (despite small size of values), because i386 
	  cannot add a byte to a longword quickly.  Size of ".comm" 
	  declaration changed, and lookup adjusted to use *4 index.
	* src/cpu.h: declare cpu65_timings as "unsigned int"
	* src/cpu-supp.c: change timings_cmos and timings_nmos to also be 
	  unsigned int.
	* src/cpu-supp.c (cpu65_set): update timings array size in memcpy 
	  commands.

	* src/Makefile.am: include devaudio.c, and add it to genglue 
	  rule.  Add devaudio.h to headers.

	* src/cpu.h: added multiple-inclusion guards.

Fri Oct 27, 2000 : Michael Deutschmann  <michael@talamasca.ocis.net>

	* src/cpu.S (op_ADC_ind_zpage_dec,op_SBC_ind_zpage_dec):
	  Removed this unused code.

	* src/cpu.S (op_SBC_dec_65c02,op_SBC_imm_65c02,op_SBC_zpage_65c02,
		     op_SBC_zpage_x_65c02,op_SBC_abs_65c02,
		     op_SBC_abs_x_65c02,op_SBC_abs_y_65c02
		     op_SBC_ind_x_65c02,op_SBC_ind_y_65c02):
	  added new code, versions of SBC that account for the 65c02 
	  decimal mode penalty (as was done yesterday for ADC).  Also aliased
	  if COUNT_CYCLES not active.
	* src/cpu.S (op_SBC_ind_zpage): Redirect jump to op_SBC_dec_65c02 from
	  op_SBC_dec.
	* src/cpu.S (cpu65__cmos): Use new SBC routines.
	
	* src/cpu.S (DoBxx): minor fix.

	* src/cpu.S (op_BRA): new code for COUNT_CYCLES case.

Thu Oct 26, 2000 : Michael Deutschmann  <michael@talamasca.ocis.net>
	
	* src/cpu.h: Declared cycles element to cpu65_state,
	  and cpu65_timing array, conditionalized on COUNT_CYCLES.

	* src/cpu-supp.c: Added cycle-count arrays, and code to copy them 
	  to cpu65_timing, conditionalized on COUNT_CYCLES

	* src/cpu.S: Extended size of cpu65_current to match change in 
          cpu.h, and added cpu65__timing array (cond. on COUNT_CYCLES)

	* src/cpu.S (Continue): Added new version to be used in 
	  COUNT_CYCLES mode.

	* src/cpu.S (GetIndZPage_YC,GetAbs_XC,GetAbs_YC): new addressing 
	  mode macros, similar to old versions except that in 
          COUNT_CYCLES mode they account for penalty cycles on 
	  dereferences across pages.
	
	* src/cpu.S (DoBxx): new macro used to implement relative branch 
          instructions.  (has cycle-count and non-cycle-counting versions)
	* src/cpu.S (op_BCC,op_BCS,op_BEQ,op_BMI,
                     op_BNE,op_BPL,op_BVC,op_BVS): rewrite to use DoBxx macro.

	* src/cpu.S (op_ADC_abs_x,op_ADC_abs_y,op_ADC_ind_y,
		     op_AND_abs_x,op_AND_abs_y,op_AND_ind_y,
		     op_CMP_abs_x,op_CMP_abs_y,op_CMP_ind_y,
		     op_EOR_abs_x,op_EOR_abs_y,op_EOR_ind_y,
		     op_LDA_abs_x,op_LDA_abs_y,op_LDA_ind_y,
		     op_LDX_abs_y,op_LDY_abs_x,
		     op_ORA_abs_x,op_ORA_abs_y,op_ORA_ind_y,
		     op_SBC_abs_x,op_SBC_abs_y,op_SBC_ind_y):
		     op_AXS_abs_y,op_LAS_abs_y,op_LAX_abs_y,
		     op_LAX_ind_y,op_BIT_abs_x):
	  use GetIndZpage_YC,GetAbs_XC and GetAbs_YC

	* src/cpu.S (op_ADC_dec_65c02,op_ADC_imm_65c02,op_ADC_zpage_65c02,
		     op_ADC_zpage_x_65c02,op_ADC_abs_65c02,
		     op_ADC_abs_x_65c02,op_ADC_abs_y_65c02
		     op_ADC_ind_x_65c02,op_ADC_ind_y_65c02):
          new code for these operations for 65c02 use which accounts
	  for C02-specific speed penalty.  If CYCLE_COUNT is not defined, 
          then these are not assembled, but aliased to the 6502 versions.
	* src/cpu.S (op_ADC_ind_zpage): jump to op_ADC_dec_65c02 if 
          decimal mode active, not op_ADC_dec.
	
	* src/cpu.S (op_ASL_abs_x_65c02,op_DEC_abs_x_65c02,
		     op_INC_abs_x_65c02,op_LSR_abs_x_65c02,
		     op_ROL_abs_x_65c02,op_ROR_abs_x_65c02): 
	  new 65c02-specific code that accounts for a penalty cycle on 
          out-of-page accesses.  Again, if CYCLE_COUNT not defined, the 
	  6502 version is aliased in place instead.

	* src/cpu.S (op_NOP_2,op_NOP_3): Remove old multibyte NOP code
	* src/cpu.S (op_NOP_imm, op_NOP_zpage, op_NOP_zpage_x, 
		     op_NOP_abs_x, op_NOP_abs_x): Add new multibyte NOP 
          code, which realistically makes dummy accesses to memory.
          (accounting for penalty cycle on decimal operations).
	* src/cpu.S (cpu65__nmos): Change opcode table to suit new NOP regime.
	 
	* src/cpu.S: Cosmetic fix to comment tabbing on the ISB instructions.

	* src/cpu.S (cpu65__cmos): Use new _65c02 routines.

Mon Jun 6, 2000 : Michael Deutschmann  <michael@talamasca.ocis.net>

	* src/vidpriv.h: Renumbered interface and flashing colors, so 
          that palette is contigous.

Mon Jun 5, 2000 : Michael Deutschmann  <michael@talamasca.ocis.net>

	* configure.in: bump revision to 0.7.4b

	* src/vidpriv.h: Added new aliases for colors.  COLOR_IF_RED, 
          COLOR_IF_GREEN and COLOR_IF_BLUE for the three colors in the menu 
          screens, and COLOR_WHITE, COLOR_BLUE, COLOR_ORANGE, COLOR_GREEN and
          COLOR_PURPLE for the hires shades.
	* src/vidsup.c (video_loadfont,c_initialize_hires_values,
          video_loadfont_int): Use new color names.  Also updated 
          initailization of video__even_colors and video__odd_colors.

	* src/xvideo.c (c_initialize_colors): removed redundant setting 
          of COLOR_LIGHT_WHITE.

	* src/vidpriv.h: Removed old dark/medium/light series of colors.  
          Few were actually used, and those that are have been given new 
          names.

	* src/vidpriv.h: Added defines for the dhires colors.  (Some of 
          these have same names as the colors just removed.)  The 
          hires-specific defines have been removed, as some of these names 
          take their place.  So, hires is now shares the palette with dhires.

	* src/display.S (CalculateInterpColor): correct dependence on exact 
          color values.  Now uses COLOR_ defines.

	* src/vidsup.c: add new table video__lores.
	* src/vidpriv.h: add declaration for video__lores.
	* src/display.S (plot_block0): use video__lores instead of shifting 
	  actual value.  This allows lores to share dhires palette.
	
	* src/svideo.c (c_initialize_colors): removed colors that are no 
          longer used.  Also use symbolic names for the colors.

	* src/xvideo.c (c_initialize_colors): replaced color-setting code 
          with new code derived from svideo.c
	* src/xvideo.c (setcolor_helper): helper function added to 
          facilitate above code.

	* src/display.S (DynamicCalculateColor): More color-value depedence 
	  fixes.


Sun Mar 26, 2000 : Michael Deutschmann  <michael@talamasca.ocis.net>
	
	* src/joystick.c (poll_pcjoystick): New function, containing 
          code from keys.c. 
	* src/keys.h: Add declarations for joy_x, joy_y, joybutton0,
          joybutton1, joybutton2. Add prototype for poll_pcjoystick.
	* src/keys.c (c_periodic_update): Replaced real-joystick code with 
          callout to poll_pcjoystick()

	* src/keys.c (load_bindings): Corrected incorrect fprintf use in 
	  error handling.

	* src/keys.c: Removed include of <linux/joystick.h>, and 
	* src/keys.c (c_read_raw_char): Remove references to above.
          variables x_val and y_val.

	* src/keys.h: Removed declarations of joystick.c variables
	* src/joystick.c: Made all variables static.

	* src/keys.h: Removed SCODE_* defines

	* src/keys.h: comment update

	* src/keys.c (c_read_raw_char): Remove references to above.
	* src/debugger.c: Removed unneccesary "#ifdef DEBUGGER"

	* src/keys.c (enter_debugger): Moved...
	* src/debugger.c (enter_debugger): ...to here

	* src/keys.c: removed declaration of c_do_debugging.

	* src/keys.c: removed declaration of user, priviledged.

	* src/debugger.c: Add include of <sys/time.h>

	* src/keys.c (keys_down): made non-static
	
	* src/keys.c (key_register): new variable.
	* src/keys.c (c_periodic_update): use key_register instead of 
          C000 memory cell.
	* src/memory.S (read_keyboard, read_keyboard_strobe): match 
	  keys.c change.

	* src/keys.h: add declaration of key_register, keys_down.
	* src/keys.h: allocate keys_down bits for seperate real joystick 
          buttons and capslock
	* src/joystick.c: Use keys_down to transmit button information. 
          (old code also there for now.)

	* src/keys.c (joy_button0, joy_button1, joy_button2): Removed.
	* src/keys.c (c_read_raw_char): Remove references to above.
	* src/joystick.c (poll_pcjoystick): Remove references to above.

	* src/keys.c (caps_lock): removed
	* src/keys.c (c_periodic_update,c_read_raw_char): replace 
          caps_lock references with BLock bit in keys_down
	
	* src/misc.c (reinitialize): initialize keys_down

	* src/keys.c (c_periodic_update): disable recenter when not in 
          linear-keyboard joystick mode.  Allow diagonal joystick movement.
	  Implement digital keyboard joystick.

	* src/prefs.c (joy_input_table): Enable digital-joystick setting 
	  in configuration file.

	* src/joystick.c (c_calculate_joystick_parms): Calculate 
          half_joy_range here.
	* src/prefs.c (load_settings): Collected joystick-normalization 
          in one place.  In passing, removed references to half_joy_range.
	* src/interface.c (c_interface_parameters): removed reference to
	  half_joy_range.

	* src/prefs.c (half_joy_range): Moved...
	* src/joystick.c (half_joy_range): ...here, and made static.
	* src/prefs.h: removed declaration of half_joy_range.

	* src/Makefile.am: Distribute vidpriv.h

	* data : new directory

	* data/plus.key, data/keymap.key: new files, required by new 
          keymap implementation.

	* .apple2: moved/renamed...
	* data/sample.apple2: ...to here.

	* data/Makefile.am: new file.

	* data/sample.apple2: increased sample speed setting, to match 
          change in 0.7.3i.

	* Makefile.am: Add data to SUBDIRS. no longer distribute .apple2

	* configure.in: Add data/Makefile to AC_OUTPUT

Sat Mar 25, 2000 : Michael Deutschmann  <michael@talamasca.ocis.net>
	
	* src/video.h: Added prototype for video_keycode.

	* src/keys.c (apple_ii_keymap_plain, apple_iie_keymap_ctrl,
          apple_ii_keymap_shifted, apple_iie_keymap_plain, 
          apple_iie_keymap_ctrl, apple_iie_keymap_caps, 
          apple_iie_keymap_shift_ctrl): Removed
	* src/keys.c: Added type "struct assoc", "struct keymap"
	* src/keys.c (keymap2plus, keymap2e, action_names, scancode_map,
          video_keycode, action_num, load_bindings, initialize_keymaps):
	  Added.
	* src/keys.c (c_read_raw_key): changed to use new system.
	* src/keys.h: add prototyle for initialize_keymaps
	* src/misc.c (c_initialize_firsttime): inserted callout to 
          initialize_keymaps.

	* src/keys.c (scancode_map, video_keycode): moved...
	* src/keys.c (comparer): ...and copied...
	* src/svideo.c: ...here, struct assoc also copied.

	* src/xvideo.c (video_keycode): added
	* src/xvideo.c (keysym_to_scancode): removed
	* src/xvideo.c (video_sync): call c_read_raw_char with direct 
          keycode, instead of using keysym_to_scancode.
	
	* src/xvideo.c (video_keycode): added error checking.
	* src/keys.c (load_binding,action_num): added error checking.
	
Fri Mar 24, 2000 : Michael Deutschmann  <michael@talamasca.ocis.net>

	* configure.in: bump revision to 0.7.4a.

	* Makefile.am: Distribute `README-alpha'

	* src/keys.h: renamed kF1 - kF12 symbols to reflect actions of 
          keys - unassigned function keys removed.  Also, some unused 
          symbols removed.
	* src/keys.c (c_periodic_update): match keys.h changes above.

	* src/keys.h: Add symbols for shifts, ctrls, and capslock.  
          Renumbered all symbols, and assigned bits for held-down keys.
	
	* src/keys.c: Add shift/ctrl/capslock to keymaps.

	* src/keys.c: replaced keys_pressed array with keys_down bitmask.
	* src/keys.c (c_read_raw_key): Use keys_down, not keys_pressed.	

	* src/misc.c (fopen_cat_exit): new convienience function
	* src/misc.c (c_initialize_apple_ii_memory): use fopen_cat_exit.

	* src/misc.h: Add prototype for fopen_cat_exit.

	* src/disk.c (disk_install): use fopen_cat_exit

	* src/video.h: Moved private declarations...
 	* src/vidpriv.h: ...to this new file
	* src/svideo.c, src/xvideo.c, src/vidsup.c, src/display.S:
 	  include vidpriv.h.

	* src/misc.h: Include <stdio.h>

Thu Mar 23, 2000 : Michael Deutschmann  <michael@talamasca.ocis.net>

	* configure.in: set revision to 0.7.4, final release

Thu Mar 2, 2000 : Michael Deutschmann  <michael@talamasca.ocis.net>

	* src/svideo.c (c_initialize_colors): Minor comment fix

	* src/xvideo.c (getshm): Fix handling of shmat() failure.  (It 
          returns -1, not 0)

	* src/xvideo.c (getshm): When probing for preexisting shared 
          memory, use size of 0.

Fri Feb 18, 2000 : Michael Deutschmann  <michael@talamasca.ocis.net>

	* configure.in: bump revision to 0.7.3q

	* src/memory.S (iie_altzp_main,iie_altzp_aux): Fix handling
	  of language-card-off case. 

	* src/svideo.c (c_initialize_colors): Reset lores colors to match 
          dhires colors.
	* src/xvideo.c (c_initialize_colors): Follow svideo change.

	* src/memory.S (iie_altzp_aux): Removed redundant ret instruction

	* src/memory.S (lc_c083): fix handling of SS_LCSEC and SS_LCWRT.

Fri Feb 4, 2000 : Michael Deutschmann  <michael@talamasca.ocis.net>

	* src/svideo.c (c_initialize_colors): Correct arguments to 
          vga_setpallete to be in proper range. Swap light-gray and 
          dark-gray to match Apple documentation.
	
	* src/xvideo.c (c_initialize_colors): Synchronize colors with svideo.S

	* src/debugger.c: Make "opcodes" pointer-to-const.
	* src/debug.h: reflect above.

Thu Feb 3, 2000 : Michael Deutschmann  <michael@talamasca.ocis.net>

	* src/memory.S (iie_ramwrt_aux,iie_ramwrt_main): minor comment fix

	* src/memory.S (iie_ramwrt_aux): fix erroneus handling of 
	  80store/hires

	* src/cpu.S (Continue): move ZeroOp to after exception branch.

	* src/cpu.S (ReplaceState): correctly restore stack pointer in 
	  ALTZP mode.

Wed Feb 2, 2000 : Michael Deutschmann  <michael@talamasca.ocis.net>

	* src/memory.S (iie_c3rom_peripheral, iie_c3rom_internal, 
          iie_check_c3rom): Invert sense of SS_C3ROM, to match rest of code.
 
Tue Feb 1, 2000 : Michael Deutschmann  <michael@talamasca.ocis.net>

	* Updated copyright headers on all source files.

	* src/debugger.c (disasm):  Removed printf (was left in from 
          debugging the debugger.)

Mon Jan 31, 2000 : Michael Deutschmann  <michael@talamasca.ocis.net>

	* configure.in: bump revision to 0.7.3p

	* Makefile.am: no longer distribute README-alpha

	* src/xvideo.c (video_init):  Gracefully exit if XCreateImage or 
          XShmCreateImage fails.

	* src/compact.c (pre_compact, compact):  Handle mkstemp and/or 
	  mmap failure.

	* src/cpu.h: documentation update. (comment said cpu65__signal still 
          used by other modules, not true anymore.)

Mon Nov 1, 1999 : Michael Deutschmann  <michael@talamasca.wkpowerlink.com>

	* src/prefs.c (color_table): match `INTERP' to "interpolated",
	  not "color"

	* src/display.S (video__write_even0_mixed,video__write_odd0_mixed):
	  added missing branch.

Fri Oct 29, 1999 : Tom Lear  <tom@trap.mtview.ca.us>

	* configure.in: bump revision to 0.7.3o

	* Removed two extra memset calls from the joystick code
	  - src/joystick.c: c_calibrate_joystick

	* Added bounds checking on temp, system_path, & disk_path - this
	  blocks several buffer overflows
	  - src/debugger.c: bload
	  - src/disk.c: disk_install
	  - src/interface.c: c_interface_disk_select, 
	        c_interface_select_diskette, c_interface_parameters
	  - src/misc.c: c_initialize_apple_ii_memory
	  - src/mics.h: declaration of temp
	  - src/prefs.c: declaration of {system,disk}_path, load_settings
	  - src/prefs.h: declaration of {system,disk}_path

	* Fixed problem with giving up group permissions
	  - src/xvideo.c: video_init

Sat Oct 28, 1999 : Michael Deutschmann  <michael@talamasca.wkpowerlink.com>

	* configure.in: bump revision to 0.7.3n

	* src/Makefile.am: Distribute prefs.h

Mon Aug 23, 1999 : Michael Deutschmann  <michael@talamasca.wkpowerlink.com>

	* src/misc.h: correct declaration of glyph arrays to be constant

	* src/opcodes.c: Made all items constant
        * src/debugger.h: update declarations

Sun Aug 22, 1999 : Michael Deutschmann  <michael@talamasca.wkpowerlink.com>
	
	* configure.in: bump revision to 0.7.3m

	* src/prefs.c: made `clean_string' static

	* src/prefs.c: made match tables constant

	* src/prefs.h: new file, contains all declarations for configurable
          parameters.
	* src/prefs.c: added in definitions of above

        * src/misc.h: eliminated sound_mode, color_mode, apple_mode, and 
          system_path, and definitions of their values, since they are
          now in prefs.c/prefs.h.  Also removed prototypes for 
          load_settings and save_settings.
        * src/keys.h: eliminated joy_mode, joy_step, joy_center_x, 
          joy_center_y, joy_range, half_joy_range, js_center_x,
          js_center_y, js_timelimit, js_max_x, js_max_y, js_min_x, 
          js_min_y & definitions of joy_mode
          values for same reason.
	* src/interface.h: eliminated disk_path.

	* src/joystick.c: eliminated definitions of js_center_x, 
          js_center_y, js_max_x, js_max_y, js_min_x, js_min_y, js_timelimit.

	* src/interface.c, src/keys.c, src/misc.c, src/vidsup.c, 
          src/disk.c, src/debugger.c, src/joystick.c, src/prefs.c: 
          include prefs.h.

	* src/debugger.c (c_do_debugging): don't reset sound hooks on exit.


Sat Aug 14, 1999 : Michael Deutschmann  <michael@talamasca.wkpowerlink.com>

	* src/interface.c (c_interface_keyboard_layout): applied
          Culliney's patch to text.  Button numbering is changed.

Thu Aug 12, 1999 : Michael Deutschmann  <michael@talamasca.wkpowerlink.com>

	* src/misc.c (c_set_altchar):  Bug-fix - lowercase inverse chars
	  were shown as normal.

Wed Aug 11, 1999 : Michael Deutschmann  <michael@talamasca.wkpowerlink.com>

	* src/font.txt: reorganized. Now includes interface box-drawing chars.
	* src/genfont.c: changes to font-file format - now allows 
          multiple arrays.
	* src/misc.h: 
          Replace "char_rom" declaration with "lcase_glyphs", "ucase_glyphs",
          "mousetext_glyphs" and "interface_glyphs", which are now in font.c
	* src/misc.c (c_initialize_font,c_set_primary_char,c_set_altchar):
	  Use new font arrangement.
	* src/interface.c (c_load_interface_font): use new font arrangement.

Tue Aug 10, 1999 : Michael Deutschmann  <michael@talamasca.wkpowerlink.com>
	
	* src/vidsup.c (video_loadfont): add new argument "mode" 	
	* src/video.h: revise prototype and documentation.
	* src/misc.c: revise callers.

Sun Aug 8, 1999 : Michael Deutschmann  <michael@talamasca.wkpowerlink.com>

	* src/gluepro.h, src/cpu.S, src/display.S: correct assembler 
          errors revealed by new version of binutils.

	* src/debug.h, src/debug.l-cpp, src/debugger.c: Define opcodes as 
          "*opcodes", not brain-damaged "*opcodes[256]".  Also changed 
          references.

	* src/debugger.c (get_current_rambank): correct typo.

	* src/opcodes.c: completely new (incompatible) table format, with
          redundant data removed.
	* src/debug.h: changed declarations of opcodes.c items.
	* src/debugger.c (disasm): use new opcodes table
	* src/debug.l-cpp: use new opcodes table


Sat Aug 7, 1999 : Michael Deutschmann  <michael@talamasca.wkpowerlink.com>

	* configure.in: bump revision to 0.7.3l

	* src/prefs.l-cpp: removed
	* src/misc.h: removed declarations of prefs.l-cpp items.
	* src/misc.h: removed c_system_defaults and c_save_settings - 
          equivalent functions are now in prefs.c
	* src/prefs.c: new file.
	* src/Makefile.am: reflect above

	* src/misc.h: replace prototype for c_save_settings with
	  prototypes for load_settings and save_settings. 
	* src/misc.c (main): call load_settings, not c_system_defaults.
	* src/misc.c (main): don't use lowercase_string.
	
	* src/interface.c (c_interface_parameters): 
          call save_settings, not c_save_settings.
	* src/interface.c (pad_string): added as a static function, replacing 
          reference to old prefs.l-cpp.
	
	* src/keys.h: include joystick.c declarations
	* src/misc.c, src/interface.c: remove declarations now in keys.h

Fri Jun 23, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>
	
	* src/xvideo.c (keysym_to_scancode): add support for Break key.

Sat Jul 16, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/keys.c (c_periodic_update) : fix keys so that "next_key" is 
          reset before menu actions are executed.

	* src/keys.c: rebind PrintScreen and Pause keys.

Thu Jul 7, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/memory.S: use base_stackzp rather than zp_offset. Remove 
	  iie_read_ram_zpage_and_stack and iie_write_ram_zpage_and_stack.
	* src/misc.c: use base_stackzp rather than zp_offset. add glue 
          functions to replace ones removed from memory.S
	* src/misc.h: declare base_stackzp, remove zp_offset.	

	* src/memory.S (lc functions,altzp): set base_[de]000_{rd|wrt}, add 
          iie_versions.  Remove lc-area accessor functions and lc_offset
	* src/misc.c: implement lc-area accessors with glue system. Initialize
	  lc base variables, not lc_offset. No longer use seperate 
          accessors for iie.  Use seperate lc_c08x hooks for iie.
	* src/misc.h: declare lc base variables, remove lc_offset.  Also 
	  change prototypes to reflect added/removed function.

	* src/gluepro.h: bug fixes for GLUE_BANK_MAYBEWRITE
	 
	* src/misc.h: remove iie_read_slot6 prototype, which was removed 
	  earlier.

	* src/disk.c (c_write_normal_6): remove references to wr_trk_6 
          and wr_sec_6. (they weren't used)
	
	* src/disk.c (c_read_normal_6, c_write_normal_6): replace references
          to old_value_6 with old_value, a stack variable.

	* src/disk.c: removed old_value_6, wr_trk_6, wr_sec_6

Wed Jul 7, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* configure.in: bump revision to 0.7.3k

	* src/misc.c: use glue system to generate read_ram_default, 
          write_ram_default.
	* src/memory.S: remove manual definitions of these hooks.

	* src/memory.S: placed SN() around declaration of softswitches

	* src/memory.S: corrected C3ROM/CXROM softswitches.  Also 
          converted Cx00 hooks to use bases rather than offsets. 
	* src/memory.S: removed iie_read_c3rom, iie_read_cxrom
	* src/misc.c: replace with glue system
	* src/misc.h: added base_c3rom,base_cxrom; removed offset_c3rom, 
	  offset_cxrom

	* src/genglue: modified to include all '#if' directives, etc. 
	  from files. This makes glue.S ugly, but it's needed to so that 
          GLUE_ lines will respect conditionals.

	* src/display.S: removed unused macro offset_RAMRD_RAMWRT

	* src/memory.S: use bases, not offsets, for normal, text0, and hires0
	  memory. Remove iie_read_ram_default, iie_write_ram_default, 
          iie_read_ram_text0, iie_write_screen_hole_text0, iie_read_ram_hires0,
	  iie_write_screen_hole_hires0
	* src/misc.c: replace functions with glue, use bases not offsets
	* src/display.S: use bases, not offsets.
	* src/misc.h: remove offset declarations, add base declarations

Tue Jul 6, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/disk.h: replace many _6 definitions with a single structure,
          "disk6".  Also includes some former static definitions from disk.c
	* src/disk.c, src/debugger.c, src/interface.c: follow through

	* src/display.S (video__write_odd1_mixed): bug fix -
          check SS_TEXT|SS_MIXED, not SS_TEXT|SS_HIRES.

	* src/memory.S (iie_80store_off): rewrote to properly set 
          SS_TEXTWRT/SS_TEXTRD/SS_HGRWRT/SS_HGRRD. Removed 
          offset_RAMRD_RAMWRT macro

Mon Jul 5, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>
	
	* src/disk.c (disk_write_latch): bug fix -- disk_byte_6 not set.

	* configure.in: bump revision to 0.7.3j
	
	* src/memory.S: bug fix - typo in read_switch_secondary_page

	* src/display.S: remove "updating_screen" variable -- instead 
          temporarily clear some softswitches, restoring them from stack at
          end.

	* src/display.S: remove "iie_mixed_lores0" and "iie_mixed_lores1" 
          -- they were identical to "iie_write_lores?"

	* src/display.S (iie_write_lores0, iie_write_lores1): properly 
          check if in auxillary bank

	* src/disk.c (disk_install): new function, handles insertion of 
          disk-related ROM and softswitches.
	* src/misc.c (c_initialize_apple_ii_memory): don't load slot6.rom 
          - leave it to disk.c 
	* src/misc.c (c_initialize_tables): call disk_install instead of 
          inserting softswitches manually.

Sun Jul 4, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/configure.in: bump revision to 0.7.3i

	* src/disk.c (disk_read_phase): bug fix - set phase_change when stepping tracks.

	* src/display.S: (video__write_2e_text0): bug fix - check SS_TEXT|SS_MIXED, not SS_TEXT|SS_HIRES.

Sat Jul 3, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/Makefile.am: add glue.h, gluepro.h to headers

	* src/configure.in: up default MAX_APPLE_DELAY to 1000

	* src/Makefile.am: invoke genglue from $(srcdir)/, not ./
	* src/Makefile.am: add glue.S to CLEANFILES
	* src/Makefile.am: remove glue.S from distribution
	
	* src/Makefile.am: distribute genglue

Fri Jul 2, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/memory.S: bug fix: language card BANK2 was reversed.
	* src/memory.S: bug fix: CXROM check was reading C3ROM.

	* src/Makefile.am: added './' to genfont/genglue invocations.

	* src/memory.S: redraw screen on change of 80col switch if DHIRES is
          active. (formerly only TEXT and MIXED were checked).

Wed Jun 30, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>
	
	* configure.in: bump revision to 0.7.3h

	* src/genglue, src/glue.h, src/gluepro.h : new files
	* src/Makefile.am: generate and include "glue.S"

	* src/disk.c: removed c_read_byte, c_write_byte. Added (using 
          glue facility) implementations of diskio.S functions, except 
          disk_read_nop
	* src/diskio.S: removed
	* src/Makefile.am: remove diskio.S from all builds
	
	* src/misc.c: install ram_nop on C0E0/2/4/6 instead of 
          disk_read_nop, which was removed.

Tue Jun 29, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>
	
	* src/misc.h: added new "softswitches" bitmask variable and 
          supporting defines, removed old softswitch variables.
	* src/debugger.c, src/interface.c, src/misc.c, src/xvideo.c,
	  src/memory.S, src/memory.S: change to new system.
	* src/memory.S: declare "softswitches"
	* src/display.S: corrected problem where wrong offset was used in 
	  //e hires page #2.
	* src/memory.S: some corrections to language-card semantics
          (set bank on first write to C081/3/9/B, not second.
	   set bank on writes to C082/C08A)

Mon Jun 28, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/apple2.h: move virtual memory hooks... 
        * src/misc.h: ...to here  (also fixed read_character declaration)

	* src/apple2.h: move SCANSTEP,SCANWIDTH,SCANHEIGHT definitions
	* src/video.h: ... to here

	* src/video.h: added conditionals so header may be included in assembly

	* src/apple2.h: move _Flag and register definitions...
	* src/cpu.h:  ... to here

	* src/cpu.h: added conditionals so header may be included in assembly

	* src/cpu.S, src/display.S, src/memory.S: include "cpu.h"

	* src/cpu-supp.c, src/debug.l-cpp, src/debugger.c, src/disk.c, 
          src/interface.c, src/keys.c, src/misc.c, src/svideo.c, src/vidsup.c
          src/xvideo.c: do not include "apple2.h"

	* src/cpu.S, src/display.S, src/memory.S, src/diskio.S: don't 
          define __ASSEMBLY__ -- we now use __ASSEMBLER__ which is preset 
          by the compiler.

	* src/diskio.h: changed <apple2.h> to "apple2.h"

	* src/cpu.S: fixed bug re: NVZ_Flag
	
	* src/vidsup.c, src/video.h, src/display.c: introduce variable
          video__strictcolors, replacing `strict_color'.

	* src/interface.c (c_interface_parameters), src/prefs.l-cpp: 
          remove references to strict_color.
	* src/misc.h: remove strict_color.

	* src/memory.S: removed iie_read_slot6 -- identical with slotx
	* src/misc.c: revised `caller'
	
Sun Jun 27, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* configure.in: bump revision to 0.7.3g
	
	* src/apple2.h: remove FLAG() kludge - assembler code now must
	  place $ explicitly
	* src/cpu.S, src/memory.S, src/display.S: change to reflect this

	* src/cpu.S: used complement operator instead of Flag_Not definitions
	* src/apple2.h: added missing NVZ_Flag define.

	* src/cpu.S: used OR operator instead of NVZC_Flag, BX_Flag, etc.
	* src/apple2.h: removed unneeded _Flag and _Flag_Not defines


Thu Jun 24, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/xvideo.c, src/svideo.c (c_initialize_keyboard, video_init): 
          Do not attach video_shutdown to signal handlers (there are no 
          safety issues with X, and svgalib handles this itself.)

	* src/sapple.c (video_init): remove unneeded save of keyboard 
          modes/termios. Also removed static variables.

	* src/xvideo.c, src/svideo.c (video_shutdown): Remove exit() call
	* src/interface.c: removed "shouldn't get here" comment as it is no
          longer accurate

	* src/video.h: reorganized, added documentation.

	* src/misc.c: removed unused variable vmode_active

	* src/keys.c: added dummy argument to c_periodic_update, so it is 
          a correct signal handler
 	* src/keys.h: updated prototype.

Wed Jun 23, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/svideo.c (video_init): bug fix.  video__fb1 should be 
          initialized to vga_mem_page_1, not 0.

	* src/keys.c (c_periodic_update): bug fix. Clear `next_key' 
          before pausing.

	* src/keys.c (c_mygetch, c_read_raw_key) : added new variable 
          `in_mygetch' -- used to keep keyboard in //e mode in interface 
          even if ][+ selected.

	* src/xvideo.c (keycode_to_keysym): Removed "doRaw" argument, simplified.
	* src/xvideo.c (video_sync): update caller

	* src/xvideo.c (keycode_to_keysym): Return correct scancodes for 
          PgUp,Home & End. Added support for Alt keys.

	* src/keys.c: Reassigned keys. Joystick buttons are now Alt keys 
          and Ins, rather than Del, End, PgDN 

	* src/keys.h: Made kEND, kPGDN seperate from JB0 and JB1. Removed 
          kDELETE.

Tue Jun 22, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/joystick.c: Replace calls to `c_video_refresh' with `video_sync'
	
	* src/svideo.c, src/xvideo.c (c_video_refresh): remove

	* src/svideo.c, src/xvideo.c (c_flash_cursor): make static
	* src/svideo.c, src/xvideo.c (video_sync): add call to c_flash_cursor
	* src/keys.c (c_periodic_update): remove calls to c_flash_cursor, 
          and flash_cnt variable
	* src/xvideo.c (c_flash_cursor): Move function above video_sync 
          in file (avoid forward reference)

	* src/video.h: remove prototypes for c_flash_cursor and 
          c_video_refresh

	* src/svideo.c, src/xvideo.c (c_initialize_video): rename to `video_init'
	* src/misc.c: update caller
	* src/video.h: update prototype, move to new interface section

	* src/debug.l-cpp: add #include of "keys.h"

	* src/svideo.c, src/xvideo.c (c_shutdown_video): rename to 
          `video_init'
	* src/interface.c, src/debug.l-cpp: update caller
	* src/video.h: update prototype, move to new interface section

Mon Jun 21, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/keys.c: rename static variable `menu_key' to `next_key'

	* src/keys.c (c_periodic_update,c_read_raw_key): Shift all 
          actions from c_read_raw_key to c_periodic_update. 
          c_read_raw_key now only manipulates `next_key' and `key_pressed'

	* src/keys.c (c_mygetch): new implementation, doesn't require 
          keyboard_off()
	* src/svideo.c (c_mygetch, c_keyboard_off, c_keyboard_on, _mygetch): 
          remove
	* src/svideo.c (c_initialize_keyboard) incorpate code from 
          removed c_keyboard_on
	* src/xvideo.c (c_mygetch, c_keyboard_off, c_keyboard_on, 
          c_initalize_keyboard): remove, and remove calls to them

	* src/svideo.c (video_sync): Don't use keyboard_waitforupdate -- 
          it crashes -- use kludge instead. 

	* src/keys.h: Changed kLEFT,kRIGHT,kUP,kDOWN,kESC to be 
          compatible with new mygetch.
	
	* src/keys.h: corrected prototype for c_periodic_update

	* src/keys.h: removed prototype for dead c_set_rubout_key
	
	* src/keys.h: added prototype for c_mygetch

	* src/video.h: removed prototypes for c_mygetch, c_keyboard_on, 
          c_keyboard_off

Sun Jun 20, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/misc.c: add constants timer_on and timer_off
	* src/misc.h: add declarations.

	* src/svideo.c: add function video_sync()
	* src/svideo.c: remove function c_poll_keyboard_input()
	* src/svideo.c (c_initialize_keyboard,c_keyboard_on, c_keyboard_off):
	  remove all references to timer signal handler.)
	
	* src/misc.c (c_initialize_firsttime): set up timer signal hander

	* src/keys.c (c_periodic_update): add call to video_sync

	* src/keys.c (enter_debugger): add calls to disable/reenable timer 
          signal
	
        * src/video.h: added prototype for video_sync

	* src/xvideo.c (c_initialize_keyboard,c_keyboard_on, 
          c_keyboard_off, c_poll_keyboard_input):
	  remove all references to timer signal handler.)
	
        * src/xvideo.c (c_poll_keyboard_input): Rename to video_sync. 
          Remove call to c_periodic_update.


Sat Jun 19, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/Makefile.am: no longer create seperate interface-80 module.

Fri Jun 18, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>
	
	* src/vidsup.c (video_wider_int_font, video_int_font, 
          video_loadfont_int ): added
	* src/vidsup.c (c_interface_print_char40_line): copied from interface.c
	* src/vidsup.c (video_plotchar): added (adapted 
          from c_interface_print_char40)
	
	* src/video.h: added prototypes for video_plotchar and 
          video_loadfont_int

	* src/interface.c (c_load_interface_font): completely redone
	* src/interface.c (c_load_character,c_interface_textcolor): removed
	* src/interface.c (c_interface_print_char40_line,
          c_interface_print_char40, c_interface_print_char): removed 
          (some code now in vidsup.c)
	* src/interface.c (c_interface_print, c_interface_print40): 
           changed to one function `c_interface_print', added 
           colorscheme argument, and changed to use `video_plotchar'
	* src/interface.c, src/debug.c, src/joystick.c: Changed callers to 
           c_interface_print, c_interface_print_char, and 
           c_interface_textcolor to new interface.
	* src/interface.h: remove/modify prototypes for changed functions
	
	* src/interface.c: removed intermediate_font/interface_font decls.

Tue Jun 15, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* Changelog: bump revision to 0.3.7f
	
	* src/debugger.c, src/interface.c, src/memory.S, src/misc.c,
          src/svideo.c, src/video.h, src/xvideo.c: Renamed c_setscreen to
	  video_setpage.
	* src/video.h: moved video_setpage prototype to "new interface" 
          section of file (purely aesthetic). 

	* src/video.h: removed spurious prototypes of write_ram_default, 
          write_unmapped_softswitch

Sat Jun 12, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/keys.c (c_periodic_update) : removed kluge surronding debugger 
          entry, creating new function `enter_debugger'
	* src/keys.h: added prototype for `enter_debugger'
	* src/cpu.S (ex_enter): call `enter_debugger', not `c_periodic_update'
	* src/cpu.S (ex_enter): clear cpu65_signal when entering

	* src/cpu.S (do_step): rename to cpu65_step
	* src/debugger.c, src/debug.l-cpp: revise callers
	* src/cpu.h: add prototype for cpu65_step
	
	* src/cpu.S (cpu65_step, ex_enter): Handle setting DebugStepSig 
          internally
	* src/debugger.c, src/debug.l-cpp: Remove all DebugStepSig references

	* src/cpu.S (ReplaceState): explicitly clear all registers
          (preventing junk in high parts from tripping us up.)

	* src/apple2.h: removed prototypes for removed/renamed functions 
          do_step, do_write_memory, and do_write_lc.

	* src/display.S: Made "updating_screen" variable internal, and 
          managed it within video_redraw.
	* src/interface.c (c_exit_interface): Removed references to 
          updating_screen
	* src/interface.c (updating_screen): Removed declaration of 
          updating_screen.
	
	* src/interface.c (c_exit_interface): Removed second call to 
          video_redraw for nonvisual page - it was unnecessary.
 	
Fri Jun 11, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/apple2.h: removed `prototype' for read_screen_hole 
          functions, which were removed earlier.
	
	* src/apple2.h: moved `prototypes' for write hooks in 
          `display.S', and update_video_screen...
	* src/video.h: ... to here.

	* src/display.S, src/vidsup.c, src/svideo.c, src/xvideo.c,
	  src/video.h: mass rename of many functions
	* src/memory.S, src/misc.c, src/interface.c:
	  update callers of update_video_screen, now video_redraw.
	* src/interface.c (c_interface_print_char40):
          update GM1 reference to video__fb1.          

	* src/display.S: fixed up UpdateRows/UpdateHiresRows/iie_soft_write_*
          system, which was disrupted in rename.


Thu Jun 10, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>
	
	* configure.in: Bump revision to 0.7.3e
	
	* src/misc.h: removed declarations that were moved to video.h
	
        * src/misc.h: Made "char_rom" extern
	
	* src/video.h, src/vidsup.c: removed crnt_active_svga_page, oldpage, 
          oldscreen (weren't used)

	* src/vidsup.c: moved even_colors, odd_colors from svideo.c/xvideo.c
	* src/video.h: added extern declarations for above

	* src/debugger.c: copied declarations for global data from debug.c 
          to here.
	* src/debug.h: changed declarations to extern.

	* src/vidsup.c: changed expanded_font and intermediate_font to 
	  video__font and video__wider_font. 
          Also removed use of #define to rename intermediate_font in 
          40-col mode.
	* src/display.S:
	  Changed use of "expanded_font" and "intermediate_font" to two 
          defines, Font and Font80, which are connected as appropriate to 
          new variables
        * src/video.h: added declaration of video__font and video__wider_font

	* src/vidsup.c (c_initialize_tables_video): made static.


	* src/vidsup.c: routines expanded_col_* and expanded_col8_* renamed
          to video__hires_* and video_wider_hires_*.  The loop to generate
          wider_hires was also revised.
	* src/display.S: carry through change.  #defines were removed
	* src/video.h: carry through change.

	* src/display.S: replace references to text_row_offset with 
          hires_row_offset (which is just an extension of the latter
	* src/vidsup.c (text_row_offset): remove
	* src/vidsup.c (c_initialize_row_col_tables): remove 
          initialization of text_row_offset
	* src/video.h (text_row_offset): remove declaration

	* src/vidsup.c (dhires_aux_page_offset): remove, as it is unused
	* src/vidsup.c (c_initialize_row_col_tables): remove initialization
          of dhires_aux_page_offset
 	* src/video.h (dhires_aux_page_offset): remove declaration

Wed Jun 9, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>
	
        * configure.in: Bump revision to 0.7.3d
	
	* src/vidsup.c: new file
	* src/video.h: added prototype for video_loadfont
	* src/Makefile.am: added vidsup.c for apple2 (not complete for xapple)
		
	* src/misc.c (c_set_primary_char): now conditionalized for APPLE_IIE
        * src/misc.c (c_initialize_font): no longer nulls 0xff char in 
          ][+ mode
	* src/misc.c (c_set_primary_char,c_set_altchar,c_initialize_font):
          rewritten to use video_loadfont.
	* src/misc.c: intermediate_font decl/define removed.

        * src/vidsup.c (video_line_offset,dhires_colors1,dhires_colors2):
	     moved from misc.c
	* src/vidsup.c (c_initialize_dhires_values,
 			c_initialize_hires_values,
	                c_initialize_row_col_tables):
	     moved from misc.c , prototypes corrected, made static
	* src/vidsup.c (c_initialize_tables_video):
	     new function, based on c_initalize_tables from misc.c
	* src/vidsup.c (video_set): 
	     new function, based on c_initalize_vm from misc.c
	* src/misc.c: removed things to appear in vidsup.c
	* src/misc.c (c_initalize_table):
 	     removed video-memory references, replaced with call to 
             video_set()
	* src/misc.c: (c_initalize_vm):
	     removed calls to video-related stuff

	* src/misc.h:
             removed decl of c_initialize_hires_values
	     removed decl of expanded_font

	* src/interface.c (c_initialize_parameters):
             replaced call to c_initialize_hires_values with video_set.

	* src/vidsup.c (text_row_offset,
           text_page_cols,hires_row_offset,hires_col_offset,
           dhires_aux_page_offset) : copied from misc.h
	* src/vidsup.c (expanded_col*, dhires_colors?, crnt_*_svga_page,
          oldpage, oldscreen): copied from video.h

	* src/video.h (text_row_offset,
           text_page_cols,hires_row_offset,hires_col_offset,
           dhires_aux_page_offset) : moved from misc.h
	  <actually wasn't removed from misc.h until 0.3.7e>

	* src/video.h: converted all declarations to extern

	* src/video.h: added prototype for video_set.

	* src/display.S: (iie_read_screen_hole_*): removed (identical to 
          iie_read_ram_*)
	* src/misc.S (c_initialize_table): changed to reflect above

	* src/display.S: (iie_read_*, iie_write_screen_hole_*): moved to 
	  memory.S

	* src/vidsup.c (c_initialize_table_video): set of read 
          functions removed.

	* src/memory.S, src/display.S: Corrected title in banner
	* src/Makefile.am: Removed misc-80.o, added vidsup.o to xapple2 builds

Sun Jun 7, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>
	
	* src/cpu.S, src/debugger.c : Removed debug_* variables, everything
	is done to cpu65_current and cpu65_debug.
  	* src/cpu.h: revised/renamed cpu65_current and cpu65_debug

	* src/cpu.S, src/debugger.c : elided do_write_lc routine

	* src/apple2.h, src/*.S: renamed SYMBOL_NAME and ENTRY to SN and E

	* src/cpu.S, src/debugger.c : Watchpoint system changed. 

	* src/cpu.S, src/cpu.h:  new function cpu65_direct_write
	* src/debugger.c: use it instead of do_memory_write
	* src/cpu.S: removed do_memory_write

	* src/debug.h, src/debugger.c, src/misc.c: removed watch_* and 
          debug_scratch

	* src/Makefile.am: added "cpu.h" to noinst_HEADERS

	* src/misc.c (reinitialize): New function
	* src/misc.c (c_initialize): Call reinitialize rather than repeat it
	* src/misc.c (main): stuff moved out of loop into above functions.

Sat Jun 6, 1999

	* Changed interface to CPU subsystem:
	* src/cpu-supp.c, src/cpu.h: added files
	* src/compact.c, src/cpu.S, src/debug.l-cpp, src/debugger.c, 
          src/interface.c, src/keys.c: change to new interface.

	* src/apple2.h, src/cpu.h: Removed declarations for things now in cpu.h
          (under different names)
	
        * src/misc.c (main): initialized watch_addrs to -2, not -1.

	* configure.in: Bump revision to 0.3.7c

Fri Feb 26, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* acinclude.m4: created, with macro A2_ASM_UNDERSCORES
	* configure.in: Use this macro.

 	* src/apple2.h: added definitions to replace <linux/linkage.h>
	* src/cpu.S, src/memory.S, src/display.S, src/diskio.S: 
	  Remove <linux/linkage.h>

	* src/svideo.c: Replace <linux/kd.h> with <sys/kd.h>

	* src/cpu.S (cpu65x02): Removed cruft, added proper save of registers
	* src/cpu.S (ex_reboot): Restore registers before returning to program
	* src/cpu.S (ex_reset): Instated label (no code change) to 
			non-debugger handler so cpu65x02 may branch to it.
	* src/misc.c (main): Removed "exception_flag = ResetSig" lines, made
                         unnecessary by above.

Wed Feb 24, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/compact.c: New file, manipulates VM on memory table
	* src/misc.h: specified aggressive alignment on table_memory
        * src/misc.c: Inserted hooks to compact.c

	* src/configure.in: Inserted AC_FUNC_MMAP
 	* src/compact.c: Supply dummy functions if mmap() not available.

Thu Feb 11, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/misc.h: Changed memory table so that read and write tables
 	  are interleaved.
	* src/misc.c, src/cpu.S, src/debugger.S: Revise to use new tables

	* src/cpu.S: Fixed exception handler. (jz ex_reboot, not reboot)

Mon Feb 8, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/cpu.S: Optimized addressing-mode macros

Sat Feb 6, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>
	
	* Begun version 0.7.3b
	
	* src/cpu.S: Removed exception-handling stuff from "Continue" 
		     macro, placed it in a subroutine (exception)
	
	* src/cpu.S: Optimized GetFromPC_B and GetFromPC_W
	* src/cpu.S: compensated in exception handler for fact that
		     GetFromPC_B no longer zeros %ah.

	* src/cpu.S: Optimized GetFromEA_W and GetFromMem_W
	
	* src/cpu.S: Made ADC and SBC use single decimal versions instead
		     of one for each addressing mode.

Thu Feb 4, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>
		
	* src/cpu.S: Corrected BRK, RTI, PLP, PHP

	* src/cpu.S: Removed "65c02" versions of BRK, RTI, CLI.

	* src/memory.S, src/display.S: New files, split from (and 	
		replacing) apple2.S
	* src/Makefile.am: Reflect above change.


Tue Feb 2, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/cpu.S: optimized ASL, ROL, ROR, LAN, LOR, SBC, DCP, AXM, ISB

	* src/cpu.S: Globally replaced many uses of bt with 
		     testb, which is shorter and faster.
		
Mon Feb 1, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/apple2.h: Comment update

	* src/cpu.S: Corrected TSB, TRB
	* src/cpu.S: Removed FlagNV

	* src/cpu.S: Optimized FlagNVZC
		(486 cycle count is the same, but code is more compact)
	
	* src/cpu.S: Optimized BIT

Sun Jan 31, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>
	
	* Makefile.am: Distribute `README-alpha'
	
	* src/cpu.S: Optimized ROL, ROR, ANA and LAN instructions
	
	* src/cpu.S: Removed read_memory,read_memory_word,write_memory. 
		     Added more macros for accessing memory, changed code
		     to use them.
		     In a few places, debugger hooks are no longer set, 
		     but they weren't necessary (I think)

Wed Jan 27, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* Begun Version 0.7.3a

	* src/video.h: removed c_setpage and vmode_active 
			, replaced GM with GM1 and GM2
	* src/svideo.c: removed c_setpage
	* src/svideo.c (c_setscreen): rewritten
	* src/xvideo.c: removed c_setpage
	* src/xvideo.c (c_setscreen): rewritten
	* src/xvideo.c (c_initialize_video): added code to preset buffer
			pointers
	* src/apple2.S: removed setpage, and references to c_setpage and 
			vmode_active
	* src/apple2.S: (PlotTextPagePre,CalcHiresGM,PlotDHires,PlotByte,
                         Plot80Character)
		       inserted extra GM arg to select GM1 or GM2.
			updated callers
	* src/debugger.c,src/interface.c,src/misc.c: 
			removed references to c_setpage
	* src/interface.c: changed GM to GM1
	* src/misc.c: removed references to vmode_active.

 	* src/video.h, src/svideo.c, src/xvideo.c:
		Removed c_clear_video - now integrated into 
		c_initialize_video
	* src/misc.c:
		Removed reference to c_clear_video

Sun Jan 24, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>
	
	* src/Makefile.am: Distribute "ASM" file.

Fri Jan 22, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* Begun Version 0.7.3	

	* src/Makefile.am: Added warning about genfont and cross compilation.

	* src/Makefile.am: Added dist-hook hack.

	* Makefile.am: Renamed `apple2.lsm' to `LSM'

	* src/Makefile.am: Removed -80.o files from BUILT_SOURCES - it 
          wasn't needed.

	* disks/Makefile.am: Added several more files to distribute

Thu Jan 7, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/*.[Sch]: Replaced copyright banners on all files.

Wed Jan 6, 1999 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/Makefile.am: add debug.c, prefs.c to CLEANFILES
	  (they depend on configuration)

	* src/opcodes.c: new file, derived from 6502.h,65c02.h,undocumented.h
	* src/debug.h: added definitions for opcodes.c
	* src/debugger.c: use opcodes.c rather than including headers
	* src/Makefile.am: add opcodes.c to extra-source-file lists
	* src/ChangeLog: add opcodes.o to @DEBUGGER_O@ when debugging
	    is enabled.

	* src/Makefile.am: fixed xapple_80col_DEPENDENCIES

	* src/cpu.S: new file, derived from 
		6502.h,65c02.h,undocumented.h,defs.h,apple2.S
	* src/apple2.h, src/misc.c: Changed method of reassigning opcode table
	* src/apple2.S: removed code now duplicated in cpu.S
	* src/apple2.S: inserted most of defs.h
	* src/6502.h,src/65c02.h,src/undocumented.h,src/defs.h: removed

	* src/cpu.S (cpu65x02): removed call to set_page
	* src/misc.c: moved some initialization commands to compensate. 

	* src/configure.in,src/Makefile.am: added code so that svgalib 
          version can be compiled without X, and vice versa.

	* src/interface.c(c_interface_parameters): don't mess with the 
          emulator font.


1999-01-06  : <culliney@bohemia>

	* Merged old CHANGES stuff into this file.  Reformatted the
	  comments, but the content remains the same.

	(Michael: Revision 0.7.2 begins here)

Mon Dec 21, 1998 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* src/Makefile.am: distribute `debug.l-cpp', `prefs.l-cpp' files
	
        * src/Makefile.am: specified `font.c' to be removed by make clean

Sun Dec 20, 1998 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>
	
	* src/misc.c: 
          (c_set_altchar,c_set_primary_char): added call to 
	  update_video_screen().
          (c_initialize_charset): Replaced call to c_set_primary_char with
          copy of most of its code (since update_video_screen is unsafe 
          to call here)
	  
	  (c_initialize_charset): fixed conditional so that 0xff char is 
          still removed if APPLE_IIE not defined.

	  (c_initialize_charset): Removed "if (!altchar_flag)" - it is 
	  always true here.

	* src/keys.c:
	  (c_set_rubout_key) Removed.

Fri Dec 18, 1998 : Michael Deutschmann <michael@talamasca.wkpowerlink.com>

	* Started revision 0.7.1
	
	* configure.in: set version

	* Makefile.am: distribute '.apple2'

	* src/Makefile.am: Changed filename of SVGA apple2 back to just 
	  `apple2' (from `sapple').
	
	* src/Makefile.am: Fixed bug - seperate apple2-80.o was not being
	  made.

	* src/apple2.h: comments added regarding flag bits.

	<Lotsa changes occured between 0.06 and 0.7, but they were 
         not recorded.>	

Changes in 0.06 (Aug 98) : Aaron Culliney <aculline@bbn.com>

	* Separated SVGAlib specific stuff into svideo.c.  Added X
	  Windows frontend support in xvideo.c.  The X frontend works
	  by doing an X(Shm)PutImage() of the emulator's framebuffer
	  around 30 times a second.  This saves us from changing the
	  internal video routines (they assume direct access to an
	  8bit framebuffer), and it's a heck of a lot faster than
	  trying to do an XPutPixels() on each change.  The X frontend
	  only currently works for 8bit displays.  Make sure you run
	  it using a mode (specified in XF86Config) that has a bit
	  depth of 8 (not 16 or greater).

	* We now build three versions of the emulator: svideo_320x200,
	  xvideo_320x200, xvideo_640x400.  The last one really isn't
	  640x400 for optimization reasons (568x384) although it
	  probably should be...  Sorry, but there's no support for
	  switching resolutions on the fly, we ifdef it in with a new
	  define "_640x400".

	* Provided 80column support for the 640x400 X version.  Now
	  you can PR#3 (running as //e) and get 80 columns.  This
	  change required a resolution of at least 560 horizontal
	  pixels (Apple //e specs).

	* Both SVGA and X versions need to be suid root (for PC
	  speaker port access and SVGA stuff).  But both versions now
	  give up root access during video initialization.  This means
	  that disk access is now done as *you* (not root) even when
	  g(un)zipping images for loading.  Before images would be
	  g(un)zipped as root.  There was something about this that
	  made me uneasy...  Now it's up to you to give the
	  appropriate user/group permissions to your disk image
	  repository.  I make no claim about the security fitness of
	  this emulator.  See the other READMEs and files for more
	  information/disclaimers.

	* Did a 180 on the disk image selection menu.  <RET> now tries
	  to open disk images as read-only, 'W' for both read-write.
	  Of course this will only work if you have the correct file
	  permissions set (see above).  I find this more convenient
	  b/c I play alot of the arcade games where you don't ever
	  save game state.

	* Removed the disk "Information" submenu.  I never use it.  Do
	  you?

Changes in 0.05 (Feb 98) : Aaron Culliney <aculline@bbn.com>

	* Added support for 65c02 instructions.  The programs that
	  I've tested which use them work just fine.

	* Added support for 128k //e EXCEPT 80 column mode, B/W
	  DHIRES mode, and MouseText character set.  The two
	  unimplemented video modes require major changes to current
	  video routines, thus a next version...  New supported images
	  are copy ii+ 9.0, diagnostics //e, marble madness, airheart,
	  legend of blacksilver, pirates!...

	* Fixed some old problems with HIRES colors being off around
	  byte edges in interpolated/color modes.  but we still give
	  you the option to use these "lazy" modes since emulation is
	  faster with them enabled...

	* You now have several new options in your .apple2 file.  I
	  suggest either copying the distributed one over your
	  existing one, or merging the changes in.

	* Fixed some potential security bugs where a user could
	  traverse into sensitive directories by using the disk
	  selection interface.  The current emulator version is not
	  guaranteed to be foolproof since it has to be installed suid
	  root for normal users to use it.  Sysadmins should take
	  extra precautions as they see fit.

	* Added and deprecated some options in the debugger interface
	  to support the new 128k //e.  see the DEBUGGER file for more
	  info.  DEBUGGER support is not default compiled in.

	* Added some extra options to the .config file that you build
	  into the emulator.  One big one: a way to set the max delay
	  count in the emulator to bring Apple ][ emulation rates down
	  to normal on high end pentiums!...  100 is the default delay
	  rate (which works just fine for low end 386-Pentium100's).

Changes in 0.04 (June 97) : Aaron Culliney <aculline@bbn.com>

	* Added PC Joystick Support.  You must have the joystick
	  kernel loadable module 0.8.0 correctly configured and
	  installed to use this feature.

	* Changed the way the emulator handles the language card
	  memory space.  We no longer patch rom/ram on lc_c08x
	  functions.  I did this because under certain conditions the
	  previous versions of the emulator would run a lot slower.
	  Now you may notice the emulator running a tad slower in
	  general (because of the range checking), but Ultima 4 and
	  Arctic Fox (formerly unplayable) should now be just fine.

	* Changed the way the .apple2 preferences file is handled. I
	  Did this mainly to support saving of PC Joystick parameters,
	  and I'd rather let flex do the dirty work of regexp
	  matching.

	* Changed the disk interface and main interface menu.  In the
	  disk interface, you can now see which disk is in the drive,
	  and with what permission <rw1> for read/write drive 1.  You
	  can eject this disk or force it to be write-protected.  In
	  the main menu screen, you have more parameters to play
	  around with (associated with the pc joystick add-on).

	* Disk image files are now opened with user privileges, not
	  root privileges, even though the program is suid root.
	  gzip'ed disks are still handled as root, but we no longer
	  call the unsecure system() to do the dirty work.  Instead we
	  fork and directly exec "/bin/gzip".

	* General bug fixes and enhancements.

Changes in 0.03: (Jan-Feb 97) : Aaron Culliney <aculline@bbn.com>

	* Fixed language card initialization bug.

	* Improved colors.  Seems that Greens and purples we're
	  switched around.  The colors are still slightly off, and
	  color interpolation seems screwy (TODO).

	* Added apple II debugger interface.  This requires flex
	  version 2.5.2.  (You can compile this into the program or
	  leave it out.)  Type F7 to get into the debugger and type a
	  '?' to see a command summary.  Check out the file DEBUGGER
	  for more info.

	* Added support for standard 232960 .nib disks.

	* Added a more intuitive interface to selecting disks.  You
	  can now traverse forward and backward in a directory
	  hierarchy with the base directory set by your .apple2 config
	  file.

	* changed keymap: shift-p = @ and shift-N = ^, just like my
	  old II+ keyboard.

Changes in 0.02: (8 Dec 1995)
-----------------------------

  * Ctrl-C will not kill the emulator with newer SVGAlib.  Please
    use SVGAlib > 1.2.9 for best results.
  
  * Rudimentory REPT key handling.  It's too fast though.
  
  * The assembler files now compiles under ELF.
  
  * Not every SVGA card can do page-flipping.  The emulator now
    checks for this and fall back to VGA if it can't.

  * Keymap has changed a bit.  Backspace and ']' is now <-, '[' is
    REPT.

  * Disk extension changed to the more common .dsk (and a2d.info to
    dsk.info).


Changes in 0.01: (9 Oct 1994)
-----------------------------

  * Standard VGA support with some performance degradation.
    (When page flipping occurs, 64K memory banks are swapped;
     hence the performance degradation.)

  * -vga flag switch added, e.g. "apple2 -vga"; forces standard
    VGA detection.

  * (Trident) TVGA8900 page flipping bug fixed.

  * File names may now contain any character codes. (The previous
    version had some problems with compressing/uncompressing file
    names with extraordinary characters.)

  * Diskette selection retains last cursor position.
