Classic Computer Magazine Archive ANTIC VOL. 4, NO. 1 / MAY 1985

assembly language


Enhanced dot-by-dot picture dissolves!


This is an enhancement of the popular "Fader" program that appeared in the September, 1984 Antic. The original program created a dot-by dot "lapse-dissolve" effect on Micro Painter files. FaderII now works on Micro Illustrator pictures as well. The program is complete in this issue-including source code. It will work on all Atari computers with 48K and disk drive.

Last month, we published Patrick Dell'Era's reworking of Philip Price's "Picture Painter." We now present Patrick's Fader II, based upon the popular dot-by-dot picture dissolve program by Joseph Grande that Antic printed in the September 1984 graphics issue.
   The original Fader was written in the BASM language, which is now often hard to find. Patrick has disassembled the object code into full MAC/65 source code, and re-written it with several improvements including a special modification program in BASIC. -ANTIC ED

There are three listings. Listing 1, FADERII.BAS, is the main program. It is written in BASIC and creates a machine language binary file on your disk called AUTORUN.SYS.
   Listing 2, FADERMOD.BAS, is a BASIC program which can be used to modify certain of the elements in AUTORUN.SYS. Listing 3, FADERII.ASM, is the assembly language source code and need not be typed in. It is included for machine language programmers who may wish to study and further modify the program.
   Type in Listing 1 and check it especially carefully with TYPO II. Make sure you haven't skipped any lines. TYPO II can't check for that.
   SAVE a copy of the program. When you RUN Fader II, it will read all of those DATA statements (they are the machine code) and then prompt you to ready your disk and press [RETURN].
   Place a fresh, formatted disk in your drive containing DOS 2.0S and two or more picture files. Press [RETURN], and a file named AUTORUN.SYS will be written to your disk. Now, boot the disk and the slide show will begin.

Unlike the original program, Fader II can handle both uncompressed and compressed Graphics 7 + picture files. This means you can have any combination of Micro Painter or Micro Illustrator files on the same disk. (Micro Illustrator software comes with the KoalaPad, the Atari Touch Tablet and other widely used graphics products.)
   So that Fader II can tell the difference between the file types, you must use a .PIC extender on your compressed files. The Micro Painter files should have a .?IC extender (where ? designates any number or letter other than P).
   Fader II will cycle through each picture creating a screen pixel dissolve. When it reaches the last file, it will begin again with the first. As with the original program, you may skip the pause between pictures by pressing [START].
   In Fader II, after a picture fades in, it may be held indefinitely on the screen by pressing [OPTION]. In this way, one may take a good look at a particularly fetching piece of art, or gracefully change the disk without racing the clock. If you have DOS on your disk, pressing [SELECT] will take you to it.
   Fader II does not sit in the DUP.SYS area of memory so a Binary Load can be done on it from DOS without creating a MEM.SAV file. It will run with or without a cartridge installed.

Although Fader II has an automatic pausing rate, the modification program, FADERMOD.BAS, will allow you to change the length of time the picture is left on the screen-as well as the drive that the pictures are loaded from. This allows quite an effective display for Ramdisk owners who load their pictures into the simulated 128K disk and designate it as the load drive.
   Type in Listing 2, again checking it with. TYPO II and SAVEing a copy. When RUN, it will ask for the file name (i.e. AUTORUN.SYS, FADERII.EXE, etc.). It then uses NOTE and POINT to read the appropriate variables. Each time the [OPTION] key is pressed, the drive number is incremented by 1. If it reaches 5, it rolls back to 1.
   The pause rate is modified by pressing [SELECT]. Each time [SELECT] is pressed, the pause time is increased by 4.27 seconds until it reaches (255* 4.27). It then becomes 0. If the minus key [-] is pressed, the pause time will be reduced with each press of [SELECT]. Pressing any other key puts it back into the increment mode.
   When your variables are set to your satisfaction, press [START] to save the changes to your program. It is important that the same disk Fader II is read from should be the disk to which the changes are written. Otherwise an innocent bystander on another disk could be modified, surely causing its demise.

As mentioned above, Listing 3 is the MAC/65 assembly source code. It was created with the MAC/65 Assembler Editor by Optimized Systems Software, Ultra Disassembler by Adventure International, and OmniMon by CDY Consulting. Without these three excellent programming tools, the above code could not have been recreated and modified.

Patrick L. Dell'Era is a member of the San Francisco Atari users' group ABACUS, and a strong assembly language programmer whose time is currently being taken up with a new baby.

Listing 1   FADERII.EXE Download

Listing 2   FADERII.BAS Download

Listing 3   FADERII.M65 Download / View