				   ZxLink

		            A multipurpose utility

		    by Erik Kunze <zxlink@zx-spectrum.net>

               $Id: README,v 1.6 2001/06/23 20:00:05 erik Rel $


Contents
--------
 1.    Introduction
 1.1.  Registration
 1.2.  Distribution
 1.3.  Reporting bugs
 1.4.  Credits
 2.    Using the program
 2.1.  Requirements
 2.2.  Options
 2.3.  Serial transfer
 3.    Serial cable


1. Introduction
---------------
ZxLink is a multipurpose utility for connecting your ZX Spectrum 48K/128K/+3 
(8-bit home computers made by Sir Clive Sinclair) to computer running UNIX.
It is intended for those who prefer "the real thing" instead of emulators.
Exchange of Spectrum programs via Internet is easier today than on the ancient
times. ZxLink will help some Speccy owners to enjoy these new resources.


1.1. Registration
-----------------
ZxLink is free, but still copyrighted (see file COPYRIGHT).  You can give it to
anybody if you not change, or remove anything from the package.  However, I
spent a lot of my spare time on developing ZxLink and also money for buying
Spectrums, so every donation is welcomed.  If you like this program, you should
at least send the author a postcard.

If you want to pay a desired value of money or send me spare Spectrum parts
please contact me by email.  At the moment of writing (June 2001) my email
address is zxlink@zx-spectrum.net.

Future versions of ZxLink may not be free at all.


1.2. Distribution
-----------------
The latest news and files are always available from ZxLink's homepage.  This
page gets updated at least every week, sometimes even every day.

  http://www.zx-spectrum.net/zxlink/

Every version comes with a compiled in expiration date.  If your version has
expired get a new one (if available) or register your copy of ZxLink!


1.3. Reporting bugs
-------------------
You are welcome to send notes/bug-reports to me.  But please check if not
already in the list (TODO), or if it was not just a misunderstanding -
otherwise, I may probably not find time to do anything else than reading mails
in the future :-)

To report a bug send a mail to zxlink-bug@zx-spectrum.net.  Be sure to include a
short description of your system together with the bug report itself.


1.4. Credits
-----------
Thanks are due to lots of people, including:

  Tomaz Kac (tomaz.kac@uni-mb.si) for giving me the source of HypraLoader.

  Staffan Kjerrstrom (skjerrst@senet.abb.se) for giving me permission to
  distribute parts of his MOY package (Revision 1.0  1994) along with ZxLink.

  Tero Turtiainen for porting Tomaz Kac's PlayTZX to Linux.

  Martijn van der Heide for the permission to use TAPER's snapshot-to-tape
  converter.


2. Using the program
--------------------

2.1. Requirements
-----------------
o Spectrum 48K with Interface 1 or Spectrum 128K/+3.

o Workstation/PC with UNIX/Linux.

o Cable for RS232 link and/or cable for audio link.


2.2. Options
------------
ZxLink accepts the following options:

  -h, --help
	Display the help message.

  -v, --version
	Display version number and expiration date.

  -q, --quiet
	Quiet mode: don not print verbose messages.  Useful when using ZxLink
	in Shell scripts.

  -d. --device
	ZxLink has been compiled to use '/dev/ttyS0' and '/dev/audio'.  However,
	if your devices are named different, use this option to specify the
	device name to use instead.

  -s, --speed
	Speed to use on serial device.

  -c, --count
	Number of bytes to transfer over serial device.
	Default: all

  -p, --put
  -g, --get
	Specify direction of data transfer for serial transmission.
	Default: put

  -a, --audio
	Transfer the file in Spectrum's tape format via audio device.  ZxLink
	uses the serial device for transmissions by default.

  -m, --sample
        Sample rate to use on audio device.

  -f, --from
  -t, --to
	Tape blocks (1...n) to transfer via audio device.
	Default: all


2.3. Serial transfer
--------------------
To learn about serial transfer of programs and data to and from the Spectrum
consult the Interface I manual at

  http://www.madhippy.com/8-bit/sinclair/zxif1micro.html#chapter8

and the Spectrum +3 manual at

  http://www.madhippy.com/8-bit/sinclair/zxspec3man/chapter8pt21.html


3. Serial cable
---------------
I use two serial cables because I connect either a Spectrum 48K with an
Interface 1 or a Spectrum +3 to my PC.  The first cable connects the
Interface 1 with the PC.  The second cable connects the Spectrum +3 to the
first cable.  Got the point?

   +3           IF1          IF1              PC

  +12V (1)------(9)          RxD (2)------(2)  TxD
  DTR  (2)------(5)          TxD (3)------(3)  RxD
  CTS  (3)------(4)          CTS (4)------(20) DTR
  TxD  (4)------(3)          DTR (5)------(5)  CTS
  RxD  (5)------(2)          GND (7)------(7)  GND
  GND  (6)------(7)          +9V (9)------ n.c.

Don't comment to me if you find the names at the Interface I side funny.
I didn't invent them, they come straight out of Clive's "Microdrive and
Interface 1 manual" page 49.
