*** repository tagged as ARANYM_0_9_16

2014/04/12 - Petr
- input.cpp: improved the help message in window title
- various files: version++ and other minor updates for the new release


2014/03/30 - Philipp
- MacAranym.xcodeproj, configure.ac: Fixing build on Mac OS 10.9 / Xcode 5.1


2014/03/16 - Andreas
- New config setting [LILO] LoadToFastRAM to load kernel in FastRAM


2014/02/12 - David Gálvez improves NF USB support
- Delete some FreeMiNT's specific code, like usb_device struct, leave
  the updates to the members of this struct to FreeMiNT's driver.

- Remove some endianess swapping where not necessary, and add them
  where was needed. Use SDL function instead our owns.

- Update API version, because some function have now less parameters.

- Fix some return values.


2014/01/01 - Patrice
- ikbd.cpp - force transition for GPIP pin


2013/11/05 - Andreas
- fpu_mpfr.cpp - Be more careful about SNaN


2013/11/03 - Andreas
- newcpu.cpp - Fix printing of sign-extended operands in disassembler
- fpu_mpfr.cpp - Preserve the bits of NaN


2013/10/23 - Andreas
- fpu_mpfr.c - Improve accuracy of denormal results, fix decoding of FBcc.L
- Unix/vm_alloc.cpp - Use MAP_32BIT only when requested


2013/08/22 - Jens
- m68k.h - Added ARM flags optimization
- configure.ac - Added ARM flags optimization
- sysdeps.h - Improved clobber list


2013/08/17 - Jens
- configure.ac : Added ARM Assembly compiler flags (build armv6 optimized
  assembly on armv6 and above) 

- src/Unix/sysdeps.h : Improved __asm__ memory access (supports armv6, armv7
  and common arm)
  (ARMV6_ASSEMBLY for armv6 -> armv8; or ARM_ASSEMBLY for armv1 -> armv5)
  because extended optimation is for armv6 and above
  i.e. --build=armv5l-unknown-linux-gnueabi will build an
  generic arm version with common ARM instructions

- sigsegv_linux_arm.cpp  : Bug fixed with word/int byte order


2013/08/12 - Jens
- configure.ac : Added sigsegv_linux.arm.cpp for linux ARM Architecture
- sigsegv_linux_arm.cpp  : sigsegv support for ARM Linux
- Support for --enable-addr-check=sseg on ARM Linux


2013/06/16 - Jens
- configure.ac : Reverted to previous FIXED_ADDRESS implementation for 64 Bit
  previous change wasn't necessary
- sigsegv_darwin_x86.cpp : 64 Bit code
- sigsegv_darwin_x86.cpp : xor added statement
- New files: MachServer.c, MachUser.c and gen_machfiles.sh
- MacAranym.xcodeproj: New build phase gen_machfiles
- sigsegv_linux_x86_64.cpp : New 64 Bit Jit for Linux


2013/06/02 - Jens
- MacAranym.xcodeproj: Fixed Profile settings
- configure.ac : Fixed typo


2013/06/01 - Jens
- bpf_helper.c: Set executable flag in fix permissions and wait for child
  processes to finish.
- configure.ac prepared for 64Bit Fixed addressing vm_allocate on darwin targets
- MacAranym.xcodeproj: Fixed Packaging scheme for 32/64 Bit Targets
- sigsegv_darwin_x86.cpp: added break in set_eflags. (Not sure if the eflags
  are really relevant)
- sigsegv_darwin_x86.cpp: Fixed X86_REG_EDX
- sigsegv_darwin_x86.cpp: Limit to BAD_ACCESS and forward_exception to enable
  XCode Debugging


2013/05/05 - Philipp
- MacAranym.xcodeproj: Removed specific compilation flags of bpf_helper target.
  This should enable error-free compilation with Xcode 3.1.


2013/05/01 - Philipp
- newcpu.cpp/compemu_fpp.cpp/fpu_ieee.cpu: fixed bugs which were reported as
  warnings by LLVM.


2013/04/28 - Philipp
- ethernet_macosx.cpp: BPF packet filtering improvements: added a new filter for
  multi-cast packets (MAC based) and another filter solely based on the IP
  address (ARP and IP protocol only).
  "nofilter" should only be used for debugging, as it causes memory leaks on the
  Atari/MiNT side and therefore system crashes.
  Implemented multi-packet reads from BPF device (one read operation can deliver
  multiple ethernet frames).


2013/04/28 - Andreas
- uae_cpu/compiler/compemu.h: Avoid conflict with definitions from
  <byteswap.h>, imported by SDL.


2013/04/19 - Philipp
- ethernet_macosx.cpp: fixed memory leak on Atari side by implementing a 
  working packet filter which ensures that only valid ethernet frames are 
  forwarded to the Atari side. Removed the "nofilter" keyword.
  Thanks to Zorro for pointing me to this severe bug.


2013/04/18 - Philipp
- natfeat/ethernet.h: Increase MAX_PACKET_SIZE to 9000 to allow enabling
  Ethernet on systems with MTU bigger than 1514.

- ethernet_macosx.cpp: Fix memory overflow in BPF driver.


*** repository tagged as ARANYM_0_9_15

2013/04/15 - Petr
- input.cpp: fixed click to grab input, added proper host<->Atari mouse sync
- ikbd.cpp: fixed SendMouseMotion() and MergeMousePacket()
- include/aradata.h: added setAtariMousePosition()


2013/01/23 - Petr
- natfeat/nfvdi.cpp: fixes a bug (sort of a race condition) in NFVDI.
  When fVDI switches to 32-bit display in VdiDriver::setResolution(),
  a new HostSurface is created immediately for the VDI driver.
  Then the video mode change is applied to the host window only on next VBL,
  in HostScreen::refreshSurface().
  But in VdiDriver::expandArea(), there was a bogus test:
    if (host->video->getBpp() == 8) {
  This was wrong, because the VDI made a test on the host window surface,
  which would only be correct on next VBL. Found and fixed by Vincent Riviere.

- bootos_emutos.cpp: fix for now correct BCD date format in EmuTOS by Vincent.


2013/01/14 - Petr
- include/natfeats.h: added proper check for end of memory block that
  is to be copied between host and guest using the LIBC memcpy().
  Re-enabled NATFEAT_LIBC_MEMCPY fast copying in NatFeats because
  I believe it's relatively safe now when there are checks for
  begin and end of the Atari memory block. Atari memory is contiguous
  so when both begin and end of the block is readable/writeable
  the whole block should be OK to copy by LIBC memcpy.


2013/01/13 - Petr
- input.cpp: "Reseting weird mouse packet" error message changed to
  "Resetting suspicious mouse packet" debug message thus it'll no longer
  annoy you. Thanks to Helmut Karlowski for pointing it out.

- include/natfeats.h: added switch for previously default and dangerous
  direct LIBC memcpy() to/from guest provided memory pointer. Now it is
  disabled by default and byte by byte copying routine is used instead
  (guest programs should no longer be able to kill the whole ARAnyM).
  It might affect the NatFeats performance negatively so if required
  set the newly introduced NATFEAT_LIBC_MEMCPY define to 1.

  In addition the direct LIBC memcpy() is now guarded by proper pointer check
  so even if you enable it for speed reasons you should still be relatively
  safe. Thanks to Thorsten Glaser for providing simple linux user program
  that was able to kill ARAnyM by issuing NF_NAME NatFeat.

- natfeat/nf_basicset.cpp, natfeat/ethernet.cpp: removed incorrect ValidAddr
  checks.


2012/09/24 - Philipp
- Xcode 4.5 project/build system: fixes for building with OS X 10.8, changed 
  packaging DMG to include README_ethernet.rtf instead of TunTap description,
  adjusted detection of aclocal and makedepend to support usage of MacPorts

- Disabled loading of WMIcon on MacAranym as the correct icon is already bundled
  with the application.
  

*** CVS tagged as ARANYM_0_9_14

2012/09/20 - Petr
- README, NEWS: updated for a new release
- aranym.spec, version.h, export: increased version to 0.9.14


2012/08/29 - Petr
- input.cpp: use host middle mouse button for keyboard/mouse ungrab. Works only
  if Eiffel mouse middle button/wheel mode is not enabled.


2012/07/27 - Philipp
- Added new option --enable-bpf-ethernet for Mac OS X. This allows using bridged
  ethernet without installing TunTap kernel extensions. See README_ethernet.rtf.

- ethernet_macosx.cpp: Berkley Packet Filter (BPF) based ethernet driver
  for Mac OS X. This driver supports only "bridge" mode, i.e. Aranym 
  is part of your LAN, with its own IP address.

- bpf_helper.c,fd_trans.c: a small utility used to do privileged operations
  like opening a BPF device. When run for the first time it tries to
  fix the permissions (chown root, chmod ug+s).
  The file descriptor to the device is then passed using Unix sockets.

- Added Xcode 4 scheme files: added shared schemes for building the targets


2012/07/08 - Philipp
- Source cleanup/remove warnings for compilation with latest LLVM compiler of
  Xcode 4.5

- Building on Mac OS 10.7: Do not set "-isysroot" during compilation. Targetting
  Mac OS 10.5 is still possible without explicitely specifying the SDK to use
  for compilation. This was only necessary during Universal Binary builds where
  explicitely the MacOSX10.4u.sdk had to be used to build multi architecture
  builds.


2012/05/20 - Philipp
- hostscreen.cpp: "enforce VIDEL refresh" was missing => no screen updates 
  during boot up when no nfVDI was active.

- gui-osx/SDLMain.m: Fix "deprecated" warning for "poseAsClass"

- Xcode project: enable X86_64 compilation beside i386 architecture and build
  fat binaries. 64 bit support in SDL is only available as of Mac OS 10.6.
  Therefore on 10.5 only the 32 bit version will run.

- hostscreen.cpp: fix missing check for "SingleBlitRefresh" configuration in
  refreshScreen().


2012/05/17 - Philipp (Based on the patches provided by Olivier Landemarre)
- nfvdi_soft.cpp: Performance improvements by skipping memory translation
  if MMU emulation is disabled.

- dirty_rect.cpp: maintain a surrounding rectangle containing the whole
  dirtied area.

- hostscreen.cpp: Two possible modes for updating the atari screen surface 
  and the host screen surface: "chunky" (as in previous versions, uses 
  multiple, small rectangular updates) and "single" (which uses one single
  rectangular update over the whole "dirty" surface)

- parameters.cpp/dlgVideo.cpp: new boolean "SingleBlitRefresh" 
  and "SingleBlitComposing" for the video configuration segment. 
  If set to "Yes" the screen to be composed/screen to be refreshed will be sent
  in a single BitBlit to the screen/graphics card. If set to "No", only the 
  dirty screen areas are sent by using multiple BitBlits. 
  Default is "No".
  => Checkout what combination gives you the best performance.


2012/05/13 - Patrice
- hostscreen: Merge consecutive dirty blocks to reduce number of update to
  screen operations.


2012/05/08 - Philipp
- MacAranym.xcodeproj: Support compilation with SDL 1.2.15.
  The standard Mac OS X deployment target is now 10.6, Intel only.
  It's still possible to compile binaries with PowerPC and OS 10.5
  but no more Universal Binaries are going to be built.
  Build configuration "Release G5" has been removed.

- MacAranym.xcodeproj: Added new target "MacAranym MMU MPFR" with MPFR FPU 
  engine enabled. This target needs libgmp and libmpfr from MacPorts.
  Please checkout the README_Xcode.rtf for more details on how to build.

- MacAranym.xcodeproj: Renamed "MacAranym JIT IEEE" to "MacAranym JIT" as JIT 
  already implies IEEE FPU.
  Further this target has been modified to include always "--enable-jit-fpu".

- MacAranym.xcodeproj: Clean-up of project global and target specific configure
  flags (CONFIGURE_OPTIONS_BASE and CONFIGURE_OPTIONS_TARGET).
  Automatic detection when COMPILE_DEFS do not match what is generated in the
  Makefile during configure. It is now easier to change configure options on a
  target and really getting the right stuff compiled.

- sigsegv_darwin_x86.cpp: Fix compilation of JIT if Mac OS X Deployment target >= 10.5

- fpu/mathlib.h: fix compilation problem with in fp_do_expm1 inline assembly
  and LLVM GCC compiler.


2012/05/07 - Philipp
- dirty_rects.cpp/h: implemented setDirtyLine which calculates the surrounding
  rectangle and adds it to the dirty rectangle list.

- nfvdi_soft.cpp: use setDirtyLine instead of setDirtyRect whenever a line is
  drawn. This fixes redraw glitches whenever a line is not drawn from top left
  to bottom right.


2012/04/05 - Petr
- configure.ac: don't stop if libusb not found (apparently Debian on kfreebsd
  has the libusb as a fake package or what so the build was failing there)


2012/03/27 - Andreas
- fpu_mpfr.cpp: Fix range check when converting to long word


2012/03/24 - Philipp
- Fix MacAranym JIT: set/enforce deployment target to OS 10.4


2012/03/23 - Andreas
- fpu_mpfr.cpp: Fix missing fpu exception update


*** CVS tagged as ARANYM_0_9_13

2012/03/23 - Petr
- configure.ac: disable strict aliasing for JIT target (thanks to Miro)

- atari/mmusetup.cnf: FastRAM enlarged from 64 to 512 MB, removed Hades
  specific VideoRAM (thanks to Miro Kropacek)

