]> git.saurik.com Git - apple/bootx.git/blame - bootx.tproj/include.subproj/sl_words.h
BootX-36.tar.gz
[apple/bootx.git] / bootx.tproj / include.subproj / sl_words.h
CommitLineData
04fee52e
A
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.
36extern 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 - ???
44extern long InitSLWords(long ofVers);
45
46
47// Suported words.
48
49// slw_set_output_level ( level -- )
50// set the current output level.
51extern void SetOutputLevel(long level);
52
53// slw_emit ( ch -- ) Output Level: 2
54// calls emit ( ch -- )
55extern void Emit(char ch);
56
57// slw_cr ( -- ) Output Level: 2
58// calls cr ( -- )
59extern 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
64extern char *InitKeyMap(CICell keyboardIH);
65
66// slw_update_keymap ( -- )
67// Called by slw_spin to make sure all the keys are caught.
68extern 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.
73extern 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.
79extern void Spin(void);
80
81extern 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_ */