=pod

=head1 NAME

B<shape_table> - generate shape table data from a text description

=head1 SYNOPSIS

B<shape_table> [-h] [-a] [-b] < input > output

=head1 DESCRIPTION

B<shape_table> reads a text description of a vector graphic from standard
input and writes Apple II shape table data to standard output (as either
binary data or BASIC DATA statements).

=head1 OPTIONS

=over

=item -h

Print the built-in help message and exit.

=item -a

Output BASIC DATA statements (also the default behaviour, so this option
is redundant).

=item -b

Output BLOADable binary data.

=back

=head1 INPUT FORMAT

The input consists of a series of lines. Each line is either a command,
a blank line, or a comment.

Blank lines are ignored. They must contain no extra whitespace characters,
and must consist of only the \n character.

Comments are ignored. They are marked with a B<#> in the first column
(no leading whitespace), and continue to the end of the line.

Commands consist of any text containing one of the draw instructions
listed below. The instruction must be in upper case, and may be preceded
and/or followed by anything at all (but only one instruction per line
is read).

=head2 Instructions

Each instruction moves one pixel, in either plotting or non-plotting
mode. The binary output of each command is shown here, prefixed with %.

=over

=item NUP

Move up (non-plotting), %000

=item NRT

Move right (non-plotting), %001

=item NDN

Move down (non-plotting), %010

=item NLT

Move left (non-plotting), %011

=item UP

Move up (plotting), %100

=item RT

Move right (plotting), %101

=item DN

Move down (plotting), %110

=item LT

Move left (plotting), %111

=back

=head1 SEE ALSO

=over

=item Applesoft II BASIC Programming Reference Manual

Shape tables are documented on page 96 of the author's copy.

=item dos33fsprogs(1)

=item a2tools(1)

=back

=head1 WEBSITE

http://www.deater.net/weave/vmwprod/apple/

=head1 AUTHORS

B<dos33fstools> written by Vince Weaver <vince _at_ deater.net>.

This manual page written by B. Watson for the SlackBuilds.org project,
but it may be used by anyone.
