Billy's Silly Things
ProDOS Version 2.0
By Bill Buckels May 2008

Program Description
-------------------

Graphics Demo and Children's Play Activity
------------------------------------------

This program is based on "The Mixed-Up Toy game" from Broderbund's
PlayRoom program. "Three different sections of the body--the head,
torso, and legs spin around and its up to the kids to change the body
parts to match the cartoon characters.,,"

It also offers a BSAVE option to save the Silly Things.

It is an Aztec C demo program to show how run length encoded image
fragments can be used to save disk space and increase file load speed
since the disk files are smaller and load more quickly than a raw file,
despite the extra time required to decode the file onto the screen.

The graphics images were captured from the 1989 MS-DOS CGA 4 color
version of The PlayRoom then saved to BSaved IBM images using my
ClipShop program which were subsequently chopped into the required
pieces using a modified version of my Fraggle utility, I then modified
my FragRAG utility to provide a run length encoded version of my RAG
format that I call the RAX format. This format is the same as the RAG
format with the exception that the graphics image data following the
width and height header is encoded as one chunk using the ZSoft PCX
encoding algorithm which is relatively decent and unpacks quickly.

History
-------

This program has a little history attached to it as well. Around 1990
when my son was just a little guy I would give him Apple II programs to
take to school.

My kids had The Playroom on their IBM=PC. A ComputerLand Salesman had
given me an Okey-Dokey Licenced Copy as a gift at one point. I was
purchasing a fair amount of software like compilers around that time.

So I got busy and created "Billy's Silly Things" since like me my son's
name is Bill. I did so similarly to what I have done here and wrote it
in Aztec C for ProDOS. I long ago lost the code, and the program.

But with the resurrection of my Aztec C compiler I decided that it
would be nice to recreate this program for a graphics demo, and of
course for any kids that you might be kicking around.

I first created a Apple II DOS 3.3 Version which is functinally
identical to this one. However I was asked to provide a ProDOS version
so with few changes I did the ProDOS version as well. Both versions
behave the same but the ProDOS version has some characteristics of its
own.

Differences between DOS 3.3 and ProDOS 8 Versions
-------------------------------------------------

The ProDOS version of ABINLOAD wants a text file called "PICLIST" for
the BSAVED images that are created by SILLY.SYSTEM. So when
SILLY.SYSTEM saves a BSaved Image it appends the image name to the
PICLIST on the SILLYPROGRAM data disk. If the BSaved Image is already
in the PICLIST a duplicate image name will not be added. If the PICLIST
does not exist it will be created.

The reason that ABINLOAD in DOS 3.3 doesn't want a PICLIST is because
it calls the DOS 3.3 Catalog routine directly to list disk contents.
Other than that ABINLOAD.PRG in DOS 3.3 is the same program as
ABINLOAD.SYSTEM in ProDOS 8.

Since ProDOS has a 15 character file name rather than the 30 character
filename in DOS 3.3 I have limited the automatic naming that is used by
SILLY.SYSTEM to 15 characters when saving. This is one difference
between the two versions that was unavoidable. The other thing to
remember is that when saving in ProDOS the volume name on the DATA
disks must be the same as the volume name on the program disk. The
ProDOS volume on the disks that I have provided is SILLYPROGRAM.

On the DOS 3.3 version, if a silly thing was called DRAGON.CARROT.ROBOT
the ProDOS equivalent is DRAGOCARROROBOT which is descriptive enough
considering the differences between the two systems.

Licence Agreement
-----------------

All my work is copyrighted and belongs to me. I wrote this program from
scratch. However this program is a derivative work in pretty much every
way.

That notwithstanding this is also a programming demo, albeit for an
obsolete computer and a vanished market.

I herewith grant you a non-exclusive and conditional licence to use
this program, source code and the output files it produces for whatever
use you deem fit provided you do not take credit for my work, and that
you leave the copyright notices intact in all of it.

If you augment or otherwise use my work you must always also include
your own personal copyright notice but it may never be a GNU public
licence or anything else that resembles fascism or totalitarianism and
world-domination or a commercial or educational licence either. You can
use my stuff commercially or for GNU with my conditions intact if they
let you (they should since copyright is for authors and the public and
I belong to both groups) but you must never copyright my work with any
company copyright whatsoever; just your own personal copyright like
mine and leave mine in place. That is the way copyright is intended to
work and that is the way that it will work with my stuff unless I
selectively decide otherwise.

In addition you must agree that I am not liable in any way shape or
form for any damage from the use of any of this in any way whatsoever.

If you do not agree with all of the aforementioned conditions of use
then remove all of this from your computer now.

Bill Buckels
bbuckels@mts.net
May 2008