- aranym.spec: Mandriva uses desktop files without the vendor prefix
  (with the prefix ARAnyM didn't appear in the list of apps)

- tools/export: modified for the Debian compatible source archive name
  aranym_V.E.R.orig.tar.gz

- README, NEWS, version.h: updated for new release


2012/03/22 - Petr
- natfeat/usbhost.cpp: Change the location of the status register cleaning
  from the function usbhost_init_libusb to the class constructor.
  This avoids that under some circumstances devices can't be claimed.
  Patch by David.

- aranym.spec: make use of the new aranym-{jit,mmu}.desktop files


2012/03/20 - Andreas
- fpu_mpfr.cpp: fix restarting of FPU insns in presence of access error
  exceptions


2012/03/20 - Petr
- contrib/*.desktop: updated description of the aranym.desktop and added
  two new files: aranym-jit.desktop and aranym-mmu.desktop

- natfeat/usbhost.cpp: fix compiler warning about comparison with different
  variables types (by David)


*** CVS tagged as ARANYM_0_9_12

2012/03/19 - Petr
- natfeat/{nfpci,nfosmesa}.h: made supervisor only (with Patrice's blessing)

- aranym.spec: disabled nfpci (Patrice says it's incomplete and should even
  be dropped from the source code completely)

- Makefile.in: quiet 'make depend'

- natfeat/usbhost.{cpp,h}: postponed the initialisation of libusb from the
  class c'tor to the moment when the USB SETUP is invoked for the first time.
  This saves users that will not use the USB from libusb access errors.
  Also changed some variables type from int8 to int (both patches by David)

- README, NEWS, AUTHORS, version.h: updated for new release


2012/03/18 - Petr
- aranym.spec: trying to get the build dependencies right (installed Fedora,
  openSUSE and Mandriva and playing with it)

- natfeat/*: moved all name and isSuperOnly to headers for easier grepping

- uae_cpu/fpu/flags.h: fix for newer gcc in tfnstsw inline asm parameters


2012/03/17 - Petr committing patch from David Galvez
- natfeat/usbhost.{cpp,h}:
  - Trigger interrupt for "port status change" from a new thread until
    the driver acknowledges.
  - Close libusb resources in class deconstructor.
  - Check inside usb_lowlevel_init function if any usb device is
    connected and enable "port status change" bit if necessary.
  - Rename variable idx_int to clearer idx_interface.
  - Use reset() function to init port status registers.
  - Code cleanup.


2012/03/16 - Petr
- configure.ac, parameters.cpp: list all Native Features that got compiled in


2012/03/15 - Petr
- configure.ac: check for ZLIB is now both by pkg-config and autoconf.
  Also the mpfr library must be version 3.0+ that has different API
  than previous versions. Checking for mpfr_set_zero ensures that.

- natfeat/nfpci.*: name() is const

- natfeat/nfosmesa.cpp: fix strict aliasing issue in newer GCC (twice,
  thanks to Andreas)

- dsp_cpu.c: initialize some uninitialized variables


2012/03/14 - Petr
- configure.ac: ARAnyM with MMU tries to select the new MPFR FPU if available.
  Also, the check for ZLIB changed from pkg-config to autoconf.

- parameters.cpp: "--version" shows what FPU emulation is compiled in.


2012/03/08 - Andreas
- gencpu.c: fix another CAS emulation bug: if the comparison failed the PC
  was not advanced.  Fix CAS2 to properly update both memory operands.

	
2012/03/07 - Andreas
- gencpu.c: fix CAS.[BW] emulation bug
- fpu_mpfr.cpp: fix k factor for FMOVE.P, fix FTST and FSCALE, only set
  FPIAR when exceptions are raised


2012/02/24 - Andreas
- fpu_mpfr.cpp: fpu emulation with mpfr library
- configure.ac: fixed define HAVE_LIBZ (not HAVE_ZLIB)


2012/01/16 - Petr committing patch from David Galvez
- configure.ac, gui-sdl/dlgMain.cpp: added gui-sdl/dlgUSb.{cpp,h}, a new
  setup dialog with list of all USB devices attached to the host. Users can
  claim up to two USB devices that can then be used from the Atari side.

- natfeat/usbhost.{cpp,h}: greatly enhanced: now it's able to claim any
  device (except hubs) to the host computer. The interfaces of the USB
  devices are shown as different devices (for example printer with a scanner
  will be listed as two devices, printer and scanner) so they can be
  attached to the ARAnyM guest independently.

- atari/usbhost/usbhost_nfapi.h: increased protocol revision


2011/11/08 - Patrice
- nfcdrom_linux: Small 64 bit fixes. Move Atari CD-ROM related stuff to generic
  header.


2011/11/03 - Patrice
- nfcdrom: Use proper sized types when compiling for 64 bits. Remove useless
  __attribute__((packed)) attribute. Always enable nfcdrom, using SDL as
  default backend.


2011/08/29 - Patrice
- Add silent build rules


2011/08/18 - Andreas
- src/natfeat/nfosmesa.cpp: Fixed an aliasing issue


2011/08/14 - Philipp
- Changed Xcode project to be compatible with Xcode 4 while staying compatible with older Xcode versions
- Simplified and unified Xcode project building
- Removed warnings

2011/08/10 - Philipp
- configure.ac added pseudo function when pkg-config is not existent.
- Xcode project: set project root correctly


2011/06/26 - Rodolphe Pineau
- Fix a videl function access if blitter code use memmove
- fix the uint64 define for Mac OS X

2011/04/25 - François Revol
- src/Unix/vm_alloc.cpp: avoid crashing in mprotect() configure test
- src/Unix/beos/clipbrd_beos.cpp, configure.ac: NF Clipboard for BeOS

2011/04/02 - milan
- src/natfeat/hostfs.cpp, src/gui-sdl/file.cpp, src/ndebug.cpp: fix memleaks


*** CVS tagged as ARANYM_0_9_11

2011/02/06 - Petr
- version.h: version++
- gui-sdl/dlgMain.cpp: print current version in the ABOUT dialog
- README, NEWS, TODO, aranym.spec, tools/export: updated for release


2011/01/26 - Patrice
- Use current fullscreen mode size if fixed size is 0x0.


2010/11/26 - Patrice, contributed by François Revol
- Add resource file for Haiku and BeOS.


2010/11/20 - Patrice, contributed by François Revol
- videl: refresh palette when switching from true color to bitplane mode.


2010/11/10 - Andreas
- fpu_*.cpp: don't modify registers before reading fp value from memory.
- cpummu.c: fix initialising mmu register.


2010/09/27 - Patrice, contributed by François Revol
- BeOS: Fixes for missing includes, defines, and default configuration.


2010/08/27 - David Gálvez
- USB NatFeat support


2010/08/17 - Patrice, contributed by François Revol
- Consider Haiku as a BeOS target.


2010/08/09 - milan
- newcpu.cpp: fix wrong removal of code


2010/07/22 - milan
- use macro guard around config.h (contributed by Benoît Tuduri)
- removal of distributed dispatcher


2010/07/20 - Patrice
- Check availability of realpath() function, lacking on some Mingw flavours.


2010/07/17 - Patrice, contributed by Jean Conter
- Preliminary SCC emulation for serial port.


*** CVS tagged as ARANYM_0_9_10

2010/05/27 - Petr
- README, NEWS, aranym.spec: updated for release
- Makefile.in: fixed version_date.h generation


2010/05/26 - Patrice
- HostSurface: Even if we do not recreate a new surface on resize, we must still
  update the width and height of the dirty rectangle list.

- VidelZoom: Keep Atari aspect ratio also when using autozoom, with or without
  integer coefs.


2009/12/29 - Patrice
- Disable resizable window, if we set a fixed size in configuration file.


2009/11/21 - Patrice
- videl, videl_zoom: Use autozoom feature to correct aspect ratio of Atari
screen when pixel shape is not squared (320x400, 640x200 modes for example).


2009/09/21 - Philipp
- clipbrd_darwin.M: character set conversion for standard Atari mapping.


2009/09/22 - Petr
- clipbrd_x11.cpp: Clipboard NatFeat support for X11 implemented.
- nfclipbrd.cpp: init_aclip() added, minor code formatting.
- clipbrd_cygwin, clipbrd_darwin: added init_aclip() dummy definition.
- configure.ac: enable Clipbard support by default.


2009/09/21 - Philipp
- clipbrd_darwin.M: Clipboard NatFeat support for Mac OS X implemented.
- nfclipbrd.cpp: Buffering of clipboard content implemented.


2009/09/20 - Philipp
- Xcode project: fix building of Universal Binaries when compiling on PPC
- configure.ac: fix script generation when cross-compiling
  ("[: too many arguments" errors)
- nfclipbrd.h: remove warning
  overriding 'virtual const char* NF_Base::name()'


2009/09/13 - Andreas
- uae_cpu/fpu/{fpu_ieee.cpp,fpu_uae.cpp,mathlib.h}: remove strict aliasing
  violations.


2009/09/08 - Petr
- natfeat/hotfs.cpp: fixed two crashes if realpath or canonicalize_file_name
  return NULL (= invalid file/symlink)


2009/09/07 - Petr
- ndebug.cpp: quiet 64-bit GCC printf warnings


*** CVS tagged as ARANYM_0_9_9

2009/09/07 - Petr
- aranym.spec: should create menu entries for aranym-jit and aranym-mmu
  as well. Improved by David Bolt, our RPM packages maintainer.


2009/09/05 - Petr
- natfeat/hostfs.cpp: fixed crash when hostRoot path is empty (happens
  when BetaDOS maps a drive but ARAnyM config does not). Thanks for
  bug report to Petr Stehlik junior :-)


2009/09/05 - Petr
- input.cpp: Right Shift was not detected properly at startup. Thanks for
  indirect bug report to Vincent :-)


*** CVS tagged as ARANYM_0_9_9_BETA

2009/09/04 - Petr
- configure.ac: added check for canonicalize_file_name()
- README, NEWS, tools/build_cygwin.sh: usual updates for a new release


2009/09/03 - Patrice
- nfaudio: Revert back to 0.9.8 version. Zmagxsnd.prg assumes 44100 Hz stereo
  16 bits device, so you must set this configuration in Aranym config file.


2009/09/03 - Philipp
- Fixed ALT+mouse click problem by setting environment variable
  SDL_HAS3BUTTONMOUSE in input.cpp InputInit for MacAranym.


2009/09/03 - Petr
- include/input.h: add SDLK_MODE to allowed ARAnyM hotkey modifiers.
- gui-sdl/dlgHotkeys.cpp: SDLK_MODE is shown as "MO"


2009/09/01 - Petr
- natfeat/hostfs.cpp: the conversion from absolute to relative symlinks
  (added recently) was broken. Fixed.


2009/08/31 - Petr
- natfeat/hostfs.cpp: realpath() with GNU extension that allows passing in
  NULL instead of a preallocated buffer and which fails on Mac OSX was
  changed to canonicalize_file_name() that was reimplemented for platforms
  where it's undefined. The configure.ac has yet to be updated with check
  for this.


2009/08/30 - Petr
- natfeat/hostfs.cpp changes and bugfixes:
  1) hostRoot must contain an absolute filepath, otherwise findDrive()
     fails when searching for a symlink target and that makes all symlinks
     appearing as normal files (due to a feature of converting symlinks
     pointing outside of mapped paths to real files - a controversial
     thing to say the least (read FreeMiNT mailing list archive)).
     Used realpath() for converting the hostRoot, hopefully it works
     everywhere.

  2) xfs_readdir() now uses the inodes from dirEntries instead of lstat.
     Let's see if anything breaks. From my testing the dirEntry->d_ino
     differs from statBuf.st_ino only if the file is a mount point
     on the host and then the d_ino contains a "better" number than the
     st_ino, IMHO (st_ino is 1 or 2 in such case).

  3) host_readlink() converts relative symlinks to absolute ones. Sounds
     superfluous but is handy as it converts paths like "X/../Y" to "Y".
     This is actually crucial for my code added yesterday that tries to
     find common path between symlink and its target to return a relative
     symlink instead of an absolute one (in xfs_readlink()).
     One wonders why the symlink is converted from relative to absolute
     and then back to relative. Only Standa knows that...


2009/08/30 - Andreas
- cpummu.cpp: correct handling of indirect descriptors during table
  lookup, there are no bits beside the PDT and the descriptor address.
  Reported by Toni Wilen.

- bootos_linux.cpp: avoid often broken gzseek


2009/08/29 - Petr
- natfeat/hostfs.cpp: symlinks with both link and target on the same
  GEMDOS drive are now returned as relative (to please Vincent :-)


2009/08/28 - Petr
- natfeat/hostfs.cpp: Vincent found out that an invalid hostFS symlink
  breaks the readdir() because it calls stat() and fails eventually.
  Changing it to 'lstat()' fixes it. Also the lstat() for finding out
  the inode number might be completely unnecessary. Watch out for
  "d_ino != st_ino" panic message when using HostFS...


2009/08/27 - Petr
- input.cpp: Vicent + Philipp report that positioning the cursor
  at -1 offset when releasing mouse grab causes troubles on Win and OSX
  thus the offset code is disabled. It wasn't needed anyway as the mouse
  autograb is disabled now.


2009/08/25 - Petr
- ndebug.cpp, linux/sigsegv_linux_x86.cpp, compiler/compemu_support.cpp,
  compiler/gencomp.c: quiet GCC warnings


2009/08/25 - Andreas
- aranym.desktop: Fix Categories entry.


2009/08/24 - Petr
- acsifdc.cpp: handle possible error reading the bootsector (also quiets
  GCC warning)

- midi_{file,sequencer}.cpp: print an error if writing fails (also quiets
  GCC warning)

- dsp_core.cpp, input.cpp, ndebug.cpp, dlgFileSelect.cpp, hostfs.cpp,
  uae_cpu/build68k.c, uae_cpu/gencpu.c, fpu/core.h, fpu/flags.h: quiet
  GCC warning


2009/08/24 - Philipp
- nfvdi_soft: Fixed some redrawing problems with 'soft' NfVDI in bitdepths < 32


2009/08/22 - Patrice
- nfvdi_soft: Add workaround for buggy SDL versions for blitting inside same
  surface. See http://bugzilla.libsdl.org/show_bug.cgi?id=699 for more info
  about the bug.


2009/07/19 - Petr
- hostfs.cpp: fixed a possible crash when calling std::map->erase(). Thanks
  to David Binderman (for posting to Novell BTS) and David Bolt (for letting
  me know about the BTS).


2009/05/24 - Patrice
- NfAudio: Only triggers interrupt once m68k buffer is filled.


2009/05/09 - Patrice
- Add volume setting to audio conversion.
- NfAudio: Use audio conversion class.


*** CVS tagged as ARANYM_0_9_8_BETA

2009/04/25 - Petr
- README, NEWS, TODO, version.h: updated for a new release


2009/04/24 - Patrice
- gui-sdl/dlgDisk.cpp: Fix wait for event after generating disk image
  if no confirmation needed.


2009/03/31 - Andreas
- gencpu.c: Correct exception setup for trapping insns. Thanks for hint
  to Guillaume Tello.

- fpu_{x86,uae,ieee}.cpp: Fix decoding of FTRAPcc insn.  Don't raise
  illegal insn exception on unknown condition codes, they merely give
  unexpected results.


2009/03/09 - Patrice
- dsp56k: Simplify read/write memory functions, thanks to Eero Tamminen.


2009/03/01 - Patrice
- dsp56k: More fixes from Laurent Sallafranque.
  RND instruction properly used with scaling modes.


2009/02/24 - Patrice
- dsp56k: Cleanups, small optimisation for MOVEC, remove SCI emulation (useless
  on Falcon).


2009/02/17 - Patrice
- dsp56k: Use function pointers to manage mutex and semaphore, to easily switch
  between threaded and non threaded emulation at runtime.


2009/02/13 - Patrice
- dsp56k: Add flag to run with/without thread (Hatari DSP runs without thread).


2009/02/11 - Patrice
- dsp56k: More fixes from Laurent Sallafranque.
  disasm: Avoid repeating n times same instruction.
  disasm: Replace some sprintf() by strcpy() to avoid some warning.
  Fix parallel move not using right register as S2.
  Fix carry computation in add56/sub56.
  Integrate preliminary work for DSP interrupts.


2009/01/24 - Patrice
- dsp56k: Fix decoding for NORM instruction (thanks to Matthias Alles).


2009/01/08 - Patrice
- dsp56k: Cleanup for MOVEC instruction parameter decoding


2009/01/03 - Petr
- ikbd: added support for reversing mouse Y-axis (IKBD opcodes 0x0f, 0x10)


2009/01/02 - Petr
- parameters, doc/config: removed "AutoGrabMouse" config option
- input.cpp: mouse handling clean up. Long time tired by automatic grabbing.
  - fixed possible negative Atari scancode
  - disabled (temporarily) auto mouse grab when mouse enters the window -
    will be re-enabled once new proper appl_tplay() based ARAnyM Tools
    accessory is finished (and XaAES gets appl_tplay implementation). After
    this the AutoGrabMouse config will no longer be needed.
  - added ARAnyM SDL mouse cursor (simple white arrow, to be improved), this
    is to be easily distinguishable from the Atari GEM mouse cursor (for
    some unknown reason the standard SDL mouse cursor is identical to Atari
    GEM mouse cursor so you never knew if you had input grabbed or not).
  - probably managed to remove the warnings about weird mouse motion
    packets (the initial mouse motion after mouse grab needs to be ignored).
  - middle mouse button added (only when Eiffel mode is enabled)


2008/12/26 - Patrice
- More dsp56k fixes
  Immediate value for REP is 12bit wide.
  Fix REP and DO instruction parameter decoding.
- OpenGL: Use __stdcall convention on Win32.


2008/12/14 - Petr
- atari/*: added proper NatFeat detection with illegal vector handling etc.


2008/12/11 - Petr
- configure.ac: disable jit-fpu by default since it's too buggy. Thanks to
  Anders Eriksson and Magnus Hansson for providing a simple test case.


2008/12/10 - Petr
- atari/natfeat.c: don't check for __NF cookie as FreeMiNT removes it so NF
  drivers could not be started after MiNT

- atari/nfpci/nfpci_cookie.c: do not store value to NULL pointer!

- atari/nfpci/nfpci.c, atari/nfjpeg/nfjpeg.c: bump version, remove mention
  about __NF cookie

- atari/nfjpeg/Makefile: don't complain when removing non-existing files


2008/12/10 - Andreas
- jpgdh.h: Use fixed sized types - fixes NFJPEG on 64bit host.
- nfjpeg.cpp: Use fixed sized types.


2008/12/06 - milan
- Makefile.in: ungzipped man pages


2008/11/26 - Patrice
- dsp56k: More fixes from Laurent Sallafranque.
  Fix calculation of overflow bit in add56/sub56.
  Fix accumulator to use for LSL/LSR.
  Fix registers S2,D2 for TCC instruction.
  Fix for DIV instruction.


2008/11/24 - Petr
- input.cpp: fixed a very annoying unexpected mouse autograb when leaving
  ARAnyM window with the mouse pointer faster (the SDL_WarpMouse simply
  set the mouse pointer position back to ARAnyM window and that caused
  immediate autograb).


2008/11/23 - Petr
- parallel_parport.cpp: fixed check for valid handle in getBusy()


2008/11/21 - Patrice
- Hardware scrolling quite OK now :-).


2008/11/20 - Patrice
- videl: Change lineoffset if hwscroll register not 0. Still needs
  pixel-precise position, and scrolling for 16bpp mode.


2008/11/09 - Petr
- nfvdi_soft.cpp: removed GCC 4.3.2 warning
- configure.ac: corrected mailing list address


*** CVS tagged as ARANYM_0_9_7_BETA

2008/11/08 - Petr
- videl.cpp: fixes ST-Low detection by converting binary OR to logical OR,
  found thanks to compile warning of the new GCC 4.3.2

- input.cpp: fixes releasing Alt key when entering SDL GUI by correcting
  the binary operator precedence (& > |)

- main.cpp, ethernet_linux.cpp, sdlgui.cpp, hostfs.cpp, fpu_ieee.cpp:
  removing some new GCC 4.3.2 warnings

- aranym.1: "--halt" documented

- README, NEWS, AUTHORS, version.h, aranym.spec: updated for new release


2008/10/22 - Patrice
- dsp56k: Fixes for LSL,BCHG instructions.


2008/10/21 - Petr
- input.cpp: the PC 'End' key gets Milan compatible scancode while the
  '<>' key (not found on my PC104 keyboard but it is on the PC105, next
  to the shortened left Shift) now gets the Atari scancode. Thanks to
  Jo Even Skarstein.

- tools.cpp: safe_strncpy() is now even safer :-)


2008/10/21 - Patrice
- Joypads: Add configurable buttons mapping to config file.


2008/10/20 - Patrice
- dsp56k: Fixes in register,L:xxx when limiting occurs.


2008/10/19 - Patrice
- dsp56k: Fixes in L:xxx,register parallel move, both directions.
- TOS: Remove patch that disable DMA audio if joypad ports not detected.


2008/10/18 - Patrice
- Joypad emulation seems to be working. TODO: Teamtap emulation, and button
  mapping from config file.


2008/10/16 - Patrice
- Started joypads emulation.


2008/10/14 - Patrice
- Add section in configuration files to map host joysticks to Atari joysticks.
- Use this section to open correct joysticks now, at least for IKBD.


2008/10/09 - Patrice
- dsp56k: try to fix detection of end of loop for DO instruction.


2008/10/08 - Patrice
- dsp56k: BSET/BCLR were not clearing/setting A2/B2 when changing bit in A/B
  accumulator (from Laurent Sallafranque).


2008/10/06 - Patrice
- dsp56k: Recode sub/add on 56bits in a simpler way.


2008/09/30 - Patrice
- dsp56k:
  disasm: Mark all instructions that may change SR.
  core: Try again to fix carry bit computation.


2008/09/28 - Patrice
- dsp56k fixes:
  SUB/ADD/CMP: Simply set carry bit if MSB changed, clear otherwise.


2008/09/28 - Andreas
- uae_cpu/table68k: Make EMULOP privileged.


2008/09/27 - Patrice
- dsp56k fixes:
  -MAC/MACR should not change Carry bit (from Laurent Sallafranque).


2008/09/21 - Patrice
- dsp56k fixes:
  -DIV instruction calculation (from Laurent Sallafranque).
  -disasm: mask out address bits to 32K, to read current instruction.


2008/09/16 - Patrice
- dsp56k fixes:
  -Parallel moves: B,A does not transfer full 56 bits.


2008/09/15 - Patrice
- dsp56k fixes:
  -LUA instruction must not change source register.
  -Parallel moves: disasm for dsp_pm_4, fixes in dsp_pm_1.


2008/09/14 - Patrice
- sdlgui: Make a loop, so we can call processDialog of a caller, following an
  alert.

- dsp56k fixes, from Laurent Sallafranque:
  -REP [x|y]:ea was not reading right value for LC register.
  -ENDDO must continue with executing following instruction, not jumping to end
  of loop.
  -Parallel moves: Some fixes, for _0, _4x.


2008/09/14 - Andreas
- acinclude.m4: fix name of cache variables to match *_cv_*.


2008/08/15 - Petr
- bootos_linux.cpp: ARAnyM can shut down instead of rebooting when linux-m68k
  kernel reboots. Added for Stephen who says installing Debian-m68k is easier
  this way. Enable the shutdown/halt by "--halt" command line option.

- various files: GCC 4.2.3's warning about empty 'if' body when there is
  just D(bug()) fixed by adding curly brackets. Also "text" is const char*.


2008/07/29 - Patrice
- dsp56k: Implementation of DSP emulation in plain C.


2008/07/28 - Patrice
- dsp56k: Preliminary work to make a plain C only implementation of DSP
  emulation, to ease merging with Hatari.


2008/07/26 - Patrice
- dsp56k: Reworked dsp thread pause/unpause using semaphores. Also enable force
  execution of dsp instructions till it read/write to the host port, for code
  that don't use any sync method.


2008/07/25 - Patrice
- dsp56k: Wrong calculation of E (extension) bit in SR. Also wrong calculation
  of CC given SR due to missing masking.


2008/07/23 - Patrice
- dsp56k: Fix disasm to match memory mapping changes.
  Change detection of polling loop on host port, to take into account programs
  that have some NOPs before JCLR.


2008/07/22 - Patrice
- dsp56k: Change memory mapping to match what happens on Falcon.


2008/07/21 - Patrice
- input: Warp mouse to center of screen only if mouse grabbed.


2008/07/20 - Patrice
- mmu: Wrong check for address in TTR or not, reported by François Revol, who
  tries to port Haiku (BeOS clone) to Atari.


2008/07/19 - Patrice
- dsp56k: Starts commiting fixes in emulation, coming from Hatari.
  Fix modulo addressing. Also deal with the case where modifier is higher than
  modulo.


2008/07/18 - Patrice
- dsp56k: Starts commiting fixes in emulation, coming from Hatari.
  JSSET,JSCLR where pushing wrong return address on the stack.
  TCC: was using wrong registers as both source and destination (emulation,
       disasm)
  TFR: was using wrong registers as source (disasm only).
  ADD,SUB: was using wrong registers as source (disasm only).
  AND,EOR,OR: was using wrong registers as source (emulation, disasm).


2008/07/15 - Patrice
- Add configuration for host audio device. Some machines only support 48 KHz
  as hardware frequency for example, so 22.05 KHz is not suited.


2008/07/15 - Andreas
- Handle universal endianess in gcc_AC_C_FLOAT_FORMAT autoconf macro.


2008/07/14 - Patrice
- Finally fixed audio DMA emulation, using new conversion routine.


2008/06/18 - Patrice
- Revert 20080526 audio dma changes, introduced too many regressions :-(.


2008/05/28 - Patrice
- ikbd: Remove useless mutex, as everything is running in same thread.


2008/05/26 - Patrice
Reworked audio DMA emulation:
- Moved audio conversion stuff in another file, so it can be used by other
  audio related functions (existing or future).
- Reduce fragment packet size, so the MFP interrupt triggers more often.
- HostAudio reset was deleting callbacks, so no more audio was working after
  that.


2008/02/05 - Jens
- aratapif.sh - Expanded shell script that tries to detect Interface and
  Nameserver parameters automatically, if it is not manually set.


2008/01/31 - Jens
- ethernet_darwin.cpp: Changed search path for aratapif.sh to the config dir.
  I think this is a good location for a file that has to be edited by the user
  and it makes it possible to have a configuration that meets with the config
  file.


2008/01/30 - Jens
- MacAranym.xcodeproj: grep added to seperate lines with a
  leading date before for building version_date.h; ENABLE_VBL_UPDATES
  removed, LOGO_FILENAME added

- parameters_Macos.cpp: getDataFolder() now returns application bundle
  directory

- aranym.icns: new icon file


2008/01/30 - Petr
- aranym.spec: SDL_image added to "Requires" and "BuildRequires"


2008/01/29 - Petr
- include/*.h, ethernet_cygwin.cpp: removed the $Id expandable CVS keyword
- template.cpp: unused, removed


*** CVS tagged as ARANYM_0_9_6_BETA2

2008/01/29 - Jens
- MacAranym.xcodeproj: Added version_date.h and dlgPartition.cpp
  to build process


2008/01/29 - Andreas
- uae_cpu/fpu/types.h: Use long double also on ia64.


2008/01/29 - Petr
- aranym.spec: fixed _icondir for Fedora (thanks Martin for bugreport)

- natfeat/xhdi.cpp: fixed two bugs that can be serious if you access
  a block of data beginning with the simulated root sector (thanks Roman
  for a bug report).

- rtc.cpp: fixed check for unspecified --locale (thanks Martin)

- contrib/*.desktop: renamed to lowercase, fixed Category -> Categories


*** CVS tagged as ARANYM_0_9_6_BETA

2008/01/28 - Petr
- sdl-gui/dlgDisk.cpp: the <= 0.9.5 IDE disk size limit was actually 32 GB,
  not 8 GB. Fixed for maximal backwards compatibility.

- sdl-gui/dlgMain.cpp: disable the "Reboot" button if no OS available

- contrib/ folder added with 32x32 + 48x48 ARAnyM icons and a desktop file

- aranym.spec: modified for icon, desktop file and new build root

- Makefile.in: removed strip from 'make install' (Debian bug #436479)

- doc/aranym.1: document the -k <CC> command line option

- README, NEWS, AUTHORS, TODO, version.h: updated for new release


2008/01/27 - Andreas
- uae_cpu/fpu/mathlib.h: Fix fast_fgetexp to compute unbiased exponent as
  signed value.


2008/01/27 - Petr
- input.cpp: fix hotkeys (or generally all modifiers) when NumLock is enabled

- sdl-gui/dlgDisk.cpp: restore original 63 Sectors-Per-Track for IDE disks
  smaller than 8 GB. This fixes C/H/S auto-detection for disk images created
  with ARAnyM 0.9.5beta or older.


2008/01/26 - Petr
- parameters.cpp: "--locale <CC>" or "-k <CC>" where <CC> is one of 18
  supported ISO 3166-1 alpha-2 codes.

- gui-sdl/*: various little improvements to layout or Help texts

- "GuiAlpha" setting removed - it was a nice demo of OpenGL capabilities
  but wasn't really useful.


2008/01/24 - Petr
- rtc: patch() now can optionally set also the system language and keyboard
  layout.

- parameters: new command line switch -k <ISO country code> for setting up
  the NVRAM keyboard layout.


2008/01/23 - Petr
- dlgPartition.cpp: added missing PartID edit field


2008/01/20 - Petr
- gui-sdl: added Partition setup (in dlgPartition.cpp) - allows editing
  SCSI0 - SCSI3 (ARAnyM allows up to 8 SCSI drives = host partitions)

- dlgDisk.cpp: fixed creating disk image. And when file is not found
  the filename field is disabled (visual guidance for the user)

- file.cpp: some unused functions removed.


2008/01/18 - Petr
- xhdi.cpp: fix recently introduced read-only problem ("error writing").
  Also improve error messages and disable all partitions at init time.


2008/01/17 - Petr
- xhdi.cpp: don't fopen()/fclose() on each transferred sector. Should
  speed things up a lot. Also force data flush on ARAnyM exit.

- configure.ac: proper check for fseeko() and fsync()


2008/01/16 - Petr
- xhdi.cpp: fseeko->fseek for MinGW

- hostfs.cpp: added missing POSIX functions in MinGW (mostly
  fake/empty/error returning). ARAnyM compiles under MinGW now, and even
  runs fine, it seems. The POSIX emulation should be improved, though. Just
  follow the "FIXME" notes...


2008/01/15 - Petr
- xhdi.cpp: fseek->fseeko for 64bit file offsets. Thanks Roman Zippel.

- emu_bochs.h: removed snprintf redefinition to fix MinGW compile.
  Also corrected debug functions.

- hostfs.cpp: added some fake #define for missing statfs flags

- Makefile.in: the GEN_DIR source files are compiled without the SDL_CFLAGS
  now to fix building under MinGW


2008/01/11 - Andreas
- Makefile.in: Remove unknown option from sed call.  More complete
  dependency generation.

- natfeat/nfvdi: Remove misplaced std::.


2008/01/07 - Stefan
- darwin/Makefile: There was an error in the generation of the config_tmp.h
  file, I used '>' for redirecting the first three lines instead of '>>', thus
  of course the first two lines where lost.

- darwin/aranym.xcodeproj/project.pbxproj: Removed some orphan file references.


2008/01/07 - Stefan
- darwin/Makefile: Fixed a dependency problem between the depend targets and
  the config.h file. Now an intermediate file config_tmp.h is generated, which
  the depend targets copy into config.h. The config_tmp.h now has an inclusion
  guard and just includes either the config_i386.h or config_ppc.h file.


2008/01/06 - Stefan
- Makefile.in: Changed CPU_TYPE to ARCH to have a more consistent naming.
  Removed -I$(top_srcdir) from CPPFLAGS as it is not needed any more. Added
  $(builddir)/ to version_date.h. Added missing $(top_srcdir)/ to ChangeLog.
  Added DEPEND to use architecture dependent depend files. Commented out the
  makefile definiton with WORD and WORDS, as we now have architecture specific
  depend files. Instead now makefile is defined to $(builddir)/Makefile.

- darwin/Makefile: Added targets depend{,_i386,_ppc} to generate dependencies
  and distclean{,_i386,_ppc} to have clean and distclean targets similar to
  the Makefile. Changed usage of make again to use the -C option. Thus now the
  targets are build in the same way then for other systems. This has been
  necessary because the builddir now is fixed to "." and can't be changed. On
  the other hand it's possible now, as we have the dependencies in other files.

- configure.ac: Added the option -mmacosx-version-min to ISYSROOT, this should
  fix the build on Leopard without the crt1.o workaround. Changed the srcdir
  for darwin back to ".", as now make is used with the -C option.

- INSTALL: Fixed the path description to the executable.

- mfp.cpp: Commented out the panicbug "mfp_do_interrupt called when another
  higher priority interrupt is running", as it is issued continuously when
  MagiC runs.

- ndebug.{cpp,h}: Added issavettyvalid and thus fixed ndebug in case the
  terminal is not supporting tcgetattr().

- darwin/aranym.xcodeproj/project.pbxproj: Updated the Xcode project file to
  contain new files and to use SCM/CVS. Also cleaned up some settings.


2008/01/05 - Andreas
- Makefile.in: Make sure version_date.h is up-to-date.


2008/01/05 - milan
- real adressing mode removed from code
- Sun Studio supported
- C++-izing standard includes here and there, adding std namespace
- removing GNU extensions (sed in Makefile.in, -Wall in configure.ac)


2008/01/05 - Petr
- acsifdc.cpp: alloca() replaced by std::vector thanks to Blaine's suggestion
- hostscreen.cpp: variable array size is C99, not C++ - replaced by vector
- logo.cpp: set the USE_ALPHA
- hostscreen.cpp: don't crash if logo.png not found
- Makefile.in: install logo.png
- version_date.h: removed from src/include, moved to root (next to Makefile)
- input.cpp: SDL_GUI is configurable
- main.cpp: unused HEARTBEAT removed


2008/01/04 - Petr
- hostscreen.cpp: alpha blend the logo onto VIDEL screen for half of second
  upon boot when OpenGL video is enabled.

- data/logo.png: updated, in different color, with white background (for now)


2008/01/04 - Patrice
- host_surface: Add constructor to create surface with a given SDL_PixelFormat.
  The logo needs to keep its alpha.

- configure.ac: Remove '-fomit-frame-pointer' option, prevent exceptions from
  being processed.


2008/01/02 - Petr
- parameters.*: logo_path removed from the configuration file
- hostscreen.cpp: logo is stored in the data folder
- logo.h: LOGO_FILENAME could be redefined at compile time, if required...
- include "version.h" only where required
- generate "include/version_date.h" from the ChangeLog and include it in
  version.h to get better idea what CVS version was used for building
  a binary.


2008/01/01 - Jens
- Makefile.in - Additional Include path, else the darwin build doesn't
  find config.h (may be an issue with MACOSX 10.5)

- parameters.cpp - Default search for logo in application bundle
  on MacOS

- input.cpp - don't use mouse grabing if setup gui is open, because the
  mouse was hidden and was not usable in the Setup GUI

- xcodeproj - SDL Image added, copy logo from data to application bundle.
  Debugging disabled, because NDEBUG is not working, if Aranym is started
  from an application bundle in Leopard (tcgetattr = -1)

- logo.png - added because it is necessary for the application bundle

- ethernet_darwin.cpp - check first that the device is available (TUNTAP)

- debug.cpp - Fixed compilation error if debug is disabled


2007/12/30 - Xavier
- tools/build-cygwin.sh: updated to fit the new building system.


2007/12/30 - Petr
- gui-sdl/*: ARAnyM SETUP is 76 columns wide now. Main, Alert, FileSelect and
  Disk dialogs were enlarged to full width. Couple more smaller dialogs
  were updated to look better.

- gui-sdl/dlgDisk.cpp: Fixed entering of large disk image sizes (> 99 GB).
  Fixed updating of IDE1 values.

- gui-sdl/dlgAlert.cpp: dialog width is flexible now.

- gui-sdl/dialog.{cpp,h}: redrawing of released touch exit button fixed.


2007/12/29 - Andreas
- Makefile.in: Fix dependency generation.


2007/12/28 - Petr
- data/wm_icon.bmp: added a 32x32 BMP version of new ARAnyM icon created by
  Anders Eriksson (thanks!)

- main.cpp: set the new icon in the window manager

- Makefile.in: copy the new icon to the data folder upon installation

- parameters.cpp, rtc.cpp: less verbosity at start up

- main.cpp: RTC timer is probed and if it fails then a safe fallback
  to SDL timer occurs...

- configure.ac: RTC timer is enabled by default on Linux platform


2007/12/22 - Patrice
- opengl: Always use reversed pixel type for BGRA texture format.


2007/12/21 - Andreas
- main_unix: Unconditionally call ndebug::init before parsing command
  line.


2007/12/21 - Patrice
- opengl: Always destroy/recreate texture, as most platforms need it anyway,
  like MacOSX and win32.


2007/12/19 - Patrice
- Makefile.in: Generate dependencies in .depend file, included at end of
  Makefile. Remove dep (useless?) target.


2007/12/19 - Andreas
- Makefile.in: Fix compilation outside source directory.  Use standard
  autoconf variables builddir and top_srcdir.
- darwin/Makefile: Change makedir to builddir.


2007/12/18 - Patrice
- opengl: Use BGRA texture format if available, till FVDI driver can cope with
  whatever format we could use.


2007/12/17 - Patrice
- gui: process current dialog if a touchexit object is currently pressed.
- opengl: disable changing surface format for a compatible texture format, till
  the fvdi driver is fixed.


2007/12/16 - Petr
- main.cpp: SDL_Delay() in the POSG (Power On Setup GUI) increased from 1 to
  20 in order to minimize the host CPU load.

- natfeat/nfvdi: added reset() function that re-enables VIDEL rendering so
  after Ctrl+Alt+Del user can see the Fuji/EmuTOS logo :-)


2007/12/16 - Patrice
- hostscreen: only update visible part of surface. Dirty rects and surface
  may be bigger.

- gui: fix disk related dialog, writing missing parts. Also fix test cursor
  updates by always redrawing dialog, then cursor above it.
  Fix mouse up/down button press events, to properly update object states.
  Do not wait for an event to refresh file list in selector.


2007/12/12 - Patrice
- hostsurface: add alpha property :-). And alpha setting for GUI.
  Add parameter to force SDL Surface recreation, so OpenGL can use a format that
  suits texturing formats.


2007/12/11 - Patrice
- hostsurface/hostscreen: Need to keep track of created surfaces in a list.
  Tell surfaces when to recreate OpenGL texture objects (for sure happens
  on win32 - do not know about other platforms that may require it).
  Store surface parameter inside surface.
  Only do screenshot once rendering is done.


2007/12/10 - Patrice
- sdlgui: Use SDL_GetTicks() to blink cursor at a fixed rate.

- main: No need to check which driver it is for fullscreen state. We read it
  when setting video mode.

- hostscreen: Allow screenshot in OpenGL mode.


2007/12/09 - Stefan
- darwin/Makefile: The architecture dependend binaries were build inside the
  darwin directory, but for the universal binary they were taken from the main
  directory ($(makedir)) and the universal binary got stored there, too. For
  the application bundle then a universal binary was taken from the darwin
  folder again. The build didn't fail if there still were older binaries at
  both locations. Anyway the application bundle contained a wrong binary.

- darwin/aranym.xcodeprj: As now the application bundle is build again as
  src/Unix/darwin/ARAnyM.app, the XCode project doesn't need a custom location
  for the build product directory any more.

- Makefile.in: For the target mostlyclean now instead of TARGET both APP and
  APP_BUNLDE will be deleted.

- src/dyngl.c: Fixed compiler warning about unused parameter.

- src/Unix/aratapif.c: Fixed compiler warning about type mismatch.

- src/uae_cpu/compiler/compemu_support.cpp: Fixed compiler warnings about type
  mismatches.

- src/uae_cpu/compiler/codegen_x86.cpp: Fixed compiler warning about type
  mismatch.

- src/natfeat/nfosmesa.h: Fixed return type of name() method.

- src/natfeat/nfosmesa.cpp: Fixed return type of name() method.

- src/natfeat/nfjpeg.h: Fixed return type of name() method.

- src/natfeat/nfjpeg.cpp: Fixed return type of name() method.


2007/12/08 - Stefan
- darwin/Makefile: Fixed the Makefile to allow a direct jump to errors in Xcode.

- Makefile.in: Added $(makefile) to hold the name of the current Makefile. This
  is needed for depend to append the dependencies to the right file. Added
  $(makedir) to hold the path to the config.h and other files. This is needed
  because for the darwin target make is started from a different folder.

- configure.ac: Added again a srcdir definition for darwin.

- darwin/aranym.xcodeprj: Updated the Xcode project files.

- darwin/info.plist: Udated version information.


2007/12/08 - Patrice
- main: Move OS init at the end of initialization

- hostscreen: add a BOOT screen (empty), used if starting with GUI, and while
  processing reset

- videl, videl_zoom: Zoomed surface also with partial updates: fast.


2007/12/07 - Patrice
- hostscreen: make the bitplane2chunky conversion routine static. Remove
  similar routines that are duplicates. Add more stuff to force a refresh at
  proper time.

- host_surface: Fix saving palette on resize.

- videl: update surface using dirty markers. Added crc using Adler-32 algorithm
  for 16x16 blocks.


2007/12/07 - Petr
- cfgopts.cpp: another fix (this time for $HOME without trailing slash)


2007/12/07 - Stefan
- darwin/Makefile: Adapted to build files in root directory.


2007/12/06 - Petr
- input.cpp: don't close SDL GUI that was not opened yet


2007/12/05 - Petr
- cfgopts.cpp: fix for alternate "-c config_file" specified without any path
- gui-sdl/sdlgui.cpp: added a space between checkbox and text
- gui-sdl/dlgMain.cpp: use safe_strncpy() wherever possible


2007/12/05 - Jens
- Fixed building with XCode (adapted to new code structure)
- ethernet_darwin: Fixed hostscreen references to toggleScreen


2007/12/04 - Patrice
- logo: Keep it in a SDL_Surface to redraw it at will.


2007/12/03 - Patrice
- hostscreen: Add selection of screen to display. Could even make it switchable
  on the fly if needed.


2007/12/02 - Patrice
- hostscreen: OpenGL backend done, still small bugs remaining here and there.
  Use OpenGL to zoom videl surface.
- nfvdi: disable OpenGL renderer atm, corrupt our compositing layer.


2007/12/01 - milan
- configure.ac: real mode addressing removed from default, target for removal


2007/11/30 - Patrice
- host surface: add function to set wanted surface size for opengl that may need
  power of two dimensions. Add function to set palette. Also save and restore
  palette when destroying/recreating surface.

- host surface for OpenGL, to hold texture information.

- hostscreen: OpenGL backend created. Remove bitsperpixel function, only keep
  bpp that return bit depth.

- nfvdi: do not need reset function anymore.


2007/11/29 - Petr
- various files: more 'const' fixes from Thothy
- gui-sdl/sdlgui.cpp: SDLGui_Draw3DBox() corrected for 8x16 font
- gui-sdl/font.h: added much nicer radio button and check box (two chars wide)
- gui-sdl/sdlgui.{cpp,h}: SDLGui_DrawCheckBoxState() updated for two chars
  wide radio/checkbox.


2007/11/29 - Andreas
- cfgopts: More fixes for compress_path.


2007/11/28 - Petr
- mkinstalldirs: moved from src/Unix ../..
- src/Unix: removed the autotools files, use the top-level ones instead.
- various files: added 'const' before 'char *' to satisfy gcc 4.2. Thanks
  for patch goes to Thomas Huth.


2007/11/28 - Patrice
- host: rename hostscreen as video, makes it a pointer.
- hostscreen: clear whole screen when need a complete refresh.


2007/11/27 - Patrice
- logo, sdl_gui: use host_surface for rendering.
- hostscreen: separate function to draw surface to screen, only update dirtied
  parts. Encapsulate host surface creation there. Remove VBL_UPDATES stuff.


2007/11/26 - Andreas
- cfgopts: Fix compress_path.
- host_surface: Fix double free.


2007/11/26 - Patrice
- videl, nfvdi_soft: use host_surface for rendering.


2007/11/26 - Andreas
- tools.cpp: Include <cstring>.

- Makefile.in: Fix reference to mkinstalldirs.


2007/11/25 - Patrice
- dirty rects: Don't set flag outside boundaries.
- hostscreen: remove mutex for vbl update stuff.
- input: Force screen refresh when closing gui.
- host_surface: New base class that will hold SDL_Surface used also for texture
  with OpenGL renderer.


2007/11/25 - Andreas
- configure.ac: Don't clobber srcdir.
- Makefile.in: append src to srcdir here.


2007/11/25 - Petr
- building system moved to the top-level directory
  configure.ac, Makefile.in: adapted for new paths
  install-sh, config.*, acinclude.m4, autogen.sh: just copied
  Simply run "./autogen.sh", "./configure && make" in the top-level dir now.

- SDL-GUI fonts: 8x8 font (font8.h) replaced by 8x16 font (font.h)
- sdlgui.cpp: try to load "font" file from the ARAnyM config folder. Fall back
  to hardwired 8x16 font if not successful.



2007/11/24 - Patrice
- nfvdi_soft: Put back vdi->hw palette mapping.


2007/11/23 - Patrice
- input: do not send mouse motion events to ikbd if mouse not grabbed.


2007/11/22 - Patrice
- main: forgot to redraw screen when starting with GUI enabled.


2007/11/20 - Patrice
- hostscreen: remove mutex and associated lock/unlock functions.

- gui: do not use a thread.

- logo: do not try to endlessly load file if not present.


2007/11/02 - Patrice
- midi: send NOTE OFF on all channels before exiting.

- sdlgui: first steps to nonthread stuff: create separate function to init,
  process and close a dialog. Blink and redraw text cursor from main thread.
  Fix fullscreen toggle. Always ungrab+show mouse when opening gui.
  Move dlgKeypress dialog in its own source file.


2007/10/31 - Patrice
- Set 640x480 as minimum size.


2007/10/28 - Petr
- cfgopts.*, parameters.*: moving auto conversion of file paths in the config
  file to CfgOpts class.


2007/10/09 - Philipp
- Updated MacAranym.xcodeproj
- Moved OpenGL library initialisation from Host to HostScreen where it is needed.
- Added more information if OpenGL initialisation failes.
- Added missing header file in ethernet_darwin.cpp.


2007/10/05 - Patrice
- parameters.cpp: Always set OpenGL stuff to disabled if not compiled in.


2007/09/30 - Patrice
- Added logo, path to image configurable in config file.
  Logo is displayed till Videl is ready.
- configure: Test SDL_image separately, it may be used for something else than
  nfjpeg.


2007/09/22 - Patrice
- Allow window resize. Videl, sdlgui and nfvdi surfaces are centered/clipped to
  the screen surface.


2007/09/21 - Philipp
- MacAranym.xcodeproj/project.pbxproj: Fixed project to compile again.
- ethernet_darwin.cpp: fixed reference to hostscreen
- nfjpeg.cpp: Enabled conditional compilation by adding a check for
  NFJPEG_SUPPORT. This file is now always included in the darwin project.


2007/09/21 - Patrice
- hostscreen: remove temp surfaces used in various places. Also remove drawing
  functions. No need to inline everything. Remove log messages from include
  file.


2007/09/20 - Patrice
- Need to disable SDL parachutes for signal handlers; conflict with Aranym
  sigsegv handler?


2007/09/19 - Patrice
- hostscreen: member of Host class now, so created and destroyed there.


2007/09/18 - Patrice
- hostscreen: create functions to update each part of video subsystem to main
  surface, which also has its dirty rectangles list.


2007/09/14 - Patrice
- nfvdi: render nfvdi screen in its own surface. Should be much faster on MacOSX
  now even without the VBL_UPDATE option. Added a dirty rectangle class, so we do
  not have to blit the whole nfvdi surface on each refresh.


2007/09/09 - Stefan
- darwin/Makefile: Removed dependency of ppc target from config_i386.h and the
  dependency of i386 target from config_ppc.h.


2007/09/07 - Philipp
- Corrected handling of --enable-ctrlkey in configure.ac and
  input.cpp (currently only supported by Darwin / Mac OS X target).
- MacOSX/MacAranym.xcodeproj: Removed (once again) dependency to SDL_image
  Framework.


2007/09/02 - Stefan
- darwin/busybee.icns: Again another version of the busybee icon.

- darwin/busybee112-glossy.xcf: Added gimp file which I use to create the
  busybee icon.

- darwin/Makefile: New targets universal, i386 and ppc to choose the binary type
  of ARAnyM. The ppc target now should also allow to build ARAnyM on Mac OS X
  10.3.9. Fixed an error that the Makefile_ppc or Makefile_i386 is older than
  its dependencies.

- INSTALL: Added description for darwin port.

- Unix/Makefile.in: Removed support for .mm, as .M has already been used for
  C++/Objective C mixed files. We should stick to one extension.

- MacOSX/MacAranym.xcodeproj: Updated XCode project file.

- darwin/aranym.xcodeproj: Updated XCode project file.

- Unix/configure.ac: Renamed SDLHotkeysRefresh.mm to SDLHotkeysRefresh.M.

- aratapif.c: Made it compile on Mac OS X.

- darwin/ethernet_darwin.cpp: Changed executeScriptAsRoot() to use
  Host::getDataFolder().

- darwin/German.lproj/InfoPlist.strings: Added this file to allow further
  localisations.

- codegen_x86.cpp: Solved a compiler warning due to an unused local variable.

- sigsegv_darwin_x86.cpp: Solved a compiler warning inside
  catch_exception_raise(), the return value krc now is initialized with
  KERN_SUCCESS.


2007/08/30 - Patrice
- videl, sdl_gui: Render it in itw own surface instead of drawing on main
  surface (Some small redraw problems remain for sdl_gui with nfvdi).

- hostscreen: its refresh function now responsible for setting mode and blitting
  videl, gui stuff on screen when needed.


2007/08/29 - Philipp
- MacOSX/MacAranym.xcodeproj: "Debug" Konfiguration does not create a Universal
  Binary anymore. It's for development and debugging purpose only, so there is
  no need to compile each file for PPC and i386!

- autoconf.sh: Fixed misleading message about running configure if NO_CONFIGURE
  is set.


2007/08/28 - Andreas
- Rename always_inline to ALWAYS_INLINE to work around bug in MacOS
  headers.


2007/08/28 - Jens
- configure.ac: Added missing $ sign determining OS_TYPE

- MacOSX/MacAranym.xcodeproj: adapted to new configure.ac


2007/08/27 - Andreas
- configure.ac: replace AC_CANONICAL_SYSTEM by AC_CANONICAL_HOST, use
  $host_xxx instead of $target_xxx.

- Fix make depend.

- Replace reserved identifier __always_inline by always_inline.


2007/08/27 Jens
- darwin/Makefile: removed config.h.in dependency from Makefile.
  It makes some trouble building the Makefile target directly after
  a CVS checkout and I don't think it's really necessary.

- gui-osx/English.lproj: Fixed properties tag

- MacOSX/MacAranym.xcodeproj:German bundle added to package



2007/08/26 Jens
- darwin/English.lproj: Tags set on menu entries

- darwin/German.lproj: Tags set on menu entries

- darwin/Makefile: Fix to make it 10.3.9 compatible (code for modifying
  config_ppc.h taken from the xcodeproj)

- darwin/ethernet_darwin.cpp: If it is started as fullscreen application,
  leave the fullscreen mode before opening the authorization dialog. After
  initialization reenter fullscreen mode. Added Authorization Service
  to ask for the user password for starting up the ethernet connection.
  Location of aratapif.sh changed to "~/Library/Application Support/ARAnyM"

- darwin/Readme_ethernet.txt: Updated information for installation of the
  ethernet on Mac.

- darwin/sigsegv_darwin_x86.cpp: Commented a enum value to reduce warnings
  during compilation.

- darwin/SDLHotkeysRefresh.mm: New code interacting as an interface between
  the cpp code and the Objective-C code of the MAC part that updates the menu
  shortcuts.

- gui-osx/German.lproj: Added german version

- gui-osx/English.lproj: added tags for the different menu entries. For a list
  of the used tags see darwin/SDLHotkeysRefresh.mm

- MacOSX/Readme.rtf: JIT/Ethernet comment changed

- MacOSX/MacAranym.xcodeproj: changed that the configure is running twice for
  each target, to make sure that the config file is generated correctly for
  the target. Added Security.Framework.

- configure.ac: Fixed a typo using vblupdates; added Security.Framework;
  added SDLHotkeysRefresh.mm to source list for Makefile build

- input.cpp: Fixed getting modifier if it is pushed by a Menu key

- gui-sdl/dlgMain.cpp/main_unix.cpp: Call refreshHotkeys() on Mac to update
  the key shortcuts in the screen menu bar

- Makefile.in: Added compilation rules for .mm files. Fixed bundle creation
  copying frameworks if SDL_image.framework is not available it fails before.


2007/08/19 Stefan
- darwin/busybee.icns: I made a new glossy busy bee icon.

- darwin/aranym.xcodeproj: Little fix so that the compiler finds the
  executable.


2007/08/16 Stefan
- darwin/host_filesys_darwin.M: Added this file now containing the file system
  functions.

- darwin/parameters_darwin.cpp: Renamed it from .M to .cpp, as of the split-off
  of darwin/host_filesys_datwin.M there's no Objective C code any longer.

- darwin/English.lproj/aranym.nib, darwin/German.lproj/aranym.nib: Added some
  more menu items to control ARAnyM.

- darwin/SDL.M, darwin/SDL.h: Added functionality to recognise configuration
  files or bundle names passed to ARAnyM at startup due to a double-click on
  either one. Solved a problem on terminating ARAnyM.

- darwin/Info.plist: Added information to start ARAnyM via double-click on
  files with the extension ".ARAnyMCFG" or ".amcfg". Added information to
  define a bundle folder with the extension ".ARAnyMVM" or ".amvm". Such a
  bundle then can contain disk images, ROMs, a config file and also other
  stuff. A bundel is treated by the Finder like a single file. A double-click
  on such a bundle now starts ARAnyM, which then looks for an
  "org.aranym.amcfg" or usual "config" file to use.

- darwin/araynm.pbproj: As this file is not in use any more, I now removed it.

- darwin/aranym.xcodeproj: Added an XCode project instead. It mainly just
  relies on the darwin/Makefile.

- Unix/Makefile.in: The new XCode project sets its working path to the darwin
  folder. To gain from the XCode features, I adapted the Unix/Makefile.in that
  from within the darwin folder make -f ../Makefile_ppc can be started.

- darwin/Makefile: Little changes were necessary to start the autogen.sh,
  configure and make depend separately from within the darwin folder.

- configure.ac: Changed the default config file name according the new
  extension to "org.aranym.acfg". Added a new configuration switch to select
  either the control or meta key or both to emulate the control key. Added
  darwin/host_filesys_darwin.M and darwin/parameters_darwin.cpp to EXTRASYSSRC
  and removed darwin/parameters_darwin.M instead. Changed the srcdir variable
  to ".." to get the make system working comfortably form within XCode.

- input.cpp: Using the new defines to decide for control or meta key to map the
  the emulated control key.

- Unix/config.h: Also here I added the new control key defines
  MAP_META_TO_CONTROL and MAP_CONTROL_TO_CONTROL.

- INSTALL: Added a more detailed description of how to build ARAnyM for Mac OS
  X.

- uae_cpu/compiler/codegen_x86.cpp: Removed some easy compiler warnings.

- darwin/sigsegv_darwin_x86.cpp: Removed some easy compiler warnings.

- Unix/vm_alloc.cpp: Removed some easy compiler warnings.

- uae_cpu/compiler/gencomp.c: Removed some unused functions and thus some
  compiler warnings.


2007/08/15 Philipp
- New Xcode 1.5 project in "src/Unix/MacOSX". Old project in "src/MacOSX" has
  been removed.


2007/08/13 Philipp
- gui-osx: Moved Mac OS X GUI sources into separate folder.


2007/08/12 Jens
- hostscreen.cpp: Introduces new option to have delayed screen updates via
  SDL_UpdateRects. This is necessary to have a fluently updated screen on the
  Mac in windowed mode (see
  http://www.libsdl.org/faq.php?action=listentries&category=7#68). It may be
  useful on some other systems too.

- configure.ac: New option --enable-vblupdates for delayed updates

- darwin/Makefile: add parameter --enable-vblupdates

- main_unix.cpp: Changed calculation for the mirror space address. It should
  work in 64 Bit now too, it should be the correct address if all related
  address calculation is done in 32 Bit.


2007/08/10 Jens
- darwin/ethernet_darwin: Completed first TUN/TAP support on mac

- darwin/aratapif.sh: A shell script version of aratapif

- darwin/Readme_ethernet.txt: A short description of setting up ethernet on the
  Mac

- darwin/Makefile: add parameter --enable-ethernet


2007/08/10 - Petr
- gui-sdl/dlgHotkeys.cpp: documented one hidden feature - if you need to set
  just a shifter hotkey (like Right Control for releasing the mouse+keyboard)
  then press and hold the Right Control and press the [Enter] key.

- parameters.cpp: JIT is now preset to Yes so it's enabled by default (unless
  disabled by the [JIT] section of your ARAnyM config file).

- main.cpp: disabled the heart-beat I invented long time ago - it's visually
  annoying and distracting.

- input.cpp: with "-N" (=don't grab mouse+kbd at startup) allow later
  keyboard+mouse capture by clicking on the ARAnyM window.


2007/08/06 - Petr
- gui-sdl/dlgDisk.cpp: pre-select inserted/created disk


2007/08/04 - Jens
- configure.ac: Use TARGET_CPU to determine for darwin, if JIT is
  supported. Set NO_NESTED_SIGSEGV for Makefile build

- /MacAranym.xcodeproj/project.pbxproj: JIT part of standard packaging,
  ethernet disabled by default, since it is out of experimental.

- darwin/Makefile: ethernet default =no (see above)


2007/08/03 - Jens
- /MacAranym.xcodeproj/project.pbxproj Fixed compiler options; Added
  SDL-Image framework, MMU support


2007/07/28 - Jens
- ethernet_darwin.cpp/h: added ethernet support to darwin directory

- configure.ac: Assume ethernet=yes if OS is darwin

- ethernet.cpp: Added include to ethernet_darwin.h


2007/07/26 - Jens
- darwin/sigsegv_darwin_x86.cpp: First running version of MacAranym with JIT

- configure.ac: added parameter --with-classicconfig for classic configuration
  files and pointed to sigsegv_darwin_x86.cpp for JIT version.

- src/Unix/MacOSX/MacAranym.xcodeproj/project.pbxproj: added new target
  MacAranym JIT and modified the other targets to keep their local parameter
  inside itself. Also a packaging JIT target is introduced with is a simple
  clone of the normal packaging target.


2007/07/23 - Philipp
- Fixed Mac OS X framework lookup in acinclude.m4.


2007/07/22 - Stefan
- include/toserror.h: Added TOS_ENAMETOOLONG with value -86.

- natfeat/hostfs.h, natfeat/hostfs.cpp: Implemented xfs_readlabel(). From the
  hostRoot path the last folder name is used as the label. If for any reason
  this is not possible (e.g. hostRoot is "/"), then a default label "HOSTFS"
  will be used. This now enables MAGXDESK, which uses Dreadlabel(), to open
  hostfs volumes.


2007/07/22 - Petr
- natfeat/ethernet.cpp: reset() just stops the receiver thread. Now networking
  works even after reboot.

- Unix/aratapif.c: added include <arpa/inet.h> to define inet_aton()

- gui-sdl/dlgNetwork.cpp: added type "None" to not store undefined [ETHx]
  entries


2007/07/20 - Petr
- gui-sdl/dlgNetwork.cpp: new dialog for setting up the networking

- gui-sdl/dlgHotkeys.cpp: hotkey defined with the Enter key means that the
  hotkey is actually just the modifiers (useful for mouse/keyboard ungrabbing
  by combination like Alt+Shift+Ctrl)


2007/07/15 - Stefan
- hostscreen.h: Moved inclusion of parameters.h before SDL header files to solve
  a header file clash when using OSMesa on Mac OS X.

- nfosmesa.cpp: Removed unnecessary inclusion of GL/OSMesa.h.

- nfosmesa.h: Added conditional definition of GLAPI and GLAPIENTRY to solve a
  clash of /usr/X11R6/include/GL/gl.h and
  /System/Library/Frameworks/OpenGL.framework/Headers/gl.h on Mac OS X.

- nfvdi_opengl.h: Removed unnecessary inclusion of glu.h, as this is done
  above already by including SDL_opengl.h. Moved inclusion of parameters.h
  before SDL header files to solve a header file clash when using OSMesa on Mac
  OS X.

- nfvdi_opengl.cpp: Removed unnecessary inclusion of glu.h, as this is done
  above already by including SDL_opengl.h. Removed unnecessary inclusion of
  parameters.h and SDL_opengl.h, which is done already by nfvdi_opengl.h.

- sigsegv_xbsd.cpp: Solved a compiler waring about unused parameter x in
  function segfault_vec().

- compemu_fpp.cpp: Solved lots of compiler warings regarding unused parameters
  and variables. Some warnings regarding signed/unsigned comparations still
  exist.

- compemu_support.cpp: Solved lots of compiler warings regarding unused
  parameters, variables and functions.

- sysdeps.h: Checking for __STDC__ as well as for __cplusplus, as in ISO C++
  __STDC__ is implementation dependant.

- acinclude.m4: Slightly changed the check for framework locations.

- configure.ac: Added ARCHFLAGS, CPU_TYPE and GENSRCS to support the build of an
  universal binary for darwin. For darwin also ISYSROOT is therefore needed.
  Splited generated from existing source files into GENCPUSRCS and GENJITSRCS to
  not include them into dependency generation. Reactivated darwin defines.
  Cleaned up the usage of preprocessor (CPPFLAGS) and compiler flags (CFLAGS,
  CXXFLAGS). Added general JIT support for darwin. Fixed an error in check for
  WANT_SIGSEGV_GOTO. Added a default include path for OSMesa support on darwin.

- Makefile.in:  Fixed the VPATH. Cleaned up the usage of preprocessor (CPPFLAGS)
  and compiler flags (CFLAGS, CXXFLAGS). Fixed the source file name cfgopts.c
  into cfgopts.cpp. Changed the icon for darwin to busybee.icns. Added CPU_TYPE,
  ACHFLAGS, GENCPUSRCS, GEN_DIR and a new target APP_ARCH to support an
  universal binary build for darwin. The tools build68k, gencpu, gencomp and
  cpuopti get always compiled for the host CPU (thus without the ARCHFLAGS), as
  they build executables to generate source files to compile for the target CPU
  again. GEN_DIR and now also OBJ_DIR depend on the target CPU and are used to
  store PPC and i386 generated and object files separately. The clean target has
  been adjusted accordingly. Changed target depend to make it also working on
  Mac OS X, where makedepend is not available. Now CXX is used with option -MM
  to generate the depedencies. This should now work on all systems. To not get
  error messages for not existing files, generated source files are now listed
  in GENCPUSRCS and excluded from dependency generation.

- darwin/Makefile: Added this new Makefile to allow an easy setup for the PPC
  and i386 parts and to finally  generate an universal binary of both.

- darwin/busybee.icns: Added a new icon.

- vm_alloc.cpp: Resolved some compiler warnings if HAVE_MACH_VM is defined.

- bootos_linux.cpp: Resolved a double definition of PAGE_SIZE.

- cdrom.cpp: solved compiler warning by removing OpenDrive(). Inside
  cdrom_interface::insert_cdrom() masterPort now is initialized with 0 instead
  of NULL to remove a compiler warning and omit a cast.

- input.cpp: Added a check on define SWAP_CNTRL_AND_META_KEY in keysymToAtari()
  to swap them or not.

- ndebug.cpp: Put a cast to long double for an fprintf() argument inside
  ndebug::m68k_print() to remove a compiler warning.

- darwin/Info.plist: Updated version, date and link to the homepage.

- darwin/sdl.m4: Added file to support the new darwin/Makefile.

- darwin/SDLMain.M: Cleaned up a little.

- darwin/SDLMain.h: Added methods applicationDidFinishLaunching and
  applicationWillTerminate.


2007/07/11 - Petr
- gui-sdl/dlgDisk.cpp: BTS #1627890 fixed properly by raising the max disk
  size barrier up to 130 GB. Beware - the C/H/S autodetection in the SETUP
  now forces sectors-per-track to 255 (used to be 63) so the geometry
  for existing disks that would be auto-detected changes. Not sure if it
  affects anything but be careful.

- ata.cpp: fixed sector counter overflow for 255 sectors per track


2007/07/11 - Petr
- gui-sdl/dlgDisk.cpp: check for 8 GB barrier (16383/16/63 C/H/S) - thanks
  to mikro_sk's BTS #1627890.

- aranym.spec: "patch" related lines commented out (thanks Martin Tarenskeen)


2007/07/10 - Petr
- MacAranym.xcodeproj/project.pbxproj: fixed by Philipp, version increased

- host.cpp: include dyngl.h only if ENABLE_OPENGL is defined (thanks Olivier)


*** CVS tagged as ARANYM_0_9_5_BETA

2007/07/09 - Petr
- parameters.cpp: compress_path() fixed, now converts absolute paths
  to shortcuts properly.

- Unix/config.{guess,sub}: updated to version 2006-07-02

- NEWS, README, include/version.h, tools/export: updated for new release


2007/07/04 - Petr
- rtc.cpp: check NVRAM related config options upon each reset
  Also fixed NVRAM error in connected VGA/TV monitor (been there since day 1)

- gui-sdl/dlgVideo.cpp: radio buttons cleared correctly now..


2007/07/03 - Petr
- bootos_tos.cpp: check TOS related config options upon each reset

- hostscreen.cpp: get ready for 'refresh' config option on-the-fly changes

- input.cpp: hack for switching between fullscreen/window from the SETUP GUI

- main.cpp: wrong millisecond count for 50 Hz VBL fixed (we used to be
  refreshing the screen at 12.5 Hz instead of 25 Hz since some time)

- gui-sdl: added dialogs for patching TOS and for Video settings. Most of the
  settings require reboot to have some effect and some even cause crashes
  when changed on-the-fly. Interesting. The autozoom options were added
  in the hope that it finally helps to get documented how they affect the
  nfVDI resolution (rumours say that fVDI settings are overriden by this).


2007/06/23 - milan
- fpu: Bill Allombert's patch for inaccurate sin/cos/tan insns of x87 FPU


2007/06/21 - Petr
- fixed a bug in TOS conout redirection


2007/05/10 - Standa
- hostfs.cpp: symlink resolution buffer size glitch fixed and cleaned up

- nfvdi_soft.cpp: mfdb.fd_stand extension meanings changed to be bit flags
  (instead of 0x100 being a value itself as was before used for fVDI
  antialiased fonts):
		  0x0100 chunky expandArea
		  0x1000 fd_wdwidth contains number of bytes instead ofwords
  Those are used in the aranymfb I have implemented for Linux-m68k (patch
  to be published).


2007/04/02 - Petr
- videl.cpp: a fix from hatari by Thothy: ST-Shifter register is byte wide
- cpummu.cpp: Roman fixes 8 kB page mode and adds a flush to set_tc.


2007/03/29 - Petr commiting patch by Roman
- cpummu.cpp: the writeback data was written to the wrong location
	      as the pointer was modified.


2007/03/18 - Andreas
- fpu_uae.cpp: Make dump_first_bytes a real nop when !FPU_DEBUG.


2007/03/17 - Andreas
- memory.h: Change return type of test_ram_boundary to bool and
  always define it.

- newcpu.cpp: Call mmu_set_super in m68k_reset.


2007/03/17 - Petr commiting patches by Roman Zippel - thanks!
- newcpu.[cpp|h], gencpu.c: bitfield instructions fixed (were reading a bit
  too much). Also wrap around of bitfields in registers has been fixed.

- cpummu, newcpu, memory.h, registers.h: new core of the mmu atc cache.
  It's now a two level cache. The first level cache is optimized for speed
  (and actually consists of subcaches for read/writes, super/user,
  instruction/data), while the second level is a bit larger and tries to take
  alias issues a bit into account.

- configure.ac: FIXED_VIDEORAM not required for MMU mode. SDL_image
  added to SDL_LIBS instead of LIBS.


2007/02/18 - Andreas
- Repair SDL_image configuration.


2007/02/04 - milan
- JITc: 33 bit addressing hack removed, other 64-bit fixes (CMOV, SAHF),
	code based synced with Basilisk II

- distributed dispatcher removed, not used at all

- cpummu.cpp now included in all CPU modes


2007/02/02 - Petr
- MMU optimizations by Roman Zippel. MMU translations cached for speed up.


2007/01/29 - Philipp
- Existence check of MacOS X frameworks.


2007/01/27 - Patrice
- Move path related definitions from CXXFLAGS to config.h file.


2007/01/08 - Philipp
- Partially fixed background restore for mouse cursor when it's close to right
  or bottom border.


2007/01/06 - Patrice
- Move AC_ defined functions from configure.ac to acinclude.m4
- Thread related CFLAGS are already defined in SDL_CFLAGS
- OpenGL library is now dynamically loaded (no more statically linked). It also
  requires SDL>=1.2.10 to be able to revert to default system one.


2006/12/31 - Philipp
- parameters.cpp: fixed loading of data files relative to config file location.


2006/12/30 - Philipp
- nfvdi_opengl.cpp: Disabled interpolation for mouse cursor. Cursor is now drawn
  with correct size (16x16 instead of 15x15).


2006/12/29 - Philipp
- nfosmesa.cpp: Added Darwin/Mac OS X specific enhancement which allows loading
  of libGL and libOSMesa libraries relative to binary executable location
  instead of bundle location.

- configure.ac: disabled testing for SDL_image, as this way of testing fails
  always on Mac OS X. A new framework aware way of testing has to be found.
  Removed modification of CFLAGS, CXXFLAGS and LIBS after SDL check.

- Makefile.in: Added references to SDL_CFLAGS, SDL_CXXFLAGS and SDL_LIBS
  variables to corresponding CFLAGS, CXXFLAGS and LIBS.

- parameters.cpp: bugfixes concerning loading and saving of Path_Tag variables.
  The ~, * and config file relative path expansion and compression (when saving)
  is now done in the corresponding postload_xx() and presave_xx() functions.

- README_Xcode.rtf: added description on how to add support for additional
  NatFeats (NFOSMESA and NFJPEG) to the base project.


2006/12/26 - Patrice
- MinGW: sigaction() does not exists.
- cygwin: sometimes, audio callback is called before host is defined.
- misc: only include <cassert> when needed


2006/12/20 - Patrice
- nfobjs: Add function to search a NF driver by name, use it in input for NFVDI.


2006/12/19 - milan
- cxmon support removed, not used for years

- gdbstub removed, not finished for years

- Unix/solaris/sigsegv_solaris_x86.cpp: Solaris x86 extended segfault handler
  (JITc support)


2006/12/14 - Philipp
- Changed use of compiler defined CPU macros __i386__, __x86_64__, __powerpc__
  to their corresponding CPU_i386, CPU_x86_64, CPU_powerpc macros. This is a
  necessary step for cross-compilation, as some CPU sources are automatically
  produced (build68k, gencpu). They should take the target CPU type into account
  and not the CPU type of the current host!

- cfgopts.cpp: When saving the configuration on a Mac OS X system, the temporary
  file is created in /tmp instead of the current directory (path to
  application), as this directory is in general not writable on Mac OS X.
  This option could also be enabled for other Unix based systems.

- src/Unix/MacOSX/*: Added new project file for Xcode 2.x used to build
  Universal binaries of MacAranym.


2006/12/14 - Patrice
- nfvdi is disableable if needed.

2006/12/13 - Philipp
- nfvdi_opengl.cpp: Fixed bug which made Mac OS X crash on gluDeleteTess() even
  though no tesselation object was created.

- hostscreen.h: Changes to remove warnings and errors when compiled on Mac OS X
  with enabled OpenGL.


2006/12/07 - Philipp
- Updated Xcode 1.5 project (=compiles again). Modifications to support dynamic
  ARAnyM home directory (configurable in Info.plist file).


2006/12/05 - Philipp
- nfvdi_opengl.cpp: Fix of not-endianness-aware alpha channel clearing, which
  made Kronos fail to detect screen format on Mac OS X with OpenGL fVDI driver
  enabled.


*** CVS tagged as ARANYM_0_9_4_BETA2

2006/11/27 - Andreas
- uae_cpu/fpu/fpu_ieee.cpp: Fix conversion of extended zero/Inf/NaN to
  host format.


2006/11/27 - Petr
- natfeat/ethernet.cpp, parameters.*: "MAC=aa:bb:cc:dd:ee:ff" added to
  [ETHx] section of config file - set your desired MAC Address freely now.


2006/11/26 - Andreas
- uae_cpu/fpu/fpu_{uae,ieee}.cpp: Fix aliasing issues.


2006/11/26 - Standa
- nfvdi_soft.cpp: Fixes for different vswr_mode alpha expansions
  (newsgroup reader Troll look good now).


2006/11/25 - Standa
- nfvdi_soft.cpp: Other then 4 byte per pixel color depth is unsupported
  for the 8bit alpha expand mode used by fVDI antialiasing renderer.


2006/11/22 - Xavier
- uae_cpu/cpummu.cpp: Reverting back to previous state. This is not a bug
  since instruction is not restarted if access fault is caused by a write.


2006/11/21 - Xavier
- uae_cpu/cpummu.cpp: Restore memory to its original state when a misaligned
  memory write accessing 2 different pages generates an access fault on the
  2nd page. Should fix potential problems with read-modify-instructions like
  NOT, NEG, ADD, SUB,...


2006/11/18 - Petr
- Xavier's patch fixes the following instructions that probably misbehaved
  when restarted due to bus error: MOVE, RTR, SBCD, SUBX, ABCD and ADDX.

- Bill Allombert's patches fix several FPU emulation errors: FCMP (Octave
  didn't even start), FETOX and ATANH (the latest fixed by correcting
  function fp_sgn1()).


2006/11/13 - Petr
- parameters.cpp: there is no reasonable default filename for files that
  will aranym write to thus MIDI filename set to empty and PARALLEL
  outputs back to stderr.

- parallel_file.cpp: make sure Type is set to "file" before creating
  the file. This allows for Type = none like in MIDI. Also ensure
  filename is not empty.

- midi_file.cpp: ensure filename is not empty.

- natfeat/nfaudio: implemented simulation of locking. At least the Locksnd()
  and Unlocksnd() XBIOS calls should return proper values now.

- parameters.cpp: in [LILO] Kernel and Ramdisk made Path_Tag (filenames
  might be relative or contain the "~").


2006/11/11 - Andreas
- uae_cpu/gencpu.c: Perform pre-decrement side effect only after fetching
  the value from memory.


2006/11/11 - Patrice
- main,hostscreen: Move video refresh stuff from main to hostscreen.
- input: Use const reference to process events.


2006/11/10 - Petr
- uae_cpu/gencpu.cpp: fixed RTD insn emulation bug (same problem as the LINK
  insn below). According to a careful review at least 10 MOVE insns are
  still affected by this CPU emulation problem on an unmapped memory page
  boundary (op_11d8_0, op_11e0_0, op_13d8_0, op_2158_0, op_2160_0, op_21d8_0,
  op_21e0_0, op_23d8_0, op_23e0_0, op_33d8_0)


2006/11/10 very a.m. - Petr
- uae_cpu/gencpu.cpp: fixed LINK insn bug - in MMU mode, when restarted due
  to fetching its operand from an unmapped memory page it decremented
  the stack pointer twice.
  This was causing all sorts of weird crashes in Linux-m68k.
  Similar fix is likely needed for all CPU instructions...

- ndebug.cpp: running with debugger active made much faster


2006/11/06 - milan
- ndebug.cpp: roll back of Joy's 23rd October
- debug.cpp: roll back of Joy's 23rd October
- CPU debugger is primary for CPU and key OS functions debugging


2006/11/02 - Petr
- parameters.cpp: store IKBD settings to [IKBD] section in config file


2006/10/28 - milan
- ndebug.*: const char declarations in debug printfs
- cfgopts.h: const char declaration of option name
- natfeat/hostfs.cpp: new Solaris versions support struct statvfs
- changes around header files on many places - aranym header files included
  at first


2006/10/23 - Petr
- newcpu.cpp: "usp" register dump added to flight recorder
- debug.cpp: ignore_irq set to 1 by default (don't trace interrupt routines)
- ndebug.cpp: deactivate_debugger on 'g' (so you can enter debugger again).
	      this breaks breakpoints support


2006/10/22 - Petr
- uae_cpu/debug.cpp: reformatted using Artistic Style v1.18 using
  the following switches: "--style=kr --indent=tab=4 --brackets=linux
  --brackets=break-closing-headers --indent-cases".
  Also added a simple command prompt prefix: 'i'=fire IRQs while in debugger,
  'I'=ignore IRQ routines while tracing.

- input.cpp: fixed invoking of internal debugger by pressing the hotkey


2006/10/20 - Petr
- uae_cpu/fpu/types.h: "Fix long double support for x86 targets if
  -m128bit-long-double" - taken from Basilisk II CVS.

- input.cpp: Flight Recorder is enabled by pressing the right Shift
  and disabled by pressing the left Shift key.

- uae_cpu/newcpu.cpp: fixed flushing of the flight recorder buffer
  if driven by hotkeys. Also pre-set more reasonable defaults to
  FRLOG_XXX defines.


2006/10/12 - Petr
- added third MIDI type: 'none' and made it default to avoid creating
  the /tmp/aranym-midi.bin file if there is no MIDI output.

- bootos_linux: added the RESET instruction before the first kernel boot
  in order to properly initialize hardware. Fixes bug #1543599

- aranym.spec: David Bolt continuously improves the spec file - now it
  builds the RPM for SUSE, RedHat and also Mandriva and includes
  desktop entry (aranym.desktop, added to CVS) and an icon.


2006/10/11 - Petr
- ikbd, rtc: switch between localtime() and gmtime() (returning UTC).
- parameters, doc/config: new parameter "GMTime" set to No by default.


2006/10/09 - Petr
- configure.ac: after some profiling (http://wiki.aranym.org/speedtest)
  I decided to enable protect2k by default for better compatibility
  with real Atari hardware. Also the cxx-exceptions are enabled by default
  now for non-SIGSEGV memory boundary checks. They bring a major speed up
  to MMU mode (up to 60% in the speed test mentioned above).


2006/09/29 - Petr
- main_unix.cpp: QuitEmulator didn't actually quit the program which was
  causing troubles mainly when no operating system was found (i.e. when the
  InitAll() failed).

- input.cpp: InputExit() added as counterpart to InputInit() - it releases
  the input focus.

- main.cpp: free input focus grab in ExitAll() by calling InputExit() -
  if the ExitAll() freezed somehow (like by calling SDL_CloseAudio, for
  example) this would at least let the user control their desktop...

- Unix/cygwin/parameters_cygwin.cpp: getHomeFolder() and getDataFolder()
  ignore Cygwin environment now. Home is in Windows user's home (usually
  somewhere below Documents and Settings), data is where the ARAnyM's
  executable resides.
  Based on patch by Blaine Brysh (bbrysh at shaw.ca). Thanks.

- main_unix, linux/sigsegv_linux_x86: remove_signal_handler (restore original
  sigsegv handler if there was any) right after the CPU emulation finished.
  This is another improvement for a possible crash in QuitEmulator that
  would now let SDL to clean itself (SDL parachute).


2006/09/26 - Patrice
- main.cpp: Pause audio before killing hw then host classes.


2006/09/24 - Petr
- GNU/kFreeBSD support in configure.ac thanks to Petr Salinger. Closes Debian
  BTS #388995 and also ARAnyM's patch request #1549200.


2006/09/22 - Patrice
- midi: Splitted in base class and implementation class (file output atm).
  Added /dev/sequencer output class for Linux.


*** CVS tagged as ARANYM_0_9_4_BETA

2006/09/22 - Petr
- main.cpp: CapsLock in newer libsdl worked differently in MS-Windows than
  on my setup. Took me quite some time to figure out that the Debian's
  libsdl is patched with a fix for CapsLock+NumLock (see Debian BTS #317010).
  Wish this fix was in upstream but until it's there ARAnyM must contain
  a workaround that basically disables this fix in Debian's libsdl.

- configure.ac, Makefile.in, natfeat/*: --enable-nfclipbrd added. Allowed
  in cygwin only since there is now implementation of Clipboard
  interconnection for MS-Windows only.

- doc/config: TuneAlignment, TuneNOPfill removed;
  BootstrapArgs, JITInline added.

- doc/aranym.1: man page updated (-P added), project URL corrected

- doc/aranym-jit.1, aranym-mmu.1, aratapif.1: new manpages added

- aranym.spec: thanks to David Bolt the spec file does not try to build
  the JIT version on 64bit system (which caused the whole build to fail).

- aranym.spec, README, NEWS, TODO, version.h: updated for release


2006/09/14 - Standa
- main.cpp: hack for cygwin vs. MinGW SDL_put(get)env mismatch workaround
  added.


2006/09/09 - Patrice
- Videl: copy high bytes of color component to lower bytes, to make white
  really white. STE has 4bits/component, hence 0xf was 0xf0, Falcon has
  6bits/component.


2006/09/04 - Patrice
- Midi: don't bufferize data.


2006/08/31 - Philipp
- Check global bootdrive variable before saving and after loading config file:
  it should always be a printable ASCII value. (0 is not acceptable)


2006/08/29 - Petr
- ARAnyM window positioning code moved from hostscreen.cpp to main.cpp,
  changed from platform specific window manager hacks to documented SDL
  environment variables and changed the command line option to "-P xxx,yyy"
  or simply "-P center" for centered window. This also removes the problematic
  stuff in configure.ac for detecting X11 library I added recently.

- Linux/m68k now reboots properly (before ARAnyM died with double bus error).
  Problem lied in missing 'virtual' keyword in definition of 'reset' function
  in parent class (BootOs). Beware! This inheritance trap can be hard to spot.

- emul_op: implemented new M68K_EMUL_OP_RESET instruction that calls the
  BootOs::reset function and basically reloads the linux kernel into RAM.

- bootos_linux: created a simple OS init routine for successful Linux/m68k
  reboot (the kernel jumps to $e00030). Makes use of M68K_EMUL_OP_RESET.


2006/08/29 - Patrice
- midi: output midi as raw values.


2006/08/29 - Philipp
- Repaired Mac OS X project file. Now compiles under Xcode 1.5 and can be
  upgraded to Xcode 2.4 (by ignoring the "path empty" error message).
  Some changes as suggested by Francois. Slight reorganization. Added README.txt
  Still has to be tested in relation to previous binary releases.

- Updated autogen.sh script to stop if configure step fails. So it's easier to
  spot the error message and one doesn't get the idea that everything is OK!

- Swapped meaning of CTRL and META key for Mac OS X back to "the logical way":
  The Apple key(s) represent left and right meta key and CTRL key is mapped to
  Atari CTRL key. ALT was already mapped to Atari ALT.

- A new, more Mac like set of keyboard shortcuts defined:
	Left Apple + , = Open preferences dialog
	Left Apple + q = Quit
	Left Apple + r = Reboot
	Left Apple + escape = Grab/Ungrab mouse cursor
	Left Apple + d = Enable debugger (if built-in)
	Left Apple + s = Save screenshot
	Left Apple + f = Toggle fullscreen mode

  As you see, I wrote "Left Apple" because you can't define a hotkey to use
  "any" Apple key. This is a limitation of the current way how hotkeys are
  defined.


2006/08/25 - Philipp
- Various smaller corrections:
   cdrom.cpp: Corrected some compiler warnings and include statements for OS X
   cfgopts.h: Added C++ compiler check to avoid compile errors when included
	      from Objective C files.
   parameters.h: Added C++ compiler check and removed parse error when included
	      from Objective C files.
   compemu_support.cpp, sysdeps.h: added correct PowerPC detection on Mac OS X
	      systems.

- hostscreen.h: Fixed p2c routine for big endian, colors are now correct.


2006/08/25 - Patrice
- mkdir() also works for Darwin
- Fixed hostscreen p2c routines on big endian, from Philipp Donze patch.


2006/08/25 - Petr
- memory.h: finally found and fixed two (hopefully last) MMU problems.


2006/08/10 - Patrice
- HostFilesys::makeDir() now accepts permission flags, to be used by hostfs nf.

- Disable hardware surface usage, to avoid locking the screen too frequently.
  Seems to be the only cause for slowness on MacOSX when not using OpenGL.


2006/07/17 - Patrice
- MinGW does not have mkdir() with permissions.


2006/07/13 - Standa
- input.cpp: fixing bug #1521310: Shifters are now released before the
  GUI thread is started.

- hostscreen.cpp: Trying to fix the toggle fullscreen. Updating the
  screen after toggle so that it doesn't stay black. Also calls
  setWindowSize() to set everything correctly. It works for me now.


2006/07/12 - Patrice
- MinGW does not have gettimeofday() function.


2006/07/10 - Petr
- hostscreen.cpp: window positioning surrounded with an additional
  SDL_VIDEO_DRIVER_X11 condition

- configure.ac: check for X11/Xlib.h is skipped for MacOSX that has the
  include file available but does not use X11 for the gfx output.
  Proper fix would probably be to rely on the SDL_VIDEO_DRIVER_X11 define
  even in the configure...


2006/07/10 - Petr
- hostscreen.cpp: window positioning surrounded with #if HAVE_X11_XLIB_H
- configure.ac: check for X11/Xlib.h added (for the window positioning)
- parameters.cpp: "-P" documented in the --help


2006/06/25 - Petr
- hostscreen.cpp: ignore window positioning on OS_darwin - that one does not
  offer any SDL_SysWMinfo struct. Patch suggested by Philipp Donzé, thanks.


2006/06/05 - johan
- nfvdi_opengl.cpp: Corrected alpha mask when blitting from screen to memory.


2006/06/01 - johan
- hostscreen.h: Major speedup for bitplane to chunky conversion.
		Deactivated on big endian CPUs due to bit order differences.


2006/05/30 - Andreas
- natfeat/atari_rootsec.h: Fix definition of fixed size integers.


2006/05/08 - Petr
- hostscreen.cpp: implemented window positioning for X11. Needs clean up.
- parameters.cpp: window positioning no longer cygwin specific.
- uae_cpu/newcpu: Flight Recorder more configurable (see the FRLOG #defines)


2006/05/08 - milan
- JITc: cleaning, sync with BII


2006/05/05 - Petr
- uae-cpu/newcpu.cpp: improved Flight Recorder. Now can dump to a continuous
  log, skip interrupt handlers, omit register list and most important -
  it does not hang the OS when fetching the OPCODE like it used to do
  regularly.

- uae-cpu/compiler/compemu_support.cpp: adapted for passing opcode into
  flight recorder. NB! One place is unfinished - line 6710 - I don't know
  how to pass in the opcode as second parameter, sorry.


2006/05/01 - Petr
- uae-cpu/memory.h: added #ifdef PROTECT2K that brings more ST/TT hardware
  compatibility to ARAnyM. When defined it protects the first 2 kB of RAM
  against read/write access in user mode. It's disabled by default
  mainly because it will kill some performance when activated.

- configure.ac: --enable-protect2k added. It's not enabled by default
  (see above, performance reasons) but it gets enabled as soon as you
  opt for full MMU emulation. In such case the additional performance
  loss will not be noticeable and it will add to more complete real HW
  emulation.

- uae-cpu/newcpu.cpp: changed the order of initialization in m68k_reset()
  otherwise the PROTECT2K falls into a recursive death. It might also
  fix the problems with rebooting with active MMU (I think it used to crash).


2006/04/13-30 - Standa
- Cygwin build: Clipboard NatFeat added. This is to be used by
  a m68k side filesystem to be committed soon.

  One would need to point the GEM environment to it by setting the
  SCRAPDIR or CLIPBRD variable in most AES configs. It is good
  to know that e.g. Thing overrides this setting with its own.
  So one need to configure Thing to the appropriate folder.


2006/04/03 - Standa
- A new BootstrapArgs [GLOBAL] section config argument that is provided
  through the BOOTSTRAP NF to EmuTOS which passes those to the kernel
  as command line arguments. This allows us to boot without the need
  of mint.ini.

  E.g. this boots directly without even showing the bootmenu:
  Bootstrap = ~/mint/freemint/sys/.compile_arad/mintarad.prg
  BootstrapArgs = DEBUG_LEVEL=1 BOOT_DELAY=0 MEM_PROT=NO
  BootDrive = C


2006/03/27 - Standa
- In MS Windows the window position can now be set using a command line
  argument [-P xpos xpos]. No config file entries added yet.
  The command line args are read into bx_options.video.[xy]_win_offset values.


2006/03/03 - Patrice
- nfosmesa.xdd: fixed NF pointer read for MiNT device.


2006/02/27 - Petr
- tools/build-cygwin.sh: version of SDL increased to 1.2.9
- include/host_clock.h: virtual destructor added
- parameters.cpp: anonymous struct named HOTKEYS_REL


2006/02/26 - Standa
- nfvdi_soft: the remaining logical operations implemented for the
  8bit alpha expand. Adjusted to work in all TC (16bit-32bit) modes.


2006/02/21 - Standa
- nfvdi_soft: expandBitmap() now alpha expands 8bit chunked
  (mfdb_standard = 0x0100)  data


*** CVS tagged as ARANYM_0_9_3_BETA

2006/02/20 - Petr
- atari/*: binaries moved to a separate 'afros' CVS repository
- atari/fvdi: removed completely (now hosted in fVDI CVS repository)
- natfeat/fvdidrv_nfapi.h: added from fVDI CVS
- natfeat/nfvdi.cpp: renamed FVDI_TEXT enum to FVDI_TEXT_AREA (to match
  the fVDI CVS)
- src/Unix/Makefile.in: updated to not install the missing binaries
- doc/*.html: documentation moved to http://wiki.aranym.org/
- aranym.spec, README, NEWS, TODO, version.h: updated for release


2006/02/12 - Andreas
- Support compiling outside source directory.


2006/02/11 - Patrice
- nfcdrom: Merged SDL backend into base class as default implementation.


2006/02/11 - Petr
- tools/arabridge: added chown $USER /dev/net/tun


2006/02/08 - Standa
- BOOTSTRAP NF added. Using this the EmuTOS bootstraps the e.g. the FreeMiNT
  kernel directly (without having to have any boot floppy or HDD image).
  More information to come later (not all info is in CVS for all parts ATM).

  Two new [GLOBAL] section config entries introduced:
  Bootstrap = path/to/the/kernel
  BootDrive = X


2006/02/08 - Patrice
- Merged bootos_linux and lilo.


2006/02/06 - Standa
- atari/hostfs and atari/network/ethernet .xfs and .xif stuff moved to the
  FreeMiNT CVS. The BetaDOS and src dependencies stay in their spots for now.
- atari/tools/devdos: Fixed a critical bug in the path2cookie() function.
  Now it appears to be quite stable (the fix was actually done on 2006/02/05).


2006/02/05 - Andreas
- uae_cpu/cpummu.cpp: Fix parameters of mmu_bus_error.


2006/02/04 - Patrice
- BootOs files split in parts for each bootable OS. Will merge bootos_linux
  and lilo later.


2006/02/04 - Standa
- atari/network/ethernet: updated to use nf_ops.h
- atari/network/natfeat.h removed as an obsolete file
- atari/hostfs: All the BetaDOS related code and ifdefs are now isolated
  in the metados folder only. atari/hostfs files are basically ready to go
  to the FreeMiNT cvs if we decide to do so. I also did a global aranym
  -> hostfs replace as the source is not really aranym specific.


2006/02/03 - Patrice
- atari/nfpci, atari/nfosmesa, atari/nfosmesa.xdd: updated for new nf_ops.h.
- Disable check for SDL_LoadObject function in configure, it is present in
  SDL>=1.2.6. The check fails on MacOSX for some different linker flag.
- Created an host clock class to encapsulate SDL/Unix time functions.


2006/02/01 - Patrice
- atari/nfcdrom, atari/nfjpeg: updated for new nf_ops.h


2006/01/20 - Standa
- atari/natfeat: the natfeat.h is now deprecated. A new nf_ops.h has been
  taken from the FreeMiNT (freemint\sys\mint\arch\nf_ops.h) and adjusted for
  out of mint cvs tree use.

- atari/nfstderr: converted to use the new nf_ops.h (nf_init() used to detect
  NFs and the returned 'struct nf_ops' pointer to call the features). Also
  there is the freemint\sys\xdd\nfstderr folder containing the .xdd equivalent
  of this driver for FreeMiNT. A great example how to do basic device driver
  for TOS as well as for FreeMiNT with almost the same code.

- atari/hostfs: uses nf_ops.h now.
  Binaries and further documentation is coming soon.


2006/01/29 - Standa
- atari/nfstderr: nfstderr.bos driver that provides write using the NF_STDERR
  NatFeat.

- atari/tools/devdos: dev.dos driver that provides a filesystem with all the
  .bos drivers mounted. Using this you can use 'cat x.txt x:\dev\nfstderr'
  also in TOS.
  This dev.dos is generic in the sense that it doesn't depend on aranym in
  any way.


2006/01/29 - milan
- cpummu.*, configure.ac: configurable size of ATC

- JITc: fix stack alignment, m68k_compile_execute moved to JITc, sync with BII


2006/01/28 - Petr
- configure.ac: Ingo Schmidt found out that --enable-blitsdlblit binary
  crashes with double bus fault. Thus this option is marked as EXPERIMENTAL
  UNSUPPORTED and BUGGY. It should probably be either fixed or removed.

- Makefile.in: Ingo Schmidt found out that install phase fails when it is
  copying the aratapif binary. Fixed by adding one white space after 'then '.


2006/01/27 - Patrice
- aranym from scratch: started MiNT section.


2006/01/26 - Standa
- hostfs: dirent.d_ino was deprecated in the latest cygwin version. The
  stat.st_ino has to be used now.


2006/01/26 - Patrice
- host: Don't need to dynamically create HostAudio object.
- Created HostFilesys class for system-dependent paths functions.


2006/01/23 - Patrice
- host: Added reset() method for host stuff.


2006/01/20 - Patrice
- host_audio: Remove useless/crash prone num_callbacks related stuff.


2005/12/30 - Patrice
- Renamed AUDIO class to more accurate HostAudio class.
- Created a Host class, and put HostAudio in it.


2005/12/29 - Patrice
- Created aranym exception class for future classes that need exceptions.
  Also now it can be created with variable list of arguments like printf().
- BootOs uses it now.


2005/12/27 - Standa
- hostfs: fixing f2astrcpy() function migration bug. PureC now works under
  MiNT again as expected.


2005/12/26 - Patrice
- hostscreen: remove unneeded inclusion of glext.h, use included SDL one.


2005/12/18 - Patrice
- nfvdi_opengl: fixed getpixel() operation regarding host endianness. Reversed
  byte order for blits operations on big endian systems, so that GL_BGRA reads
  or writes ARGB pixels. Done for both 16 and 32 bits per pixel.


2005/12/12 - Patrice
- Filled ARAnyM specific drivers section a bit.


2005/12/11 - Patrice
- Renamed rom class to bootos, exceptions reenabled in configure.ac.
  New BootOs class used in main.


2005/12/10 - STanda
- autogen.sh: rollback to -r 1.9. You should use ACLOCAL_FLAGS to set the
  include path (to whatever folder the sdl.m4 is in using -I /path/to/sdl.m4)


2005/12/09 - Patrice
- Added Rom class and derivatives for TOS, EmuTOS and Linux. For now, this is
  disabled till a solution is found to use C++ exceptions along with JIT. Also
  if you want to try, add rom.cpp to $(SRCS) in Makefile.in, and #define
  ENABLE_CXX_EXCEPTIONS in main.cpp.

  The goal was to remove ROM/OS loading/init stuff out of main.cpp. Also, when
  resetting with TOS, the MD5 was failing because TOS was patched for ARAnyM.
  Both are nicely fixed with such a class.


2005/12/07 - STanda
- parameters: do not screw up all hotkeys if the HOTKEY config section doesn't
  exist


2005/12/04 - Patrice
- rtc: added method to read nvram keyboard setting (for future planned stuff
  in input).


2005/11/24 - Andreas
- parameters.cpp: Fix aliasing violation and format string.


2005/11/20 - Patrice
- Started 'ARAnyM from scratch HOWTO'.


2005/11/14 - Stefan
- ChangeLog: Updated ChangeLog with missing informations.
- aranym.html: Updated documentation of MaxOS X specific parts.
- configure.ac: Changed name for configurations files to
  org.atari.aranym.conf, org.atari.aranym.nvram and org.atari.aranym.keymap.
- input.cpp: removed unneded "#ifdef darwin" for command and control key
  change, the function was already specific to darwin.
- nfvdi_opengl.h: Changed include of GL/glu.h to OpenGL/glu.h for darwin.
- nfvdi_opengl.cpp: Changed include of GL/glu.h to OpenGL/glu.h for darwin.
- hostscreen.cpp: Changed include of GL/glu.h to OpenGL/glu.h and GL/glext.h
  to OpenGL/glext.h for darwin.


2005/11/10 - Patrice
- dsp_disasm was not building, fixed.

- nfpci: make linux driver better subclass of nfpci, now when nfpci enabled,
  you have a default null nfpci driver for non linux systems.


2005/11/8 - Stefan
- Makefile.in: Removed building of ARAnyM.app/Contents/ARAnyM data folder,
  in order to give precedence to Library/Application Support/ARAnyM by
  default
- configure.ac: Fixed typing error of SDLMain.M file.


2005/11/7 - Stefan
- Makefile.in: Added targets to build an application bundle for MacOS X.
  Added suffixes .m and .M to also compile Objective C and Objective C++
  sources, which are needed to build the darwin port.
- configure.ac: Splited  EXTRASYSSRCS and DEFINES for darwin with fink and
  without. Without fink now the source files parameters_darwin.M and
  SDLMain.M below src/Unix/darwin/ get compiled and the defines now include
  ARANYMCONFIG, ARANYMNVRAM, ARANYMKEYMAP and ARANMYHOME. For darwin without
  fink now also the target changed to APP_BUNDLE in order to build an
  executable MacOS X application bundle.
- autogen.sh: Added -I $PWD to aclocal command. This solves trouble with
  missing macro definitions from sdl.m4, if this file is just copied into the
  same directory.
- parameters.h: Put #ifndef around the definitions of ARANYMCONFIG,
  ARANYMNVRAM, ARANYMKEYMAP to be able to define their values via
  configure.ac.
- input.cpp: Switched behaviour of command and control keys for darwin. So
  under MacOS X normal shortcuts are done as usual with the apple key also for
  Atari/GEM applications.
- parameters_darwin.M: Objective C code to define versions of the functions
  getHomeFolder(), getConfFolder() and getDataFolder(). They return usual
  MacOS X pathes like ~/Library/Preferences/ and  ~/Library/Application
  Support/ARAnyM or a path inside the bundle itself for the configuration
  files.
- Info.plist: Updated version informations to 0.9.1alpha. With each official
  release the version information should be updated. Can this be done
  automatically by the build system?
- SDLMain.M: Completely cleaned up the source code and removed unnecessary
  parts.
- English.lproj/aranym.nib: Renamed the resource file from SDLmain.nib to
  aranym.nib. Made changes to connect menu entries to according functions in
  SDLMain.M.
- German.lproj/aranym.nib: Made a german port of the resources.
- aranym.pbproj: Updated the XCode project to compile also with the changed
  Makefile.
- memory.h: Removed unnecessary define of do_get_real_address for darwin port.
- fpu_uae.cpp: Added some defines and using a namespace to overcome
  compatibility problems with names inside cmath and cstdio.


2005/10/24 - Andreas
- Makefile.in: update install target for removal of doc/documentation.txt.

- ata.cpp: fix use of uninitialized variable.


2005/10/20 - Petr
- mfp.cpp: compute real TimerC frequency (linux-m68k uses 100 Hz, not 200 Hz)
- main.cpp: use the real TimerC frequency for correct time in linux-m68k
- configure.ac: "--enable-rtctimer" added. Enables /dev/rtc as main
  source of timer interrupts. Allows for precise 200 Hz Timer A interrupts.


2005/10/18 - Petr
- acsifdc.cpp: corrected detection of floppy format in linux-m68k by
  reporting RECORD NOT FOUND when linux tried to read more sectors
  than there are on a track (linux tries to read 20, HD floppy has 18 spt).
  Also added some more heuristic so ARAnyM is now able to detect any
  floppy format with 80 tracks (DD/HD/ED, and also non-standard 10,11 and
  20,21,22 sectors per track).

- parameters.cpp: save only those multiple items ([PARTITION1-7], [ETH1-4])
  that are not empty (to save some space in the config file).


2005/10/16 - STanda
- hostfs: a little rollback (FS_EXT3 extensions removal) as it caused
  problems with required timezone settings (not easily possible for
  BetaDOS and FreeMiNT without mintlib-timezone package).

  * New .dos and .xfs drivers are in atari/hostfs/bin


2005/10/16 - Petr
- aranym/atari/network/ethernet: updated for multiple interfaces. Tested.
  Driver (version 0.6b) now prints all found and installed interfaces.
  Updated also the binary (aranym.xif.bz2).

- parameters.cpp: default ungrab changed to left Alt+Ctrl+Shift

- TODO: updated with useful comments


2005/10/13 - Petr (& Standa :-)
- natfeat/ethernet.{cpp,h}: wildly modified to allow handling more
  ethernet devices at once.

- atari/network/ethernet/ethernet_nfapi: NFAPI version increased (XIF_IRQ is
  handled differently now to allow for more ethernet devices)

- atari/network/linux-m68k/*: linux-m68k kernel driver for our NF Ethernet

- Unix/linux+Unix/cygwin: Handler() ctor now takes ethX parameter that is
  used internally in receiveFunc for setting up proper interrupt bit mask.

- multiple ETHx sections in config file possible now (up to four currently)

- atari/network/ethernet: FreeMiNT driver updated (including binary) to
  version 0.6 (copes with the new NFAPI but doesn't offer multiple
  ETH interfaces yet).

- ethernet type renamed from "ppp" to "ptp" (point-to-point)

- ARAnyM and linux-m68k kernel driver tested with two concurrent network
  interfaces. Cool! Code updated to handle up to 8 interfaces :-)

- atari/network/linux-m68k/README: detailed HOW-TO build the NF enabled kernel


2005/10/12 - Petr
- acsifdc.cpp: Atari2Host_memcpy() replaced with plain memcpy(). Previous
  code was incorrect because real ACSI DMA doesn't respect MMU.

- uae_cpu/cpu_emulation.h: Atari2Host_*/Host2Atari_* functions modified
  to allow easy switching between MMU aware/ignoring NatFeats.

  NatFeats switched to non-MMU mode. This makes it incompatible
  with the NatFeat patch for linux-m68k kernel published in August.

- include/version.h: version number changed to warn linux-m68k users
  that available aranym linux kernel will not work with this aranym.

- gui-sdl/sdlgui.cpp: MIN() defined by including #tools.h

- NF based functions moved from cpu_emulation.h to natfeats.h

- audio.cpp, audio_dma.cpp, cpummu.cpp: hidden warnings about unused
  variables.

- configure.ac: C++ exceptions disabled by default. They are causing serious
  startup lockups. It might be caused by particular gcc version, or C++ lib
  version, or something else. We don't know for sure.
  Use ./configure --enable-cxx-exceptions if you want to try it out.


2005/10/05 - Petr & STanda
- input.cpp: the Alt Gr key might be reported as SDLK_MODE, not SDLK_RALT.
  Fixed. Now Alt Gr works for more people :-)


