V 0.99q
-------
- the forthcoming IDE interface for the Oric is emulated in this version
(Huh ? what ? Hard disk for the Oric ? Yeap :-)
You will find a new configuration option in Euphoric.ini, but it will be
useless to you if you don't have an operating system that knows how to deal
with this interface and a hard disk... good hunting ! ;-)
- bugfix in the floppy disk code (it was making Euphoric crash)
- I have realized most of you don't use MS-DOS anymore (why ?-) , under
Windows you didn't have time to read the messages displayed by Euphoric when
the configuration was erroneous. Euphoric will wait now. But don't forget
Euphoric is still a MS-DOS program, even if I have added a script (setup.js)
that sets Windows for a simple use.

V 0.99p (unreleased)
-------
- this version merges the Apple disk interface of 0.99o with the more stable
0.99n release. The 6502 emulator and memory system of 0.99o has not been
transfered to this version, I will keep the old one which is reliably working
for a long time.
- bugfixes in the display code and in the RS232 code (damn'd, it is becoming
nearly impossible to access the RS232 hardware satisfactorily with newer
versions of Windows, hence the long time with no news about my TCP/IP stack :-(
- I can't remember the other updates which were introduced in 0.99o... too
much time... bummer.

V 0.99o (unreleased)
-------
- this version tried to include Microtan 65 emulation, but I have canceled it
after a long time, due to the numerous and depth changes I was obliged to
introduce, breaking every other thing in the emulator. As a consequence, the
other additions in this version (mainly a new 6502 emulator and memory system,
faster on modern Pentiums; and the Apple disk interface of the Pravetz 8D,
the bulgarian clone of the Oric) were delayed... (Sorry George). About the
Microtan 65, I have a perfectly working cycle-level emulator, and there are
two very good other emulators, so, no need to hassle...

V 0.99n
-------
- as you surely have noticed by now, this release is packaged with a Windows
installer (you can still run Euphoric under plain DOS, but you will have to
copy Euphoric files from a friend running Windows). The installation adds an
Oric directory, easily accessible through Windows' Programs menu. This gives
access to several oric computers shortcuts, so you can easily choose an Oric
configuration to run, with cassettes only or disks. If you want to start a
program from tape or disk image, there's an even faster way : just enter your
tapes or disks directory and double-click the tape/disk you want. Now, you
can still choose the oric configuration to run : double-clicking left mouse
button starts the most common configuration, but just click right button to
access a file menu, and select the configuration to run. Thus, you can start
a tape on an Oric-1 instead of the default Atmos, or boot a disk on a Telestrat
or a Jasmin controller instead of the default Microdisc controller.
- K7 and disk in-lays (cover artworks) are now displayed when you boot your 
oric with a tape or disk image. This feature adds to the Atmos'phere 8-)
You must have put a JPEG file with the same name as the tape/disk name (except
extension which is JPEG of course) into your JPEG directory. The Oric starts
after you type a key.
- enhanced emulation of PB7 (K7 output from the VIA), the older one only
allowed square wave output running with timer 1.
- many users hardly understood what hardware tape images are (those with the
.4K8 extension), and a frequent request had to do with transfering tape images
back to the real Oric. So, I have replaced .4K8 tape images with .WAV tape
images : of course, WAV files are 8 times bigger, but they are easily handled
by all sound tools. If you have .4K8 images, you need to convert them to .WAV
format with the bundled 4K8TOWAV tool, since the .4K8 format is not accepted
by Euphoric anymore. Like .TAP files, oric tapes in WAV format may be started
directly from Windows interface: click with right button and start with an
Oric-1 or Atmos. Please note Euphoric only accepts WAV files containing 4800 Hz,
8 bits mono data. If you want to record audio-CDs, you just have to convert
them to 44.1 kHz, 16-bit stereo (don't ask me to use this format, a 5-minutes
long Oric program would take 50 MBytes on your hard disk).
- with hardware tapes (WAV tapes), tape sound is now heard both when recording
or loading (ah... nostalgia 8-) Tape volume level controls have been added to
the tape recorder controls. Note that both tape sound and PSG music are heard
simultaneously: try loading Lone Raider for a great experience !
- tape and disk default paths are stored separately, this is much more convenient
for those who use both tapes and disks at once.
- improved FDC 1793 emulator, status register is now updated in real time.
- fixed PSG 8912 emulator, there was a bug with high frequency sounds (these
are beyond human ear capabilities, but this was affecting sounds coming just
after: didn't you notice that the first key-clics weren't good ?)
- changed behavior of Reset keys: F6 is now a cold reset and F7 a warm reset.
More precisely, on Oric-1/Atmos, F7 is the reset button found under the case
(it's a NMI button in fact), whereas F6 is the reset button found on Microdisc
or Jasmin disk controllers (on an Oric without disks, Euphoric adds a switch
on the Reset line). On the telestrat, F6 is the reset button found on the right
side of the case, whereas F7 has no effect (telestrat's button is really
connected to the reset line, the boot routine determines whether a cold or warm
button should be done, and it's possible to force a cold reset by simultaneously
pressing the DEL key (BackSp on the PC)).
- F8 is now a switch enabling/disabling output of the PSG registers (this
feature was introduced in release 0.99l). When starting euphoric, the output is
disabled, so that no useless silence is stored. The output format is still the
same, except that the repetition count is always at least 1. The last record
is now flushed correctly when exiting. However, this output is intended to
allow you save your favorite oric tunes, so that you can play then again with
YM players, but I believe there is a major flaw in this format, because it
does not make the difference between an unchanged register and a register which
has been rewritten with the same value... to be continued.

V 0.99m
-------
- both a simplification and an extension of keyboard modes. Now there's only
a choice between Raw mode and ASCII mode. Raw mode is default, it's more
faithful with the oric and it is configurable. The ASCII mode has been extended
too, please consult the manual in order to understand how these two modes work.
- default VGA frequency has been adjusted to be exactly 60 Hz, so that some
monitors will handle it more easily. Also, two options have been added in the
configuration file: VgaFrequency allows to select 1 of four 4 frequencies, and
ScanLines allows to select (or not) double lines.
- slight change in the tape naming behavior : .tap extension is now appended
only if the CLOAD/CSAVE name doesn't already contain an extension. Thus,
CLOAD"GOBBLER" loads GOBBLER.TAP, but CLOAD"MYPROG.COD" loads MYPROG.COD
- and another one to ease life : if no path is given in CLOAD or CSAVE, TAPES/
directory is automatically prefixed to the name. Thus, most of you will keep
all your tape images tidy in the tapes directory.
- I had broken the formatting command on Jasmin hardware, it is now hopefully
working again
- the patches which are automatically added to the roms for fast tape loading
are now less intrusive, so now FORMAT.BAS program (from FTDOS) correctly
identifies Oric-1 and Atmos (no patches are added when the hardware tape option
is used)
- this release should please developers: I'm still playing a DPTF4K game with
the debugger (Don't Press The F4 Key ;-), but it now loads a symbols file,
so that these symbols are available for use with all the commands (the SYMBOLS
file is loaded if existing and consists of an arbitrary sequence of whitespace
separated hex values/symbol pairs). Also, several modification commands have
been added, so you can now use
   A, X, Y, S, P to change A,X,Y,S,PC register values
   N, V, I, Z, C to toggle commonly used flags
   D addr to dump memory
   U addr to unassemble code
   E addr=val to enter hex values in memory
   B addr to set the breakpoint address

V 0.99l
-------
- ok, so it seems people like constraints... they want the tape and disk files
to have a well defined name extensions. Well, well... your fault, now you have
to rename all your tape images: usual tape images have to be named with a .tap
extension, virtual hardware tape images have to be named with a .4k8 extension
and disk images have to be named with a .dsk extension. Using CLOAD and CSAVE
works as before, don't add a .TAP in the instruction, it is automatically added
by the emulator. So, just type CLOAD"GOBBLER" as before, and it will the game
from the GOBBLER.TAP file.
- File selector has been changed in the environment screen: now it only
displays files having the required name extension (.dsk for disk images, .4k8
for hardware tape images). This should give smaller lists of files...
- real joysticks support added, instead of joystick emulation with keys.
- several bugs fixed in the new 6551 emulation
- improved FDC emulator (the Jasmin "Multifiches" program didn't load). Also,
thanks to Jim Polmear for sending me the dump of the Cumana eprom. The Cumana
drive is really a Microdisc clone, except the eprom is only 2 KBytes. So,
just say MicrodiscEprom=Cumana.rom in the configuration file and you have a
Cumana drive (of course, you then have to boot on a Cumana system disk, since
the Cumana eprom looks for a CUMANA.DOS file). I've noticed the Cumana system
won't boot on Euphoric 0.99k, it does on 0.99l, so this can be considered as
a nice side-effect of the latest changes 8-)
- new configuration options in euphoric.ini : DumpSound=Yes allows you
generate a dump of the PSG's registers (AY-3-8912 chip), in a file whose
file name is given with the SoundFile=... option. The 8912 chip has its
own fan-club on the net, as it was used in the Spectrum 128, the Atari ST
and several other computers. So, people like to grab the best tunes of their
respective computers and archive them in a common format, in order to play
them with a YM player. Most other computers have a raster vertical interrupt
which was used to synchronize both the display and sound generation, but the
oric games usely drive sound generation with a VIA interrupt, so euphoric
outputs the PSG registers at each Timer1 VIA interrupt. Most often, the VIA
Timer1 interrupt occurs 100 times a second, so this means a lot of data to
output in real time, along with the rest of the emulation. Therefore, I have
used my own format, which is a kind of Run Length Encoding scheme: the output
consists in a sequence of records, each record being the first 14 PSG 
registers followed by a 16-bit little-endian repeat count (0 means the PSG
registers were changed before the next Timer1 interrupt).
- preliminary debugger added. This really is a work in progress, so consider
it in early alpha stage. Additional features will be introduced in next
version (yes, Mike, there will be the support for user-symbol ;-)
For now, you can enter/quit debugger mode with F11, step instructions (F2)
or step over subroutines (F3), switch to/from oric screen (F4) (not very
stable yet), run (F5) (beware if you don't run into the breakpoint address),
set the (only one for now) breakpoint address (B xxxx), dump memory (D xxxx),
view page zero (up/down arrows) or memory dump (PgUp/PgDn)...
- disk geometry scheme #2 implemented. The geometry scheme is chosen when 
formatting, it depends whether cylinders or sides are formatted first (up
to now, only geometry scheme #1 was used, this was giving bad double sided 
disks in OricDos when formatting new disks)
- tapes can be listened to again in the environment screen, I had broken this
part when changing the synchronization scheme in 0.99j

V 0.99k
-------
- a new selectable option in the environment screen, which allows to display
an image of the oric drives. Purists won't use it, but this is quite useful
when you want to know if the oric is currently writing or reading a disk,
as virtual drives are rather noiseless... For example, Oricdos and FT-Dos
don't show any progress indicator when formatting disks. However, the LED
on the drives doesn't light during the whole spin time, neither head seek
times, it only lights during the effective reads and writes.
- an other selectable option in the environment screen, which reflects an
idea from Alexios Chouchoulas, consisting in connecting a cable between the
video and cassette ports of the oric, more precisely between the SYNC output
and the TAPE-IN input. This simple cable gives the oric a great new
capability : it allows to build new programs with superior animations, as
the animations can be synchronized with the raster display on the TV monitor
set. Of course, you can't have both the tape recorder cable and the synchro
cable plugged in at the same time, but you can plug the synchro cable once
your program is loaded (this remark is mainly intended for real oric users
and euphoric users in hardware tape emulation mode)
- a new configuration option for hardware hobbyists, giving the possibility
to insert a double size rom in the oric (32 KB), with one half active at a
time. The upper or lower half is selected thanks to a wire between the A14
address pin of the rom and the PB5 pin of the VIA, so the corresponding option
in euphoric.ini is named SelectRomWithPB5=Yes (don't forget to point the 
oric-1 or Atmos rom to a 32KB file).

V 0.99j2
--------
- just a small workaround for a nasty behavior of Windows' shell, which stops
the sound card interrupts.

V 0.99j
-------
- added the option to replace the 6502 cpu with a 65C02. This is for two 
categories of people : those who have inserted a 65C02 cpu in their real 
oric and those who want to use the current release of GCC for 65C02 
(it doesn't support the Nmos 6502 for now). By the way, if you want to 
deliver programs for the oric, please don't use 65C02's extended instruction 
set as very few people have this nice superior 65C02 in their real oric 
(remember the cpu is soldered on the motherboard...)
- oops, when switching back to 31250 Hz sampling rate in 0.99h, I only made 
half of the modifications... this is why samples sound hashed.
- changed the synchronization scheme if a SoundBlaster card is detected, 
in this case the sound interrupts drive the emulator and the timer interrupt 
is no longer used (that's good news for all those who complain their clock 
was changed after exiting euphoric, and euphoric goes hi-fi too). 
If a soundblaster card cannot be used, the timer is used as before.
- display some text at initialization so that people who experiment with 
oric configurations can see if they get what they want.


V 0.99i
-------
- no linux version this time... it will be easier to release a final version
if I can focus on one host only (also, the future of games is not clear under
Linux. One day SVGAlib is stopped, the other day a SVGAlib Quake version appears,
and XFree86/DGA seems very unstable... let's see)
- a new ACIA 6551 emulator I'm proud of ! It implements all features of the
real chip, even some undocumented ones 8-) The previous emulator had some
concurrency problems (that's a major difficulty with such a real-time program
emulating several concurrent chips).
- negative edge detection on the K7 port added.
- Telestrat's mouse emulation
- lightpen add-on emulation
- much stronger DPMI code: as a result, Euphoric now runs under NT 4.0. There
are still some strange things, and physical access to some hardware ports is
not granted under NT, so sound does not work yet, and the emulator is
synchronized to a 0.7 MHz oric...
- an up-to-date manual in HTML format ! (only in French for now...)

V 0.99h
-------
- added AltGr as a new key in oric keyboard matrix, so Sedoric doesn't
interfere when trapping the FUNCT key.
- updated international Basic roms, and national ASCII sets are now provided
as files to CLOAD.
- i'm not authorized to number a real french Telemon as 2.5, so let's call
it 2.4french.
- IJK joystick emulation added. 
- Reset the PSG envelop timer as soon as a new envelop period is written,
this was the reason for some strange key clicks.
- switched back to 31250 Hz digital sound for Dos version. This is far better
for SoundBlaster cards, and sound should be (quite ?) perfect now !

V 0.99g
-------
- I finally removed the programmable keyboard, it aimed to be a better
keyboard than the oric, without any change in oric firmware, but it became
very complicated and a lot of gamers didn't understand two keys cannot be
held at the same time. So, direct keyboard only: it is even closer to the
original, with grey keys on the left having the same functions as on the
oric (i.e Tab is an oric ESC, Caps is an oric CTRL). For convenience,
grey keys at the bottom have the expected behavior (Ctrl is Ctrl, Alt is
oric's FUNCT key)
- international users, don't cry... I've some news for you: with some black
magic (who will have the curiosity and go for a sight ?-), I inserted a third
key table in oric's rom, so that the AltGr key (FUNCT) has the expected behavior
And you have your international ascii set defined, using a word processor won't
give any surprise with a printer with the same national charset (WYSIWYG on the
oric, er... quite 8-) For those who do have a non-US keyboard but don't want
their national ASCII set, you just have to load the normal charset and you will
find the brackets, etc. at the expected place.
These modified roms are not cheating: you can use them on a real oric and redraw
the keys. However, the only bad thing has to do with the additional key just
right to the left SHIFT...  this one has been added in the virtual oric's
keyboard matrix (btw, when the emulator can't be exactly the same as the real
thing, let's try to make an oric be the same as the virtual one: i've just added
that key in a real oric keyboard to get a real french keyboard 8-)
Just a final note: Sedoric uses the FUNCT key to provide shortcuts, you will
need to type QUIT in order to get the alternate keys. Telestrat users get the
biggest part of the cake with an update of Telemon: now QWERTY and AZERTY really
do what they mean, and ACCENT too. 
- I hope you will like it folks, I spent a big amount of time for the new
oric routines and for the charsets... 8-)

V 0.99f
-------
- oops, euphoric.ini was not up-to-date in previous release
- oops, I had introduced a floating point read for the clock frequency, and
people without fpu were not able to run euphoric any more... sorry guys
- oops, sound line was not active in environment screen (F2 was)
- oops, a typo in Asy(n)chronousController and atmos users were not able to
use the serial add-on...

V 0.99e
-------
- note to game players: do you remember some games were not nice with your
printer ? Well, it's the same with the emulator, so, the printer is off by
default, even if you select one in your euphoric.ini. The power switch is in
the environment screen.
- 10 blank disks may be created per directory, don't abuse of it or you won't
remember what you have on your disks...
- slow refresh problems during some CLOAD"" fixed...
- record button of taperecorder disabled if tape is write-protected

V 0.99d
-------
- shouldn't crash anymore at exit when no soundcard was detected
- serial port selection should work now
- oric1 selection should work too
- flush the output to the printer after each character

V 0.99c
-------
- testers are really nice guys: raising the clock of a poor oric beyond 100 MHz,
listening to a taperecorder without any tape inserted, etc. Btw, thanks again,
folks ;-)
- thanks for the UK keyboard definition file, Jon.
- oh, I forgot to mention... if someone asks you the best WAV-player in the
world, tell him about euphoric's virtual tape recorder... I haven't found any 
other WAV-player able to successfully transfer oric programs to a real oric
tape, just tell me if I'm wrong (all those beautiful players shouldn't rely
on Bill's drivers, sure...)

V 0.99b
-------
- Sound Blaster driver added for Dos version.

V 0.99a (yes, still un*x only)
-------
- euphoric has been reported to run on OpenBSD (but not sure about sound),
waiting for news about FreeBSD, NetBSD, etc.
- oriclite is back again for small 386 cpus (it's an oric, but with 64k ram
only. Upper 16 KB are loaded with your Basic rom)
- obviously, div operator is not a replacement for '/' in the new gnu as. This
was the reason for both the Q mode and digital sound problems...
- changed the patch for tape synchro detection so that reset function keys
remain active when no synchro is found in a file (software emulation mode.
Hardware emulation doesn't have such a problem)
- context-sensitive help in environment screen
- customizable environment screen: you can translate it in your language through
the euphoric.ini file (well, it's much easier if you use ASCII...)
- new functions in environment screen: ejecting a tape or disk, creating
a blank tape or disk, moving/breaking/repairing the write-protect tabs of
disks and tapes, and even a play button on the tape recorder for those who
were used to listen the tapes before loading programs 8-)
- function keys are active during the environment screen, you can reset the
oric, quit the program, change keyboard/sound...
- new function keys to make your oric go faster when you want it (how can
some programs use such slow filling routines ?-)
- more precise handling of the READY, HLD and HLT pins of the FDC. The
electronics behind these pins is now different for the Microdisc, the Telestrat,
and the Jasmin (READY is not connected to the drive on the Microdisc !!)
HLD and HLT seem very strange on the Jasmin... but it works again...
- changed the io address decoder of the Telestrat: it seems the first via is not
replicated in page 3...

V 0.99 alpha (still linux only)
------------
- euphoric.ini file for precise configuration of your oric. No need to change
names of roms anymore... Choose Oric1/Atmos/Telestrat configurations,
Microdisc or Jasmin controllers, drives, add-ons and even ram styles 8-)
- CRC computations added at last ! I wasn't including all the bytes in the
computation... new generated disks have correct CRCs in, but CRCs are not
checked when reading so that you will have some time to update your disks...
- changed the code to be compiled both in a.out format and elf format ($#@,
where is the '/' operator with the new gnu as ??).

V 0.98a (still linux only)
-------
- full emulation of the Microdisc's EPROM_SELECT is back in... (fingers up
those who have noticed I was cheating starting from v0.8 !). Also allows new
16K eproms to be used: try Telestrat's firmware on the atmos !

V 0.98 alpha2 (linux only)
-------------
- detects 1/50s chunks with no sound and doesn't output them, to avoid slow
desynchronisation.
- changes the sampling frequency to 25600 Hz, in order to have whole fragments 
every 1/50s: seems a little better but still a overhead.
- wait the release of the ESC key when exiting the configuration screen.

V 0.98 alpha (linux only)
------------
- digital sound inside: full PSG emulation, allowing the playing of samples,
noise pitch, etc. Sampling frequency : 31250 Hz, frequencies higher than 16kHz
are filtered. Requires Voxware 3 (fragment size programmable), for low
latency DMA. However, sending chunks of 1/50s to the Voxware driver seems to
introduce a big overhead (while saving the sound to a file and playing it
afterwards is perfect... so I have to find a workaround).

V 0.97c
-------
- makes first drive the selected drive when rebooting the oric
- fixes the level sensed on PB0-2, because some folks program these as inputs!
- removes the weak noise heard when no sound is emitted
- allows clock frequency to go up to 99.9 MHz in configuration screen, allows
to switch joystick emulation, fixes the keyboard delay bug.
- disables keyboard switching when Keyboard.def file not present
- repairs the joystick emulation, allowing arrows keys again

V 0.97b
-------
- fixed the behavior of the programmable keyboard (a key could be depressed
too fast, thus be not detected by the oric)
- 3 speeds cursor movements in configuration screen
- alphabetic sort of directory lists

V 0.97a
-------
- repaired dump/restore mechanism

V 0.97
------
- With the addition  of an hardware  tape emulation I'm  proud of, Euphoric is
  on the  path to the  final release (last  major addition  should be  digital 
  sound instead of FM synthesis) 
  Check  the option  in the configuration  screen to use  this tape simulator,
  because  it's off  by default  (mostly, only true  nostalgic people will use
  it,  enjoy  for example  Lone Raider 's  loading).  Previous system is still 
  here for fast  loading and  ease of  use (you don't  have to go  through the 
  configuration  screen to  select a tape,  you don't have to press the RECord
  button  of  the  tape  when  CSAVEing...): it  works  by  patching  selected 
  locations  in Oric-1  and Atmos  roms. Some programs (few)  don't use at all
  the low-level  routines  in rom, so  they require  the use  of the  hardware 
  emulation (roms are not patched in this mode).
  Of  course, a new  tape  image format  is used in the hardware tape mode: it
  is simply  a sampled (digitized)  image of real  tapes. Shannon went here so
  it is a  4800 Hz sampling rate, 1  bit depth samples.  Right, this format is 
  harder to hack in, but  it will soon allow you  to transfer programs to your
  Oric on real  tapes  (and perhaps  more useful for  most people: easier tape 
  transfers  from  real  oric,  ability  to  run  protected  software  without 
  patching them, so you can legally run your old software, ...) !
  Note that you  won't be able to load  byte-format tapes in the hardware mode 
  (once again, format  is different: you  can CLOAD them with default mode and
  CSAVE them in hardware mode if you are a real oric fundamentalist 8-)
  Also, when  using  hardware  mode,  don't  forget you  *need*  to  press the
  RECord  button of  the tape  before  writing to  it, don't  forget you  will
  overwrite  the previous  contents of the  tape unless you  position the tape
  with  the  fast  rewind  and  fast  forward   buttons  (a  counter  in  real
  minutes/seconds is provided, but you will need to write program information,
  location, etc.  on a piece of  paper ;-), and  don't forget  to release  the
  RECord button after writing...
  (that was tape day-to-day life 8-)
  If this frightens  you, protect  your valuable tapes  against writing (using
  file access modes  under the host). Note  also  there is  no need for a PLAY
  button (it is always  pressed), since a  remote control  lead is bundled  in
  the package...
  Final word,  have no fears about "errors found" messages,  you won't get one
  with this highly reliable DAT, and your programs won't fade with time...
- Charset redefined in configuration screen
- And... yes, Vaggelis, I know I still have to repair the dump/restore ;-)

V 0.96
------
- Added a configuration screen to swap disks, keyboards, etc.
- F6 is now the Jasmin's boot button.

V 0.95a
-------
- Last patch for the programmable keyboard 8-) I add a classical reader/writer
  synchronization  problem, so the oric  sometimes caught only one of two keys
  send  in two  different locations  of the  keyboard matrix (when the routine
  has already scanned some of it).

V 0.95
------
- Users of the previous  national keyboard were somewhat disturbed by the fact
  some software produced US  strokes, depending on the routines they used. So,
  this new programmable keyboard  uses a hardware mapping  between PC keys and
  oric keys,  instead of  forcing an ascii  value in the  keyboard  converting
  routines of  the different oric roms  (see Keybfr.def file).  Of course, the
  original  oric keyboard  is still  there, for  games  that  would  otherwise
  oblige painful  positions,  and function  key F3 alternates  between the two
  keyboards (help key F1 displays the current keyboard).
  Moreover, the  programmable keyboard allows for *fast* typing (by depressing
  oric keys when  *you*  are not  fast enough 8-) : now it's time you use your
  oric for text-processing !!
- Sorry for the dump/restore I still have not repaired...
- And I've been told  Bill don't want to let me play music, and that his clock
  is disturbed by my  higher interrupt frequency.  Ok, everybody will take the
  right conclusion (Linuuuuuux... 8-)

V 0.94a
-------
- A fix to  the new national keyboard support introduced in 0.92 (I missed the
  point that the CAPS state may be changed by software)
- No time to  fix the dump/restore  feature, broken  with 0.94 again : my hard
  disk had a hard failure and its whole content is lost 8-(
- No time to explain to IBM* and Microsoft* windows users  how to benefit from 
  drag&drop  feature, or  associating '.dsk'  type to the  euphoric program, I
  have to completely rewrite the documentation...

V 0.94
------
- Euphoric for  DOS becomes DPMI  compatible. This  means that you  can run it
  under near every  DPMI  server  (currently tested:  OS/2 Warp,  Windows 3.1,
  Windows 95,  Quaterdeck's QDPMI,  Qualitas' 386MAX,  CWSDPMI). There's about
  no performance penalty  with  DPMI  servers under DOS  (Quaterdeck, Qualitas
  and  the free CWSDPMI). Euphoric  works great  under OS/2  too.  It  suffers
  from  the bad performance of Windows 3.1, it  doesn't work yet under Windows
  NT (keyboard events lost). It  works with  Windows 95, but  you surely don't
  want to use such a bugged down system.

V 0.93a
-------
- I have  switched to  an ELF distribution on my system, but will  continue to
  link a.out euphoric  executables (so you need aout  versions of libc.so  and
  libvga.so).
  Soon I will get rid of svgalib (I only use it to init screen mode). 
  DOS executable is  still a  COFF converted  to EXE  (but  you  surely  don't 
  care 8-)
- Oops, as the  keyboard is  polled in the  linux version,  euphoric was stuck
  when the 6502  hung. Mhh, I can restore  the old behavior  (only power reset
  was active  in such a case)  but I decided  to introduce a  small difference
  with the real  thing (the NMI button is now active), maybe one  day you will
  thank me ;-)
- Another keyboard problem corrected, in Dos version (hum, second  time I fall
  in the same trap: different scancodes under Linux and Dos)

V 0.93
------
- New display : with the -q option, you will get *rectangular*  pixels like on
  your TV. DON'T use on  a LCD matrix. The vga mode  used is called mode Q (it
  is  256x256x256, so a  'CUbe') and  should  work  with  every  vga card  and 
  monitor.

V 0.92
------
- First  support of P.A.S.E  interface  (joystick  on  parallel port)  with -p 
  option:
        arrows on the numeric keypad for directions and 0 for fire button.
- Telestrat users have  the choice to  use the PASE  joystick as above  or the
  standard telestrat's joysticks (-tj option)
- New keyboard handler allowing more flexibility and  configurability (but old
  international keyboard definitions have to be changed)
- A bug  fixed in linux  version:  keyboard events  were missing in the simple
  oric configuration, causing stuck keys.
- Different handling of Jasmin's interrupts, the previous trick (executing one
  instruction  after a RTI,  even if an  interrupt  was  pending) caused  some
  programs  to randomly fail (eg. Painter). So, now  a virtual timer allows to
  reproduce  DRQ interrupts every 31,25s (approx.), as on the real drive (250
  Kbps rate)

