/*
**	termProtos.h
**
**	Global function prototype definitions
**
**	Copyright © 1990-1995 by Olaf `Olsen' Barthel
**		All Rights Reserved
*/

	/* debug.lib */

#define DB(x)			;

VOID __stdargs			kprintf(STRPTR,...);

	/* ASCIIPanel.c */

struct Window * __regargs	CreateASCIIWindow(BYTE Send);
VOID __regargs			DeleteASCIIWindow(struct Window *Window,BYTE WaitForIt);
VOID __stdargs			AddASCIIMessage(struct Window *Window,STRPTR Message,...);
VOID __regargs			UpdateASCIIWindow(struct Window *Window,LONG Bytes,LONG MaxBytes,LONG Lines);
BYTE __regargs			HandleASCIIWindow(struct Window *Window);

	/* CapturePanel.c */

BYTE __regargs			CapturePanel(struct Configuration *Config,BYTE *Default);

	/* CaptureParser.c */

VOID				CaptureParserExit(VOID);
BOOL				CaptureParserInit(VOID);
VOID __regargs			CaptureParser(register STRPTR Buffer,register LONG Size,register COPTR OutputRoutine);

	/* Chat.c */

ULONG __saveds __asm		ChatKey(register __a1 ULONG *Msg,register __a2 struct SGWork *Work);
VOID				HideChatGadget(VOID);
VOID				DeleteChatGadget(VOID);
VOID				UpdateChatGadget(VOID);
VOID __regargs			ActivateChat(BOOL Reactivate);
BOOL				CreateChatGadget(VOID);

	/* ClipPanel.c */

BYTE __regargs			ClipPanel(struct Configuration *Config,BYTE *Default);

	/* CommandPanel.c */

BYTE __regargs			CommandPanel(struct Configuration *Config,BYTE *Default);

	/* Colour.c */

VOID __regargs			Colour96xColourTable(const ULONG *Source96,struct ColourTable *Table,WORD NumColours);
VOID __regargs			Colour12xColourTable(const UWORD *Source12,struct ColourTable *Table,WORD NumColours);
VOID __regargs			ColourTablex96(const struct ColourTable *Table,ULONG *Dest96,WORD NumColours);
VOID __regargs			ColourTablex12(const struct ColourTable *Table,UWORD *Dest12,WORD NumColours);
VOID __regargs			Colour12x96(const UWORD *Source12,ULONG *Dest96,WORD NumColours);
VOID __regargs			Colour96x12(const ULONG *Source96,UWORD *Dest12,WORD NumColours);
VOID __regargs			DeleteColourTable(struct ColourTable *Table);
struct ColourTable * __regargs	CreateColourTable(WORD NumEntries,const UWORD *Source12,const ULONG *Source96);
VOID __regargs			LoadColourTable(struct ViewPort *VPort,const struct ColourTable *Table,const UWORD *Colour12,WORD NumColours);
VOID __regargs			SetColour12(struct ViewPort *VPort,WORD Number,UWORD r,UWORD g,UWORD b);
VOID __regargs			SetColour96(struct ViewPort *VPort,ULONG Number,ULONG r,ULONG g,ULONG b);

	/* CopyPanel.c */

BYTE __regargs			CopyPanel(struct Configuration *MyConfig,BYTE Selective);

	/* CursorPanel.c */

BOOLEAN __regargs		CursorPanel(struct CursorKeys *CursorKeys,STRPTR LastCursor,struct Window *Parent);

	/* CustomRequest.c */

VOID __stdargs			ShowInfo(struct Window *Parent,STRPTR Title,STRPTR Continue,STRPTR FormatString,...);

	/* DatePanel.c */

BYTE __regargs			DatePanel(struct TimeDateNode *Node);

	/* DayPanel.c */

BYTE __regargs			DayPanel(struct TimeDateNode *Node);

	/* EmulationPanel.c */

BYTE __regargs			EmulationPanel(struct Configuration *Config,BYTE *Default);

	/* FastMacroPanel.c */

BOOLEAN __regargs		FastMacroPanel(struct List *FastMacroList,STRPTR LastFastMacros,struct Window *Parent,BYTE *pFastMacrosChanged);

	/* FixPath.c */

VOID __regargs			DeleteCLI(struct CommandLineInterface *CLI);
struct CommandLineInterface * __regargs	CloneCLI(struct Message *Message);

	/* HotkeyPanel.c */

BYTE __regargs			HotkeyPanel(struct Hotkeys *Hotkeys);

	/* ImportPanel.c */

BYTE __regargs			ImportPanel(struct PhoneEntry *Entry,struct List *PhoneList,struct List *TimeDateList);

	/* LibPanel.c */

BYTE __regargs			LibPanel(struct Configuration *Config,BYTE *Default);

	/* LibPanelPlus.c */

VOID __regargs			ASCIITransferPanel(struct Window *Window,struct Configuration *Config);
BOOLEAN __regargs		ExternalCommandPanel(struct Window *Parent,STRPTR Command);

	/* MacroPanel.c */

BOOLEAN __regargs		MacroPanel(struct MacroKeys *MacroKeys,STRPTR LastMacros,BOOLEAN Globals,struct Window *Parent);

	/* MiscPanel.c */

BYTE __regargs			MiscPanel(struct Configuration *Config,BYTE *Default);

	/* ModemPanel.c */

BYTE __regargs			ModemPanel(struct Configuration *Config,BYTE *Default);

	/* PasswordUserPanel.c */

BYTE __regargs			PasswordUserPanel(struct PhoneEntry *Entry);

	/* PathPanel.c */

BYTE __regargs			PathPanel(struct Configuration *Config,BYTE *Default);

	/* PatternPanel.c */

VOID				PatternPanel(VOID);

	/* PhonePanel.c */

BYTE				PhonePanel(VOID);

	/* PrintPanel.c */

VOID __regargs			PrintPanel(struct Window *Window,struct List *PhoneList,LONG Count);

	/* RatePanel.c */

BYTE __regargs			RatePanel(struct Window *Parent,struct List *PhoneList,struct PhoneEntry *Entry,struct List *DateTimeList);

	/* ScreenPanel.c */

BYTE __regargs			ScreenPanel(struct Configuration *LocalConfig,BYTE *Default);

	/* SerialIO.c */

VOID				DeleteLED(VOID);
VOID				CreateLED(VOID);

VOID				ResetSerialRead(VOID);
BOOLEAN				CheckSerialRead(VOID);
BYTE				WaitSerialRead(VOID);
VOID				FlushSerialRead(VOID);
VOID				StopSerialRead(VOID);
VOID __regargs			StartSerialRead(register APTR Data,register ULONG Length);
BYTE __regargs			DoSerialRead(register APTR Data,register ULONG Length);
VOID				ResetSerialWrite(VOID);
BOOLEAN				CheckSerialWrite(VOID);
BYTE				WaitSerialWrite(VOID);
VOID				StopSerialWrite(VOID);
VOID __regargs			StartSerialWrite(register APTR Data,register ULONG Length);
BYTE __regargs			DoSerialWrite(register APTR Data,register ULONG Length);
BYTE __regargs			DoSerialCmd(register UWORD Command);
ULONG				GetSerialWaiting(VOID);
UWORD				GetSerialStatus(VOID);
VOID __regargs			GetSerialInfo(register ULONG *Waiting,register UWORD *Status);
BYTE __stdargs			SetBothSerialAttributes(Tag FirstTag,...);
BYTE __stdargs			SetSerialReadAttributes(Tag FirstTag,...);
BYTE __stdargs			SetSerialWriteAttributes(Tag FirstTag,...);
ULONG __stdargs			GetSerialReadAttributes(Tag FirstTag,...);
ULONG __stdargs			GetSerialWriteAttributes(Tag FirstTag,...);

	/* SerialPanel.c */