2005/10/01 - milan
- uae_cpu/newcpu.cpp: flight recorder stores the 1st word of instruction


2005/09/27 - Patrice
- various places: include "host.h" instead of redefining hostScreen extern.


2005/09/26 - STanda
- atari/hostfs/metados: warnings removed

- atari/hostfs: Cleaned up the m68k part so that the Dcntl() is now used
    to mount filesystems (which only works as expected in FreeMiNT
    kernels 1.16.x since Apr 10 2003).

  . Added the FS_NOXBIT filesystem flag back so that whatever is readable
    is also executable from the kernel point of view (not x permission
    is visible though on the files).

  . NF API extended (the version is 0.4 now): You will need to use older
    aranym build to update the drivers and after that boot using the
    CVS aranym binary to be able to mount drives properly.

- hostfs.(h|cpp):
  . The FS_EXT_3 xfs_stat64() and Dcntl(FUTIME_UTC) added to
    speed the mintlib stat() and utime() calls.

  . Dcntl() /xfs_fscntl()/ implementation extended:
    * FS_INFO and FS_USAGE implemented (makes fsetter.app be able to
      show filesystem information).
    * FTRUNCATE implemented (needed for mintlib's truncate() and
      ftruncate()).

  . ioctl(FIONREAD/FIONWRITE/FIOEXCEPT) initial implementation.


