|
|
1.1 root 1: #define FBUFFSIZE (1024 * 8)
2: #define HEADERSIZE 8
3: #define LINESIZE 80
4: #define MAXLINES 4096
5: #define MAXSEGS 100
6: #define NOTSHARED 0
7: #define SHORTPAGE 24
8: #define LONGPAGE 42
9: #define SEGSIZE (1024 * 4)
10: #define TRUE 1
11: #define FALSE 0
12: #define TABSIZE 8
13: #define MAXTABS (LINESIZE / TABSIZE)
14: #define FOFLAG 0x0001 /* set openflag to open file or fail */
15: #define CFFLAG 0x0010 /* set openflag to create file or fail */
16: #define WCFLAG 0x0012 /* set openflag to replace or create file */
17:
18: #define inline(U, U1) ( ((unsigned char)U < (unsigned char)LINESIZE) && \
19: ((unsigned char)U >= (unsigned char)U1) )
20:
21:
22: struct Line {
23: unsigned short linenum; /* line nuber (only valid during
24: compaction) */
25: unsigned char deleted; /* flag to mark line as deleted */
26: unsigned char linelength; /* characters in line */
27: char firstchar[1]; /* first character in line */
28: };
29:
30: extern unsigned short TotalLines; /* num of entries in line table */
31: extern struct Line far *LineTable[MAXLINES]; /* the line table */
32:
33: struct SegEntry{
34: unsigned short segment; /* seletor of segment */
35: unsigned short free; /* num of free bytes in segment */
36: unsigned short flags; /* various flags */
37: };
38: extern unsigned short TotalSegs; /* num of entries in seg table */
39: extern struct SegEntry SegTable[MAXSEGS];
40:
41: extern char fbuffer[FBUFFSIZE];
42: extern unsigned short bufflength;
43: extern unsigned short bytesread;
44:
45: extern unsigned char ScrBuff[LONGPAGE][LINESIZE];
46: extern unsigned char EditBuff[LINESIZE];
47: extern unsigned short EditBuffDirty;
48:
49: extern unsigned short PageSize;
50: extern unsigned short Mode43Set;
51:
52: extern unsigned short CurRow, CurCol;
53: extern unsigned short TopRow;
54:
55: extern unsigned short LinesMarked, CharsMarked;
56: extern unsigned short MarkedLine[MAXLINES], MarkedChar[LINESIZE];
57:
58: extern unsigned short ForeNorm, BackNorm, ForeHilite, BackHilite, Fore25, Back25;
59:
60: extern char *fname;
61: extern unsigned short fhandle;
62:
63: extern void dispatch();
64: extern short readfile(unsigned short);
65: extern short openfile(char *, unsigned short *, unsigned short);
66: extern void closefile(unsigned short);
67: extern short addline(unsigned short, unsigned char, unsigned char *);
68: extern void freesegs();
69: extern void clearscr();
70: extern void drawscr(unsigned short);
71: extern short allocseg();
72: extern void getline(unsigned short, unsigned char *);
73: extern void del();
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.