Euphoric 0.99b_aym1 (2000-08-28)

  A patch to allow Euphoric 0.99b to compile on Linux.

Euphoric 0.99b_aym2 (2000-12-30)

  First "working" version. No hires. No attributes except paper
  and ink. No keyboard. Supports only 16 BPP PseudoColor visuals
  and the masks are hard-coded.

  Had to disable Reset_6551 because it segfaults.

Euphoric 0.99b_aym3 (2000-12-31)

  - Added changelog.
  - Added VERSION.
  - Added make dist.
  - Added proper RGB masks.
  - Implemented alternate character set.

  Yields about 120 FPS on my K6-2/450

Euphoric 0.99b_aym4 (2001-01-03)

  - Replaced VERSION by parsing of oric.c.
  - Added WM size hints.
  - Added support for 32 bit TrueColor visuals.
  - Fixed 6502.S blunder (mine).
  - New target "make test".

  Still freezes.

Xeuphoric 0.99b_aym5 (2002-01-26)

  - Attributes now correctly reset at start of line.
  - Added missing includes and prototypes.

Xeuphoric 0.1.0 (2002-01-26)

  - New options --help and --version.
  - Separate VERSION file.
  - Separate doc/ and src/ directories.

Xeuphoric 0.2.0 (2002-01-27)

  - Unified 16-bit and 32-bit visual code.

Xeuphoric 0.3.0 (2002-01-28)

  - Fixed top bar in environment screen
  - Rewrote keyboard input. Cursor keys now work. Disabled the
    keypad.

Xeuphoric 0.4.0 (2002-02-02)

  - Replaced ITIMER_VIRTUAL by ITIMER_REAL so the poll rate is
    now really 50 Hz.

Xeuphoric 0.5.0 (2002-08-15)

  - Found a workaround for the lack of timing.
  - New option -A to change the audio device.
  - Stats: removed unused cycles field.
  - New binding [f12] to take a screenshot.
  - Added asterisks in various places in 6502.S, 6551.S and
    8912.S to silence assembler warnings.
  - Added missing includes in config.c.

Xeuphoric 0.6.0 (2002-08-15)

  - Man page: automatically expand date and version number.
  - Removed obsolete options -m and -q.
  - Removed obsolete Keybfr.def and keyboard.c.
  - Menus: changed the auto-repeat delay from 500 ms to 200 ms
    and removed the intermediate 5 Hz segment.
  - Silenced a bunch of compilation warnings (unused variables,
    functions and variables without a type, missing argument
    lists).

Xeuphoric 0.7.0 (2002-08-15)

  - --version prints just the version number.
  - Added missing copyright notices.
  - Fixed corrupt Jasmin ROM.
  - Removed obsolete "oricdisk" ROM (duplicate of microdisc
    ROM).
  - Added the Telestrat ROMs.
  - Given the ROM files lower case names, without trying to make
    them 8+3 compatible.
  - Config files and ROM files are now located through more
    conventional means. You don't need to set the ORIC
    environment variable (and it's been deleted). There are now
    system-wide, per-user and per-directory versions of config
    files and ROM files, and selective overriding of config
    parameters is now possible.

Xeuphoric 0.8.0 (2002-08-17)

  - configure checks for the existence of the OSS header. Now
    compiles without any modifications on platforms without OSS,
    such as FreeBSD.
  - Added support for depths other than 16/32, and visual
    classes other than TrueColor. Xeuphoric now runs in most
    common VGA modes (4/8 bpp palette and 15/16/24/32 bpp true
    colour). The only remaining unsupported mode I'm aware of is
    monochrome, because it requires a different pixmap format (1
    bpp).
  - Killed -m and -q a second time.
  - Added -O to the compilation flags.
  - Removed the "setup:" startup messages.
  - Added two colour bands to the config screen.
  - Installs as $PREFIX/bin/xeuphoric-$VERSION and makes a
    $PREFIX/bin/xeuphoric symlink pointing to it.
  - Ditto for the man page.

Xeuphoric 0.9.0 (2002-08-21)

  - New keyboard input section in the man page.

Xeuphoric 0.10.0 (2002-08-22)

  - Video emulation is now split in two parts ; rendering into a
    platform independant buffer, and converting the buffer into
    the format the platform wants (i.e. an XImage). Thus we're
    now able to tell which scan lines have changed without
    having to do the whole XImage-ification. Only the scan lines
    that have changed are rendered again, and only the portion
    of the window comprised between the first and the last
    changed scan lines is displayed again. The benefits are 1)
    keeping the complexity of the rendering code down, 2)
    avoiding unnecessary load on the X server (important for
    remote displays and unaccelerated VMware displays), 3) it's
    a stepping stone for pixel doubling.
  - Removed from the tarball .bindir, .datapath, .etcdir,
    .mandir, .rcfiles and .sharedir that are generated by
    ./configure, and PREFIX that is obsolete.