2005/09/21 - Patrice
- input.cpp: Don't check for OpenGL enabled if not compiled in.


2005/09/20 - milan
- natfeat/ethernet.h: virtual destructor

- include/ata.h: virtual destructor

- cfgopts.cpp: made some functions static and don't link as C

- uae_cpu/cpuopti.c: argc and argv are declared explicitly


2005/09/20 - Johan
- nfvdi.cpp: Made it possible to query ARAnyM about host mouse cursor.


2005/09/19 - Patrice
- Add DSP_ prefix to some definitions.


2005/09/16 - Patrice
- Remove old fvdidrv.cpp.


2005/09/15 - Petr
- doc/documentation.html renamed to aranym.html (directly in repository)
- doc/documentation.txt removed (is superseded by aranym.html)


2005/09/15 - milan
- src/Unix/linux/sigsegv_linux_x86.cpp: added 'volatile' to struct sigcontext.
  Fixes GCC 4.x problem (crash upon startup).


2005/09/14 - Xavier
- tools/build-cygwin.sh: fixed a small bug that was preventing a warning to be
  displayed.


2005/09/12 - Patrice
- doc/documentation.txt converted to documentation.html


2005/09/10 - Petr
- uae_cpu/cpu_emulation.h: uses ReadInt/WriteInt which is wrong (regarding
  the MMU) but at least consistent with all the NF modules. The complete
  change to the direct access will require much more work.

- input.cpp: support for AltGr key like in Milan. Suggested by Ingo Schmidt,
  AltGr information provided by Gerhard Stoll.

- parameters.h: "altgr" added to ikbd struct. Should be configurable
  in the config file. TODO.

- sdl-gui/dlgKeyboard.cpp: AltGr configurable at run-time.

- TODO, BUGS: updated.


2005/09/09 - Petr - BIG ROLLBACK of changes done on 2005/09/04
- uae_cpu/cpu_emulation.h: Host2Atari/Atari2Host operations now use
  direct Atari memory access thus ignoring any MMU setup.
  Atari2HostAddr() is back.

- fakeio.cpp, videl.cpp, fvdidrv.cpp, natfeat/{nfjpeg, nfcdrom_sdl,
  nfcdrom_linux, nfaudio} rolled back to previous revision.


2005/09/06 - Patrice
- Don't open GUI when OpenGL enabled, it will crash. hostscreen class should
  be split in two parts like nfvdi: a software and an OpenGL renderer.


2005/09/04 - Petr
- uae_cpu/cpu_emulation.h: Host2Atari/Atari2Host operations now correctly
  based on ReadInt/WriteInt functions that honor MMU setup.
  Atari2HostAddr() removed. Was deprecated for a long time already, anyway.

- fakeio.cpp: Atari2HostAddr() replaced with Read/WriteHWMem functions.
  Perhaps proper solution is to move the #ifdef HW_SIGSEGV into the above
  mentioned functions? TODO: review it.

- nf_base.{cpp,h}: memory operations moved to uae_cpu/cpu_emulation.h

- natfeats.cpp, natfeat/{debugprintf, xhdi, nfcdrom, nfaudio}: fixed to
  not use Atari2HostAddr (thus direct Atari memory access) but rather
  the Host2Atari/Atari2Host memcpy functions.
  Notice: nfaudio now uses cvt buffer always for copying the sound data
  from Atari to host - even when there is no conversion needed...

- videl.cpp, fvdidrv.cpp, natfeat/{nfjpeg, nfcdrom_sdl, nfcdrom_linux}:
  TODO: needs to be modified to not use Atari2HostAddr, see above.

- natfeat/nf_basicset.cpp: just renamed memcpy functions

- natfeat/hostfs.cpp: renamed memcpy functions, strcpy() replaced with strncpy
  TODO: review and correct the "FIXME 999" strncpy()'s

- natfeat/ethernet.cpp: mostly clean up for better source code readability

- acsifdc.{cpp,h}: fixed to not use Atari2HostAddr(). Cleaned up a bit by
  merging code for reading/writing multiple sectors with single ones.
  Added a hack that was supposed to fix floppy under linux - not working yet.

- uae_cpu/{aranym_glue.cpp, cpu_emulation.h, newcpu.cpp}: trying to make
  the FLIGHT_RECORDER a bit more useful.

- input.cpp: if FLIGH_RECORDER is compiled in then it can be enabled
  for a while by pressing and holding down both Shift keys. This is just
  a trial how to make it more useful, will be refined in future (configurable
  event launcher, accessible from SETUP GUI...)

- include/version.h: micro version increased to warn everybody that
  there were a lot of changes thus something could break...


*** CVS tagged as ARANYM_0_9_1_ALPHA


2005/09/03 - Petr
- atari/network/ethernet/ethernet_nfapi.h: (ethX) is missing in IRQ subcall

- natfeat/ethernet.cpp: XIF_GET_MAC: subcall returns FALSE if particular
  ethX is not defined in the config file, TRUE otherwise. Expected
  by Linux ethernet driver...


2005/09/01 - milan
- src/Unix/configure.ac: enforce fixed videoram for SDL blitter
- src/uae_cpu/debug.cpp: correct register size


2005/08/29 - Patrice
- nfvdi: Make usage of host mouse cursor a configurable option.


2005/08/21 - Petr
- natfeat/ethernet.cpp: do not use Atari2Host_memcpy() and similar, they
  ignore MMU setup. Fixed by replacing with a2fmemcpy() family.
  This was an essential fix. Now NF Ethernet works under Linux-m68k :-)
  Other NF drivers need similar fixes.


2005/08/18 - Petr&milan
- include/aramd5.h: portability


2005/08/18 - milan
- CPU sync with BasiliskII (better x86 types detection and JITc correction)


2005/08/14 - milan
- uae_cpu/cpummu.cpp: microoptimalization


2005/08/05 - Johan
- nfvdi*: Support for accelerated text drawing.
- nfvdi_opengl.cpp: Fix for S2S blit problem at bottom of screen.
  Also added rounding for getHwColor.
- hostscreen.cpp: Removed unnecessary dependency on glu function.


2005/07/29 - Patrice
- Trigger MFP interrupt only once per audio callback. Default format is
  16 bits stereo for audio dma.


2005/07/26 - Patrice
- mfp.h: Wrong size for irq_* values.


2005/07/25 - Patrice
- Fixed speedy replay in DMA audio. Timer A interrupt still not triggered.


2005/07/21 - Patrice
- Preliminary crossbar audio emulation.


2005/07/20 - Patrice
- Preliminary DMA audio emulation. Remove TOS check for joypad port presence
  that set DMA audio bit in _SND cookie to 0 if absent (!!).


2005/07/19 - Xavier
- INSTALL: added a pointer to tools/build-cygwin.sh for compiling on Microsoft
  Windows.


2005/07/19 - Patrice
- Splitted nfaudio driver in two parts. It is now possible to have several
  audio emulations (ym, dma, dsp) along with nf audio emulation, all mixed in
  a final audio buffer. The NF audio driver now does convert buffer from Atari
  to host format, instead of letting Atari side doing this.


2005/07/16 - Andreas
- natfeat/nfcdrom_linux.cpp: move include of linux/cdrom.h down to fix
  compilation problem.


2005/07/16 - Petr
- natfeat/nfvdi.cpp: swapped return values for the mouse event dispatch
  since default fvdidrv.cpp used value 1 as indication of unknown NF subcode.

- input.cpp: adapted for the swapped return values from the nfvdi dispatch.
  - also CHECK_HOTKEY adapted to allow hotkeys with mod keys only
  - and keysym.mod replaced with GetModState() since keysym.mod didn't return
    single mod key presses.

- dlgHotkeys.cpp: display hotkeys with mod keys only correctly


2005/07/13 - milan
- src/Unix/config.*: updated (thanks, Aurelien Jarno)

- src/Unix/vm_alloc.cpp: close(zero_fd) only when opened

- correct version of JITInlining

- JIT compilation of dispatcher enabled


2005/07/10 - Johan
- nfvdi_*: Made the base class capable of polygon filling.
	   OpenGL driver makes use of that for now because of
	   problems with the current polygon tesselation code.
	   Software driver still uses its own polygon filler,
	   but the support routines are now in the base class.

2005/07/10 - milan
- src/Unix/configure.ac: typo

- src/Unix/linux/sigsegv_linux_x86.cpp: correct type of pointers

- UAE CPU: JITc inlining and check_ticks definition