V 0.91b
-------
- Oops, I  forgot to  update the  Sector  register  of the  1793  after a Read
  Address command.
- ACIA on  the Atmos moved  to address  $031C again  (no, it's not a tango). I 
  have checked the  address decoding of the real  microdisc allows for such an
  address.

V 0.91a
-------
- Simulates the  movement of drive heads, so it is easier to cope with strange
  habits like late selecting of drives.
- Simulates the rotation of the diskettes (allowing to read sectors or sector-
  ids in a circular  way) Look for example at the interleaving (1:2) of RANDOS
  diskettes (track 3 and above).

V 0.91
------
- Changed the FDC 1793  emulator to  handle a new  disk image format (really a
  bit  copy of a  real disk),  this will  allow  every exotic  format (eg. the
  Randos  system formats the  first three tracks  with 16 sectors (256 bytes),
  and the rest of the disk with 9 sectors (512 bytes)).
  The  bad news is  your disk  images are  bigger (every  track is 6400 bytes,
  with  datas, sector  id's, gaps,  indexes,...)  and you have  to update your
  disk  images with  the oric2mfm  utility  (sorry for that),  but  this  will
  soon bring great rewards for both virtual and real oric users 8-)
  (anticipating,  you can already examine  M$-DOS disks with  Nibble, like  on
  the real Oric: use  the dos2mfm utility  to convert a  720K M$-DOS raw image
  to the  new mfm  format. M$-DOS  raw images  are easily  obtained under Unix
  with the standard dd command, or under M$-DOS with the rawread utility)

V 0.9a
------
- Oops, I forgot to correct  the serial interrupts  under Linux. Hope  it's ok
  now

V 0.9 (29/10/95)
-----
- Oric goes out with his girlfriend Jasmin again 8-)
  (FDC 1793 simulator separated from Microdisc electronics, Jasmin electronics
  added,  multiple sector read  command added,  delayed INTRQ signal simulated
  differently,  artificially delayed  IRQ detection  after RTI instruction  to
  allow for delayed DRQ signal)
