home *** CD-ROM | disk | FTP | other *** search
-
- Viewtek
- A freely distributable picture and animation viewer for the Amiga
- (Another fine UBTASITE product)
-
- Written by Thomas Krehbiel
-
- Copyright © 1992,1993 Thomas Krehbiel
- All Rights Reserved
-
- (Notice how the 'tek' in Viewtek is not capitalized in any way.)
-
- -----------------------------------------------------------------------------
-
- If you like Viewtek, and you are of the opinion that if a programmer
- writes *one* good program, then *all* programs by that same programmer
- must be good, then take a look at ImageFX, too. :)
-
- -----------------------------------------------------------------------------
-
- IMPORTANT, CRITICAL, VITAL-TO-NATIONAL-SECURITY NOTES
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Many people reported crashes playing hires overscan animations; this
- version does not seem to be doing this, however I was only able to duplicate
- this problem once under less-than-ideal circumstances with the previous
- version. I'm sure I can count on you people to let me know if it still
- crashes. :) Sorry for any inconvenience.
-
- Throughout this document you will find information on (most of) the
- new features, including datatypes, XPK support, and playing animations
- from hard drive. I've tried to mark new items with a "(1.05)" so you
- can search for them with a text editor.
-
- Also, see the important note under DISTRIBUTION below.
-
- (See the end of this document for changes since the previous version.)
-
-
- INTRODUCTION
- ~~~~~~~~~~~~
- Some of you may remember an ILBM/ANIM viewer program I wrote a while back
- called "TIV". Some would say that "Viewtek" is TIV 2.0, but I consider it a
- totally different and much improved program (no part of TIV is in Viewtek; it
- is all rewritten from scratch). (If you're using TIV now under 2.0 I
- *strongly* suggest you dump it in favor of Viewtek.)
-
- Viewtek was written with a few objectives in mind. I wanted a program
- that first and foremost was totally 2.0 (and 3.0) compatible. I wanted it to
- take advantage of 3.0 and the AGA chips wherever possible. I wanted it to
- show ANIMs as good or better than TIV did, with support for any and all
- display modes. I also wanted to be able to render decent (if not
- spectacular) representations of 24-bit ILBMs, GIFs, and JPEGs. And I wanted
- to keep the program internally modular enough to support 3rd party display
- devices fairly easily (I don't find this goal terribly useful anymore
- now that I have an A4000, but it's still there just in case).
-
- The result you have before you.
-
-
- FEATURES
- ~~~~~~~~
- o Requires Workbench 2.04 or greater.
- o Shows most ILBM's (including 24-bit ILBM's).
- o Shows most Compuserve GIF format images.
- o Shows most JFIF format JPEG images.
- o Shows most ANIM Op5/Op7 format animations, with support for
- different palettes for each frame.
- o Supports SHAM, CTBL, and PCHG images.
- o Full support of ECS/AGA display modes (ie. show 256 color GIF's
- directly, show 800x600xHAM animations, etc.).
- o Supports viewing contents of clipboard.
- o Iconifies to a Workbench AppIcon.
- o Can play animations directly from hard drive.
- o Supports the XPK compression package.
- o Includes a version written for GVP's Impact Vision 24, to support
- true 24-bit display.
- o And even includes a stripped-down version that doesn't show GIF's
- or JPEG's for those who don't need it.
-
-
- NOTE
- ~~~~
- I have no intention of supporting ANIM8 as long as there is an infinitely
- superior ANIM7 format around. You, the animation user, would be wise to
- petition those who would use ANIM8 to use ANIM7 instead. Unless you *want* a
- less efficient animation format. 'Nuff said.
-
- The included utility MakeAnim7 can be used to convert existing animations
- (5's or 8's) into the ANIM7 format.
-
- I have also included the documentation I received that describes the
- ANIM7 format. To the best of my knowledge, there are no limitations on
- its distribution.
-
-
- DISTRIBUTION
- ~~~~~~~~~~~~
- Viewtek is being distributed as Freeware. It may be freely distributed to
- any bulletin board service, network, or public domain collection, so long as
- no fees (beyond reasonable media fees) are charged for its distribution (that
- is, no fees are charged for Viewtek). I'm not asking for donations on this
- one, but feel free to drop me a note (preferably e-mail) or something if you
- want.
-
- Note, however, that Viewtek is NOT public domain. The author retains all
- rights to the program.
-
- IMPORTANT: If you want to include Viewtek with any sort of commercial
- distribution, you are free to do so as long as the following files are
- included somewhere in your distribution (and not modified):
-
- VT
- VT.info
- VT.doc
- VT.doc.info
-
- It is not necessary that you contact me to get my permission; I hereby
- grant permission to any and all who wish to use Viewtek as a picture and/or
- animation viewer for any commercial or non-commercial purpose. See another
- important note under AUTHOR below if Viewtek doesn't quite meet your needs
- for a picture viewer.
-
-
- OOPS!
- ~~~~~
- Older versions of the Viewtek documentation left out a very important
- statement:
-
- This software is based in part on the work of the Independant JPEG Group.
-
- I'd just like to apologize to the Independant JPEG Group for not having
- included this, they deserve full credit for their work in bringing this
- popular compression format to the computer world at large.
-
-
- INSTALLATION
- ~~~~~~~~~~~~
- Viewtek requires no special libraries or fonts or anything to run. Simply
- drag the Viewtek icon to wherever you wish to install it. It may be run from
- a Shell, Workbench, or even your favorite dirutil.
-
- The IV-24 version of Viewtek, however, requires that you have a copy of
- GVP's "fye.library" in your LIBS: directory. (If you have an IV-24, chances
- are pretty good you have this installed already.)
-
-
-
- DISABILITIES
- ~~~~~~~~~~~~
- Okay, what *doesn't* it do?
-
- - No color cycling (yet?). Why? I have exactly one picture that
- color cycles out of hundreds of images and I never look at it
- anyway, so it wasn't a high priority.
-
- - Some CTBL images may not quite show properly, more than likely
- due to more palette changes per line than can be shown properly
- with the copper. Same may be true for SHAM pictures. I probably
- will not fix this because I don't really see much value in these
- types of pictures anyway. It may help to force the images
- to be shown in NTSC/PAL on an A4000, or move the picture
- to the right (with control arrow keys). With better displays
- becoming more widely available, this is also not a priority
- to work on.
-
- - Does not (yet?) support a non-existant first-frame BODY as
- specified for ANIM7 animations. (Personally, I think this is
- a bad thing anyway.)
-
- - Known incompatibility: VT doesn't interact well with the Commodore
- mouse blanker supplied with 3.0 when showing animations. When
- you move the mouse after it has been blanked (eg. after hitting some
- keys during the animation), the screen goes black.
-
-
-
- DATATYPES AND YOU (1.05)
- ~~~~~~~~~~~~~~~~~~~~~~~~
- Viewtek 1.05 makes use of 3.0's datatypes.library. This means that when
- VT runs across a file it is not capable of reading, it then asks datatypes
- to try and read the file. If it can, then VT will still be able to show the
- file.
-
- If you want VT to use datatypes exclusively (ie. not try to identify or
- decode the files within VT at all), use the "DT" option on the command line.
- This lets you, for example, use the GIF datatype instead of VT's own GIF
- decoding.
-
- VT has been tested successfully with the GIF and PCX datatypes. (These
- are the only ones I have.)
-
- NOTE: Processing files via. datatypes works a little differently than
- things normally work in VT... there is no way to abort reading a file, and
- the file is read entirely into memory before even opening a display screen.
-
-
-
- SHOWING COMPRESSED FILES (1.05)
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Viewtek 1.05 supports the XPK compression package (a nice package, BTW),
- allowing it to read any kind of encoding scheme that XPK itself supports.
-
- In order to continue using iffparse.library and in generally keep VT the
- way it is, it works a little strangely; the encoded file is decompressed to
- a temporary file in T:, which is then shown normally by Viewtek. Obviously,
- this could impose some memory problems if your T: directory happens to be in
- RAM:.
-
- You'll have to get the XPK package elsewhere; consult a BBS near you (I
- got it from BIX).
-
-
- PLAYING ANIMATIONS FROM DISK (1.05)
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Viewtek 1.05 can play animations directly from disk... sort of. How well
- it works depends on many factors:
-
- - The speed of your computer.
- - The speed of your hard drive and/or controller.
- - The complexity/resolution of the animation.
- - The chosen playback rate.
- - The chosen buffer size.
- - How much you're willing to fiddle with parameters.
-
- Here's an overview of how it works: Playback from disk is done with two
- tasks; one task is responsible for reading data from disk, the other task is
- responsible for decoding and displaying the frames. Basically, while the
- disk reader is getting data from disk, the playback task is playing the
- frames from the previous batch.
-
- Buffer Size. The buffer size is very important to the performance of the
- playback. The idea is to make the buffer size such that a new batch of
- frames can be read from disk faster than VT can play the frames from the
- previous batch. If the buffer size is too small, VT will end up stuttering
- during playback because it has to wait for the disk reader to catch up to
- the playback task. However, if the buffer size is too large, a lot of
- wasted time will be spent reading from the hard drive (on my system, reading
- from the drive for extended periods of time also causes the animations to
- stutter - not sure if this is just my own HD or a universal problem tho).
-
- (NOTE: Animations with large deltas will require larger buffer sizes.
- Viewtek will inform if you need to increase the buffer size (and give you
- an approxiamate target size).)
-
- Playback Rate. A good way to smooth out the playback is to slow down the
- playback rate. This will give the disk reader task more time to read from
- the disk.
-
- Animation Complexity. Let me be blunt: If you think a 736x480, HAM8
- animation of a camera pan is going to animate well, you're crazy. The
- Amiga's good, but it ain't *that* good. :)
-
- Computer Speed. Obviously, the faster your computer, the better the
- results are going to be. I personally haven't tried VT on a system equipped
- with less than a 68040 for quite some time, so I can't really comment on
- whether it will even work at all on a 68000.
-
- Hard Drive Speed. I've tried HD playback on two systems: One is an
- A4000 with the internal IDE drive, along with a GVP SCSI controller and a
- Maxtor drive. The other is an A2000 with a GVP G-Force 040 (SCSI controller
- built-in) and a couple Quantum drives. (Funny how I have all this GVP
- stuff, ain't it? :) The results I get are generally pretty good, although
- stuttering animations definitely do happen. Fiddling with the playback rate
- and buffer size usually helps in all but the most severe cases though.
-
- In short, if you have a 1MB A500 and want to genlock your 40MB HAM
- interlace animations onto videotape for production work, you'll be
- disappointed. This feature is strictly a novelty at this point.
-
- CAVEATS: The Up Arrow does not work when playing anims from disk, and
- the animations are always played in "continuous" mode; ie. if the anim
- doesn't have loop frames it's going to look pretty strange.
-
-
- COMMAND LINE OPTIONS
- ~~~~~~~~~~~~~~~~~~~~
-
- Note that all options now have (hopefully) convenient two-letter
- abbreviations in case you don't like to do a lot of typing. (1.05)
-
-
- FILE HANDLING OPTIONS
- ~~~~~~~~~~~~~~~~~~~~~
-
- Files/M
-
- One or more files, directories, or patterns. If you give VT a
- directory, all files in that directory will be shown (in no
- special order). Standard AmigaDOS wildcards are supported.
- Basically, anything that is not a recognizable option is assumed
- to be a file spec.
-
- AL=All/S
-
- Tells VT to recursively enter subdirectories.
-
- CL=Clip/S
-
- Read image from clipboard.
-
- DE=Delay/K/N
-
- Number of seconds to show each picture or animation before
- automatically proceeding to the next one. The timer doesn't
- start until *after* the picture or animation has been loaded.
-
- DT=DataTypes/S (1.05)
-
- Force VT to use Datatypes to identify and display files (normally
- datatypes is the last thing checked before giving up on a file).
- This lets you, for example, use a datatypes GIF converter instead
- of the one built into VT.
-
- FO=Forever/S
-
- Repeat showing the list of files given on the command line
- forever and ever amen (and/or until cancelled).
-
- IL=ILBM/S
-
- Force VT to assume all files are ILBM pictures. In case you only
- want to show the first frame of an animation and not the whole
- thing.
-
- RE=Repeat/K/N
-
- Repeat showing the list of files given on the command line
- the number of times specified (or until cancelled manually).
-
- SA=Save/K
-
- Save the resulting image that VT renders to a displayable
- ILBM file. Makes VT into a (*very*) simple file conversion
- utility. (NOTE: I have no plans to turn VT into a killer
- awesome amazing wonderful convert-anything-to-everything-
- else file converter.)
-
- UT=Unit/K/N
-
- Specify clipboard unit when showing contents of clipboard.
-
-
- ANIMATION OPTIONS
- ~~~~~~~~~~~~~~~~~
-
- BU=BufSize/K/N (1.05)
-
- Sets the buffer size when playing animations directly from
- hard drive, in KB (ie. BUFSIZE 128 == 128KB). VT actually
- allocates 3 of these buffers, so don't get too crazy. Also
- see the notes on playing animations from disk elsewhere in
- this document.
-
- CO=Cont/S
-
- Force animations to be considered "continuous". My definition
- of a "continuous" animation is one that has those two looping
- frames stuck on the end (like the kind that DPaint always
- creates). Normally, VT will only consider an animation to be
- continuous if a DPAN chunk is found.
-
- DI=Disk/S (1.05)
-
- Force animations to be played directly from disk.
-
- FP=FPS/K/N
-
- Specify animation playback rate in frames per second.
-
- LP=Loop/K/N
-
- Number of times to loop an animation before continuing on with
- the next file. Normally, VT will loop until you tell it to
- stop.
-
- MA=MaxFrames/K/N (1.05)
-
- Maximum number of frames to read from an animation. This is
- handy if you don't quite have enough memory to load an entire
- animation, or for some reason the anim is corrupted beyond
- repair halfway through; VT will only read in the number of
- frames you specify before going on to show it.
-
- ND=NoDisk/S (1.05)
-
- Never show animations from disk. Normally, VT will try to play
- an animation from disk if it sees you don't have enough memory
- to play the animation from RAM.
-
- SP=Speed/K/N
-
- Specify animation playback rate in jiffies per frame (one
- jiffy is 1/60th of a second).
-
- PA=Paused/S
-
- Begin animations in paused mode; you must hit the right or
- down arrow to actually begin playing the animation.
-
-
- DISPLAY MODE OPTIONS
- ~~~~~~~~~~~~~~~~~~~~
-
- DF=Default/S
-
- Force pictures and animations to use the DEFAULT monitor id.
- This is handy when you have mode promotion on, but a picture
- you are showing is hard-coded as NTSC... this option forces
- the picture to use the default monitor id, which in turn
- causes it to be mode promoted.
-
- HI=Hires/S
-
- Force pictures and animations into HIRES. Use with caution;
- some viewmode combinations are not allowed on non-AGA machines.
-
- LA=Lace/S
-
- Force pictures and animations into INTERLACE.
-
- LO=Lores/S
-
- Force pictures and animations into LORES.
-
- NL=NoLace/S
-
- Force pictures and animations into NON-INTERLACE.
-
- NS=NoScroll/S
-
- Disable autoscrolling large pictures. Why? Beats me.
-
- NT=NTSC/S
-
- Force pictures and animations to use the NTSC monitor id.
-
- PL=PAL/S
-
- Force pictures and animations to use the PAL monitor id.
-
- S7=Super72/S
-
- Force pictures and animations to use the SUPER72 monitor id.
- Generally only useful on AGA machines.
-
- SC=ScreenMode/K
-
- Specify the name of any available screen mode to show pictures
- and animations in. The name must be exact, as shown in the
- preferences ScreenMode program (be sure to put quotes around
- the name if it has spaces in it). Case is not sensitive.
-
- SU=SuperHires/S
-
- Force pictures and animations into SUPERHIRES mode.
-
- UN=Underscan/S (1.05)
-
- Disables overscan for any pictures or animations that VT shows,
- this lets you see all the way to the edges of super bitmap
- pictures.
-
-
- MISCELLANEOUS OPTIONS
- ~~~~~~~~~~~~~~~~~~~~~
-
- HD=Hide/S
-
- Hide images while they are being decoded. Normally, VT
- shows you the images while they are being read; this option
- causes VT to only show you the images when they are completely
- decoded. You probably want to set this for slideshow-style
- presentations.
-
- IC=Iconify/S
-
- Start VT in iconified mode. When iconified, a little AppIcon
- appears on your Workbench, where you can drag image icons to
- view them. Double-clicking the icon gives you options for
- quitting or showing files interactively.
-
- IN=Info/S (1.05)
-
- Only display information about files, do not actually display them.
-
- LM=LowMem/S
-
- Disable double-buffering of pictures. Handy if you don't have
- a lot of chip memory.
-
- NB=NoBusy/S
-
- Do not show a busy pointer at any time.
-
- PO=Pointer/S (1.05)
-
- Do not blank the mouse pointer when showing pictures.
-
- QU=Quiet/S
-
- Do not print any information to the shell.
-
-
-
-
- EXAMPLES
- ~~~~~~~~
- 1> VT picdir
-
- Show all files in the "picdir" directory.
-
- 1> VT picdir ALL
-
- Show all files in "picdir", including subdirectories.
-
- 1> VT picdir SUPER72 SUPERHIRES LACE
-
- Show all files in "picdir", forcing them into Super72 800x600 mode.
-
- 1> VT myjpeg SAVE ram:mypic
-
- Show "myjpeg", and save the resulting screen to "ram:mypic".
-
- 1> VT picdir HIDE
-
- Show all files in "picdir", but don't show each picture until it is
- fully read into memory.
-
- 1> VT picdir FOREVER DELAY 2
-
- Show each file in "picdir" for 2 seconds, repeat forever.
-
- 1> VT picdir SCREENMODE "MULTISCAN:Productivity"
-
- Show all files in "picdir", forcing each one into Productivity mode.
-
-
-
- USEAGE FROM WORKBENCH
- ~~~~~~~~~~~~~~~~~~~~~
- All of the options above may be used (except Files/M) as a tool type.
- (Not the abbreviated form, the spelled out form.) The following additional
- tool type may be set:
-
- DEFAULTDIR Choose default directory where file requester opens.
-
-
-
- VIEWING COMMANDS
- ~~~~~~~~~~~~~~~~
- ESCAPE Abort viewing immediately.
-
- BACKSPACE Abort viewing current directory (when using 'ALL').
-
- LMB/RMB Go to next picture.
-
- SPACE Will hold on the current picture, when using DELAY.
-
- S Will save the currently displayed picture as an
- ILBM (you will be asked for an output filename).
- This only works on pictures; not animations (yeah,
- I know it would be nice to save frames from anims,
- but gimme a break here... I've only got 2 hands. :)
-
- CTRL+Arrows Move image/anim around on the display (overscan position).
-
- Up Arrow (Anim Only) Return to beginning of the animation.
-
- Right Arrow (Anim Only) Pause/single step animation.
-
- Down Arrow (Anim Only) Resume playing animation after paused.
-
- C (Anim Only) Toggle "continuous" mode.
-
- F1 (Anim Only) Play animation as fast as possible.
- F2 (Anim Only) Play animation at 60fps.
- F3 (Anim Only) Play animation at 30fps.
- F4 (Anim Only) Play animation at 24fps.
- F5 (Anim Only) Play animation at 15fps.
- F6 (Anim Only) Play animation at 12fps.
- F7 (Anim Only) Play animation at 10fps.
- F8 (Anim Only) Play animation at 5fps.
- F9 (Anim Only) Play animation at 1fps.
- F10 (Anim Only) Play animation at rate specified in ANIM file.
-
-
- SHAMELESS PLUG
- ~~~~~~~~~~~~~~
- Yes, it's true, ImageFX is the greatest image processing software
- ever to walk the face of the earth. Get it. Don't make me beg... :)
-
-
- THE AUTHOR
- ~~~~~~~~~~
- I can be reached on BIX as "tkrehbiel" if you want to email me about
- something (like, say, bugs). BIX is now connected to the Internet, so my
- Internet address is "tkrehbiel@bix.com".
-
- You can also reach me on the Late Nite BBS (804-262-9944) as Tom Krehbiel
- (user #13).
-
- As a last resort my U.S. Mail address is:
-
- Thomas Krehbiel
- 10747 Surry Road
- Chester, VA 23831
-
- WARNING: I generally don't answer paper mail very fast (if at all), and
- I am also pretty slow responding to email these days.
-
- NOTE: I am currently not available for any sort of programming work,
- including (but not limited to :) custom versions of Viewtek.
-
-
-
- REVISION HISTORY
- ~~~~~~~~~~~~~~~~
- 1.05 6/17/93 MakeAnim7 now copies over unknown chunk types;
- this preserves DPaint looping/speed info.
- Shows 640x480 GIFs in Productivity mode under AGA.
- Removed V39 gfx double buffering, 'cause palette
- changing didn't seem to work.
- Added anim playing from disk... of sorts.
- Added 'S' to save picture being displayed.
- Now supports XPK to read crunched files.
- Now supports datatypes to read unknown file types.
- New two-letter abbreviations for all options.
- Added UNDERSCAN, INFO, and POINTER options.
- Revised this documentation a bit.
-
- 1.04a 3/14/93 Fixed DEFAULTDIR tool type to actually work.
- SAVE works on ILBM's without memory gurus.
- *Doesn't* call BestModeID under < V39 anymore... :)
-
- 1.04 3/9/93 Supports ANIM7 (short & longword) animations.
- Supports ANIM brushes.
- Now uses the latest version of Tom Lane's JPEG code.
- Fixed SAVE option (CMAP specifically) under < V39.
- Added SUPER72, SUPERHIRES, and SCREENMODE keywords.
- Changed the way it picks JPEG viewmodes.
- Tells you how many frames are in the anims it plays.
- Now uses new graphics double buffering under V39.
- Added PAUSED option for animations.
- Added a FPS option to set frame rate in fps.
-
- 1.03b 1/10/93 Now allows showing directories via. file requester.
- Shows >= 800x600 GIF's in Super72 mode if available.
- More robust error messages on display open fail.
- Now uses BestModeID to show undisplayable modes.
- Doesn't close screen on first click of LMB after inactivity.
-
- 1.03a 12/15/92 Fixed unbelievably stupid bug in AppIcon stuff.
-
-
- 1.03 12/10/92 Fixed hanging locks when used as AppIcon.
- Added LORES,NOLACE,ILBM options.
- Always sets autoscroll now, and still centers 'em.
- Added NOSCROLL option to disable autoscroll.
- Added SAVE option to save rendered pictures.
- Handles animation playback a bit better.
-
- 1.02a 11/25/92 More accurate overscan calculation. (Maybe not)
-
- 1.02 11/24/92 Stock version renders to HAM8 mode if available.
- Oops, fixed so you can select just one file from ASL freq.
- Fixed problem with VT's abort "sticking".
- Fixed problems with centering AGA animations.
- Added NTSC/PAL/DEFAULT options.
- Now examines DPAN chunks for frame rates.
- Fixed problems with 'odd' sized anims on AGA.
- Defers allocating ASL struct until needed.
- More generalized copper stuff.
-
- 1.01 11/10/92 Now more intelligent about picking JPEG viewmodes.
- Handles ANIMs with masking planes.
- Now able to respect ANIM's reltime by pressing F10.
- Added busy pointer while loading images.
-
- 1.00 11/4/92 Initial version.
-
-