2005/07/09 - Petr
- main.cpp: added RTC device driver for real interrupts at 256 HZ rate.
  Enable #RTC_TIMER if you want to see it running. And start ARAnyM
  as root because it sets the /dev/rtc to 256 Hz interrupt which is not
  allowed to regular user (unless enabled by running the following command:
  sysctl -w dev.rtc.max-user-freq=1024)
  - startup IRQ storm corrected (more than 80 useless IRQs at power on)
  - IRQ debug statistics printed (if #DEBUG enabled)


2005/07/09 - Johan
- nfvdi_*:      Bug fix for polylines with moves.
- nfvdi_opengl: Bug fix for single pixel lines. Speedup for polylines.


2005/06/21 - Patrice
- hostscreen: Don't use SDL version of glext.h. Also fix bpp for OpenGL screen


2005/06/20 - milan
- configure.ac: needed size of LMA increased to 16 MB, should solve problem on
		some systems with autodetection


2005/06/17 - Patrice
- nfosmesa: Added nfosmesa device driver for MiNT, which now works. You can
  use it with MiNT 1.16, which was removing __NF cookie.


2005/06/16 - Patrice
- nfosmesa: Reworked interface to host, can use a MiNT device (to write) ioctl
  or NF interface. On the Atari side, parameters are no more stacked twice.


2005/06/16 - milan
- some small cleanups and fixes in building process


2005/06/15 - Patrice
- nfosmesa: g++ 3 with -O3 was over-optimizing Atari2HostDouble to a null
  function.


2005/06/14 - Patrice
- nfvdi: Add reset method. OpenGL rendering: tesselate polygons, use non power
  of two texture or rectangle texture when available.


2005/06/13 - Patrice
- hostscreen: disabling texturing when not used. Correctly setup shadow
  texture when it is smaller than asked screen.
- nfosmesa: Don't pollute gl namespace in NFOSMesa class. Allow NFOSMesa
  to be compiled with hardware OpenGL rendering.


2005/06/12 - Patrice
- hostscreen,parameters: removed width and height parameters for OpenGL, using
  current ones or autozoom ones'.
- nfvdi OpenGL: clear alpha value read.


2005/06/11 - Patrice
- nfvdi,hostscreen: remove getComponent() stuff, useless with GL_BGRA format.


2005/06/09 - Patrice
- nfvdi: added preliminary OpenGL fillPoly() rendering. Host screen
  organization fixed on the ARAnyM side.


2005/06/08 - Patrice
- hostscreen: correct endianness of GL_RGBA shadow surface for videl OpenGL
  rendering. Updating the texture with dirty rectangles list. Added
  getComponent() function to read the real screen organization, waiting for
  Johan to sync fvdi driver.


2005/06/07 - Johan
- Report mouse events (input.cpp) to m68k fVDI driver via Natfeat "backdoor".
- Support for forced mouse positioning.
- Fix for OpenGL integer coordinates (hostscreen) according to MicroSoft tip.
- A bunch of bug fixes for OpenGL drawing. Mostly off-by-one things.


2005/06/05 - Patrice
- nfvdi: added mouse cursor rendering for OpenGL driver. Host SDL cursor can
  be enabled in nfvdi.h by uncommenting USE_HOST_MOUSE_CURSOR (experimental).


2005/06/03 - Patrice
- NF audio: close SDL audio device on exit. Closing it on Atari reset event
  hangs ARAnyM on my system, more investigation needed.
- main.cpp, Unix/main_unix.cpp: SDL_Quit() was called twice: once in ExitAll()
  and once at exit().


2005/05/27 - Patrice
- nfvdi: revert back old mouse driver for software renderer. Will add OpenGL
  support soon, till support for host mouse cursor is usable.


2005/05/25 - Patrice
- OpenGL nfvdi: fixed line clipping.


2005/05/24 - Patrice
- OpenGL nfvdi: fixed screen to memory blits.

- hostscreen: OpenGL rendering off by 1 unit.


2005/05/22 - Johan & Patrice
- OpenGL nfvdi: more blit fixes. Added line clipping.


2005/05/20 - Patrice
- OpenGL nfvdi: preliminary blitArea() between screen and memory.

- input, ikbd: Add support for joystick hat.


2005/05/19 - Patrice
- nfvdi: Add some OpenGL logical operations for blitArea() operations, and
  preliminary expandArea() function. Updated aranym.sys FVDI driver.


2005/05/16 - Patrice
- nfvdi: Enable OpenGL rendering when opening the VDI workstation.


2005/05/14 - Patrice
- nfvdi: Missing constructor, and initialization. Swapped disable/enable
  cursor in drawMouse. OpenGL renderer: add logical operations, and screen
  to screen blits.


2005/05/13 - milan
- uae_cpu/cpu_mmu.*: experimental ATC disabling


2005/05/13 - Patrice
- nfvdi: Use host mouse cursor. Need to sync with input.cpp mouse routines.


2005/05/12 - Patrice
- Keep all OpenGL things in hostScreen and nfvdi classes.

- Split blitArea() function in 4 parts.


2005/05/11 - milan
- uae_cpu/cpu_mmu.*: a small prototype fix, debug variable disabled


2005/05/11 - Patrice
- Can dynamically choose a NF CD-ROM driver (linux or sdl one). Can also
  choose a NF VDI driver: software renderer or the non working OpenGL renderer

- Get confused with bpp (bytes per pixel) and bpp (bits per pixel).


2005/05/11 - milan
- natfeats.cpp: THROW(), not LONGJMP()


2005/05/10 - Patrice
- OpenGL rendering done regularly in Videl->renderScreen(), instead of
  hostScreen.update(): much faster!

- Added getBpp() function to FVDI driver (recompilation needed!), needed when
  using FVDI driver with OpenGL rendering.


2005/05/09 - Patrice
- Moved more driver independant stuff from nfvdi_soft.cpp to nfvdi.cpp


2005/05/08 - Patrice
- Dynamically create the natfeats. A few more work, and we will be able to
  choose between different NF drivers for the same feature.


2005/05/07 - Patrice
- NF vdi driver split in 2 parts: a base class, and an implementation class
  (software rendering driver atm).


2005/05/06 - milan
- support of old headers removed


2005/05/01 - milan
- uae_cpu/compiler: sync with Basilisk (64bit pointers fixed)

- Unix/configure.ac: C++ exceptions disabled in JIT compiler mode


2005/04/29 - milan
- Unix: a small sync with Basilisk and cleanup

- ata.*, cdrom.*: sync with Bochs and small cleanup

- uae_cpu: small sync and cleanup of non-JIT CPU

- doc/hguide.txt: actualized a bit


2005/04/27 - milan
- Unix/configure.ac: nfjpeg test corrected


2005/04/26 - Xavier
- Unix/configure.ac: nfjpeg enabled by default


2005/04/24 - Andreas
- new configuration option --enable-cxx-exceptions, implement use of C++
  exceptions instead of setjmp/longjmp for exception handling.

- ndebug.cpp: fix stdarg usage, handle NEED_TO_DEBUG_BADLY in showHistory.


2005/04/22 - Xavier
- hostscreen.cpp: SDL_WM_ToggleFullScreen does not work on some GUIs (Microsoft
  Windows GUI, for example). Added some code to implement the switch to and
  from fullscreen mode in this case.


2005/04/22 - Patrice
- nfjpeg: Save d1/a0-a1 used as scratch registers by gcc when calling JPEG
  decoding routines


2005/04/17 - Petr
- Makefile.in: fvdi.prg.bz2 was removed from archive...

- aranym.spec: %files section cleaned up. Fixes build problem with
  unpackaged documentation and makes it much easier to maintain (no need
  to track changes in Makefile.in).


2005/04/15 - STanda
- atari/hostfs/hostfs_xfs.c: some filesystem flags changed.
  this should fix the bug #1178909 (hostfs broken under linux) and
  problems with not being able to execute files with executable flag set.


* tagged as ARANYM_0_9_0

2005/04/14 - Petr
- doc/documentation.txt: [PARTITION] documented. Programming with ARAnyM
  documented (NatFeats, detection of ARAnyM presence).

- doc/config, parameters.cpp: [DISK] renamed to [PARTITION].

- build_cygwin.sh moved from doc/ to tools/.

- README, NEWS, version.h: usual release updates


2005/04/05 - Petr (actually Carlo)
- src/MacOSX/*: Carlo has updated the project (added MMU target)


2005/04/01 - Thomas Huth
- uae_cpu/newcpu.cpp: free table68k memory


2005/03/24 - Patrice
- natfeats: don't switch to supervisor mode if already in supervisor mode to
  read cookie jar pointer.


2005/03/21 - milan
- parameters.cpp: correct the previous commit


2005/03/21 - Patrice
- parameters.cpp: display custom enabled NatFeats.


2005/03/20 - STanda
- fvdidrv: fixed outstanding bug in the aranym.sys driver. The pixel sizes were
  updated recursively twice which made them wrong.


2005/03/15 - Petr
- gui-sdl/file.cpp: current dir is no longer presented as "./" but it's simply
  an empty string (fileselector had to be adapted to this change, see below).

- gui-sdl/dlgFileSelect.cpp:
  - initialized 'eol' to remove compiler warning.
  - if there is an empty path to dir the getcwd() is used to preset it
    with a reasonable value.
  - filename "." removed from the fileselector.

- gui-sdl/dlgDisk.cpp: allows entering non-existing filename (useful for
  generating new disk images). Help page updated accordingly.


2005/03/14 - Xavier
- gui-sdl/dlgFileSelect.cpp:
  - New sorting algoritm : folders at the top, files at the bottom.
  - Reformatted using GNU indent (with "-kr -nce -ts4", as suggested by Petr).


2005/03/05 - Xavier
- doc/build-cygwin.sh: added SDL_image support. Allows to compile nfjpeg on
  Windows.


2005/03/03 - STanda
- doc/documentation.txt: update on networking. Clean that up someone.
- Blaine Brysh's suggection to remove the 'tapdev' check done.


2005/02/28 - Patrice
- nfjpeg, nfpci, nfosmesa, nfcdrom: Use the correct fonction to read current
  cookie value, not a mix between internal function and mintlib's one.


2005/02/25 - Xavier
- doc/build-cygwin.sh: defaults to SDL 1.2.8.


2005/02/24 - Petr
- lilo.cpp: <elf.h> required defines copied to lilo.cpp to allow compiling
  under non-linux systems.


2005/02/23 - Patrice
- nfjpeg, nfpci, nfosmesa: Display a message when __NF cookie is missing, or
  when NF functions needed are missing in ARAnyM.


2005/02/22 - Petr
- parameters.cpp: 'RedirPrinter' removed.
  Default printer file is 'stderr'.

- aranym.spec: aranymrc.example removed.


* tagged as ARANYM_0_9_0_BETA

2005/02/20 - Petr
- atari/aranymrc.example moved to doc/config and updated with all current
  config options

- parameters.cpp: fixed wrong sizeof() for [HOTKEYS]

- doc/documentation.txt updated (networking, LILO)
  doc/aranym-lilo.txt removed

- Makefile.in: NFJPEG and NFOSMESA added

- aranym.spec: LILO added to MMU build

- README, BUGS, NEWS, include/version.h: updated for new release


2005/02/18 - Patrice
- nfosmesa: Can not autodetect which libOSMesa is loaded, so ChannelSize in
  config file is mandatory for any libOSMesa library used.
  The OpenGL contexts created by OSMesa are endianness independent, no need to
  convert them after rendering.
- nfjpeg: Correct SDL include path.


2005/02/17 - Petr
- parameters.cpp: open up SETUP if no config file found and new one is to be
  created so that users can edit the default values before saving.

- dlgAlert: flexible formatting of text to any number of lines (up to 20).
  Two types of alerts - info "OK" and confirm "OK/Cancel".

- dlgMain: dlgAbout and dlgHelp replaced with info alert.

- dlgDisk, dlgHotkeys: HELP button and page added

- TODO: updated (at last I could remove some long standing issues :)


2005/02/14 - Petr
- main.cpp: display the right key for invoking SETUP GUI in the window
  caption bar.


2005/02/13 - Petr
- gui-sdl/sdlgui: getEvent() function fetches the keyboard and mouse events
  (now also UP events) from the USEREVENT queue and converts them to normal
  SDLKey and SDLMouse events.

- include/parameters.h: hotkey struct bx_hotkeys_t defined and added to
  global bx_options.

- input.cpp: the following seven hotkeys are user-definable now: Setup,
  Quit, Reboot, Ungrab, Debugger, ScreenShot and FullScreen.

- gui-sdl/dlgHotkeys.cpp: hotkey editor added, allows for online editing
  of the seven hotkeys listed above.

- gui-sdl/dlgMain.cpp: hotkey editor activated.

- parameters.cpp: hotkeys are saved to config file, section [HOTKEYS].
  Further cleanup. [ARANYMFS] fallback dropped.


2005/02/12 - Patrice
- nfosmesa: Add support for 16 and 32 bits per channel for OSMesa, using
  libOSMesa16 or libOSMesa32.


2005/02/04 - Patrice
- Added parallel port emulation driver via Linux /dev/parport device.


2005/01/30 - Andreas
- uae_cpu/newcpu.cpp: Handle unaligned access in get_ilong_1.


2005/01/29 - Patrice
- configure.ac: Add option to add path to Mesa header files.


2005/01/28 - Andreas
- uae_cpu/newcpu.h: Handle unaligned access in get_ilong.


2005/01/26 - Patrice
- Move all parallel port implementation stuff in yamaha. Don't flush on output
  to a real file.

- Remove useless FAQ item about CD-ROM configuration.


2005/01/25 - Andreas
- uae_cpu/cpummu.cpp: Fix wrong address in mmu_get_unaligned, thanks to
  milan for tracking this down.


2005/01/25 - Patrice
- parallel: small fixes. Can redirect to a file, to stdout or stderr.


2005/01/25 - Andreas
- uae_cpu/cpummu.cpp, uae_cpu/memory.h: Fix wrong size field in ssw.


2005/01/24 - STanda
- fVDI driver
  * famous fVDI boot bug fixed! VIDEL is shut off on openwk()
    instead on the first NF(fVDI) call.
  * Changing the resolution upon openwk() again (back to what was
    in 0.8.10?)
  * cleanup in the spec.c m68k part of the driver.


2005/01/24 - Patrice
- nfosmesa: Return OpenGL version as 1.0 when extensions disabled.


2005/01/24 - Andreas
- More MMU emulation fixes.  Linux boots now.


2005/01/23 - Patrice
- Reorganized parallel port emulation. Time to write drivers for all OS.


2005/01/22 - Patrice
- configure on MacOSX does not like using AC_CHECK_HEADER.


2005/01/22 - Petr
- input.{cpp,h}: little cleanup, private things declared static
- main.cpp: little cleanup, removed unused function
- hostscreen.*, input.cpp, main.cpp, parameters.cpp: "--disable-gui" now
  disables the SDL GUI related code in these files.


2005/01/21 - Patrice
- nfjpeg: Decoding images, with width not multiple of 16 works in Brainstorm's
  viewer. Zview has a bug in its plugin.


2005/01/20 - Patrice
- nfjpeg: More fixes, now Brainstorm's JPEG viewer works, but images with width
  not multiple of 16 have a problem.


2005/01/19 - STanda
- atari/fvdi/../spec.c: bitplane modes are marked as bitplane in v_scrninfo(),
  unnecessary noshadow and assumenf options removed
- 8b_pal.c: palette setting is system wide (not per virtual workstation)


2005/01/19 - Patrice
- dsp_cpu.cpp: 64 bit fixes.
- nfjpeg: Fixed problems due to endianness and packed structure of JPEG decoder.
  Decoding works in Zview (except for images with width not multiple of 16), but
  not in Brainstorm's demo program.


2005/01/18 - milan
- gdbstub: a few fixes in communication, configuration for base pointers added


2005/01/18 - Patrice
- nfosmesa: revert back mandatory SDL 1.2.6 check. Now nfosmesa disabled if SDL
  don't have loadable libraries functions.


2005/01/17 - Patrice
- nfosmesa: libGL is also dynamically loaded now. It is easier to control which
libGL library ARAnyM will use.


2005/01/16 - Patrice
- Enable compiling ARAnyM using the Fink suite on MacOSX.
  (configure --with-fink)


2005/01/16 - milan
- cdrom.cpp: new fix for *BSD (thanks, Konrad)

- gdbstub: gdb as external debugger (still buggy)


2005/01/16 - Petr
- natfeat/xhdi: fixed scary off-by-one bug. Direct partition access works
  OK. Also implemented proper way for finding out size of block device
  (such as /dev/hda1) so we can access host disk partitions directly now!


2005/01/14 - Patrice
- Preliminary NatFeat JPEG decoder. Don't try it, it does not work atm. If you
  think you can debug it, SDL_image with JPEG support is required.


2005/01/13 - Petr
- natfeat/xhdi: direct access to partitions added (use [DISKx] in config)
  Beware: the code is not well tested. Might destroy your data!

- parameters.cpp: [DISKx] enabled in the config file


2005/01/12 - milan
- all files: "unused varible" GCC warnings can be viewed with
	     ./configure --enable-full-debug
	     a few other warnings gone


2005/01/12 - Andreas
- natfeat/nfcdrom.cpp: Include <SDL_endian.h> for SDL_SwapBE16.


2005/01/12 - Petr
- ata.cpp: removed a scary hack for hiding an unused variable
- all files: "unused variable" GCC warnings are gone thanks to DUNUSED macro
- natfeat/ethernet.cpp: possibly fixed buffer overflow bug in readPacket()


2005/01/12 - Patrice
- nfcdrom.cpp: 64 bit fix.


2005/01/11 - milan (thanks Andreas Jochens)
- uae_cpu/aranym_glue.cpp: 64 bit fix for GCC 4.0 happy
- uae_cpu/newcpu.cpp: 64 bit fix for pc_offset computation


2005/01/11 - Petr
- gui-sdl/sdlgui.cpp: 64bit cleanup thanks to Debian BTS #288992


2005/01/11 - STanda
- fvdidrv.cpp: 64bit cleanup attempt
- CygWin networking tunnel NIF name taken into account
- paremeters.cpp: extra slash addition fixed


2005/01/10 - milan
- uae_cpu/gencpu.c, uae_cpu/newcpu.cpp: unswapped opcodes disabled in full MMU


2005/01/10 - Andreas
- uae_cpu/cpummu.cpp: Many MMU emulation fixes.
- uea_cpu/gencpu.c: Make sure that memory stores are performed after all
  changes visible by the emulation.
- uae_cpu/memory.h: Set wb3 for the execption routine on memory write.
- uae_cpu/newcpu.cpp: Pass wb3 fields in the access fault exception frame.
  Don't call check_ram_boundary on a virtual address.
- uea_cpu/newcpu.h: Don't call get_real_address in m68k_setpc when
  FULLMMU.  Remove autoinc stuff again.
- uae_cpu/registers.h: Add wb3_data, wb3_status, fault_pc, remove
  autoinc.  Don't use pc_p and pc_oldp when FULLMMU.

2005/01/08 - Petr
- mfp.cpp: irq handling (enable/pending/masked) copied bit-by-bit from STonC.
  And it seems to work! At last... Thanks, Laurent, for your great MFP
  emulation.

- configure.ac, TODO: linux kernel headers no longer necessary

- ikbd.cpp: when IKBD is reset it should send out the code 0xF1. Linux-m68k
  kernel checks for it. Fixed. Kernel no longer reports "WARNING: keyboard
  self test failed!" :-)


2005/01/08  Andreas Schwab
- lilo.cpp: Load ramdisk at end of ST ram.  64-bit fixes.  Copy needed
  bits from Linux/m68k kernel headers instead of including them.


2005/01/07 - Andreas Schwab
- uae_cpu/cpummu.h: Fix values of MMU_MMUSR_T and MMU_MMUSR_R.

- uae_cpu/cpummu.cpp: Fix interpretation of write bit in ptestr/ptestw
  opcodes.


2005/01/06 - Andreas Schwab
- uae_cpu/gencpu.c: Don't pop too much for format 7 exception frame in
  rte insn.


2005/01/06 - Petr
- mfp.cpp: Laurent (STonC author whose code has been used for ARAnyM
  MFP emulation) identified copy&rename_variables&paste error.
  Fixing that finally made the setGPIPbit() working (has been waiting
  for the fix since ARAnyM version 0.1.4! :-O )

- ikbd.cpp: Laurent pointed out that IKBD should not access the MFP
  externally via the 0xfffa01 address but rather use the setGPIPbit()
  only. Fixed.

- mfp.cpp again: added floppy/SCSI/IDE IRQ and modified the ACIA IRQ
  to follow the automaticServiceEnd flag. This lets Linux-m68k detect
  the IDE devices without "hda: lost interrupt" messages.


2005/01/05 - Andreas Schwab
- uae_cpu/cpummu.cpp:
  ptestr/ptestw must never generate an exception, and always to a full
  table search, an existing ATC entry must be removed but otherwise
  ignored.

- uae_cpu/gencpu.c, uae_cpu/newcpu.*, uae_cpu/registers.h:
  when an mmu-generated access error occurs we must undo all auto-inc/dec
  adjustments to address registers, because after returning from the
  exception handler the instruction is restarted.


2005/01/04 - Andreas Schwab
- uae_cpu/gencpu.c - emulation of the moves insn fixed. It is one step further
  into being able to boot Linux/m68k on ARAnyM.


2004/12/17 - Patrice
- nfosmesa: more endianness fixes. Extensions reenabled, beware the lengthy
  compilation!


2004/12/16 - Patrice
- nfosmesa: more endianness fixes.


2004/12/15 - Patrice
- nfosmesa: more endianness fixes, small doc in doc/documentation.txt,
  added ldg to spec file.


2004/12/14 - Patrice
- nfosmesa: more bugfixes (mainly to adapt m68k arrays to host CPU endianness).


2004/12/13 - Patrice
- nfosmesa: many bugfixes. The hardest/longest part to do: converting all arrays
  (const TYPE *) to a temporary array for the host CPU. Disabled building of
  OpenGL extensions (much longer to compile and test). What is working: SDL tests
  programs, many NeHe tutorials using SDL (not all, due to disabled extensions);
  for pure Atari software: kronos, tinygl test programs. Added the osmesa.ldg for
  testers.


2004/12/11 - Patrice
- hostscreen.cpp: move one update function using OpenGL from .h to .cpp, needed
  for compiling for OSMesa.

- NF: Add Natfeat OSMesa rendering support for Atari applications using host
  CPU (highly experimental!).


2004/11/24 - STanda
- TAP-Win32 networking for cygwin builds implemented and fully functional
  The natfeat/ethernet.cpp split to natfeat card emulation and host OS
  dependent driver part. The dependent part was moved to the appropriate
  folder Unix/linux and Unix/cygwin.


2004/11/21 - milan
- CPU JIT: sync with the latest BII core, really many changes, amd64 corrected,
  cleanups


2004/11/20 - milan
- configure, vm_alloc, main_unix.cpp: a small memory management
  reorganization, 33BIT addressing, cleanups


2004/11/14 - milan
- ata.*, cdrom.*: a small cleanup, some things from Bochs (multisession read
  TOC)


* tagged as ARANYM_0_8_11_BETA

2004/11/07 - Petr
- wheel mouse support: based on discussion in mailing list and patch provided
  by Xavier. Switchable between original arrow up/down key simulation and
  new Eiffel compatible set of extended scancodes in the SETUP GUI.
  No possibility to store in config file, yet (intentionally).

- doc/documentation.txt: updated section about creating empty disk image.
  Also added more information about ARAnyM networking (mostly gathered
  from my replies in the mailing lists).

- SETUP GUI: Disk dialog has now its own Apply/Cancel buttons. The main
  Apply button in the main dialog was removed.
  Also Keyboard&mouse dialog offers first functionality: switching between
  two host mouse wheel modes.

- DOC files, aranym.spec, include/version.h: updated for a new release.


2004/11/01 - Patrice
- hostscreen.cpp: don't need to have autozoom enabled to force a screen size

- fvdidrv.cpp: forgot some break instructions.

- FVDI aranym.sys modified, for the host resolution to be read.


2004/10/31 - Petr
- Carlo provided a new keyboard translation routine that translate directly
  mac scancodes into atari scancodes: all keys are translated correctly.
  SDL routine translate mac scancodes in their internal codes but for
  some keys the translation is incorrect.

- fVDI driver (aranym.sys) has finally been recompiled.


2004/09/29 - Xavier
- fvdidrv.cpp: fixed a typo that prevented ARAnyM to compile here.

- uae_cpu/debug.cpp: fixed a bug in debugger that corrupted SR.

- main.cpp: added a patch that allows TOS 4.04 to detect TT-Ram without any
  AUTO folder program. FASTRAM.PRG not needed anymore.


2004/09/24 - Patrice
- Natfeat FVDI driver: added functions to read back the screen width and height
  really set on the host side


2004/09/13 - Petr
- newcpu.cpp, spcflags.h: SPCFLAGS_NMI removed, _BRK used instead (like
  seen in hatari). SPCFLAGS_MODE_CHANGE removed (it was unused).


2004/09/10 - Patrice
- hostscreen.cpp, videl.cpp, parameters.cpp: create a specific section in the
  configuration file for autozoom. You can now choose to want a constant host
  screen size for whatever the Atari screen size is.

  Note about FVDI: it is not aware of this "fixed size", using a bigger size
  than FVDI's one is OK, but the display is not centered. Using a smaller size
  is buggy, so don't do it!


2004/09/08 - Xavier
- src/gui-sdl/sdlgui.cpp: edit field handling cleaned.


2004/09/07 - Petr
- src/parameters.[cpp,h]: configPath added to aranymfs struct. Fixes problem
  with adding more colons on repeated saving of config file.

- src/gui-sdl/dlgDisk.cpp: fixed a problem with updating the CHS values
  when new disk image was selected.


2004/09/04 - milan
- src/parameters.cpp: don't show parameters, which aren't compiled in


2004/09/03 - Petr
- atari/network/ethernet/ethernet.c, nfeth-config.c: the idea of new IOCTLs
  was not working because inet4.xdd blocks the IOCTLs and does not pass them
  to the XIF driver. So now I am using SIOCGLNKSTATS and it works!
  Fixed more scary bugs (word alignment in parameters to nfCall can be a
  killer). nfeth-config even respects the NIF parameter (try eth1 :-)
  The XIF driver has yet to be updated to handle more NIFs at once.

- src/natfeat/ethernet.cpp: better debug message. Make use of safe strncpy.


2004/09/02 - Petr
- atari/network/ethernet/ethernet.c, nfeth-config.c: corrected some scary
  bugs, now it should work but doesn't yet. Seems like the new IOCTLs are
  blocked somewhere.

- patrice: videl.cpp: second fix for autozoom, now zoom tables recalculated
  also when host screen size changes.


2004/09/01 - Petr
- tools/arabridge: modified to allow bridging a non-defaultroute interface.
  Useful for situations when the machine is on public Internet and you don't
  want to put ARAnyM there. Also all RedHat specific things replaced so now
  it works on Debian nicely.


2004/08/31 - Petr
- atari/network/ethernet/ethernet.c:
  - updated for FreeMiNT 1.16
  - makes use of nf_ops in kerinfo for clean NatFeat usage (if available)
  - IP_AUTO configuration was plain wrong thus removed
  - implements three new control calls for the nfeth-config (SIOCGIFADDRFH,
    SIOCGIFDSTADDRFH, SIOCGIFNETMASKFH) that have also been defined
    in FreeMiNT's sockio.h
  - proper GPL headers added


2004/08/30 - patrice
- videl.cpp: with JIT, Atari video screen size was 0 for both height and width,
  with autozoom, hence the crash.


2004/08/28 - Xavier
- gui-sdl/sdlgui.cpp, input.cpp: rewrote edit field handling.

- gui-sdl/dlgFileSelect.cpp: updated for the new edit field handling.


2004/08/27 - Petr
- lilo.cpp: thanks to David Muse analysis and suggestions I corrected
  the LiloCheckKernel() simply by copy&pasting it from linux bootstrap
  properly :-)


2004/08/19 - milan
- Unix/cygwin/sigsegv_cygwin.cpp, Unix/linux/sigsegv_linux.cpp:
      cleaning, merging


2004/08/19 - Xavier
- uae_cpu/cpu_emulation.h, Unix/cygwin/sigsegv_cygwin.cpp: hwsp and pagehwsp
  address checking modes support on Cygwin.

- Unix/cygwin/sigsegv_cygwin.cpp, Unix/linux/sigsegv_linux.cpp,
  Unix/xbsd/sigsegv_xbsd.cpp: hwsp and pagehwsp address checking modes fixed
  (stacked address fault was wrong).

- NFPCI: Patrice: give access to the 256 bytes of configuration space.
  Some bugfixes.


2004/08/16 - Xavier
- Unix/cygwin/sigsegv_cygwin.cpp: fixed GCC warnings.

- Unix/cygwin/sigsegv_cygwin.cpp, Unix/linux/sigsegv_linux.cpp,
  Unix/xbsd/sigsegv_xbsd.cpp: nested sigsegv are not allowed anymore. This
  was unused since 2004/07/06 and was not supported under Windows.


2004/08/12 - Xavier
- Unix/configure.ac, Unix/cygwin/sigsegv_cygwin.cpp, uae_cpu/cpu_emulation.h :
  clean solution to avoid nested sigsegv on Windows/Cygwin and any other OS
  that would need it.


* tagged as ARANYM_0_8_10_BETA

2004/08/07 - Petr on behalf of Carlo
- added a target to generate the DMG file (inspired by bochs)
- The SDL library is inserted automatically in the application bundle;
  now it does not require any installation.


2004/08/05 - Xavier
- Unix/cygwin/sigsegv_cygwin.cpp: small cleaning.


2004/08/02 - Xavier
- Unix/configure.ac, Unix/cygwin/sigsegv_cygwin.cpp: extended sigsegv handler
  for Windows/Cygwin. The code needs some cleaning, but at least allows to
  boot Afros and TOS 4.04. We can now enjoy JIT speed on Windows too !


2004/07/29 - milan
- debug.cpp: S&!M means interupt mode, not only M


2004/07/28 - milan
- newcpu.cpp: removing "patch" from 2002/09/28 (PureC hack), it can be enabled
	      with configure script

- debuggers: switch 'I' modified, debugger can ignore interupt mode


2004/07/28 - Petr
- atari/tools/pcpatch.c: verbose error handling


2004/07/28 - patrice
- Correctly read PCI devices list (inspired from pciutils code).


2004/07/26 - milan
- src/cdrom.cpp: typo bug (thanks, Konrad)


2004/07/20 - Xavier
- Unix/configure.ac:
  - checks for direct, real and fixed addressing availability made more
    accurate.
  - direct, real and fixed addressing allowed on Cygwin.
    Real addressing won't work since Cygwin can't mmap() low memory.
    Direct and fixed addressings need a cygwin1.dll from 2004/07/16 or
    later on W2K and WXP (Available at http://www.cygwin.com/snapshots/
    until next Cygwin release - current DLL version is 1.5.10-3 at the
    time of writing).


2004/07/18 - Xavier
- Unix/main_unix.cpp: in direct addressing mode, memory must be allocated
  with only one call to vm_acquire(). Otherwise memory parts may not be
  contiguous. CPU emulation rely on this.


2004/07/14 - milan
- small sysdeps.h reorganisation


2004/07/14 - Xavier
- doc/build-cygwin.sh: updated for SDL 1.2.7 and latest Cygwin (new GCC and
  X.org/X11 packages).

- Unix/acinclude.m4: updated for automake 1.8+.

- Unix/configure.ac: fixed error message about extended segfault handler.


2004/07/13 - Petr
- natfeat/ethernet.cpp: ARATAPIF is now found in $PATH again (Standa forgot
  to remove some of his debugging stuff). Thank for the bug report goes to
  Clement BENRABAH.


2004/07/13 - milan
- macro BUS_ERROR defined in cpu_emulation.h and documented

- some other minor (mainly cosmetic) corrections


2004/07/12 - Petr
- ide.cpp: Xavier explained that Adam's open source IDE driver might use
  the f00002 register because it's mapped to the same 16-bit IDE port as
  the f00000.


2004/07/11 - milan
- lilo support corrected

- other minor (cosmetic) corrections


2004/07/09 - milan
- (sig)setjmp/longjmp corrections


2004/07/08 - milan
- minor (cosmetic) corrections


2004/07/07 - Petr
- uae_cpu/fpu/mathlib.h: Francois fixes sinh and tanh by following the cosh
  emulation example.


2004/07/07 - milan
- man page corrected


* tagged as ARANYM_0_8_9_BETA

2004/07/06 - Petr
- ikbd.cpp: write to MFP directly, don't throw nested SIGSEGV. This not only
  fixes the JIT CPU crash on keypress in linux 2.6.x but also seems to help
  booting linux-m68k (it doesn't freeze now when you press a key)

- blitter.cpp: this is probably a breaking news after years of blitter
  crashing and countless hours spent on debugging it: the source and
  destination address registers must be restored to original values upon
  finishing the job, since TOS does not always set the source and dest
  address for a new blitter job - it clearly relies on the original values
  set in previous job. This is very unexpected behaviour since Blitter
  documentation says the source and dest addr registers show increasing
  values when you read them.
  Also, now Blitter starts blitting as soon as the BUSY line (0x3c & 0x80)
  was set - this was possible after implementing the word and long wide
  register accesses and thanks to idea and support from Thomas.

- gui-sdl/dlgAlert.cpp: strdupa() is not defined in neither cygwin nor macosx
  so there is a quick workaround.

- lilo.cpp: fixed reading of gzipped files. Simply the macro is HAVE_LIBZ,
  not HAVE_ZLIB :-)

- gui-sdl/sdlgui.cpp: accept numbers on numpad. This is still not correct
  code, it should use the unicode field of the keysym struct.


* tagged as ARANYM_0_8_8_BETA

2004/07/05 - Petr
- gui-sdl/dlgAlert.cpp: an AES like AlertBox created. So far a rough code
  but does what I needed.

- gui-sdl/dlgDisk.cpp: Disk Image generation added.

- on behalf of Carlo: UAE FPU is (thanks to Francois' tests) the default
  for MacOSX target in their project builder.
  Filename expansion takes a special '*' wildcard that gets expanded to
  Data folder path (the bundle folder for MACOSX).

- parameters.cpp: Carlo corrected a bug in the relative path expansion
  routine - now if there isn't the trailing slash it's added.

- tools/createdisk/*, tools/disk_image.c: removed

- Makefile.in, aranym.spec: createdisk & disk_image removed, arabridge added

- README, NEWS, TODO, aranym.1, aranym.spec, version.h:
  standard updates for new release.


2004/07/04 - Petr
- input.cpp: iconification of fullscreen window on releasing the grabbed
  input disabled since Standa added there switching from fullscreen
  to window.

- gui-sdl/file.[cpp,h]: File_Exists() and File_Read() take const char
  parameter. Disabled the (IMHO) useless feature of File_Read - trying
  several different file extensions automagically.


2004/07/03 - Petr
- uae_cpu/fpu/mathlib.h: fixed tan() error Martin Tarenskeen reported.

- uea_cpu/newcpu.cpp, hardware.cpp: if HW_SIGSEGV is used (mainly for
  JIT compiler) then use sigsetjmp/siglongjmp to restore signal mask
  when generating BUS ERROR. This fixes the SIGSEGV during TOS 4.04
  boot when reading the $ff8e09 register.


2004/07/01 - Petr
- BUGS: FPU problems documented. We need fix even for Pentium host based
  systems!


2004/06/21 - milan
- diskimage supports images lager than 2GB (large file support)


2004/06/01 - STanda (actualy done the 2004/05/19)
- input.cpp: The capslock keyboard LED and the m68k side OS capslock state
  synchronization should be better now.
- hostfs.cpp: Small broken symlink related bugfix.


2004/05/15 - patrice
- Nfpci.prg bugfixes, and also on host side. pci_read_config_* functions work
  now. We can enumerate the host PCI devices.


2004/05/14 - patrice
- Nfpci.prg now finished. Time to implement it on the host side now.


2004/05/13 - patrice
- Added resident program NFPCI.PRG, does not work ATM: it thinks there is
  already a PCIBIOS driver installed.


2004/05/12 - patrice
- Primary framework for NatFeats PCI driver


2004/04/24-25 - STanda
- parameters.cpp,cfgopts.*: Created a Path_Tag that serves as a String_Tag
  like entry plus that there is the '~' replaced with $HOME and the
  relative paths are made absolute (to the configuration file location).
- parameters_*.cpp: separated the getDataFolder() and getHomeFolder().
  The getHomeFolder() is used for the '~' expansions in parameters.cpp.
- hostfs.cpp:
  * Petr's version of xfs_native_init() fixed, extended and used.
  * symlinks should work better now: if there is a HOSTFS mapping for the
    symlink target then it is translated as a symlink to that target else
    the real hostfs target is shown (the user doesn't notice it is a symlink
    in fact in that case).
- hostfs.dos (atari/hostfs/metados):
  * Adjusted to the recent FreeMiNT CVS state to compile and also made
    BetaDOS only. No more MetaDOS compatibility attempts.
  * Dfree() fix - for Calamus to be able to save its documents.
  * Some minor bugfix backports from the current FreeMiNTs CVS version.
  * The mountpoint entries are now shared among several hostfs.dos instances
    using a 'BDhf' cookie entry (atari/hostfs/metados/main.c).
- ethernet.cpp:
  * Alternative networking setup: aranym doesn't need to use the suid
    aratapif now. CVSROOT/tools/arabridge script is able (with root
    permissions) to establish a bridge over the tap0 tunnel and eth0 nif so
    that aranym would become fully featured LAN machine from ethernet point
    of view. E.g. you can try DHCP directly from within ARAnyM then.
  * [ETH0] type = ppp|bridge and tunnel = tap0 config options added
  * However there are still some problems: the initialization can fail
    sometimes. I got it working several times, but in some network
    configurations it simply doesn't work. I don't have a clue why ATM :(
    (tested on RH9.0).


2004/04/10 - Petr on behalf of Carlo
- acsifdc.cpp: local variable masked out class variable of same name. Bug
  was there since 2004/02/02. Fixed.


2004/04/06 - Petr on behalf of Carlo
- MacOSX/: obsolete aranym_for_library and pkg_support were removed.
  main_OSX.cpp added, with modified memory allocation routines.
  The installation package is no longer required. Now there is only a folder
  to drag to the hard-disk.

- configure.ac: added MACOSX_support define, corrected bug in vm_allocate
  test.

- uae_cpu/memory.h: scary typo error fixed

- main.cpp, parameters.cpp: these patches were not accepted as I don't like
  unnecessary polluting of main source code with #ifdef MACOSX_support.
  We need something like Unix/cygwin/cygwin_parameters.cpp for MacOSX
  to keep the main source clean.


2004/03/29 - milan
- Makefile.in: .cvsingnore not in dists

- configure.ac: flightrecorder option corrected


2004/03/04 - Carlo & milan (thank you, Carlo, for your great job)
- macro do_get_real_address() for OS_darwin corrected


2004/03/03 - Carlo & milan
- MacOS X doesn't support fixed allocation in ARAnyM, so special workaround
  needed


2004/02/28 - milan
- sigsegv handler for Linux as computed gotos (partially), disabled, slower


2004/02/22 - Petr on behalf of Carlo
- MacOSX/*: I have solved the problem with DIRSEPARATOR and ARANYM_DATADIR
  defines in my project. I have modified the shell script that call autogen.sh:
  now calls it only if it exist (on official release autogen.sh is missing),
  otherwise it calls configure.
  I have added the directory "pkg_support": in this directory there are
  instructions and files to build an installer package for aranym.
  I have removed "aranym_for_library" directory: this is not needed for the
  new installing method.

  The directories ".aranym" "usr" "etc"... are all hidden under MacOSX Finder
  so they are accessible only through the terminal window.
  I have renamed ".aranym" in "Aranym_files" and moved the data dir in
  $HOME/Documents/Aranym_files. In this manner they are accessible through the
  Finder.
  I have modified paths in configure.ac so they are correctly expanded
  in configure.


2004/02/19 - Xavier
- gui-sdl/sdlgui.cpp : SG_DISABLED state now ready for use.

- gui-sdl/dlgDisk.cpp: "Generate" buttons visible (but disabled).


2004/02/16 - Xavier
- gui-sdl/sdlgui* :
  - added SG_RADIO flag.
  - removed SGRADIOBUT objects. The exact same effect is now obtained with a
    SGCHECKBOX object with the SG_RADIO flag.
  - font is now loaded into a 8 biplanes surface. SDL has some strange reactions
    with 1 bitplane...
  - removed converted font. We now directly use the 8 bitplane font. This allows
    to choose text color and correct a bug where the font was not correctly
    converted (after a screen depth change while GUI is displayed).
  - removed SDLGui_PrepareFont() and SDLGui_FreeFont().
  - added SG_DISABLED state. Not finished yet.
  - cleaned color handling.
  - SGTEXT objects drawn differently if SG_SELECTED flag is set.

- gui-sdl/dlgMain.cpp: removed calls to SDLGui_PrepareFont() and
  SDLGui_FreeFont().

- gui-sdl/dlgFileSelect.cpp: files list elements are now SG_SELECTABLE so user
  can see which one is selected.


* tagged as ARANYM_0_8_7_BETA

2004/02/15 - Petr
- natfeat/hostfs.cpp: restore 0.8.5's xfs_init to fix the mount root bug.

- README, NEWS, TODO, aranym.1, aranym.spec, version.h:
  standard updates for new release.


2004/02/14 - Petr
- all HW chips' classes: made sure they contain function reset() that
  initializes internal variables of the objects. This will be called
  when RESET instruction is executed to provide complete hardware reset.

- hardware.cpp: added HWReset(), calls reset functions of all HW chips.

- most NatFeat classes: added reset() function (same reason as above).

- nf_basicset.cpp, debugprintf.cpp: make use of SafeStrncpy

- nf_objs.*: added NFReset(), calls reset functions of all NatFeats.

- uae_cpu/aranym_glue.cpp: RESET instruction emulation now resets all
  emulated hardware and native features.


2004/02/13 - Xavier
- gui-sdl/sdlgui.*:
  - introduced new flags : SG_SELECTABLE and SG_BACKGROUND.
  - boxes and buttons drawing improved thanks to these new flags.
  - SGTEXT and SGEDITFIELD objects are now drawn with a background.
  - removed imports from hostscreen.cpp I added when writing
    SDLGui_Get[First|Next]BackgroundRect().

- gui-sdl/dlg*.cpp: modified to take sdlgui.* improvements into account.

- src/Unix/configure.ac: removed an old hack in Cygwin's $LIB. This was not
  necessary anymore (thanks to build-cygwin.sh) and was preventing configure to
  successfully compile some tests.
  Configure tests impacted (which wrongly reported "no" before) :
  - "whether mmap supports MAP_ANON",
  - "whether mmap supports MAP_ANONYMOUS",
  - "whether mprotect works",
  - "for atanh",
  - "for isnan",
  - "for isinf", and
  - "for finite".


2004/02/09 - Xavier
- videl.cpp, uae_cpu/aranym_glue.cpp: connected virtual reset line of our
  virtual CPU to our virtual videl. ;) Moved code from videl constructor to
  init() method.
  ARAnyM video mode/display/main surface is now reseted to its default upon
  m68k RESET instruction. We won't see screens like
  http://phoenix.inf.upol.cz/~opichals/aranym/jinneeXaAES.png anymore. (You'll
  have to take your screenshots before rebooting from now on, Standa. ;) )
  This is still minimal, as with real hardware, all videl registers are set to
  0 when this event occurs (Display is turned off until TOS initialize videl
  properly.). But I suspect EmuTOS wouldn't be able to turn it on yet.
  BTW, other virtual components should be wired there, too...


* tagged as ARANYM_0_8_6_BETA

2004/02/08 - Petr
- gui-sdl/dlgAbout.cpp: RTFM AUTHORS

- gui-sdl/dlgMain.cpp: visually restructured a bit, added three buttons
  for quick access to most often used functions.

- gui-sdl/dlgHelp.cpp, Unix/configure.ac: Help page added

- hostscreen.cpp: added a comment that explains why user.code = SDL_USEREVENT

- input.cpp: GUI thread talks back to INPUT thread by SDL message as well.
  Should fix the infamous X async reply I started getting recently. Maybe
  even the problem on Mac.

- natfeat/nf_base.*: SafeStrncpy() added (respects buffer size).

- natfeat/hostfs.*: ctor/dtor added, init/exit used for clearing the allocated
  buffers. Resets the mounted points on ARAnyM Restart now. Also makes use
  of SafeStrncpy(). Perhaps EasyMiNT installation won't require aranym quit
  now.

- AUTHORS, README, BUGS, NEWS, TODO, aranym.1, aranym.spec, version.h:
  standard updates for new release.


2004/02/06 - Xavier
- gui-sdl/sdlgui.cpp: fix for resolutions smaller than the dialog size.
  Dialogs dimensions back to 40x25.


2004/02/05 - patrice
- New DSP thread killing when shutdown.


2004/02/05 - Petr (on behalf of Carlo)
- MacOSX/*: modified the project for version 0.8.6. Also included a shell
  script for calling the autogen.sh inside the project.

- blitter.cpp: updated for getVIDEL(), fixed wrong parameters in the memmove
  call (BLITTER_MEMMOVE only)


2004/02/04 2:11am - Petr (dedicated to Konrad :)
- rtc.cpp: fixed two real scary bugs. How could this code work previously??
  Weird that these bugs didn't appear under Linux for so long. Sorry guys :)
  Now Windows boot in correct resolution and without double bus errors!

- include/version.h: version 0.8.6alpha


2004/02/03 - Petr
- gui-sdl/*: dimensions made smaller (39x24) to fix the crashes in ST-Low
  (Xavier increased the dialog dimensions by a few pixels)

- rtc.cpp: few more debug messages

- main.cpp: DEBUG disabled


2004/02/02 - milan
- cdrom.cpp: Solaris support corrected


2004/02/02 - Petr
- acsifdc.cpp: when fixing my 0.8.5beta bug that Xavier has found I decided
  to clean the whole floppy code. FDC routines were included from fdc.cpp.
  Dropped emulation of second floppy drive. Fixed remounting a floppy
  with different geometry.

  The hack for auto remounting a floppy disk is now configurable with
  #define REMOUNT_FLOPPY_ON_BOOTSECTOR_READING. If it's enabled floppy access
  is very slow but exchanging real floppies is detected.
  When it is disabled then floppy access is fast but detecting of media change
  does not work.

- fdc.cpp: removed (its content is included in acsifdc.cpp)
- Unix/Makefile.in: fdc.cpp dropped
- gui-sdl/dlgDisk.cpp: better calling of the floppy functions
- main.cpp: init floppy after reboot


2004/02/01 - Petr
- MacOSX/*: some unspecified updates from Carlo, used for building the binary
  that is on download.


2004/01/30 - milan
- configure.ac: support better native debugger with gcc and gdb

- Makefile.in: small POSIX update

- ata.cpp: small sync with Bochs (set transfer mode and better controller
  init)

- compemu_support.cpp: warning "JIT disabled if you have small cache size"
  enabled

- cdrom.cpp: some corrections in the latest port from Bochs


2004/01/29 - Petr
- src/MacOSX/*: suddenly Carlo Baiocco appeared and sent me a complete
  MacOSX Project builder folder. Give it a try, perhaps it finally builds
  a binary for MacOSX? Follow the MacOSX/README.rtf for more info.


2004/01/28 - Petr
- cdrom.cpp,h: Stefan replaced it with a file from current Bochs and forgot
  to update the ChangeLog. It might break some other platforms. Beware.

- BUGS: two Windows related problems Konrad reported are documented and will
  hopefully be resolved in next release.


2004/01/26 - Xavier
- doc/build-cygwin.sh: preserve timestamps when copying ARAnyM sources. This
  allows CVS to find which files where modified when commiting from
  ${ARANYM_BUILD}.


2004/01/25 - Xavier
- gui-sdl/sdlgui.*:
  - aligned SGBUTTONs handling on other objects. They now need to have SG_EXIT
    or SG_TOUCHEXIT flag set to end dialog processing. Dialog definitions needs
    to be updated accordingly. This simplify code (and allows to use SGBUTTONs
    like SGCHECKBOXes). SG_EXIT and SG_TOUCHEXIT buttons are still deselected
    before dialog exit however. This should be removed and caller code should be
    responsible of deselecting buttons.
  - created a secondary loop to hande mouse clicks (SDLGui_MouseClick()
    function). Now, once an object is clicked, we ignore any keypress until
    mouse button is released. This fixes some underlying bugs (clicked buttons
    not deselected when user press RETURN, or when resolution change).
  - created a new function to handle keypress. First step to the full rewriting
    of SGEDITFIELD objects handling.
  - implemented SDLGui_Get[First|Next]BackgroundRect() functions. They allow
    main thread (hostscreen.cpp) to get a list of rectangles to update the
    background without erasing the opened dialog. We are ready to implement
    "flying dialogs". :) This code will need updating if we implement SG_POPUP
    handled by sdlgui, since popup menu can be higher than root box.
  - SDLGui_ObjFullCoord() now returns correct coordinates for SGEDITFIELD
    objects.
  - factorized some code ; simplified loops. This allows central loops to be
    far more readable.
  - commented a bit.
  - corrected some returns values and tests. Object #0 should be handled the
    same way as the others. Functions should return -1 when no objects found,
    and calling functions should test for ">= 0" and not "> 0".

- src/hostscreen.cpp: rewritten HostScreen::blendBackgrounds(). It now uses
  SDLGui_Get[First|Next]BackgroundRect() functions and is a bit shorter than
  before.

- gui-sdl/dlg*.cpp: added SG_EXIT flag on all SGBUTTONs object (unless they were
  already SG_TOUCHEXIT).

- gui-sdl/dlgDisk.cpp: uncommented IDE0_GENERATE and IDE1_GENERATE buttons.
  Added SG_HIDDEN flag on them for now (until SG_DISABLED flag is implemented or
  the code behind is written).


2004/01/24 - milan
- CPU: small cleanup

- JIT: blacklist opcode for debugging

- sync with BasiliskII


2004/01/23 - Petr
- gui-sdl/dlgDisk.cpp: changed floppy path was not applied to the bx_options

- doc/documentation.txt: Bjoern Spruck has contributed a network init script.


2004/01/09 - Xavier
- gui-sdl/dlgAbout.cpp: made "OK" button the default one.

- gui-sdl/dlgDisk.cpp:
  - made "Back to main menu" button the default one.
  - shortened displayed pathes to better suit new button's look.

- gui-sdl/dlgFileSelect.cpp: made "Okay" button the default one.

- gui-sdl/dlgKeyboard.cpp: made "Back to main menu" button the default one.

- gui-sdl/dlgMain.cpp:
  - made "Close" button the default one. This may not be the better choice. I
    think we could set "Apply changed settings" button as default once any
    parameter is modified, and set "Close" back when user changes are applied.
    This way pressing RETURN 2 times would apply setting, then close GUI.
  - fixed indentation.

- gui-sdl/sdlgui.*:
  - Made SDLGui_Draw3DBox() more fexible. Allows to choose width of 3D and
    black border now. It's a shame not to use it more : buttons are very nice
    with a 10 pixel wide 3D effect. ;)
  - implemented SG_DEFAULT buttons.
  - Reviewed TOUCHEXIT objects handling (fixes fileselector arrows bug
    introduced on 2004/01/06).


2004/01/08 - patrice

- dsp_disasm.cpp: many references to old 'dsp.' variable lying around, now
  replaced by 'GetDSP()->'.
- hostscreen.h: forget to include config.h for ENABLE_OPENGL value.


2004/01/07 - Xavier
- doc/build-cygwin.sh: Corrected a minor bug in error handling.


* tagged as ARANYM_0_8_5_BETA

2004/01/07 - Petr
- gui-sdl/dlgMain.cpp: show "unsupported yet" everywhere for the curious.

- NEWS, README etc: update for release

- doc/build-cygwin.sh: "bash" is in /bin/ (and rpmbuild insists on that)


2004/01/06 - Xavier
- gui-sdl/sdlgui.cpp: improved maintainability and "look'n'feel".
  - Factorized objects coordinate computation.
  - Factorized objects refreshing code.
  - Factorized objects drawing code.
  - Radio button handling simplified.
  - Dialog centered "on the fly" (root object coordinates not modified anymore).
  - Dialog centered at the pixel level instead of char level.
  - Boxes/Buttons borders more GEM-like.
  - Buttons labels centered at the pixel level instead of char level.
  - When user click on a button and move the mouse before he release mouse
    button, the state of the button is dynamicaly updated.
  - SDLGui_FindObj() takes buttons and boxes border into account.
  Since ARAnyM GUI does not use radio buttons or popup buttons, these objects
  have not been tested. Will do it ASAP. Please report any problem with them.

- hostscreen.cpp: modified GUI size to keep root box borders on screen.


2004/01/05 - Petr
- main_unix.cpp, parameters.cpp: 'program_name' is back (cygwin needs it)

- input.cpp: try to iconify fullscreen window when user wants to release
  mouse and keyboard (Hi Guido :-)

- main.cpp: NatFeats initialized at startup, de-initialized at exit and
  re-initialized at Restart. The re-init code (exit + init) is not optimal.
  Maybe we should come up with a reinit() function and let NF authors to
  define what should happen at creation time only and what should be
  refreshed upon each reboot.

- natfeat/nf_base.*: bool init() and void exit() virtual functions defined.

- natfeat/nf_objs.*: initNatFeats() calls all NF's init(). Similarly for
  exitNatFeats().

- natfeat/xhdi.cpp: the init() function is used for remembering the disk
  settings so that on-the-fly changes in SETUP don't ruin the pending
  disk operations. This was the main reason for introducing NF init/exit
  although after reviewing the code it was obvious that such functions
  were needed for a long time and will be useful for other complex modules
  (hostfs?) in future.


2003/01/04 - STanda
- fvdidrv:
   * NF API interface polished (made with a use of the enum {} like
     e.g. hostfs). The old non-NF interface dispatch routine removed.
   * Color handling rewritten to be able to support virtual workstation
     local palette. The NF API functions now take HW color values instead
     of the color index (XaAES RSC palette feature works properly now).
   * The interface version bumped to 1.100 (nfapi version constant
     0x10000960 -> 0x11000960) due to the color handling changes.


2004/01/03 - Petr
- videl.cpp, parameters.*, main.cpp, configure.ac, documentation.txt:
  DIRECT_TRUECOLOR hack removed. I don't think it was ever used.

- main_unix.cpp: code rearranged for slightly better readability.

- gui-sdl/sdlgui.*: SG_HIDDEN state introduced. Helps for context-sensitive
  display.

- gui-sdl/dlgDisk.cpp: no more confused users as all CD-ROM unrelated
  settings are hidden now when CD-ROM is selected.
  An automagic detection of C/H/S geometry for loaded disk images added.

- parameters.*, main.cpp: tos and emutos paths moved to bx_options struct.
  The goal is to keep everything in the struct for easier handling in the
  SETUP GUI.

- main_unix.cpp: 'program_name' is gone.


2004/01/02 - Petr
- gui-sdl/dlgDisk.cpp: Disk geometry added (C/H/S).
  Also, there is Insert/Eject button in each IDE set so it now supports
  mounting of two IDE CD-ROMs simultaneously :)

- gui-sdl/sdlgui.cpp,h: CHECKBOX can be placed on right side of the text.
  Same thing could/should be done for RADIO button.

- gui-sdl/font8.h: font8.bmp included in the code itself to get rid of
  problems with loading it at runtime

- gui-sdl/sdlgui.cpp: Load_XBM() for initializing the font (kindly provided
  by Martin Doering, thanks).

- parameters.cpp,h: recently added guifont_path removed :) It will come back,
  though, once the TOS font file format loading is implemented (see TODO).

- Makefile.in: font8.bmp is not installed

- configure.ac, Makefile.in: GUISDLSRCS introduced (contains gui-sdl/ files)

- TODO: one thing done (font8), another ideas arrived (floppy bootup insert)


2004/01/01 PM - Petr
- fdc.cpp: added is_floppy_inserted() (used in the config GUI). Also
  changeFloppy() called on insert_floppy() - this fixes the old reported
  problem with installing NVDI from several diskettes.

- hardware.cpp,h: getIDE() added (used in RestartAll for IDE reinit).

- ide.cpp,h: init() added - contains the conversion of some bx_options
  that was previously in parameters:postload_ide(). In init() it's better
  as we need to convert the options also after config GUI changes (where
  we don't want to call postload_* stuff).

- main.cpp: call IDE::init() in RestartAll() to reinitialize
  the IDE settings (possibly changed in the config GUI).

- parameters.cpp,h: 'floppy.inserted' removed. Instead, we'd need something
  like 'floppy.present' to indicate whether to mount the floppy on boot
  or not.
  Also the bx_options.atadevice parameters conversion moved to ide::init().

- parameters.cpp: loadSettings() now properly pre-/postinitialized by
  calling preset_cfg() and postload_cfg().

- gui-sdl/dlgDisk.cpp: rewritten, finished, tested, working.

- gui-sdl/dlgMain.cpp: load of settings from a config file now properly
  update GUI settings. Also the "Apply" button is enlarged to emphasize
  that without applying of the changes the Save Settings or Reboot/Close
  actions ignore the changes made in config dialogs.

- TODO: large update/rewrite. Get involved if you have some spare time.


2004/01/01 AM - Petr
- gui-sdl/dlgMain: adding more options

- input.cpp, main.cpp,h: RestartAll() now reinitializes the OS (in future
  it has to reinitialize also the memory and all hardware). Visible result
  of this change is the possibility of loading another config file from GUI
  in run-time and reboot with different OS (from TOS to AFROS, for example).

 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 ~~ Happy New Year to all ARAnyM fans ~~
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

2003/12/31 - Petr
- main.cpp: startup GUI now uses the same thread schema as the normal GUI.
  Windows SDL couldn't read mouse events in timer thread :-(

- input.cpp: small clean up in the GUI handling


2003/12/28 PM - Petr
- hostscreen.cpp: removed the scary IPC hack and switched to user SDL events

- input.cpp: same IPC hack fix, SDL keyboard and mouse events mapped to
  the user event. The event processing (in check_event()) changed from
  PollEvent to threadsafe PeepEvents().

- gui-sdl/sdlgui.cpp: IPC fix: keyboard and mouse events decoded from user
  events.

- gui-sdl/dlgMain.cpp: missing initialization of reboot/shutdown flags.
  Loading/saving of config file with editable filename implemented.

- parameters.cpp,h: loading and saving of config file from GUI works now.

- main.cpp: fixed scary bug - how could this work this morning? Use the
  GUI timer thread _before_ the actual 200 Hz timer thread is started...


2003/12/28 AM - Petr
- sdl-gui.cpp, dlgMain.cpp: font init moved back to the main dialog,
  freeing of font surface added.

- hostscreen.cpp: color palette initialized to 16 default TOS colors

- main.cpp: startup GUI with separate timer thread for handling input
  events before the standard 200 Hz timer starts

- parameters.cpp,h: "-G" command line parameter opens the startup GUI.


2003/12/27 - Petr
- SDL GUI cleanup: first, all SDL GUI related files are in gui-sdl/ folder
  now. Then, each dialog is in its own file. At last, SDL GUI now supports
  EDIT field (have yet to add passing the keyboard info) and the FileSelect
  now supports editing the filename ("save as..."). We are basically in sync
  with hatari 0.45 now.

- sdl-gui.cpp: dialogs are now centered automagically by DrawDialog().
  May seem unnecessary at first but helps when the screen resolution is
  changed and dialogs need to be redrawn at different positions.

- input.cpp: cleaned up the way the GUI is open

- main.cpp: prepare for the initial GUI popup

- ndebug.cpp: "char" -> "int" to get rid of a compiler warning

- sdl-gui.cpp: font init moved from dlgMain to SDLGui_Init().

- include/version.h: we are at 0.8.5alpha now


2003/12/26 - Petr
- input.cpp: cleaned up.


2003/12/25 - Petr
- hostscreen.cpp: terrific hack that lets the SDL GUI thread know about
  resolution change.


* tagged as ARANYM_0_8_4_ALPHA

2003/12/24 - Petr
- hostscreen.cpp: blendBackgrounds() added. This function updates the
  background of active GUI with the running ARAnyM screen contents.
  I played with SDL_SRCALPHA etc. to make the background a bit greyed out
  or something but haven't succeeded.

- main.cpp: blendBackgrounds() called with 5 Hz refresh. Also the VIDEL
  renderScreen is now called even if GUI is active (naturally, otherwise
  the blendBackground couldn't work).


2003/12/19 - patrice

- bad implementation of bcopy() macro for mingw in sysdeps.h.

- changed DATADIR to ARANYM_DATADIR to make mingw and cygwin happy (not
  conflicting with their system headers).


2003/12/17 - Petr
- parameters.cpp: "GUIfont" config option added (as promised). Most of
  the complicated logic for guessing the right path for non-Unix systems
  can be removed soon.

- sdlgui.cpp: removed the cygwin_to_win32 conversion of the GUI font path.
  Two reasons for that: first, user can specify the path in MS-DOS format
  in the config file now (if ever needed). Second, the mingw32 compiled
  SDL does not work properly anyway so we use cygwin compiled SDL now
  (and that one surely reads unix-like paths).


2003/12/16 - Petr
- mfp.cpp: initializing the internal variables suddenly fixed all the
  weird problems I had with booting the aranym since I converted the HW
  classes to dynamically created objects. So it's finally solved.


2003/12/16 - Xavier
- doc/build-cygwin.sh: added a small shell script to ease compilation on
  Cygwin systems. This script is needed since SDL does not allow to build
  Cygwin applications out of the box. Please read comments at the top of
  build-cygwin.sh for detailed informations.

- doc/compiling_for_windows.txt: removed old documentation superseded by
  build-cygwin.sh.


2003/12/15 - Petr
- why to bother with demoing weird problems in extfs.cpp when the file
  is obsolete and can be removed? Good idea from Standa. ExtFS removed.
  HostFS is the only right choice now.

- emul_op.cpp: bunch of obsolete emul_op instructions was removed.

- aradata.cpp: register 0x9000a.L removed (it used to report the ExtFS
  drives bitmask but I can't recall if it was ever used in the planned
  application for auto-configuration of the BetaDOS's config file).

- hardware.cpp: the ARADATA now handle 18 bytes of HW regs only
  and I plan to convert the remaining mouse information to NatFeats
  so that ARADATA could be removed completely.

- hostfs.cpp: debugging disabled. Proper GPL header added.

- Unix/configure.ac: ZLIB is required only if LILO is enabled so the check
  for ZLIB is not performed when LILO is not enabled (Patrice's idea
  but he was too lazy to do it :)


2003/12/09 - Petr
- extfs.cpp: rewritten the initialization of rootPath a bit. And added
  #define DEMO_WEIRD_PROBLEM. That is the "AFROS does not boot" problem
  that is still there and can be easily exhibited just by allocating the
  'A' rootPath earlier in the start process. Note that it somehow affects
  the MFP interrupts which later causes EmuTOS to hang during boot. Very
  weird.

- extfs.{cpp|h}: proper GPL header (this one should be added to ALL files)


2003/12/09 - STanda
  the change from (2003/10/02):
  " Fxattr() now returns the (uint32)MAPVOIDPTO32( fc->index ) instead
    of the host OS' statBuf.st_ino. This is a problem IMO due to that
    the fc->index might change on releaseCookie()/dupCookie(). Proposals?"
  proved wrong. Rolling it back.


2003/11/28 - Petr
- extfs.cpp: made sure the drives[].rootPaths are really initialized to
  a defined value. Also, I don't like functions in header files so moved
  constructor/destructor to the CPP. And it seems to fix the problem
  with freezing EmuTOS due to a MFP problem.


2003/11/27 - Petr
- forgotten "extern DSP" declarations removed

* interesting thing: I figured out that AFROS boots on the 0.8.4+ ARAnyM
  if the [HOSTFS] H=<path> is at least 12 bytes long.
  Example: stock AFROS contains just "H=/tmp/". The boot freezes. But if
  this path is extended to "H=/tmp/6789012" AFROS boots. Sounds like
  an encouraging thing to debug... Hopefully not a compiler bug!


2003/11/25 - Petr
- Patrice convinced me to do a two years pending rewrite of the hardware
  emulation dispatcher. This is a pretty fundamental change to the deepest
  internals of ARAnyM so please take it with great care and do backup
  all your disk drives first! It may easily destroy all your data if I made
  a mistake somewhere.
  All HW modules are now true dynamically created instances. This fixes
  a number of hidden problems including the crash of DSP emulation thread
  on OS X. It also allowed me to improve and simplify the address dispatcher
  (as has been written in TODO for a looong time).
  Almost all files are affected. Definitely all that emulate HW and a couple
  more. All HW classes are based on BASE_IO now, ICio is gone (why did I
  introduce it? I can't remember).
  The speed impact is non-measurable (on my machine, at least) and the
  source code now looks way better. I am glad I finally rewrote it.
  I also know AFROS does not boot. I have yet to figure out why.

- fdc.cpp: HWget/HWput replaced with much smarter FDC::[sg]etDMAaddr()

- aranym_glue.cpp: REBOOT_OR_HALT is set to HALT now. Rebooting was not
  a good choice (I ended up in an neverending loop of reboots).

- main.cpp: fdc_init() moved to ACSIFDC constructor. Also the ROM->RAM
  first two long words copying moved to InitOS(). HWExit() calling added.

- hardware.cpp: the special case in reading/writing words or longs
  for HW_IDE is finally gone. Now each class can override the handle***
  functions if it wants to catch the word and long access. Hopefully
  nothing breaks after this essential change.

- parameters.cpp: added zero parameters to fix compiler warning about
  missing initializers.

- *.cpp: many "unused parameter" warnings resolved by enclosing unused
  parameters in /* */


* tagged as ARANYM_0_8_3_BETA

2003/11/23 - stefanq
- added darwin folder containing all necessary files to make a Mac OS X
  port of aranym
- Makefile.in: added option -r to target APP_LIB, wich is necessary for
  darwin.
- configure.ac: corrected the pathes for frameworks for darwin
- input.cpp: added some #ifdef OS_darwin to reflect some differences in
  the keyboard layout of Apple computers.
- parameters.cpp: changed a %d inside an fprintf() call to %lu to prevent
  a compiler warning.


2003/10/26 - Petr
- doc/hguide.txt: written "Threads and Interrupts" chapter. I always
  wanted to document it since I myself had often hard time recalling
  how it was actually implemented.


2003/10/25 - Petr
- newcpu.cpp, aranym_glue.cpp: bus error handling code rearranged a bit:
  SDL related code should not pollute the newcpu.cpp. Also tried to fix
  the indentation (in the BUS ERROR handler of the Exception function
  at least, since Milan does not want me to reformat the whole file).

  In case of problems the ARAnyM reaction (reboot or halt) is now common
  for both EPS (exception per second) and DBF (double bus fault) and is
  configurable by defining REBOOT_OR_HALT at compile time.
  If REBOOT_OR_HALT == 1 ARAnyM reboots in case of double bus error or
  bus error loop. Else it halts CPU and quits. By default it reboots.

  EPS code now counts both EPS at same PC and also general EPS (regardless
  of the current PC). Runtime configurable limit is for EPS_PC only, so far.
  The general EPS' limit is configurable at compile time by defining
  EPS_LIMIT to a number. Should be made runtime configurable as well.

  The only missing thing is SDL dialog informing about the situation
  and offering more options. See the /* remarks */ in code.

  Bus errors are not printed on console now. The EPS and DBF patches
  should take care of problems and we are not interested in "normal"
  bus errors.

- TODO: updated (some items removed since they were done already)
- AUTHORS: slight update


2003/10/25 - Xavier
- newcpu.cpp: better fix for double bus errors - CPU restarts now
- main.cpp: display correct EmuTOS build date
- configure.ac: caddr_t final solution
- vm_alloc.cpp: caddr_t cleans the #ifdefs out


2003/10/17 - Xavier
- newcpu.cpp: real trap for double bus errors

- configure.ac: allows to "make depend" on Cygwin and correct end message
  of configure script so that user knows he should "make depend" before "make"

- Makefile.in: sed script in "make depend" more readable

- vmalloc.cpp: correct a build error on Cygwin (an mmap we forgot...)


2003/10/14 - patrice
- newcpu.cpp: added exception per second limiter, configurable in .aranymrc


2003/10/06 - milan
- nfcdrom: another cleanup (destructors)


2003/10/06 - milan
- newcpu.cpp: Exceptions in JIT handled correctly now, grrr.


2003/10/05 - milan
- BasiliskII sync and cleanup, AMD64 as a host (in 32-bit mode)

- nfcdrom.h: some methods are abstract now

- aranym_glue.cpp: support for compiled mainloop in JIT


** ARAnyM 0.8.2beta released

2003/10/04 - Petr
- natfeat/nf_basicset: added OS_TYPE and CPU_TYPE to NF_NAME(1)
- minor TODO update
- Makefile.in: nfcdrom.bos added to install targets
- atari/network/ethernet/README: URL of site about TUN/TAP added
- doc/compiling_for_windows.txt added
- doc/aranym-lilo.txt added
- doc/aranym.1 (man page) - small typo corrected
- include/version.h: increased for 0.8.2beta release


2003/10/04 - Milan
- Bochs sync and cleanup, mainly around CD-ROM support


2003/10/02 - STanda
- Harddisk usage related documentation made up-to-date.
- HOSTFS: cleanup + some new features.
  * Fxattr() now returns the (uint32)MAPVOIDPTO32( fc->index ) instead
    of the host OS' statBuf.st_ino. This is a problem IMO due to that
    the fc->index might change on releaseCookie()/dupCookie(). Proposals?
  * The first fscntl() implementation added.
  * The convertPathA2F() method was removed. This was a legacy code from
    the times when the native implementation had the BetaDOS driver API.
    Now it has the FreeMiNT's XFS API and the BetaDOS' driver API (GEMDOS)
    emulation was stolen from FreeMiNT.
  * The ExtDrive * was added to the XfsCookie and is filled within the
    fetchXFSC() method. This was needed for the cookie2Pathname().
  * xfs_symlink() improved - still not perfect
  * open() modeMint2Host conversion introduced (for the case the stat.h
    is incompatible - not very likely)


2003/09/30 - patrice
- Natfeat CD-ROM driver splitted to ease port to other OS.


2003/09/29 - milan
- Makefile.in: APP_LIB added (hmmm, sorry, diploma thesis, thanks Francois and
  Stefan :-)


2003/09/25 - milan
- configure.ac: OS_TYPE and CPU_TYPE for future natfeat exported to sources

- hostfs.cpp: debuginfo blocked for CVS


2003/09/23 - patrice
- Audio CD players should work now. And data CD-ROMs can be read using any
 iso9660 dos Atari driver.


2003/09/21 - patrice
- Added NF CD-ROM BOS driver. Very simple Atari CD player programs work, but
  some ioctls are still not implemented correctly, and for the moment not
  usable for iso9660 fs access, and only for Linux.


2003/09/15 - STanda
- --enable-realstop added to the configure options (default=yes and implies
  the --enable-spcflags-excl option). The STOP condition wait and locking
  was integrated properly to the uae_cpu core.


2003/09/15 - STanda & !Petr
- STOP instruction emulation greatly improved. usleep() was replaced with
  SDL_CondWait() - better portable and what's more important - fixing
  jerky mouse movement under new FreeMiNT, fVDI and EmuTOS!


2003/09/10 - Petr (commiting patches submitted by Guy Harrison, thanks!)

- Makefile.in: fixes possible conflicts between aranym headers and system ones

- autogen.sh: shouldn't 'make depend' unless it configures...


2003/09/05 - Petr
- blitter.cpp, mfp.cpp, rtc.cpp: rid of compiler warning "comparing unsigned
  variable with signed value"

- various files: rid of compiler warning "unused parameter"


2003/09/03 - milan
- CPU flight recorder from BasiliskII ported and SR support added

- ndebug compilation warnings fixed


2003/08/29 - milan
- some compiler warnings solved

- more warnings support with GCC

- inline warnings not showed now

- MONITOR0-9 Emulops for JIT modified


2003/08/15 - milan
- new CPUDEBUG emulops, switches for new internal variable cpu_debugging,
  for CPU debugging

- make dependencies corrected

- gencomp.c: compilation warning cleaned

- md5.h -> aramd5.h : thanks, Guy Harrison

- vm_alloc.cpp: Cygwin workaround, thanks, Xavier Joubert


2003/08/06 - milan
- mingw support cleaned (added to sysdeps.h)


2003/08/05 - milan
- autogen.sh, configure.ac: cleaning, free patch from Guy Harrison for MAKE,
			    xeys problem solved

- configure.ac, lilo.cpp: zlib & lilo support standardized
			  nightmare -> bobek transfer

- Makefile.in: make depend for linux corrected


2003/07/28 - Petr
- natfeat/xhdi.cpp: XHInqTarget2 implemented. Also some little cleanup
  (error codes replaced with symbolic names)

- parameters.[cpp,h]: added floppy status ('inserted'). Floppy path correctly
  initialized

- version.h: version increased to 0.8.1 CVS

- SDL GUI: MAX_FILENAME_LENGTH defined in file.h

- newcpu.cpp: exceptions (bombs) are displayed again (dunno who and why
  disabled it)

- parameters.cpp: printing of version at startup is in main_unix.cpp


2003/07/18 - Petr
 My little cleanups:
- #ifdef OS_mingw cleaned up. Created a new Unix/mingw_include.h file that
  should be included to a generally available include file (config.h?)
  if the host OS is mingw.

- SDL locks moved from newcpu.cpp to aranym_glue.cpp (let's keep the borrowed
  modules as clean as possible).

- emul_op.cpp: activate_debugger() on 0x71ff disabled as it was crashing
  whole emulation.


2003/07/17 - Petr
- src/natfeat/hostfs.cpp: converPathA2F() tried to strip a drive letter
  from base path. Xavier debugged this and patched it to not remove
  the drive letter since it's the HostFS path (and drive letter on Windows
  is important).