BYTE __regargs			SerialPanel(struct Configuration *Config,BYTE *Default);

	/* SoundPanel.c */

BYTE __regargs			SoundPanel(struct SoundConfig *Config);

	/* SpeechPanel.c */

VOID				SpeechPanel(VOID);

	/* StackCall.asm */

LONG __stdargs			StackCall(LONG *Success,LONG StackSize,LONG ArgCount,LONG (* __stdargs Function)(...),...);
LONG __regargs			StackSize(struct Task *Task);

	/* termAbout.c */

BYTE __regargs			ShowAbout(BYTE Ticks);

	/* termAmigaGuide.c */

VOID				GuideCleanup(VOID);
VOID __regargs			GuideContext(LONG NewContextID);
ULONG __saveds __asm		GuideSetupHook(register __a0 struct Hook *Hook,register __a1 struct IBox *Bounds,register __a2 struct HelpMsg *HelpMessage);
VOID				GuideSetup(VOID);
VOID __regargs			GuideDisplay(LONG ContextID);

	/* termASCIITransfer.c */

VOID				ASCIISendSetup(VOID);
BYTE __regargs			InternalASCIIUpload(STRPTR SingleFile,BYTE WaitForIt);
BYTE __regargs			InternalASCIIDownload(STRPTR Name,BYTE WaitForIt);

	/* termAux.c */

VOID __stdargs			SPrintf(STRPTR Buffer,STRPTR FormatString,...);
VOID __regargs			VSPrintf(STRPTR Buffer,STRPTR FormatString,va_list VarArgs);
LONG __regargs			Atol(STRPTR Buffer);
VOID __regargs			ZapBlankNodes(struct List *List);
VOID __regargs			SortList(struct List *List,int (* __stdargs SortFunc)(struct Node **,struct Node **));
VOID __regargs			StripSpaces(STRPTR String);
VOID __regargs			ReplaceWindowInfo(struct WindowInfo *NewInfo);
VOID __regargs			PutWindowInfo(UBYTE ID,LONG Left,LONG Top,LONG Width,LONG Height);
VOID __regargs			GetWindowInfo(UBYTE ID,LONG *Left,LONG *Top,LONG *Width,LONG *Height,LONG DefWidth,LONG DefHeight);
LONG __regargs			GetBitMapDepth(struct BitMap *BitMap);
VOID __regargs			GetDPI(ULONG Mode,ULONG *X_DPI,ULONG *Y_DPI);
VOID __regargs			AddProtection(STRPTR Name,ULONG Mask);
BYTE __regargs			GetPubScreenName(struct Screen *Screen,STRPTR Name);
VOID __regargs			InitSinglePort(struct MsgPort *Port);
BYTE __regargs			GoodStream(BPTR Stream);
struct DiskObject *		GetProgramIcon(VOID);
LONG __regargs			GetPenIndex(LONG Pen);
LONG __regargs			GetScreenWidth(struct Window *Window);
LONG __regargs			GetScreenHeight(struct Window *Window);
LONG __regargs			GetScreenLeft(struct Window *Window);
LONG __regargs			GetScreenTop(struct Window *Window);
ULONG				OldGetAPen(struct RastPort *RPort);
ULONG				OldGetBPen(struct RastPort *RPort);
ULONG				OldGetDrMd(struct RastPort *RPort);
ULONG				OldSetWrMsk(struct RastPort *RPort,ULONG Mask);
ULONG				NewGetAPen(struct RastPort *RPort);
ULONG				NewGetBPen(struct RastPort *RPort);
ULONG				NewGetDrMd(struct RastPort *RPort);
ULONG				NewSetWrMsk(struct RastPort *RPort,ULONG Mask);
VOID __regargs			SetWait(struct Window *Window);
VOID __regargs			ClrWait(struct Window *Window);
STRPTR __regargs		GetModeName(ULONG Mode);
BYTE __regargs			ModeOkay(ULONG ID);
VOID __regargs			SetClipMenu(BYTE Mode);
VOID				SetRedialMenu(VOID);
VOID __regargs			SetDialMenu(BYTE Mode);
VOID __regargs			SetTransferMenu(BYTE Mode);
VOID __regargs			SetRasterMenu(BYTE Mode);
BYTE __regargs			PickFont(struct Window *Window,STRPTR Name,WORD *Points,BYTE MonoSpaced);
STRPTR __regargs		ExtractString(STRPTR String,STRPTR Destination,BYTE ReturnEnd);
LONG __regargs			GetListSize(struct List *List);
struct Node * __regargs		GetListNode(LONG Offset,struct List *List);
struct Node * __regargs		CreateNode(STRPTR Name);
VOID __regargs			FreeNode(struct Node *Node);
VOID __regargs			FreeList(struct List *List);
LONG __regargs			GetNodeOffset(struct Node *Node,struct List *List);
VOID __regargs			MoveList(struct List *From,struct List *To);
VOID __stdargs			LogAction(STRPTR String,...);
VOID __regargs			FlushMsg(struct Window *Window);
BYTE __regargs			GetString(BYTE LoadGadget,BYTE Password,WORD MaxChars,STRPTR Prompt,STRPTR Buffer);
VOID __regargs			WakeUp(struct Window *Window,WORD Sound);
VOID __regargs			SendAmigaDOSCommand(STRPTR Name);
VOID __regargs			SendARexxCommand(STRPTR Name,BOOL QueueIt);
VOID				BlockWindows(VOID);
VOID				ReleaseWindows(VOID);
LONG __regargs			LineRead(BPTR File,STRPTR Buffer,LONG MaxChars);
LONG __regargs			GetBaudRate(STRPTR Buffer);
struct MenuItem * __regargs	FindThisItem(struct Menu *FirstMenu,ULONG MenuID);
BYTE __regargs			GetItem(ULONG MenuID);
VOID __regargs			SetItem(ULONG MenuID,BYTE Mode);
LONG __regargs			GetFileSize(STRPTR Name);
struct FileRequester * __regargs	GetFile(struct Window *Parent,STRPTR Title,STRPTR Directory,STRPTR Name,STRPTR Buffer,STRPTR Pattern,BYTE SaveFlag,BYTE MultiSelect,BYTE DirsOnly,STRPTR OKText,BYTE AskWrite);
WORD __stdargs			MyEasyRequest(struct Window *Window,STRPTR Text,STRPTR Gadgets,...);
VOID __regargs			CloseWindowSafely(struct Window *Window);
VOID __regargs			WaitTime(LONG Secs,LONG Micros);
VOID				StopTime(VOID);
VOID __regargs			StartTime(LONG Secs,LONG Micros);
STRPTR __regargs		GetEnvDOS(STRPTR Name,STRPTR Buffer);
BYTE __regargs			SetEnvDOS(STRPTR Name,STRPTR Value);
VOID __regargs			BumpWindow(struct Window *SomeWindow);
VOID __regargs			PushWindow(struct Window *Window);
VOID				PopWindow(VOID);
BYTE __regargs			LoadMacros(STRPTR Name,struct MacroKeys *Keys);
BYTE __regargs			WriteIFFData(STRPTR Name,APTR Data,LONG Size,ULONG Type);
BYTE __regargs			ReadIFFData(STRPTR Name,APTR Data,LONG Size,ULONG Type);
VOID __regargs			SplitFileName(STRPTR FullName,STRPTR *FileName,STRPTR DrawerName);
struct List *			CreateList(VOID);
VOID __regargs			DeleteList(struct List *List);
ULONG __asm __saveds		BackfillRoutine(register __a0 struct Hook *Hook,register __a1 struct {ULONG Layer; struct Rectangle Bounds;} *Bounds,register __a2 struct RastPort *RPort);
UBYTE * __regargs		ShrinkName(const UBYTE *Source,UBYTE *Destination,WORD MaxLength,BOOLEAN FixSuffix);
VOID __regargs			BuildFontName(STRPTR Destination,const STRPTR Name,LONG Size);
BOOLEAN __regargs		CreateMenuGlyphs(struct Screen *Screen,struct DrawInfo *DrawInfo,struct Image **AmigaPtr,struct Image **CheckPtr);
VOID __regargs			DateStamp2TimeVal(struct DateStamp *Stamp,struct timeval *TimeVal);
VOID __regargs			FixName(STRPTR Name);
VOID __regargs			ShowError(struct Window *Window,LONG Primary,LONG Secondary,STRPTR String);

