Eliminated the need for the `.tar.tstamp` files. It became intractable
to produce a tarball that was byte-for-byte identical to a tarball
on another platform. We further simplified the process used by the
`bin/tar-year.sh` tool to no longer need `.tar.tstamp` files.
Removed `.tar.tstamp` files and updated the manifest.
Sorry (tm Canada 🇨🇦) for the "flip-flop".
The `bin/tar-year.sh` tool now uses a similar algorithm to how
`bin/tar-entry.sh` determines if a compressed tarball needs to be
rebuilt.
Changed `bin/tar-entry.sh` VERSION from "1.3.3 2024-03-27"
to "1.3.4 2024-03-27".
Changed `bin/tar-year.sh` VERSION from "1.1.3 2024-03-27"
to "1.2 2024-03-27".
Performed `make www` and `make form_entry_tarball`
and `make form_year_tarball` to complete the above
actions and test these changes under macOS.
TODO: Test the `bin/tar-year.sh` tool under Linux.
TODO: Address issues with building the top level `ioccc.tar.bz2`
and the `bin/tar-all.sh` tool and the `make form_all_tarball` rule.
NOTE: The `bin/tar-all.sh` tool and the `make form_all_tarball` rule
and the `make tar` should **NOT** be used at this time.
To build:
make all
To use:
./bas1.sh
Judges' remarks:
The output is supposed to be a 3D maze, but it is somewhat more than that. If you've seen any of the Maurits Escher's works, you'll know what we're talking about.
When trying to run the program with command line arguments, be generous.
Author's remarks:
BEMAZING
"You're in a twisty little maze of beams, all different."
Bemazing is "amazing" taken one step (letter) further. Bemazing
creates a 3D maze of beams. Try to go from the entrance (the
unfinished beam in one corner) to the exit (the unfinished beam in the
opposite corner) or vice versa.
For maximum portability, Bemazing is not tied to any window system, but
creates postscript output. The picture it makes will fit on either A4 or letter
size paper.
In addition, because postscript is rather verbose, Bemazing creates
the postscript in gzip(1) format, in order to save precious bits on your
hard disk for the latest version of GNU
Emacs (after all, you wouldn't
want to use an editor without a psychoanalyze-pinhead function, now
would you). Again for maximum portability, Bemazing will take special
care that the binary output will not contain any newline or return
characters that may get weird treatment on systems that do not use the
One True Line Separator.
NOTES
Be sure to view the source with something that can display characters
\240-\377. Use LESSCHARSET=latin1, M-x standard-display-european in
GNU Emacs etc. The source does not use characters in the range
\200-\237 (we are not an unnamed word processor that tends to create
HTML containing these control characters).
Because this is not the obfuscated postscript contest, the postscript
does not contain any for, if or other control structures. All the
logic is in the C code. There are only a few straightforward defs,
because otherwise the output would become much larger.
Try running Bemazing with command line arguments and see what
happens. (But note that the program only guarantees that there
actually is a route from entrance to exit if you run it without
command line arguments.)