Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

103 lines
3.5 KiB

  1. /* File: D:\wacker\emu\minitel.hh (Created: 05-Mar-1994)
  2. *
  3. * Copyright 1994, 1998 by Hilgraeve Inc. -- Monroe, MI
  4. * All rights reserved
  5. *
  6. * $Revision: 1 $
  7. * $Date: 10/05/98 12:28p $
  8. */
  9. void emuMinitelInit(const HHEMU hhEmu);
  10. void emuMinitelDeinstall(const HHEMU hhEmu);
  11. void minitelGraphic(const HHEMU hhEmu);
  12. void minitelLinefeed(const HHEMU hhEmu);
  13. void minitelBackspace(const HHEMU hhEmu);
  14. void minitelVerticalTab(const HHEMU hhEmu);
  15. void minitelCursorUp(const HHEMU hhEmu);
  16. void minitelCursorDirect(const HHEMU hhEmu);
  17. void minitelFormFeed(const HHEMU hhEmu);
  18. void minitelClearScreen(const HHEMU hhEmu, const int iHow);
  19. void minitelClrScrn(const HHEMU hhEmu);
  20. void minitelRecordSeparator(const HHEMU hhEmu);
  21. void minitelClearLine(const HHEMU hhEmu, const int iHow);
  22. void minitelClrLn(const HHEMU hhEmu);
  23. void minitelUSCol(const HHEMU hhEmu);
  24. void minitelUSRow(const HHEMU hhEmu);
  25. void minitelReset(const HHEMU hhEmu);
  26. void minitelHorzTab(const HHEMU hhEmu);
  27. void minitelDel(const HHEMU hhEmu);
  28. void minitelRepeat(const HHEMU hhEmu);
  29. void minitelCharSet(const HHEMU hhEmu);
  30. void minitelCharSize(const HHEMU hhEmu);
  31. void minitelCancel(const HHEMU hhEmu);
  32. void minitelResetTerminal(const HHEMU hhEmu);
  33. void minitelCursorOn(const HHEMU hhEmu);
  34. void minitelCursorOff(const HHEMU hhEmu);
  35. void minitelResync(const HHEMU hhEmu);
  36. void minitelDelChars(const HHEMU hhEmu);
  37. void minitelInsChars(const HHEMU hhEmu);
  38. void minitelDelRows(const HHEMU hhEmu);
  39. void minitelInsRows(const HHEMU hhEmu);
  40. void minitelNtfy(const HHEMU hhEmu, const int nNtfyCode);
  41. void minitelCursorReport(const HHEMU hhEmu);
  42. void emuMinitelCharAttr(const HHEMU hhEmu);
  43. void emuMinitelFieldAttr(const HHEMU hhEmu);
  44. int minitelHomeHostCursor(const HHEMU hhEmu);
  45. void minitel_scrollup(const HHEMU hhEmu, int nlines);
  46. void minitel_scrolldown(const HHEMU hhEmu, int nlines);
  47. void emuMinitelSetScrSize(const HHEMU hhEmu);
  48. STATTR GetAttr(const HHEMU hhEmu, const int iRow, const int iCol);
  49. /* --- minitel latent attribute structure --- */
  50. typedef struct _minitel
  51. {
  52. unsigned int bkclr : 4; // background color
  53. unsigned int conceal : 1; // conceal
  54. unsigned int undrln : 1; // underline
  55. unsigned int isattr : 1; // true if this is an attribute space
  56. unsigned int ismosaic: 1; // TRUE if char is mosaic
  57. unsigned int fbkclr : 1; // This attribute spaces validates color
  58. } STMINITEL;
  59. // The latent attribute
  60. typedef struct _latent
  61. {
  62. unsigned bkclr; // background color
  63. unsigned conceal; // conceal chars
  64. unsigned undrln; // underline
  65. unsigned fModified; // latent attribute changed.
  66. unsigned fBkClr; // TRUE if modified and not validated.
  67. } LATENTATTR;
  68. typedef STMINITEL *PSTMINITEL;
  69. // Private emulator data for Minitel.
  70. //
  71. typedef struct stPrivateMinitel
  72. {
  73. // Latent attribute and attribute array used for serial attributes.
  74. //
  75. LATENTATTR stLatentAttr;
  76. LATENTATTR saved_stLatentAttr;
  77. PSTMINITEL *apstMT;
  78. ECHAR minitel_last_char;
  79. int minitelG1Active;
  80. int minitelUseSeparatedMosaics;
  81. int saved_minitelUseSeparatedMosaics;
  82. int minitel_saved_row;
  83. int minitel_saved_col;
  84. STATTR minitel_saved_attr;
  85. int minitel_saved_minitelG1Active;
  86. ECHAR minitel_PRO1; // first part of a PRO sequence
  87. int us_row_code; // used for US codes
  88. int minitelSecondDep;
  89. int fScrollMode;
  90. int F9; // two consecutive F9's disconnect.
  91. int fInCancel; // used in minitelCancel and minitelGraphic
  92. } MTPRIVATE;
  93. typedef MTPRIVATE *PSTMTPRIVATE;