struct RendezvousData * __saveds __asm	RendezvousLogin(register __a0 struct MsgPort *ReadPort,register __a1 struct MsgPort *WritePort,register __a2 struct TagItem *TagList);
VOID __saveds __asm			RendezvousLogoff(register __a0 struct RendezvousData *Data);
struct Node * __saveds __asm		RendezvousNewNode(register __a0 STRPTR Name);

struct List * __regargs		BuildModeList(LONG *Index,ULONG DisplayMode,ULONG (* __asm ModeFilter)(register __a1 ULONG ID));
BOOLEAN __regargs		IsAssign(STRPTR Name);
BOOLEAN __regargs		LockInAssign(BPTR TheLock,STRPTR TheAssignment);
VOID __regargs			DeleteBitMap(struct BitMap *BitMap);
struct BitMap * __regargs	CreateBitMap(ULONG Width,ULONG Height,ULONG Depth,ULONG Flags,struct BitMap *Friend);
LONG __regargs			LaunchCommand(STRPTR Command);
BOOL __regargs			AskDial(struct Window *Parent);
struct TagItem * __regargs	GetDimensionTags(struct Window *Reference,struct TagItem *Tags);
VOID __regargs			PutDimensionTags(struct Window *Reference,LONG Left,LONG Top,LONG Width,LONG Height);

	/* termBeep.c */

VOID				Beep(VOID);
VOID				BellSignal(VOID);

	/* termBeta.c */

VOID				StartBetaTask(VOID);
VOID				StopBetaTask(VOID);

	/* termBoxes.c */

LONG				SZ_GetLeftEdge(VOID);
VOID __regargs			SZ_SetTopEdge(LONG Top);
VOID __regargs			SZ_SetLeftEdge(LONG Left);
VOID __regargs			SZ_SetAbsoluteTop(LONG Top);
VOID __regargs			SZ_SetAbsoluteLeft(LONG Left);
VOID __regargs			SZ_SetWidth(LONG Width);
VOID __regargs			SZ_AddLeftOffset(LONG Offset);
LONG __stdargs			SZ_LeftOffsetN(LONG DataArray,...);
VOID				SZ_SizeCleanup(VOID);
BYTE __regargs			SZ_SizeSetup(struct Screen *Screen,struct TextAttr *TextAttr);
ULONG __regargs			SZ_GetLen(STRPTR String);
VOID __regargs			SZ_FreeBoxes(struct TextBox *FirstBox);
LONG __regargs			SZ_BoxWidth(LONG Chars);
LONG __regargs			SZ_BoxHeight(LONG Lines);
VOID __regargs			SZ_SetTitlePen(struct TextBox *Box,LONG FgPen,LONG BgPen);
struct TextBox * __stdargs	SZ_CreateTextBox(struct TextBox **FirstBox,...);
VOID __stdargs			SZ_SetBoxTitles(struct TextBox *Box,STRPTR Array,...);
VOID __regargs			SZ_SetLine(struct RastPort *RPort,struct TextBox *Box,LONG Line,STRPTR String);
VOID __stdargs			SZ_PrintLine(struct RastPort *RPort,struct TextBox *Box,LONG Line,STRPTR String,...);
VOID __regargs			SZ_DrawBoxes(struct RastPort *RPort,struct TextBox *FirstBox);
VOID __regargs			SZ_MoveBoxes(struct TextBox *FirstBox,LONG Left,LONG Top);
VOID __regargs			SZ_SetBoxes(struct TextBox *FirstBox,LONG Left,LONG Top);
LONG __regargs			SZ_GetBoxInfo(struct TextBox *Box,LONG Type);

	/* termBuffer.c */

VOID __regargs			AddLine(register STRPTR Line,register LONG Size);
VOID __regargs			StoreBuffer(register STRPTR Buffer,register LONG Size,register COPTR OutputRoutine);
VOID				DeleteBuffer(VOID);
BYTE				CreateBuffer(VOID);
VOID				FreeBuffer(VOID);
VOID __regargs			DeleteSearchInfo(struct SearchInfo *Info);
struct SearchInfo * __regargs	CreateSearchInfo(STRPTR Pattern,BOOLEAN Forward,BOOLEAN IgnoreCase,BOOLEAN WholeWords);
LONG __regargs			SearchTextBuffer(struct SearchInfo *Info);
BYTE __regargs			GetSearchString(struct Window *ParentWindow,BYTE *ParentTerminated,STRPTR Buffer,struct Hook *HistoryHook,BYTE *Forward,BYTE *IgnoreCase,BYTE *WholeWords);

BOOLEAN __regargs			HandleSearchMessage(struct SearchContext *Context,struct IntuiMessage **MessagePtr);
VOID __regargs				DeleteSearchContext(struct SearchContext *Context);
struct SearchContext * __regargs	CreateSearchContext(struct Window *ParentWindow,STRPTR Buffer,struct Hook *HistoryHook,BOOLEAN *Forward,BOOLEAN *IgnoreCase,BOOLEAN *WholeWords);


	/* termCall.c */

VOID __regargs			MakeCall(STRPTR Name,STRPTR Number);
VOID __regargs			StopCall(BYTE Finish);

	/* termCapture.c */

