Short:        Easy GUI for Serial file/floppy transfer
Author:       Roc Vallès i Domènech
Type:         comm/misc
Version:      1.1.2
Architecture: other

amigaXfer is an easy to use GUI tool for lightning fast serial-port floppy and
file transfers.

As it uses the Kickstart built-in debugger, no software is needed in the Amiga
side. Just loadwb -debug, select the Debug/RomWack/SAD option in Workbench's
extra debug menu and enjoy.

This is a Win32 (Windows 7+) build. Alternatively, source code (python and
m68k assembly) is available under MIT license, and runs on multiple platforms,
requiring Python 3.8+, pyserial and wxpython.

It is even possible to bootstrap an Amiga for which no bootable disks are
available.
https://rvalles.net/bootstrapping-an-amiga-without-a-bootable-amiga-floppy.html

If you need to use a parallel link cable is, then do consider Ralf Hoffmann's
APCComm: http://www.boomerangsworld.de/cms/apccomm/index.html

*** AmigaXfer's highlights
- Supports RomWack (AmigaOS 1.x, 2.x and Hyperion 3.x) and SAD (AmigaOS 3.x)
  builtin debuggers.
- High speed transfers; 512kbps possible on basic 68000 @7MHz A500.
- Can be used to bootstrap an Amiga for which no bootable disks are available.
- Checksums (CRC32/ISO-HDLC) used throughout to ensure transfer integrity.

*** About the serial port
- Only three wires are used: RX, TX and GND.
- "null-modem" cable setup:
--  RX \/ RX
--  TX /\ TX
-- GND -- GND
- IBM PC standard serial port only support up to 115200 bps.
- USB-serial controllers can generally handle higher speeds.
- Short cables work better. USB adapters can make this trivial.
- Some DB25<>DB9 adapters are crossed (null-modem), some are not. Beware.

*** Entering the debugger
- Load WB with "loadwb -debug", then select romwack/sad on debug menu.
- Use provided debug AmigaOS binary and icon, on CLI or WB.
- Boot from provided debug bootblocks.
- Crash the Amiga, enter the debugger as power led blinks.
-- Refer to URL above or included bootstrap doc.
- Crash the Amiga with a non-critical guru (no reboot or blinking led).
-- Use ResetFirst setting, right click the mouse on guru screen.

*** Features
- Floppy Tool
-- Read/Write/Compare ADF.
-- All four floppy drives.
- Bootblock Tool
-- Write included bootblocks to any floppy drive.
-- Does read and apply the existing filesystem's flags.
-- Able to format the first track to make non-Amiga formatted disks bootable.
- DOS Tool (preview)
-- Read and write files.
-- Volume names are discouraged. Drive names are recommended.
-- Use of RAM: recommended, particularly as destination.
-- If targetting floppy drives (like DF0:), delays to allow drive to settle.
-- Hard disk targets are discouraged, as writes could happen late if at all.
- ROM Tool
-- Dump the Amiga's kickstart rom.

*** Version History
1.1.2 (2022-08-21)
- SetupDialog
-- Open serial in exclusive mode if possible.
-- Support for interrupting the DEL-sending CrashEntry routine.
- BootblockTool
-- Remove stale code from debug/optdebug bootblocks.
-- New "noboot" bootblock: Amiga won't boot it. DOS can still access.
- RomTool
-- Fix: Progressbar progress display was not accurate.
- Fix: Clear icache on code upload (020+). (Thanks to TerribleFire, issue #1)
- Improved log output.

1.1.1 (2021-07-08)
- SetupDialog
-- Detect missing m68k objects.
-- Better UX on connection issues.
- BootblockTool
-- New bootblocks:
--- exitstrap is a hack to actually exit strap's init routine.
--- warmdos is exitstrap + start dos via WarmCapture(). A curiosity.
- DOS Tool (preview)
-- BUG: Fix crash with AmigaOS 2.x and setpatch.
-- File transfers can now be interrupted.
- Improved log output.
- Thanks to Ralf Hoffmann for AmigaOS 2.x issue report and testing fix and 
  Daniel Doran for pre-release testing.

1.1.0 (2021-05-18)
- SetupDialog
-- ResetFirst will reboot machine during connection.
--- Allows entry via non-critical guru right click.
--- Writing floppies is slightly faster in this environment, due to less tasks
    running.
--- DosTool not usable in this environment due to dos.library being not yet
    initialized.
- FloppyTool
-- BUG: Fixed tool not working at all and instead spitting FCh ioerr on some
   machines.
--- Thanks to Michael Kagerbauer for reporting issue and testing fix.
-- Disk2ADF will now retry reads 5 times before giving up.
-- More user friendly IO error reporting.
--- Thanks to Michael Kagerbauer for feedback on old IOERR reporting.
- BootblockTool
-- Better error reporting.
- BUG: Fixed issue in workaround for WRITE_BYTE SAD bug (kick v39).
- Workaround introduced for SAD reboot function ACK bug.
-- SAD doesn't check TSRE after writing ACK to SERDAT; reboot will interrupt
   ACK on a fast CPU.
-- Don't bother waiting for ACK.
- Floppyless Bootstrap should now work on all kickstarts.
-- Tested on kickstart 34/37/39/40/45/46.
- Size SetupDialog/RomTool windows to contents.
-- Thanks to Alexander Fritsch for feedback/screenshots on window sizing
   issues with some win7 themes.
- Cleaned up tool startup/cleanup procedures for all tools.

1.0.1-newzip (2021-04-03)
- Reissued zip as win7's zip support had trouble unpacking the old one. It
  does not like advzip (advcomp) zips.

1.0.1 (2021-04-02)
- RomTool
-- Initialization GUI work outside GUI thread issue fixed.
-- Kickstart detection logic is now slightly more clever.
-- Can now be interrupted mid-dumping.
-- Larger transfer blocks, faster dumping.
-- Timer added.
-- Debug text output added.
- DosTool
-- Target directory can safely contain a trailing slash.
-- Buffer size scales with free RAM, up to 256KB. Faster.
-- Timer added.
- FloppyTool
-- Progressbar added.
- UI improvements.
- Documentation improvements.

1.0.0 (2021-03-25)
- Initial release.


*** Other Amiga projects from me
- comm/term/amigaterm_enh: 1985 serial port ANSI Terminal, enhanced
