/**
 * Scout - The Amiga System Monitor
 *
 *------------------------------------------------------------------
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 *
 * You must not use this source code to gain profit of any kind!
 *
 *------------------------------------------------------------------
 *
 * @author Andreas Gelhausen
 * @author Richard Körber <rkoerber@gmx.de>
 */


/* Prototypes for functions defined in
scout.c
 */

extern struct Library * MUIMasterBase;

extern struct Task * myprocess;

extern struct MsgPort * myarexxport;

extern struct MsgPort ScoutPort;

extern struct IOStdReq InputIORequest;

extern BOOL input;

extern BOOL timer2;

extern struct timerequest TimerIORequest;

extern BYTE TimerSignal;

extern BOOL input;

extern char * portname;

extern APTR AP_Scout;

extern APTR WI_Main;

extern APTR WI_About;

extern APTR WI_Memory;

extern APTR WI_Interrupts;

extern APTR WI_Semaphores;

extern APTR WI_InputHandler;

extern APTR WI_Residents;

extern APTR WI_Windows;

extern APTR WI_Expansions;

extern APTR WI_Fonts;

extern APTR WI_Vectors;

extern APTR WI_Allocations;

extern APTR WI_System;

extern APTR WI_Mount;

extern APTR WI_LowMemory;

extern APTR WI_Timer;

extern APTR WI_Priority;

extern APTR SL_Priority;

extern APTR WI_Signal;

extern APTR memlist;

extern APTR intlist;

extern APTR resilist;

extern APTR inputlist;

extern APTR lowmemorylist;

extern APTR timerlist;

extern APTR syslist;

extern APTR memtext;

extern APTR inttext;

extern APTR resitext;

extern APTR inputtext;

extern APTR systext;

extern APTR lowmemorytext;

extern APTR timertext;

extern APTR vectext1;
extern APTR vectext2;
extern APTR vectext3;
extern APTR vectext4;

extern APTR alctext1;
extern APTR alctext2;
extern APTR alctext3;

extern APTR systext1;
extern APTR systext2;
extern APTR systext3;
extern APTR systext4;
extern APTR systext5;
extern APTR systext6;
extern APTR systext7;
extern APTR systext8;
extern APTR systext9;
extern APTR systext10;
extern APTR systext11;
extern APTR systext12;

extern APTR pritext1;

extern APTR pritext2;

extern APTR pritext3;

extern APTR sigtext1;

extern APTR sigtext2;

extern APTR sigtext3;

extern APTR sigtext4;

extern APTR resicount;

extern APTR inputcount;

extern APTR lowmemorycount;

extern APTR timercount;

extern APTR intcount;

extern int resicnt;

extern int inputcnt;

extern int lowmemorycnt;

extern int timercnt;

extern int intcnt;

extern APTR intmoretext0;

extern APTR intmoretext1;

extern APTR intmoretext2;

extern APTR intmoretext3;

extern APTR resimoretext0;

extern APTR resimoretext1;

extern APTR resimoretext2;

extern APTR resimoretext3;

extern APTR memmoretext0;

extern APTR memmoretext1;

extern APTR memmoretext2;

extern APTR memmoretext3;

extern APTR memmorelist;

extern APTR BT_Ports;

extern APTR BT_Residents;

extern APTR BT_Interrupts;

extern APTR BT_InputHandler;

extern APTR BT_Tasks;

extern APTR BT_Classes;

extern APTR BT_Locks;

extern APTR BT_Libraries;

extern APTR BT_Devices;

extern APTR BT_Resources;

extern APTR BT_Memory;

extern APTR BT_Windows;

extern APTR BT_Semaphores;

extern APTR BT_Assigns;

extern APTR BT_Fonts;

extern APTR BT_Expansions;

extern APTR BT_Vectors;

extern APTR BT_Allocations;

extern APTR BT_Mount;

extern APTR BT_Commands;

extern APTR BT_System;

extern APTR BT_Commodities;

extern APTR BT_ScreenMode;

extern APTR BT_LowMemory;

extern APTR BT_Timer;

extern APTR BT_AboutContinue;

extern APTR BT_MemPrint;

extern APTR BT_MemPriority;

extern APTR BT_MemMore;