Xeuphoric 0.11.0 (2002-08-23)

  - Pixel doubling, controlled by new option -z.
  - Cosmetic changes in the configure script.

Xeuphoric 0.11.1 (2002-09-23)

  - Don't block when someone else holds /dev/dsp open.

Xeuphoric 0.12.0 (2003-07-02)

  - Bug fix in the handling of disk images. Thanks to Jede for pointing
    it out.
  - When installing, create $PREFIX/bin and $PREFIX/man/man1 if
    necessary. Thanks to Jede for reporting that bug.
  - Silenced warnings.
  - More sound tweaks (error messages include strerror(errno), correct
    fragment size/count setting).
  - Fixed a rendering bug that prevented the use of the hires character
    set in the bottom three lines if the switch to hires mode occurred
    after line 199. This is why the bottom of the screen in the
    Barbitoric demo "ducks" screen looks garbled in Xeuphoric 0.11.
    Thanks to Jede for pointing out the bug and providing a test case.
  - More error message fixes.
  - More documentation.
  - The FDC emulation works now. Thanks to Jede for the patch.
  - Makefile cleanup (use $(CC), $(CFLAGS) and $(LDFLAGS)).
  - Don't let [f4] increase the clock frequency beyond 100 MHz.  Thanks
    for Jede for pointing it out.
  - Removed -O from CFLAGS as it breaks Xeuphoric on too many compilers
    (not just the infamous GCC 2.96 but also GCC 3.0 and 3.2).
  - CLOAD "FOO" tries to read from "foo.tap", "FOO.TAP", "foo" and
    "FOO", in this order.
  - CLOAD "" tries to read from "________.tap", "________.TAP",
    "________" and "FOO", in this order.
  - CSAVE "FOO" writes "foo.tap", not "FOO".
  - CSAVE "" writes to "________.tap", not "________".
  - CSAVE: fixed the bug where the host file size stays at 0 until you
    CSAVE to another file. Thanks to "Ian" for the report.
  - Documented the details of tape emulation in the man page.
  - Messages are printed to standard error during tape I/O so that you
    know what's you going on.
  - Added a list of Oric-key-to-host-key mappings in the man page.

Xeuphoric 0.12.1 (2003-07-04)

  - Bug fix: CLOAD works on .tap files that have all-caps names.

Xeuphoric 0.13.0 (2003-07-04)

  - Implemented -z3.
  - In a momentary lapse of judgement, added support for artsd. By
    default, if compiled on a platform where the libarts development
    files are available, will try to connect to the aRts (nominee for
    worst use of caps) server and fall back on OSS. The new -S option
    can be used to force the use of either sound output method. Thanks
    to Jede for providing sample libarts code.
  - Silenced warnings.

Xeuphoric 0.14.0 (2003-07-06)

  - ./configure : do the right thing if libarts disappears.
  - New -Q option (quit on illegal instruction).

