home *** CD-ROM | disk | FTP | other *** search
-
- **************************************************
- * *
- * CITAS 1.0 (Convert ILBM To Assembler Source) *
- * *
- * ---- A Max Bithead production ---- *
- * *
- * 4/7/90 *
- * *
- **************************************************
-
- INTRO:
- -----
-
-
- Ok all you assembler gurus out there. This program's for you.
- CITAS takes an ILBM file and converts it to assembler source for use
- in your own programs. If you're familiar with NGI, CITAS does basically
- the same thing, only without the gadgets, and the output is assembly
- source instead of 'C'. It also has a few nice features that NGI doesn't
- have.
-
- In the beginning... I wrote this program in assembler, for assembler,
- because I wanted an easy way to draw graphics with a paint program and then
- use them in my own assembly programs via blitter control. Unfortunately,
- I can be somewhat of a perfectionist, and CITAS soon became a full featured
- utility which took one full month (to the day) to complete and release. I
- gotta say I'm pleased with the results, though. I gave CITAS only a single
- read buffer, and a single write buffer, but this baby smokes! What a nice
- surprise. It also uses only about 12K RAM while running.
-
- CITAS is my first official piece of software for the Amiga. Hope you
- like it!
-
- NOTE: CITAS will not waste memory by extracting a null plane. The
- resultant "depth" and "planes" labels will reflect what is actually used.
- Also, should you wish to stop CITAS while it's running, hit CTRL-C.
-
-
- SECTION 1, USAGE:
- ----------------
-
-
- Ok, nuff chatter already. At a CLI prompt (CITAS operates only from
- CLI), type:
-
-
- CITAS ILBM_file [result_file] [-c] [-m] [-x] [-s] [-o] [$nn] ["sfx"]
-
-
- The parameters in brackets are optional and may be supplied in any
- order with the exception of the result_file parameter which, if supplied,
- must follow the ILBM file name. All parameters are seperated by blanks.
- Type "CITAS" without any parameters for a brief description of its use.
-
-
- The parameters:
-
- result_file = The name of the output file. This output file name,
- minus any extension (.whatever), will be used in generating
- the labels for your data. This allows you to set up and
- assemble your code before actually using CITAS to create the
- data. It also allows you to modify the data without touching
- the linkable code.
-
- If no output file name is given, the input file name, minus
- any extension, will be used for the labels, and will be the
- name of the output file plus a ".asm" extension. This default
- file name will be placed in the current directory.
-
- -c = Inhibit generation of color table. By default, CITAS will
- include a color table in the output file.
-
- -m = Inhibit generation of image mask. By default, CITAS will
- include a mask plane in the output file. This mask is
- created by CITAS reguardless of whether or not the ILBM file
- contains a mask, and is simply a logical OR of all bit planes.
- It is meant to facilitate the use of the "cookie-cut" blitter
- minterm, which requires an image mask (at least that's how
- I use it).
-
- -x = Generate export definitions (XDEF) of labels for making
- linkable data.
-
- -s = Generate a "section" directive specifying chip RAM. This
- allows me to generate a hunk of data that will automatically
- load into chip RAM. Since the only assembler I am familiar
- with on the Amiga is Devpac, I'm not sure if other assemblers
- will appreciate this particular directive.
-
- -o = Allow an existing file to be overwritten by the output file.
- By default, CITAS will abort with an error if the output
- file already exists. This is more or less a safety feature.
-
- $nn = User supplied hex mask of planes to extract. This allows
- selection of only the bit planes you want extracted.
- Normally the resultant "planes" label will contain a mask
- of all planes that are not null (all zero). This may be
- further modified by entering your own mask. Bit numbers
- correspond to plane numbers (ie bit 0 corresponds to
- plane 0). Note, however, that if a plane specified by
- your mask is null, it will not be extracted. Thus if you
- entered a mask of $03, and plane 0 of the ILBM file was
- all zeros, the resultant "planes" label would be $02.
- Entering $ff will simply give you all non-zero planes.
-
- "sfx" = Any suffix needed to follow labels. I realize that some
- assemblers require a suffix on their labels, such as ":".
- This is for those weirdo assemblers.
-
-
- SECTION 2, LABELS:
- -----------------
-
-
- CITAS inserts several labels into the resultant assembler file. Some
- of these labels are equates (EQU) and others mark the start of different
- data segments. The first part of a label, as described earlier, is the
- output file name. The remainder of the label will be standard in every
- CITAS created file, and starts with an underscore character.
-
-
- The equates:
-
- _height = The height of the image in scan lines
- _width = The width of the image in words
- _depth = The depth of the image in planes
- _planes = Mask of which bit planes are used to display the image
- (so we don't have to waste memory with null planes, and
- to specify how to display the image planes in a bitmap)
-
- The labels:
-
- _color = The address of the 1st byte of the color table (if
- generated)
- _image = The address of the 1st byte of the 1st generated
- bit plane.
- _mask = The address of the 1st byte of the mask plane (if
- generated)
- _end = The address of one byte past the last byte in the
- generated file. This is normally just past the
- image mask, or just past the image data if no mask
- is generated.
-
-
- SECTION 3, THE DREADED SHAREWARE NOTICE:
- ---------------------------------------
-
-
- That's right, CITAS is copyright Max Bithead (a.k.a. John Enright), and
- and is considered shareware. It is not for sale, nor may it be included
- in any commercial product without my written permission. It is, however,
- an excellent tool for CREATING commercial products. Have at it!
-
- CITAS may be freely distributed as long as this document accompanies it.
- Finally, I claim no responsibility for any loss or penalty incurred by the
- use of this program.
-
- Whew! Ok, paranoia aside, I hope that you find this program useful
- in developing great Amiga software. I know it works wonders for me.
- Graph paper was absolutely out of the question! ha ha. There are no
- known bugs, and I haven't been able to crash my system under any
- circumstances by using it. It will not blow out a disk should it become
- become full (including the RAM: disk), etc., CITAS simply aborts with an
- error. I believe CITAS covers all possible errors, but time will tell.
-
- I'm asking a measly $10 for CITAS if you intend to use it. The cheapest
- development software you'll ever buy. Send any comments/suggestions/bug
- reports, and oh yea, payment (if you like it) to me at:
-
- John Enright
- 2955 Glenwood Dr. #301
- Boulder, Colorado, 80301 (USA)
- (303) 938-9490
-
- You may also send electronic mail to Max Bithead on any of these great
- BBS's:
-
- Reggae Land (303) 699-2671
- CD Players (303) 825-0419
- Arvada 68K (303) 424-9831
- BAUG (303) 494-4470
-
-
- -------------- * * --------------
- "
- \_/
-
-
- A special howdy to all friends from Mankato State University, in Minnesota!
-
-
-