extern APTR BT_MemExit;

extern APTR BT_IntUpdate;

extern APTR BT_IntPrint;

extern APTR BT_IntRemove;

extern APTR BT_IntMore;

extern APTR BT_IntExit;

extern APTR BT_InputUpdate;

extern APTR BT_InputPrint;

extern APTR BT_InputRemove;

extern APTR BT_InputPriority;

extern APTR BT_InputExit;

extern APTR BT_ResiUpdate;

extern APTR BT_ResiPrint;

extern APTR BT_ResiMore;

extern APTR BT_ResiExit;

extern APTR BT_VecUpdate;

extern APTR BT_VecPrint;

extern APTR BT_VecExit;

extern APTR BT_AlcUpdate;

extern APTR BT_AlcPrint;

extern APTR BT_AlcExit;

extern APTR BT_SysUpdate;

extern APTR BT_SysPrint;

extern APTR BT_SysExit;

extern APTR BT_LowMemoryUpdate;

extern APTR BT_LowMemoryPrint;

extern APTR BT_LowMemoryCause;

extern APTR BT_LowMemoryRemove;

extern APTR BT_LowMemoryPriority;

extern APTR BT_LowMemoryExit;

extern APTR BT_TimerUpdate;

extern APTR BT_TimerPrint;

extern APTR BT_TimerRemove;

extern APTR BT_TimerExit;

extern APTR BT_PriorityOK;

extern APTR BT_PriorityCancel;

extern APTR BT_SignalOK;

extern APTR BT_SignalCancel;

extern APTR AboutText;

extern APTR liblist_cmphook_ptr;

extern APTR devlist_cmphook_ptr;

extern APTR reslist_cmphook_ptr;

extern APTR tasklist_cmphook_ptr;

extern APTR portlist_cmphook_ptr;

extern APTR comlist_cmphook_ptr;

extern APTR asslist_cmphook_ptr;

extern APTR locklist_cmphook_ptr;

extern APTR cxlist_cmphook_ptr;

extern APTR classlist_cmphook_ptr;

extern APTR smodelist_cmphook_ptr;

extern APTR processorvalue;

extern APTR customvalue;

extern APTR processortext;

extern APTR customtext;

extern struct Remember * MemRememberKey;

extern struct Remember * IntRememberKey;

extern struct Remember * InputRememberKey;

extern struct Remember * ResiRememberKey;

extern struct Remember * GlobalRememberKey;

extern struct Remember * LowMemoryRememberKey;

extern struct Remember * TimerRememberKey;

extern struct Remember * SysRememberKey;

extern BPTR printfile;

extern BPTR prevdir;

extern unsigned char * tmpstr;

extern unsigned char * tmpstr2;

extern char * INT_TYPE[16];

extern char * no_information;

extern char * unknown_productid;

extern char UpdateText[8];

extern char RemoveText[8];

extern char CloseText[7];

extern char PriorityText[10];

extern char MoreText[6];

extern char ExitText[6];

extern char FreezeText[8];

extern char ActivateText[10];

extern char SignalText[8];

extern char BreakText[7];

extern char ContinueText[10];

extern char CancelText[7];

extern char OKText[3];

extern char ReleaseText[9];

extern char ObtainText[8];

extern char PrintText[7];

extern char ToFrontText[10];

extern char AppearText[8];

extern char DisappearText[11];

extern char EnableText[8];

extern char DisableText[9];

extern char KillText[6];

extern char ListChgText[9];

extern char UniqueText[8];

extern char CauseText[7];

extern char FunctionsText[11];

extern char AllocationsText[12];

extern char AssignsText[8];

extern char DevicesText[8];

extern char ClassesText[14];

extern char CommandsText[14];

extern char ExpansionsText[11];

extern char FontsText[6];

extern char InputHandlersText[14];

extern char InterruptsText[11];

extern char LibrariesText[10];

extern char LocksText[6];

extern char MemoryText[7];

extern char MountText[13];

extern char PortsText[6];

extern char ResidentsText[10];

extern char ResourcesText[10];

extern char SemaphoresText[11];

extern char TasksText[6];

extern char VectorsText[8];

extern char WindowsText[8];

extern char CommoditiesText[12];

extern char ScreenModeText[11];

