Commit 55205d56f381e4b30551dd28c12110c1ca16e3d0

Authored by xiemeng
1 parent 261b3bdf

1 合并TTYINFO.H 和MTTTY.H

2 导入comctl32.lib winmm.lib 支持
3 默认窗口大小
4 某些常用数据改为全局数据
Showing 2 changed files with 148 additions and 128 deletions
... ... @@ -21,6 +21,146 @@
21 21 #include "resource.h"
22 22 #include "ttyinfo.h"
23 23
  24 +#pragma comment(lib,"comctl32.lib")
  25 +#pragma comment(lib,"winmm.lib")
  26 +//
  27 +// hard coded maximum number of ports
  28 +//
  29 +#define MAXPORTS 32
  30 +
  31 +//
  32 +// terminal size
  33 +//
  34 +#define MAXROWS 50
  35 +#define MAXCOLS 80
  36 +
  37 +//
  38 +// cursor states
  39 +//
  40 +#define CS_HIDE 0x00
  41 +#define CS_SHOW 0x01
  42 +
  43 +//
  44 +// ascii definitions
  45 +//
  46 +#define ASCII_BEL 0x07
  47 +#define ASCII_BS 0x08
  48 +#define ASCII_LF 0x0A
  49 +#define ASCII_CR 0x0D
  50 +#define ASCII_XON 0x11
  51 +#define ASCII_XOFF 0x13
  52 +
  53 +//
  54 +// data structures
  55 +//
  56 +struct TTYInfoStruct
  57 +{
  58 + HANDLE hCommPort, hReaderStatus, hWriter ;
  59 + DWORD dwEventFlags;
  60 + CHAR Screen[MAXCOLS * MAXROWS];
  61 + CHAR chFlag, chXON, chXOFF;
  62 + WORD wXONLimit, wXOFFLimit;
  63 + DWORD fRtsControl;
  64 + DWORD fDtrControl;
  65 + BOOL fConnected, fTransferring, fRepeating,
  66 + fLocalEcho, fNewLine,
  67 + fDisplayErrors, fAutowrap,
  68 + fCTSOutFlow, fDSROutFlow, fDSRInFlow,
  69 + fXonXoffOutFlow, fXonXoffInFlow,
  70 + fTXafterXoffSent,
  71 + fNoReading, fNoWriting, fNoEvents, fNoStatus,
  72 + fDisplayTimeouts;
  73 + BYTE bPort, bByteSize, bParity, bStopBits ;
  74 + DWORD dwBaudRate ;
  75 + WORD wCursorState ;
  76 + HFONT hTTYFont ;
  77 + LOGFONT lfTTYFont ;
  78 + DWORD rgbFGColor ;
  79 + COMMTIMEOUTS timeoutsorig;
  80 + COMMTIMEOUTS timeoutsnew;
  81 + int xSize, ySize, xScroll, yScroll, xOffset, yOffset,
  82 + nColumn, nRow, xChar, yChar , nCharPos;
  83 +#if 1//def __TOPWELL_EDIT__
  84 + DWORD rgbBGColor ;
  85 + BOOL DownloadReday;
  86 + DWORD tickcountFinish; //Íê³ÉÏÂÔØµÄʱ¼ä
  87 + BYTE unOpenedPortAry[255];
  88 +
  89 + char szFileName[MAX_PATH];
  90 +
  91 + HANDLE hFile;
  92 + DWORD dwFileSize;
  93 + DWORD dwPacketSize, dwMaxPackets;
  94 + DWORD dwRead;
  95 + char buff_Binfile[1024*1024*3];
  96 +
  97 + #endif
  98 +} TTYInfo;
  99 +
  100 +//
  101 +// macros ( for easier readability )
  102 +//
  103 +#define COMDEV( x ) (x.hCommPort)
  104 +#define CURSORSTATE( x ) (x.wCursorState)
  105 +#define PORT( x ) (x.bPort)
  106 +#define SCREEN( x ) (x.Screen)
  107 +#define CONNECTED( x ) (x.fConnected)
  108 +#define TRANSFERRING( x ) (x.fTransferring)
  109 +#define REPEATING( x ) (x.fRepeating)
  110 +#define LOCALECHO( x ) (x.fLocalEcho)
  111 +#define NEWLINE( x ) (x.fNewLine)
  112 +#define AUTOWRAP( x ) (x.fAutowrap)
  113 +#define BYTESIZE( x ) (x.bByteSize)
  114 +#define PARITY( x ) (x.bParity)
  115 +#define STOPBITS( x ) (x.bStopBits)
  116 +#define BAUDRATE( x ) (x.dwBaudRate)
  117 +#define HTTYFONT( x ) (x.hTTYFont)
  118 +#define LFTTYFONT( x ) (x.lfTTYFont)
  119 +#define FGCOLOR( x ) (x.rgbFGColor)
  120 +#define XSIZE( x ) (x.xSize)
  121 +#define YSIZE( x ) (x.ySize)
  122 +#define XSCROLL( x ) (x.xScroll)
  123 +#define YSCROLL( x ) (x.yScroll)
  124 +#define XOFFSET( x ) (x.xOffset)
  125 +#define YOFFSET( x ) (x.yOffset)
  126 +#define COLUMN( x ) (x.nColumn)
  127 +#define ROW( x ) (x.nRow)
  128 +#define XCHAR( x ) (x.xChar)
  129 +#define YCHAR( x ) (x.yChar)
  130 +#define DISPLAYERRORS( x ) (x.fDisplayErrors)
  131 +#define TIMEOUTSORIG( x ) (x.timeoutsorig)
  132 +#define TIMEOUTSNEW( x ) (x.timeoutsnew)
  133 +#define WRITERTHREAD( x ) (x.hWriter)
  134 +#define READSTATTHREAD( x ) (x.hReaderStatus)
  135 +#define EVENTFLAGS( x ) (x.dwEventFlags)
  136 +#define FLAGCHAR( x ) (x.chFlag)
  137 +#define SCREENCHAR( x, col, row ) (x.Screen[row * MAXCOLS + col])
  138 +
  139 +#define DTRCONTROL( x ) (x.fDtrControl)
  140 +#define RTSCONTROL( x ) (x.fRtsControl)
  141 +#define XONCHAR( x ) (x.chXON)
  142 +#define XOFFCHAR( x ) (x.chXOFF)
  143 +#define XONLIMIT( x ) (x.wXONLimit)
  144 +#define XOFFLIMIT( x ) (x.wXOFFLimit)
  145 +#define CTSOUTFLOW( x ) (x.fCTSOutFlow)
  146 +#define DSROUTFLOW( x ) (x.fDSROutFlow)
  147 +#define DSRINFLOW( x ) (x.fDSRInFlow)
  148 +#define XONXOFFOUTFLOW( x ) (x.fXonXoffOutFlow)
  149 +#define XONXOFFINFLOW( x ) (x.fXonXoffInFlow)
  150 +#define TXAFTERXOFFSENT(x) (x.fTXafterXoffSent)
  151 +
  152 +#define NOREADING( x ) (x.fNoReading)
  153 +#define NOWRITING( x ) (x.fNoWriting)
  154 +#define NOEVENTS( x ) (x.fNoEvents)
  155 +#define NOSTATUS( x ) (x.fNoStatus)
  156 +#define SHOWTIMEOUTS( x ) (x.fDisplayTimeouts)
  157 +
  158 +//---------------------------------------------------------------------------
  159 +// End of File: ttyinfo.h
  160 +//---------------------------------------------------------------------------
  161 +
  162 +
  163 +
