-------------------- AmigaOS 3.1.4.(1) project -----------------------

install 45.2 (4.6.2017)

- Added support for the long-filename flavours of the FFS.

- Instead of hardcoding DFx: and CCx: into install, the
  program will now correctly walk the dos device list and
  filter the device names. In principle, the code can now
  also install boot blocks on superfloppies, except that
  the kickstart can not boot from them. )-:

----------------------- AmigaOS 3.2 project --------------------------

install 45.3 (18.4.2019):

- Recompiled with better compiler settings.

install 45.4 (21.4.2019): 

- Error messages are now printed over pr_CES.

Changes for release 47.1 (28.11.2019)

- Bumped to v47.

install 47.2 (1.5.2020)

- Restored the original documentation.

- Got rid of the sometimes exuberantly indented structure of
  the source code.

- Replaced the file system startup message fiddling with a
  single documented function which does all the icky work.

- Now actually checks if the volume to be installed has its
  partition beginning at cylinder 0. This stops you from
  accidentally installing a boot block on your hard disk,
  accidentally corrupting the RigidDiskBlock.

- Now respects the number of boot blocks given for a
  volume. If unavailable, will use the number of reserved
  blocks.

- Now checks if the boot block code fits into the number of
  boot blocks/reserved blocks.

- Now only checks if the disk is write protected if a
  boot block should be written to it.

- For the first time ever performs a checksum test to find
  out if the disk in fact has a bootable boot block on it.
  This used to work in the V33/V34 "Install" command but
  somehow got lost.

- For the first time ever now returns with RETURN_WARN if
  the CHECK option finds that the reserved/boot blocks of
  a disk are not bootable. This used to work in the
  V34 "Install" command but somehow got lost.

- For the first time ever now returns with RETURN_ERROR if
  the CHECK option finds that the reserved/boot blocks are
  bootable and do not contain any original Commodore disk
  boot code. This used to work in the V34 "Install" command
  but somehow got lost.

- Moved the device driver whitelist check into a separate
  function. Added "trackfile.device" to that list.

- Replaced the optimized checksum calculation code, which
  could only calculate the checksum, with the same code
  that the "strap" module uses. This one can both calculate
  and check the boot block checksum.

- Replaced the magic numbers/flags which constants which
  hint at their meaning.

- Did not replace the misleading or incomprehensible
  error messages yet because there's a limit to how much
  effort fixing such a simple program (the original 1985
  version was 120 lines long) can demand...

install 47.3 (14.5.2020)

- Rebuilt with data=faronly option. This solves the problem of the
  device name whitelist check not retrieving the names properly,
  producing an illegal memory access. Curiously, this problem only
  manifested with optimizations enabled and took only three hours
  to resolve.

- Changed the localization strings to use the full file system
  name instead of "F", "O", etc.

install 47.4 (19.7.2020)

- Updated the code documentation, especially with regard to how
  the boot block checksum algorithm actually works. There is no
  documentation in the RKMs or the AmigaDOS manuals on this subject
  besides the cryptic reference that a boot block has to have an
  "additive carry wraparound sum of 0xffffffff".

- Fixed the 2.0 boot block binary data not to use "\expansion.device"
  since that is definitely identical to "expansion.device" in C90 (but
  might not stay so future 'C' language versions). Also, shaved the
  trailing "\0" off since this is implied in the string being
  NUL-terminated anyway. This also renders the hard-coded constants for
  the respective boot block code sizes redundant as sizeof() will
  suffice.

- In case we are going to get another Amiga default file system
  variant beyond DOS\8 the Install command now specifically says
  that it does not know the file system type involved. For example,
  "install check df0:" now says something like "Appears to be 2.0
  unknown file system bootblock" instead of "Appears to be
  2.0  bootblock".