- Setting X  register to  0 in the  patch of  the  read  tape  synchronization
  routine (coming soon : hardware  simulator for tape  loading time nostalgics
  ;-)

V 0.8b
------
- Added  additional  cycle on  absolute  indexed  and  indirect  indexed  read
  addressing modes, and branch instructions, when crossing a page boundary.
  Timings should now be exactly similar than on a real 6502.
- Improved  the B flag  implementation  (still have to better implement  N and
  V flags in decimal mode).

V 0.8a
------
- Oops, I forgot to modify the Real Time Clock module, sorry...

V 0.8 (386) (01/10/95)
-----
- At  last ! A cross-over of 0.7alpha and 0.7h achieving the speed of versions
  anterior to the introduction of the disk controller. Owners  of fast 386 are
  able to enjoy it (and now... rushing to the 286 ;-)
- PS/2 compatible

V 0.7h (486)
------
- Serial  interrupts are  in ! The 6551  ACIA emulation  is now  complete, the
  communication softwares of the Telestrat run identical to the original.

V 0.7g (486)
------
- Move the IO address of the RS232 interface on the Oric 1 and Atmos.

V 0.7f (486)
------
- Patch for international keyboards on the Telestrat.
- Fix  the  RS232  interface,  it  works  in  polling  mode...(interrupts  not
  implemented yet).

