This little utility lets you convert between the different file formats
used by various emulators for the ZX Spectrum computer.

I was made for, making it easier to convert and transfer programs between
the different emulators and real spectrum computers.

It can convert between the following formats:
	Tape-files used by xzx/xz80, the Unix/X emulators
	Tape-files used by Z80, the MS-DOG emulator
	Real Plus3DOS files used, by the Spectrum +3
	Raw files, e.g. transfer ASCII-text to CODE blocks

In case of the +3 files, you'll need an utility to write/read them directly
to/from +3 disks. Here you can use 22disk, a shareware program to read most
CP/M disks on you MS-DOG computer. Or you can use the disk images used by
the Unix/X emulator xzx, enter the emulator and copy the files from disk to
'tape'-files.
If you are converting from either +3 or RAW, then you have to specify the
name of the file. This name should be the same as used at SAVE in BASIC, and
will be part of the tape header.

The program is used as follows:
	tapconv infile outfile outformat

where - infile is a valid TAP/XZX/+3DOS/RAW file
        outfile is the name of the converted file
        outformat is the format, which to convert to 
        * TAP for z80
	* XZX for xzx/xz80
	* P3D for +3
	* RAW for data only, e.g. for making a z80 .SCR file

Files from xzx or +3 have an identifier at the beginning, so they can be
determined automatic. For z80 .TAP files, the program relies on the extension
used, .TAP or .tap. If none of the above is found, raw format is assumed.


How to make tapconv:
--------------------
I haven't supplied a Makefile since it should be a piece of cake to compile it

Using gcc - Unix
 gcc -O2 -o tapconv tapconv.c

Using gcc/emx - OS/2 (and maybe DOS too)
 gcc -O2 -o tapconv.exe tapconv.c

Using - DOS
 Just do as you normally would do :-)
 Sorry but I don't have access to a C compiler under DOS, so I can't try it
 out. Russell Marks has tested it with Microsoft C v6 and it should work o.k.


EXAMPLE:
--------
  tapconv z80in.tap xzx_out  xzx	converts z80in.tap to xzx format
  tapconv xzx_in plus3.out p3d		converts xzx_in to +3 DOS format



TODO:
-----
 * Handle headerless datablocks from .TAP files (convert them to normal)
 * Better GUI for block selection in .TAP files
 * ???

6-95 Thomas Kjaer takjaer@daimi.aau.dk