extern char LowMemoryText[10];

extern char TimerText[10];

extern char SystemText[7];

extern struct NewMenu const menu_list[38];

extern struct EasyStruct myreqES;

int __stdargs MyRequest(char * , char * , ...);

extern char initialdrawer[101];

extern char initialfile[31];

extern UBYTE * printfilename;

BOOL FileRequest(void);

extern BPTR PrintHandle;

extern LONG PrintHandleMode;

BPTR HandlePrintStart(char * );

void HandlePrintStop(void);

extern struct WinFree * WinFree_ToDo;

extern struct WinFlag * WinFlag_ToDo;

extern struct WinFree FirstWinFree;

void RemoveWinFree(void);

struct WinFree * AllocWinFree(void);

void FreeMemoryOfAllWinFrees(void);

struct Library * MyOpenLibrary(char * , ULONG );

void reverse(char * );

char * ltob(ULONG , int );

void healstring(char * );

char * nonetest(char * );

int GetRamPointerCount(struct Library * );

LONG __asm memlist_dspfunc(register __a2 char ** , register __a1 struct MemoEntry * , register __a0 struct Hook * );

extern struct Hook memlist_dsphook;

void FreeMemory(void);

int GetMemory(struct MemoEntry ** );

void PrintMemory(char * );

void ShowMemory(void);

void SendMemList(void);

LONG __asm memmore_dspfunc(register __a2 char ** , register __a1 struct HunkEntry * , register __a0 struct Hook * );

extern struct Hook memmore_dsphook;

void GetChunkList(struct MemHeader * , struct Remember ** );

void GetMemTypeToTmpstr(ULONG );

void GetMemMore(struct MemHeader * );

LONG __asm intlist_dspfunc(register __a2 char ** , register __a1 struct IntEntry * , register __a0 struct Hook * );

extern struct Hook intlist_dsphook;

void FreeInterrupts(void);

APTR GetInterrupts(int , char * , struct IntEntry ** );

void PrintInterrupts(char * );

void ShowInterrupts(void);

void SendIntList(void);

void GetIntMore(struct IntEntry * );

LONG __asm inputlist_dspfunc(register __a2 char ** , register __a1 struct InputEntry * , register __a0 struct Hook * );

extern struct Hook inputlist_dsphook;

void FreeInputHandler(void);

int GetInputHandler(struct InputEntry ** );

void PrintInputHandlers(char * );

void ShowInputHandler(void);

void SendInputList(void);

LONG __asm resilist_dspfunc(register __a2 char ** , register __a1 struct ResiEntry * , register __a0 struct Hook * );

extern struct Hook resilist_dsphook;

void FreeResidents(void);

int GetResidents(struct ResiEntry ** );

void PrintResidents(char * );

void ShowResidents(void);

void SendResiList(void);

void GetResiMore(struct Resident * );

void ClearResetVectors(void);

void PrintVectors(char * );

void GetVectors(void);

void PrintAllocations(char * );

void GetAllocations(void);

void SendVectorList(void);

extern struct Hook syslist_dsphook;

void PrintSystem(char * );

void FreeSystem (void);

int GetSystem(struct SystemEntry **);

void ShowSystem (void);

void SendSystemList(void);

int __asm priority_callfunc(register __a1 char ** );

extern struct Hook priority_callhook;

BOOL GetPriority(char * , char * , LONG * );

BOOL GetSignal(char * , char * , char * );

LONG __asm lowmemorylist_dspfunc(register __a2 char ** , register __a1 struct LowMemoryEntry * , register __a0 struct Hook * );

LONG __asm timerlist_dspfunc(register __a2 char ** , register __a1 struct TimerEntry * , register __a0 struct Hook * );

extern struct Hook lowmemorylist_dsphook;

extern struct Hook timerlist_dsphook;

void FreeLowMemory(void);

int GetLowMemory(struct LowMemoryEntry ** );

void PrintLowMemory(char * );

void ShowLowMemory(void);

void SendLowMemory(void);

void FreeTimer(void);

int GetTimer(struct TimerEntry ** );

void PrintTimer(char * );

void ShowTimer(void);

void SendTimerList(void);

ULONG __asm main(register __a0 struct WBStartup * );