V 0.7e (486)
------
- Repair the broken dump/restore mechanism.
- Generously  give a  RS232  interface  to Oric1/Atmos  users (but I  have not
  tested it yet), and a real-time clock extension.

V 0.7d (486)
------
- Oops, I forgot to copy files from Linux to Dos, so neither the screen aspect
  nor the F7/F8 keys were corrected under Dos...
- First emulation of the real time clock extension (with Telestrat for now)
- Updates the Bios timer when exiting from the Dos version (no need for such a
  hassle with unix of course. Hey, have you tried Linux ?)

V 0.7c (486)
------
- Restores the correct  aspect of the screen (during a power  reset) lost with
  0.7
- Handles differently the F7 and F8 key for the Telestrat.
- Modification  of  the FDC  1793  module  to work  around a  nasty  behaviour
  of Stratsed: selecting  a drive  AFTER  sending a read or  write command and
  BEFORE the actual transfer (not always the case, so... a bug ?)
- First emulation of the ACIA, but still lacks interrupts handling.

V 0.7b (486)
------
- New 6502 emulator,  I have made  bencharks and  it is faster thanks to fewer
  cache misses (despite additional jumps)

V 0.7a (from 0.6e)
------
- Faster clock code and keyboard reading.
- First TeleStrat  emulation ! Partial  emulation of the  second  VIA, no ACIA
  emulation yet (will come quite soon... 8-)

