sources taken from book CD: ack_lib -> /ACK/WIN/ACK_LIB fdemo -> /ACK/DOS/FDEMO/SOURCE (and /ACK/DOS/BORLAND as needed) mall -> /ACK/DOS/MALL/SOURCE (and /ACK/DOS/BORLAND as needed) some source files were missing for the demo projects and needed to be copied from /ACK/DOS/BORLAND (as indicated above)
140 lines
4.9 KiB
C
140 lines
4.9 KiB
C
// Header file for 3D Construction Kit
|
||
// Started: 01/02/94
|
||
// Author: Lary Myers
|
||
// Module: KIT.H
|
||
// (c) CopyRight 1994 All Rights Reserved
|
||
|
||
#define MODE_GRAPHICS 0x13
|
||
#define MODE_TEXT 0x03
|
||
|
||
#define SCREEN_LENGTH 64000 // Bytes in one full screen
|
||
#define SCREEN_LEN_WORDS 32000 // Words in one screen
|
||
#define SCREEN_LEN_DWORDS 16000 // DWORDS in one screen
|
||
#define SCREEN_PLANES 1 // Number of planes for this mode
|
||
#define SCREEN_WIDTH 320 // Number of bytes in one row
|
||
#define SCREEN_HEIGHT 200 // Number of rows on screen
|
||
|
||
#define BUTTON_OK 0
|
||
#define BUTTON_OKCANCEL 1
|
||
#define BUTTON_YESNO 2
|
||
#define BUTTON_ABORTRETRY 3
|
||
|
||
#define BUTTON_RET_OK 0
|
||
#define BUTTON_RET_CANCEL 1
|
||
#define BUTTON_RET_YES 2
|
||
#define BUTTON_RET_NO 3
|
||
#define BUTTON_RET_ABORT 4
|
||
#define BUTTON_RET_RETRY 5
|
||
|
||
// Used in IORTN.C for message boxes
|
||
typedef struct {
|
||
short x;
|
||
short y;
|
||
short x1;
|
||
short y1;
|
||
short index;
|
||
} BUTTON;
|
||
|
||
|
||
// Used in IORTN.C for message boxes
|
||
typedef struct {
|
||
short Count;
|
||
short List[4];
|
||
} INDEXES;
|
||
|
||
|
||
// Used in IORTN.C list boxes
|
||
typedef struct _lcb {
|
||
struct _lcb *Back;
|
||
struct _lcb *Fwd;
|
||
char Data[1];
|
||
} LCB;
|
||
|
||
typedef struct {
|
||
short ux;
|
||
short uy;
|
||
short ux1;
|
||
short uy1;
|
||
short dx;
|
||
short dy;
|
||
short dx1;
|
||
short dy1;
|
||
} ARROWRECT;
|
||
|
||
|
||
//=============================================================================
|
||
// Prototypes in UTIL.C
|
||
//=============================================================================
|
||
UINT Inkey(void);
|
||
char *GetExtent(char *s);
|
||
char *StripEndOfLine(char *s);
|
||
char *SkipSpaces(char *s);
|
||
char *AddExtent(char *s,char *ext);
|
||
char *CopyToComma(char *dest,char *src);
|
||
short HasWildCards(char *s);
|
||
void SetCurrentPath(char *p);
|
||
void InitDiskList(void);
|
||
char *GetPath(char *s);
|
||
//=============================================================================
|
||
// Prototypes in GRAPHICS.C
|
||
//=============================================================================
|
||
void SetMode(short mode);
|
||
void ClearScreen(UCHAR color);
|
||
void PutPixel(short x,short y,UCHAR color);
|
||
void DrawVerticalLine(short x,short y,short y1,UCHAR color);
|
||
void DrawHorizontalLine(short x,short y,short x1,UCHAR color);
|
||
void DrawBox(short x,short y,short x1,short y1,UCHAR color);
|
||
void DrawRoundBox(short x,short y,short x1,short y1,UCHAR color);
|
||
void Draw3DBox(short x,short y,short x1,short y1,UCHAR TopColor,UCHAR BottomColor);
|
||
void DrawSolidBox(short x,short y,short x1,short y1,UCHAR color);
|
||
void DrawXORBox(short x,short y,short x1,short y1,UCHAR color);
|
||
void DrawXORRect(short x,short y,short x1,short y1,UCHAR color);
|
||
void DrawLine(short x1,short y1,short x2,short y2,UCHAR color);
|
||
void PutBitmap(short x,short y,short width,short height,UCHAR *Bitmap);
|
||
UCHAR *GetBitmap(short x,short y,short width,short height,UCHAR *buffer);
|
||
UINT GetBufferSize(short width,short height);
|
||
void PutBitmapAsIcon(short x,short y,UCHAR *bm);
|
||
void PutAckBitmap(short x,short y,UCHAR *bm);
|
||
UCHAR *ScreenToBuffer(UCHAR *buffer);
|
||
void BufferToScreen(UCHAR *buffer);
|
||
void SetPalette(UCHAR *PalBuf);
|
||
void ShowChar(short x,short y,char ch);
|
||
void ShowString(short x,short y,char *s);
|
||
UCHAR *LoadAndShowScreen(char *PicName);
|
||
//=============================================================================
|
||
// Prototypes in MOUSE.C
|
||
//=============================================================================
|
||
short MouseInstalled(void);
|
||
void ShowMouse(void);
|
||
void HideMouse(void);
|
||
short ReadMouseCursor(short *mrow,short *mcol);
|
||
short ReadMouseButtons(void);
|
||
void SetMouseCursor(short mrow,short mcol);
|
||
void SetMouseMinMaxColumns(short mincol,short maxcol);
|
||
void SetMouseMinMaxRows(short minrow,short maxrow);
|
||
void SetMouseShape(short hsrow,short hscol,char *mask);
|
||
void MouseReleased(void);
|
||
void MouseSetFunction(UCHAR,void *);
|
||
//=============================================================================
|
||
// Prototypes in READIFF.C
|
||
//=============================================================================
|
||
UCHAR *Readiff(char *picname);
|
||
//=============================================================================
|
||
// Prototypes in IO.C
|
||
//=============================================================================
|
||
void GetFontTable(void);
|
||
void ShowChar(short x,short y,char ch);
|
||
void ShowString(short x,short y,char *s);
|
||
short ShowMessageBox(char *Body,UINT Buttons);
|
||
void ShowListBox(short x,short y,short x1,short y1,short index,LCB *lcb);
|
||
char *FileBox(char *fName,char *Path,char *rBuf,char *Title,char *ActiveButton);
|
||
void TestListBox(void);
|
||
short PickList(short x,short y,short x1,short y1,LCB *Anchor);
|
||
short CreateSelectPickList(short x,short y,short x1,short y1,short count,char **List,short SortFlag);
|
||
short ShowPickList(char **p,short SortFlag);
|
||
//=============================================================================
|
||
// Prototypes in SETS.C
|
||
//=============================================================================
|
||
short LoadSet(char *fName);
|
||
|
||
|