]> git.ipfire.org Git - u-boot.git/blame - board/MAI/bios_emulator/scitech/src/common/gasmx.c
* Code cleanup:
[u-boot.git] / board / MAI / bios_emulator / scitech / src / common / gasmx.c
CommitLineData
c7de829c
WD
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/****************************************************************************
42PARAMETERS:
43path - Local path to the Nucleus driver files.
44
45REMARKS:
46This function is used by the application program to override the location
47of the Nucleus driver files that are loaded. Normally the loader code
48will look in the system Nucleus directories first, then in the 'drivers'
49directory relative to the current working directory, and finally relative
50to the MGL_ROOT environment variable.
51****************************************************************************/
52void NAPI GA_setLocalPath(
53 const char *path)
54{
55 PM_setLocalBPDPath(path);
56}
57
58/****************************************************************************
59RETURNS:
60Pointer to the system wide PM library imports, or the internal version if none
61
62REMARKS:
63In order to support deploying new Nucleus drivers that may require updated
64PM library functions, we check here to see if there is a system wide version
65of the PM functions available. If so we return those functions for use with
66the system wide Nucleus drivers, otherwise the compiled in version of the PM
67library is used with the application local version of Nucleus.
68****************************************************************************/
69PM_imports * NAPI GA_getSystemPMImports(void)
70{
71 return &_PM_imports;
72}
73
74/****************************************************************************
75REMARKS:
76Nothing special for this OS.
77****************************************************************************/
78ibool 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/****************************************************************************
89REMARKS:
90Nothing special for this OS
91****************************************************************************/
92ibool 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/****************************************************************************
101REMARKS:
102Nothing special for this OS
103****************************************************************************/
104ibool 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/****************************************************************************
114REMARKS:
115This function initialises the high precision timing functions for the
116Nucleus loader library.
117****************************************************************************/
118ibool NAPI GA_TimerInit(void)
119{
120 if (_GA_haveCPUID() && (_GA_getCPUIDFeatures() & CPU_HaveRDTSC) != 0)
8bde7f77 121 return true;
c7de829c
WD
122 return false;
123}
124
125/****************************************************************************
126REMARKS:
127This function reads the high resolution timer.
128****************************************************************************/
129void NAPI GA_TimerRead(
130 GA_largeInteger *value)
131{
132 _GA_readTimeStamp(value);
133}