24 164 //
25 165 // GLOBAL DEFINES
26 166 //
... ... @@ -54,13 +194,13 @@
54 194 //
55 195 // window coords
56 196 //
57   -#define MAXXWINDOW 750
58   -#define MAXYWINDOW 530
  197 +#define MAXXWINDOW 350
  198 +#define MAXYWINDOW 230
59 199 #define STARTXWINDOW 80
60 200 #define STARTYWINDOW 70
61 201
62   -#define SETTINGSFACTOR 5
63   -#define STATUSFACTOR 5
  202 +#define SETTINGSFACTOR 3
  203 +#define STATUSFACTOR 2
64 204
65 205 //
66 206 // window timer ids
... ... @@ -76,7 +216,7 @@ HACCEL ghAccel;
76 216 HWND ghwndMain;
77 217 HWND ghWndToolbarDlg;
78 218 HWND ghWndStatusDlg;
79   -HWND ghWndTTY;
  219 +HWND ghWndMessage;
80 220 HWND ghWndHidden;
81 221
82 222 //
... ... @@ -190,7 +330,7 @@ void InitNewFont( LOGFONT, COLORREF );
190 330 //
191 331 void OpenSettingsToolbar( HWND );
192 332 void OpenStatusToolbar( HWND );
193   -BOOL CmdAbout( HWND );
  333 +//BOOL CmdAbout( HWND );
