home *** CD-ROM | disk | FTP | other *** search
-
-
-
-
-
-
- How to use "fishTank"
-
- * fishTank.doc *
- --************--
-
-
- This document explains how to use the fishTank program to
- simulate an aquarium. Additional instructions on how to expand
- the program's capabilities can be found in "makeFish.doc" and
- "makeTanks.doc".
-
-
- * about fishTank *
- --**************--
-
-
- "FishTank" is a program that simulates an aquarium. It was
- written entirely in object-oriented JForth (version 2.0). The
- intent of the program is to provide a visually pleasing and
- relatively accurate simulation of tropical fish in a home
- aquarium. While the behavior of tropical fish is very much more
- complex than the behavior displayed by my simulated fish, their
- survival characteristics are at least similar. "FishTank" could
- be used as a humane way of testing out various combinations of
- fish and water conditions by those planning (or just daydreaming
- about) a real aquarium.
- This program makes extensive use of the Amiga's animation
- system. The screen is a double-buffered HAM-mode screen, and the
- fish are all "AnimObs". Although I probably do not use the
- AnimObs to their fullest advantage, they do work in a reliable
- and consistent manner.
-
-
- * setting up *
- --**********--
-
-
- Before you do anything else, you will need to "de-arc" the
- program and all it's files. I will assume that you have used
- "zoo" on the archive already (after all you're reading this,
- aren't you ?), but you may have to repeat this step because
- "fishTank" uses a directory structure that needs to be duplicated
- exactly as it was when I zoo'ed the files together. This means
- you will have to use zoo with the "//" option. Try this:
- zoo x// fishTank.zoo
- Read the documentation that comes with zoo if you need help
- with this.
-
- *** IMPORTANT *** You will have to name the disk that the
- fishTank files are on "fish" or it will not run. If you are
- installing fishTank on a hard disk you will have to "assign
- fish:" to the partition and directory that you put fishTank on.
-
- Page 1
-
-
-
-
-
-
-
-
-
-
-
-
- How to use "fishTank"
-
-
- You can make as many copies of "fishTank" as you want, and
- give them away to anybody you choose to, by any means you have
- available to you, but please remember to keep all the files
- together (that includes this "read.me" file, and all the other
- documentation files), and to name the copies "fish". You are
- expressly forbidden to sell or otherwise make money from this
- program.
-
- I am also requesting that you complete the questionnaire I
- have included with this program (it's called "write.me"), and
- send it back to me either by ordinary (paper in an envelope)
- mail, or by CompuServe. You can find my address and CompuServe
- user ID number at the end of this document. This should only take
- a few minutes of your time, and I really would appreciate it very
- much.
-
-
- "FishTank" requires an Amiga (1000, 500, 2000, 2500 ,etc.)
- with Workbench 1.2 or 1.3 and one megabyte of memory. This is not
- to say that the program may not run on systems with less memory,
- however, I have experienced some problems running it in 512k, and
- have not tested it on systems with between 512k and one megabyte.
- I would recommend not multi-tasking fishTank with other programs
- that are graphics- or sound-intensive or otherwise use large
- amounts of chip memory.
-
- You will need the ARP library, version 1.3 to run this
- program. It is easy to install in your "libs" directory and is
- available anywhere you find public-domain Amiga software.
-
- You should also make sure you have the correct font for the
- menus I use. If you have "Times 15" on your Workbench you need
- not worry about doing this. If not, and if you have Workbench1.3,
- you will find this font on your "Extras" disk, so type the
- following line in from your CLI or Shell:
- ASSIGN fonts: "Extras 1.3:fonts"
- This will tell the system to look for all the fonts on the
- "Extras 1.3:" disk in its "fonts" directory. If you want to run
- another program that uses Workbench fonts after you are done with
- the fishTank you will need to type the following:
- ASSIGN fonts: sys:fonts
- This will get you back to the fonts on your Workbench disk.
- Don't be too upset if you don't have have this font or can't
- find a copy of it. The fishTank will still run normally without
- it, its menus will just not be as good looking.
-
-
- Now that you have a disk called "fish:" with all the
- fishTank files on it, you can run the program by either
-
- Page 2
-
-
-
-
-
-
-
-
-
-
-
-
- How to use "fishTank"
-
- double-clicking on the "goFish" icon, or typing "run goFish" in
- your CLI or Shell. I would recommend copying the program and all
- its files to a floppy-sized "rad:" disk if you have one
- available, as this will make the fishTank load much faster.
-
- You should now be looking at a screen with the word
- "LOADING" written at the top. Depending on weather you are
- working from a floppy or a ram disk, you could be looking at this
- for a while. You won't be able to 'drag' this screen, and I would
- strongly recommend not doing anything else on your Amiga until
- this screen goes away.
- Once the program is done loading, you will see three fish
- swimming around in an empty fishtank, with some numbers written
- on the title bar. If you press the right mouse button you will
- see the menus. I will now explain the menus and menu selections
- in the order in which they appear.
-
-
- SYSTEM
- ------------------
- The system menu contains items that affect the tank
- conditions, give general information, or stop the program. The
- items in this menu are as follow:
-
- Temperature
- ---------------
- This allows you to change the water temperature of the
- fishTank. When you select this option a requester will appear in
- the fishtank. Click on the long, black rectangle at the bottom of
- the requester and a blue button will appear. Move the button
- around by either clicking on the rectangle in the direction you
- want the temperature to change, or click on the button itself
- and drag it around in the rectangle. Once you have the button in
- the position you want it in, click on the word "Update". If you
- want the temperature to go back to what it was before you saw
- this requester, click on the word "Cancel". Most of the fish in
- this tank like the temperature to be about 26 degrees Celsius
- (which is about 79 degrees Fahrenheit). If the fish that were in
- the tank before you changed the temperature have suddenly
- disappeared, it means that the change in temperature has killed
- them. Check the "fishes" menu to see which fish you can put in
- the tank now.
-
- pH
- ------
- This lets you change the acidity of the water. The
- requester works in much the same manner as the "temperature"
- requester. Most fish like the pH to be pretty close to 7.0, but I
- have included fish that will thrive in more acidic water (a lower
- pH), and more alkaline water (a higher pH).
-
- Page 3
-
-
-
-
-
-
-
-
-
-
-
-
- How to use "fishTank"
-
-
- Hardness
- ------------
- The hardness option lets you change the amount of
- dissolved calcium in the water. Most water has at least some
- calcium in it. A hardness of about 200 ppm will support most of
- the fish I've included.
-
- About
- ---------
- This selection will tell you my name and address. If
- you have any questions, comments, or are interested in my source
- code, you can write to me at the address on this requester. Click
- on "Resume" to get rid of this requester.
-
- Bibliography
- ----------------
- If you select this you will see the name of a book
- about fish that I used as reference when writing this program. If
- you click on "next", the name of another book will appear. If you
- get tired of reading these entries click on "resume" to go back
- to your fish.
-
- Load Tank
- -------------
- This selection will let you load a new tank into the
- background. It is mainly for use with tanks that you have drawn
- yourself. For more about this read "makeTanks.doc". It is very
- important that the file you select from this file requester is a
- 320 by 200 HAM-mode IFF-picture file. Don't select any files that
- you are not sure of with this requester.
-
- Load Fish
- -------------
- You can use this menu selection to load in a fish that
- you have drawn yourself. If the water conditions are not correct
- for this fish it will still be added to the "fishes" menu. See
- "makeFish.doc" for complete details on making your own fish. It
- is absolutely vital that any file you select with the "load fish"
- file requester is a genuine ".ascii" fish file (one that meets
- all the specifications listed in "makeFish.doc"). If you try to
- load any other type of file with this requester the fishTank will
- "hang-up", causing you to have to reboot your machine. Once you
- have 20 fish on the "fishes" menu this menu selection will be
- "ghosted", and you will not be able to select it again.
-
- Quit
- --------
- If you chose this the fishTank will go away.
-
-
- Page 4
-
-
-
-
-
-
-
-
-
-
-
-
- How to use "fishTank"
-
-
- FISHES
- ------------------
-
- The "fishes" menu contains the names of all the fishes
- that are currently available to fishTank. Some of the fishes may
- be "ghosted" on this menu. This means that the water conditions
- are not conducive to the survival of this fish. If you change the
- water conditions maybe you will then be able to load this fish
- into your tank.
- If a fish's name has a big red dot to the left of it,
- it means that this fish is in the tank right now. To put a new
- fish in the tank, all you need to do is move the cursor over its
- name on the menu. To remove a fish from the tank, just select a
- fish whose name has a dot next to it.
- If you load your own fish (by selecting "Load Fish"
- from the "system" menu) its name will appear on this menu.
-
- When you start up the fishTank, the following fish will
- be on the "fishes" menu:
- platy
- zebra
- tetra
- discus
- snail
- barb
- oscar
- goldfish
- catfish
-
-
- TANK
- ------------------
-
- The tank menu will let you change the appearance of the
- tank. Not only will this make the background look different but
- it may affect the behavior of the fish. The "checked" item is the
- one which is currently selected. If you have loaded your own tank
- (with "Load Tank" from the "system" menu), the dot will be next
- to the selection that best describes your tank.
- Tank menu selections are:
- gravel only
- densely planted
- rocks, plants & driftwood
- rocks, no plants
-
-
- FOOD
- ------------------
-
-
- Page 5
-
-
-
-
-
-
-
-
-
-
-
-
- How to use "fishTank"
-
- The "food" menu lets you select the type of food your
- fish will receive. Different fish eat different things, and if
- you don't feed a fish something that it will eat it will die.
- These are your choices:
- flakes
- ----------
- "Flakes" basically refers to any dry,
- prepared food you would give to a fish. Most fish will eat
- flakes. As a general rule feeding your fish both worms and
- vegetables is nutritionally equivalent to feeding them flakes.
- worms
- ---------
- The "worms" selection lets you feed your fish
- small living creatures. Most commonly this would mean worms or
- brine shrimp. Feeding worms is a good idea for fish that you
- suspect are carnivorous.
- vegetables
- --------------
- Some fish are herbivorous, and feeding them
- vegetables will make them happy (or at least well-fed).
- guppies
- -----------
- "Guppies" refers to any small, inexpensive
- fish that you might want to feed to your fish. The thing to
- remember here is that a fish that normally feeds on other fish
- cannot distinguish between the fish you put in the tank for it to
- eat and the fish that you put in the tank that you don't want it
- to eat.
-
-
- * acknowledgments *
- --***************--
-
-
- Source code is available upon request, and requires JForth2.0
- (which is available from Delta Research). The code makes
- extensive use of JForth's "ODE" (Object-oriented Development
- Environment). I fear it may be of little use to people who are
- unfamiliar with either forth or object-oriented programming
- techniques.
- Before I forget, I would like to thank John Friedman for
- helping me on this project and getting me started in
- object-oriented programming. Without his help and support I
- probably never would have finished "fishTank". I would also like
- to thank Tom DeFanti, Dan Sandin, and Maxine Brown for their
- advice and for being so supportive of my ideas. I'd like to thank
- Irv Moy for the use of his Amiga 500 which convinced me that this
- program would run on systems other than my old 1000. I know this
- list is getting long, but I would also like to thank the folks at
- Delta Research for a very well thought out language, and all that
-
- Page 6
-
-
-
-
-
-
-
-
-
-
-
-
- How to use "fishTank"
-
- crisp, clear source code that showed me how the language really
- works, and I would like to thank all the helpful people on
- CompuServe's AmigaTech forum for helping me get the information I
- needed to use the ARP fileRequester.
-
-
- You can write to me at:
- Harriet Lurie
- Department of Art (Mail Code 036)
- University of Illinois at Chicago
- Box 4348
- Chicago, IL 60680
- U.S.A.
-
- or on CompuServe:
- Harriet Lurie
- 73760,3624
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Page 7
-
-
-
-
-
-
-