V 0.7alpha
----------
- Divergent release...no bank  switching mechanism  (so no disk system), but a
  new  6502 emulation  optimized  for 386,  a faster  keyboard  reading, and a
  faster  clock code. Should be the base for a  complete release optimized for
  386, slow with  bank switching (like 0.6alpha1)  but fast anywhere  else (to
  do: a modified Sedoric with no programmed function keys).

V 0.6e
------
- Monochrome VGA option added (tell me if you don't like the shades)
- Linux Ctrl-C not caught by svgalib any more, thanks to Alexios Chouchoulas.

V 0.6d
------
- Can now hardcopy several screens during a single session.
- Oops, a bug fixed (introduced with 0.6a, affecting the CSAVE command)

V 0.6c
------
- Can now format virtual disks.

V 0.6b
------
- Corrected  lost interrupts with the  DOS version (when go32 switches to real
  mode for disk access)

V 0.6a (19/06/95)
------
- New 6502 module with integrated paged memory mechanism.
- Optimized VIA 6522 emulation.
- New disk image format.
- Up to four drives.
- translation of some DOS scan codes to Linux corresponding ones.
- Hardcopy (PrtSc key)

V 0.6 alpha3
------------
- Fix  the deplacement  of the drive's head. Still not have time  to add track
  and multiple sectors read/write, though.

V 0.6 alpha2
------------
- Faster memory switching mechanism (approximative also). Final release should
  bring  the memory  scheme  in the heart of  the 6502  emulator  in order  to
  optimize the whole thing. Notice also the scan codes are sometimes different
  under Linux  and  Dos,  it works  ok with  Linux, but  under  Dos, AltGr  is
  interpreted like the Alt key (Oric's FCT key).

V 0.6 alpha1
------------
- First floppy disk  controler  emulation, it  works... but the  memory switch
  mechanism  is far  too  sloooow. Why  don't  they stop switching,  even when
  waiting for user interaction ?

V 0.5f
------
- Oops, didn't notice I deleted one line. Problem with the AltGr key.
 
V 0.5e
------
- Oops, two bugs fixed (one in the state restore, one in national keyboard for
  oric1)

V 0.5d
------
- Dump/Restore added. F9 gives the opportunity to save the state of  the oric,
  and the -r parameter  on the command line  allows to restore this state. See
  manual for applications.

V 0.5c
------
- Let's say  that 0.5b was so similar to the  Oric that even the tape routines
  were so slow...

V 0.5b
------
- Add the behaviour of the oric when it hangs up. The only solution then is to
  unplug and plug again the power...

V 0.5a
------
- Add a on/off switch for sound (F2)

V 0.5
-----
- International keyboards supported (look at the manual).
- Speed index  argument for 386 owners who don't have  the processing power to
  run the emulator  at nominal speed (or  bigger cpu owners  who want to try a
  speedy oric).
- ORIC environment variable to ease execution from several directories.
- Better error messages for first time Linux users.
- New documentation.
- A small bug corrected in PSG emulation, triggered by DPTLQ.

V 0.4c
------
- Change  in file  handling : it is now  possible to save a file  without name
  (CSAVE"")  This is not  recommended but  some programs use this feature. The
  file gets the name "________" on the host.

V 0.4b
------
- All BIOSes  don't use the  same order for Red/Green/Blue...so, don't use the
  Bios anymore.
- Printer support added by default. File "Printer.out" is the result.

V 0.4a
------
- Oops, I must have been in a hurry with V0.4 : a bug in  the frequency of the
  sound, and in the  noise too... I still need  to find a way to  make  square
  waveforms with the adlib, and noise could be better.
- Have improved the screen mode changes by examining the real oric.

V 0.4
-----
- At last some sound ! Many thanks to Gerton Lunter who  sent me his emulation
  code  of the  AY-3-8912 (the Spectrum  128 has the same  chip), from which I
  have been inspired a lot.

V 0.3d
------
- Unofficial MOS 6502 opcodes added. This allows some programs to run. I don't
  have time to look if they use them or if they have bugs...

V 0.3c
------
- A modification to the display code and the synchronization, so  that smaller
  CPUs  (486/25 and less) have  a better screen  refresh. Animation  is not so
  jerky on these CPUs now.

V 0.3b
------
- Two  gadgets added : a  help line on  top of the screen (de)activated by F1,
  and a simulation of the screen aspect when powering on the oric...

V 0.3a
------
- Small detail corrected in PSG (but still no sound yet)
- Thiner emulation of  the tape, so that programs like  Lone Raider or Trouble
  In Store can load.

V 0.3 (14/05/95)
----------------
- Complete  rewrite of the display code (it's mode X now). Synchronization  is
  far better, the speed should be the same on every machine. Powerful machines
  will just  benefit of  more screen  refresh  (up to 50 per second).  It also
  allows me to get rid of GASP, so...this is a wonderful world !
- Partial rewrite of 6522 emulation : cleaner now and (almost) exhaustive...

V 0.2.2f
--------
- Change of the tape  handling for two reasons : it's easier now to use multi-
  parts programs, and the emulator can read JF.Fabre emulator's format.

V 0.2.2e
--------
- Rewrite the  6502  emulator  for cpp  preprocessor. When  I change  the  VGA
  code, I will throw GASP...
- Clock count of the NOP instruction (Oops, had forgot it...)
- Emulation of reset button and power on/off reset.
- For DOS  version, disable keyboard interrupt during disk access in real mode
  (the ENTER key looked sometimes pressed after such access)

V 0.2.2d
--------
- Correction of the clocks count of conditional branching instructions.

V 0.2.2c
--------
- Bug fixes.  Oric1 rom was not  patched correctly to allow the CLOAD command.
  BRK instruction was not correctly emulated.

V 0.2.2b
--------
- Correction  of a little bug :  stores now the oric name of the  file read by
  CLOAD, in order  that the top  line displays it  correctly. I still  have to
  test if CLOAD and  CSAVE work  with the Oric1 rom, since  I write the  patch
  of that rom just with a listing of it.

V 0.2.2a
--------
- Near completion of the VIA emulator. A quite correct  handling of port A now
  allows programs to  detect that no joystick  is connected. Timers are now as
  precise as with the real oric.

V 0.2.2  (05/03/95)
-------
- Port of the V 0.2.1 to the linux i386 target. Why ?
  Previous  versions have  been developed with PharLap  DOS Extender, a really
  good product,  but I  would have  to pay  one more  time to  distribute  the
  emulator  since I don't  have the runtime  kit, and the development  kit was
  enough  expensive... So I decided  to use DJ Delorie  Dos Extender, and  his
  port of  the GNU  environment. This  has the advantage  to allow a  DOS/Unix
  version  quite  similar,  but  the  port has  been very  painful due  to the
  lack of  support  for  assembly programmers,  and the AT&T  assembly  syntax
  different  from  the  Intel  one,  not to  mention the  bugs  of  GASP,  the
  assembly  preprocessor,  nor the  very  approximative  checking of  GAS.  So
  bugs introduced by the port might still hide somewhere...

V 0.2.1  (25/02/95)
-------
- Speed identical to the real oric, whatever CPU you have (min 486SX/25 ?)
- BCD computations emulated
- A bug corrected with the correct handling of the IER register  (VIA). Before
  that,  a timer  interrupt  rising  before  the  initialization  of  the  IRQ
  sometimes happened.
- A patch to the  handling of port A in order  that  every program succeed  in
  reading the keyboard, since some (incorrectly) use the acknowledged port.

V 0.2  (12/02/95)
-----
- Loads and runs an Atmos rom (in fact, my 1.3 modified one)
- patches  the rom to  allow CLOAD and  CSAVE (I still have to  test STORE and
  RECALL)
- Displays  Text mode with  background and  foreground attributes,  simple and
  double height,  normal and alternate charset, and reverse video (blinking is
  missing).  Identical to  the real  oric, at the pixel  level, and allows the
  redefinition of character shapes (but it does not affect  characters already
  on screen, so Invaders* lacks some animation)
- Displays  Hires mode  with 3 text  lines (I have to figure out  what the ULA
  exactly do to  allow semi-hires  modes like the one in Doggy*), and  handles
  the switch to/from Text mode.
- Basic emulation of the 6522 VIA : PC timer mimics the  standard 100 Hz timer
  1, basic  emulation  of  port B  and  PSG in  order to  allow  the  keyboard
  simulation.
- Lacks BCD computations, so some programs don't display correctly the score.

V 0.1  (29/01/95)
-----
- A very  approximative display with 80x25 PC  standard mode, but it  works...
  the rom  runs until the  Ready prompt  after having  patched the  wait for 3
  interrupts to switch to text mode.
- A bug fixed  at 4 o'clock : an ADC was executed  instead of  each indirect X
  indexed ROR, very annoying for the floating point computations (so you learn
  that the Oric has "<58225.792 BYTES FREE" ...BTW, incredible to use floating
  point instead of integer computations)
- No  emulation  of  the  VIA yet : no  timer, no  keyboard (the  PC  keyboard
  interrupt  writes  the  ascii code in  the oric Basic's  keyboard  buffer. I
  remember  also  another  night(mare) hunting  for  a  bug  in  this  routine
  affecting the oric stack register, ouch...)



