aboutsummaryrefslogtreecommitdiff
path: root/xex1to2.rst
blob: 44464f840e8c3c720900bd7d7e365397a019d75b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
.. RST source for xex1to2(1) man page. Convert with:
..   rst2man.py xex1to2.rst > xex1to2.1

=======
xex1to2
=======

------------------------------------------------------------------
Convert an Atari DOS 1.0 executable to a standard Atari executable
------------------------------------------------------------------

.. include:: manhdr.rst

SYNOPSIS
========

xex1to2 [*infile*] [*outfile*]

DESCRIPTION
===========

**xex1to2** reads a binary load file created by Atari DOS 1.0 and
converts it to a standard Atari executable, as used by Atari DOS 2.0S
and all other Atari DOSes.

DOS 1.0's executable format is segmented, like the XEX format,
but the signature bytes are **$84**, **$09** rather than **$FF**,
**$FF**. Also, the signature bytes can *only* occur for the first
segment (the start of the file). Further segments just have a 4-byte
header with the start and end addresses.

All this utility really does is copy *infile* to *outfile*, replacing
the first two bytes (which must be **$84**, **$09**) with **$FF**,
**$FF**.

If *outfile* is omitted, output is written to **stdout**. If *infile*
is also omitted, input is read from **stdin**. **xex1to2** will not
write to **stdout** if it's a terminal.

To convert the other way, from a DOS 2.0 compatible XEX file to a DOS
1.0 executable, use **xexcat -1**.

EXIT STATUS
===========

Exit status is zero for success, non-zero for failure.

.. include:: manftr.rst