chiark / gitweb /
Create readable text `.bas' for each tokenized BASIC `,ffb' file.
[ssr] / StraySrc / Libraries / Sapphire / csapph / h / banner
1 /*
2  * banner.h
3  *
4  * [Generated from banner, 25 September 1996]
5  */
6
7 #if !defined(__CC_NORCROFT) || !defined(__arm)
8   #error You must use the Norcroft ARM Compiler for Sapphire programs
9 #endif
10
11 #pragma include_only_once
12 #pragma force_top_level
13
14 #ifndef __banner_h
15 #define __banner_h
16
17 #ifndef __sapphire_h
18   #include "sapphire.h"
19 #endif
20
21 /*----- Overview ----------------------------------------------------------*
22  *
23  * Functions provided:
24  *
25  *  banner
26  *  bnr_doBanner
27  */
28
29 /* --- banner --- *
30  *
31  * On entry:    R0 == pointer to definition block, or 0
32  *              R1 == R12 value to pass to setup routine, if present
33  *
34  * On exit:     --
35  *
36  * Use:         Displays a startup banner and initialises the library and
37  *              client.  This call should be used as a replacement for
38  *              sapphire_libInit.
39  *
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.
43  *
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.
50  *
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
55  *              too.
56  */
57
58 extern routine banner;
59
60 /* --- bnr_doBanner --- *
61  *
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
65  *
66  * On exit:     --
67  *
68  * Use:         Displays a startup banner and initialises the library and
69  *              client.  This routine is used to support dynamic linking.
70  */
71
72 extern routine bnr_doBanner;
73
74 /*----- Flags -------------------------------------------------------------*/
75
76 #define bFlag_slider ((1<<0))
77
78 #define bFlag_counter ((1<<1))
79
80 #define bFlag_setup ((1<<2))
81
82 #define bFlag_sprites ((1<<3))
83
84 /*----- Macros ------------------------------------------------------------*/
85
86 /* --- Macro: BANNER --- *
87  *
88  * Arguments:   --
89  *
90  * Use:         Begins construction of a banner block.
91  */
92
93 /* --- Macro: BFLAG --- *
94  *
95  * Arguments:   f == flag to set
96  *
97  * Use:         Sets a flag in the banner header, making sure they go in
98  *              order.
99  */
100
101 /* --- Macro: BNSLIDE --- *
102  *
103  * Arguments:   icon == icon number of slider in banner window
104  *
105  * Use:         Registers the banner window's slider.
106  */
107
108 /* --- Macro: BNCOUNT --- *
109  *
110  * Arguments:   icon == icon number of percentage counter
111  *
112  * Use:         Registers the banner window's percentage counter.
113  */
114
115 /* --- Macro: BNSETUP --- *
116  *
117  * Arguments:   rout == address of setup routine
118  *
119  * Use:         Registers the banner window's setup routine.
120  */
121
122 /* --- Macro: BNSPRT --- *
123  *
124  * Arguments:   name == leafname of sprite file
125  *
126  * Use:         Registers the banner window's sprite file name.
127  */
128
129 /* --- Macro: BNEND --- *
130  *
131  * Arguments:   --
132  *
133  * Use:         Terminates a banner window definition.
134  */
135
136 /*----- That's all, folks -------------------------------------------------*/
137
138 #endif