2003/07/16 - Petr
- src/natfeat/hostfs: a small workaround for a bug in Cygwin's GCC allows
  extending the path buffers back to 2048 chars (thanks to Xavier)


2003/07/13 - Petr
- configure.ac: ARANYMHOME quotation mark encapsulation fixed for cygwin
  (thanks to Xavier)

- updated TODO


2003/07/11 - milan
- nice night - some stupid bugs in JIT compiler corrected:
  - compiler_dumpstate() with no previous compilation
  - not ended NEG in sigsegv handler
  - etc. (sorry, it is too late)

- Makefile.in: define -D_REENTRANT -D_THREAD_SAFE

- ata.cpp: CD-ROM product ID corrected for little endian


2003/06/26
- ARANYM_0_8_0_BRANCH merged to main and tagged as _ABANDONED.
  The merge brought just minor JIT and HostFS fixes (see 2003/04/1[25])


2003/06/12 - milan
- configure.ac: ECE support corrected


2003/06/11 - milan
- emul_op.cpp: better OP_MONX


2003/06/10 - milan
- emul_op: new instruction 0x71ff (OP_DEBUGGER) starts debugger if available
	   new instructions 0x71fX (OP_MONX) display CPU registers


2003/06/01 - milan
- configure.ac, Makefile.in: MacOS X support updated (thanks, Stefan Kuhr)

- "SDL/" removed from includes, path to SDL headers must be fully defined

- sync with BasiliskII


2003/05/27 - milan
- configure.ac: MacOS X support rewritten (thanks, Stefan Kuhr)


2003/05/26 - milan
- configure.ac, fpu_ieee.cpp: Sparc problem solved, see "2003/04/23 - milan"
  and GCC bugs #8300 and #9763


2003/05/01 - patrice
- minimal ncr5380 scsi emulation to allow Linux boot. Maybe TOS harddisk drivers
  also do not hang anymore: need testing.
- lilo: ramdisk copied to FastRAM, so it is not written over when kernel boots.


2003/04/28 - patrice
- midi: Added option to output bytes sent to MIDI interface in a file.
- lilo: Bugfix, thanks to midi output.


2003/04/25 - patrice
- cfgopts modified so the value given can contain the '=' sign.
  Added Lilo to Aranym: you can boot a Linux/m68k kernel with it.
  MMU support required (and debugged!) for this option.


2003/04/23 - milan
- configure.ac: on Sparc with GCC 3.x use older FPU (UAE), GCC bug workaround

- Makefile.in,configure.ac: small update


2003/04/22 - johan
- fvdidrv.cpp: Reverse transparent mode for vrt_cpyfm corrected.


2003/04/16 - patrice
- Corrected inclusion of SDL headers.
  Removed useless glut library linking.


2003/04/15 - STanda
- hostfs:
  * constant usage cleanup.
  * xfs_creat()/xfs_dev_open() issues fixed (gunzip works properly now)
  * xfs_native_init() improved to be able to handle both the 1.15.x
    and 1.16 (new Dcntl() feature) - reacts on the 0-31 devnums when
    appropriate.


2003/04/12 - Petr
- compemu_support.cpp: unnecessary fopen("/dev/zero", O_RDWR) removed.
  This allows running aranym-jit on ARAnyM Demo CD (Knoppix based).


** ARAnyM 0.8.0beta3 released

2003/04/10 - Petr
- parameters.cpp: addFilename() has a different order of arguments
  and is able to deal with additional path separators

- cygwin support hopefully perfect now (uses registry to find out the path
  to "My Documents" folder which is used instead of the Unix-ish $HOME).

- hostfs.cpp: char a[2048] - local arrays for filenames now defined with
  MAXPATHNAME2LEN (MAXPATHNAMELEN was already used and I wasn't sure if
  it can be used in the other cases as well).

- !IMPORTANT! With MAXPATHNAME2LEN set to 2048 gcc 3.2 created incorrect
  code on cygwin. Thus both MAXPATHNAME[2]LEN were set to 255 for now.
  I realize it's dangerously low value but if we are suffering from
  stack overwrites we need to go low and re-check all issues again.
  Note that this fixes the wrong mapping of host folders under Cygwin..


2003/04/09 - Petr
- parameters.cpp: do not include emu_bochs.h - this breaks some platforms.

- tools_cygwin.cpp: Xavier submits a routine for reading the registry


2003/04/08 - Petr
- hostfs.cpp: fixed very annoying bug that was causing bus error when opening
  root of a host drive.

- parameters_cygwin: fixed a bunch of small bugs, now tested and works OK.


2003/04/08 - patrice
- Document autozoom in the [VIDEL] section, and [OPENGL] section, in
  documentation.txt and aranymrc.example


** ARAnyM 0.8.0beta2 released

2003/04/08 - Petr
- cfgopts: Thomas correctly suggested to use memmove() for overlapping
  blocks of memory.

- changes made between ARANYM_0_8_0BETA1 and 0_8_0_BETA2 merged to main.


2003/04/07 - patrice
- Preliminary support for mingw compilation suite.


2003/04/07 - STanda
- hostfs.cpp: General debug messages cleanup.
    The st2flags() and flags2st() methods fixed (a need for open()).
    The isPathValid() method removed (was only useful for aranymfs.dos).
    Dpathconf(8-9) added and 7 fixed (Thing has a bug in 1.27 here IIRC).


2003/04/07 - Petr
- configure.ac: parameters.cpp and its children updated. Should be ready
  for adding more cygwin specific functions.


2003/04/06 - Petr
- parameters.cpp: '-S' handling corrected. Small cleanup in getopt()..

- natfeat/ethernet.cpp: back to execp(), now starting of 'aratapif'
  works OK thanks to use of _exit().

- parameters.cpp: cleanup in getConf/DataFilename(). Now uses 'callbacks'
  for obtaining the folder path. These callbacks are defined for Unix
  and for Cygwin so far (Cygwin needs a different handling). Hacks
  with "--datadir=/" removed completely. Thanks to Xavier for the Win32
  related information and ideas.

- Unix/cygwin: new folder with tools_cygwin.cpp and parameters_cygwin.cpp.
  The Makefile.in was not updated yet.. Trying to find a more flexible
  way than copying things from parameters_unix to parameters_linux...


2003/04/03 - STanda
- hostfs.*: general clean up

- tools.*: The 32bit <-> host mapping for systems with non 32bit
  void* and int. Several other functions were moved to the tools.h.


2003/04/01 - Petr & Honza/ATACK
- main_unix.cpp: segfault on gentoo (where the argv[0] does not contain
  the path (only filename)).

- natfeat/ethernet.cpp: missing ethX definition in DEBUG() statement


2003/03/30 - Petr
- cygwin gets its own folder with a tools.cpp file.

- sdlgui.cpp really needs the explicit conversion of the path. Xavier was
  right, after all.


2003/03/29 - milan
- Petr's version capabilities implemented

- infoprint as cname for panicbug, sorry Petr

- man page from debian added


2003/03/28 - STanda & Petr
- natfeat/hostfs.cpp: DIRSEPARATOR used wherever possible. Might fix HostFS
  on Windows.

- parameters.cpp: DATADIR can't be relative so now it checks for "//"
  (configure --datadir="/") and then ARAnyM uses the path to the binary
  as the DATADIR path (fixed later the same day)


2003/03/27 - Petr
- parameters.cpp: correction and clarification of "-d" command line switch

- input.cpp: a key for generating screenshots changed to "PrintScreen"
  (the Alt+PrintScreen collided with Linux kernel hacking SysRq combination)

- [ARANYMFS] config file block header changed to [HOSTFS]. The [ARANYMFS]
  is still read in case [HOSTFS] is not found in the config file. But in near
  future ARAnyM will stop reading the old [ARANYMFS]. Updating your config
  file automatically is as easy as starting aranym with -s. After that you
  may just remove the [ARANYMFS] block from your config file.

- user-specific files ("config", "nvram") are stored in subfolder ".aranym"
  in the $HOME folder. If $HOME is not defined, $USERPROFILE is used instead
  (Windows 2000). If neither $HOME nor $USERPROFILE is defined then the path
  to the ARAnyM binary is used.

- system-wide data files ("ROM", "etos512k.img", "font8.bmp") are stored
  in subfolder "aranym" in the "/usr/local/share" folder (by default). This
  folder can be changed in configure by --datadir=<path>. If this folder
  is defined as 1 char long path ("." for the actual folder) or is empty
  then ARAnyM tries to use the path to the ARAnyM binary instead.

- DIR_SEPARATOR renamed to DIRSEPARATOR and corrected (it's been already
  used in several places).


2003/03/27 - milan
- configure.ac: DIR_SEPARATOR added.

2003/03/26 - milan
- JIT games, sync with BailiskII


2003/03/24 - milan
- Solaris support updated

- one paranoia "volatile" fix in CPU


** ARAnyM 0.8.0beta1 released

2003/03/24 - Petr
- aranym.xfs renamed to hostfs.xfs

- new binary drivers (hostfs.dos, hostfs.xfs, aranym.xif, nfeth-config)
  added to CVS.

- Makefile.in: installs new hostfs (instead of old aranymfs) and also
  new aranym.xif plus utilities.

- aranym.spec: updated for new release, install new files.

- doc/documentation.txt: slight update (regarding BetaDOS only)


2003/03/23 - Petr
- nfeth-config.sh: added, calls araethip and shows how easy is to configure
  the device automagically.

- araether.c: AUTO_IP_CONFIGURE (automatical internal configuration of
  eth addr and netmask) added but is not working well, thus disabled by
  default. Also the DEBUG(()) system doesn't seem to work so I wrote
  mine for the ioctl() - can be enabled by defining MY_DEBUG.

- renamed things: "araeth*" -> "ethernet", "araethip" -> "nfeth-config"

- atari/hostfs/README, atari/network/ethernet/README: updated

- 'aratapif' started by 'execv()' from the same folder where aranym was
  started from. Also a couple of checks for file owner and setuid bit
  added so users get warnings if chown/chmod was not applied to aratapif.

- version.h updated to 0.8.0beta1

- configure.ac, Makefile.in: renamed "pif" to "ifc" and "arapif" to "tapif"

- TODO, BUGS, INSTALL, NEWS, README and other files updated.


2003/03/22 - Petr
- [ETH0] settings in the config file

- aranym_xfs.c: ifdef'ed one debug print

- araethip.c: improved and adapted for possible many eth devices


2003/03/21 - Petr
- networking: NF API extended to allow emulating more than 1 network card

- aranym.xif: added SIOCGIF modes to autoconfigure the device with its IP
  and netmask.

- natfeat/ethernet.cpp: initialization corrected. The XIF should not install
  on atari side unless the host initialization was finished OK.


2003/03/20 - STanda
- hostfs.cpp: mapping improved.

- .DOS/.XFS:  .xfs works now just like the MetaDOS's driver
  it maps all the drives under the same driver letters.
  It goes through the [aranymfs] for the mapping.
  After a conversation with Frank Naumann I conclude that
  the M(B)etaDOS/ExtenDOS would not work with the 1.16 FreeMiNT
  kernel line. So do not use the .dos driver there as the
  very same thing is provided by the .xfs there now.
  The configuration stays the same.

- aranym_xfs.c: the source can be swithed to use the Dcntl()
  to map the drives, but in that case you can't get the single
  letter mountpoints.


2003/03/19 - STanda
- hostfs.cpp: the metados hostfs.dos driver simply sets the mapping the
  same way as aranymfs.dos. No change for the user.
  NOTE: Do not use aranymfs.dos driver. It doesn't work under
  FreeMiNT 1.16 kernel

- aranym.xfs: now mounts the [aranymfs] mountpoints to U:/GG
  (need to develop a hack to map that to U:\G only /single letter mount
   point) - not via Dcntl() which looks in BIOS in this case)


2003/03/18 - milan
- P4 fix for JIT compiler

- sync with BasiliskII


2003/03/17 - milan
- FPU updated, preparation for K8


2003/03/17 - STanda
- hostfs.cpp: the chattr/chmod functions ported from STonX. Not tested.
  It just compiles ATM.


2003/03/16 - Petr
- natfeat/doc/native.txt updated (used Laurent's latest version without
  the NF_CONTROL stuff and with corrected unsigned long ID).

- TODO updated

- natfeat/ethernet.cpp, atari/network/araeth/araether.c: subIDs are now
  defined in a separate header file named araether_nfapi.h. This should
  make the connection between host side and atari side of the natfeat
  clearly visible.

- natfeat/ethernet.cpp: getting of IP addresses added. Used in a separate
  program called 'araethip'. Version of the arether_nfapi must have been
  increased so update your aranym.xif binary.

- atari/network/araeth/getparams/araethip.c added. Can be run from MiNT's
  rc.net to call the ifconfig and route with proper IP addresses.

- atari/network/araeth/README: updated with info about 'aratapif' and
  the tunnel device - simply about getting the whole thing working.
  'araethip' is not covered yet in this README.


2003/03/15 - Petr
- major rewrite of the aratapif (ARAnyM TAP IFconfig) and related
  updates in natfeat/ethernet.cpp. Now it actually works!


2003/03/14 - Petr
- dsp_cpu.cpp, araifc/inet.c: small fixes to remove GCC warnings


2003/03/13 - milan
- IDE: sync with bochs, BeOS, Cygwin, Darwin

- araifc integration


2003/03/12 - STanda
- hostfs.cpp: fake methods for chattr, chmode, chown and some more.
  The report the fakeness to the host OS console in debug mode ATM.

- araifc (ARAnyM ifconfig implementation for tuntap)


2003/03/12 - milan
- list of supported OS updated

- Makefile.in: diskimage cleaning


2003/03/11 - STanda
- aratapif: made working even in nondebug mode. The exec() arguments
  needs to be put into the child process adress space to be able to
  execute any binary.

- BetaDOS 3.12: works correctly with the hostfs.dos driver here it
  seems. Please test the driver throughly. It gives you the long names
  also under FreeMiNT (unlike the aranymfs.dos which does not work
  at all in my 1.16 setup - it does in 1.15.12 however)


2003/03/07 - Petr
- aranym.spec: paths to share/aranym had to be corrected (though I'd say
  they were OK previously and that our Makefile install: is wrong)


2003/03/06 - Petr
- external configuration tool for the setting up the tap0 device


2003/03/05 - STanda
- small fix in hostfs/metados/main.c


2003/03/04 - Petr
- ata.[cpp|h], parameters.[cpp|h] cleaned up:  obsolete disk_options_t
  and cdrom_options_t structures removed. Everything is stored in the
  atadevice_options_t now. Nice bonus is the possibility of naming the IDE
  device with new config option "ModelName" (string, up to 40 characters).


2003/03/02 - Petr
- natfeat/atari_example_gfa.lst: example for GFA Basic programmers
- natfeat/atari_example.c: updated for Ssystem() call


2003/03/01 - Petr
- parameters.[cpp|h]: single partition devices under the SCSI nickname
  need the partition ID to be configurable

- natfeat/nf_base.cpp: added, contains Atari<->Host memcpy and strcpy
  functions (taken from hostfs.cpp).

- hostfs: major NF API clean up. Versioning added. HOSTFS is Supervisor
  only now. Also the mount point in MiNT is "U:\hostfs" now.


