TEXT_BASE is in board/sandpoint/config.mk so say so...
[u-boot.git] / board / MAI / bios_emulator / scitech / src / common / gasmx.c
1 /****************************************************************************
2 *
3 *                   SciTech Nucleus Graphics Architecture
4 *
5 *               Copyright (C) 1991-1998 SciTech Software, Inc.
6 *                            All rights reserved.
7 *
8 *  ======================================================================
9 *  |REMOVAL OR MODIFICATION OF THIS HEADER IS STRICTLY PROHIBITED BY LAW|
10 *  |                                                                    |
11 *  |This copyrighted computer code contains proprietary technology      |
12 *  |owned by SciTech Software, Inc., located at 505 Wall Street,        |
13 *  |Chico, CA 95928 USA (http://www.scitechsoft.com).                   |
14 *  |                                                                    |
15 *  |The contents of this file are subject to the SciTech Nucleus        |
16 *  |License; you may *not* use this file or related software except in  |
17 *  |compliance with the License. You may obtain a copy of the License   |
18 *  |at http://www.scitechsoft.com/nucleus-license.txt                   |
19 *  |                                                                    |
20 *  |Software distributed under the License is distributed on an         |
21 *  |"AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or      |
22 *  |implied. See the License for the specific language governing        |
23 *  |rights and limitations under the License.                           |
24 *  |                                                                    |
25 *  |REMOVAL OR MODIFICATION OF THIS HEADER IS STRICTLY PROHIBITED BY LAW|
26 *  ======================================================================
27 *
28 * Language:     ANSI C
29 * Environment:  smx32
30 *
31 * Description:  OS specific Nucleus Graphics Architecture services for
32 *               the smx32 platform -- no vxD support.
33 *
34 ****************************************************************************/
35
36 #include "pmapi.h"
37 #include "nucleus/graphics.h"
38
39 /*-------------------------- Implementation -------------------------------*/
40
41 /****************************************************************************
42 PARAMETERS:
43 path    - Local path to the Nucleus driver files.
44
45 REMARKS:
46 This function is used by the application program to override the location
47 of the Nucleus driver files that are loaded. Normally the loader code
48 will look in the system Nucleus directories first, then in the 'drivers'
49 directory relative to the current working directory, and finally relative
50 to the MGL_ROOT environment variable.
51 ****************************************************************************/
52 void NAPI GA_setLocalPath(
53     const char *path)
54 {
55     PM_setLocalBPDPath(path);
56 }
57
58 /****************************************************************************
59 RETURNS:
60 Pointer to the system wide PM library imports, or the internal version if none
61
62 REMARKS:
63 In order to support deploying new Nucleus drivers that may require updated
64 PM library functions, we check here to see if there is a system wide version
65 of the PM functions available. If so we return those functions for use with
66 the system wide Nucleus drivers, otherwise the compiled in version of the PM
67 library is used with the application local version of Nucleus.
68 ****************************************************************************/
69 PM_imports * NAPI GA_getSystemPMImports(void)
70 {
71     return &_PM_imports;
72 }
73
74 /****************************************************************************
75 REMARKS:
76 Nothing special for this OS.
77 ****************************************************************************/
78 ibool NAPI GA_getSharedExports(
79     GA_exports *gaExp,
80     ibool shared)
81 {
82     (void)gaExp;
83     (void)shared;
84     return false;
85 }
86
87 #ifndef TEST_HARNESS
88 /****************************************************************************
89 REMARKS:
90 Nothing special for this OS
91 ****************************************************************************/
92 ibool NAPI GA_queryFunctions(
93     GA_devCtx *dc,
94     N_uint32 id,
95     void _FAR_ *funcs)
96 {
97     return __GA_exports.GA_queryFunctions(dc,id,funcs);
98 }
99
100 /****************************************************************************
101 REMARKS:
102 Nothing special for this OS
103 ****************************************************************************/
104 ibool NAPI REF2D_queryFunctions(
105     REF2D_driver *ref2d,
106     N_uint32 id,
107     void _FAR_ *funcs)
108 {
109     return __GA_exports.REF2D_queryFunctions(ref2d,id,funcs);
110 }
111 #endif
112
113 /****************************************************************************
114 REMARKS:
115 This function initialises the high precision timing functions for the
116 Nucleus loader library.
117 ****************************************************************************/
118 ibool NAPI GA_TimerInit(void)
119 {
120     if (_GA_haveCPUID() && (_GA_getCPUIDFeatures() & CPU_HaveRDTSC) != 0)
121         return true;
122     return false;
123 }
124
125 /****************************************************************************
126 REMARKS:
127 This function reads the high resolution timer.
128 ****************************************************************************/
129 void NAPI GA_TimerRead(
130     GA_largeInteger *value)
131 {
132     _GA_readTimeStamp(value);
133 }