sna2ctl.py¶
SYNOPSIS¶
sna2ctl.py
[options] FILE
DESCRIPTION¶
sna2ctl.py
generates a control file for a binary (raw memory) file or a
SNA, SZX or Z80 snapshot. The control file is written to standard output. When
FILE is ‘-‘, sna2ctl.py
reads standard input as a binary file.
OPTIONS¶
- -e, –end ADDR
- Stop at this address. The default end address is 65536. ADDR must be a decimal number, or a hexadecimal number prefixed by ‘0x’.
-h, --hex | Write upper case hexadecimal addresses. |
- -I, –ini param=value
- Set the value of a configuration parameter (see
CONFIGURATION
), overriding any value found inskoolkit.ini
. This option may be used multiple times.
-l, --hex-lower | |
Write lower case hexadecimal addresses. |
- -o, –org ADDR
- Specify the origin address of a binary file. The default origin address is 65536 minus the length of the file. ADDR must be a decimal number, or a hexadecimal number prefixed by ‘0x’.
- -p, –page PAGE
- Specify the page (0-7) of a 128K snapshot to map to 49152-65535.
--show-config | Show configuration parameter values. |
- -s, –start ADDR
- Start at this address. The default start address is 16384. ADDR must be a decimal number, or a hexadecimal number prefixed by ‘0x’.
-V, --version | Show the SkoolKit version number and exit. |
CONFIGURATION¶
sna2ctl.py
will read configuration from a file named skoolkit.ini
in
the current working directory or in ~/.skoolkit
, if present. The recognised
configuration parameters are:
Dictionary: | The name of a file containing a list of allowed words, one per line. If specified, a string of characters will be marked as text only if it contains at least one of the words in this file. |
---|---|
Hex: | Write addresses in decimal (0 , the default), lower case hexadecimal
(1 ), or upper case hexadecimal (2 ). |
TextChars: | Characters eligible for being marked as text (default: letters,
digits, space, and the following non-alphanumeric characters:
!"$%&\'()*+,-./:;<=>?[] ). |
TextMinLengthCode: | |
The minimum length of a string of characters eligible for
being marked as text in a block identified as code (default: 12 ). |
|
TextMinLengthData: | |
The minimum length of a string of characters eligible for
being marked as text in a block identified as data (default: 3 ). |
Configuration parameters must appear in a [sna2ctl]
section. For example,
to make sna2ctl.py
write upper case hexadecimal addresses by default
(without having to use the -h
option on the command line), add the
following section to skoolkit.ini
:
[sna2ctl]
Hex=2
Configuration parameters may also be set on the command line by using the
--ini
option. Parameter values set this way will override any found in
skoolkit.ini
.
EXAMPLES¶
Generate a control file (using rudimentary static code analysis) for
game.z80
namedgame.ctl
:sna2ctl.py game.z80 > game.ctl
Generate a control file (using a profile produced by the Fuse emulator) for
game.sna
namedgame.ctl
:sna2ctl.py -m game.profile game.sna > game.ctl