PC.H
上传用户:zddz2006
上传日期:2020-12-03
资源大小:261k
文件大小:3k
源码类别:

中间件编程

开发平台:

Visual C++

  1. /*
  2. *********************************************************************************************************
  3. *                                          PC SUPPORT FUNCTIONS
  4. *
  5. *                          (c) Copyright 1992-2002, Jean J. Labrosse, Weston, FL
  6. *                                           All Rights Reserved
  7. *
  8. * File : PC.H
  9. * By   : Jean J. Labrosse
  10. *********************************************************************************************************
  11. */
  12. /*
  13. *********************************************************************************************************
  14. *                                               CONSTANTS
  15. *                                    COLOR ATTRIBUTES FOR VGA MONITOR
  16. *
  17. * Description: These #defines are used in the PC_Disp???() functions.  The 'color' argument in these
  18. *              function MUST specify a 'foreground' color, a 'background' and whether the display will
  19. *              blink or not.  If you don't specify a background color, BLACK is assumed.  You would 
  20. *              specify a color combination as follows:
  21. *
  22. *              PC_DispChar(0, 0, 'A', DISP_FGND_WHITE + DISP_BGND_BLUE + DISP_BLINK);
  23. *
  24. *              To have the ASCII character 'A' blink with a white letter on a blue background.
  25. *********************************************************************************************************
  26. */
  27. #define DISP_FGND_BLACK           0x00
  28. #define DISP_FGND_BLUE            0x01
  29. #define DISP_FGND_GREEN           0x02
  30. #define DISP_FGND_CYAN            0x03
  31. #define DISP_FGND_RED             0x04
  32. #define DISP_FGND_PURPLE          0x05
  33. #define DISP_FGND_BROWN           0x06
  34. #define DISP_FGND_LIGHT_GRAY      0x07
  35. #define DISP_FGND_DARK_GRAY       0x08
  36. #define DISP_FGND_LIGHT_BLUE      0x09
  37. #define DISP_FGND_LIGHT_GREEN     0x0A
  38. #define DISP_FGND_LIGHT_CYAN      0x0B
  39. #define DISP_FGND_LIGHT_RED       0x0C
  40. #define DISP_FGND_LIGHT_PURPLE    0x0D
  41. #define DISP_FGND_YELLOW          0x0E
  42. #define DISP_FGND_WHITE           0x0F
  43. #define DISP_BGND_BLACK           0x00
  44. #define DISP_BGND_BLUE            0x10
  45. #define DISP_BGND_GREEN           0x20
  46. #define DISP_BGND_CYAN            0x30
  47. #define DISP_BGND_RED             0x40
  48. #define DISP_BGND_PURPLE          0x50
  49. #define DISP_BGND_BROWN           0x60
  50. #define DISP_BGND_LIGHT_GRAY      0x70
  51. #define DISP_BLINK                0x80
  52. /*$PAGE*/
  53. /*
  54. *********************************************************************************************************
  55. *                                           FUNCTION PROTOTYPES
  56. *********************************************************************************************************
  57. */
  58. void    PC_DispChar(INT8U x, INT8U y, INT8U c, INT8U color);
  59. void    PC_DispClrCol(INT8U x, INT8U bgnd_color);
  60. void    PC_DispClrRow(INT8U y, INT8U bgnd_color);
  61. void    PC_DispClrScr(INT8U bgnd_color);
  62. //change by cmj
  63. //void    PC_DispStr(INT8U x, INT8U y, INT8U *s, INT8U color);
  64. void    PC_DispStr(INT8U x, INT8U y, const char *s, INT8U color);
  65. void    PC_DOSReturn(void);
  66. void    PC_DOSSaveReturn(void);
  67. void    PC_ElapsedInit(void);
  68. void    PC_ElapsedStart(void);
  69. INT16U  PC_ElapsedStop(void);
  70. void    PC_GetDateTime(char *s);
  71. BOOLEAN PC_GetKey(INT16S *c);
  72. void    PC_SetTickRate(INT16U freq);
  73. void   *PC_VectGet(INT8U vect);
  74. void    PC_VectSet(INT8U vect, void (*isr)(void));
  75. //add by cmj
  76. extern INT8U random(INT8U seed);
  77. //add by cmj
  78. #define _8087   0