VOID __regargs			CaptureFilteredTo_Buffer(register APTR Buffer,register LONG Size);
VOID __regargs			CaptureFilteredTo_Buffer_File(register APTR Buffer,register LONG Size);
VOID __regargs			CaptureFilteredTo_Buffer_File_Printer(register APTR Buffer,register LONG Size);
VOID __regargs			CaptureFilteredTo_File(register APTR Buffer,register LONG Size);
VOID __regargs			CaptureFilteredTo_File_Printer(register APTR Buffer,register LONG Size);
VOID __regargs			CaptureFilteredTo_Printer(register APTR Buffer,register LONG Size);
VOID __regargs			CaptureFilteredTo_Buffer_Printer(register APTR Buffer,register LONG Size);
VOID __regargs			CaptureRawTo_Buffer(register APTR Buffer,register LONG Size);
VOID __regargs			CaptureRawTo_Buffer_File(register APTR Buffer,register LONG Size);
VOID __regargs			CaptureRawTo_Buffer_File_Printer(register APTR Buffer,register LONG Size);
VOID __regargs			CaptureRawTo_File(register APTR Buffer,register LONG Size);
VOID __regargs			CaptureRawTo_File_Printer(register APTR Buffer,register LONG Size);
VOID __regargs			CaptureRawTo_Printer(register APTR Buffer,register LONG Size);
VOID __regargs			CaptureRawTo_Buffer_Printer(register APTR Buffer,register LONG Size);
VOID __regargs			ClosePrinterCapture(BYTE Force);
BYTE __regargs			OpenPrinterCapture(BYTE Controller);
VOID				CloseFileCapture(VOID);
BYTE				OpenFileCapture(VOID);
VOID __regargs			CaptureToFile(APTR Buffer,LONG Size);
VOID __regargs			CaptureToPrinter(APTR Buffer,LONG Size);

	/* termClip.c */

VOID				CloseClip(VOID);
WORD __regargs			GetClip(STRPTR Buffer,WORD Len,BYTE Filter);
BYTE __regargs			OpenClip(LONG Unit);
BYTE __regargs			GetClipContents(LONG Unit,APTR *Buffer,LONG *Size);
BYTE __regargs			AddClip(STRPTR Buffer,LONG Size);
BYTE __regargs			SaveClip(STRPTR Buffer,LONG Size);
LONG __regargs			LoadClip(STRPTR Buffer,LONG Size);

	/* termConfig.c */

VOID __regargs			FinalFix(struct Configuration *Config,BOOLEAN IsPhonebook,LONG Version,LONG Revision);
VOID __regargs			FixOldConfig(struct Configuration *Config,UBYTE ConfigChunkType,BOOLEAN IsPhonebook,LONG Version,LONG Revision);
VOID __regargs			ResetConfig(struct Configuration *Config,STRPTR PathBuffer);
VOID __regargs			DeleteConfigEntry(struct Configuration *Config,BYTE Type);
VOID __regargs			ResetConfigEntry(struct Configuration *Configuration,BYTE Type,BYTE Default);
APTR __regargs			GetConfigEntry(struct Configuration *Config,BYTE Type);
BYTE __regargs			CreateConfigEntry(struct Configuration *Config,BYTE Type);
VOID __regargs			DeleteConfiguration(struct Configuration *Config);
struct Configuration * __regargs	CreateConfiguration(BYTE Fill);
VOID __regargs			SaveConfig(struct Configuration *Src,struct Configuration *Dst);
VOID __regargs			UpdateConfig(struct Configuration *Src,struct Configuration *Dst);
VOID __regargs			SwapConfig(struct Configuration *Src,struct Configuration *Dst);
BYTE __regargs			SavePhonebook(STRPTR Name);
BYTE __regargs			LoadPhonebook(STRPTR Name);
BYTE __regargs			WriteConfig(STRPTR Name,struct Configuration *Config);
BYTE __regargs			ReadConfig(STRPTR Name,struct Configuration *Config);

	/* termConsole.c */

VOID				ConProcessUpdate(VOID);
VOID				ConOutputUpdate(VOID);
VOID				ConFontScaleUpdate(VOID);
VOID				ConTransWrite(STRPTR Buffer,LONG Size);
VOID				ConProcessDataTransExternal(register STRPTR String,register LONG Size);
VOID				ConProcessDataExternal(register STRPTR String,register LONG Size);
VOID				ConProcessData7(register STRPTR String,register LONG Size);
VOID				ConProcessData8(register STRPTR String,register LONG Size);
VOID				ConProcessDataHex7(register STRPTR String,register LONG Size);
VOID				ConProcessDataHex8(register STRPTR String,register LONG Size);
VOID				ConTransferHost(STRPTR Buffer,LONG Len);
VOID				ConsoleCommand(STRPTR String);
VOID __regargs			ConBypass(STRPTR String,LONG Size);
VOID				ConProcess(register STRPTR String,register LONG Size);
VOID __stdargs			ConWrites(STRPTR String,...);
VOID __regargs			FlowInit(BYTE FullReset);
VOID __regargs			GfxText(struct RastPort *RPort,STRPTR Buffer,LONG Length);
UBYTE __regargs			ConvertTheKey(STRPTR Buffer,LONG *Len,UWORD Code,UWORD Qualifier,ULONG Prev);
UBYTE __regargs			KeyConvert(struct IntuiMessage *Massage,STRPTR Buffer,LONG *Len);
BYTE				DoBackspace(VOID);
BYTE				DoBeep(VOID);
BYTE				DoxON(VOID);
BYTE				DoLF(VOID);
BYTE				DoShiftIn(VOID);
BYTE				DoShiftOut(VOID);
BYTE				DoCR_LF(VOID);
BYTE				DoFF(VOID);
BYTE				DoLF_FF_VT(VOID);
BYTE				DoCR(VOID);
BYTE				DoTab(VOID);
BYTE				DoEnq(VOID);
BYTE				DoEsc(VOID);
BYTE				DoCsi(VOID);
BYTE				DoNewEsc(UBYTE Char);
BYTE				DoNewCsi(UBYTE Char);
VOID				Update_CR_LF_Translation(VOID);

	/* termCRC.asm */

ULONG __asm			DoCRC(register __a0 APTR,register __d0 ULONG);

	/* termCrypt.c */

VOID __regargs			Encrypt(UBYTE *Source,WORD SourceLen,UBYTE *Destination,UBYTE *Key,WORD KeyLen);
VOID __regargs			Decrypt(UBYTE *Source,WORD SourceLen,UBYTE *Destination,UBYTE *Key,WORD KeyLen);

	/* termDial.c */

BOOL				DialPanel(VOID);

	/* termEmulation.c */

