


                        AMIGA MAIL - VOLUME TWO
                         SOURCE CODE EXAMPLES




    These examples were published previously in Amiga Mail, a
    bi-monthly technical publication from Commodore Applications
    and Technical Support (CATS).  For more information about
    Amiga Mail, please read the accompanying text file
    "MoreAboutAmigaMail".  All copyright information for these
    examples is contained in the "Legal.txt" file.


    AMCX

    These are two examples of coding Commodities, the 2.0-approved
    method of adding input-handlers and filters to the input handler
    chain.  Included are simple examples of a "broker" (similar to a
    message dispatcher), and a hotkey utility.


    AppWorkbench

    This is sample code to explain how to use WB2.0's new AppMenu
    item, AppIcon, and AppWindow services.


    ASL

    Sample code for working with asl.library's built-in file and
    font requesters.


    Aspect

    Example code for finding a given screen's pixel aspect ratio under
    both 1.3 and 2.0.


    Boopsi

    Introduction code to programming with BOOPSI (Basic Object-Oriented
    Programming System for Intuition).  BOOPSI provide an extensible way
    for the programmer to add new gadget types to the system.


    CAMG

    Example code for handling CAMG.  CAMG is a new IFF chunk for ILBM
    hunks, which encodes display mode information into ILBM images.


    ExtScreen

    This example shows how to write code to use the new 2.0 window and
    screen options while remaining backwards-compatible with previous
    versions of the operating system.


    FileName

    Example code to use the new 2.0 DOS functions for extracting path
    and filename information from a full path/filename.


    FontTag

    This example shows how to use the dots per inch (DPI) flag of 2.0's
    new scalable font system to adjust the generated font bitmaps for
    aspect ratio, printing, etc.


    Genlock

    Example code for using the new diplay modes of the enhanced chip
    set (ECS) with genlocks and external video signals.  This example
    requires both a genlock and the ECS Denise chip to work.


    IconImage

    This example shows how to use the WBArg message, handed from Workbench
    to your application, to obtain the icon image associated with the file.


    ImageClass

    Example code for writing a BOOPSI imageclass object.  Imageclass objects
    are normally used for displaying custom Intuition images.


    ManWindows

    These examples show how to work with public screens, how to handle zoom
    gadgets without a sizing gadget, and how to "iconify" your windows (all
    using 2.0 features of Intuition).


    Notify

    The SignalNotification.c example shows how to use a signal and 2.0's
    file notification features on a single target file.  The other example,
    MessageNotification.c, uses system messages to apply file notification
    to multiple files simultaneously.


    Pattern

    The Pattern.c code is a short example of how to use the new 2.0
    dos.library functions for pattern-matching.  The SetStar.c code can
    set or clear the system bit which allows use of "*" as a synonym
    for "#?".


    ReadArgs

    Example code showing how to use the new ReadArgs() function of 2.0's
    dos.library.  ReadArgs() is a quick way to implement command-line
    argument parsing which conforms to the Amiga User Interface Style
    Guide standard.


    Scan

    These examples demonstrate use of the new 2.0 directory scanning,
    matching and handling functions.


    Screens&Windows

    Example code for using the new 2.0 flags and modes when opening and
    working with screens and windows.


    setfunc

    The ispy.c example shows how to use SetFunction() to implement a
    minimal form of debugger.  This serves more as an example of
    SetFunction() than of implementing such a system.


    System

    The SystemTest.c code shows numerous ways to use the new 2.0 System()
    to execute external programs from within your code.  There are
    separate sections for synchronous, asynchronous, etc.