2003/02/28 - Petr
- natfeat/ethernet.cpp: getHWaddr takes exactly 6 bytes and it's not a string
  so no EOS should be added. Thus strncpy changed to memcpy.


2003/02/27 - Petr
- Ethernet: README of aranym.xif made clearer, IP addresses in ece.cpp
  configurable by #define and the default ATARI IP address changed to
  192.168.0.2 (to prevent users from asking a question why it was .5).

- natfeat/ece.cpp renamed to ethernet.cpp

- NatFeat "ECE" dropped, new NatFeat "ETHERNET" with different API supporting
  also versioning and allows passing the interrupt level and MAC address
  from the host side. Also the ETHERNET NF is Supervisor only (naturally).


2003/02/26 - Petr
- ETHERNET_OLD (the one from Basilisk) removed completely

- Networking now at interrupt level 3 (Audio stays at int level 5)

- parameters.cpp: "--swap-ide" command line switch added (exchanges IDE0
  and IDE1 drives). I find it useful for preparing new disk images..

- parameters.[cpp|h]: get ready for SCSI disks ([DISK0-7]) (single
  partition mounting)


2003/02/26 - STanda & Petr
- natfeat/ece.cpp: after removing hostScreen.lock and one unfortunate D(bug)
  it started working. Wonderful. TODO: change interrupt (probably to INT3).
  Also would be good if root privileges for tuntap weren't necessary.

- "araeth" -> "eth" rename


2003/02/20 - Petr
- videl.cpp: fixed wrong st_shift reset, removed VIDEL regs initialization
  (since EmuTOS now initializes VIDEL properly). Startup color depth
  of host window is 8bit now (should be enough).


2003/02/19 - STanda
- fvdidrv.cpp: the expandArea M->M for bitplanes fixed
  The only TODO for full bitplane support is to support non-word
  aligned blits and expands.
  ... next shift (evening) ... the VDI pen -> TOS colors reduced
  only to proper setting of the palette (see getTosColor() method).


2003/02/18 - STanda
- fvdidrv.cpp: the bitplane modes improved. Up to the 4bit mode
  everything works well. The 8bit mode is on the way. There is still
  some little imperfection there.


2003/02/18 - Petr
- videl.cpp: writing to f_shift resets the st_shift and that fixes
  the color depth detection routine.


2003/02/17 - STanda
- BeOS patches for extfs.cpp and natfeat/hostfs.cpp


2003/02/16 - Petr
- cleanup in src/natfeat - fundamental NF functions grouped in 'basicset'
- cleanup in emulop.cpp - removed everything that has a NF replacement
- cleanup in araobjs.cpp - removed everything that is in src/natfeat as well
- NF_SHUTDOWN added


2003/02/12 - STanda
- tools/createdisk: rewritten into 'sh' syntax and tested on
  Solaris/HPUX/FreeBSD (all due to the clarity of the FreeBSD distribution
  requested)
  * you can create image of whatever size and pretty fast (we are using
    lseek() there now and so on ext2 you can create and image file bigger
    than your available space ;))
  * You need not to use the mbrdata file if you don't need it. See the usage
    notes for more.


2003/02/09 - patrice
- ikbd.cpp: corrected SendMouseMotion() which don't modify the buttons variable
  anymore.

- hostscreen.cpp, parameters.cpp: added 'Filtered' property to [OPENGL] section
  if you want do enable/disable linear filtering for screen rendering.


2003/02/04 - Petr
- input.cpp: fixed a long-standing bug with automatic mouse grab upon
  entering the ARAnyM window. This didn't work correctly when the ARAnyM
  window didn't have input focus.

- ikbd.cpp: there is a bug in the algorithm of compressing the mouse
  packets. I added a simple workaround but in the future this should be
  fixed properly.

- input.cpp: added a warning when the SDL reports weird mouse relative
  motion event. Such event is reset otherwise our mouse would get mad.
  I am wondering why SDL reports such scary values for relative motion..


2003/01/29 - milan
- Makefile.in: corrected, floppy.sh is executable

- memory.h: ISO C++


** ARAnyM 0.7.0 released

2003/01/29 - Petr
- xhdi.cpp: used off_t in fseek hoping that this would make it LFS compatible

- Makefile.in, aranym.spec: three more contrib files added for installation


2003/01/16 - milan
- configure.ac: support for large files (>2GB)
		corrected support for OpenGL


2003/01/15 - STanda

- fVDI: The drawMouse() hot_x/hot_y are stripped to 4 bits.
=       The m68k driver had a bug in the parameter passing for drawMouse()
	so DO NOT FORGET to update your disk images.


2003/01/14 - STanda

- fVDI: The drawMouse() calling fixed for the natfeat dispatch.
  The mouse color should be OK again. And... EmuTOS works with
  fVDI since now.


2003/01/12 - Petr

- natfeat/atari_example.c improved (using function pointers now)

- include/version.h improved (automatically appends "CVS_date_"
  to unoficial builds)


2003/01/11 - Petr

- "__NF" cookie fixed - now the structure contains pointers to nfID and
  nfCall.

- src/natfeat/atari_example.c updated - it's now based on the __NF cookie
  only.


2003/01/10 - Petr
- tools/diskimage.c: a tool for creating disk images up to 32 GB large.
  Note that our IDE emulation is limited to 2 GB disks for now. Will be
  fixed soon, hopefully.


2003/01/09 - Petr
- fixed _SND cookie value: now it contains just '4' to indicate that no
  hardware is available except of XBIOS functions. If DSP emulation is
  compiled in and active the _SND cookie contains %00001100 (according
  to recent info in mailing list the 3rd bit means DSP).

- improved the patch of TOS 4.04 again - this time added "__NF" cookie
  (untested yet) and also a nice example of how cool the boot logo may be.

- Didier updated audio driver to use NatFeats when available...


2002/12/29 - Petr
- videl: Sébastien Briais sent a patch that allows virtual screen on VIDEL
  by emulating the 'linewidth' and 'lineoffset' VIDEL registers.

- videl: the 'od_posledni_zmeny' variable translated to English, at last.


2002/12/19 - STanda
- the atari/network/araeth aranym.xif for ECE (ethernet card emulation)
  added. It doesn't work ... see the README there.
  nb: The ether_unix.cpp;emul_op.cpp;include/ether*.h may be removed
      I left them in place until it all actually runs with my
      implementation
- Installation and BUGS section added into the atari/hostfs/README


2002/12/16 - STanda
- several cleanups regarding the extfs and hostfs (main.cpp, nf_objs.cpp)
- STL bugfix in natfeat/hostfs.h (the std namespace usage)


2002/12/14 - johan
- Special handling of 32 bit vro_cpyfm D=S mode (see 2002/09/28).
- Mode handling for screen->screen blits.
- Updated fvdi.prg, aranym.sys and fvdi.sys.


2002/12/10 - STanda
- extfs: interface & debug cleanup
- hostfs: completely new NatFeat driven implementation of the host OS
  filesystem access. The m68k implementation in in atari/hostfs folder.
  Read the README placed there.


2002/11/30 - patrice
- videl: autozoom does not work correctly if target is smaller than source.
- hostscreen: added OpenGL rendering for the Atari screen.


2002/11/09 - milan
- sync with BasiliskII: some obsolete structures removed, support for Opteron


2002/11/06 - Petr
- aranym can be compiled without the DSP emulation again
- ulong in nf_stderr fixed to uint32


2002/11/03 - Petr
- XHDI - returning values corrected


2002/10/29 - Didier & Petr
- found and fixed serious buffer overflow in uae_cpu/readcpu.cpp.
  EMULOP_RETURN (unused), NATFEAT_ID and NATFEAT_CALL should behave
  better now.


2002/10/28 - Petr
- NF_STDERR added to NatFeats

- NF_VERSION corrected (should display version of NatFeat API, not version
  of aranym)

- new cmdline option "-e" (--emutos) enforces EmuTOS boot.


2002/10/22 - johan
- fVDI driver NatFeat support added.


2002/10/20 - Petr (version 0.6.8-beta)
- NatFeat instruction opcodes changed back to good old $7300/$7301.
  The LineF interface requires the $fe0x instructions to be long words
  and I am not ready to accept such change of NatFeat calling convention.


2002/10/19 - Petr (version 0.6.7-beta2 - NatFeat opcode change!)
- GFA Basic "fix" - it writes 0x16 to IKBD and then waits for a joystick
  packet in an endless loop. So we are sending a Petr packet now.

- NatFeat instruction codes changed to unused LineF ones: $fe00 and $fe01.
  Hope that this will make all future ColdFire CPU users happy ;-)

- cosmetic changes (aranym prints its version and compile date on startup)

- new "readonly" parameter to [IDE] config replaces the "xhdiWrite" but works
  generally - i.e. allows opening disk images on CD-ROMs (suitable for our
  aranym CD)

- CD-ROM in GUI features [Insert] / [Eject] button now


2002/10/15 - milan
- Mac OS X: keyboard scancode workaround

- non-cheaders support (for MipsPro C/C++ compiler)

- cleanups in classes MFP_timer, ndebug, in macros around ADDRESSING modes
  etc.

- FAQ: changes around disks


2002/10/14 - milan
- configure & etc.: generic bool, volatile and inline handling


2002/10/13 - Petr
- fixed CDROM mount/unmount support
- fixed FastRAM max size check on Linux with real addressing and no JIT
- added CD-ROM automount (like on real Atari :-)


2002/10/13 - milan
- sync with BasiliskII CVS

- JIT compiler: NOP filler based on binutils (default)
		Gwenole added some checks

- Mac OS X: some small corrections

- xBSD: sigsegv handler setting for JIT compiler corrected


2002/10/12 - milan
- sync with BasiliskII CVS

- JIT compiler: tune_alignment as configuration feature (TuneAlignment)
		new management of blockinfos

- cpuotpi "disabled" - not used now, needs reimplementig

- IDE: sync with Bochs CVS (only some small corrections in debug messages,
  result data of the ATAPI command 'inquiry' fixed, added multiple cdrom
  support for win32 - still not used)

- dialog.cpp: enabled Discs, the 1st CDROM driver mount/unmount


** ARAnyM 0.6.6 released

2002/10/10 - patrice  (version 0.6.6-beta)
- dsp: dsp nothread code removed.
- configure: DSP is enabled by default now


2002/10/09 - milan
- sigsegv_linux.cpp: x86 F6 instructions was badly decoded. NOT8, NEG8, IDIV8,
		     MUL8, IMUL8 implemented, TEST8 corrected

2002/10/08 - Petr (version 0.6.5-beta)
- the major arch change in version 0.6.0 has been reverted. CPU is running
  in the main thread again. SDL_Timer thread is back on all platforms but
  it's not doing anything but setting up a CPU flag that is being checked
  in CPU inner loop, in do_specialties().

  Advantages:
  - all SDL activity is in the main thread automagically
  - should fix all the troubles with non-Linux host operating systems

 TODO:
 - check if the overall performance of ARAnyM is not worse than before
 - make sure the keyboard is checked under all circumstances (STOP insn,
   CPU crash, deep JIT loop, ...?) so we won't lose the control over aranym.


2002/10/03 - milan
- ndebug supports breakpoints


2002/10/02 - milan
- add raw_cmp_b_mi() and raw_call_m_indexed() for generated, not used now,
  BasiliskII used translated main loop now, ARAnyM not - it's main loop is
  more complicated

- x86 calls in loops removed as in BasiliskII but for another reason, not
  enough stable for newer versions of compilers, in some cases slower

- for OpenBSD dirent.h again in sysdeps.h

- preversion of JIT compiler support for OpenBSD/i386, later I will enable
  it also for NetBSD/i38 and FreeBSD/i386


2002/10/01 - patrice
- ikbd: Joystick support bugfixed.


2002/10/01 - milan
- use off_t for file offsets in IDE emulation (from Bochs), sync with Bochs

- for SGI/Irix SystemV opendir used

- for Solaris dirent.h again in sysdeps.h


2002/09/30 - milan
- v&V commands added to ndebug, (<address>) vs. <value> operations

- typo fix in configure.ac script


2002/09/28 - Petr (version 0.6.4-beta)
- XHDI writing to disk fixed. Previously it was appending the new records
  at the end of the disk image file so it did not destroy any data but
  made the disk image larger. Now it's fixed and rewrites real data in the
  disk image so make sure you have 'XhdiWrite' set to 'No' in your aranym
  config file if you want to preserve your data intact.


2002/09/28 - Petr (version 0.6.3-beta)
- fixed #ifdef NEED_TO_DEBUG_BADLY code

- BUS ERROR loops are detected and back trace is displayed (the latter only
  if fullhistory was enabled at compile time)

- display better info when exception occurs (NPC = new PC = the exception
  handler address, SP = stack pointer)

- irritating bus error loops that occur when 68000-only application tries to
  catch bus error by its own (PureC IDE) should be fixed now.


2002/09/28 - johan (version 0.6.2-beta)
- Special handling of vro_cpyfm D=S mode for performance improvement.
  No loop unrolling yet, and only implemented for 16 bit mode.


2002/09/27 - patrice
- acia, ikbd, midi emulation updated. Preliminary joystick support (emulated
  joystick 0 on IKBD).


2002/09/25 - milan
- sync with bochs (4 internal ATA channels)


2002/09/24 - milan
- sync with BasiliskII (cleanups, jumps align corrected)


2002/09/24 - patrice (version 0.6.1-beta)
- videl: bugfixes, Atari screen centered on host screen, autozoom feature
  added (with and without integer coefficients).


2002/09/23 - patrice
- hostscreen: modified to select the nearest best video mode.
- videl: modified to render from any bpp to any bpp, using any screen pitch.


2002/09/20 - patrice
- DSP: bit-reversed addressing fixed, host port transfer when threaded fixed
       use of C++ constructor/destructor for the DSP class.


2002/09/15 - Petr (version 0.6.0-alpha)
- major architectural change: SDL_Timer stuff removed, #define USE_TIMERS
  removed. Now CPU emulation runs in a separate SDL thread and the main thread
  just loops (waits for 10ms, executes 'invoke200HzInterrupt' and loops back).

  Advantages:
  - VIDEL screen redraw runs in the main SDL thread - that should make
    many host operating systems happier (please report)
  - immediate reaction to hotkeys (Quit, GUI etc)
  - same (or even higher) speed as previously (82 kdhrystones on XP 1G7+)

  TODO: everything that makes use of SDL functions should be moved to the
  main thread. This includes fVDI (actually hostscreen) and GUI. The GUI
  could probably simply replace the current main_loop. With fVDI the problem
  is more complicated. We will probably have to send all fVDI actions
  from the CPU thread to the main thread using some sort of IPC.


2002/09/12 - Petr (version 0.5.0-beta)
- TOS was not ready for large 68040 caches that are provided by JIT compiler.
  I added a few missing 68040 cache patches that were developed by Douglas
  originally.
- version increased to 0.5.0-beta1 (version 0.4.0 was for working DSP and
  0.3.0 for JIT CPU)


2002/09/12 - milan
- sigsegv_linux.cpp: set_eflags()

- cpuopti.c, compemu_support.cpp: workaround for gcc 3.x

- tools/memory.h.patch: for a bit better access to HW space for JIT compiler,
			unofficial!


2002/09/10 - milan
- autoconf 2.53+ needed now

- ndebug.cpp, newcpu.cpp: ISO C++ forbids assignment of arrays, so Patrice's
			  patch completed


2002/09/07 - Petr (commiting for milan)
- newcpu.cpp - flush_icache(0) is required otherwise JIT does not work


2002/09/05 - milan
- DIV8, TEST8 implemented (not tested)
- AND8, OR8, ORIMM8 now handle flags


2002/09/01 - milan
- some small (not tested) corrections in FPU emulation code (UAE&i386 versions)


2002/08/28 - patrice
- DSP: host port read not working with thread, fixed


2002/08/27 - patrice
- Thread support for DSP bugfixed.


2002/08/26 - Petr
- JIT (actually sigsegv handler) fixed again, better this time.


2002/08/26 - patrice
- DSP emulation can be run in its own thread.


2002/08/26 - milan
- sigsegv_linux.cpp: CMP8 much better

- hardware.cpp: in_handler handled in all HW_SIGSEGV configurations

- ata.cpp, ide.cpp: real 32-bit access, word swap added for I/O operations,
		    io write to 0xf00005 handled (error register)

- uae_cpu/newcpu.cpp: jump table for distributed dispatcher generated
		      corretcly on little endian platforms now


2002/08/13 - Petr
- NF_Name() now returns the number of characters (excluding the trailing '\0')
  which would have been written to the final string if enough space had been
  available.


2002/08/12 - Petr
- nf_call changed to return a signed 32-bit number (type 'long' in C lang.)
- nf_call for invalid NatFeat ID returns an undefined value now.


2002/08/11 - Petr
- NatFeats now keep their name and SupervisorRequired flag with them.

- NatFeats main dispatcher now checks for user/supervisor mode and throws
  privilege instruction exception if appropriate.

- NatFeats main dispatcher does not copy parameters to local array. NatFeats
  themselves fetch the parameters with getParameter() call.

- final renaming: "natfea" -> "natfeat", "_rcall" -> "_call"

- various doc bits found in mailing list stored in src/natfeat/doc folder.
  It's partially obsolete but I tried to update at least the native.txt.

- example of running some basic NatFeats for (not only) PureC stored
  in src/natfeat/atari_example.c


2002/08/08 - patrice
- DSP: CCR-related stuff written, some bugfixes.


2002/08/05 - Petr
- NATFEA_ID and NATFEA_RCALL can now be used in User mode as well. Supervisor
  mode is not required. NatFeats themselves have to throw illegal instruction
  exception if they require Supervisor mode and are called from User mode.

- little clean up in the NatFeats dispatcher. It now detects wrong address
  and throws proper BUS ERROR.


2002/08/04 - Petr (version 0.3.0b1)
- Native Features implemented. The CPU recognizes two new instructions:
  NATFEA_ID (opcode $7300) and
  NATFEA_RCALL (opcode $7301).
  These instructions are privileged (can be executed in supervisor mode only).

- Two new basic NatFeats (Native Features) implemented:
  "NF_NAME" returns the name of "emulator" in a given string buffer.
  "NF_VERSION" returns the version of "emulator" encoded in long hex number.

- XHDI was adapted for NF "XHDI" (still callable also via old EmulOp but
  that's deprecated and will be removed before release).


2002/08/03 - johan
- Native part of fVDI driver updated to work with new API (dependencies
  on internal fVDI structures removed, parameters passed on the stack).
- Some internal fixes and cleanups in the native part of the driver.
- New binaries for both the fVDI engine and the m68k part of the driver
  are needed, and are also checked in.


2002/08/02 - Petr
- EmuTOS loading fixed again - it can be any (>0) size now.
- EmuTOS loading routine display the date when the EmuTOS was built.
- XHDI support moved to separate xhdi.[ch] file and XHDIDriver class.
  XHReadWrite() implemented. Old DMAread EmulOp is deprecated now.
- XHReadWrite() writes to disk only if XdhiWrite switch in config file.
- nearly all compile time warnings removed!


2002/08/01 - Petr
- EmuTOS image size can be either 256 or 512 kB long
- two serious bugs in linux sigsegv handler fixed: OR and MOV. There are
  more bugs in the ia32 emulated routine, unfortunately. JIT won't work
  until all of them get fixed.


2002/07/31 - patrice
- DSP emulator: Many bugs fixed (end of dsp_*.cpp files for complete changes)


2002/07/31 - Petr
- bug in fresh IDE emulation code fixed (thanks Johan and Standa)


2002/07/26 - patrice
- dsp_cpu.cpp: lua operation and read_memory fixed
- dsp_disasm.cpp: Added missing '\n' in disasm output


2002/07/23 - patrice
- ndebug.cpp: Make it gcc-3 friendly.
- dsp.cpp: Added mu-law table generator
- dsp_disasm.cpp: Changed all output from D(bug()) to fprintf()
- yamaha.cpp, dsp_cpu.cpp: Removed useless #include "config.h"


2002/07/23 - milan
- support for cdrom under MacOS X ported from Bochs, not tested yet
- updated IDE emulation, some error states detected more correctly now


** ARAnyM 0.2.0 released

2002/07/20 - Petr
- saving/restoring screen background under SDL GUI fixed

- SDL GUI now survives resolution change without a crash but the dialog
  is not redrawn correctly yet.

- hostScreen::update() now always update the mainSurface (the physical one).
  Updating the logical (when GUI is opened the background) surface is IMHO
  not required and it also caused problems when updating the screen upon
  GUI closing.

- OS loading changed: first TOS 4.04 is tried and if fails then EmuTOS
  is tried. If even that fails (which should not since we include EmuTOS
  in ARAnyM binary distribution now) then a warning and an advice for
  obtaining the EmuTOS is displayed.

- the window mover now displays an advice for pressing the Pause key
  for opening the GUI.


2002/07/20 - patrice
- Dsp: more bugfixes, see end of dsp_[cpu|disasm].cpp file for complete
  changelog


2002/07/19 - Petr
- SDL GUI now stores background to another (cloned) surface. Also fVDI
  does not draw into the physical video surface when GUI is visible.

- GUI Reset option works.

- if GUI font8.bmp is not loaded the GUI is not accessible


2002/07/18 - Petr
- DSP host code is disabled when DSP_EMULATION is not defined. This was
  required to get Alt+Ctrl+Del warm boot working again (there must be a bug
  in current DSP emulation).

- trying to enforce releasing the Alt+Ctrl keys after Alt+Ctrl+Esc combo
  that causes ARAnyM to drop the mouse/keyboard exclusive control.


2002/07/16 - Petr
- fixed pretty scary bug in yamaha.cpp. As a direct result PARCP started
  working reliably.


2002/07/16 - milan
- hguide.txt: updated, added section 9 (Checking memory boundary)

- hwsp possibility of checking memory boundary corrected

- linux_sigsegv.cpp: Added support for MOVSX8, MOVZX8, OR8, MOV8


2002/07/16 - patrice
- Host port reworked. More bugfixes and completion of the emulator.
  DspDebug can be started, it finds the DSP.


2002/07/15 - milan
- main.cpp: SDL_Delay on exit increased (for slower machines)

- sigsegv_linux.cpp, memory.h, fakeio.cpp: extended sigsegv handler upgraded


2002/07/10 - patrice
- I finished nearly all intructions. I also added a disassembler
  (disabled by default but you can enable it with --enable-dspdisasm)


2002/07/09 - Petr
- DSP integrated properly in the autoconfig system. By default it's disabled
  but you can enable it with --enable-dsp in configure phase.


2002/07/08 - patrice
- DSP 56001 emulation started. It is not finished, but I think it has
  a good shape. I wanted to do this because I would like to be able
  to run DSP development tools under Aranym, to assemble DSP programs.
  I used the Motorola DSP56000UM/AD book as documentation.
  Consider this as v0.000000001 stuff (unstable, bugged, incomplete).


2002/07/03 - milan
- JIT compiler: some minor corrections in JIT

- sigsegv_linux.cpp, memory.h: new memory access for x86/linux added
    - without direct check of memory boundary (extended sigsegv handler)


2002/07/01 - STanda
- The filename -> 8.3 format transformation adjusted. Now it should handle
  also the filenames ending with a dot (.). These should be appended with
  a hash code as an extension.


2002/06/26 - Petr
- SDL GUI integrated properly: it is now running in its own SDL thread
  so it's able to run in parallel with Atari emulation. The input events
  are still fetched in the Timer thread and are passed to the GUI thread
  via a couple of global variables (should be reworked to a FIFO buffer).
  Still needs to fix the screen double buffering...
  A whole set of dialogs should be designed for ARAnyM now (see dialog.cpp).

- TOS loading routine now requires the original TOS 4.04 only - the other
  patched flavors of TOS 4.04 are not accepted since now on. The prepatched
  versions made it harder for us to add or remove various patches. Thus
  we won't support them.

- romdiff.cpp does not patch out the RESET instruction anymore. It was patched
  out on Afterburner040 because that machine didn't really like the RESET.
  ARAnyM handles reset gracefully so there's no reason to patch it out.

- aranym_glue.cpp: added hardware initialization on the RESET instruction.
  So far only IKBD is initialized (as there were problems with IKBD after
  reset).


2002/06/24 - Petr
- do_get_real_addr() replaced with Atari2HostAddr() in fdc.cpp and audio.cpp
- ExitAll()/QuitEmulator() reworked to allow clean exit from debugger even on
  slow machines (the timer thread must be stopped first before the Atari
  memory is released).


2002/06/24 - STanda
- fvdidrv.*, videl.*, extfs.* cleanup. The memptr usage introduced. There
  should be no (or at least less) problems with the ia64 compilation.


2002/06/09 - Petr
- SDL GUI restores original background (see hostScreen.save_bkg/restore_bkg)
- SDL GUI "Quit" works


2002/06/07 - Petr
- ScrollLock switches between fullscreen and windowed mode
- in window mode you'll get a 'heart beat' - an activity indicator
- SDL GUI is enabled by default now (can be disabled with --disable-gui)
  press Pause key to invoke it.


2002/05/27 - milan
- vm_alloc.*: the lastest changes discarded, problems during configure

- newcpu.cpp: SDL_mutex for exclusive spcflags handling initialised


2002/05/24 - Petr
- as suggested by Heiko I added a complete locking to the virtual IKBD queue.
  Let's see if it works OK or if the mouse/keyboard is not working properly.


2002/05/22 - STanda
- The aranymfs atari sources updated. The MetaDOS part was converted
  into the gcc compilable code (Makefile created) and the mint .XFS
  source was added.
  The binaries (.bz2 packed) was updated with the newly compiled files.
  You might want to try them to test whether they work as the previous
  ones.
- atari/fvdi/utility/fvdicout: The Ptermres should be now filled with
  a correct value IMHO.


2002/05/20 - Heiko Achilles
- when a mouse movement package is fetched from the ACIA/IKBD buffer this
  patch puts all movements of the same type, which are currently in the
  buffer, into one. So the fetching is quicker and there's no noticeable
  mouse delay anymore.
  TODO: replace bool inGet with proper semaphores


2002/05/14 - milan
- vm_alloc.cpp: better structure, not own OS dependent includes

- main.cpp, main_unix.cpp, aranym_glue.cpp, cpu_emulation.h:
    some debug outputs added for JIT compiler
    a small reform in memory allocation
    one stupid bug (of course, I'm the author) found in QuitEmulator
    (vm_release(nil))

- JIT compiler: one debug output added for segfault handler of JIT compiler


2002/05/12 - milan (record in ChangeLog by Petr)
- ata.cpp: updated to bochs' latest source (supported SEEK and something else)


2002/05/10 - milan (record in ChangeLog by Petr)
- input.cpp: hack for remounting CD on Ctrl+SysRq, needs to be removed!
- gencpu.cpp: lotsa weird changes, probably related to distributed dispatcher
- newcpu.cpp: minor distributed dispatcher related changes
- JIT compiler: one segfault fixed


2002/04/29 - Petr
- ErrorAlert() has been replaced with panicbug() as I needed sprintf
  like parameter parsing. Now all file errors in main() report also
  the problematic filename.


2002/04/25 - STanda
- The fvdicout.app added to atari/fvdi/utility. This is the Johan'si
  bconout.gtp replacement. It is built using the FreeMiNT CVS tree
  and with heavy utilization of the TosWin2 vt52 emulation sources.
  It needed only a slide changes in TosWin2 sources. This should not
  be the final solution. The real one would by to implement the vt52
  emulation into the fVDI engine itself which is on the TODO list in
  the fVDI remainings.
  Using this I don't have problems here with TOS applications here.
  It needs to be started after the VDI initialization (e.g. from the
  desktop). There might be some code to initialize the VDI later in it.
- AraEther made compilable. nearly no code check or test done.


2002/04/21 - milan
- header files reform
- distributed dispatcher rewroted
- JIT compiler integrated


** Version 0.1.7

2002/04/21 - milan
- pre-support of FreeBSD


2002/04/21 - Petr
- ExtFs: Dpathconf(DP_XATTR) disabled altogether. It was causing problems
  in Thing (Thing didn't refresh source window of 'move' operation).
- $7135 illegal insn (debug print) was not printing until LF was sent.
  fflush added.
- SDL GUI, taken from hatari. Not working yet, but soon will be.
- atari sound driver (from Didier) included in atari/sound CVS folder.
- EmuTOS loading: now checked for proper file length.


2002/04/20 - Petr
- audio.cpp - wrong memset() addr fixed. No more crashes, sound works
  like a charm.

2002/04/20 - STanda
- PurePascal and its debugger snapshot added.
- ExtFs: Small general code cleanup


2002/04/19 - Didier MEQUIGNON & Petr
- audio driver: Atari side uses ZMAGXSND.PRG, a slightly modified
  MagiCMac sound driver. The communication is based on illegal instruction
  $712c and IRQ 5 used as a callback from host to Atari. Aniplayer is
  supposed to play sound nicely but so far it's crashing on me (Petr).

2002/04/19 - STanda & Petr
- ExtFs: Petr has discovered that ExtFs:Fxattr should probably _not_
  take the DTA structure. This bug was originating in the Julian
  Reschke's cookfs01 driver sources that I started to program from
  (he uses DTA in the Fxattr signature, although he never uses this
  argument - most probably cut&paste bug).
  Now the Fxattr works properly which means:

  * The Dpathconf() DP_XATTR return value works also good for Thing
    to refresh the destination window. The access time and originating
    time was masked out here to let it work for more hostfs filesystem
    types properly. It is subject to change. The hostfs mounted to the
    particular hostfs path is to be investigated whether it supports
    the features and the flags should be set appropriately.
  * QED save and load problems fixed.

  Here it seems that the most ExtFs MetaDOS problems on Linux host
  OS are gone. Please test heavily. Thanks goes to Petr and his hacker's
  history! ;)

- ExtFs namespace method/function recognition doesn't work under
  FreeMiNT because mintbind.h are only macros..... The names were changed
  to have the ExtFs suffix.


2002/04/18 - STanda
- ExtFs bug in Fsnext fixed. If the path for Fsfirst doesn't contain
  wildcards then many applications don't call the Fsnext. We need an
  array of paths for mutiple Fsfirst/Fsnext called with a different
  DTA buffer pointer. We also need to free the paths if they are not
  used any more (Fsnext with -49 or Fsfirst without wildcards and 0).
  If the path was freed from the array then we return -49 from Fsnext
  now.
  This fix causes LZHSHELL.APP be able to extract an archive to the
  MetaDOS driven filesystem.
- The Patrice's patch adjusted to be only namespace distiguished
  calls. No _emu suffix. Needs to be tried to compile under FreeMiNT.


2002/04/13 - Petr
- AranymFS: we can't rely on error codes returned by hostfs functions.
  For example TOS Fcreate() returns -34 if the path to file does not exist.
  The fix I put there helps ST-Zip to unpack folders onto host fs.

- AranymFS: Dpathconf(DP_XATTR) disabled (because I didn't know the correct
  parameter). Suddenly Thing is able to refresh the destination window
  correctly.

- new experimental spec file for building RPM package.

- new TOS patch for redirecting printer Xconout vector to host console

- new function "Reboot" that does hard restart of the machine.


** Version 0.1.6

2002/04/12 - Petr
- newcpu.cpp: NMI will break out of the STOP jail. From user point
  of view - if EmuTOS happens to crash you'll be able to quit ARAnyM
  now.

- newcpu.cpp: STOPped CPU did not generate 200 Hz system interrupt
  when compiled with --disable-sdltimer. Fixed.


** Version 0.1.5

2002/04/10 - Petr
- fixed bug in Reset insn emulation that caused EmuTOS crash

- uae_cpu/spcflags.h cleaned up. NMI flag introduced.
  I also added the MFP|VBL|NMI into periodic flags check (wondering
  how it could work before).

- clean Quit implemented. No more killed SDL or X threads. Using NMI
  like on real machine :-)


2002/04/10 - milan
- IDE: synced with Bochs CVS (concat_image_t(), not used in ARAnyM now, but
       who knows)
- CPU: instr. Reset calls now AtariReset()
       cleaning in JIT integration
       synced with BasiliskII CVS (DOTRACE x STOP)


** Version 0.1.4

2002/04/09 - Petr
- fixed my own stupid bug in acsifdc.cpp that broke floppy support.
  Thanks Martin for reporting it.


2002/04/04 - STanda
- MetaDOS Fopen implementation shoudn't be able to open a directory.
  Fixed due to the Olivier Landemarre <Olivier.Landemarre@utbm.fr>
  and the CharView author who provided a source of the application
  that had this problem. The EasyGEM library tries to open directory
  entries using Fopen. Thanks for EasyGEM beeing open-source.

- Newly created files specified with all letters in upper case will
  be automatically converted to lowercase ones. This follows a small
  limitation that there is no way to create e.g. PC.PRG on halfsensitive
  fs (it will be pc.prg... but the Pc.prg and any other combination
  would work). This can be made optional.

- m68k part of the MetaDOS driver was pretty printed and converted
  to correct (DOS mode newlines). No need to update the binary here.

- PureC (PC.PRG) patch to let it working on MetaDOS driven filesystem
  (src/atari/tools/pcpatch.*).


2002/04/03 - milan
- sync with BailiskII-JIT (25.3.2002)


2002/04/02 - Patrice Mandin & milan
- pre-patched for Atari MiNT :-)


2002/04/02 - Petr
- MFP and ACIA/FDC/ATA updated to be ready for major MFP rewrite.


** Version 0.1.3 - don't forget to update your Atari fVDI driver

2002/03/27 - STanda
- extfs.cpp/transformFileName rewritten nearly from scratch. Now it should be
  more readable source than before.
  A simple findFirst function fix: no error on the stat() failure. E.g.
  an invalid symbolic link on the host fs.
- fVDI driver: floating Videoram bug fixed.


2002/03/26 - milan
- MMU returns logical address during bus error
- IEEE FPU is default only for i386


2002/03/26 - Petr
- transformFileName in extfs.cpp fixed three times. ARAnyM will not crash
  when it encounters a long filename. ST-Zip will not crash when browsing
  MetaDOS drive. Maybe that PureC works now as well?


2002/03/22 - Petr
- IEEE FPU emulation fixed: 68040 specific insn (like FSMOVE) don't throw
  illegal opcode exception anymore.
- IEEE FPU is now the default FPU emulation in configure phase.


2002/03/21 - milan & Petr
- forgot to set the faulty address when invoking BUS ERROR from hardware
  registers access.
- Exception 2 panicbug displays the faulty address now.
- wrong bus error stack frame format 7 fixed.


2002/03/20 - Petr
- MFP and RTC tweaking to get Linux-m68k running


2002/03/15 - milan
- Exception() is called only from main loop, not from trans. function.


2002/03/14 - Olivier Landemarre <Olivier.Landemarre@utbm.fr> & STanda
- ExtFs: ugly bug in flags2st fixed. This might affect some problems
  we had with the MetaDOS driver, but unfortunatelly PureC still refuses
  to compile a project.
  Preprocessor flag to use creat() instead of open() in Fcreate
  implementation... no improvement here though (just suggestion from Olivier).


2002/03/12 - milan
- Irix among supported platforms


2002/03/11 - milan
- MMU is back, based on Wez Furlong's patch (UAE)


2002/03/06 - STanda
- ExtFs: xfs_getname implemented. The Pure C now finds the project file, but
  it crashes on assembler compilation.
  The ExtFs::cookie2Pathname() now uses getHostFileName to be able to work
  case insensitively.


2002/03/05 - milan
- memptr for addressing in Atari memory out of uae_cpu
- sync with Bochs CVS 2002/03/02 11:31:18 GMT
  o ReadCDSector() (for win32 ASPI) returns 1 if target status is okay
  o win32 ASPI version of insert_cdrom() checks media status using
    ReadCDSector()