VOID				UpdatePens(VOID);
WORD				GetFontWidth(VOID);
VOID				RethinkRasterLimit(VOID);
VOID __regargs			ScrollRegion(WORD Direction);
BYTE				DoCancel(VOID);
VOID				CSIFake(VOID);
BYTE				ParseCode(UBYTE c);
VOID				NormalCursor(VOID);
VOID				GhostCursor(VOID);
VOID __regargs			ClipBlitCursor(UBYTE DoClip,UBYTE DoMove);
VOID				RepositionCursor(VOID);
VOID				ClearCursor(VOID);
VOID				DrawCursor(VOID);
VOID				BackupRender(VOID);
VOID __regargs			ShiftChar(LONG Size);
VOID				Ignore(VOID);
VOID				ScrollDown(STRPTR Buffer);
VOID				ScrollUp(STRPTR Buffer);
VOID				CursorScrollDown(VOID);
VOID				DownLine(VOID);
VOID				UpLine(VOID);
VOID				CursorScrollUp(VOID);
VOID				NextLine(VOID);
VOID				SaveCursor(VOID);
VOID				FontStuff(STRPTR Buffer);
VOID				LoadCursor(VOID);
VOID				ScaleFont(STRPTR Buffer);
VOID				AlignmentTest(VOID);
VOID				SetTab(VOID);
VOID				RequestTerminal(STRPTR Buffer);
VOID				SoftReset(VOID);
VOID				Reset(VOID);
VOID				PrinterController(STRPTR Buffer);
VOID				RequestInformation(STRPTR Buffer);
VOID				SetSomething(STRPTR Buffer);
VOID				NumericAppMode(STRPTR Buffer);
VOID				MoveCursor(STRPTR Buffer);
VOID				MoveColumn(STRPTR Buffer);
VOID				EraseLine(STRPTR Buffer);
VOID				EraseScreen(STRPTR Buffer);
VOID				EraseCharacters(STRPTR Buffer);
VOID				InsertCharacters(STRPTR Buffer);
VOID				InsertLine(STRPTR Buffer);
VOID				ClearLine(STRPTR Buffer);
VOID				SetTabs(STRPTR Buffer);
VOID				SetAbsolutePosition(STRPTR Buffer);
VOID				SetTopPosition(STRPTR Buffer);
VOID				SetAttributes(STRPTR Buffer);
VOID				SetRegion(STRPTR Buffer);
VOID				ResetCursor(VOID);
VOID				MoveCursorUp(STRPTR Buffer);
VOID				MoveCursorDown(STRPTR Buffer);

	/* termEmulationProcess.c */

VOID				DeleteEmulationProcess(VOID);
BOOLEAN				CreateEmulationProcess(VOID);

	/* termFastMacros.c */

struct MacroNode * __regargs	NewFastMacro(STRPTR Macro,STRPTR Code);
BOOLEAN __regargs		SaveFastMacros(STRPTR Name,struct List *FastMacroList);
BOOLEAN __regargs		LoadFastMacros(STRPTR Name,struct List *FastMacroList);

	/* termFastMacroWindow.c */

VOID __regargs			RefreshFastWindow(BYTE FullRefresh);
VOID				CloseFastWindow(VOID);
BYTE				OpenFastWindow(VOID);
VOID __regargs			HandleFastWindowGadget(ULONG IClass,LONG ICode,LONG GadgetID);

	/* termFileBuffer.c */

LONG __stdargs			BPrintf(struct Buffer *Buffer,STRPTR Format,...);
BYTE __regargs			BufferFlush(struct Buffer *Buffer);
BYTE __regargs			BufferClose(struct Buffer *Buffer);
struct Buffer * __regargs	BufferOpen(STRPTR Name,STRPTR AccessMode);
BYTE __regargs			BufferSeek(struct Buffer *Buffer,LONG Offset,LONG Origin);
LONG __regargs			BufferRead(struct Buffer *Buffer,STRPTR Destination,LONG Size);
LONG __regargs			BufferWrite(struct Buffer *Buffer,STRPTR Source,LONG Size);

	/* termHotkeys.c */

VOID				ShutdownCx(VOID);
BYTE				SetupCx(VOID);
BYTE __regargs			LoadHotkeys(STRPTR Name,struct Hotkeys *Keys);

	/* termIdentify.c */

WORD __regargs			GetFileType(STRPTR Name,BYTE AttachComment);
VOID __regargs			Identify(STRPTR Name,BYTE AttachComment);
VOID __regargs			AddIcon(STRPTR Name,WORD Index,BYTE Override);

	/* TerminalPanel.c */

BYTE __regargs			TerminalPanel(struct Configuration *LocalConfig,BYTE *Default);

	/* termInfoWindow.c */

VOID				CloseInfoWindow(VOID);
VOID				OpenInfoWindow(VOID);
	/* termInit.c */

VOID				TTYResize(VOID);
VOID				UpdateTerminalLimits(VOID);
STRPTR				BuildMenu(VOID);
VOID __regargs			Current2DefaultPalette(struct Configuration *SomeConfig);
VOID __regargs			Default2CurrentPalette(struct Configuration *SomeConfig);
VOID __regargs			PaletteSetup(struct Configuration *SomeConfig);
VOID __regargs			ResetCursorKeys(struct CursorKeys *Keys);
VOID				ScreenSizeStuff(VOID);
VOID				PubScreenStuff(VOID);
VOID				ConfigSetup(VOID);
BYTE				DisplayReset(VOID);
BYTE				DeleteDisplay(VOID);
STRPTR __regargs		CreateDisplay(BYTE FirstSetup);
VOID __regargs			CloseAll(BYTE CloseDOS);
STRPTR __regargs		OpenAll(STRPTR ConfigPath);

	/* termLists.c */

VOID __regargs			ClearGenericList(struct GenericList *List);
VOID __regargs			DeleteGenericList(struct GenericList *List);
struct GenericList *		CreateGenericList(VOID);
struct Node * __regargs		FirstGenericListNode(struct GenericList *List);
struct Node * __regargs		LastGenericListNode(struct GenericList *List);
struct Node * __regargs		NextGenericListNode(struct GenericList *List);
struct Node * __regargs		PrevGenericListNode(struct GenericList *List);
VOID __regargs			DeleteGenericListNode(struct GenericList *List,struct Node *Node);
struct Node * __regargs		CreateGenericListNode(LONG Size,STRPTR Name);
VOID __regargs			AddGenericListNode(struct GenericList *List,struct Node *Node,BYTE Mode);
LONG __regargs			GenericListCount(struct GenericList *List);

	/* termLocale.c */

VOID __regargs			LocaleOpen(STRPTR CatalogName,STRPTR BuiltIn,LONG Version);
VOID				LocaleClose(VOID);
VOID				LanguageCheck(VOID);
WORD __regargs			GadToolsStrlen(STRPTR String);
WORD __regargs			GadToolsLongestString(WORD From,WORD To);
STRPTR __regargs		LocaleSeconds(WORD Seconds);
STRPTR				SmallCurrency(VOID);
VOID __regargs			InsertGrouping(STRPTR Buffer,STRPTR GroupData,STRPTR GroupSeparator);
VOID __regargs			ConvertMonetaryQuantity(LONG Units,STRPTR Destination,BOOL UseCurrency);
STRPTR __regargs		CreateSum(LONG Quantity,BYTE UseCurrency);
VOID __regargs			LocalizeString(STRPTR *Strings,WORD From,WORD To);
VOID __regargs			LocalizeStringTable(STRPTR *Strings,LONG *Table);
VOID __regargs			LocalizeMenu(struct NewMenu *Menu,WORD From);
VOID __regargs			LocalizeMenuTable(struct NewMenu *Menu,LONG *Table);
STRPTR __regargs		LocaleString(LONG ID);
STRPTR __saveds __stdargs	LocaleHookFunc(struct Hook *Hook,struct LayoutHandle *Handle,LONG ID);
BOOLEAN __regargs		FormatStamp(struct DateStamp *Stamp,STRPTR DateBuffer,STRPTR TimeBuffer,STRPTR BothBuffer,BOOLEAN SubstituteDay);
VOID __regargs			FormatTime(STRPTR Buffer,LONG Hours,LONG Minutes,LONG Seconds);

	/* termMain.c */

