/*	
	
	CheapComm Header File
	By Don Gaspar
	
	MOOSE, Inc. (Macintosh Object-Oriented Software Engineering)
	10866 Northridge Square
	Cupertino, CA 95014
	(408)252-7576
	
	Tuesday, April 17, 1990

*/

#define	_WaitNextEvent						0xA860
#define	_UnimplementedToolTrap	0xA89F
#define	_CommToolboxTrap				0x8B
#define	_UnimplementedOSTrap		0x9F

#define	kSysEnvironsVersion				1

#define	kOSEvent									app4Evt
#define	kSuspendResumeMessage	1
#define	kResumeMask							1

#define	kMinHeap									300*1024
#define	kMinSpace								10*1024
#define	kBufferSize								1*1024

#define	kExtremeNeg							-32768
#define	kExtremePos							32767-1

#define	kDefaultTermTool					"3TTY"
#define kDefaultFTTool							"4Text"
#define	kDefaultConnTool					"5Modem"

#define	cVScrollBar								11
#define	cHScrollBar								10

#define	rMenuBar									128
#define	rAboutAlert								128
#define	rUserAlert									129
#define	rWindow									1

#define	mApple										128
#define	iAbout											1

#define	mFile											129
#define	iNew											1
#define	iOpen											2
#define	iClose										4
#define	iSave											5
#define	iSaveAs										6
#define	iRevert										7
#define	iSendFile									9
#define	iReceiveFile								10
#define	iOpenCapture							12
#define	iAppendCapture						13
#define	iPageSetup								15
#define	iPrint											16
#define	iQuit											18

#define	mEdit											130
#define	iUndo											1
#define	iCut												3
#define	iCopy											4
#define	iPaste											5
#define	iClear											6
#define	iSelectAll									7
#define	iFind											9
#define	iFindAgain									10
#define	iRecallLast								12
#define	iShowClip									14

#define	mSettings									131
#define	iConnection								1
#define	iFileTransfer								2
#define	iTerminal									3

#define	mPhone									132
#define	iOpenConn								1
#define	iHangUp									3
#define	iBreak										4
#define	iSendXON									5
#define	iSendXOFF								6

#define	kDITop								0x0050
#define	kDILeft								0x0070

#define HiWrd(aLong)	(((aLong) >> 16) & 0xFFFF)
#define LoWrd(aLong)	((aLong) & 0xFFFF)

#define TopLeft(aRect)	(* (Point *) &(aRect).top)
#define BotRight(aRect)	(* (Point *) &(aRect).bottom)


extern void _DataInit();

/* Here are declarations for all of the C routines. In MPW 3.0 we can use
   actual prototypes for parameter type checking. */
	void EventLoop( void );
	void DoEvent( EventRecord *event );
	void AdjustCursor( Point mouse);
	void DoUpdate( WindowPtr window );
	void DoActivate( WindowPtr window, Boolean becomingActive );
	void AdjustMenus( void );
	void DoMenuCommand( long menuResult );
	Boolean DoCloseWindow( WindowPtr window );
	void Terminate( void );
	void Initialize( void );
	Boolean IsAppWindow( WindowPtr window );
	Boolean IsDAWindow( WindowPtr window );
	void AlertUser(char *msg, Boolean fatal);
	pascal long	TermSendProc(Ptr thePtr,long  theSize,long  refCon, short flags);