- gencpu.c patched for MMU (based on Wez Furlong's MMU patch 0.8.20.2 for UAE)


2002/03/03 - Gwenole Beauchesne & milan
- fpu_x86 debug mode corrected


2002/02/28 - milan
- get_i*_1 moved to newcpu.cpp
- probably last sync with aranym2 (unofficial CVS) before MMU and pre-JIT
  support (new gencpu.c and subdirectory compiler)


2002/02/27 - milan
- corrections of types in hostscreen.h and memory.h (using uintptr instead of
  uae_u32 with Host addressing)


2002/02/26 - milan
- Native Feature instruction framework added
- address validation in CPU interface
- exceptions.h removed, interface moved to CPU interface, include file in
  sysdeps.h
- error handling of CD-ROM eject on Linux


2002/02/25 - milan
- fp_extended, fp_single, fp_double -> fpu_extended, fpu_single, fpu_double
- spcflags handling rewritten
- original PC handling, must be converted to ARAnyM's after stabilisation
  (slower)
- exception stack handling is for 68040 now
- table68k based on JIT BasiliskII
- EmulOp (0x71XX) is handled as usual instruction


2002/02/25 - Petr
- web updated (Ctirad wrote new About)
- simplified most of the presentation.xlst but it's still not good enough.
- limited the text size to 600 pixels for more pleasant reading on wide screens


2002/02/23 - Petr
- separated input related code from main.cpp into input.cpp
- all open() functions have "O_BINARY" flag appended so that Cygwin
  binaries won't mess CRLF in files (cdrom.cpp, extfs.cpp, fdc.cpp)


** Version 0.0.22 so you can see new IDE code is there.

2002/02/21 - milan & Petr
- cdrom.cpp sync with Bochs (CD-ROM eject supported)
- ata.cpp sync with Bochs (32-bit data access supported)
- CD-ROM eject in Linux added
- hardware.cpp + ide.cpp updated for 32-bit IDE data access.
  It did not work so it is disabled in ide.cpp for now.


2002/02/20 - Petr
- config file is created with proper default values
- IDE devices are disabled by default
- CONFGUI obsolete #ifdef stuff removed from parameters.cpp


2002/02/20 - milan
- new FPU (based on JIT BasiliskII)


2002/02/19 - milan
- src/ <-> CPU interaction cleaned
- memory access cleaned


2002/02/18 - milan
- floating VideoRAM


2002/02/18 - Olivier Landemarre <Olivier.Landemarre@utbm.fr> & STanda
- Compilation problem under Cygwin fixed. In extfs.c for Cygwin
  MFSNAMELEN is undefined should replace by buf.f_namelen. The condition
  was added due to the BSD systems so I've changed it to if OS_*bsd then...


** ARAnyM 0.0.21 released

2002/02/12 - Petr
- IDE emulation adapted for Falcon: $f00039 is recognized but ignored.


2002/02/12 - milan & Thomas Huth
- ARAnyM support only 68040 only. Other CPUs aren't generated


2002/02/11 - milan
- synced with Bochs IDE
- new version of CPU interface


2002/02/01 - Frank Naumann & Petr & milan
- PAGE_MASK renamed on ARAM_PAGE_MASK (ARAnym Memory PAGE_MASK), PAGE_MASK is
  defined in /usr/include/machine/param.h on OpenBSD
- PAGE_CHECK renamed on ARAM_PAGE_CHECK
- ndebug doesn't use ioctl() now for any switching tty's setting
- support for statfs on [Net|Open]BSD


2002/02/01 - Petr
- fixed long-standing bug in ATA.cpp that made ARAnyM stuck when no IDE disk
  drive was found (or defined in config).


2002/02/01 - milan
- the 1st step of rewriting CPU/Memory <-> HW interface, look at
  cpu_emulation.h


2002/02/01 - STanda
- MiNT aranym.xfs added. This is the preliminary version working with HostOS
  root in u:\nativefs just like stonx.xfs does. The mapping to other folders
  is possible and is going to be done later.
  There are several unimplemented functions there, but the basic functionality
  is implemented.
  The m68k part is available only as a binary in src/atari/aranymfs.
  The sources were grabbed from the STonX directly and hacked just to work and
  needs cleaning.
  The whole ExtFs should be rearchitectured. It was designed for MetaDOS and
  now it is getting very, very unclean. Better not to look into the code.
  I will rewrite this nearly from scratch during the planed shift to a portable
  library.
  CAUTION: There might be crude bugs in it, so please test it on some not very
  essential files on the mounted host filesystem.


2002/01/30 - Petr
- emul_op.cpp: OP_DEBUGUTIL made more secure (wrong addr will not crash aranym)


2002/01/29 - Petr
- two EmuTOS screenshots added
- unsupported Windows binary available in download section


** ARAnyM 0.0.20 released

2002/01/28 - Petr
- tools/clocky.prg.bz2 updated - the hotkey combo is back at LShift+RShift
  (the Alt+LShift collided with Thing).
- updated aranymrc.example
- updated most documentation and web pages


2002/01/27 - Petr
- XHDI dispatch added to emul_op
- XHGetCapacity() implemented
- DMAread() improved


2002/01/26 - STanda
- extfs.[ch]* cleanup from non needed arguments


2002/01/24 - Olivier & Petr
- on Windows the host operations (fVDI, aranymfs) block the timer thread
  so we have to call the invoke200HzInterrupt() manually as soon as the
  host operations finish.
- download.html offers nightly snapshots now.


2002/01/18 - milan
- FixedSizeFastRAM fixed
- no debugger fixed
- install part of Makefile fixed


2002/01/17 - milan
- cleaning in ./src - memory access etc.


2002/01/15 - Petr
- you can undefine USE_GETTICKS in main.cpp to replace SDL_GetTicks()
  with gettimeofday(). This might help on platforms where SDL_GetTicks()
  is slowed down by aranymfs or fVDI driver.


2002/01/13 - STanda
- fVDI driver patches for expandArea in 24 and 32bit depth.
  Also the 1, 2, 4 bit depth modes were made available.
  There are still bugs in the expandArea Mem->Mem. Also blits are word
  aligned when they shoud not be.


2002/01/13 - Petr
- DMAread() added to emul_op interface (used in current EmuTOS)
- faq.xml updated by Ctirad
- configure.in: SDLTIMER and PAGE_CHECK are enabled by default.


2002/01/11 - Olivier Landemarre & Petr
- fixed bug in time sync (signed long is bad for GetTicks())
- fixed bug in TimerC disabling (wrong bit mask for &)


2002/01/10 - Rodolphe Pineau & milan
- vm_acquire_fixed corrected, configure script also


2002/01/09 - Rodolphe Pineau & milan
- 1st step for SGI/Irix
- aranymfs more portable (Solaris supported now also)
- corrections in configure script, memory allocation, memory access


2002/01/08 - STanda
- The aranymfs config file setting finished (thanks to Petr)
- fVDI driver doesn't destroy palette setting on resolution change
  The SDL_SetVideoMode clears the palette setting -> the palette is stored
  and restored after change (hostscreen.cpp/setWindowSize())
- the driver has also correct 8bit inverse color handling.
- up and running


2002/01/08 - Petr
- the config file format and location has changed (now at $HOME/.aranym/config)
- most global config variables moved to bx_options struct
- NVRAM (formerly CMOS) file is stored in the aranym config folder as well now.
- fixed many bugs in the parameters.cpp code. It should be quite usable now.


2002/01/07 - Petr [ ARANYM_0_0_17 tag ]
- NVRAM RTC getting current year fixed.


2002/01/07 - Patrice Mandin <pmandin@caramail.com> & STanda
- Patrice: I did a simple patch for the vdi color mapping.
  The following ugly piece of code removed.
  #ifdef __PUREC__
     short vdi2pix[1];            /* Of course really 256... */
  #else
     short vdi2pix[0];            /* Of course really 256... */
  #endif


2002/01/05 - Petr
- floppy geometry detection fixed. It could never work before!


2002/01/03 - Petr
- Blitter now calls Do_Blit() on reading status register only. Doesn't seem
  to fix the errors during Bconout, though.
- Xconout redirected to host console using poor VT52 emulation.


2002/01/03 - STanda
- fVDI driver: the resolution is changed during the virtual workstation
  creation. Copyright notes updated (synchronized with Johan's).


2001/12/30 - Petr
- Johan increased PAGE of PAGE_CHECK to 1MB (for nonMMU mode). This greatly
  improved the performance - 36k5 dhry on my machine now. For the MMU040
  the PAGE is 4kB.


2001/12/29 - Petr (tagged as ARANYM_0_0_16)
- Johan Klockars' PAGE_CHECK (dividing address space into 4k blocks) added.
  It produces slightly better dhrystones than 0.0.14 (34k2 vs 33k5) but
  real-life gcc benchmark didn't show any speed up. Perhaps this is a great
  idea for the MMU040 implementation but without MMU040 it doesn't help much.
- parameters.cpp and main.cpp cleaned up a bit.


2001/12/27 - Petr (tagged as ARANYM_0_0_15)
- FastRAM can be fixed size ("./configure --enable-fastram=X") - that makes the
  check_ram_boundary() even faster (comparing with constant instead of fetching
  the value of a global variable). 35k2 dhry now (this is probably the fastest
  possible solution before splitting the RAM into 4k blocks as Johan suggested.
- TOS 4.04 patched to enable FastRAM check.
- fullmmu is disabled by default now.


2001/12/26 - Petr (tagged as ARANYM_0_0_14)
- handling of MFP interrupts moved from CPU to MFP module
- checking for VBL and MFP joined in one 'if' - another nice speedup (33k5 now)


2001/12/25 - Petr (tagged as ARANYM_0_0_13)
- ACIA IRQs are not buffered (like TimerC IRQs are) - it was causing bad
  keyboard&mouse lockups. Apparently TOS can read several scancodes from IKBD
  in one IRQ and our poor implementation fits that feature :-)
- TimerC interrupt fired only if enabled in MFP IRQ enable reg.


2001/12/22 - Petr (tagged as ARANYM_0_0_12)
- most video related parameters moved to bx_options.video struct
- added "--refresh <x>" cmdline option. Default value is 2 = 50/2 Hz screen
  refresh. Allowed values are 1 - 200 (50Hz - 1/4 Hz)
- check_ram_boundary() allows direct access to physical videoram
- check_ram_boundary() now makes FastRAM equally fast as ST-RAM (30k5)


2001/12/21 - STanda
- RH gcc 2.96.98 preprocessor bug workaround: The remarks in multiline macros
  are before the linetrailing backslash.


2001/12/20 - Petr
- cleaned up newcpu.cpp do_specialties()
- STOP instruction handling really works and gives CPU time slices back
  to host OS!


2001/12/19 - Petr
- check_ram_boundary() cleaner now - no default value for 'write' parameter
  and the 'size' parameter contains the natural value - 1 for byte access,
  2 for a word access and 4 for a long (doubleword) access.
- you can define NO_MEMORY_CHECK in memory.h to see the original
  speed of old unsafe, often crashing ARAnyM (Dhry: 27k -> 31k)


2001/12/17 - Petr
- SDL Timers are back! --enable-sdltimer
- VBL timer runs at precise 50 Hz now
- VIDEL screen refresh at fixed 25 Hz now


2001/12/16 - Petr
- check_ram_boundary() takes an additional parameter that sets the size
  of memory access. Now finally all memory accesses are checked and nothing
  can escape from ARAnyM allocated memory.

- acceleration for blitter configurable: --enable-blitmemmove turns the
  memmove acceleration on and --enable-blitsdlblit allows the SDL_blitsurface
  to be used.

- check memory by array experimental code removed altogether. It was not
  faster unfortunately and it didn't allow the size check that has just been
  added to check_ram_boundary.


2001/12/11 - STanda
- fVDI driver patch to not disable the DEBUG. There was the debug.h included
  from another .h file which wasn't correct. Some Johan's methods were moved
  to the .cpp file.

- framebuffer driver detection to force the fullscreen mode and therefore
  no mouse pointer redraw problems when using Clocky(TM). The mouse cursor
  was trying to leave the window (actualy the screen surface in fb, which
  was causing troubles)

- The SDL_WarpMouse is now called after the HWInit() (actualy SDL_SetVideoMode)
  where doesn't cause floating point exceptions and aranym crashes in fbcon.


2001/12/07 - Petr
- first two long words (addresses 0..7) are readonly now like on real Atari.
  Thanks to Patrice for forcing us to fix it :-)


** ARAnyM 0.0.11 released

2001/12/05 - Petr
- "-N" or "--nomouse" added to cmdline options. It basically disables
  the auto mouse grabbing at startup. Suitable especially for debugging.

- one more illegal/emul_op instruction enabled: 0x7135 can be used for
  debug prints - especially for EmuTOS debugging.

- CMOS/NVRAM now starts with English/UK/USA keyboard layout. Thus you get the
  right keys even without Clocky on most regular PC keyboards.


2001/12/05 - milan
- "initialization" of 0-7 moved to reset routine, more secure solution

- patched ins. BFINS (uae 0.8.19)

- sync with my "Pragues versions"

- buffer in newm68k_disasm cleared after every ShowEA/fprintf, disasm in
  ndebug corrected


2001/12/03 - Olivier Landemarre <Olivier.Landemarre@utbm.fr> & STanda
- ExtFs: Frename fix.


2001/12/02 - Petr
- keyboard conversion code rewritten again. As the SDL returns different
  scancodes for same keys under different OSes I created a heuristic
  analysis of pressed keys that tries to detect the offset between the
  SDL scancode and the physical one. Tested under framebuffer and X11 on Linux.


2001/11/30 - Johan Klockars <rand@cd.chalmers.se> && STanda
- fVDI: improved and made fit into fVDI CVS repository directory structure.
  General speedup of line and polygon drawing.
  New copy of m68k part sources. Since now you should use the aranym.sys.bz2
  m68k binary along with current aranym CVS sources.
  The old m68k part source will be removed later.


2001/11/28 - Petr
- new keyboard conversion code: now based on pure scancodes. Clocky for Aranym
  now distributed with English PC101 keyboard. With Clocky loaded you have real
  WYSIWYG. Feel free to submit other .KBD files for Clocky (French, German,..?)

2001/11/25 - Petr
- new FastRAM.PRG with automatic size detection and _FRB buffer.

2001/11/21 - milan
- cleanning in includes


2001/11/21 - Olivier Landemarre & milan
- problems with new Cygwin corrected

- FullScreen tag in ARANYMRC


2001/11/20 - milan
- small correction in ATCs (MMU), not enough, grr


2001/11/20 - Francois LE COAT & milan
- better support for Solaris


2001/11/20 - Olivier Landemarre & milan
- the 2nd step for Cygwin


2001/11/19 - Petr
- MD5 should be OK on big endian machines (Sparc)

- new TOS 4.04 patches - cleaned up a lot thanks to the disassembly made by
  Patrice. Nemesis init routines removed. Reboot code not moved to $600.
  Movem patch removed. The whole additional code moved behind the TOS end
  so French and other RSCs are OK now.
  You are encouraged to drop the previously patched TOS versions and to use
  just plain original TOS 4.04.

- parallel port emulation added. This is the lowelevel stuff - Yamaha and MFP
  are mapped to IBM EPP parallel port. Several things are hardcoded and
  the whole stuff is disabled by default for now. But when I tested it PARCP
  ran quite well!


2001/11/02 - STanda
- fVDI: The driver handles some bitplane functionality. It works somehow, but
  it still has many bug in this mode. The color palette is correct only if
  booted in the same color depth.


2001/11/14 - Petr
- corrected XML->HTML compilation

- made the IDE f00039 alternate status register same as the main IDE status reg.


2001/11/13 - milan
- web/Makefile corrected

- saxon.jar not in CVS now (downloaded with wget from ftp.sophics.cz/pub/aranym/tools)

- gemram removed from Makefile.in


2001/11/13 - Olivier Landemarre & milan
- support for Cygwin


2001/11/11 - Petr
- during configure you can "--enable-directcolor" which is the infamous TOS
  and Aranym patch for direct truecolor with VIDEL. I made it configurable
  in compile time to simplify the memory boundary checks in uae-cpu/memory.h.
  The default is no direct truecolor (it's a hack, after all).

- during configure you can "--enable-boundaryarray" which is a different
  method for checking the memory boundaries. It's based on an array of bool
  flags - each bool represents 1 MB of memory. There are separate tables
  for reading and writting because you can't write to the ROM area.
  Advantages:
    o FastRAM is finally no slower than ST-RAM
    o ST-RAM and FastRAM size can be configured in runtime very easily
    o you can even simulate memory windows (FastRAM SIMM banks, e.g.)
    o regular memory access gets a higher priority over HW reg access
    o the code might be faster than the original 5 comparisons
  Disadvantages:
    o the whole megabyte of ROM area is readable (so including 0xe8-0xefffff)
    o the code might be slower than the original due to indexing in 4 kB array

- a change in IKBD emulation that fixes the problem with slow mouse motion
  in Videlity Config prg.


2001/11/07 - milan
- new correction in mmu_decode_addr, I suppose still not enough


2001/11/06 - milan
- corrections of PFLUSH, PTEST (I found my old corrections on hd, grr, 2 months
  old, grr)

- MMU address decoding works now (after set_mmu Desktop runs, sometimes),
  but still MiNT (and not only MiNT) gives Bus error/illegal instruction, I
  know about one bug, I'll correct it later.

- mmusetup.cnf example added to reposity

- make install and Debian package corrected

- the 1st step for Solaris


2001/11/06 - Petr
- TOS was patched with WinX by a mistake. Fixed. GEMRAM 1.0 from Aratools
  does not work correctly as the ROM area is not writeable. Use real GEMRAM
  instead.


2001/11/05 - STanda
- VIDEL: Since now we are using 8bit SDL surface for all VIDEL depths
  less than 16. The blitting routines were optimalized (the destBPP checks are
  done outside the main blit loop). The #define SUPPORT_MULTIPLEDESTBPP enabled
  to let support VIDEL definitely 8, 16, 24 and 32 bit destination depths.


2001/11/02 - STanda
- fVDI: The driver now normally initializes to 16bit when no mode option
  is provided in the fvdi.sys. The screen size remains the same as before
  fvdi.prg initialization then.


2001/11/01 - Petr
- mouse behaviour much improved. Automatic grab is configurable now. You can
  ungrab the mouse by Alt+Ctrl+Esc and grab it back by left mouse click.

- new command line option "--save" will save the config file with actual
  values.


2001/11/01 - STanda
- fVDI: The 16,24 and 32bit modes works now.


2001/10/31 - STanda
- fVDI: The resolution change works now with the current driver. Do not try
  to compile the m68k part, it's just full of hacks, but it works for me.
  Just use the binary from CVS. The only useable is the 16bpp in any resolution
  in X11. I didn't try it in framebuffer or so.


2001/10/30 - STanda
- The HostScreen support for 8,16,24 and 32 BPP finished. Many optimalizations
  done in getting the switches out from loops. There should be some speedup, but
  this I can't see on my computer and I didn't even try to make any benchmarks.


2001/10/29 - Petr
- --floppy <path> added to the command line options

- --rom <path> removed

- EmuTOS=<path> in the config file. EmuTOS gets a higher priority over the TOS.

- updated aranymrc.example


2001/10/29 - milan
- ARAnyM can be used now without support of debugger (--enable-debug=no)

- ndebug can be activated now also if you send SIGINT to ARAnyM (and that's
  why it cannot cooperate with cxmon)

- ndebug is now default debugger

- support for gmake

- --config FILE command line option added

- the command line options are scanned for version/help/config before
  parsing of a configuration file


2001/10/26 - milan
- support for instruction history now also in ndebug

- small change in m68k_run_1


2001/10/25 - Petr
- when the aranym catches segmentation fault it releases mouse and keyboard
  and shows last 20 instructions prior the segfaulting instruction (only
  if compiled with --enable-fullhistory).

- InitROM() asks for 512 kB long file (on the net there are just 256 kB ROM
  images).

- Floppy stuff moved to fdc. Automatic mounting - first read/write with
  fallback to read only. Media Change trick prepared but disabled for now
  because the floppy does not read past 499 sector (try e.g. Diskus Read Test).
  Dunno what's wrong. Wonder if the floppy ever worked correctly?


2001/10/24 - STanda
- fVDI: Essential bugfixes added. Now the driver works properly except for the
  bugs in the fVDI engine. These are discussed with the fVDI author.
  The lines with a negative y coordinate are drawn properly now.


2001/10/23 - STanda
- Screenshot added to the website.
- fVDI: Mouse Is not hidden at the right and bottom screen edge.
  Is colorized properly. The shape's hotspot shift implemented.
  Shouldn't crash on higher resolutions than 640x400.
  Put pixel fixed to take the pattern in mind.
  The lineClipping fixed. The lines that starts and ends out of the screen
  are not drawn due to the fVDI.PRG beta engine.. the beta crashes sometimes too)
  The v0.95 works quite well, but with display bugs like no pictures in
  ST-Guide, wrong colors of Thing's keyboard cursor.
- the hardcoded screen resolution changed to the hostScreens one
  in mouseOut handling.


2001/10/19 - STanda
- fVDI: The driver updated to work with FVDI.PRG beta. This beta enables
	e.g. the monochrome images in ST-Guide and fixes many bugs.
	There is still a bug in new line clipping, but I just don't have
	time to fix it now. I know exactly what is the problem.


2001/10/18 - Petr
- MD5 class added
- InitROM() detects both our ABTOS and the original TOS 4.04.
- InitROM() patches TOS 4.04


2001/10/17 - STanda
- README The sophics.cz replaced by atari.org for http access. The ftp
	 and email addresses was left. (I don't know wheter aranym@atari.org
	 works and the ftp must stay @sophics, the absolute path problems)
- ExtFs: Small bug fix. The Fsfirst&next returns the . and .. dirs too.
	 (according to Julian Reschke's advice)
- Tools: The changes that were made and uploaded to Petr's ftp are in CVS now
	 The README was modified a bit.


2001/10/16 - STanda
- fVDI:  The segfault bug in gfxLineColor removed.
- VIDEL: The 16, 24 and 32 destBpp are supported when #define SUPPORT_MULTIPLEDESTBPP
	 in videl.cpp (the SDL surface depth setting is in hostscreen.cpp).


2001/10/16 - milan
- support for BasiliskII's monitor cxmon
- aranymrc now supports FastRAM's size.


2001/10/16 - STanda
- fVDI: The driver should be working now in TC (I finally got the Thing
	executed and looking correctly)


2001/10/09 - milan
- some changes in memory allocation, now support for malloc on dummy platforms


2001/10/08 - STanda
- fVDI: the blitting works on destination 16bpp (still no shadow buffer used).


2001/10/08 - STanda
- ALT+PrintScreen generates a snapshot file using the SDL_SaveBMP.

- Host OS dependent objects moved to the host.cpp(h) and aranym specific
  objects like ExtFs and FVDIDrv moved to araobjs.cpp(h)

- general cleanup of unused variables (fdc.cpp)

- the WEB pages updated


2001/10/02 - milan
- the first "public" version of "ndebug", some modes still disabled

- platform's independent memory allocation, if ARAnyM doesn't know better


2001/10/02 - Petr
- ROM file reading back in main.cpp
- TTRAM renamed to FastRAM everywhere
- --ttram renamed to --fastram, -T renamed to -F
- --grab_mouse switch removed
- added 'cookie_MCH' config option, it holds hex long value
- maxInnerCounter in main.cpp should be tuned to your CPU speed.
  The lower your CPU is the lower the value should be.


2001/10/02 - STanda
- fVDI: blitArea screen2screen & mem2screen (TC) works now.

- fVDI, VIDEL: bitplane to chunky conversion is move into the HostScreen
  inline - should cause no performace penalty

2001/10/01 - STanda

- fVDI: drawLine supports the logical operations now.


2001/09/25 - milan
- cleaning of memory allocation


2001/09/21 [ARAnyM 0.0.8] - Petr
- in a fVDI session (when VIDEL rendering is disabled) if VIDEL VideoRAM address
  is changed the VIDEL rendering is enabled again. This is essential for example
  when you reset the Atari machine (you want to see the Fuji logo, don't you? :)

- MFP TimerC emulation simplified - no more double TimerC interrupts as we
  are now calling the invoke200HzInterrupt each 5 milliseconds.

- hardware.cpp helper functions removed. Now modules call their public functions
  directly. It's better readable and faster this way, I think.


2001/09/20 - STanda
- fVDI: Off by one bug fixed in fillArea.

- fVDI: Separate functions for transparent and opaque background. gfxPrimitives
  methods moved to the HostScreen. Several methods made inline.
  fVDI driver Shouldn't cause BUS ERROR now.


2001/09/20 - Petr
- fixed very annoying bug in direct_tc mode (no more segfaults at $e08ba8 I hope!)

- mouse code for host-client transformation is now conditional (only when not running
  in fullscreen).


2001/09/20 - STanda
- The fVDI driver update: colors work correctly, expandArea implemented
  to display icons and texts, putPixel speedup. Now it seems pretty fast
  when DEBUG is 0 ;)

- gfxprimitives cleanup


2001/09/19 - Petr
- TT-RAM (or FastRAM) size entered on command line (--ttram) is in MB now.
- new .aranymrc option named "FastRAM", acts as the --tram switch.
- first release of aratools.tgz, available at ftp.sophics.cz/pub/aranym.
  FastRAM (or TT-RAM?) can be anything from 0 to about 112 MB (then it
  crashes, I suspect it's due to the weird Milan's virtual memory management).


2001/09/18 - Petr
- keys remapped: Atari Help is on the F11 host key, Atari Undo is on F12 key.
  Keys PageUp/PageDown are mapped to Atari combo Shift+ArrowUp/Down which
  should work in most GEM programs (handy stuff, you get used to it fairly
  quickly).

- mouse behavior changed: first, it's grabbed automatically and centered
  on standard screen size (640x480). Second, with special tool support
  (right now modified Clocky - you find it in ftp.sophics.cz/pub/aranym)
  you are able to move the mouse out of the Atari aranym window. Works
  just like in vmware. Pity it has hardcoded GEM screen size right now.
  Needs to be fixed - made more flexible.

- ARADATA I/O registers are ready to support arbitrary FastRAM size and
  automatic StandaFS config.sys updating, I just need to write the tools
  for that.


2001/09/11 [ARAnyM 0.0.7] - Petr
- real hard fight with Aniplayer. I found that it checks whether there's
  a $CAFEFADE number at $F4000014. This check was killing aranym since
  my check_ram_boundary() was broken (due to a number of stupid bugs).
  Anyway, this CAFEFADE signals that there can be a hardware located at
  that address already (it is flash ROM of Centurbo2 according to Didier)
  and that is a bad sign for us since we wanted to have the host videoram there.


2001/09/10 [ARAnyM 0.0.6] - Petr
- proper check_ram_boundary in memory.h. Has to be always enabled, otherwise
  programs like e.g. Aniplayer can kill the whole aranym..
  FastRAM works again (still fixed to 32 MB).

- SDL_Timer is not used anymore. CPU now checks once in a while (currently
  each 100 m68k instructions) whether it's time to emulate an interrupt.
  The original behavior with timers may be enabled with -DUSE_TIMERS.


2001/09/09 - Petr
- direct TrueColor works again
- clicking in fullscreen X11 works again (generally mouse grabbing works again)
- disabled the shit in main_unix.cpp (the memory management)
- fixed a few little bugs


2001/09/04 - Petr
- milan's port of ata.cpp and cdrom.cpp from Bochs v1.2 now enables direct
  access to CD-ROM! Use "IsCDROM = Yes" in your [IDE1] section of aranym
  conf file.


2001/09/01 - milan
- switch for enabling full opcode's history for debugger


2001/08/31 - milan
- other small corrections for MMU

- memory access now a bit quicker


2001/08/29 - milan
- stupid buggy preversion of TV conf. GUI aranymrc, needs to rewrite in
  better form, something as powertweak's text mode conf. Output in
  aranymtest.rc file. Also needed to find problem with size of strings
  (buffer overflow).

- directive DebugOnStart from ARANYMRC changed to Bool_Tag

- patched stupid mistake by entry of debugger (Alt x Alt+Pause)

- some small corrections for MMU

- newm68k_disasm hasn't any problem with memory addressing now
  (set/longjmp problem)


2001/08/29 - STanda

- VIDEL got the doRender flag with setter setRendering().
  The host_colors_uptodate variable name was changed to hostColorsSync.

- HostScreen got the doUpdate flag cleared upon initialization if the HWSURFACE
  was created.

- fVDIDriver got first version of drawLine and fillArea (thanks to SDL_gfxPrimitives).


2001/08/20 - milan

- support for autodetection of a real disk's geometry in Linux, also for
  createdisk.sh's disks, but new version of parameters.cpp needs reorganization
  in IDEx part

- patched ins. SBCD, ABCD, NBCD (uae 0.8.17), BDcc, Scc in table68k patched

- UAE FPU as default FPU (now better than i386 opt!)

- devdist in Makefile


2001/08/16 - Petr

- config file taken from PARCP. Feel free to extend the global_conf struct in parameters.cpp
  with more options.


2001/08/15 - STanda

- the videl.cpp ST compatible color palette handling added (thanks to Ctirad)


2001/08/13 - milan

- bindist in Makefile

- aranymrc example

- IDE x's settings from aranymrc file


2001/08/10 - milan
- real addressing now working correct

- the first step for reintegration of BasiliskII's CPU API

- Makefile depends repaired

- new sync with BasiliskII (CVS 24.7.2001)

- memory allocation back in main_unix.cpp - better for portability of real
  addressing, also ROM reading back there, not only POSIX, we have also
  non-POSIX OS's


2001/08/09 - Petr

- added ata-new.cpp and cdrom.cpp from Bochs. Compilable but don't work yet (dunno why).


2001/08/08 - STanda

- no atexit crash ( atexit(ExitAll) called )

- numblock key mapping fixed. (/,*,-,+ keys fixed)

- bitplane to chunky conversion speedup (enrolling the conversion loop etc.)


2001/07/24 - Petr
- portable stuff moved from Unix folder up to the main.cpp (should be cleaned up)

- bx_options moved from ata.cpp to parameters and should become global structure
  for aranym options

- floppy is not inserted automatically upon start - this is because my machine does not
  have a floppy connected and it caused aranym to hang. Should be a command line parameter
  like -floppy or something.


2001/07/20 - milan
- signals & pthread removed, now only SDL needs pthread

- mmu_op patched, setjmp/longjmp only, no exceptions

- some warnings "killed"

- "ndebug" integrated (only dbprintf), now D(bug()) without \n


2001/07/13 - STanda
- BLITTER function table restored. (the only - bad - thing is that all
  BLITTER member data must be public to be able to work like this)

- direct_truecolor mode made working again (was not probably since the
  HostScreen creation)

- note: the original fVDI driver sources compiled as they are and got
  corrupted (parachute) one. fVDI author notified and requested the
  whole source tree again.


2001/07/09 - STanda
- SDL comunity solved our mouse problem in Xs! Get the newest SDL cvs,
  make & install

- the grab_mouse is set by default when in fullscreen


2001/07/02 - milan
- new UAE CPU port from BasiliskII (CVS 25.6.2001)

- more portable


2001/06/18 - STanda - version increased to 0.0.5
- the SDL dependent parts of the code were moved to the HostScreen class.
  The HostScreen hostScreen; object is created statically in the hardware.cpp.
  (Most of the methods are inline and thus put into hostscreen.h file)

- several methods were renamed again (one example for all: getVideoMode() ->
  getScreenBpp()).

- some copyright (and CVS) comments added. Please - authors - put the CVS
  comments to the beginning and to the bottom of each source file conforming
  the template provided in the projects root directory (template.cpp).


2001/06/18 - STanda
- videl renderScreen() fix (lock & unlock screen added - again)

- the Shift+Pause combination is now used to exit the emulator immediately
  (this was Petr's code change, but forgotten to tell us ;))... anyway thanks
  for really good working videl now. I seem not to have any problems with
  color palette here :).


2001/06/17 - Petr
- System Timer (200 Hz Timer C) should be precise even under heavy load now.
  The MFP stuff needs to be rewritten from scratch. My C++ OOP knowledge sucks.

- implemented virtual destructor in ICio class. Thanks to that the desctructor
  of RTC is called and saves the settings to disk (file "cmos" - actual folder,
  needs to be fixed - "$HOME/.aranym/cmos" looks like a good idea).

- NVRAM is read from disk/stored to disk automatically. You can use your
  favorite NVRAM editor now.

- system date/time is restored from RTC (host local time is used, not GMT).
  Year needs to be fixed yet.

- a lot of work on mouse cursor, still not as good as STonX's one.
  Mouse is grabbed automatically when you move the cursor over Aranym window.
  To release it hold Control and right click. Then you can leave the aranym
  window - when you move the mouse pointer back over the window it's grabbed
  again.

- it seems that Videl uses different color register sets for different color
  depths (as 4 and 16 color depth's colors are incorrect). Scary. Probably
  some compatibility nightmare.

- fixed too early SDL_Video initialization. Do not init stuff in constructors
  as they are invoked before main(). Fix the ExtFs stuff (install "A" ???)


2001/06/15 - Petr
- VIDEL finished. Hardware color palette registers are used properly now.


2001/06/13 - STanda
- some VIDEL public routins adjusted to provide fVDI driver needed methods.
  (lockScreen(), unlockScreen(), getHostVideoramAddress())

- updateScreen() semantics was updated to SDL_UpdateRect... (only). The
  original method functionality was captured in new renderScreen() method


2001/06/12 - Petr
- VIDEL rewritten using the new BASE_IO class. Got proper getVideoMode()
  and getWidth/Height (all stolen from Linux-m68k source code).
  Extended resolutions (using BlowUP030) work now perfectly (e.g. 1024x768).

- new DSP module is based on the new BASE_IO - you see, it's easy to write
  HW emulation stuff now.


2001/06/08 - Petr
- highly unfinished, very preliminary, often crashing support for extended
  VIDEL resolutions. I know how to fix it, just give me some time.


2001/06/06 - Petr
- '--grab_mouse' command line switch for X-Windows

- floppy can be inserted and removed in run-time. Press F11 to insert
  a floppy read-only. Hold Shift and press F11 to insert the floppy read-write.
  Make sure you have rw permissions on /dev/fd0 for this.
  Press F12 to remove a floppy. It seems to be unnecessary to manually remove
  the floppy each time since the writting should be synchronized (O_SYNC).

  This is not a final stage yet - if we stopped supporting disk images we
  could make the floppy inserting/removing fully automatic.


2001/06/05 - STanda
- extfs: the drives are assignable from commandline option -disk (-d)
  The AUTO/CONFIG.SYS must still contain the conresponding drive-letter
  assignment with the -d options on the commandline.

- the paramenters.cpp contains the drive assignment which is read by
  ExtFs.init() method (called from main_unix.cpp)

- the short -debug option was redesigned to -D


2001/05/29 - Petr - version increased to 0.0.3
- major speed up (22 -> 27 thousand dhrystones) thanks to moving setjmp()
  out of main CPU loop

- excep_no var removed from memory.cpp and newcpu.cpp

- fixed VBL invocation (main_unix.cpp)


2001/05/29 - Petr - version increased to 0.0.2
- uae_cpu/memory.h - you can enable or disable CHECK_MEMORY_END.
  When enabled, direct_truecolor bombs out in early stage of TOS boot (because
  TOS cannot write to videoram).
  When disabled, FastRAM works (just run FASTRAM.PRG from the desktop and
  you'll get 32 MB of additional fast ram).

- 'boot_color_depth' switch works now thanks to late initializing of RTC module
  in HWInit().

- 'monitor' switch allows you to choose between VGA and TV connected on Videl
  output.

- 'direct_truecolor' switch allows you to patch TOS so that Videl VideoRAM
  is set directly to host's VideoRAM. Thus VIDEL writes directly to host's
  VGA card video memory (if framebuffer is used as the SDL_VIDEODRIVER).


2001/05/28 - Petr
- implemented proper Bus Error (hardware.cpp and others). This helps
  in a number of places, namely in FPU detection routines.

- fixed floppy emulation (fdc.cpp). STonX code contained wrong HW register
  addresses. I found it when I enabled FastRAM - the FDC was crashing
  the virtual machine.

- added memory bounds checking (memory.h). Ill behaving programs (and bad FDC
  emulation, as mentioned above :) won't crash the virtual machine anymore!

- new memory allocation (main_unix.cpp), enables 32 MB of FastRAM.