LONG				main(VOID);
VOID __saveds			HandleInput(VOID);
BYTE				HandleWindow(VOID);
VOID __regargs			HandleMenuCode(ULONG Code,ULONG Qualifier);
VOID __regargs			HandleMenu(ULONG Code,ULONG Qualifier);
BYTE				HandleWorkbenchWindow(VOID);
VOID				HandleIconify(VOID);
VOID __regargs			HandleOnlineCleanup(BOOL Hangup);
VOID				HandleFlowChange(VOID);
VOID				HandleSerialReset(VOID);
VOID				HandleSerialRelease(VOID);
VOID				HandleExternalEmulation(VOID);
BYTE				HandleSerialCheck(VOID);
BYTE				HandleQueueMsg(VOID);
BYTE				HandleOwnDevUnit(VOID);
VOID __regargs			FullHangup(BOOL ForceIt);

	/* termMarker.c */

VOID __regargs			BM_Draw(struct BlockMarker *,VOID (*Select)(struct BlockMarker *,LONG Left,LONG Top,LONG Width,LONG Height));
VOID __regargs			BM_ClearMark(struct BlockMarker *);
struct BlockMarker * __regargs	BM_SetMark(APTR Object,VPTR Select,VPTR Unselect,LONG Width,LONG Height,LONG LeftEdge,LONG TopEdge,LONG Top,LONG Lines,LONG X,LONG Y,WORD TextFontWidth,WORD TextFontHeight);
VOID __regargs			BM_ExtendMark(struct BlockMarker *,LONG X,LONG Y,LONG Delta);
VOID				ToggleSelect(struct BlockMarker *,LONG Left,LONG Top,LONG Width,LONG Height);
VOID __regargs			WriteTrimmedString(struct IFFHandle *Handle,STRPTR String,LONG Len,BOOL NeedClipConversion);
LONG __regargs			TrimLength(STRPTR String,LONG Len);
VOID __regargs			MarkWord(LONG MouseX,LONG MouseY);
VOID __regargs			SetMarker(LONG MouseX,LONG MouseY);
VOID __regargs			MoveMarker(LONG MouseX,LONG MouseY);
VOID				DropMarker(VOID);
VOID				FreeMarker(VOID);
VOID __regargs			ClipMarker(BYTE Append);

	/* termMemory.c */

BOOLEAN				MemorySetup(VOID);
VOID				MemoryCleanup(VOID);
VOID __regargs			FreeVecPooled(APTR Memory);
APTR __regargs			AllocVecPooled(ULONG Size,ULONG Flags);

	/* termMsgQueue.c */

APTR __regargs			GetMsgItem(struct MsgQueue *Queue);
VOID __regargs			PutMsgItem(struct MsgQueue *Queue,struct MsgItem *Item);
VOID __regargs			DeleteMsgItem(struct MsgItem *Item);
struct MsgItem * __regargs	CreateMsgItem(LONG Size);
struct MsgItem * __regargs	CreateMinMsgItem(LONG Size);
VOID __regargs			UnlockMsgQueue(struct MsgQueue *Queue);
VOID __regargs			DeleteMsgQueue(struct MsgQueue *Queue);
struct MsgQueue * __regargs	CreateMsgQueue(ULONG SigMask,LONG MaxSize);
VOID __regargs			SetQueueDiscard(struct MsgQueue *Queue,BOOL Mode);

	/* termOldConfig.c */

BYTE __regargs			LoadOldPhonebook(STRPTR Name);
BYTE __regargs			ReadOldConfig(STRPTR Name,struct Configuration *Config);

	/* termPacket.c */

VOID				ClearPacketHistory(VOID);
VOID __regargs			AddPacketHistory(STRPTR Buffer);
VOID __regargs			DeletePacketWindow(BYTE WindowOnly);
BYTE				CreatePacketWindow(VOID);

	/* termPhone.c */

VOID __regargs			RemoveDialEntry(LONG Entry);
VOID __regargs			RemoveDialNode(struct PhoneNode *Node);
VOID __regargs			SortToList(struct PhoneNode *PhoneNode);
VOID __regargs			FreeDialList(BYTE ClearAll);
struct List *			CreatePhoneList(VOID);
VOID __regargs			DeletePhoneList(struct List *PhoneList);
VOID				SortPhoneEntries(VOID);
VOID __regargs			FreeTimeDateNode(struct TimeDateNode *Node);
VOID __regargs			FreeTimeDateList(struct List *List);
VOID __regargs			CopyTimeDateList(struct List *From,struct List *To,BYTE SkipFirst);
VOID __regargs			AdaptTimeDateNode(struct TimeDateNode *Node);
VOID __regargs			SortTimeTable(struct TimeDateNode *Node);
struct List * __regargs		BuildTimeList(struct TimeDateNode *Node);
BYTE __regargs			ResizeTimeDateNode(struct TimeDateNode *Node,LONG Count,UBYTE Time);
BYTE __regargs			DeleteTimeDateNode(struct TimeDateNode *Node,LONG Index);
struct TimeDateNode * __regargs	CreateTimeDateNode(BYTE Month,BYTE Day,STRPTR Comment,LONG Count);
VOID __regargs			RemPhoneEntry(LONG Num);
BYTE				NewPhoneEntry(VOID);
struct PhoneEntry ** __regargs	CreatePhonebook(LONG Size,LONG *AllocSize,BYTE CreateEntries);
VOID __regargs			DeletePhonebook(struct PhoneEntry **Phonebook,LONG Size,BYTE FreeEntries);

	/* termPickFile.c */

BOOLEAN __regargs		ValidateFile(STRPTR FileName,LONG Type,STRPTR RealName);
BYTE __regargs			PickFile(struct Window *Window,STRPTR Directory,STRPTR Pattern,STRPTR Prompt,STRPTR Name,LONG Type);

	/* termPickScreen.c */

BYTE __regargs			PickScreen(struct Window *Window,STRPTR Name);

	/* termPrint.c */

BOOLEAN __stdargs		PrintText(BPTR File,struct Window *ReqWindow,LONG *Error,STRPTR String,...);
BOOLEAN __regargs		PrintFileInformation(BPTR File,struct Window *ReqWindow,LONG *Error,STRPTR Name,ULONG Flags);
BOOLEAN __regargs		PrintEntry(BPTR File,struct Window *ReqWindow,BOOLEAN Plain,LONG *Error,struct PhoneEntry *Entry,ULONG Flags);
BOOLEAN __regargs		PrintScreen(BPTR File,struct Window *ReqWindow,LONG *Error);
BOOLEAN __regargs		PrintClip(BPTR File,struct Window *ReqWindow,LONG *Error);
BOOLEAN __regargs		PrintBuffer(BPTR File,struct Window *ReqWindow,LONG *Error);
VOID __regargs			PrintSomething(BYTE Source);
VOID __regargs			PrintRegion(WORD Top,WORD Bottom,BOOL FormFeed);
BOOLEAN				PrintScreenGfx(VOID);

	/* termRaster.c */

