skool2ctl.py¶
SYNOPSIS¶
skool2ctl.py
[options] FILE
DESCRIPTION¶
skool2ctl.py
converts a skool file into a control file. The control file is
written to stdout. When FILE is ‘-’, skool2ctl.py
reads from standard
input.
OPTIONS¶
- -b, --preserve-base
Preserve the base of decimal and hexadecimal values in instruction operands and DEFB, DEFM, DEFS and DEFW statements. (By default, only binary values and character values are preserved.)
- -E, –end ADDR
Stop converting at this address. ADDR must be a decimal number, or a hexadecimal number prefixed by ‘0x’.
- -h, --hex
Write addresses in upper case hexadecimal format.
- -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.
- -k, --keep-lines
Preserve line breaks in comments.
- -l, --hex-lower
Write addresses in lower case hexadecimal format.
- --show-config
Show configuration parameter values.
- -S, –start ADDR
Start converting at this address. ADDR must be a decimal number, or a hexadecimal number prefixed by ‘0x’.
- -V, --version
Show the SkoolKit version number and exit.
- -w, –write X
Write only these elements, where X is one or more of:
a
= ASM directivesb
= block types and addressest
= block titlesd
= block descriptionsr
= registersm
= mid-block comments and block start/end commentss
= sub-block types and addressesc
= instruction-level commentsThe default is to write all of these elements.
CONFIGURATION¶
skool2ctl.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:
- Hex:
Write addresses in decimal (
0
, the default), lower case hexadecimal (1
), or upper case hexadecimal (2
).- KeepLines:
Preserve line breaks in comments (
1
), or don’t (0
, the default).- PreserveBase:
Preserve the base of decimal and hexadecimal values in instruction operands and DEFB/DEFM/DEFS/DEFW statements (
1
), or don’t (0
, the default).
Configuration parameters must appear in a [skool2ctl]
section. For example,
to make skool2ctl.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
:
[skool2ctl]
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¶
Convert
game.skool
into a control file namedgame.ctl
:skool2ctl.py game.skool > game.ctl
Convert
game.skool
into a control file containing only block types, addresses and titles:skool2ctl.py -w bt game.skool > game.ctl