(Emacs: -*- indented-text -*-)

			     What's new?
		  Copyright (c) 1997 by Ulrich Windl

			    NEWS for 0.3.3

+ Added ``ntp.conf.PPS'' as an example configuration file for xntpd
  and PPS usage (uses ATOM driver)

+ Updated INSTALL to have numeric steps (I hope you'll get lost a bit
  harder now)

+ Modified ``hardware_pps'' to reset calibration interval when
  ``STA_PPSWANDER'' is detected. Dave Mills did not fully confirm the
  problem: ``I gotta put you on hold. It's been awhile since I last
  danced with that code and I have a couple of heavy conferences to
  survive. However, I recall the intent of the code was not
  necessarily to ignore jitter or even wander, as long as the
  calibration interval could safely increase while avoiding a slip of
  the tick, which could cause severe error. The idea is to discipline
  the frequency in a closed- loop system, not necessarily to calculate
  the exact frequency. Once the frequency has been measured and the
  interval increased to the max, it's pretty hard to kick the loop out
  of lock, unless the PPS jitter becomes much larger than the tick
  interval.''

+ Updated xntpd/ntp_refclock patch to give better status messages.

+ Changes to the serial driver have been minimized.

+ Patch has been updated for Linux-2.0.31.

+ Updated kernel patch to include architectures (alpha, m68k, mips,
  ppc, sparc), but did not test anything at all:

    - alpha, m68k, mips, sparc have no ``do_gettimeoffset'' function.

    - mips and sparc have different structure of their
      ``include/asm-<arch>'' directories; they still lack CIOGETEV

			    NEWS for 0.3.2

+ Updated patch for linux-2.0.31pre10.

+ Added new flags to adjtimex(): ``ADJ_TICKADJ'' allows to get/set the
  value of ``tickadj'' within reasonable bounds. As one of the
  reserved fill-ups has been used the size of ``struct timex'' should
  be unchanged, and binary compatibility should be fine.

+ Updated ``enable_pps.c'' to print time state and messages for state
  changes.  State changes are written in comprehensible format now.

+ Removed most of the ``patch-xntp3-5.90.4'' because it's included in
  ``xntp3-5.91''.  In fact the complete patch has been replaced by a
  different one that makes the PPS driver (ATOM) work (tested in
  xntp3-5.90.4).

+ Updated patch for ``Completely Mad Time'' (use CONFIG_M586, added
  debug statements, detect lost timer interrupts).  Descriptive text
  is in a new file ``madtime.txt'' now.  Paths in patch follow usual
  conventions.

+ Updated my own description in CREDITS.  Updated documentation files
  as suggested by users.

+ Removed `#define DEBUG_PPS_SYNC' to turn off debugging in serial.c

			    NEWS for 0.3.1

+ A new version of enable_pps.c with more consistent status reporting
  and some new options is provided.

+ Minor cosmetic changes.

+ Fixed some bugs in adjtimex():

    * STA_UNSYNC causes TIME_ERROR to be returned (as per memorandum).

    * Using ADJ_FREQUENCY automatically adds pps_freq (as per
      memorandum).

    * When not doing a plain old adjtime() the required offset is
      returned in the corresponding field now (as per memorandum).

    * The time returned by adjtimex() will include the time offset to
      improve the resolution (as per memorandum).

    * The jitter returned will be in microseconds and no longer in
      scaled microseconds (as per memorandum).

+ Changed constant ``MAXFREQ'' in <linux/timex.h> to really 200ppm.

+ Included file with patch and description for "completely mad time".

+ Include a patch to make xntpd's PPS driver work for Linux.  This
  patch is an ugly hack, but it seems to do the job until we have
  solved all the other problems.

			    NEWS for 0.3.0

+ I decided to break the single text file with everything into a more
  friendly archive, even if I'll surely exceed 20kB for the first
  time. The version number will present ``political version
  numbering'' (as opposed to ``chronological or automated version
  numbering''.  So we have `0', a version that's not yet perfect;
  `3', the third major attempt to make things better; finally we have
  `0', a release that wants testing.

+ new ioctl CIOGETEV was implemented in the hope it can be used from
  xntpd.  I used a trimmed-down version of Harald Koenig's patch
  (k-dcf.patch-1.3.58).  The time stamps are used for both, the PPS
  routine and the line discipline.

+ implementation of TIOCDCDTIMESTAMP was removed again because of the
  change to serial struct.  Furthermore the new CIOGETEV can do things
  even better (it has an event counter)

+ Much improved testing program (I hope; in fact it's almost
  completely rewritten).  User-visible changes include better error
  reporting and edge detection selectable from command line.

+ Possibly improved pulse generator including emulations for common
  errors (see BUGS).

+ CONFIG_HARD_PPS is CONFIG_PPS_SYNC now (for no very good reason)...

+ Major corrections to the kernel, especially `adjtimex':

    * All parameters are checked now.  Previously several parameters
      were unchecked.

    * It's no longer allowed to change read-only status bits, but
      still no error is returned, because it seems that's how xntpd
      expects things to work (it's easier that way).

    * A plain old `adjtime()' can be done independent of any
      STA_-settings (that's what the memorandum says about
      compatibility with existing applications)

    * Avoided some `if's by grouping checking and setting of values
      together (where it was easy ;-))

    * `adjtimex' now returns an error depending on several status bits
      (e.g. when you enable STA_PPSFREQ when there is no
      STA_PPSSIGNAL)

+ (kernel/sched.c) If the clock's maximum error reached
  NTP_PHASE_LIMIT (16 seconds as per memorandum), the clock is
  declared STA_UNSYNC, and the time state will be TIME_ERROR. The
  specification is not too clear on the latter point.

+ The CMOS clock is now updated if STA_UNSYNC is cleared (and no
  longer if time_state is not TIME_ERROR).

+ The `hardware_pps' (hardpps) routine has two parameters now, the
  timeval and the hardware counter (microtime).  Changed for no good
  reason.  Fixed a bug that required 5 good calibrations before the
  interval was increased (memorandum talks about 4).  

+ Added some comments (at various places), reformatted some lines,
  added debugging code, etc.

+ (arch/i386/kernel/time.c) The code to update the CMOS clock is
  broken!  I was unsure how to fix it, so I added a warning message if
  the code fails.  This has to be fixed soon!

+ (drivers/char/serial.c) The version of the driver has been changed
  by adding a 'a'.  In addition the option `PPS' has been defined for
  CONFIG_PPS_SYNC.  The code to print the startup message has been
  improved (a matter of taste).

	       BAD NEWS: There are no NEWS before 0.3.0