VOID				DeleteRaster(VOID);
BYTE				CreateRaster(VOID);
VOID __regargs			RasterEraseScreen(BYTE Mode);
VOID __regargs			RasterEraseLine(BYTE Mode);
VOID __regargs			RasterEraseCharacters(WORD Chars);
VOID __regargs			RasterClearLine(WORD Lines,WORD Top);
VOID __regargs			RasterInsertLine(WORD Lines,WORD Top);
VOID __regargs			RasterScrollRegion(WORD Direction,WORD RasterTop,WORD RasterBottom,WORD RasterLines);
VOID __regargs			RasterShiftChar(WORD Size);
VOID __regargs			RasterPutString(STRPTR String,WORD Length);

	/* termRemember.c */

VOID				FinishRecord(VOID);
BOOLEAN __regargs		CreateRecord(STRPTR BBSName);
VOID				DeleteRecord(VOID);
VOID				RememberResetOutput(VOID);
VOID __regargs			RememberOutputText(register STRPTR String,register LONG Size);
VOID				RememberResetInput(VOID);
VOID __regargs			RememberInputText(register STRPTR String,register LONG Size);
VOID				RememberSpill(VOID);

	/* termResponse.c */

VOID				HandleResponse(VOID);

	/* termReviewBuffer.c */

VOID __regargs			UpdateReview(BYTE Force);
VOID __regargs			MoveReview(BYTE Mode);
VOID				DeleteReview(VOID);
BYTE				CreateReview(VOID);

	/* termSaveWindow.c */

BYTE __regargs			SaveWindow(STRPTR Name,struct Window *Window);

	/* termScale.c */

VOID				DeleteScale(VOID);
BYTE __regargs			CreateScale(struct Window *Parent);
VOID __regargs			PrintScaled(STRPTR Buffer,LONG Size,UBYTE Scale);

	/* termScroll.c */

VOID __regargs			ScrollLineRectFill(struct RastPort *RPort,WORD MinX,WORD MinY,WORD MaxX,WORD MaxY);
VOID __regargs			ScrollLineRectFillNoTabChange(struct RastPort *RPort,WORD MinX,WORD MinY,WORD MaxX,WORD MaxY);
VOID __regargs			ScrollLineRaster(struct RastPort *RPort,WORD DeltaX,WORD DeltaY,WORD MinX,WORD MinY,WORD MaxX,WORD MaxY,BYTE Smooth);
VOID __regargs			ScrollLineRasterNoTabChange(struct RastPort *RPort,WORD DeltaX,WORD DeltaY,WORD MinX,WORD MinY,WORD MaxX,WORD MaxY,BYTE Smooth);
VOID __regargs			ScrollLineEraseScreen(BYTE Mode);
VOID __regargs			ScrollLineEraseLine(BYTE Mode);
VOID __regargs			ScrollLineEraseCharacters(WORD Chars);
VOID __regargs			ScrollLineShiftChar(WORD Size);
VOID __regargs			ScrollLinePutString(WORD Length);

	/* termSendText.c */

BYTE				SendLinePrompt(STRPTR Line,LONG Len);
BYTE				SendLineSimple(STRPTR Line,LONG Len);
BYTE				SendLineDial(STRPTR Line,LONG Len);
BYTE				SendLineDelay(STRPTR Line,LONG Len);
BYTE				SendLineEcho(STRPTR Line,LONG Len);
BYTE				SendLineAnyEcho(STRPTR Line,LONG Len);
BYTE				SendLineKeyDelay(STRPTR Line,LONG Len);
VOID				SendSetup(VOID);

	/* termSerial.c */

VOID				SendBreak(VOID);
VOID				HangUp(VOID);
VOID				CopyWriteFlags(VOID);
VOID __regargs			SerialCommand(STRPTR String);
VOID __regargs			SerWriteVerbatim(APTR Buffer,LONG Size,BOOLEAN Echo);
VOID __regargs			SerWrite(APTR Buffer,LONG Size);
VOID __regargs			RestartSerial(BYTE Override);
VOID				ClearSerial(VOID);
BYTE				DropDTR(VOID);
VOID				DeleteSerial(VOID);
STRPTR __regargs		GetSerialError(LONG Error,BYTE *Reset);
STRPTR				CreateSerial(VOID);
BYTE __regargs			ReconfigureSerial(struct Window *Window,struct SerialSettings *SerialConfig);
VOID				ReopenSerial(VOID);
BYTE				HandleSerial(VOID);

	/* termSound.c */

VOID __regargs			FreeSound(struct SoundInfo *SoundInfo);
struct SoundInfo * __regargs	LoadSound(STRPTR Name,BYTE Warn);
VOID __regargs			PlaySound(struct SoundInfo *SoundInfo);
VOID				SoundExit(VOID);
VOID				SoundInit(VOID);
VOID __regargs			SoundPlay(WORD Sound);

	/* termSpeech.c */

VOID				DeleteSpeech(VOID);
BYTE				CreateSpeech(VOID);
VOID __stdargs			Say(STRPTR String,...);
VOID				SpeechSetup(VOID);

	/* termStatusDisplay.c */

VOID __regargs			DeleteStatusGadget(struct Gadget *Gadget);
struct Gadget * __regargs	CreateStatusGadget(LONG Width,LONG ID);
VOID __saveds			StatusServer(VOID);
VOID				ForceStatusUpdate(VOID);

	/* termTextBuffer.c */

BYTE				LaunchBuffer(VOID);
VOID				TerminateBuffer(VOID);

	/* termTimeDate.c */

VOID __regargs			SelectTime(struct PhoneEntry *SomeEntry,struct List *TimeList,struct timeval *TimeVal);
struct List * __regargs	FindTimeDate(struct List *Patterns,STRPTR Number);
VOID __regargs			DeletePatternNode(struct PatternNode *Pattern);
struct PatternNode * __regargs	CreatePatternNode(STRPTR Comment);
VOID __regargs			DeletePatternList(struct List *List);
struct List * __regargs		LoadTimeDateList(STRPTR Name,LONG *Error);
BOOL __regargs			SaveTimeDateList(STRPTR Name,struct List *List,LONG *Error);

	/* termTransfer.c */

