Category : Dbase (Clipper, FoxBase, etc) Languages Source Code
Archive   : C2DBASE.ZIP
Filename : DBASE.H

 
Output of file : DBASE.H contained in archive : C2DBASE.ZIP
/*This header file must be included for any "C" program that uses any of the
DBASE "C" functions.*/

#define MAXFIELD 30 /*maximum fields per record*/
#define MAXRECLEN 512 /*maximum record length in bytes*/
#define MEMOMAX 2048 /*maximum memo field allowed to be read*/

/*DBASE header structure*/
struct dbhead
{
char db; /*file flag*/
char year;
char month;
char day;
long quan; /*number of records in file*/
int idunno; /*don't quite know what this is*/
int reclgth; /*number of bytes in record*/
char misc[20]; /*other stuff*/
};

/*DBASE field structure*/
struct dbfield
{
char name[11]; /*field name*/
char type; /*field type*/
char guess[4]; /*your guess is as good as mine*/
char length; /*field length*/
char decimal; /*decimal positions if numeric*/
char other[13]; /*other stuff??*/
};

struct ndxhead /*index file header information*/
{
char dunno[18]; /*don't know what this is yet*/
int xrecsize; /*index file record size*/
char guess[4]; /*don't know what this is yet*/
char ndxflds[100]; /*fields indexed by the .NDX file*/
};

struct ndx /*index file informaton structure*/
{
char name[35]; /*.NDX filename*/
int filenum; /*DOS file handle number*/
int fldnum; /*number of fields indexed in this file*/
int xrecsize; /*# of bytes of each index file record*/
char fields[MAXFIELD/3][11]; /*field names*/
};

struct dbinfo
{
int error; /*non-zero indicates error code & empty structure*/
char filname[35]; /*file name*/
int filenum; /*.DBF file number for program use*/
int ndxnum; /*number of index files with this .DBF*/
struct ndx ndxfile[10]; /*index file information - up to 10 files*/
int dbtnum; /*.DBT file number for program use*/
struct dbhead info; /*file header information*/
int fieldnum; /*number of fields per record*/
struct dbfield field[MAXFIELD]; /*field pointer*/
};

struct cmemvar /*character memory variable structure- 'cmem' is global*/
{
char name[11]; /*memory variable name*/
char c30f[2]; /*these 2 want to be 0xC3 & 0x0F*/
/*true only for the first record of a .MEM file*/
char null; /*null byte--00*/
char d84d[2]; /*these 2 wants to be 0xD8 & 0x4D*/
char size; /*size of character string*/
char nulls[15]; /*15 null bytes*/
};



  3 Responses to “Category : Dbase (Clipper, FoxBase, etc) Languages Source Code
Archive   : C2DBASE.ZIP
Filename : DBASE.H

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/