DCTV Automated Animation Maker Copyright 1991 by Daniel J. McCoy August 26, 1991 Introduction Amiga users have always enjoyed being able to produce animations in the native resolutions. Up to now, the HAM format has been the best you could get and had certain limitations and quirks. Today, new output devices permit higher resolutions and more colors available than the native Amiga display modes. One such product is DCTV by Digital Creations. DCTV is a display device that allows one to display to any composite output device with the resolution and color capabilities as that of NTSC. Also, since DCTV's file format is a modified IFF type, you can use any of the available programs to view and construct both still images and animations in NTSC color! Although animations are possible, it hasn't been easy. Most of the available products that save out to the new IFF 24 bit file format and don't directly support DCTV's own format (Scenery Animator by Natural Graphics is an exception). You must first convert the IFF24 or Impulse's RGB8 format to DCTV's format using either the full DCTV software or their IFFTODCTV CLI based conversion software. When having a program generate multiple frames for an animation, these IFF24 or RGB8 files can consume large amounts of file storage space. Once the program is done generating, THEN you can convert the multitudes of frames and compile an animation using Deluxe Paint by Electronic Arts or the programs available publicly like MakeAnim. Not only can this take a lot of time, it is also tedious! Several people, myself included, have written either ARexx scripts or AmigaDOS scripts that help automate this task. These scripts can wait for a frame to be generated and convert them to DCTV's format once completed and then generate the animation for you once the last frame is converted. This allows you to render to RAM: (saving lots of file space and speeding up the rendering time) and save only the DCTV images. ARexx and AmigaDOS scripts are fine for those comfortable with the CLI environment. Others wish for a user interface of some sort. Enter DAAM. DAAM was constructed using CanDo 1.5 by INNovatronics. Without having any Amiga programming knowledge whatsoever, you can make complete applications that are freely distributable and even sellable! One drawback is that you either need the CanDo.library or you have CanDo tack on this library to your application, make it at least 128K in size. Since most people dealing with animations already have many megabytes of memory, this shouldn't cause grief (and if it does, either buy more memory, wait for me to write this in C or by all means, do it yourself!). DAAM will wait for Imagine (Impulse), Animation JourneyMan (Hash Interprises), LightWave (NewTek) or VistaPro (Virtual Reality Lab) to generate frames, converting them to DCTV frames using IFFTODCTV, storing the DCTV frames where you want them, either moving or deleting the original 24 bit file, and even creates an animation once the last frame is converted using MakeAnim. You also have the capability of having DAAM wait for one specific frame over and over again to try out settings in the rendering program. The picture is displayed using a IFF view of your choice (as long as it's named SHOW) once completed and the wait continues until you abort it. DAAM isn't limited to waiting for Imagine, JourneyMan, LightWave and VistaPro. You could have files you need to convert already complete. Tell DAAM where they are and what the source program is and let it convert and construct an ANIM for you. Requirements * Any Amiga with the requirements the rendering program. DAAM works under Kickstart 1.3 and 2.0. * You need the following in the directory DAAM is in or in your C: directory. * IFFTODCTV from Digital Creations. * MakeAnim by Right Answers, Inc. * ANY IFF viewing program as long as it is named SHOW in the directory. * CanDo.library in your Libs: directory OR use DAAM-FULL that has the CanDo.library embedded in the application. Installing DAAM To install DAAM, all you need to do is drag either the drawer icon to the directory you would like it in or drag the application where you want it. There are two programs, one named DAAM and the other DAAM-Full. If you own CanDo V1.5 and the CanDo.library is in your LIBS: directory, use DAAM. This will allow you to run more than one CanDo application without consuming lots of memory. Those who don't have the CanDo.library, use DAAM-Full. Selecting the wrong one will give you a warning that the CanDo.library doesn't exist. Don't forget to have IFFTODCTV, MakeAnim, and a program called SHOW in your C: directory or in the directory with DAAM. Using DAAM To use DAAM, simply click on the icon or call it from CLI. A new screen will open up. You will see three separate sections. I'll start with the section in the top left hand corner of the screen. -> Source Program The button to the right of this text is the program you are using to generate frames. Imagine, Animation JourneyMan, LightWave and VistaPro are supported. Simply click on the Source Program button to cycle through the three different options. You will notice other fields may change when you cycle through. -> Reprocessing? This button allows you to have DAAM reprocess previously converted DCTV frames. Say you built an animation in four bit planes and you aren't satisfied with the playback speed. Selecting the source program you used to generate the frames in the first place, toggling this button ON, selecting three bit planes and selecting DO IT! will reconvert all previously generated DCTV frames to three bit planes. This button will also append ".dctv" to the Extension field. DAAM doesn't rename the original DCTV file so IFFTODCTV will tag another ".dctv" to the end of the filename. Perhaps in the future, I'll add renaming... -> Input Path Input Path is the path and base file name your source program is saving the frames to. Clicking on the button pulls out a CanDo file requestor that allows you to specify this path and base file name. Clicking on the text field to the right of this button allows you to bypass the file requestor and enter what you want. One note here. Imagine saves out frames with a base file name of "pic." with "0001" appended to indicate frame one. You don't have to enter in "pic." and DAAM will filter out any file name entry. It will only accept the path. LightWave and VistaPro allow a base file name to be entered. You will need to enter this base file name in either the file requestor or text field. Don't include the frame numbers or DAAM will look for the wrong file name. -> Output Path This is the path where IFFTODCTV will save the DCTV files to. Clock on the button for a file requestor or enter the path in the text field to the right of the button. -> Move Path This path entry is used when the "Move Frames When Done" option is selected. Your original 24 bit frames will be moved to the path specified after conversion allowing you to render to RAM: and save the 24 bit frame where you want. Press the Move Path button for the file requestor or use the text field to the right. -> Anim Path This path and file name entry is used to tell MakeAnim where to put the animation you can have DAAM generate. Just as the above path options, press the button for a file requestor or use the text field on the right. Remember to specify a file name. -> Extension This field is for programming some sort of filename and extension for DAAM to use. Notice that when you cycle through the source program settings, the text in this field changes. Imagine = pic.%4 JourneyMan = .%1 LightWave = %3 VistaPro = .%3 The number after the "%" instructs DAAM to insert the file count with the value specifying the frame count length padded with zeros if greater than one. For example. For Imagine, DAAM would start waiting for "pic.0001". Changing the extension to "pic.%3.blah" would cause DAAM to start waiting for "pic.001.blah". Notice that when Reprocessing? is toggled on, ".dctv" gets appended to whatever is in this field. -> Start This numeric entry is the start frame to have DAAM wait for. This should be the same start frame as the program you are using to render the frames. -> End This numeric entry is the end from that DAAM will stop waiting at. This should be the same as the end frame as the program you are using or whatever you want. It can't be less than Start. -> Step This numeric entry is use to indicate the step rate the program is using. A value of 1 means that frames are created in increments of 1. By specifying 2, your program may start from frame 1 and go to frame 17 and skip the even frames. Now for the box on the upper right corner. These are the parameters used for IFFTODCTV. -> Screen (Presets) Selecting this button cycles through preset heights and widths. Pressing either SHIFT button while clicking on the preset cycle gadget allows you to cycle backwards through the settings. The presets are: HiRes Lace OScan = 704 x 482 (High res, interlace, normal overscan) HiRes Lace SOscan = 736 x 482 (High res, interlace, severe overscan) HiRes Lace HOScan = 704 x 400 (High res, interlace, horizontal overscan) HiRes Lace SHOScan = 736 x 400 (High res, lace, severe horiz overscan) HiRes Lace VOScan = 640 x 482 (High res, interlace, vertical overscan) HiRes Lace = 640 x 400 (High res, interlace) HiRes OScan = 704 x 241 (High res, normal overscan) HiRes SOScan = 736 x 241 (High res, severe overscan) HiRes HOScan = 704 x 200 (High res, horizontal overscan) HiRes SHOScan = 736 x 200 (High res, severe horizontal overscan) HiRes VOScan = 640 x 241 (High res, vertical overscan) HiRes = 640 x 200 (High res) The Width and Height fields and Interlace button are set when cycling through the presets. -> Width This numeric entry specifies the screen width IFFTODCTV will save the file to. Limits are : 640 to 736. Once a value is entered, it is compared against the presets. A match in both width and height will set the preset text. No match results in "Custom" being displayed. -> Height This numeric entry specified the screen height IFFTODCTV will save the file to. Limits are 200 to 241 with the Interlace turned off, 400 to 482 with Interlace turned on. Like Width above, a value entered here is compared against the presets. If a match is found, the preset text will be set to appropriate preset text. No match results in "Custom" being displayed. -> Interlace This toggle button is used to toggle interlace on and off. The Preset text will change if required. -> Bit Planes IFFTODCTV can save the DCTV frame in either 3 bit planes or 4. The defaults is 4. -> Filter This tells the IFFTODCTV program to filter out bad color values that don't look right under NTSC. The default is ON. -> Center This tells the IFFTODCTV program to center the frames instead of aligning the frame to the top left corner. The default is OFF. Now for the third and last box... -> Delete frames when done? With this box selected, DAAM will delete the original frame once the conversion is done. Of course, when this box isn't selected, the original files are left intact. -> Move frames when done? With this box selected, DAAM will move the original frame to the path specified with the Move Path button or text field. This allows you to render to RAM:, saving time, and then moving the original frame for later use. -> Continuous Start frame show? With this box selected, DAAM will convert the original frame and then call SHOW to display the DCTV image once the Start frame is complete. This allows you to have DAAM sit in the background waiting for the Start frame so you can try out settings in the rendering program. Once the frame is rendered, DAAM has the frame converted and shown and the waiting process begun again so you can continue to fine tune settings. Note that either Delete frames or Move frames MUST be selected in order to use this option. If this option is selected and you select both Delete and Move frame is deselected, this option will automatically be deselected. -> Do NOT convert when done? If you don't want to convert the 24 bit files just yet, select this option. This allows you to render to RAM and move the files elsewhere without converting the frames to DCTV format. -> Generate ANIM when done? If you want DAAM to call MakeAnim once the last frame is complete, select this option. Do have a path and file name specified as mentioned above (see: Anim Path). -> Looping ANIM? This instructs MakeAnim to create a looping animation by tagging the first two frames to the end of the animation. -> Delete DCTV frames? Selecting this instructs DAAM to delete all DCTV frames once the animation generation process is complete leaving only the animation. At the bottom of the window, the following buttons exist. -> DO IT! Pressing this instructs DAAM to start the waiting/conversion process. A requester will open up giving you the current status and a gadget at the button to abort back to the main window. -> Save Settings Pressing this instructs DAAM to save all settings to S:DAAM.Config. Use this to save your default settings and every time you load DAAM, the settings will be loaded in. -> Load Settings Pressing this has DAAM re-load the tool type settings in S:DAAM.Config. Use this when you've gotten lost in the settings and wish to get back to your defaults. -> About Selecting this gives you the information previously written to the bottom of the window. -> Quit Does just what it says. Press this and bye-bye DAAM. That's it! Use this and sit back while creating animations! DAAM is shareware and may be distributed anywhere. I reserve all rights to this program and can't be held liable for its use. If you wish to distribute this with commercial products, please contact me prior to doing so. Send whatever you think this deserves (be it money, demo anims on tape or disk, or even programs you have found useful to the address below. I think that's fair. Daniel McCoy 13324 Aetna Street Van Nuys, CA 91401 I can also be reached on the following systems: CompuServe : 73617,2626 Bix : dmccoy Portal : Daniel J McCoy and I frequently call the following BBS: Mike's Video House : (818) 240-1593 or (818) 240-5769 Those with DCTVs and a modem and don't mind the toll call, call The Summit at 1-916-649-3288, a hangout for many other DCTV owners with tons of worthwhile messages and files. Also, those with HST compatible modems can call at higher baud rates. All products are registered with their respective company. My thanks to those at KJ Computers (Greg, Jim, Mike, Pat and Tim) for putting up with me and for their ideas. Some of the ideas aren't implemented yet but perhaps in the future. Now that I'm happy with what this does, it's time for me to render too. Last, thanks to Digital Creations for putting the wonderful black box on the market! ------------------------------------------------------------------------- Software Changes: 0.20 - Initial release to the public. 0.21 - Changes have been made here and there... * You no longer have to append a "/" when entering a path using the text field instead of the requestor. * Screen to back (BACK) button in the DO IT! requestor. * Change made to how the status in the DO IT! requestor is displayed. Most of my debugging was under 2.0. Under 2.0, the screen refreshing is quicker than under 1.3. Once I saw the speed 1.3 (or lack thereof) was displaying the text, I HAD to change it! * Some cleanup and removal of unneeded routines in CanDo. * "SYS:C/" was added to DOS function calls DELETE and COPY just in case the path to C: is not defined. * When doing VistaPro conversions, the Status window wouldn't display that it was at frame 0. Fixed... 0.22 - * DAAM no longer opens up on a custom screen. It'll open up on WorkBench instead. Not everyone has either 2.0 or utilities that permit screen flipping with the Right-Amiga-M combination. When DAAM is waiting and you select the BACK button, DAAM WOULD disappear however you may not have been able to get back to DAAM's screen! This shouldn't happen any more. Simply click the backgadget as you would any normal window. DAAM will determine which Intuition version you are running and attempt to make the embossed interface look correctly under 1.3 though the gadgets won't look that great under 1.3 since I can't control those colors like text colors. * DCTV Default button now replaced with a rollo gadget permitting the user to flip between presets. Two other gadgets to the right of the rollo gadget cycle down or up through the presets. A change in the Width or Height fields or the Interlace button may change the preset text in the rollo button if the values match a preset or "Custom" will be displayed. 0.30 - * DAAM now opens up in a slightly smaller window for those not in interlace mode on their WorkBench. * New button "About" will display program information. * It was noted by a friend that the cycle gadgets I had weren't really conforming to the new user interface style standards. First, there was no conformation that a user pressed the gadget. Second, pressing a shift key in addition to pressing the mouse button should cycle backwards through the selections. This version addresses these two things. * Through the use to tool type strings in the icons, it is now possible to define your own default settings. Settings for everything but the Start, End and Skip fields are possible. Two new buttons are added that allow you to save or load in settings. Selecting "Save Settings" will set all the tool types for you. "Load Settings" is provided to get you back to your favorite settings. Also, since the icon is modified, I moved DAAM and DAAM-Full to their own drawers. Inside the DAAM-Full drawer is the version non-CanDo owners can use named as DAAM. * Updated this file to new changes and editing that I should have done earlier. 1.00 - * Revision to reflect that I'm happy with DAAM. Little feedback regarding problems so I'm assuming it works well for all. * Config file now saved to S:DAAM.Config instead of in .info file. * Start, End, and Step values saved in config file now. * New button for allowing reprocessing of DCTV images (for changing bit planes and such) without having to rename all previously converted files. Status saved in config file. * New text field "Extensions". DAAM can try looking for files you specify. Not totally programmable but at least it's something. The text is saved in the config file for later loading. * DAAM builds the MakeAnim file list as T:Anim-List. It used to be deleted when the anim was completed. Now it's not so you can play around with it. * Back to a custom screen. This time, you have real front/back gadgets! Note : Prior to WB2.0, there was a problem in flipping between interlace and non-interlaced screens that COULD cause system lockup. I suggest finding a program called "FixIntuition" if you're not running WB2.0. That'll fix the problem. * Animation JourneyMan added to the list of source programs. * Renamed ADAM to DAAM. Got a better name I could use? My creative juices are not coming up with anything. Not sure on the legalities but "ADAM" was trademarked by Coleco. I've noticed PhoneMate using ADAM by lisencing the name through Coleco. --------------------------------------------------------------------------- * Notes * Although I haven't received much feedback via mail and direct e-mail, I have noticed that quite a few people are using DAAM without problems. Others report problems but later find out what was wrong. * One user was trying to run DAAM on one Amiga while another Amiga was generating the frames. He was using ParNet or SerNet. The problem was that DAAM would start converting even though the file was NOT finished. Simply running DAAM on the same machine as the 3D program solved the problem. I don't have two Amigas so I can't find another solution to this. * Another user reported that his system crashed when using DAAM. It turned out to be that he didn't have enough memory. Stopping the startup- sequence and running DAAM from CLI without Workbench being loaded helped out. * IFFTODCTV can't handle spaces in the paths or filenames. Try to avoid file paths and filenames that have a space in them (ie: Ram Disk:). I tried putting quotes around every thing but no luck.