]> git.saurik.com Git - apple/bootx.git/blob - bootx.tproj/include.subproj/sl_words.h
BootX-36.tar.gz
[apple/bootx.git] / bootx.tproj / include.subproj / sl_words.h
1 /*
2 * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * The contents of this file constitute Original Code as defined in and
7 * are subject to the Apple Public Source License Version 1.1 (the
8 * "License"). You may not use this file except in compliance with the
9 * License. Please obtain a copy of the License at
10 * http://www.apple.com/publicsource and read it before using this file.
11 *
12 * This Original Code and all software distributed under the License are
13 * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
14 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
15 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
17 * License for the specific language governing rights and limitations
18 * under the License.
19 *
20 * @APPLE_LICENSE_HEADER_END@
21 */
22 /*
23 * sl_words.h - Headers for the Secondary Loader Words.
24 *
25 * Copyright (c) 1998-2000 Apple Computer, Inc.
26 *
27 * DRI: Josh de Cesare
28 */
29
30 #ifndef _BOOTX_SL_WORDS_H_
31 #define _BOOTX_SL_WORDS_H_
32
33 #include <ci.h>
34
35 // The iHandle for the SL Words.
36 extern CICell SLWordsIH;
37
38 // Call InitSLWords before using SLWordsIH.
39 // outputLevel is used to supress output.
40 // 0 - all off
41 // 1 - OF stdout only
42 // 2 - SLW's emit and cr.
43 // 3 - ???
44 extern long InitSLWords(long ofVers);
45
46
47 // Suported words.
48
49 // slw_set_output_level ( level -- )
50 // set the current output level.
51 extern void SetOutputLevel(long level);
52
53 // slw_emit ( ch -- ) Output Level: 2
54 // calls emit ( ch -- )
55 extern void Emit(char ch);
56
57 // slw_cr ( -- ) Output Level: 2
58 // calls cr ( -- )
59 extern void CR(void);
60
61 // slw_init_keymap ( keyboardIH -- keyMap )
62 // sets the ihandle for the keyboard and
63 // puts the address of the keyMap on the stack
64 extern char *InitKeyMap(CICell keyboardIH);
65
66 // slw_update_keymap ( -- )
67 // Called by slw_spin to make sure all the keys are caught.
68 extern void UpdateKeyMap(void);
69
70 // slw_spin_init ( screenIH cursorAddr cursorX cursorY cursorW cursorH --)
71 // slw_spin_init2 ( screenIH cursorAddr cursorX cursorY cursorW cursorH --)
72 // Sets up the wait cursor.
73 extern void SpinInit(long spinType, CICell screenIH, char *cursorAddr,
74 long cursorX, long cursorY, long cursorW, long cursorH,
75 long pixelSize);
76
77 // slw_spin ( -- )
78 // Spins the wait cursor.
79 extern void Spin(void);
80
81 extern long GetPackageProperty(CICell phandle, char *propName,
82 char **propAddr, long *propLen);
83
84 // slw_pwd ( phandle addr len -- act )
85 // does pwd the hard way.
86
87 #define SL_DEBUG (0)
88
89 /*
90 .sc ( -- )
91 does a simple stack crawl.
92
93
94
95 */
96
97 #endif /* ! _BOOTX_SL_WORDS_H_ */