Xeuphoric 0.15.0 (2003-07-13)

  - Re-enabled optimisation. Contrary to what I claimed, the "black
    window" effect caused by compiling with -O was not due to a bug in
    GCC but to a missing volatile qualifier. It was my fault, not GCC's.

  - Allocate a ninth colour (grey) for future use in the debugger.

  - Sound quality has been improved somewhat by writing out audio even
    when there's only silence to output. The Euphoric 0.99b sound code
    used to skip writing to the audio output when the 8912 was silent.
    Thus, when sound was intermittent, the OSS buffers (frags) emptied,
    aggravating the overruns and resulting in a loud 50 Hz buzz in the
    audio output.

    A side-effect of this change is that audio recorded in a regular
    file (-A /some/file) now includes silent periods. It's debatable
    whether or not this is a good thing.

  - Added support for 1-BPP displays (no dithering, though).

  - Moved the to-do stuff from the man page to a separate TODO file.

  - Moved the definition of sound from adlib.S to dsp.c and removed
    adlib.S from the archive.

  - Implemented the blinking attribute.

Xeuphoric 0.16.0 (2003-07-29)

  - Fixed segfault at initialisation in telestrat mode (-t) by using
    ioperm(). This is only for platforms that have the ioperm() system
    call, and you need super-user privileges. If ioperm() is not
    available or fails, an error message is printed and 6551 emulation
    is disabled. Patch by Jede and Andr Majorel.

  - Commented out dead code in 6551.S.

Xeuphoric 0.16.1 (2003-07-31)

  - Removed unused file intrface.S from the distribution.

  - When SerialPort is set to the null string, don't try to open() it or
    call ioperm(), just disable 6551 emulation.

  - Unbroke the AsynchronousController parameter.

Xeuphoric 0.17.0 (2003-08-12)

  - Pressing [f5] again when the clock rate is already at nominal value
    divides the clock rate by two. The process can be repeated as long
    as you have a whole number of cycles per frame. With the current
    20,000 cycles per frame, you can go down to 1/32nd of the nominal
    speed, or 31.25 kHz.

    Pressing [f4] when the clock rate is below its nominal value resets
    the clock rate to the nominal value.

  - No more arbitrary limit in how far [f4] can increment the clock
    rate. You can now go as far as your hardware will allow, up to
    65,536 MHz.

Xeuphoric 0.18.0 (2003-08-16)

  - Use XShm if it's available. New option -X to set the XShm policy. A
    pleasant side-effect of using XShm is that it tends to alleviate the
    sound problems.

  - List the object files before the libraries so that it works with
    dumb linkers.

  - Removed the -I/usr/X11R6/include argument from the compilation
    rules. On most machines it's not needed and there's no point in
    having it there if it's not also in ./configure.

  - Arranged the options in the man page into sections.

  - Helpful message if you forget to ./configure.

Xeuphoric 0.18.1 (2003-10-09)

  - Listed the non-essential dependencies in the README file as a hint
    for packagers.

  - Bug fix: don't die with "caught signal 17" when trying to change the
    disc image in the config menu. This also fixes other latent bugs
    with respect to the handling of signals. Thanks to Jede for the
    report.

  - Included unfinished, non-functional C++ code for cycle-accurate
    emulation.

Xeuphoric 0.18.2 (2004-08-21)

  - Fixed a bug in the video emulation. In certain cases, characters at
    the bottom of the hires screen were rendered with the wrong chargen
    address. This is why the bottom of the "Mermaid" screen in the LCP
    2004 demo looks garbled in Xeuphoric 0.18.1. Thanks to Jede for
    reporting the problem and Dbug for making the most of the ULA.

  - Fabrice Francs has formally agreed to release Euphoric 0.99b under
    the terms of version 2 of the GPL. Updated the doc and inserted
    copyright notices in the files that didn't have any.

  - At his request, credited J.D. as "Jede".

/* vim: set sw=2 tw=72: */