194 334
195 335 //
196 336 // TTY functions
... ... @@ -222,7 +362,8 @@ DWORD GetAFrequency( void );
222 362 // Buffer manipulation functions
223 363 //
224 364 void OutputABufferToWindow( HWND, char *, DWORD );
225   -void OutputABuffer( HWND, char *, DWORD );
  365 +void OutputABuffer( char *);
  366 +void OutputAclorBuffer( char *,DWORD);
226 367 BOOL ClearTTYContents( void );
227 368
228 369 //
... ...
... ... @@ -18,124 +18,3 @@
18 18 // constant definitions
19 19 //
20 20
21   -//
22   -// hard coded maximum number of ports
23   -//
24   -#define MAXPORTS 32
25   -
26   -//
27   -// terminal size
28   -//
29   -#define MAXROWS 50
30   -#define MAXCOLS 80
31   -
32   -//
33   -// cursor states
34   -//
35   -#define CS_HIDE 0x00
36   -#define CS_SHOW 0x01
37   -
38   -//
39   -// ascii definitions
40   -//
41   -#define ASCII_BEL 0x07
42   -#define ASCII_BS 0x08
43   -#define ASCII_LF 0x0A
44   -#define ASCII_CR 0x0D
45   -#define ASCII_XON 0x11
46   -#define ASCII_XOFF 0x13
47   -
48   -//
49   -// data structures
50   -//
51   -struct TTYInfoStruct
52   -{
53   - HANDLE hCommPort, hReaderStatus, hWriter ;
54   - DWORD dwEventFlags;
55   - CHAR Screen[MAXCOLS * MAXROWS];
56   - CHAR chFlag, chXON, chXOFF;
57   - WORD wXONLimit, wXOFFLimit;
58   - DWORD fRtsControl;
59   - DWORD fDtrControl;
60   - BOOL fConnected, fTransferring, fRepeating,
61   - fLocalEcho, fNewLine,
62   - fDisplayErrors, fAutowrap,
63   - fCTSOutFlow, fDSROutFlow, fDSRInFlow,
64   - fXonXoffOutFlow, fXonXoffInFlow,
65   - fTXafterXoffSent,
66   - fNoReading, fNoWriting, fNoEvents, fNoStatus,
67   - fDisplayTimeouts;
68   - BYTE bPort, bByteSize, bParity, bStopBits ;
69   - DWORD dwBaudRate ;
70   - WORD wCursorState ;
71   - HFONT hTTYFont ;
72   - LOGFONT lfTTYFont ;
73   - DWORD rgbFGColor ;
74   - COMMTIMEOUTS timeoutsorig;
75   - COMMTIMEOUTS timeoutsnew;
76   - int xSize, ySize, xScroll, yScroll, xOffset, yOffset,
77   - nColumn, nRow, xChar, yChar , nCharPos;
78   -
79   -} TTYInfo;
80   -
81   -//
82   -// macros ( for easier readability )
83   -//
84   -#define COMDEV( x ) (x.hCommPort)
85   -#define CURSORSTATE( x ) (x.wCursorState)
86   -#define PORT( x ) (x.bPort)
87   -#define SCREEN( x ) (x.Screen)
88   -#define CONNECTED( x ) (x.fConnected)
89   -#define TRANSFERRING( x ) (x.fTransferring)
90   -#define REPEATING( x ) (x.fRepeating)
91   -#define LOCALECHO( x ) (x.fLocalEcho)
92   -#define NEWLINE( x ) (x.fNewLine)
93   -#define AUTOWRAP( x ) (x.fAutowrap)
94   -#define BYTESIZE( x ) (x.bByteSize)
95   -#define PARITY( x ) (x.bParity)
96   -#define STOPBITS( x ) (x.bStopBits)
97   -#define BAUDRATE( x ) (x.dwBaudRate)
98   -#define HTTYFONT( x ) (x.hTTYFont)
99   -#define LFTTYFONT( x ) (x.lfTTYFont)
100   -#define FGCOLOR( x ) (x.rgbFGColor)
101   -#define XSIZE( x ) (x.xSize)
102   -#define YSIZE( x ) (x.ySize)
103   -#define XSCROLL( x ) (x.xScroll)
104   -#define YSCROLL( x ) (x.yScroll)
105   -#define XOFFSET( x ) (x.xOffset)
106   -#define YOFFSET( x ) (x.yOffset)
107   -#define COLUMN( x ) (x.nColumn)
108   -#define ROW( x ) (x.nRow)
109   -#define XCHAR( x ) (x.xChar)
110   -#define YCHAR( x ) (x.yChar)
111   -#define DISPLAYERRORS( x ) (x.fDisplayErrors)
112   -#define TIMEOUTSORIG( x ) (x.timeoutsorig)
113   -#define TIMEOUTSNEW( x ) (x.timeoutsnew)
114   -#define WRITERTHREAD( x ) (x.hWriter)
115   -#define READSTATTHREAD( x ) (x.hReaderStatus)
116   -#define EVENTFLAGS( x ) (x.dwEventFlags)
117   -#define FLAGCHAR( x ) (x.chFlag)
118   -#define SCREENCHAR( x, col, row ) (x.Screen[row * MAXCOLS + col])
119   -
120   -#define DTRCONTROL( x ) (x.fDtrControl)
121   -#define RTSCONTROL( x ) (x.fRtsControl)
122   -#define XONCHAR( x ) (x.chXON)
123   -#define XOFFCHAR( x ) (x.chXOFF)
124   -#define XONLIMIT( x ) (x.wXONLimit)
125   -#define XOFFLIMIT( x ) (x.wXOFFLimit)
126   -#define CTSOUTFLOW( x ) (x.fCTSOutFlow)
127   -#define DSROUTFLOW( x ) (x.fDSROutFlow)
128   -#define DSRINFLOW( x ) (x.fDSRInFlow)
129   -#define XONXOFFOUTFLOW( x ) (x.fXonXoffOutFlow)
130   -#define XONXOFFINFLOW( x ) (x.fXonXoffInFlow)
131   -#define TXAFTERXOFFSENT(x) (x.fTXafterXoffSent)
132   -
133   -#define NOREADING( x ) (x.fNoReading)
134   -#define NOWRITING( x ) (x.fNoWriting)
135   -#define NOEVENTS( x ) (x.fNoEvents)
136   -#define NOSTATUS( x ) (x.fNoStatus)
137   -#define SHOWTIMEOUTS( x ) (x.fDisplayTimeouts)
138   -
139   -//---------------------------------------------------------------------------
140   -// End of File: ttyinfo.h
141   -//---------------------------------------------------------------------------
... ...
Please register or login to post a comment