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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
|
.. RST source for axe(1) man page. Convert with:
.. rst2man.py axe.rst > axe.1
.. rst2man.py comes from the SBo development/docutils package.
===
axe
===
--------------
ATR/XFD Editor
--------------
.. include:: manhdr.rst
SYNOPSIS
========
**axe** [*-alvtu*] [*-b newimage*] [*-D file*] [*-x file*] [*-w file*] [*-c dirname*] [*-t*] [*-d sector*] [*imagefile*]
DESCRIPTION
===========
**axe** allows the user to access files stored inside a single-density
Atari DOS 2.0S disk image (ATR or XFD). It can list the directory,
copy files into and out of the image, delete files in the image,
create a new image (either blank or containing files), and dump various
low-level information about the image's filesystem structure.
OPTIONS
=======
Standard Options:
-----------------
-b *filename*
Create blank ATR image file called *filename*. If *filename*
already exists, it will be overwritten with no warning.
-c *directory*
Create new ATR *imagefile* with contents of *directory*. If *imagefile*
already exists, it will be overwritten with no warning. Similar to **tar cf**.
-D *file*
Delete *file* from *imagefile*. Ignores "locked" bit.
-t *directory*
Extract all files in image to *directory*, which will be created and
must not already exist. Similar to **tar xf**.
-u
Unix <-> Atari newline/EOL translation (use for text files only; breaks other file types).
-w *file*
Write *file* to *imagefile*, overwrites if *file* already exists. Ignores "locked" bit.
-x *file*
Extract (read) file from *imagefile*, write to current directory.
Debugging Options:
------------------
-a
List all directory entries, even deleted/empty ones.
-d *sector*
Dump a sector in decimal, hex, and binary.
-l
Trace and print sector links for all files on disk.
-v
Dump VTOC (sector 360) in decimal, hex, and binary.
LIMITATIONS
===========
**axe** is ancient code, from last century. It has various design
flaws and bugs. At this point, it would be better to rewrite it from
scratch than to try & fix the existing code.
Only Atari DOS 2.0S and 100% compatible single-density disk images are
supported. MyDOS images will work, but there's no support for MyDOS
subdirectories. There's no support for e.g. SpartaDOS or Atari DOS
3.0/4.0. Atari DOS 2.5 enhanced density images will work, the same
way they work on DOS 2.0S: files using the extra sectors will not be
readable, and **axe** won't write to the extra sectors. Atari DOS 1.0
images (which are *very* rare) can at least have the directory listed,
but I wouldn't recommend writing to them.
The "file locked" (aka read-only) bit is ignored when writing, and
there's no way to lock or unlock files, though locked files do appear
with \* next to the name in the directory listing.
It's possible to create files in a disk image with invalid filenames,
e.g. beginning with a number, or containing punctuation. Atari DOS
might or might not be able to even delete such files, but **axe** will
be able to if it happens.
**axe** does nothing with the boot sectors (sectors 1-3) of the disk
image. When creating a new image, the boot sectors will be blank (all
zeroes), meaning the disk won't be bootable. If DOS.SYS is written to
an image with a DOS boot record, the boot record won't be updated with
the first sector of DOS.SYS, so the disk won't be bootable.
.. include:: manftr.rst
|