aartt.c 3.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  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: RTTarget-32
  30. *
  31. * Description: OS specific Nucleus Graphics Architecture services for
  32. * the RTTarget-32 operating system environments.
  33. *
  34. ****************************************************************************/
  35. #include "nucleus/graphics.h"
  36. /*------------------------- Global Variables ------------------------------*/
  37. static ibool haveRDTSC;
  38. /*-------------------------- Implementation -------------------------------*/
  39. /****************************************************************************
  40. REMARKS:
  41. Nothing special for this OS.
  42. ****************************************************************************/
  43. GA_sharedInfo * NAPI GA_getSharedInfo(
  44. int device)
  45. {
  46. (void)device;
  47. return NULL;
  48. }
  49. /****************************************************************************
  50. REMARKS:
  51. Nothing special for this OS.
  52. ****************************************************************************/
  53. ibool NAPI GA_getSharedExports(
  54. GA_exports *gaExp)
  55. {
  56. (void)gaExp;
  57. return false;
  58. }
  59. /****************************************************************************
  60. REMARKS:
  61. This function initialises the high precision timing functions for the
  62. Nucleus loader library.
  63. ****************************************************************************/
  64. ibool NAPI GA_TimerInit(void)
  65. {
  66. if (_GA_haveCPUID() && (_GA_getCPUIDFeatures() & CPU_HaveRDTSC) != 0) {
  67. haveRDTSC = true;
  68. return true;
  69. }
  70. return false;
  71. }
  72. /****************************************************************************
  73. REMARKS:
  74. This function reads the high resolution timer.
  75. ****************************************************************************/
  76. void NAPI GA_TimerRead(
  77. GA_largeInteger *value)
  78. {
  79. if (haveRDTSC)
  80. _GA_readTimeStamp(value);
  81. }