home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Elysian Archive
/
AmigaElysianArchive.iso
/
prog
/
c
/
cwrlib31.lha
/
cwritelib.h
< prev
next >
Wrap
C/C++ Source or Header
|
1992-07-22
|
2KB
|
82 lines
/* cwritelib.h
* prototypes and pragmas for our functions
* Note - the linker lib (starlib.lib) is not required
* if pragmas are used.
*/
#ifndef CWRITELIB_H
#define CWRITELIB_H
/* pragmas for our cwrite.library functions */
#pragma libcall CwrlibBase CWriteInit 1E 9802
#pragma libcall CwrlibBase CWrite 24 09803
#pragma libcall CwrlibBase CWriteAlloc 2A 0
#pragma libcall CwrlibBase CWriteFree 30 801
#pragma libcall CwrlibBase CWriteCursorType 36 0802
#pragma libcall CwrlibBase CWriteOpenWindow 3C 3210805
#pragma libcall CwrlibBase CWriteCloseWindow 42 801
#pragma libcall CwrlibBase CWriteSetColors 48 801
/****************************************************************************
The following structure is for *PRIVATE USE ONLY*!
The only thing it should be used for, is to handle the pointer over to
the library, that then will use the things.
None of the values should be altered, unless you are very sure of what
you are doing. - Doing so is on your own risk.
*/
struct CwrData{
APTR *Screen; /* Pointer to the window's screen */
APTR *Window; /* Pointer to the window */
APTR *BitMap; /* Pointer to the window's bitmap */
APTR *RastPort; /* Pointer to the window's rastport */
APTR *Font; /* Pointer to the window's font */
WORD XPos; /* Current X-position */
WORD YPos; /* Current Y-position */
LONG JumpAddress; /* The rest of this stuff, is for */
LONG String; /* internal use only! DO NOT ALTER! */
LONG TxtStyle; /* Use CWriteInit() instead, if you */
WORD RestoreX; /* have changed the window limits. */
WORD RestoreY;
WORD Length;
WORD Lines;
WORD Rows;
WORD Wy;
WORD ScreenH;
WORD ScreenW;
WORD CharX;
WORD CharY;
WORD BaseLine;
WORD No_of_bytes;
WORD BufCount;
WORD Color;
WORD SaveColor;
UBYTE Byte;
UBYTE Bold;
UBYTE Flags;
UBYTE ScrByte;
UBYTE CursorType;
UBYTE Unused; /* Padding character */
UWORD CursorPtrn[2];
UWORD AreaPtrn[2];
UBYTE Buffer[100];
};
#define CURSORTYPE_NONE 0
#define CURSORTYPE_FAST 1
#define CURSORTYPE_SLOW 2
#define CURSORTYPE_GHOSTED 3
/* protos for our cwrite.library functions */
VOID CWrite(struct CwrData*,UBYTE*,int);
VOID CWriteInit(struct CwrData*,struct Window*);
struct CwrData *CWriteAlloc(VOID);
VOID CWriteFree(struct CwrData*);
VOID CWriteCursorType(struct CwrData*,UBYTE);
struct Window *CWriteOpenWindow(UBYTE*,int,int,int,BOOL);
VOID CWriteCloseWindow(struct Window*);
VOID CWriteSetColors(struct Window*);
#endif