VOID __regargs			FreeFileTransferInfo(struct FileTransferInfo *Info);
struct FileTransferInfo *	AllocFileTransferInfo(VOID);
BYTE __regargs			AddFileTransferNode(struct FileTransferInfo *Info,STRPTR Name,ULONG Size);
VOID __regargs			SortFileTransferInfo(struct FileTransferInfo *Info);
struct FileTransferInfo * __regargs	BuildFileTransferInfo(struct FileRequester *FileRequester);
VOID __regargs			SendTextFile(BYTE Type,STRPTR TheFile);
VOID __regargs			StartXprReceive(BYTE Type,STRPTR Name,BYTE WaitForIt);
BYTE __regargs			StartXprSend(BYTE Type,BYTE WaitForIt);
BYTE __regargs			StartXprSendFromList(BYTE Type,BYTE WaitForIt);
BYTE __regargs			ChangeProtocol(STRPTR ProtocolName,BYTE Type);
VOID				ResetProtocol(VOID);
BYTE __regargs			ProtocolSetup(BYTE IgnoreOptions);
VOID				SaveProtocolOpts(VOID);
BYTE __regargs			SelectProtocol(STRPTR Name,struct Window *ParentWindow);
VOID				TransferCleanup(VOID);
VOID __regargs			RemoveUploadListItem(STRPTR Name);

	/* termTranslate.c */

VOID __regargs			TranslateSetup(struct TranslationHandle *Handle,STRPTR SourceBuffer,LONG SourceLen,STRPTR DestinationBuffer,LONG DestinationLen,struct TranslationEntry **Table);
LONG __regargs			TranslateBuffer(struct TranslationHandle *Handle);
UBYTE __regargs			NameToCode(STRPTR Name);
STRPTR __regargs		CodeToName(UBYTE Code);
VOID __regargs			FreeTranslationTable(struct TranslationEntry **Table);
struct TranslationEntry **	AllocTranslationTable(VOID);
VOID __regargs			FreeTranslationEntry(struct TranslationEntry *Entry);
LONG __regargs			TranslateString(STRPTR From,STRPTR To);
struct TranslationEntry * __regargs	AllocTranslationEntry(STRPTR String);
BYTE __regargs			FillTranslationTable(struct TranslationEntry **Table);
BYTE __regargs			IsStandardTable(struct TranslationEntry **Table);
VOID __regargs			TranslateBack(STRPTR From,LONG Len,STRPTR To);
BYTE __regargs			SaveTranslationTables(STRPTR Name,struct TranslationEntry **SendTable,struct TranslationEntry **ReceiveTable);
BYTE __regargs			LoadTranslationTables(STRPTR Name,struct TranslationEntry **SendTable,struct TranslationEntry **ReceiveTable);
BYTE __regargs			SetEmulatorOptions(BYTE Mode);
VOID				CloseEmulator(VOID);
BYTE __regargs			OpenEmulator(STRPTR Name);
VOID __regargs			SetupXEM_MacroKeys(struct MacroKeys *Keys);

	/* termTraps.c */

struct TrapNode * __regargs	ChangeTrapNode(struct GenericList *TrapList,struct TrapNode *Current,STRPTR Sequence,STRPTR Command);
struct TrapNode * __regargs	CreateTrapNode(STRPTR SequenceBuffer,STRPTR CommandBuffer);
BYTE __regargs			SaveTraps(STRPTR Name,struct List *TrapList);
BYTE __regargs			LoadTraps(STRPTR Name,struct GenericList *TrapList);

	/* termUploadQueue.c */

VOID				CloseQueueWindow(VOID);
VOID				DeleteQueueProcess(VOID);
BOOLEAN				CreateQueueProcess(VOID);
struct List *			GetUploadList(VOID);
BOOLEAN				CheckUpload(VOID);
VOID __regargs			StartUpload(UBYTE Type);
VOID __regargs			ToggleUploadQueueIcon(BOOL Mode);

	/* termVerify.c */

BOOLEAN __regargs		FindPath(struct Window *Parent,STRPTR Path,BOOLEAN CanCreate,LONG *Error);
BOOLEAN __regargs		FindDrawer(struct Window *Parent,STRPTR Drawer,BOOLEAN CanCreate,LONG *Error);
BOOLEAN __regargs		FindFile(struct Window *Parent,STRPTR File,LONG *Error);
BOOLEAN __regargs		FindProgram(struct Window *Parent,STRPTR Program,LONG *Error);
BOOLEAN __regargs		FindLibDev(struct Window *Parent,STRPTR File,LONG Type,LONG *Error);

	/* termXPR.c */

LONG __saveds __asm		xpr_fopen(register __a0 STRPTR FileName,register __a1 STRPTR AccessMode);
LONG __saveds __asm		xpr_fclose(register __a0 struct Buffer *File);
LONG __saveds __asm		xpr_fread(register __a0 APTR Buffer,register __d0 LONG Size,register __d1 LONG Count,register __a1 struct Buffer *File);
LONG __saveds __asm		xpr_fwrite(register __a0 APTR Buffer,register __d0 LONG Size,register __d1 LONG Count,register __a1 struct Buffer *File);
LONG __saveds __asm		xpr_fseek(register __a0 struct Buffer *File,register __d0 LONG Offset,register __d1 LONG Origin);
LONG __saveds __asm		xpr_sread(register __a0 APTR Buffer,register __d0 LONG Size,register __d1 ULONG Timeout);
LONG __saveds __asm		xpr_swrite(register __a0 APTR Buffer,register __d0 LONG Size);
LONG __saveds __asm		xpr_sflush(VOID);
LONG __saveds __asm		xpr_update(register __a0 struct XPR_UPDATE *UpdateInfo);
LONG __saveds __asm		xpr_chkabort(VOID);
LONG __saveds __asm		xpr_gets(register __a0 STRPTR Prompt,register __a1 STRPTR Buffer);
LONG __saveds __asm		xpr_setserial(register __d0 LONG Status);
LONG __saveds __asm		xpr_ffirst(register __a0 STRPTR Buffer,register __a1 STRPTR Pattern);
LONG __saveds __asm		xpr_fnext(register __d0 LONG OldState,register __a0 STRPTR Buffer,register __a1 STRPTR Pattern);
LONG __saveds __asm		xpr_finfo(register __a0 STRPTR FileName,register __d0 LONG InfoType);
ULONG __saveds __asm		xpr_options(register __d0 LONG NumOpts,register __a0 struct xpr_option **Opts);
LONG __saveds __asm		xpr_unlink(register __a0 STRPTR FileName);
LONG __saveds __asm		xpr_squery(VOID);
LONG __saveds __asm		xpr_getptr(register __d0 LONG InfoType);
LONG __saveds __asm		xpr_stealopts(register __a0 STRPTR Prompt,register __a1 STRPTR Buffer);

	/* TimePanel.c */

BYTE __regargs			TimePanel(UBYTE *StartTime);

	/* TransferPanel.c */

VOID __stdargs			AddTransferInfo(BOOLEAN Error,STRPTR Message,...);
BYTE __regargs			TransferPanel(STRPTR Title);
VOID __regargs			DeleteTransferPanel(BYTE WaitForPrompt);

	/* TranslationPanel.c */

BOOLEAN __regargs		TranslationPanel(struct TranslationEntry ***SendTablePtr,struct TranslationEntry ***ReceiveTablePtr,STRPTR LastTranslation,struct Window *Parent);

	/* TrapPanel.c */

VOID				TrapPanel(VOID);

	/* UploadPanel.c */

BYTE __regargs			UploadPanel(BOOLEAN SendMode);

	/* termDebug.c */

VOID				DebugExit(VOID);
BOOL				DebugInit(VOID);
