home *** CD-ROM | disk | FTP | other *** search
/ POINT Software Programming / PPROG1.ISO / c / fli106c / blcursor.cpp < prev    next >
C/C++ Source or Header  |  1992-03-11  |  2KB  |  114 lines

  1. //
  2. // The Fusion Library Interface for DOS
  3. // Version 1.06c
  4. // Copyright (C) 1990, 1991, 1992
  5. // Software Dimensions
  6. //
  7. // BlazeClass
  8. //
  9.  
  10. #ifndef __BCPLUSPLUS__
  11. #pragma inline
  12. #endif
  13.  
  14. #include "fli.h"
  15.  
  16. #ifdef __BCPLUSPLUS__
  17. #pragma hdrstop
  18. #endif
  19.  
  20. #include <dos.h>
  21.  
  22. #define I asm
  23.  
  24. //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  25. //
  26. // InvisibleCursor()
  27. //
  28. // Hides the hardware cursor
  29. //
  30. //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  31.  
  32. void BlazeClass::InvisibleCursor()
  33. {
  34.   I mov ah,3
  35.   I xor bh,bh
  36.   I int 10h
  37.   I mov ah,1
  38.   I or ch,00100000b
  39.   I int 10h
  40. }
  41.  
  42. //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  43. //
  44. // VisibleCursor()
  45. //
  46. // Un-Hides the hardware cursor
  47. //
  48. //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  49.  
  50. void BlazeClass::VisibleCursor()
  51. {
  52.   I mov ah,3
  53.   I xor bh,bh
  54.   I int 10h
  55.   I mov ah,1
  56.   I and ch,11011111b
  57.   I int 10h
  58. }
  59.  
  60. //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  61. //
  62. // BigCursor
  63. //
  64. // Makes cursor bigger or smaller
  65. //
  66. //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  67.  
  68. int IsBigCursor=0;
  69.  
  70. void BlazeClass::BigCursor(int Size)
  71. {
  72.   IsBigCursor=Size;
  73.   if (Size)
  74.   {
  75.     if (VIDEO==(char far *)0xb8000000L)
  76.     {
  77.       if (WhatHeight()>=43)
  78.         _CL=8;
  79.       else
  80.         _CL=7;
  81.     }
  82.     else
  83.       _CL=12;
  84.     _CH=0;
  85.   }
  86.   else
  87.   {
  88.     if (VIDEO==(char far *)0xb8000000L)
  89.       _CH=6, _CL=7;
  90.     else
  91.       _CH=11, _CL=12;
  92.   }
  93.   _AH=1;
  94.   __int__(0x10);
  95. }
  96.  
  97. //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  98. //
  99. // CheckVisible
  100. //
  101. // Returns a 1 if visible or 0 if not visible
  102. //
  103. //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  104.  
  105. int BlazeClass::CheckVisible()
  106. {
  107.   I mov ah,3
  108.   I xor bh,bh
  109.   I int 10h
  110.  
  111.   return (_CH&0x20)?0:1;
  112. }
  113.  
  114.