home *** CD-ROM | disk | FTP | other *** search
- /*
- ** Data.c
- **
- ** Global data structures.
- **
- ** Copyright © 1990-1996 by Olaf `Olsen' Barthel
- ** All Rights Reserved
- */
-
- #ifndef _GLOBAL_H
- #include "Global.h"
- #endif
-
- BOOL DebugFlag;
-
- /* Libraries. */
-
- struct ExecBase *SysBase;
- struct DosLibrary *DOSBase;
- struct Library *GTLayoutBase;
-
- struct IntuitionBase *IntuitionBase;
- struct GfxBase *GfxBase;
- struct RxsLib *RexxSysBase;
- struct LocaleBase *LocaleBase;
- struct Library *GadToolsBase,
- *DiskfontBase,
- *UtilityBase,
- *AslBase,
- *IFFParseBase,
- *CxBase,
- *IconBase,
- *LayersBase,
- *TranslatorBase,
- *WorkbenchBase,
- *AmigaGuideBase,
- *XEmulatorBase,
- *XProtocolBase,
- *DataTypesBase;
- struct Device *TimerBase,
- *ConsoleDevice;
- BOOL Kick30;
-
- /* Device locking. */
-
- struct Library *OwnDevUnitBase;
- BYTE OwnDevBit = -1;
-
- /* Timer device. */
-
- struct timerequest *TimeRequest;
- struct MsgPort *TimePort;
-
- /* Console device. */
-
- struct IOStdReq *ConsoleRequest;
- struct KeyMap *KeyMap;
- BPTR KeySegment;
-
- /* Screen & Windows. */
-
- struct Screen *Screen,
- *SharedScreen;
- struct Window *Window;
- ULONG OpenWindowTag;
- LONG WindowWidth,
- WindowHeight,
- WindowLeft,
- WindowTop;
- struct Window *StatusWindow;
- UWORD StatusOffset;
- struct RastPort StatusRastPort,
- *StatusRPort;
- UWORD StatusDisplayLeft,
- StatusDisplayTop,
- StatusDisplayWidth,
- StatusDisplayHeight;
- APTR OldWindowPtr;
- UBYTE ScreenTitle[80];
- UBYTE WindowTitle[80];
- UBYTE DepthMask;
- LONG RenderPens[4],
- MappedPens[2][32],
- SafeTextPen;
- struct DrawInfo *DrawInfo;
- UWORD *Pens;
- LONG ScreenWidth,
- ScreenHeight;
- BOOL UseMasking;
-
- struct BlockMarker *WindowMarker;
- BOOL Marking;
-
- /* Graphics rendering. */
-
- struct ViewPort *VPort;
- struct RastPort *RPort;
- struct Region *ClipRegion,
- *OldRegion;
- struct TextFont *GFX,
- *CurrentFont,
- *UserTextFont;
- WORD UserFontHeight,
- UserFontWidth,
- UserFontBase;
- UBYTE UserFontName[MAX_FILENAME_LENGTH];
- struct TextFont *TextFont;
- WORD TextFontHeight,
- TextFontWidth,
- TextFontBase;
- struct TTextAttr TextAttr;
- UBYTE TextFontName[MAX_FILENAME_LENGTH];
- struct TTextAttr UserFont;
- struct TagItem TagDPI[2];
- APTR VisualInfo;
- UWORD FontRightExtend;
-
- ULONG (* ReadAPen)(struct RastPort *RPort);
- ULONG (* ReadBPen)(struct RastPort *RPort);
- ULONG (* ReadDrMd)(struct RastPort *RPort);
- ULONG (* SetMask)(struct RastPort *RPort,ULONG Mask);
- ULONG (* GetMask)(struct RastPort *RPort);
-
- UWORD MonoPens[] =
- {
- 0,1,1,1,1,1,0,0,1, 0,1,1,(UWORD)~0
- };
-
- UWORD StandardPens[] =
- {
- 0,1,1,2,1,3,1,0,2, 1,2,1,(UWORD)~0
- };
-
- UWORD ANSIPens[] =
- {
- 0,4,7,7,4,6,7,0,6, 0,7,0,(UWORD)~0
- };
-
- UWORD EGAPens[] =
- {
- 0,15,15,15,8,7,15,0,7, 0,15,0,(UWORD)~0
- };
-
- UWORD NewEGAPens[] =
- {
- 7,0,0,15,0,6,0,7,15, 0,15,0,(UWORD)~0
- };
-
- UWORD AtomicColours[16] =
- {
- 0x000,
- 0xDDD,
- 0x000,
- 0x000,
- 0x000,
- 0x000,
- 0x000,
- 0x000,
- 0x000,
- 0x000,
- 0x000,
- 0x000,
- 0x000,
- 0x000,
- 0x000,
- 0x000
- };
-
- UWORD EGAColours[16] =
- {
- 0x000, /* Black. */
- 0xA00, /* Dark red. */
- 0x0A0, /* Dark green. */
- 0xA60, /* Dark yellow (orange). */
- 0x00A, /* Dark blue. */
- 0xA0A, /* Dark magenta.*/
- 0x0AA, /* Dark cyan. */
- 0xBBB, /* Light grey. */
- 0x666, /* Dark grey. */
- 0xF00, /* Red. */
- 0x0F0, /* Green. */
- 0xFF0, /* Yellow. */
- 0x00F, /* Blue. */
- 0xF0F, /* Magenta. */
- 0x0FF, /* Cyan. */
- 0xFFF /* White. */
- };
-
- UWORD ANSIColours[16] =
- {
- 0x000, /* Black. */
- 0xF00, /* Red. */
- 0x0F0, /* Green. */
- 0xFF0, /* Yellow. */
- 0x00F, /* Blue. */
- 0xF0F, /* Magenta. */
- 0x0FF, /* Cyan. */
- 0xFFF, /* White. */
-
- 0x000, /* Black. */
- 0xF00, /* Red. */
- 0x0F0, /* Green. */
- 0xFF0, /* Yellow. */
- 0x00F, /* Blue. */
- 0xF0F, /* Magenta. */
- 0x0FF, /* Cyan. */
- 0xFFF /* White. */
- };
-
- UWORD DefaultColours[32],
- BlinkColours[32],
- NormalColours[32],
- StandardColours[32],
- PaletteSize = 16;
-
- /* Line/Column offset tables. */
-
- LONG *OffsetXTable,
- *OffsetYTable;
-
- /* DOS data. */
-
- struct Process *ThisProcess;
- struct Process *StatusProcess;
- struct Process *RexxProcess;
- struct MsgPort *TermRexxPort;
- struct WBStartup *WBenchMsg;
- BPTR WBenchLock;
- struct TermPort *TermPort;
- BYTE CheckBit = -1;
- BOOL InRexx;
- struct timeval LimitTime;
- UBYTE LimitMacro[MAX_FILENAME_LENGTH];
-
- /* Character conversion. */
-
- struct InputEvent *FakeInputEvent;
-
- /* Serial I/O. */
-
- struct IOExtSer *ReadRequest;
- struct IOExtSer *WriteRequest;
- struct MsgPort *ReadPort;
- struct MsgPort *WritePort;
- UBYTE ReadChar;
- UBYTE *ReadBuffer,
- *HostReadBuffer;
- ULONG DTERate,
- SerialBufferSize;
- BOOL ProcessIO = TRUE;
- BOOL FirstInvocation;
-
- UBYTE NewDevice[MAX_FILENAME_LENGTH];
- LONG NewUnit;
- BOOL UseNewDevice,
- UseNewUnit;
-
- LONG BaudRates[] =
- {
- 110, 300, 600, 1200, 2400, 4800, 7200,
- 9600, 12000, 14400, 19200, 31250, 38400, 57600,
- 64000, 76800, 115200, 230400, 345600, 460800, 576000,
- 614400, 691200, 806400, 921600
- };
-
- WORD NumBaudRates = NUM_ELEMENTS(BaudRates);
-
- struct RendezvousSemaphore RendezvousSemaphore;
-
- /* Localization support. */
-
- struct Catalog *Catalog;
- struct Locale *Locale;
- STRPTR DecimalPoint;
- UBYTE ConvNumber[30],
- ConvNumber10[30];
-
- /* Hotkeys. */
-
- struct Hotkeys Hotkeys;
-
- /* Static default fonts. */
-
- struct TextAttr DefaultFont =
- {
- (UBYTE *)"topaz.font",
- 8,
- FS_NORMAL,
- FPF_ROMFONT | FPF_DESIGNED
- };
-
- struct TextAttr GFXFont =
- {
- (UBYTE *)"GFX.font",
- 8,
- FS_NORMAL,
- FPF_DISKFONT
- };
-
- /* Character lookup tables. */
-
- BYTE IsPrintable[256] =
- {
- 0,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,
- 0,1,0,1,0,0,0,0,0,0,0,1,0,0,0,0,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- };
-
- BYTE IsGlyph[256] =
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- };
-
- BYTE CharType[256] =
- {
- 0,0,0,0,0,0,0,0,0,0,6,0,0,7,0,0,
- 0,4,0,5,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 2,2,2,2,2,2,2,2,2,2,0,0,0,0,0,0,
- 0,0,0,0,0,3,1,1,1,1,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- };
-
- /* ISO -> IBM font conversion. */
-
- UBYTE IBMConversion[256] =
- {
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x08,0x09,0x0A,0x0B,0x0C,0x0D,0x00,0x00,
- 0x00,0x11,0x00,0x13,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1B,0x00,0x00,0x00,0x00,
- 0x20,0x21,0x22,0x23,0x24,0x25,0x26,0x27,0x28,0x29,0x2A,0x2B,0x2C,0x2D,0x2E,0x2F,
- 0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3A,0x3B,0x3C,0x3D,0x3E,0x3F,
- 0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4A,0x4B,0x4C,0x4D,0x4E,0x4F,
- 0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5A,0x5B,0x5C,0x5D,0x5E,0x5F,
- 0x60,0x61,0x62,0x63,0x64,0x65,0x66,0x67,0x68,0x69,0x6A,0x6B,0x6C,0x6D,0x6E,0x6F,
- 0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7A,0x7B,0x7C,0x7D,0x7E,0x7F,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0xAD,0x9B,0x9C,0x00,0x9D,0x00,0x15,0x00,0x00,0xA6,0x00,0x00,0x00,0xAE,0x00,
- 0xF8,0xF1,0xFD,0x00,0x00,0xE6,0x14,0xF9,0x00,0x00,0xA7,0xAF,0xAC,0xAB,0x00,0xA8,
- 0x00,0x00,0x00,0x00,0x8E,0x8F,0x92,0x80,0x00,0x90,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0xA5,0x00,0x00,0x00,0x00,0x99,0x00,0x00,0x00,0x00,0x00,0x9A,0x00,0x00,0xE1,
- 0x85,0xA0,0x83,0x00,0x84,0x86,0x91,0x87,0x8A,0x82,0x88,0x89,0x8D,0xA1,0x8C,0x00,
- 0x00,0xA4,0x95,0xA2,0x93,0x00,0x94,0x00,0x00,0x97,0xA3,0x96,0x81,0x00,0x00,0x98
- };
-
- /* IBM -> ISO font conversion. */
-
- UBYTE ISOConversion[256] =
- {
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x08,0x09,0x0A,0x0B,0x0C,0x0D,0x00,0x00,
- 0x00,0x11,0x00,0x13,0xB6,0xA7,0x00,0x00,0x00,0x00,0x00,0x1B,0x00,0x00,0x00,0x00,
- 0x20,0x21,0x22,0x23,0x24,0x25,0x26,0x27,0x28,0x29,0x2A,0x2B,0x2C,0x2D,0x2E,0x2F,
- 0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3A,0x3B,0x3C,0x3D,0x3E,0x3F,
- 0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4A,0x4B,0x4C,0x4D,0x4E,0x4F,
- 0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5A,0x5B,0x5C,0x5D,0x5E,0x5F,
- 0x60,0x61,0x62,0x63,0x64,0x65,0x66,0x67,0x68,0x69,0x6A,0x6B,0x6C,0x6D,0x6E,0x6F,
- 0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7A,0x7B,0x7C,0x7D,0x7E,0x7F,
- 0xC7,0xFC,0xE9,0xE2,0xE4,0xE0,0xE5,0xE7,0xEA,0xEB,0xE8,0x00,0xEE,0xEC,0xC4,0xC5,
- 0xC9,0xE6,0xC6,0xF4,0xF6,0xF2,0xFB,0xF9,0xFF,0xD6,0xDC,0xA2,0xA3,0xA5,0x00,0x00,
- 0xE1,0xED,0xF3,0xFA,0xF1,0xD1,0xAA,0xBA,0xBF,0x00,0x00,0xBD,0xBC,0xA1,0xAE,0xBB,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0xDF,0x00,0x00,0x00,0x00,0xB5,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0xB1,0x00,0x00,0x00,0x00,0x00,0x00,0xB0,0xB7,0x00,0x00,0x00,0xB2,0x00,0x00
- };
-
- /* Table of graphics characters. */
-
- BYTE GfxTable[256] =
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- };
-
- /* Special character treatment. */
-
- struct SpecialKey SpecialKeys[14] =
- {
- XOF, (JUMP)DoxON_xOFF, /* Halt data flow. */
- XON, (JUMP)DoxON_xOFF, /* Restart data flow. */
- BEL, (JUMP)DoBeep, /* Ring the bell. */
- BKS, (JUMP)DoBackspace, /* Erase a character. */
- ENT, (JUMP)DoLF_FF_VT, /* Enter key. */
- FFD, (JUMP)DoFF, /* Form feed. */
- VTB, (JUMP)DoLF_FF_VT, /* Vertical tab (huh?). */
- RET, (JUMP)DoCR, /* Return key. */
- TAB, (JUMP)DoTab, /* Move to next tab stop. */
- SI, (JUMP)DoShiftIn, /* Change to graphics mode */
- SO, (JUMP)DoShiftOut, /* Change out of graphics mode. */
- ENQ, (JUMP)DoEnq, /* Transmit answerback message. */
- ESC, (JUMP)DoEsc, /* Start new control sequence. */
- CSI, (JUMP)DoCsi /* Start new control sequence. */
- };
-
- JUMP *SpecialTable;
-
- BYTE AbortMap[256] =
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,1,0,1,2,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- };
-
- JUMP *AbortTable;
-
- CONTRANSFER ConDump,ConOutput,ConProcessData;
-
- /* Some more handy buffers. */
-
- UBYTE ARexxCommandBuffer[256],AmigaDOSCommandBuffer[256],DialNumberBuffer[256];
-
- /* Screen pull-down-menu. */
-
- struct NewMenu *TermMenu;
- WORD NumMenuEntries;
-
- struct SignalSemaphore MenuSemaphore;
- struct Menu *Menu;
- struct Image *AmigaGlyph,*CheckGlyph;
-
- /* Cross-hatch pattern. */
-
- ULONG Crosshatch = 0x5555AAAA;
-
- /* Configuration. */
-
- struct Configuration *Config,
- *PrivateConfig,
- *BackupConfig;
- struct SpeechConfig SpeechConfig;
- BOOL English = TRUE;
- BOOL Online,WasOnline;
- ULONG OnlineMinutes;
- struct SignalSemaphore OnlineSemaphore;
-
- UBYTE LastConfig[MAX_FILENAME_LENGTH];
- UBYTE DefaultPubScreenName[MAXPUBSCREENNAME + 1],
- SomePubScreenName[MAXPUBSCREENNAME + 1];
-
- WORD StatusStackPointer;
- WORD StatusStack[10];
- struct SignalSemaphore StatusSemaphore;
-
- /* xON/xOFF processing. */
-
- struct SignalSemaphore xONxOFF_Semaphore;
- LONG xONxOFF_Lock;
- BOOL xOFF_Enabled;
-
- /* Capture file. */
-
- struct Buffer *FileCapture;
- BPTR PrinterCapture;
- UBYTE CaptureName[MAX_FILENAME_LENGTH];
- BOOL StandardPrinterCapture,
- ControllerActive;
- LONG BufferFlushCount;
- COPTR CaptureData;
- BOOL RawCapture;
- ParseContext *ParserStuff;
-
- /* Buffer. */
-
- UBYTE **BufferLines;
- LONG Lines;
- struct SignalSemaphore BufferSemaphore;
- LONG MaxLines = 100;
- LONG BufferSpace;
- BOOL BufferClosed;
- BOOL BufferFrozen;
-
- struct MinList TextBufferHistory;
-
- /* Sound support.c */
-
- struct SoundConfig SoundConfig;
- BOOL SoundChanged;
-
- /* Phonebook. */
-
- PhonebookHandle *GlobalPhoneHandle;
- BOOL RebuildMenu;
- UBYTE Password[100];
- UBYTE UserName[100];
-
- UBYTE CurrentBBSName[40],
- CurrentBBSNumber[100],
- CurrentBBSComment[100];
-
- UBYTE LastPhone[MAX_FILENAME_LENGTH];
- UBYTE LastKeys[MAX_FILENAME_LENGTH];
- UBYTE LastMacros[MAX_FILENAME_LENGTH];
- UBYTE LastCursorKeys[MAX_FILENAME_LENGTH];
- UBYTE LastTranslation[MAX_FILENAME_LENGTH];
- UBYTE LastSpeech[MAX_FILENAME_LENGTH];
- UBYTE LastSound[MAX_FILENAME_LENGTH];
-
- struct MacroKeys *MacroKeys;
- struct CursorKeys *CursorKeys;
-
- /* Console stuff. */
-
- UBYTE *StripBuffer;
- UWORD LastLine,LastColumn,LastPixel;
- UWORD LastPrintableColumn;
- UWORD LastPrintablePixel;
- UWORD CharCellNominator,CharCellDenominator;
- UBYTE CurrentFontScale,FontScalingRequired,CurrentCharWidth;
- UBYTE Charset,Attributes,FgPen,BgPen;
- WORD CursorX,CursorY,Top,Bottom;
- BOOL UseRegion,RegionSet,InSequence,ConsoleQuiet,Blocking;
- BYTE *TabStops;
- UWORD TabStopMax;
- BYTE CharMode[2];
-
- BOOL VT52_Mode;
-
- BOOL ResetDisplay,
- FixScreenSize;
-
- struct SignalSemaphore TerminalSemaphore; /* Protection from shape changers */
-
- /* Flow filter. */
-
- STRPTR AttentionBuffers[SCAN_COUNT];
- BOOL BaudPending,UseFlow;
- UBYTE BaudBuffer[80],BaudCount;
-
- struct FlowInfo FlowInfo;
-
- UBYTE *DataHold;
- LONG DataSize;
-
- /* Transfer data. */
-
- BOOL BinaryTransfer = TRUE;
- LONG TransferAbortState;
- WORD TransferAbortCount;
- LONG TransferBits;
-
- CONTRANSFER ConTransfer;
-
- UBYTE *DownloadPath;
- BOOL Uploading;
- BOOL DidTransfer;
-
- struct Window *TransferWindow;
- UBYTE TransferTitleBuffer[256];
- BOOL TransferZoomed;
- STRPTR TransferWindowTitle;
-
- struct LayoutHandle *TransferHandle;
- struct List TransferInfoList;
-
- struct FileTransferInfo *FileTransferInfo;
-
- struct XPR_IO *XprIO;
- struct MinList Update_MsgList;
- WORD Update_MsgCount;
- UBYTE ProtocolOptsBuffer[256];
- BOOL NewOptions;
- BOOL XPRCommandSelected;
- UBYTE LastXprLibrary[MAX_FILENAME_LENGTH];
- UBYTE TransferProtocolName[MAX_FILENAME_LENGTH];
- BOOL UsesZModem,SendAbort,TransferAborted,TransferFailed,TransferError;
-
- struct Process *TransferProcess;
-
- /* The standard ZModem cancel sequence
- * (ten CAN chars followed by ten
- * BS chars).
- */
-
- UBYTE ZModemCancel[] =
- {
- 24,24,24,24,24,24,24,24,24,24,
- 8, 8, 8, 8, 8, 8, 8, 8, 8, 8
- };
-
- /* Pay per minute. */
-
- LONG PayPerUnit[2];
- LONG SecPerUnit[2];
- struct List *PatternList,
- *ActivePattern;
- UBYTE LastPattern[MAX_FILENAME_LENGTH];
- BOOL PatternsChanged;
- struct SignalSemaphore PatternSemaphore;
-
- /* Execute a command/script. */
-
- ULONG BlockNestCount;
- BOOL WeAreBlocking;
-
- /* Dial list. */
-
- BOOL SendStartup;
- LONG FirstDialMenu = -1;
- struct List RexxDialMsgList;
-
- /* This variable stores the current state of the
- * dialing menu items.
- */
-
- BOOL DialItemsAvailable = TRUE;
-
- /* TermMain data. */
-
- BOOL ReleaseSerial;
- BOOL MainTerminated,
- IconTerminated = TRUE,
- DoIconify,
- DoDial = DIAL_IGNORE,
- KeepQuiet;
-
- BOOL ConfigChanged,PhonebookChanged,TranslationChanged,
- MacroChanged,CursorKeysChanged,FastMacrosChanged,
- HotkeysChanged,SpeechChanged,BufferChanged;
-
- /* String gadget hooks. */
-
- struct Window *CommandWindow;
- struct Gadget *CommandGadget;
-
- BOOL ClipInput,
- ClipXerox,
- ClipPrefix;
-
- /* Text sending. */
-
- UBYTE SendPrompt[256];
- LONG SendPromptLen;
- SENDLINE SendLine;
-
- /* Packet window. */
-
- struct Window *PacketWindow;
- struct Gadget *PacketGadgetArray[2];
- struct Menu *PacketMenu;
- struct Gadget *PacketGadgetList;
- struct List PacketHistoryList;
-
- /* Some more colour control flags. */
-
- BOOL Initializing,LoadColours;
-
- /* The character raster. */
-
- UBYTE *Raster,*RasterAttr;
- LONG RasterWidth,RasterHeight;
- struct SignalSemaphore RasterSemaphore;
- BOOL RasterEnabled = TRUE;
-
- /* Generic lists. */
-
- struct GenericList *GenericListTable[GLIST_COUNT];
-
- /* File version test. */
-
- ULONG VersionProps[2] =
- {
- ID_TERM,
- ID_VERS
- };
-
- /* Window stack. */
-
- struct Window *TopWindow;
-
- struct Window *WindowStack[5];
- WORD WindowStackPtr;
-
- /* Global term ID. */
-
- LONG TermID;
- UBYTE TermIDString[MAXPUBSCREENNAME + 1];
- UBYTE RexxPortName[256];
-
- /* Fast! macros. */
-
- struct List FastMacroList;
- LONG FastMacroCount;
- UBYTE LastFastMacros[MAX_FILENAME_LENGTH];
- struct Window *FastWindow;
- WORD FastWindowLeft = -1,
- FastWindowTop = -1,
- FastWindowHeight = -1;
-
- /* Double-buffered file locking. */
-
- struct List DoubleBufferList;
- struct SignalSemaphore DoubleBufferSemaphore;
-
- /* XEM interface. */
-
- struct XEM_IO *XEM_IO;
- ULONG XEM_Signal;
- struct XEmulatorHostData XEM_HostData;
- UBYTE *OptionTitle;
- struct List XEM_MacroList;
- struct XEmulatorMacroKey *XEM_MacroKeys;
- UBYTE EmulationName[MAX_FILENAME_LENGTH];
-
- /* Screen scrolling support. */
-
- UWORD ScrollLineFirst,ScrollLineLast,
- ScrollLineCount;
- struct ScrollLineInfo *ScrollLines;
-
- /* term review buffer. */
-
- struct Window *ReviewWindow;
-
- /* Background information. */
-
- ULONG BytesIn,
- BytesOut;
- struct DateStamp SessionStart;
- struct Window *InfoWindow;
-
- /* Gadget support routines */
-
- LONG InterWidth,
- InterHeight;
-
- /* Character translation. */
-
- struct TranslationEntry **SendTable,
- **ReceiveTable;
-
- /* Window alignment information. */
-
- struct WindowInfo WindowInfoTable[] =
- {
- WINDOW_PACKET, WC_ALIGNBELOW|WC_EXPANDWIDTH, 0,0,0,0,
- WINDOW_STATUS, WC_ALIGNRIGHT, 0,0,0,0,
- WINDOW_REVIEW, WC_ALIGNTOP|WC_EXPANDWIDTH, 0,0,0,0,
- WINDOW_FAST, WC_ALIGNTOP|WC_ALIGNSIDE, 0,0,0,0,
- WINDOW_MAIN, NULL, -1,-1,0,0,
- WINDOW_CHARTAB, WC_ALIGNTOP, 0,0,0,0,
- WINDOW_QUEUE, WC_ALIGNLEFT|WC_ALIGNTOP, 0,0,0,0,
- WINDOW_FILETRANSFER, WC_ALIGNLEFT|WC_ALIGNTOP, 0,0,0,0,
-
- -1
- };
-
- struct SignalSemaphore WindowInfoSemaphore;
-
- /* New user interface. */
-
- struct Hook LocaleHook;
-
- /* AmigaGuide hook. */
-
- struct Hook GuideHook;
-
- /* Special queue management. */
-
- struct MsgQueue *SpecialQueue;
-
- /* Window and Screen backfill hook. */
-
- struct Hook BackfillHook;
-
- ULONG BackfillTag;
-
- /* Intercept data going through SerWrite. */
-
- BYPASS SerWriteBypass;
-
- /* The incredibly shrinking file name. */
-
- UBYTE ShrunkenName[MAX_FILENAME_LENGTH],
- OriginalName[MAX_FILENAME_LENGTH];
-
- /* Terminal emulation task. */
-
- struct MsgQueue *TerminalQueue;
-
- /* AppIcon data. */
-
- STATIC UWORD DropData[304] =
- {
- 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
- 0x0000,0x0000,0x2000,0x1000,0x0000,0x0000,0xF000,0x1000,
- 0x0000,0x0001,0x9800,0x1000,0x0000,0x0003,0x1C3E,0x1000,
- 0x0000,0x0003,0xFC30,0x1000,0x0000,0x0000,0x01FF,0x1000,
- 0x0000,0x0000,0x01FC,0x1000,0x0000,0x0060,0x0000,0x1000,
- 0x0000,0x001F,0xFFFF,0xF000,0x0000,0x0000,0x0000,0x0000,
- 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0700,0x0000,
- 0x07FF,0xFFFE,0x0700,0x0000,0x07FF,0xFFEE,0x0700,0x0000,
- 0x0755,0x555E,0x0700,0x0000,0x07AA,0xAAAE,0x1FC0,0x0000,
- 0x0755,0x555E,0x0F80,0x0000,0x07AA,0xAAAE,0x0700,0x0000,
- 0x0755,0x555E,0x0200,0x0000,0x07AA,0xAAAE,0x0000,0x0000,
- 0x0755,0x555E,0x0000,0x0000,0x07FF,0xFFFE,0x0000,0x0000,
- 0x07FF,0xFFFE,0x0000,0x0000,0x07FF,0xFFFC,0x0000,0x0000,
- 0x0000,0x0000,0x0000,0x0000,0x7FFF,0xFFFF,0xE000,0x0000,
- 0x7FFF,0xFEFF,0xE000,0x0000,0x7FFF,0xFEF0,0x0000,0x0000,
- 0x7FE5,0x54E7,0xFF80,0x0000,0x7FFF,0xFF8E,0x0FC0,0x0000,
- 0x7FFF,0xFFBD,0xFCF0,0x0000,0x0FFF,0xFFFF,0xFEE0,0x0000,
- 0x0FFF,0xFFFB,0xD700,0x0000,0x0000,0x0007,0xAF80,0x0000,
- 0x0000,0x000F,0xFF80,0x0000,0x0000,0x0007,0xFF00,0x0000,
-
- 0x0000,0x007F,0xFFFE,0x0000,0x0000,0x007F,0xFFFF,0x8000,
- 0x0000,0x0060,0x20FF,0xE000,0x0000,0x0060,0xF0FF,0xE000,
- 0x0000,0x0061,0x98FF,0xE000,0x0000,0x0063,0x1CBF,0xE000,
- 0x0000,0x0063,0xFCB7,0xE000,0x0000,0x007F,0xFDFF,0xE000,
- 0x0000,0x007F,0xFDFF,0xE000,0x0000,0x007F,0xFFFF,0xE000,
- 0x0000,0x001F,0xFFFF,0xE000,0x0000,0x0000,0x0000,0x0000,
- 0x0000,0x0000,0x0000,0x0000,0x07FF,0xFFFC,0x0000,0x0000,
- 0x0FFF,0xFFFC,0x0000,0x0000,0x0EAA,0xAABC,0x0000,0x0000,
- 0x0F55,0x555C,0x0000,0x0000,0x0EAA,0xAABC,0x0000,0x0000,
- 0x0F55,0x555C,0x0000,0x0000,0x0EAA,0xAABC,0x0000,0x0000,
- 0x0F55,0x555C,0x0000,0x0000,0x0EAA,0xAABC,0x0000,0x0000,
- 0x0FFF,0xFFFC,0x0000,0x0000,0x0FFF,0xFFFC,0x0000,0x0000,
- 0x0FFF,0xFFFC,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
- 0x7FFF,0xFFFF,0xC000,0x0000,0xFFFF,0xFFFF,0xC000,0x0000,
- 0xFFEA,0xABFF,0xC000,0x0000,0xFFE0,0x03FF,0xFF00,0x0000,
- 0xFFFF,0xFFFF,0xFFC0,0x0000,0xFFFF,0xFFFF,0xF9E0,0x0000,
- 0x0000,0x007F,0xFDE0,0x0000,0x1FFF,0xFFC7,0xAF00,0x0000,
- 0x0000,0x0007,0x5F00,0x0000,0x0000,0x000F,0xFF80,0x0000,
- 0x0000,0x001F,0xFF00,0x0000,0x0000,0x0000,0x0000,0x0000
- };
-
- STATIC struct Image DropImage =
- {
- 0,0,
- 52,38,2,
- DropData,
- 0x03,0x00,
- NULL
- };
-
- struct DiskObject DropIcon =
- {
- WB_DISKMAGIC,
- WB_DISKVERSION,
-
- {NULL,
- 175,18,
- 52,39,
- 0x0005,
- 0x0003,
- 0x0001,
- &DropImage,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL},
-
- WBTOOL,
- NULL,
- NULL,
- NO_ICON_POSITION,
- NO_ICON_POSITION,
- NULL,
- NULL,
- 8192
- };
-
- /* Remember some of the incoming data. */
-
- BOOL RememberOutput,
- RememberInput,
-
- Recording,
- RecordingLine;
-
- /* Trap settings. */
-
- BOOL WatchTraps;
- BOOL TrapsChanged;
- UBYTE LastTraps[MAX_FILENAME_LENGTH];
- ParseContext *TrapStuff;
-
- /* CR/LF receiver translation data. */
-
- TRANSLATEFUNC Translate_CR_LF;
-
- /* End of line conversion labels. */
-
- STRPTR EOL_Labels[] =
- {
- "-",
- "«CR»",
- "«LF»",
- "«CR»«LF»",
- "«LF»«CR»",
-
- NULL
- };
-
-
- /**********************************************************************/
-
-
- /* Character access tables. */
-
- STATIC UBYTE Table0[256] =
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- };
-
- STATIC UBYTE Table1[256] =
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- };
-
- STATIC UBYTE Table2[256] =
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 1,1,1,1,1,1,1,1,1,1,0,1,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- };
-
- STATIC UBYTE Table3[256] =
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,1,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- };
-
- STATIC UBYTE Table4[256] =
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 1,1,1,1,1,1,1,1,1,1,0,0,0,1,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- };
-
- STATIC UBYTE Table5[256] =
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 1,1,1,1,1,1,1,1,1,1,0,1,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- };
-
- STATIC UBYTE Table6[256] =
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- };
-
- STATIC UBYTE Table7[256] =
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- };
-
- STATIC UBYTE Table8[256] =
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,
- 1,1,1,1,1,1,1,1,1,1,0,1,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- };
-
- STATIC UBYTE Term0[256] =
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- };
-
- /* This follows the control code information. */
-
- struct ControlCode ANSICode[] =
- {
- /* Single character sequences */
-
- 'A', Table0, NULL, 0 , 1, (EPTR)VT52_CursorUp, /* Cursor up */
- 'B', Table0, NULL, 0 , 1, (EPTR)VT52_CursorDown, /* Cursor down */
- 'C', Table0, NULL, 0 , 1, (EPTR)VT52_CursorRight, /* Cursor right */
- 'D', Table0, NULL, 0 , 1, (EPTR)VT52_CursorLeft, /* Cursor left */
- 'F', Table0, NULL, 0 , 1, (EPTR)Ignore, /* Enter graphics mode */
- 'G', Table0, NULL, 0 , 1, (EPTR)Ignore, /* Exit graphics mode */
- 'H', Table0, NULL, 0 , 1, (EPTR)VT52_CursorHome, /* Cursor to home */
- 'I', Table0, NULL, 0 , 1, (EPTR)VT52_RevLF, /* Reverse line feed */
- 'J', Table0, NULL, 0 , 1, (EPTR)VT52_EraseEOS, /* Erase to end of screen */
- 'K', Table0, NULL, 0 , 1, (EPTR)VT52_EraseEOL, /* Erase to end of line */
- 'W', Table0, NULL, 0 , 1, (EPTR)VT52_PrintOn, /* Enter printer controller mode */
- 'X', Table0, NULL, 0 , 1, (EPTR)VT52_PrintOff, /* Exit printer controller mode */
- ']', Table0, NULL, 0 , 1, (EPTR)VT52_PrintScreen, /* Print screen */
- 'V', Table0, NULL, 0 , 1, (EPTR)VT52_PrintLine, /* Print cursor line */
- '^', Table0, NULL, 0 , 1, (EPTR)Ignore, /* Enter auto print mode */
- '_', Table0, NULL, 0 , 1, (EPTR)Ignore, /* Exit auto print mode */
-
- /* 'D', Table0, NULL, 0 , 1, (EPTR)CursorScrollDown, // IND */
- 'M', Table0, NULL, 0 , 1, (EPTR)CursorScrollUp, /* RI */
- 'E', Table0, NULL, 0 , 1, (EPTR)NextLine, /* NEL */
- '7', Table0, NULL, 0 , 1, (EPTR)SaveCursor, /* DECSC */
- '8', Table0, NULL, 0 , 1, (EPTR)LoadCursor, /* DECRC */
- '=', Table0, NULL, 0 , 1, (EPTR)NumericAppMode, /* DECPAM */
- '>', Table0, NULL, 0 , 1, (EPTR)NumericAppMode, /* DECPNM */
- 'N', Table0, NULL, 0 , 1, (EPTR)Ignore, /* SS2 */
- 'O', Table0, NULL, 0 , 1, (EPTR)Ignore, /* SS3 */
- /* 'H', Table0, NULL, 0 , 1, (EPTR)SetTab, // HTS */
- 'P', Table0, NULL, 0 , 1, (EPTR)Ignore, /* DCS */
- '/', Table0, NULL, 0 , 1, (EPTR)Ignore, /* ST */
- 'Z', Table0, NULL, 0 , 1, (EPTR)RequestTerminal, /* DECID */
- 'c', Table0, NULL, 0 , 1, (EPTR)Reset, /* RIS */
- '<', Table0, NULL, 0 , 1, (EPTR)VT52_EnterANSI, /* VT52 "Enter ANSI mode" */
- '~', Table0, NULL, 0 , 1, (EPTR)Ignore, /* LS1R */
- 'n', Table0, NULL, 0 , 1, (EPTR)Ignore, /* LS2 */
- 0x7D, Table0, NULL, 0 , 1, (EPTR)Ignore, /* LS2R */
- 'o', Table0, NULL, 0 , 1, (EPTR)Ignore, /* LS3 */
- '|', Table0, NULL, 0 , 1, (EPTR)Ignore, /* LS3R */
-
- /* Double character sequences */
-
- '[', Table0, NULL, 's', 2, (EPTR)SaveCursor,
- '[', Table0, NULL, 'u', 2, (EPTR)LoadCursor,
-
- '(', Table0, NULL, 'A', 2, (EPTR)FontStuff, /* SCS */
- '(', Table0, NULL, 'B', 2, (EPTR)FontStuff, /* ASCII font */
- '(', Table0, NULL, '0', 2, (EPTR)FontStuff, /* DEC special graphics font */
- '(', Table0, NULL, '<', 2, (EPTR)Ignore, /* DEC supplemental font */
- '(', Table0, NULL, '4', 2, (EPTR)Ignore, /* Dutch font */
- '(', Table0, NULL, '5', 2, (EPTR)Ignore, /* Finnish font */
- '(', Table0, NULL, 'C', 2, (EPTR)Ignore, /* Finnish font */
- '(', Table0, NULL, 'R', 2, (EPTR)Ignore, /* French font */
- '(', Table0, NULL, 'Q', 2, (EPTR)Ignore, /* French Canadian font */
- '(', Table0, NULL, 'K', 2, (EPTR)Ignore, /* German font */
- '(', Table0, NULL, 'Y', 2, (EPTR)Ignore, /* Italian font */
- '(', Table0, NULL, '6', 2, (EPTR)Ignore, /* Norwegian/Danish font */
- '(', Table0, NULL, 'E', 2, (EPTR)Ignore, /* Norwegian/Danish font */
- '(', Table0, NULL, 'Z', 2, (EPTR)Ignore, /* Spanish font */
- '(', Table0, NULL, '7', 2, (EPTR)Ignore, /* Swedish font */
- '(', Table0, NULL, 'H', 2, (EPTR)Ignore, /* Swedish font */
- '(', Table0, NULL, '=', 2, (EPTR)Ignore, /* Swiss font */
-
- ')', Table0, NULL, 'A', 2, (EPTR)FontStuff, /* SCS */
- ')', Table0, NULL, 'B', 2, (EPTR)FontStuff, /* ASCII font */
- ')', Table0, NULL, '0', 2, (EPTR)FontStuff, /* DEC special graphics font */
- ')', Table0, NULL, '<', 2, (EPTR)Ignore, /* DEC supplemental font */
- ')', Table0, NULL, '4', 2, (EPTR)Ignore, /* Dutch font */
- ')', Table0, NULL, '5', 2, (EPTR)Ignore, /* Finnish font */
- ')', Table0, NULL, 'C', 2, (EPTR)Ignore, /* Finnish font */
- ')', Table0, NULL, 'R', 2, (EPTR)Ignore, /* French font */
- ')', Table0, NULL, 'Q', 2, (EPTR)Ignore, /* French Canadian font */
- ')', Table0, NULL, 'K', 2, (EPTR)Ignore, /* German font */
- ')', Table0, NULL, 'Y', 2, (EPTR)Ignore, /* Italian font */
- ')', Table0, NULL, '6', 2, (EPTR)Ignore, /* Norwegian/Danish font */
- ')', Table0, NULL, 'E', 2, (EPTR)Ignore, /* Norwegian/Danish font */
- ')', Table0, NULL, 'Z', 2, (EPTR)Ignore, /* Spanish font */
- ')', Table0, NULL, '7', 2, (EPTR)Ignore, /* Swedish font */
- ')', Table0, NULL, 'H', 2, (EPTR)Ignore, /* Swedish font */
- ')', Table0, NULL, '=', 2, (EPTR)Ignore, /* Swiss font */
-
- '+', Table0, NULL, 'A', 2, (EPTR)Ignore, /* British font */
- '+', Table0, NULL, 'B', 2, (EPTR)Ignore, /* ASCII font */
- '+', Table0, NULL, '0', 2, (EPTR)Ignore, /* DEC special graphics font */
- '+', Table0, NULL, '<', 2, (EPTR)Ignore, /* DEC supplemental font */
- '+', Table0, NULL, '4', 2, (EPTR)Ignore, /* Dutch font */
- '+', Table0, NULL, '5', 2, (EPTR)Ignore, /* Finnish font */
- '+', Table0, NULL, 'C', 2, (EPTR)Ignore, /* Finnish font */
- '+', Table0, NULL, 'R', 2, (EPTR)Ignore, /* French font */
- '+', Table0, NULL, 'Q', 2, (EPTR)Ignore, /* French Canadian font */
- '+', Table0, NULL, 'K', 2, (EPTR)Ignore, /* German font */
- '+', Table0, NULL, 'Y', 2, (EPTR)Ignore, /* Italian font */
- '+', Table0, NULL, '6', 2, (EPTR)Ignore, /* Norwegian/Danish font */
- '+', Table0, NULL, 'E', 2, (EPTR)Ignore, /* Norwegian/Danish font */
- '+', Table0, NULL, 'Z', 2, (EPTR)Ignore, /* Spanish font */
- '+', Table0, NULL, '7', 2, (EPTR)Ignore, /* Swedish font */
- '+', Table0, NULL, 'H', 2, (EPTR)Ignore, /* Swedish font */
- '+', Table0, NULL, '=', 2, (EPTR)Ignore, /* Swiss font */
-
- '*', Table0, NULL, 'A', 2, (EPTR)Ignore, /* British font */
- '*', Table0, NULL, 'B', 2, (EPTR)Ignore, /* ASCII font */
- '*', Table0, NULL, '0', 2, (EPTR)Ignore, /* DEC special graphics font */
- '*', Table0, NULL, '<', 2, (EPTR)Ignore, /* DEC supplemental font */
- '*', Table0, NULL, '4', 2, (EPTR)Ignore, /* Dutch font */
- '*', Table0, NULL, '5', 2, (EPTR)Ignore, /* Finnish font */
- '*', Table0, NULL, 'C', 2, (EPTR)Ignore, /* Finnish font */
- '*', Table0, NULL, 'R', 2, (EPTR)Ignore, /* French font */
- '*', Table0, NULL, 'Q', 2, (EPTR)Ignore, /* French Canadian font */
- '*', Table0, NULL, 'K', 2, (EPTR)Ignore, /* German font */
- '*', Table0, NULL, 'Y', 2, (EPTR)Ignore, /* Italian font */
- '*', Table0, NULL, '6', 2, (EPTR)Ignore, /* Norwegian/Danish font */
- '*', Table0, NULL, 'E', 2, (EPTR)Ignore, /* Norwegian/Danish font */
- '*', Table0, NULL, 'Z', 2, (EPTR)Ignore, /* Spanish font */
- '*', Table0, NULL, '7', 2, (EPTR)Ignore, /* Swedish font */
- '*', Table0, NULL, 'H', 2, (EPTR)Ignore, /* Swedish font */
- '*', Table0, NULL, '=', 2, (EPTR)Ignore, /* Swiss font */
-
- '#', Table0, NULL, '3', 2, (EPTR)ScaleFont, /* DECHDL (top half) */
- '#', Table0, NULL, '4', 2, (EPTR)ScaleFont, /* DECHDL (bottom half) */
- '#', Table0, NULL, '5', 2, (EPTR)ScaleFont, /* DECSWL */
- '#', Table0, NULL, '6', 2, (EPTR)ScaleFont, /* DECDWL */
- '#', Table0, NULL, '8', 2, (EPTR)AlignmentTest, /* DECALN */
- ' ', Table0, NULL, 'F', 2, (EPTR)Ignore, /* S7C1T */
- ' ', Table0, NULL, 'G', 2, (EPTR)Ignore, /* C8C1T */
-
- /* Three character sequence */
-
- 'Y', Table7, NULL, 0 , 3, (EPTR)VT52_SetCursor, /* Direct cursor address */
-
- /* Multiple character sequences */
-
- '(', Table6, Term0, 'D', 0, (EPTR)Ignore, /* SCS */
-
- '[', Table3, NULL, 'i', 0, (EPTR)PrinterController, /* Print mode */
-
- '[', Table3, NULL, 'n', 0, (EPTR)RequestInformation, /* DSR */
- '[', Table3, NULL, 'c', 0, (EPTR)RequestTerminal, /* DA */
- '[', Table3, NULL, 'x', 0, (EPTR)RequestTerminalParams, /* DECREQTPARM */
- '[', Table3, NULL, 'h', 0, (EPTR)SetSomething, /* Terminal modes */
- '[', Table3, NULL, 'l', 0, (EPTR)SetSomething, /* Terminal modes */
-
- '[', Table4, NULL, 'h', 0, (EPTR)Ignore,
- '[', Table5, NULL, 'p', 0, (EPTR)Ignore, /* DECSCL */
-
- '[', Table1, NULL, 'A', 0, (EPTR)MoveCursor, /* CUU */
- '[', Table1, NULL, 'B', 0, (EPTR)MoveCursor, /* CUD */
- '[', Table1, NULL, 'C', 0, (EPTR)MoveCursor, /* CUF */
- '[', Table1, NULL, 'D', 0, (EPTR)MoveCursor, /* CUB */
- '[', Table1, NULL, 'G', 0, (EPTR)MoveColumn,
- '[', Table3, NULL, 'K', 0, (EPTR)EraseLine, /* EL/DECSEL */
- '[', Table3, NULL, 'J', 0, (EPTR)EraseScreen, /* ED/DECSED */
- '[', Table1, NULL, 'P', 0, (EPTR)EraseCharacters, /* DCH */
- '[', Table1, NULL, 'X', 0, (EPTR)EraseCharacters, /* ECH (sort of) */
- '[', Table1, NULL, '@', 0, (EPTR)InsertCharacters, /* ICH */
- '[', Table1, NULL, 'L', 0, (EPTR)InsertLine, /* IL */
- '[', Table1, NULL, 'M', 0, (EPTR)ClearLine, /* DL */
- '[', Table1, NULL, 'g', 0, (EPTR)SetTabs, /* TBC */
- '[', Table5, NULL, 'q', 0, (EPTR)Ignore, /* DECSCA */
-
- '[', Table2, NULL, 'H', 0, (EPTR)SetAbsolutePosition, /* CUP */
- '[', Table2, NULL, 'f', 0, (EPTR)SetTopPosition, /* HVP */
- '[', Table2, NULL, 'm', 0, (EPTR)SetAttributes, /* SGR */
- '[', Table2, NULL, 'y', 0, (EPTR)Ignore, /* DECTST */
- '[', Table2, NULL, 'r', 0, (EPTR)SetRegion, /* DECSTBM */
-
- '[', Table1, NULL, 'S', 0, (EPTR)ScrollUp,
- '[', Table1, NULL, 'T', 0, (EPTR)ScrollDown,
- '[', Table1, NULL, 'E', 0, (EPTR)MoveCursorDown,
- '[', Table1, NULL, 'F', 0, (EPTR)MoveCursorUp,
-
- '[', Table8, NULL, 'z', 0, (EPTR)Ignore, /* DEC private stuff */
- '[', Table8, NULL, '{', 0, (EPTR)Ignore /* DEC private stuff */
- };
-
- WORD NumCodes = NUM_ELEMENTS(ANSICode);
-
-
- /**********************************************************************/
-
-
- UWORD PenTable[16];
- UBYTE TextAttributeTable[16];
- WORD ForegroundPen,
- BackgroundPen;
-
-
- /**********************************************************************/
-
-
- BOOL ChatMode;
- BOOL UseInternalZModem;
- ULONG SliderType;
- ULONG CycleType;
-
-
- /**********************************************************************/
-
-
- struct ColourTable *NormalColourTable,
- *BlinkColourTable,
- *ANSIColourTable,
- *EGAColourTable,
- *DefaultColourTable,
- *MonoColourTable;
-
-
- /**********************************************************************/
-
-
- UBYTE Language[80];
-
-
- /**********************************************************************/
-
-
- STRPTR CharCodes[256] =
- {
- "NUL","SOH","STX","ETX","EOT","ENQ","ACK","BEL","BS" ,"HT" ,"LF" ,"VT" ,"FF" ,"CR" ,"SO" ,"SI" ,
- "DLE","DC1","DC2","DC3","DC4","NAK","SYN","ETB","CAN","EM" ,"SUB","ESC","FS" ,"GS" ,"RS" ,"US" ,
- "SP" , "!" , "\"", "#" , "$" , "%" , "&" , "'" , "(" , ")" , "*" , "+" , "," , "-" , "." , "/" ,
- "0" , "1" , "2" , "3" , "4" , "5" , "6" , "7" , "8" , "9" , ":" , ";" , "<" , "=" , ">" , "?" ,
- "@" , "A" , "B" , "C" , "D" , "E" , "F" , "G" , "H" , "I" , "J" , "K" , "L" , "M" , "N" , "O" ,
- "P" , "Q" , "R" , "S" , "T" , "U" , "V" , "W" , "X" , "Y" , "Z" , "[" , "\\", "]" , "^" , "_" ,
- "`" , "a" , "b" , "c" , "d" , "e" , "f" , "g" , "h" , "i" , "j" , "k" , "l" , "m" , "n" , "o" ,
- "p" , "q" , "r" , "s" , "t" , "u" , "v" , "w" , "x" , "y" , "z" , "{" , "|" , "}" , "~" ,"DEL",
- "128","129","130","131","132","133","134","135","136","137","138","139","140","141","SS2","SS3",
- "DCS","145","146","147","148","149","150","151","152","153","154","CSI","ST" ,"OSC","PM" ,"APC",
- "NBS", "¡" , "¢" , "£" , "¤" , "¥" , "¦" , "§" , "¨" , "©" , "ª" , "«" , "¬" ,"SHY", "®" , "¯" ,
- "°" , "±" , "²" , "³" , "´" , "µ" , "¶" , "·" , "¸" , "¹" , "º" , "»" , "¼" , "½" , "¾" , "¿" ,
- "À" , "Á" , "Â" , "Ã" , "Ä" , "Å" , "Æ" , "Ç" , "È" , "É" , "Ê" , "Ë" , "Ì" , "Í" , "Î" , "Ï" ,
- "Ð" , "Ñ" , "Ò" , "Ó" , "Ô" , "Õ" , "Ö" , "×" , "Ø" , "Ù" , "Ú" , "Û" , "Ü" , "Ý" , "Þ" , "ß" ,
- "à" , "á" , "â" , "ã" , "ä" , "å" , "æ" , "ç" , "è" , "é" , "ê" , "ë" , "ì" , "í" , "î" , "ï" ,
- "ð" , "ñ" , "ò" , "ó" , "ô" , "õ" , "ö" , "÷" , "ø" , "ù" , "ú" , "û" , "ü" , "ý" , "þ" , "ÿ"
- };
-
-
- /**********************************************************************/
-
-
- struct Window *MatrixWindow;
-
-
- /**********************************************************************/
-
-
- SAVERASTER SaveRaster;
-
-
- /**********************************************************************/
-
-
- struct SignalSemaphore BufferTaskSemaphore;
- struct TextBufferInfo *BufferInfoData;
-
- struct SignalSemaphore ReviewTaskSemaphore;
- struct TextBufferInfo *ReviewInfoData;
-
-
- /**********************************************************************/
-
-
- STRPTR BooleanMappings[] =
- {
- "OFF",
- "ON",
- NULL
- };
-
- STATIC STRPTR TransferMappings1[] =
- {
- "XPR",
- "PROGRAM",
- NULL
- };
-
- STATIC STRPTR TransferMappings2[] =
- {
- "XPR",
- "PROGRAM",
- "DEFAULT",
- NULL
- };
-
- STATIC STRPTR TransferMappings3[] =
- {
- "XPR",
- "PROGRAM",
- "DEFAULT",
- "INTERNAL",
- NULL
- };
-
- STATIC STRPTR DestructiveBSMappings[] =
- {
- "OFF",
- "OVERSTRIKE",
- "SHIFT",
- NULL
- };
-
- STRPTR ParityMappings[] =
- {
- "NONE",
- "EVEN",
- "ODD",
- "MARK",
- "SPACE",
- NULL
- };
-
- STRPTR HandshakingMappings[] =
- {
- "NONE",
- "RTSCTS",
- "RTSCTSDSR",
- NULL
- };
-
- STRPTR DuplexMappings[] =
- {
- "FULL",
- "HALF",
- NULL
- };
-
- STATIC STRPTR ColourMappings[] =
- {
- "FOUR",
- "EIGHT",
- "SIXTEEN",
- "TWO",
- NULL
- };
-
- STATIC STRPTR StatusMappings[] =
- {
- "DISABLED",
- "STANDARD",
- "COMPRESSED",
- NULL
- };
-
- STATIC STRPTR BellMappings[] =
- {
- "NONE",
- "VISIBLE",
- "AUDIBLE",
- "BOTH",
- "SYSTEM",
- NULL
- };
-
- STATIC STRPTR AlertMappings[] =
- {
- "NONE",
- "BELL",
- "SCREEN",
- "BOTH",
- NULL
- };
-
- STATIC STRPTR EmulationMappings[] =
- {
- "INTERNAL",
- "ATOMIC",
- "TTY",
- "EXTERNAL",
- "HEX",
- NULL
- };
-
- STATIC STRPTR FontMappings[] =
- {
- "STANDARD",
- "IBM",
- "IBMRAW",
- NULL
- };
-
- STATIC STRPTR EOL_Mappings[] =
- {
- "IGNORE",
- "CR",
- "LF",
- "CRLF",
- "LFCR",
- NULL
- };
-
- STATIC STRPTR IdentifyMappings[] =
- {
- "IGNORE",
- "FILETYPE",
- "SOURCE",
- NULL
- };
-
- STATIC STRPTR ApplicationMappings[] =
- {
- "STANDARD",
- "APPLICATION",
- NULL
- };
-
- STATIC STRPTR FontScaleMappings[] =
- {
- "NORMAL",
- "HALF",
- NULL
- };
-
- STATIC STRPTR ScrollMappings[] =
- {
- "JUMP",
- "SMOOTH",
- NULL
- };
-
- STATIC STRPTR SexMappings[] =
- {
- "MALE",
- "FEMALE",
- NULL
- };
-
- STATIC STRPTR OnlineMappings[] =
- {
- "TIME",
- "COST",
- "BOTH",
- NULL
- };
-
- STATIC STRPTR AutoDateMappings[] =
- {
- "NAME",
- "INCLUDE",
- NULL
- };
-
- STATIC STRPTR PacingMappings[] =
- {
- "DIRECT",
- "ECHO",
- "ANYECHO",
- "PROMPT",
- "DELAY",
- "KEYBOARD",
- NULL
- };
-
- STATIC STRPTR OpenBufferMappings[] =
- {
- "TOP",
- "END",
- NULL
- };
-
- STATIC STRPTR BufferPositionMappings[] =
- {
- "LEFT",
- "MID",
- "RIGHT",
- NULL
- };
-
- STATIC STRPTR OwnDevUnitRequestMappings[] =
- {
- "RELEASE",
- "RELEASERETRY",
- "IGNORE",
- NULL
- };
-
- STATIC STRPTR TransferErrorNotifyMappings[] =
- {
- "NEVER",
- "ALWAYS",
- "START",
- "END",
- NULL
- };
-
- STATIC STRPTR DialModeMappings[] =
- {
- "PULSE",
- "TONE",
- "MODEM",
- "ISDN",
- NULL
- };
-
- STATIC STRPTR RequesterModeMappings[] =
- {
- "CENTRE",
- "PREFS",
- "IGNORE",
- NULL
- };
-
- STATIC STRPTR BufferModeMappings[] =
- {
- "DATAFLOW",
- "REVIEW",
- NULL
- };
-
- STATIC STRPTR IdentificationMappings[] =
- {
- "VT200",
- "VT102",
- "VT101",
- "VT100",
- NULL
- };
-
- struct AttributeEntry AttributeTable[] =
- {
- 0, "TERM", INFO_STEM, TRUE, NULL, ATTR_APPLICATION,
-
- 1, "VERSION", INFO_TEXT, TRUE, NULL, ATTR_APPLICATION_VERSION,
- 1, "SCREEN", INFO_TEXT, TRUE, NULL, ATTR_APPLICATION_SCREEN,
-
- 1, "SESSION", INFO_STEM, TRUE, NULL, ATTR_APPLICATION_SESSION,
- 2, "ONLINE", INFO_BOOLEAN, TRUE, NULL, ATTR_APPLICATION_SESSION_ONLINE,
- 2, "SESSIONSTART", INFO_TEXT, TRUE, NULL, ATTR_APPLICATION_SESSION_SESSIONSTART,
- 2, "BYTESSENT", INFO_NUMERIC, TRUE, NULL, ATTR_APPLICATION_SESSION_BYTESSENT,
- 2, "BYTESRECEIVED", INFO_NUMERIC, TRUE, NULL, ATTR_APPLICATION_SESSION_BYTESRECEIVED,
- 2, "CONNECTMESSAGE", INFO_TEXT, TRUE, NULL, ATTR_APPLICATION_SESSION_CONNECTMESSAGE,
- 2, "BBSNAME", INFO_TEXT, TRUE, NULL, ATTR_APPLICATION_SESSION_BBSNAME,
- 2, "BBSNUMBER", INFO_TEXT, TRUE, NULL, ATTR_APPLICATION_SESSION_BBSNUMBER,
- 2, "BBSCOMMENT", INFO_TEXT, TRUE, NULL, ATTR_APPLICATION_SESSION_BBSCOMMENT,
- 2, "USERNAME", INFO_TEXT, TRUE, NULL, ATTR_APPLICATION_SESSION_USERNAME,
- 2, "ONLINEMINUTES", INFO_NUMERIC, TRUE, NULL, ATTR_APPLICATION_SESSION_ONLINEMINUTES,
- 2, "ONLINECOST", INFO_NUMERIC, TRUE, NULL, ATTR_APPLICATION_SESSION_ONLINECOST,
-
- 1, "AREXX", INFO_TEXT, TRUE, NULL, ATTR_APPLICATION_AREXX,
- 1, "LASTERROR", INFO_NUMERIC, TRUE, NULL, ATTR_APPLICATION_LASTERROR,
-
- 1, "TERMINAL", INFO_STEM, TRUE, NULL, ATTR_APPLICATION_TERMINAL,
- 2, "ROWS", INFO_NUMERIC, TRUE, NULL, ATTR_APPLICATION_TERMINAL_ROWS,
- 2, "COLUMNS", INFO_NUMERIC, TRUE, NULL, ATTR_APPLICATION_TERMINAL_COLUMNS,
-
- 1, "BUFFER", INFO_STEM, TRUE, NULL, ATTR_APPLICATION_BUFFER,
- 2, "SIZE", INFO_NUMERIC, TRUE, NULL, ATTR_APPLICATION_BUFFER_SIZE,
-
- 0, "SERIALPREFS", INFO_STEM, FALSE, NULL, ATTR_PREFS_SERIAL,
- 1, "BAUDRATE", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_SERIAL_BAUDRATE,
- 1, "BREAKLENGTH", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_SERIAL_BREAKLENGTH,
- 1, "BUFFERSIZE", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_SERIAL_BUFFERSIZE,
- 1, "DEVICENAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_SERIAL_DEVICENAME,
- 1, "UNIT", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_SERIAL_UNIT,
- 1, "BITSPERCHAR", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_SERIAL_BITSPERCHAR,
- 1, "PARITYMODE", INFO_MAPPED, FALSE, ParityMappings, ATTR_PREFS_SERIAL_PARITYMODE,
- 1, "STOPBITS", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_SERIAL_STOPBITS,
- 1, "HANDSHAKINGMODE", INFO_MAPPED, FALSE, HandshakingMappings, ATTR_PREFS_SERIAL_HANDSHAKINGMODE,
- 1, "DUPLEXMODE", INFO_MAPPED, FALSE, DuplexMappings, ATTR_PREFS_SERIAL_DUPLEXMODE,
- 1, "INTERNALXONXOFF", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SERIAL_XONXOFF,
- 1, "XONXOFF", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SERIAL_XONXOFF,
- 1, "HIGHSPEED", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SERIAL_HIGHSPEED,
- 1, "SHARED", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SERIAL_SHARED,
- 1, "STRIPBIT8", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SERIAL_STRIPBIT8,
- 1, "CARRIERCHECK", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SERIAL_CARRIERCHECK,
- 1, "PASSXONXOFFTHROUGH", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SERIAL_PASSXONXOFFTHROUGH,
- 1, "QUANTUM", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_SERIAL_QUANTUM,
- 1, "USEOWNDEVUNIT", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SERIAL_USE_OWNDEVUNIT,
- 1, "OWNDEVUNITREQUESTS", INFO_MAPPED, FALSE, OwnDevUnitRequestMappings, ATTR_PREFS_SERIAL_OWNDEVUNIT_REQUEST,
- 1, "DIRECTCONNECTION", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SERIAL_DIRECT_CONNECTION,
- 1, "RELEASEWHENONLINE", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SERIAL_RELEASE_WHEN_ONLINE,
- 1, "RELEASEWHENDIALING", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SERIAL_RELEASE_WHEN_DIALING,
- 1, "NOODUIFSHARED", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SERIAL_NO_ODU_IF_SHARED,
- 1, "LOCALECHO", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SERIAL_LOCAL_ECHO,
-
- 0, "MODEMPREFS", INFO_STEM, FALSE, NULL, ATTR_PREFS_MODEM,
- 1, "MODEMINITTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_MODEM_MODEMINITTEXT,
- 1, "MODEMEXITTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_MODEM_MODEMEXITTEXT,
- 1, "MODEMHANGUPTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_MODEM_MODEMHANGUPTEXT,
- 1, "DIALPREFIXTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_MODEM_DIALPREFIXTEXT,
- 1, "DIALSUFFIXTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_MODEM_DIALSUFFIXTEXT,
- 1, "NOCARRIERTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_MODEM_NOCARRIERTEXT,
- 1, "NODIALTONETEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_MODEM_NODIALTONETEXT,
- 1, "CONNECTTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_MODEM_CONNECTTEXT,
- 1, "VOICETEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_MODEM_VOICETEXT,
- 1, "RINGTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_MODEM_RINGTEXT,
- 1, "BUSYTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_MODEM_BUSYTEXT,
- 1, "OKTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_MODEM_OKTEXT,
- 1, "ERRORTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_MODEM_ERRORTEXT,
- 1, "REDIALDELAY", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_MODEM_REDIALDELAY,
- 1, "DIALRETRIES", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_MODEM_DIALRETRIES,
- 1, "DIALTIMEOUT", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_MODEM_DIALTIMEOUT,
- 1, "CONNECTAUTOBAUD", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_MODEM_CONNECTAUTOBAUD,
- 1, "HANGUPDROPSDTR", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_MODEM_HANGUPDROPSDTR,
- 1, "REDIALAFTERHANGUP", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_MODEM_REDIALAFTERHANGUP,
- 1, "NOCARRIERISBUSY", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_MODEM_NOCARRIERISBUSY,
- 1, "CONNECTLIMIT", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_MODEM_CONNECTLIMIT,
- 1, "CONNECTLIMITMACRO", INFO_TEXT, FALSE, NULL, ATTR_PREFS_MODEM_CONNECTLIMITMACRO,
- 1, "TIMETOCONNECT", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_MODEM_TIME_TO_CONNECT,
- 1, "VERBOSEDIALING", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_MODEM_VERBOSEDIALING,
- 1, "DIALMODE", INFO_MAPPED, FALSE, DialModeMappings, ATTR_PREFS_MODEM_DIAL_MODE,
- 1, "INTERDIALDELAY", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_MODEM_INTER_DIAL_DELAY,
- 1, "CHARSENDDELAY", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_MODEM_CHAR_SEND_DELAY,
- 1, "DONOTSENDCOMMANDS", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_MODEM_DO_NOT_SEND_COMMANDS,
- 1, "PBXPREFIXTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_MODEM_PBX_PREFIX,
- 1, "PBX", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_MODEM_PBX_MODE,
-
- 0, "COMMANDPREFS", INFO_STEM, FALSE, NULL, ATTR_PREFS_COMMANDS,
- 1, "STARTUPMACROTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_COMMANDS_STARTUPMACROTEXT,
- 1, "LOGINMACROTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_COMMANDS_LOGINMACROTEXT,
- 1, "LOGOFFMACROTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_COMMANDS_LOGOFFMACROTEXT,
- 1, "UPLOADMACROTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_COMMANDS_UPLOADMACROTEXT,
- 1, "DOWNLOADMACROTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_COMMANDS_DOWNLOADMACROTEXT,
-
- 0, "SCREENPREFS", INFO_STEM, FALSE, NULL, ATTR_PREFS_SCREEN,
- 1, "COLOURMODE", INFO_MAPPED, FALSE, ColourMappings, ATTR_PREFS_SCREEN_COLOURMODE,
- 1, "FONTNAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_SCREEN_FONTNAME,
- 1, "FONTSIZE", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_SCREEN_FONTSIZE,
- 1, "MAKESCREENPUBLIC", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SCREEN_MAKESCREENPUBLIC,
- 1, "SHANGHAIWINDOWS", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SCREEN_SHANGHAIWINDOWS,
- 1, "BLINKING", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SCREEN_BLINKING,
- 1, "FASTERLAYOUT", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SCREEN_FASTERLAYOUT,
- 1, "TITLEBAR", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SCREEN_TITLEBAR,
- 1, "STATUSLINEMODE", INFO_MAPPED, FALSE, StatusMappings, ATTR_PREFS_SCREEN_STATUSLINEMODE,
- 1, "USEPUBSCREEN", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SCREEN_USEWORKBENCH,
- 1, "PUBSCREENNAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_SCREEN_PUBSCREENNAME,
- 1, "ONLINEDISPLAY", INFO_MAPPED, FALSE, OnlineMappings, ATTR_PREFS_SCREEN_ONLINEDISPLAY,
- 1, "USEPENS", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SCREEN_USEPENS,
- 1, "WINDOWBORDER", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SCREEN_WINDOW_BORDER,
- 1, "SPLITSTATUS", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SCREEN_SPLIT_STATUS,
-
- 0, "TERMINALPREFS", INFO_STEM, FALSE, NULL, ATTR_PREFS_TERMINAL,
- 1, "BELLMODE", INFO_MAPPED, FALSE, BellMappings, ATTR_PREFS_TERMINAL_BELLMODE,
- 1, "ALERTMODE", INFO_MAPPED, FALSE, AlertMappings, ATTR_PREFS_MISC_ALERTMODE,
- 1, "EMULATIONMODE", INFO_MAPPED, FALSE, EmulationMappings, ATTR_PREFS_TERMINAL_EMULATIONMODE,
- 1, "FONTMODE", INFO_MAPPED, FALSE, FontMappings, ATTR_PREFS_TERMINAL_FONTMODE,
- 1, "SENDCRMODE", INFO_MAPPED, FALSE, EOL_Mappings, ATTR_PREFS_TERMINAL_SENDCRMODE,
- 1, "SENDLFMODE", INFO_MAPPED, FALSE, EOL_Mappings, ATTR_PREFS_TERMINAL_SENDLFMODE,
- 1, "RECEIVECRMODE", INFO_MAPPED, FALSE, EOL_Mappings, ATTR_PREFS_TERMINAL_RECEIVECRMODE,
- 1, "RECEIVELFMODE", INFO_MAPPED, FALSE, EOL_Mappings, ATTR_PREFS_TERMINAL_RECEIVELFMODE,
- 1, "NUMCOLUMNS", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_TERMINAL_NUMCOLUMNS,
- 1, "NUMLINES", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_TERMINAL_NUMLINES,
- 1, "KEYMAPNAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TERMINAL_KEYMAPNAME,
- 1, "EMULATIONNAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TERMINAL_EMULATIONNAME,
- 1, "FONTNAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TERMINAL_FONTNAME,
- 1, "FONTSIZE", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_TERMINAL_FONTSIZE,
- 1, "USETERMINALPROCESS", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_TERMINAL_USETERMINALPROCESS,
- 1, "AUTOSIZE", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_TERMINAL_AUTOSIZE,
-
- 0, "PATHPREFS", INFO_STEM, FALSE, NULL, ATTR_PREFS_PATHS,
- 1, "ASCIIUPLOADPATH", INFO_TEXT, FALSE, NULL, ATTR_PREFS_PATHS_ASCIIUPLOADPATH,
- 1, "ASCIIDOWNLOADPATH", INFO_TEXT, FALSE, NULL, ATTR_PREFS_PATHS_ASCIIDOWNLOADPATH,
- 1, "TEXTUPLOADPATH", INFO_TEXT, FALSE, NULL, ATTR_PREFS_PATHS_TEXTUPLOADPATH,
- 1, "TEXTDOWNLOADPATH", INFO_TEXT, FALSE, NULL, ATTR_PREFS_PATHS_TEXTDOWNLOADPATH,
- 1, "BINARYUPLOADPATH", INFO_TEXT, FALSE, NULL, ATTR_PREFS_PATHS_BINARYUPLOADPATH,
- 1, "BINARYDOWNLOADPATH", INFO_TEXT, FALSE, NULL, ATTR_PREFS_PATHS_BINARYDOWNLOADPATH,
- 1, "CONFIGPATH", INFO_TEXT, FALSE, NULL, ATTR_PREFS_PATHS_CONFIGPATH,
- 1, "EDITORNAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_PATHS_EDITORNAME,
- 1, "HELPFILENAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_PATHS_HELPFILENAME,
-
- 0, "MISCPREFS", INFO_STEM, FALSE, NULL, ATTR_PREFS_MISC,
- 1, "PRIORITY", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_MISC_PRIORITY,
- 1, "BACKUPCONFIG", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_MISC_BACKUPCONFIG,
- 1, "OPENFASTMACROPANEL", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_MISC_OPENFASTMACROPANEL,
- 1, "RELEASEDEVICE", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_MISC_RELEASEDEVICE,
- 1, "OVERRIDEPATH", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_MISC_OVERRIDEPATH,
- 1, "AUTOUPLOAD", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_MISC_AUTOUPLOAD,
- 1, "SETARCHIVEDBIT", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_MISC_SETARCHIVEDBIT,
- 1, "COMMENTMODE", INFO_MAPPED, FALSE, IdentifyMappings, ATTR_PREFS_MISC_COMMENTMODE,
- 1, "TRANSFERICONS", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_MISC_TRANSFERICONS,
- 1, "CREATEICONS", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_MISC_CREATEICONS,
- 1, "SIMPLEIO", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_MISC_SIMPLEIO,
- 1, "HIDEUPLOADICON", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_MISC_HIDE_UPLOAD_ICON,
- 1, "TRANSFERPERFMETER", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_MISC_TRANSFER_PERFMETER,
- 1, "IOBUFFERSIZE", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_MISC_IOBUFFERSIZE,
- 1, "PROTECTIVEMODE", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_MISC_OVERWRITE_WARNING,
- 1, "ALERTMODE", INFO_MAPPED, FALSE, AlertMappings, ATTR_PREFS_MISC_ALERTMODE,
- 1, "REQUESTERMODE", INFO_MAPPED, FALSE, RequesterModeMappings, ATTR_PREFS_MISC_REQUESTERMODE,
- 1, "REQUESTERWIDTH", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_MISC_REQUESTERWIDTH,
- 1, "REQUESTERHEIGHT", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_MISC_REQUESTERHEIGHT,
- 1, "WAITSTRING", INFO_TEXT, FALSE, NULL, ATTR_PREFS_MISC_WAITSTRING,
- 1, "WAITCOMMAND", INFO_TEXT, FALSE, NULL, ATTR_PREFS_MISC_WAITSTRING,
- 1, "CONSOLEWINDOW", INFO_TEXT, FALSE, NULL, ATTR_PREFS_MISC_CONSOLEWINDOW,
- 1, "SUPPRESSOUTPUT", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_MISC_SUPPRESSOUTPUT,
-
- 0, "CLIPBOARDPREFS", INFO_STEM, FALSE, NULL, ATTR_PREFS_CLIPBOARD,
- 1, "UNIT", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_CLIPBOARD_UNIT,
- 1, "LINEDELAY", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_CLIPBOARD_LINEDELAY,
- 1, "CHARDELAY", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_CLIPBOARD_CHARDELAY,
- 1, "INSERTPREFIXTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CLIPBOARD_INSERTPREFIXTEXT,
- 1, "INSERTSUFFIXTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CLIPBOARD_INSERTSUFFIXTEXT,
- 1, "LINEPROMPTTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CLIPBOARD_LINEPROMPT,
- 1, "TEXTPACING", INFO_MAPPED, FALSE, PacingMappings, ATTR_PREFS_CLIPBOARD_TEXTPACING,
- 1, "SENDTIMEOUT", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_CLIPBOARD_SENDTIMEOUT,
- 1, "CONVERTLF", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_CLIPBOARD_CONVERTLF,
-
- 0, "CAPTUREPREFS", INFO_STEM, FALSE, NULL, ATTR_PREFS_CAPTURE,
- 1, "LOGACTIONS", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_CAPTURE_LOGACTIONS,
- 1, "LOGCALLS", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_CAPTURE_LOGCALLS,
- 1, "LOGFILENAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CAPTURE_LOGFILENAME,
- 1, "MAXBUFFERSIZE", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_CAPTURE_MAXBUFFERSIZE,
- 1, "BUFFER", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_CAPTURE_BUFFER,
- 1, "CONNECTAUTOCAPTURE", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_CAPTURE_CONNECTAUTOCAPTURE,
- 1, "AUTOCAPTUREDATE", INFO_MAPPED, FALSE, AutoDateMappings, ATTR_PREFS_CAPTURE_AUTOCAPTUREDATE,
- 1, "CAPTUREFILTER", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_CAPTURE_CAPTUREFILTER,
- 1, "CAPTUREPATH", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CAPTURE_CAPTUREPATH,
- 1, "CALLLOGFILENAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CAPTURE_CALLLOGFILENAME,
- 1, "BUFFERSAVEPATH", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CAPTURE_BUFFERSAVEPATH,
- 1, "OPENBUFFERWINDOW", INFO_MAPPED, FALSE, OpenBufferMappings, ATTR_PREFS_CAPTURE_OPENBUFFERWINDOW,
- 1, "OPENBUFFERSCREEN", INFO_MAPPED, FALSE, OpenBufferMappings, ATTR_PREFS_CAPTURE_OPENBUFFERSCREEN,
- 1, "BUFFERSCREENPOSITION", INFO_MAPPED, FALSE, BufferPositionMappings, ATTR_PREFS_CAPTURE_BUFFERSCREENPOSITION,
- 1, "BUFFERWIDTH", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_CAPTURE_BUFFERWIDTH,
- 1, "REMEMBERBUFFERWINDOW", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_CAPTURE_REMEMBER_BUFFERWINDOW,
- 1, "REMEMBERBUFFERSCREEN", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_CAPTURE_REMEMBER_BUFFERSCREEN,
- 1, "SEARCHHISTORY", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_CAPTURE_SEARCH_HISTORY,
- 1, "CONVERTCHARACTERS", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_CAPTURE_CONVERTCHARACTERS,
- 1, "BUFFERMODE", INFO_MAPPED, FALSE, BufferModeMappings, ATTR_PREFS_CAPTURE_BUFFERMODE,
- 1, "BUFFERSAFETYMEMORY", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_CAPTURE_BUFFERSAFETYMEMORY,
-
- 0, "FILEPREFS", INFO_STEM, FALSE, NULL, ATTR_PREFS_FILE,
- 1, "TRANSFERPROTOCOLNAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_FILE_TRANSFERPROTOCOLNAME,
- 1, "TRANSLATIONFILENAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_FILE_TRANSLATIONFILENAME,
- 1, "MACROFILENAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_FILE_MACROFILENAME,
- 1, "CURSORFILENAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_FILE_CURSORFILENAME,
- 1, "FASTMACROFILENAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_FILE_FASTMACROFILENAME,
-
- 0, "EMULATIONPREFS", INFO_STEM, FALSE, NULL, ATTR_PREFS_EMULATION,
- 1, "IDENTIFICATION", INFO_MAPPED, FALSE, IdentificationMappings, ATTR_PREFS_EMULATION_IDENTIFICATION,
- 1, "CURSORMODE", INFO_MAPPED, FALSE, ApplicationMappings, ATTR_PREFS_EMULATION_CURSORMODE,
- 1, "NUMERICMODE", INFO_MAPPED, FALSE, ApplicationMappings, ATTR_PREFS_EMULATION_NUMERICMODE,
- 1, "CURSORWRAP", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_EMULATION_CURSORWRAP,
- 1, "LINEWRAP", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_EMULATION_LINEWRAP,
- 1, "INSERTMODE", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_EMULATION_INSERTMODE,
- 1, "NEWLINEMODE", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_EMULATION_NEWLINEMODE,
- 1, "FONTSCALEMODE", INFO_MAPPED, FALSE, FontScaleMappings, ATTR_PREFS_EMULATION_FONTSCALEMODE,
- 1, "SCROLLMODE", INFO_MAPPED, FALSE, ScrollMappings, ATTR_PREFS_EMULATION_SCROLLMODE,
- 1, "DESTRUCTIVEBACKSPACE", INFO_MAPPED, FALSE, DestructiveBSMappings, ATTR_PREFS_EMULATION_DESTRUCTIVEBACKSPACE,
- 1, "SWAPBSDELETE", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_EMULATION_SWAPBSDELETE,
- 1, "PRINTERENABLED", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_EMULATION_PRINTERENABLED,
- 1, "ANSWERBACKTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_EMULATION_ANSWERBACKTEXT,
- 1, "CLSRESETSCURSOR", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_EMULATION_CLS_RESETS_CURSOR,
- 1, "CURSORLOCKED", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_EMULATION_CURSORLOCKED,
- 1, "FONTLOCKED", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_EMULATION_FONTLOCKED,
- 1, "NUMPADLOCKED", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_EMULATION_NUMPADLOCKED,
- 1, "MAXPRESCROLL", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_EMULATION_MAXSCROLL,
- 1, "MAXJUMP", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_EMULATION_MAXJUMP,
- 1, "WRAPLOCKED", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_EMULATION_WRAPLOCKED,
- 1, "STYLELOCKED", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_EMULATION_STYLELOCKED,
- 1, "COLOURLOCKED", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_EMULATION_COLOURLOCKED,
- 1, "USEPENS", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_EMULATION_USEPENS,
-
- 0, "TRANSFERPREFS", INFO_STEM, FALSE, NULL, ATTR_PREFS_TRANSFER,
- 1, "QUIETTRANSFER", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_TRANSFER_QUIET_TRANSFER,
- 1, "MANGLEFILENAMES", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_TRANSFER_MANGLE_FILE_NAMES,
- 1, "LINEDELAY", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_TRANSFER_LINEDELAY,
- 1, "CHARDELAY", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_TRANSFER_CHARDELAY,
- 1, "LINEPROMPTTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_LINEPROMPT,
- 1, "TEXTPACING", INFO_MAPPED, FALSE, PacingMappings, ATTR_PREFS_TRANSFER_TEXTPACING,
- 1, "SENDTIMEOUT", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_TRANSFER_SENDTIMEOUT,
- 1, "STRIPBIT8", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_TRANSFER_STRIP_BIT_8,
- 1, "IGNOREDATAPASTTERMINATOR", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_TRANSFER_IGNORE_DATA_PAST_ARNOLD,
- 1, "TERMINATORCHAR", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_TRANSFER_TERMINATOR_CHAR,
- 1, "ERRORNOTIFYCOUNT", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_TRANSFER_ERROR_NOTIFY_COUNT,
- 1, "ERRORNOTIFYWHEN", INFO_MAPPED, FALSE, TransferErrorNotifyMappings, ATTR_PREFS_TRANSFER_ERROR_NOTIFY_WHEN,
- 1, "OVERRIDEPATH", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_TRANSFER_OVERRIDEPATH,
- 1, "SETARCHIVEDBIT", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_TRANSFER_SETARCHIVEDBIT,
- 1, "COMMENTMODE", INFO_MAPPED, FALSE, IdentifyMappings, ATTR_PREFS_TRANSFER_COMMENTMODE,
- 1, "TRANSFERICONS", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_TRANSFER_TRANSFERICONS,
- 1, "HIDEUPLOADICON", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_TRANSFER_HIDE_UPLOAD_ICON,
- 1, "TRANSFERPERFMETER", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_TRANSFER_TRANSFER_PERFMETER,
- 1, "DEFAULTLIBRARY", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_DEFAULT_LIBRARY,
- 1, "DEFAULTPROTOCOL", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_DEFAULT_LIBRARY,
- 1, "ASCIIUPLOADLIBRARY", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_ASCII_UPLOAD_LIBRARY,
- 1, "ASCIIUPLOADPROTOCOL", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_ASCII_UPLOAD_LIBRARY,
- 1, "ASCIIDOWNLOADLIBRARY", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_ASCII_DOWNLOAD_LIBRARY,
- 1, "ASCIIDOWNLOADPROTOCOL", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_ASCII_DOWNLOAD_LIBRARY,
- 1, "TEXTUPLOADLIBRARY", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_TEXT_UPLOAD_LIBRARY,
- 1, "TEXTUPLOADPROTOCOL", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_TEXT_UPLOAD_LIBRARY,
- 1, "TEXTDOWNLOADLIBRARY", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_TEXT_DOWNLOAD_LIBRARY,
- 1, "TEXTDOWNLOADPROTOCOL", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_TEXT_DOWNLOAD_LIBRARY,
- 1, "BINARYUPLOADLIBRARY", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_BINARY_UPLOAD_LIBRARY,
- 1, "BINARYUPLOADPROTOCOL", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_BINARY_UPLOAD_LIBRARY,
- 1, "BINARYDOWNLOADLIBRARY", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_BINARY_DOWNLOAD_LIBRARY,
- 1, "BINARYDOWNLOADPROTOCOL", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_BINARY_DOWNLOAD_LIBRARY,
- 1, "DEFAULTTYPE", INFO_MAPPED, FALSE, TransferMappings1, ATTR_PREFS_TRANSFER_DEFAULT_TYPE,
- 1, "DEFAULTSENDSIGNATURE", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_DEFAULT_SEND_SIGNATURE,
- 1, "DEFAULTRECEIVESIGNATURE", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_DEFAULT_RECEIVE_SIGNATURE,
- 1, "ASCIIUPLOADTYPE", INFO_MAPPED, FALSE, TransferMappings3, ATTR_PREFS_TRANSFER_ASCII_UPLOAD_TYPE,
- 1, "ASCIIUPLOADSIGNATURE", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_ASCII_UPLOAD_SIGNATURE,
- 1, "ASCIIDOWNLOADTYPE", INFO_MAPPED, FALSE, TransferMappings3, ATTR_PREFS_TRANSFER_ASCII_DOWNLOAD_TYPE,
- 1, "ASCIIDOWNLOADSIGNATURE", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_ASCII_DOWNLOAD_SIGNATURE,
- 1, "TEXTUPLOADTYPE", INFO_MAPPED, FALSE, TransferMappings2, ATTR_PREFS_TRANSFER_TEXT_UPLOAD_TYPE,
- 1, "TEXTUPLOADSIGNATURE", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_TEXT_UPLOAD_SIGNATURE,
- 1, "TEXTDOWNLOADTYPE", INFO_MAPPED, FALSE, TransferMappings2, ATTR_PREFS_TRANSFER_TEXT_DOWNLOAD_TYPE,
- 1, "TEXTDOWNLOADSIGNATURE", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_TEXT_DOWNLOAD_SIGNATURE,
- 1, "BINARYUPLOADTYPE", INFO_MAPPED, FALSE, TransferMappings2, ATTR_PREFS_TRANSFER_BINARY_UPLOAD_TYPE,
- 1, "BINARYUPLOADSIGNATURE", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_BINARY_UPLOAD_SIGNATURE,
- 1, "BINARYDOWNLOADTYPE", INFO_MAPPED, FALSE, TransferMappings2, ATTR_PREFS_TRANSFER_BINARY_DOWNLOAD_TYPE,
- 1, "BINARYDOWNLOADSIGNATURE", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_BINARY_DOWNLOAD_SIGNATURE,
- 1, "IDENTIFYCOMMAND", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSFER_IDENTIFY_COMMAND,
- 1, "EXPANDBLANKLINES", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_TRANSFER_EXPAND_BLANK_LINES,
-
- 0, "SPEECHPREFS", INFO_STEM, FALSE, NULL, ATTR_PREFS_SPEECH,
- 1, "RATE", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_SPEECH_RATE,
- 1, "PITCH", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_SPEECH_PITCH,
- 1, "FREQUENCY", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_SPEECH_FREQUENCY,
- 1, "SEXMODE", INFO_MAPPED, FALSE, SexMappings, ATTR_PREFS_SPEECH_SEXMODE,
- 1, "VOLUME", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_SPEECH_VOLUME,
- 1, "SPEECH", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SPEECH_SPEECH,
-
- 0, "TRANSLATIONPREFS", INFO_STEM, FALSE, NULL, ATTR_PREFS_TRANSLATIONS,
- 1, NULL, INFO_STEM, FALSE, NULL, ATTR_PREFS_TRANSLATIONS_X,
- 2, "SEND", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSLATIONS_X_SEND,
- 2, "RECEIVE", INFO_TEXT, FALSE, NULL, ATTR_PREFS_TRANSLATIONS_X_RECEIVE,
-
- 0, "FASTMACROPREFS", INFO_STEM, FALSE, NULL, ATTR_PREFS_FASTMACROS,
- 1, "COUNT", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_FASTMACROS_COUNT,
- 1, NULL, INFO_STEM, FALSE, NULL, ATTR_PREFS_FASTMACROS_X,
- 2, "NAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_FASTMACROS_X_NAME,
- 2, "CODE", INFO_TEXT, FALSE, NULL, ATTR_PREFS_FASTMACROS_X_CODE,
-
- 0, "HOTKEYPREFS", INFO_STEM, FALSE, NULL, ATTR_PREFS_HOTKEYS,
- 1, "TERMSCREENTOFRONTTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_HOTKEYS_TERMSCREENTOFRONTTEXT,
- 1, "BUFFERSCREENTOFRONTTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_HOTKEYS_BUFFERSCREENTOFRONTTEXT,
- 1, "SKIPDIALENTRYTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_HOTKEYS_SKIPDIALENTRYTEXT,
- 1, "ABORTAREXX", INFO_TEXT, FALSE, NULL, ATTR_PREFS_HOTKEYS_ABORTAREXX,
- 1, "COMMODITYPRIORITY", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_HOTKEYS_COMMODITYPRIORITY,
- 1, "HOTKEYSENABLED", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_HOTKEYS_HOTKEYSENABLED,
-
- 0, "CURSORKEYPREFS", INFO_STEM, FALSE, NULL, ATTR_PREFS_CURSORKEYS,
- 1, "UPTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CURSORKEYS_UPTEXT,
- 1, "RIGHTTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CURSORKEYS_RIGHTTEXT,
- 1, "DOWNTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CURSORKEYS_DOWNTEXT,
- 1, "LEFTTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CURSORKEYS_LEFTTEXT,
-
- 1, "SHIFT", INFO_STEM, FALSE, NULL, ATTR_PREFS_CURSORKEYS_SHIFT,
- 2, "UPTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CURSORKEYS_SHIFT_UPTEXT,
- 2, "RIGHTTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CURSORKEYS_SHIFT_RIGHTTEXT,
- 2, "DOWNTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CURSORKEYS_SHIFT_DOWNTEXT,
- 2, "LEFTTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CURSORKEYS_SHIFT_LEFTTEXT,
-
- 1, "ALT", INFO_STEM, FALSE, NULL, ATTR_PREFS_CURSORKEYS_ALT,
- 2, "UPTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CURSORKEYS_ALT_UPTEXT,
- 2, "RIGHTTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CURSORKEYS_ALT_RIGHTTEXT,
- 2, "DOWNTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CURSORKEYS_ALT_DOWNTEXT,
- 2, "LEFTTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CURSORKEYS_ALT_LEFTTEXT,
-
- 1, "CONTROL", INFO_STEM, FALSE, NULL, ATTR_PREFS_CURSORKEYS_CONTROL,
- 2, "UPTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CURSORKEYS_CONTROL_UPTEXT,
- 2, "RIGHTTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CURSORKEYS_CONTROL_RIGHTTEXT,
- 2, "DOWNTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CURSORKEYS_CONTROL_DOWNTEXT,
- 2, "LEFTTEXT", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CURSORKEYS_CONTROL_LEFTTEXT,
-
- 0, "FUNCTIONKEYPREFS", INFO_STEM, FALSE, NULL, ATTR_PREFS_FUNCTIONKEYS,
- 1, NULL, INFO_TEXT, FALSE, NULL, ATTR_PREFS_FUNCTIONKEYS_X,
- 1, "SHIFT", INFO_STEM, FALSE, NULL, ATTR_PREFS_FUNCTIONKEYS_SHIFT,
- 2, NULL, INFO_TEXT, FALSE, NULL, ATTR_PREFS_FUNCTIONKEYS_SHIFT_X,
- 1, "ALT", INFO_STEM, FALSE, NULL, ATTR_PREFS_FUNCTIONKEYS_ALT,
- 2, NULL, INFO_TEXT, FALSE, NULL, ATTR_PREFS_FUNCTIONKEYS_ALT_X,
- 1, "CONTROL", INFO_STEM, FALSE, NULL, ATTR_PREFS_FUNCTIONKEYS_CONTROL,
- 2, NULL, INFO_TEXT, FALSE, NULL, ATTR_PREFS_FUNCTIONKEYS_CONTROL_X,
-
- 0, "PROTOCOLPREFS", INFO_TEXT, FALSE, NULL, ATTR_PREFS_PROTOCOL,
-
- 0, "CONSOLEPREFS", INFO_TEXT, FALSE, NULL, ATTR_PREFS_CONSOLE,
-
- 0, "SOUNDPREFS", INFO_STEM, FALSE, NULL, ATTR_PREFS_SOUND,
- 1, "BELLNAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_SOUND_BELLNAME,
- 1, "CONNECTNAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_SOUND_CONNECTNAME,
- 1, "DISCONNECTNAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_SOUND_DISCONNECTNAME,
- 1, "GOODTRANSFERNAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_SOUND_GOODTRANSFERNAME,
- 1, "BADTRANSFERNAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_SOUND_BADTRANSFERNAME,
- 1, "RINGNAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_SOUND_RINGNAME,
- 1, "VOICENAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_SOUND_VOICENAME,
- 1, "ERRORNAME", INFO_TEXT, FALSE, NULL, ATTR_PREFS_SOUND_ERROR,
- 1, "PRELOAD", INFO_BOOLEAN, FALSE, NULL, ATTR_PREFS_SOUND_PRELOAD,
- 1, "VOLUME", INFO_NUMERIC, FALSE, NULL, ATTR_PREFS_SOUND_VOLUME,
-
- 0, "PHONEBOOK", INFO_STEM, TRUE, NULL, ATTR_PHONEBOOK,
-
- 1, "COUNT", INFO_NUMERIC, TRUE, NULL, ATTR_PHONEBOOK_COUNT,
- 1, NULL, INFO_STEM, TRUE, NULL, ATTR_PHONEBOOK_X,
- 2, "NAME", INFO_TEXT, TRUE, NULL, ATTR_PHONEBOOK_X_NAME,
- 2, "NUMBER", INFO_TEXT, TRUE, NULL, ATTR_PHONEBOOK_X_NUMBER,
- 2, "COMMENTTEXT", INFO_TEXT, TRUE, NULL, ATTR_PHONEBOOK_X_COMMENTTEXT,
- 2, "USERNAME", INFO_TEXT, TRUE, NULL, ATTR_PHONEBOOK_X_USERNAME,
- 2, "PASSWORDTEXT", INFO_TEXT, TRUE, NULL, ATTR_PHONEBOOK_X_PASSWORDTEXT
- };
-
- WORD AttributeTableSize = NUM_ELEMENTS(AttributeTable);
-
- /* Information on arguments to exclude each other.*/
-
- STATIC struct ExclusionInfo ExclusionInfoTable_00[] =
- {
- 1,2, 5,6, -1,-1
- };
-
- STATIC struct ExclusionInfo ExclusionInfoTable_01[] =
- {
- 0,1, -1,-1
- };
-
- STATIC struct ExclusionInfo ExclusionInfoTable_02[] =
- {
- 2,3, -1,-1
- };
-
- STATIC struct ExclusionInfo ExclusionInfoTable_03[] =
- {
- 0,1, 0,2, 0,3, 0,4, 1,2, 1,3, 1,4, 2,3, 2,4, 3,4, -1,-1
- };
-
- STATIC struct ExclusionInfo ExclusionInfoTable_04[] =
- {
- 0,1, 0,2, 1,2, -1,-1
- };
-
- STATIC struct ExclusionInfo ExclusionInfoTable_05[] =
- {
- 0,2, 0,3, 0,4, 0,5, 2,3, 2,4, 2,5, 3,4, 3,5, 4,5, -1,-1
- };
-
- STATIC struct ExclusionInfo ExclusionInfoTable_06[] =
- {
- 2,3, -1,-1
- };
-
- STATIC struct ExclusionInfo ExclusionInfoTable_07[] =
- {
- 0,1, -1,-1
- };
-
- STATIC struct ExclusionInfo ExclusionInfoTable_08[] =
- {
- 0,1, -1,-1
- };
-
- STATIC struct ExclusionInfo ExclusionInfoTable_09[] =
- {
- 0,1, -1,-1
- };
-
- STATIC struct ExclusionInfo ExclusionInfoTable_10[] =
- {
- 1,2, 2,3, 2,4, 2,5, 2,6, 2,7, 2,8, 2,9, 2,10, 2,11, 4,5, 6,7, 8,9, 8,10, 8,11, 9,10, 9,11, 10,11, -1,-1
- };
-
- STATIC struct ExclusionInfo ExclusionInfoTable_11[] =
- {
- 2,3, 2,4, 3,4, -1,-1
- };
-
- /* This is where the information on what arguments exclude
- * other arguments is linked to the actual commands.
- */
-
- struct ExclusionInfo *ExclusionTable[] =
- {
- /* ACTIVATE */ NULL,
- /* ADD */ ExclusionInfoTable_00,
- /* BAUD */ NULL,
- /* BEEPSCREEN */ NULL,
- /* CALLMENU */ NULL,
- /* CAPTURE */ ExclusionInfoTable_11,
- /* CLEAR */ NULL,
- /* CLEARSCREEN */ NULL,
- /* CLOSE */ NULL,
- /* CLOSEDEVICE */ NULL,
- /* CLOSEREQUESTER */ NULL,
- /* DEACTIVATE */ NULL,
- /* DELAY */ NULL,
- /* DIAL */ NULL,
- /* DUPLEX */ ExclusionInfoTable_01,
- /* EXECTOOL */ NULL,
- /* FAULT */ NULL,
- /* GETATTR */ ExclusionInfoTable_02,
- /* GETCLIP */ NULL,
- /* GOONLINE */ NULL,
- /* HANGUP */ NULL,
- /* HELP */ NULL,
- /* OPEN */ NULL,
- /* OPENDEVICE */ NULL,
- /* OPENREQUESTER */ NULL,
- /* PARITY */ ExclusionInfoTable_03,
- /* PASTECLIP */ NULL,
- /* PRINT */ NULL,
- /* PROTOCOL */ ExclusionInfoTable_04,
- /* PROCESSIO */ ExclusionInfoTable_09,
- /* PUTCLIP */ NULL,
- /* QUIT */ NULL,
- /* READ */ NULL,
- /* RECEIVEFILE */ NULL,
- /* REDIAL */ NULL,
- /* REMOVE */ NULL,
- /* REQUESTFILE */ NULL,
- /* REQUESTNOTIFY */ NULL,
- /* REQUESTNUMBER */ NULL,
- /* REQUESTRESPONSE */ NULL,
- /* REQUESTSTRING */ NULL,
- /* RESETSCREEN */ NULL,
- /* RESETSTYLES */ NULL,
- /* RESETTEXT */ NULL,
- /* RESETTIMER */ NULL,
- /* RX */ NULL,
- /* SAVE */ NULL,
- /* SAVEAS */ NULL,
- /* SELECTITEM */ ExclusionInfoTable_05,
- /* SEND */ NULL,
- /* SENDBREAK */ NULL,
- /* SENDFILE */ NULL,
- /* SETATTR */ ExclusionInfoTable_06,
- /* SPEAK */ NULL,
- /* STOPBITS */ ExclusionInfoTable_07,
- /* TEXTBUFFER */ ExclusionInfoTable_08,
- /* TIMEOUT */ ExclusionInfoTable_09,
- /* TRAP */ ExclusionInfoTable_09,
- /* WAIT */ NULL,
- /* WINDOW */ ExclusionInfoTable_10,
- };
-
- /* This is where the information on which arguments (switches and keywords)
- * are actually required is stored.
- */
-
- UWORD InclusionTable[] =
- {
- /* ACTIVATE */ NULL,
- /* ADD */ INCLUDE_05|INCLUDE_06,
- /* BAUD */ NULL,
- /* BEEPSCREEN */ NULL,
- /* CALLMENU */ NULL,
- /* CAPTURE */ NULL,
- /* CLEAR */ NULL,
- /* CLEARSCREEN */ NULL,
- /* CLOSE */ NULL,
- /* CLOSEDEVICE */ NULL,
- /* CLOSEREQUESTER */ NULL,
- /* DEACTIVATE */ NULL,
- /* DELAY */ INCLUDE_00|INCLUDE_01|INCLUDE_02,
- /* DIAL */ NULL,
- /* DUPLEX */ INCLUDE_00|INCLUDE_01,
- /* EXECTOOL */ NULL,
- /* FAULT */ NULL,
- /* GETATTR */ NULL,
- /* GETCLIP */ NULL,
- /* GOONLINE */ NULL,
- /* HANGUP */ NULL,
- /* HELP */ INCLUDE_00|INCLUDE_01,
- /* OPEN */ NULL,
- /* OPENDEVICE */ NULL,
- /* OPENREQUESTER */ NULL,
- /* PARITY */ INCLUDE_00|INCLUDE_01|INCLUDE_02|INCLUDE_03|INCLUDE_04,
- /* PASTECLIP */ NULL,
- /* PRINT */ NULL,
- /* PROTOCOL */ INCLUDE_00|INCLUDE_01|INCLUDE_02,
- /* PROCESSIO */ INCLUDE_00|INCLUDE_01,
- /* PUTCLIP */ NULL,
- /* QUIT */ NULL,
- /* READ */ INCLUDE_00|INCLUDE_01,
- /* RECEIVEFILE */ NULL,
- /* REDIAL */ NULL,
- /* REMOVE */ NULL,
- /* REQUESTFILE */ NULL,
- /* REQUESTNOTIFY */ NULL,
- /* REQUESTNUMBER */ NULL,
- /* REQUESTRESPONSE */ NULL,
- /* REQUESTSTRING */ NULL,
- /* RESETSCREEN */ NULL,
- /* RESETSTYLES */ NULL,
- /* RESETTEXT */ NULL,
- /* RESETTIMER */ NULL,
- /* RX */ NULL,
- /* SAVE */ NULL,
- /* SAVEAS */ INCLUDE_00|INCLUDE_02|INCLUDE_03|INCLUDE_04|INCLUDE_05,
- /* SELECTITEM */ NULL,
- /* SEND */ INCLUDE_03|INCLUDE_04,
- /* SENDBREAK */ NULL,
- /* SENDFILE */ NULL,
- /* SETATTR */ INCLUDE_02|INCLUDE_03,
- /* SPEAK */ NULL,
- /* STOPBITS */ INCLUDE_00|INCLUDE_01,
- /* TEXTBUFFER */ INCLUDE_00|INCLUDE_01,
- /* TIMEOUT */ INCLUDE_00|INCLUDE_01,
- /* TRAP */ INCLUDE_00|INCLUDE_01,
- /* WAIT */ NULL,
- /* WINDOW */ INCLUDE_01|INCLUDE_02|INCLUDE_03|INCLUDE_04|INCLUDE_05|INCLUDE_06|INCLUDE_07|INCLUDE_08|INCLUDE_09|INCLUDE_10|INCLUDE_11,
- };
-
- /* This is where command names, arguments and the routines
- * to execute the actual commands are linked together.
- */
-
- struct CommandInfo CommandTable[] =
- {
- TRUE, FALSE, RexxActivate, "ACTIVATE", NULL,
- TRUE, FALSE, RexxAdd, "ADDITEM", "TO/A,BEFORE/S,AFTER/S,RESPONSE/K,COMMAND/K,PHONE/K/F,NAME/K/F",
- FALSE, FALSE, RexxBaud, "BAUD", "RATE/A/N",
- FALSE, FALSE, RexxBeepScreen, "BEEPSCREEN", NULL,
- FALSE, FALSE, RexxCallMenu, "CALLMENU", "TITLE/A/F",
- FALSE, FALSE, RexxCapture, "CAPTURE", "TO/A,NAME/K,OVERWRITE/S,APPEND/S,SKIP/S",
- FALSE, FALSE, RexxClear, "CLEAR", "FROM/A,FORCE/S",
- FALSE, FALSE, RexxClearScreen, "CLEARSCREEN", NULL,
- FALSE, FALSE, RexxClose, "CLOSE", "FROM/A",
- FALSE, FALSE, RexxCloseDevice, "CLOSEDEVICE", NULL,
- TRUE, FALSE, RexxCloseRequester, "CLOSEREQUESTER", NULL,
- TRUE, FALSE, RexxDeactivate, "DEACTIVATE", NULL,
- FALSE, FALSE, RexxDelay, "DELAY", "MIC=MICROSECONDS/K/N,SEC=SECONDS/N,MIN=MINUTES/K/N,QUIET/S",
- FALSE, FALSE, RexxDial, "DIAL", "WAIT=SYNC/S,NUM/F",
- FALSE, FALSE, RexxDuplex, "DUPLEX", "FULL/S,HALF=ECHO/S",
- TRUE, TRUE, RexxExecTool, "EXECTOOL", "CONSOLE/S,ASYNC/S,PORT/S,COMMAND/A/F",
- TRUE, FALSE, RexxFault, "FAULT", "CODE/A/N",
- TRUE, FALSE, RexxGetAttr, "GETATTR", "OBJECT/A,FIELD,STEM/K,VAR/K",
- FALSE, FALSE, RexxGetClip, "GETCLIP", "UNIT/K/N",
- FALSE, FALSE, RexxGoOnline, "GOONLINE", NULL,
- FALSE, FALSE, RexxHangup, "HANGUP", NULL,
- TRUE, FALSE, RexxHelp, "HELP", "COMMAND,PROMPT/S",
- FALSE, FALSE, RexxOpen, "OPEN", "NAME/K,TO/A",
- FALSE, FALSE, RexxOpenDevice, "OPENDEVICE", "NAME/K,UNIT/K/N",
- FALSE, FALSE, RexxOpenRequester, "OPENREQUESTER", "REQUESTER/A",
- FALSE, FALSE, RexxParity, "PARITY", "EVEN/S,ODD/S,NONE/S,MARK/S,SPACE/S",
- TRUE, FALSE, RexxPasteClip, "PASTECLIP", "UNIT/K/N",
- FALSE, FALSE, RexxPrint, "PRINT", "FROM/A,TO/K,SERIAL/S,MODEM/S,SCREEN/S,TERMINAL/S,USER/S,COMMENT/S,SIZE/S,DATE/S,ATTR/S",
- FALSE, FALSE, RexxProtocol, "PROTOCOL", "NONE/S,RTSCTS/S,RTSCTSDTR/S",
- FALSE, FALSE, RexxProcessIO, "PROCESSIO", "ON/S,OFF/S",
- FALSE, FALSE, RexxPutClip, "PUTCLIP", "UNIT/K/N,TEXT/A/F",
- TRUE, FALSE, RexxQuit, "QUIT", "FORCE/S",
- FALSE, FALSE, RexxRead, "READ", "NUM/K/N,CR/S,NOECHO/S,VERBATIM/S,TIMEOUT/K/N,TERMINATOR/K,PROMPT/K/F",
- FALSE, FALSE, RexxReceiveFile, "RECEIVEFILE", "MODE/K,NAME/K",
- FALSE, FALSE, RexxRedial, "REDIAL", NULL,
- TRUE, FALSE, RexxRemove, "REMITEM", "FROM/A,NAME/K/F",
- FALSE, FALSE, RexxRequestFile, "REQUESTFILE", "TITLE/K,PATH/K,FILE/K,PATTERN/K,MULTI/S,STEM=NAME/K",
- FALSE, FALSE, RexxRequestNotify, "REQUESTNOTIFY", "TITLE/K,PROMPT/A/F",
- FALSE, FALSE, RexxRequestNumber, "REQUESTNUMBER", "DEFAULT/K/N,PROMPT/K/F",
- FALSE, FALSE, RexxRequestResponse, "REQUESTRESPONSE", "TITLE/K,OPTIONS/K,PROMPT/A/F",
- FALSE, FALSE, RexxRequestString, "REQUESTSTRING", "SECRET/S,DEFAULT/K,PROMPT/K/F",
- FALSE, FALSE, RexxResetScreen, "RESETSCREEN", NULL,
- FALSE, FALSE, RexxReset, "RESET", "CLEAR/S,STYLES/S,TEXT/S,TIMER/S",
- FALSE, FALSE, RexxResetStyles, "RESETSTYLES", NULL,
- FALSE, FALSE, RexxResetText, "RESETTEXT", NULL,
- FALSE, FALSE, RexxResetTimer, "RESETTIMER", NULL,
- TRUE, TRUE, RexxRX, "RX", "CONSOLE/S,ASYNC/S,COMMAND/A/F",
- FALSE, FALSE, RexxSave, "SAVE", "FROM/A",
- FALSE, FALSE, RexxSaveAs, "SAVEAS", "NAME/K,FROM/A",
- TRUE, FALSE, RexxSelect, "SELECTITEM", "NAME/K,FROM/A,NEXT/S,PREV=PREVIOUS/S,TOP/S,BOTTOM/S",
- FALSE, FALSE, RexxSend, "SEND", "NOECHO/S,LOCAL/S,LITERAL/S,BYTE/K/N,TEXT/F",
- FALSE, FALSE, RexxSendBreak, "SENDBREAK", NULL,
- FALSE, FALSE, RexxSendFile, "SENDFILE", "MODE/K,NAMES/M",
- FALSE, FALSE, RexxSetAttr, "SETATTR", "OBJECT/A,FIELD,STEM/K,VAR",
- TRUE, FALSE, RexxSpeak, "SPEAK", "TEXT/A/F",
- FALSE, FALSE, RexxStopBits, "STOPBITS", "0/S,1/S",
- FALSE, FALSE, RexxTextBuffer, "TEXTBUFFER", "LOCK/S,UNLOCK/S",
- FALSE, FALSE, RexxTimeout, "TIMEOUT", "SEC=SECONDS/N,OFF/S",
- FALSE, FALSE, RexxTrap, "TRAP", "ON/S,OFF/S",
- FALSE, FALSE, RexxWait, "WAIT", "NOECHO/S,TIMEOUT/K/N,TEXT/F",
- FALSE, FALSE, RexxWindow, "WINDOW", "NAMES/A/M,OPEN/S,CLOSE/S,ACTIVATE/S,MIN/S,MAX/S,FRONT/S,BACK/S,TOP/S,BOTTOM/S,UP/S,DOWN/S",
- };
-
- WORD CommandTableSize = NUM_ELEMENTS(CommandTable);
-
- struct MsgPort *RexxPort;
- LONG LastRexxError;
- LONG RexxTimeoutVal;
- BOOL UpdateRequired,TransferUpdateRequired;
-
-
- /**********************************************************************/
-
-
- /* The signal semaphores to initialize at program startup time. */
-
- struct SignalSemaphore *StartupSemaphoreTable[] =
- {
- &MenuSemaphore,
- &OnlineSemaphore,
- &StatusSemaphore,
- &xONxOFF_Semaphore,
- &TerminalSemaphore,
- &PatternSemaphore,
- &DoubleBufferSemaphore,
- &WindowInfoSemaphore,
- &BufferTaskSemaphore,
- &ReviewTaskSemaphore,
- &RasterSemaphore,
- &BufferSemaphore,
-
- NULL
- };
-
- /* The lists to initialize at program startup time. */
-
- struct List *StartupListTable[] =
- {
- (struct List *)&TextBufferHistory,
- (struct List *)&Update_MsgList,
- &TransferInfoList,
- &RexxDialMsgList,
- &PacketHistoryList,
- &FastMacroList,
- &DoubleBufferList,
- &XEM_MacroList,
-
- NULL
- };
-
-
- /**********************************************************************/
-
-
- /* Job queues and jobs. */
-
- JobQueue *MainJobQueue;
- JobNode *XEMJob,
- *SerialCheckJob,
- *SerialJob,
- *OwnDevUnitJob,
- *WindowJob,
- *SingleWindowJob,
- *WindowAndXEMJob,
- *RexxJob,
- *QueueJob,
- *ReleaseSerialJob,
- *StartupFileJob,
- *IconifyJob,
- *RebuildMenuJob,
- *ResetDisplayJob,
- *OnlineCleanupJob,
- *SerialCacheJob,
- *DisplayCostJob,
- *TerminalTestJob;
-
- /* Jobs to create at program startup time. */
-
- struct JobInitStruct JobInitTable[] =
- {
- "XEM", &XEMJob, HandleXEMJob, JOBTYPE_Wait,
- "SerialCheck", &SerialCheckJob, HandleSerialCheckJob, JOBTYPE_Wait,
- "Serial", &SerialJob, HandleSerialJob, JOBTYPE_Wait,
- "OwnDevUnit", &OwnDevUnitJob, HandleOwnDevUnitJob, JOBTYPE_Wait,
- "Window", &SingleWindowJob, HandleWindowJob, JOBTYPE_Wait,
- "WindowAndXEM", &WindowAndXEMJob, HandleWindowAndXEMJob, JOBTYPE_Wait,
- "Rexx", &RexxJob, HandleRexxJob, JOBTYPE_Wait,
- "MsgQueue", &QueueJob, HandleQueueJob, JOBTYPE_Wait,
- "ReleaseSerial", &ReleaseSerialJob, HandleReleaseSerial, JOBTYPE_Once,
- "StartupFile", &StartupFileJob, HandleStartupFile, JOBTYPE_Disposable,
- "Iconify", &IconifyJob, HandleIconifyJob, JOBTYPE_Once,
- "RebuildMenu", &RebuildMenuJob, HandleRebuildMenuJob, JOBTYPE_Once,
- "ResetDisplay", &ResetDisplayJob, HandleResetDisplayJob, JOBTYPE_Once,
- "OnlineCleanup", &OnlineCleanupJob, HandleOnlineCleanupJob, JOBTYPE_Once,
- "SerialCache", &SerialCacheJob, HandleSerialCacheJob, JOBTYPE_Always,
- "DisplayCost", &DisplayCostJob, HandleDisplayCostJob, JOBTYPE_Always,
- "TerminalTest", &TerminalTestJob, HandleTerminalTestJob, JOBTYPE_Always,
- NULL
- };
-
-
- /**********************************************************************/
-
-
- /* Simplified serial read routines that know about cached data. */
-
- ULONG (*SerialWaitForData)(ULONG OtherBits);
- ULONG (*SerialGetWaiting)(VOID);
- LONG (*SerialRead)(UBYTE *Buffer,LONG Size);
-