4 * [Generated from banner, 25 September 1996]
7 #if !defined(__CC_NORCROFT) || !defined(__arm)
8 #error You must use the Norcroft ARM Compiler for Sapphire programs
11 #pragma include_only_once
12 #pragma force_top_level
21 /*----- Overview ----------------------------------------------------------*
31 * On entry: R0 == pointer to definition block, or 0
32 * R1 == R12 value to pass to setup routine, if present
36 * Use: Displays a startup banner and initialises the library and
37 * client. This call should be used as a replacement for
40 * If R0 is 0 on entry, no banner window is used; instead
41 * an hourglass percentage is displayed to indicate the
42 * amount of initialisation performed so far.
44 * Alternatively, it should point to a table consisting of
45 * a flags word and optional arguments specified by the flags
46 * in order. The options you can specify are a slider and
47 * percentage count icon (used to display current progress),
48 * a setup routine, and the leafname of a sprites file to
49 * attach to the banner window.
51 * The setup routine is passed the banner dialogue handle in
52 * R0. It should fill in parts of the banner window, such as
53 * the licencee name and serial number that can't be determined
54 * until runtime (for safeness), and maybe version information
58 extern routine banner;
60 /* --- bnr_doBanner --- *
62 * On entry: R0 == pointer to definition block, or 0
63 * R1 == R12 value to pass to setup routine, if present
64 * R2 == pointer to library initialisation table
68 * Use: Displays a startup banner and initialises the library and
69 * client. This routine is used to support dynamic linking.
72 extern routine bnr_doBanner;
74 /*----- Flags -------------------------------------------------------------*/
76 #define bFlag_slider ((1<<0))
78 #define bFlag_counter ((1<<1))
80 #define bFlag_setup ((1<<2))
82 #define bFlag_sprites ((1<<3))
84 /*----- Macros ------------------------------------------------------------*/
86 /* --- Macro: BANNER --- *
90 * Use: Begins construction of a banner block.
93 /* --- Macro: BFLAG --- *
95 * Arguments: f == flag to set
97 * Use: Sets a flag in the banner header, making sure they go in
101 /* --- Macro: BNSLIDE --- *
103 * Arguments: icon == icon number of slider in banner window
105 * Use: Registers the banner window's slider.
108 /* --- Macro: BNCOUNT --- *
110 * Arguments: icon == icon number of percentage counter
112 * Use: Registers the banner window's percentage counter.
115 /* --- Macro: BNSETUP --- *
117 * Arguments: rout == address of setup routine
119 * Use: Registers the banner window's setup routine.
122 /* --- Macro: BNSPRT --- *
124 * Arguments: name == leafname of sprite file
126 * Use: Registers the banner window's sprite file name.
129 /* --- Macro: BNEND --- *
133 * Use: Terminates a banner window definition.
136 /*----- That's all, folks -------------------------------------------------*/