aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--rom2cart.134
1 files changed, 25 insertions, 9 deletions
diff --git a/rom2cart.1 b/rom2cart.1
index d339b02..7582750 100644
--- a/rom2cart.1
+++ b/rom2cart.1
@@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
-.TH "ROM2CART" 1 "2022-08-29" "0.2.0" "Urchlay's Atari 8-bit Tools"
+.TH "ROM2CART" 1 "2024-04-22" "0.2.1" "Urchlay's Atari 8-bit Tools"
.SH NAME
rom2cart \- Convert a raw ROM image to an Atari800 CART image, or vice versa
.\" RST source for rom2cart(1) man page. Convert with:
@@ -43,7 +43,7 @@ rom2cart \- Convert a raw ROM image to an Atari800 CART image, or vice versa
\fBcart2rom\fP [\fIinfile\fP] [\fIoutfile\fP]
.SH DESCRIPTION
.sp
-\fBrom2cart\fP converts between raw ROM dumps and Atari800 \fB\&.CAR\fP
+\fBrom2cart\fP converts between raw ROM dumps and Atari800 \fB\&.CAR\fP
images. Despite the name, conversion can be done in either direction.
\fBcart2rom\fP is equivalent to \fBrom2cart \-r\fP\&.
.sp
@@ -57,7 +57,7 @@ content), and (optional) user\-supplied type number or name (\fB\-t\fP).
If \fBrom2cart\fP is unable to narrow the selection down to one
image type, it will "guess" by choosing the lowest\-numbered type
that matches the given parameters (unless \fB\-n\fP is given to prevent
-this behavior).
+this behavior, in which case it will exit with an error message).
.sp
When writing a \fB\&.CAR\fP file, \fBrom2cart\fP will calculate the checksum
automatically and store it in the \fBCART\fP header (unless \fB\-C\fP is
@@ -142,6 +142,13 @@ may define a use for them. Normally, \fBrom2cart\fP sets them to all
zeroes. \fIdata\fP is a 32\-bit unsigned value, and may be given in hex
(prefixed with $ or 0x) or decimal (no prefix). This option has no
effect if the output is a raw dump (\fB\-r\fP option).
+.TP
+.B \-H
+Test the code\-detection heuristics: examine the first 8K of the ROM and
+look for writes to $D2xx (8\-bit computer) or $E8xx (5200) to guess the
+machine type for the ROM. This option exists only for testing: normally,
+the machine type gets guessed by the cartridge option bytes, and the
+code\-detection is only done if the option byte tests are inconclusive.
.UNINDENT
.SH NOTES
.sp
@@ -155,7 +162,7 @@ be constructed from \fIinfile\fP by replacing the filename extension with
is no extension.
.sp
\fBrom2cart\fP contains an internal database of image types. The current
-version uses the list from Atari800 v2.0.3 (types 1\-43). If you
+version uses the list from Atari800 v5.2.0 (types 1\-103 and 160). If you
need to create a \fB\&.CAR\fP image of a type not supported in this
version of \fBrom2cart\fP, you can use the \fB\-T\fP option. Alternatively, look
for a newer version of \fBrom2cart\fP\&. If no new version exists, bug the
@@ -177,15 +184,24 @@ A \fB\&.CAR\fP image consists of a 16\-byte header followed by the ROM data.
.sp
The first 4 bytes contain \(aqC\(aq \(aqA\(aq \(aqR\(aq \(aqT\(aq in ASCII.
.sp
-The next 4 bytes contain the cartridge type in MSB (aka
-\fIbig\-endian\fP) format.
+The next 4 bytes contain the cartridge type in MSB (aka \fIbig\-endian\fP)
+32\-bit integer format.
.sp
-The next 4 bytes contain cartridge checksum in MSB format (ROM only).
+The next 4 bytes contain cartridge checksum in MSB format (ROM only;
+the header is not checksummed).
.sp
The next 4 bytes are currently unused (zero).
.sp
-The rest of the file contains the ROM data: 4, 8, 16, 32, 40, 64, 128,
-256, 512 or 1024 kilobytes.
+The rest of the file contains the ROM data, up to 32Mbytes as of
+Atari800 5.2.0. The cartridge type determines the amount of data; see
+\fIcart.txt\fP or the output of \fBrom2cart \-l\fP\&.
+.sp
+The latest version of \fIcart.txt\fP can be found at:
+.INDENT 0.0
+.INDENT 3.5
+\fI\%https://raw.githubusercontent.com/atari800/atari800/master/DOC/cart.txt\fP
+.UNINDENT
+.UNINDENT
.SH HEURISTICS
.sp
If none of the \fB\-m\fP, \fB\-n\fP, \fB\-T\fP options are given, the machine type is