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