home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / ENTERPRS / CPM / UTILS / S / SGTOOL11.ARC / VDC.H < prev    next >
Text File  |  1993-07-25  |  3KB  |  107 lines

  1. /*
  2. SG C Tools 1.1
  3.  
  4. (C) 1993 Steve Goldsmith
  5. All Rights Reserved
  6.  
  7. Compiled with HI-TECH C 3.09 (CP/M-80).
  8. */
  9.  
  10. #define vdcStatusReg 0xD600   /* vdc status register */
  11. #define vdcDataReg   0xD601   /* vdc data register */
  12.  
  13. #define vdcHzTotal          0 /* vdc internal registers */
  14. #define vdcHzDisp           1
  15. #define vdcHzSyncPos        2
  16. #define vdcVtHzSyncWidth    3
  17. #define vdcVtTotal          4
  18. #define vdcVtTotalAdj       5
  19. #define vdcVtDisp           6
  20. #define vdcVtSyncPos        7
  21. #define vdcIlaceMode        8
  22. #define vdcChTotalVt        9
  23. #define vdcCurStScanLine   10
  24. #define vdcCurEndScanLine  11
  25. #define vdcDspStAddrHi     12
  26. #define vdcDspStAddrLo     13
  27. #define vdcCurPosHi        14
  28. #define vdcCurPosLo        15
  29. #define vdcLightPenVt      16
  30. #define vdcLightPenHz      17
  31. #define vdcUpdAddrHi       18
  32. #define vdcUpdAddrLo       19
  33. #define vdcAttrStAddrHi    20
  34. #define vdcAttrStAddrLo    21
  35. #define vdcChDspHz         22
  36. #define vdcChDspVt         23
  37. #define vdcVtSmScroll      24
  38. #define vdcHzSmScroll      25
  39. #define vdcFgBgColor       26
  40. #define vdcAddrIncPerRow   27
  41. #define vdcChSetStAddr     28
  42. #define vdcUlScanLineCnt   29
  43. #define vdcWordCnt         30
  44. #define vdcCPUData         31
  45. #define vdcBlkCpySrcAddrHi 32
  46. #define vdcBlkCpySrcAddrLo 33
  47. #define vdcDispEnableSt    34
  48. #define vdcDispEnableEnd   35
  49. #define vdcRamRefresh      36
  50.  
  51. #define vdcBlack        0    /* vdc rgb colors */
  52. #define vdcDarkGray     1
  53. #define vdcDarkBlue     2
  54. #define vdcLightBlue    3
  55. #define vdcDarkGreen    4
  56. #define vdcLightGreen   5
  57. #define vdcDarkCyan     6
  58. #define vdcLightCyan    7
  59. #define vdcDarkRed      8
  60. #define vdcLightRed     9
  61. #define vdcDarkPurple  10
  62. #define vdcLightPurple 11
  63. #define vdcDarkYellow  12
  64. #define vdcLightYellow 13
  65. #define vdcMediumGray  14
  66. #define vdcWhite       15
  67.  
  68. #define vdcAltChrSet 0x80    /* vdc attribute bits */
  69. #define vdcRvsVid    0x40
  70. #define vdcUnderline 0x20
  71. #define vdcBlink     0x10
  72. #define vdcRed       0x08
  73. #define vdcGreen     0x04
  74. #define vdcBlue      0x02
  75. #define vdcIntensity 0x01
  76.  
  77. #define vdcCurSolid  0       /* vdc cursor modes used by setcursorvdc() */
  78. #define vdcCurNone   1
  79. #define vdcCurRate16 2
  80. #define vdcCurRate32 3
  81.  
  82. #define vdcMaxBlock     255
  83. #define vdcCharsPerSet  256
  84. #define vdcMaxCharBytes 32
  85.  
  86. uchar invdc(uchar RegNum);
  87. void outvdc(uchar RegNum, uchar RegVal);
  88. void savevdc(void);
  89. void restorevdc(void);
  90. void setcursorvdc(uchar Top, uchar Bottom, uchar Mode);
  91. void fillmemvdc(ushort FillMem, ushort FillLen, uchar Filler);
  92. void copymemvdc(ushort SMem, ushort DMem, ushort CopyLen);
  93. void setdsppagevdc(ushort DPage, ushort APage);
  94. void copydspvdc(ushort SDPage, ushort SAPage, ushort DDPage, ushort DAPage);
  95. void clrscrvdc(uchar Ch);
  96. void clrattrvdc(uchar Attr);
  97. void filldspvdc(uchar X, uchar Y, uchar CLen, uchar Ch);
  98. void fillattrvdc(uchar X, uchar Y, uchar ALen, uchar Attr);
  99. void printstrvdc(uchar X, uchar Y, uchar Attr, char *TextStr);
  100. void scrollupvdc(uchar X1, uchar Y1, uchar X2, uchar Y2);
  101. void scrolldownvdc(uchar X1, uchar Y1, uchar X2, uchar Y2);
  102. void clrwinvdc(uchar X1, uchar Y1, uchar X2, uchar Y2, uchar Ch);
  103. void clrwinattrvdc(uchar X1, uchar Y1, uchar X2, uchar Y2, uchar Ch);
  104. void winvdc(uchar X1, uchar Y1, uchar X2, uchar Y2, uchar Attr, char *Title);
  105. uchar * memtobufvdc(ushort VidMem, ushort CopyLen);
  106. void buftomemvdc(uchar *BufPtr, ushort VidMem, ushort CopyLen);
  107.