1
0
mirror of synced 2026-02-06 16:45:54 +00:00

Add Borland C++ 3.1 (Minimal) for build.

This commit is contained in:
Matthieu Bucchianeri
2024-10-13 01:12:35 -07:00
parent 05a093cb6f
commit b211af42e2
17 changed files with 1188 additions and 0 deletions

BIN
XTMax/Tools/BCC31/BCC.EXE Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,155 @@
/* conio.h
Direct MSDOS console input/output.
Copyright (c) 1987, 1992 by Borland International
All Rights Reserved.
*/
#if !defined(__CONIO_H)
#define __CONIO_H
#if !defined(___DEFS_H)
#include <_defs.h>
#endif
#if !defined(_Windows)
#define _NOCURSOR 0
#define _SOLIDCURSOR 1
#define _NORMALCURSOR 2
struct text_info {
unsigned char winleft;
unsigned char wintop;
unsigned char winright;
unsigned char winbottom;
unsigned char attribute;
unsigned char normattr;
unsigned char currmode;
unsigned char screenheight;
unsigned char screenwidth;
unsigned char curx;
unsigned char cury;
};
enum text_modes { LASTMODE=-1, BW40=0, C40, BW80, C80, MONO=7, C4350=64 };
#if !defined(__COLORS)
#define __COLORS
enum COLORS {
BLACK, /* dark colors */
BLUE,
GREEN,
CYAN,
RED,
MAGENTA,
BROWN,
LIGHTGRAY,
DARKGRAY, /* light colors */
LIGHTBLUE,
LIGHTGREEN,
LIGHTCYAN,
LIGHTRED,
LIGHTMAGENTA,
YELLOW,
WHITE
};
#endif
#define BLINK 128 /* blink bit */
extern int _Cdecl directvideo;
extern int _Cdecl _wscroll;
#endif /* !_Windows */
#ifdef __cplusplus
extern "C" {
#endif
void _Cdecl clreol( void );
void _Cdecl clrscr( void );
void _Cdecl gotoxy( int __x, int __y );
int _Cdecl wherex( void );
int _Cdecl wherey( void );
int _Cdecl getch( void );
int _Cdecl getche( void );
int _Cdecl kbhit( void );
int _Cdecl putch( int __c );
#ifndef _PORT_DEFS
unsigned char _Cdecl inportb( unsigned __portid );
unsigned _Cdecl inport ( unsigned __portid );
int _Cdecl inp( unsigned __portid );
unsigned _Cdecl inpw( unsigned __portid );
void _Cdecl outportb( unsigned __portid, unsigned char __value );
void _Cdecl outport ( unsigned __portid, unsigned __value );
int _Cdecl outp( unsigned __portid, int __value );
unsigned _Cdecl outpw( unsigned __portid, unsigned __value );
#endif /* !_PORT_DEFS */
#if !defined(_Windows)
void _Cdecl delline( void );
int _Cdecl gettext( int __left, int __top,
int __right, int __bottom,
void *__destin);
void _Cdecl gettextinfo (struct text_info *__r );
void _Cdecl highvideo( void );
void _Cdecl insline( void );
void _Cdecl lowvideo( void );
int _Cdecl movetext( int __left, int __top,
int __right, int __bottom,
int __destleft, int __desttop );
void _Cdecl normvideo( void );
int _Cdecl puttext( int __left, int __top,
int __right, int __bottom,
void *__source );
void _Cdecl textattr( int __newattr );
void _Cdecl textbackground( int __newcolor );
void _Cdecl textcolor( int __newcolor );
void _Cdecl textmode( int __newmode );
void _Cdecl window( int __left, int __top, int __right, int __bottom);
void _Cdecl _setcursortype( int __cur_t );
char * _Cdecl cgets( char *__str );
int _Cdecl cprintf( const char *__format, ... );
int _Cdecl cputs( const char *__str );
int _Cdecl cscanf( const char *__format, ... );
char * _Cdecl getpass( const char *__prompt );
int _Cdecl ungetch( int __ch );
#endif /* !_Windows */
#ifndef _PORT_DEFS
#define _PORT_DEFS
/* These are in-line functions. These prototypes just clean up
some syntax checks and code generation.
*/
unsigned char _Cdecl __inportb__ (unsigned __portid);
unsigned _Cdecl __inportw__ (unsigned __portid);
unsigned char _Cdecl __outportb__(unsigned __portid, unsigned char __value);
unsigned _Cdecl __outportw__(unsigned __portid, unsigned __value);
#define inportb(__portid) __inportb__(__portid)
#define outportb(__portid, __value) ((void) __outportb__(__portid, __value))
#define inport(__portid) __inportw__(__portid)
#define outport(__portid, __value) ((void) __outportw__(__portid, __value))
/* MSC-compatible macros for port I/O */
#define inp(__portid) __inportb__ (__portid)
#define outp(__portid, __value) __outportb__(__portid, (unsigned char)__value)
#define inpw(__portid) __inportw__ (__portid)
#define outpw(__portid, __value) __outportw__(__portid, __value)
#endif /* _PORT_DEFS */
#ifdef __cplusplus
}
#endif
#endif /* __CONIO_H */

View File

@@ -0,0 +1,520 @@
/* dos.h
Defines structs, unions, macros, and functions for dealing
with MSDOS and the Intel iAPX86 microprocessor family.
Copyright (c) 1987, 1992 by Borland International
All Rights Reserved.
*/
#ifndef __DOS_H
#define __DOS_H
#if !defined(___DEFS_H)
#include <_defs.h>
#endif
#if !defined(_RTLDLL)
extern int _Cdecl errno;
extern int _Cdecl _doserrno;
#else
#ifdef __cplusplus
extern "C" {
#endif
int far * far _Cdecl __getErrno(void);
int far * far _Cdecl __getDOSErrno(void);
#ifdef __cplusplus
}
#endif
#define errno (*__getErrno())
#define _doserrno (*__getDOSErrno())
#endif
#ifndef __DLL__
/* Variables */
extern int const _Cdecl _8087;
extern int _Cdecl _argc;
extern char **_Cdecl _argv;
extern char **_Cdecl environ;
extern unsigned _Cdecl _psp;
extern unsigned _Cdecl _heaplen;
extern unsigned char _Cdecl _osmajor;
extern unsigned char _Cdecl _osminor;
extern unsigned _Cdecl _stklen;
extern unsigned _Cdecl _fpstklen;
extern unsigned _Cdecl _version;
extern unsigned _Cdecl _osversion; /* MSC name for _version */
#endif /* __DLL__*/
#define FA_NORMAL 0x00 /* Normal file, no attributes */
#define FA_RDONLY 0x01 /* Read only attribute */
#define FA_HIDDEN 0x02 /* Hidden file */
#define FA_SYSTEM 0x04 /* System file */
#define FA_LABEL 0x08 /* Volume label */
#define FA_DIREC 0x10 /* Directory */
#define FA_ARCH 0x20 /* Archive */
/* MSC names for file attributes */
#define _A_NORMAL 0x00 /* Normal file, no attributes */
#define _A_RDONLY 0x01 /* Read only attribute */
#define _A_HIDDEN 0x02 /* Hidden file */
#define _A_SYSTEM 0x04 /* System file */
#define _A_VOLID 0x08 /* Volume label */
#define _A_SUBDIR 0x10 /* Directory */
#define _A_ARCH 0x20 /* Archive */
#define NFDS 20 /* Maximum number of fds */
struct fcb {
char fcb_drive; /* 0 = default, 1 = A, 2 = B */
char fcb_name[8]; /* File name */
char fcb_ext[3]; /* File extension */
short fcb_curblk; /* Current block number */
short fcb_recsize; /* Logical record size in bytes */
long fcb_filsize; /* File size in bytes */
short fcb_date; /* Date file was last written */
char fcb_resv[10]; /* Reserved for DOS */
char fcb_currec; /* Current record in block */
long fcb_random; /* Random record number */
};
struct xfcb {
char xfcb_flag; /* Contains 0xff to indicate xfcb */
char xfcb_resv[5];/* Reserved for DOS */
char xfcb_attr; /* Search attribute */
struct fcb xfcb_fcb; /* The standard fcb */
};
struct COUNTRY {
int co_date;
char co_curr[5];
char co_thsep[2];
char co_desep[2];
char co_dtsep[2];
char co_tmsep[2];
char co_currstyle;
char co_digits;
char co_time;
long co_case;
char co_dasep[2];
char co_fill[10];
};
#if defined(__MSC) && !defined(__cplusplus)
struct DOSERROR {
int exterror;
char class;
char action;
char locus;
};
#else
struct DOSERROR {
int de_exterror;
char de_class;
char de_action;
char de_locus;
};
#endif /* __MSC and not C++ */
struct dfree {
unsigned df_avail;
unsigned df_total;
unsigned df_bsec;
unsigned df_sclus;
};
struct diskfree_t {
unsigned total_clusters;
unsigned avail_clusters;
unsigned sectors_per_cluster;
unsigned bytes_per_sector;
};
struct fatinfo {
char fi_sclus;
char fi_fatid;
unsigned fi_nclus;
int fi_bysec;
};
struct devhdr {
long dh_next; /* Next device pointer */
short dh_attr; /* Attributes */
unsigned short dh_strat; /* Driver strategy routine */
unsigned short dh_inter; /* Driver interrupt routine */
char dh_name[8]; /* Device name */
};
struct time {
unsigned char ti_min; /* Minutes */
unsigned char ti_hour; /* Hours */
unsigned char ti_hund; /* Hundredths of seconds */
unsigned char ti_sec; /* Seconds */
};
struct dostime_t {
unsigned char hour; /* Hours */
unsigned char minute; /* Minutes */
unsigned char second; /* Seconds */
unsigned char hsecond; /* Hundredths of seconds */
};
struct date {
int da_year; /* Year - 1980 */
char da_day; /* Day of the month */
char da_mon; /* Month (1 = Jan) */
};
struct dosdate_t {
unsigned char day; /* 1-31 */
unsigned char month; /* 1-12 */
unsigned int year; /* 1980 - 2099 */
unsigned char dayofweek;/* 0 - 6 (0=Sunday) */
};
#ifndef _REG_DEFS
#define _REG_DEFS
struct WORDREGS {
unsigned int ax, bx, cx, dx, si, di, cflag, flags;
};
struct BYTEREGS {
unsigned char al, ah, bl, bh, cl, ch, dl, dh;
};
union REGS {
struct WORDREGS x;
struct BYTEREGS h;
};
struct SREGS {
unsigned int es;
unsigned int cs;
unsigned int ss;
unsigned int ds;
};
struct REGPACK {
unsigned r_ax, r_bx, r_cx, r_dx;
unsigned r_bp, r_si, r_di, r_ds, r_es, r_flags;
};
#endif /* _REG_DEFS */
typedef struct {
char ds_drive; /* do not change */
char ds_pattern [13]; /* these fields, */
char ds_reserved [7]; /* Microsoft reserved */
char ds_attrib;
short ds_time;
short ds_date;
long ds_size;
char ds_nameZ [13]; /* result of the search, asciiz */
} dosSearchInfo; /* used with DOS functions 4E, 4F */
#ifndef _FFBLK_DEF
#define _FFBLK_DEF
struct ffblk {
char ff_reserved[21];
char ff_attrib;
unsigned ff_ftime;
unsigned ff_fdate;
long ff_fsize;
char ff_name[13];
};
#endif /* _FFBLK_DEF */
/* The MSC find_t structure corresponds exactly to the ffblk structure */
struct find_t {
char reserved[21]; /* Microsoft reserved - do not change */
char attrib; /* attribute byte for matched file */
unsigned wr_time; /* time of last write to file */
unsigned wr_date; /* date of last write to file */
long size; /* size of file */
char name[13]; /* asciiz name of matched file */
};
#ifdef __MSC
#define _find_t find_t
#endif
/* axret values for _hardresume() */
#define _HARDERR_IGNORE 0 /* ignore error */
#define _HARDERR_RETRY 1 /* retry the operation */
#define _HARDERR_ABORT 2 /* abort program */
#define _HARDERR_FAIL 3 /* fail the operation */
#define SEEK_CUR 1
#define SEEK_END 2
#define SEEK_SET 0
#ifdef __cplusplus
extern "C" {
#endif
#if !defined( _Windows )
int _Cdecl absread( int __drive, int __nsects, long __lsect,
void _FAR *__buffer );
int _Cdecl abswrite( int __drive, int __nsects, long __lsect,
void _FAR *__buffer );
int _Cdecl allocmem( unsigned __size, unsigned _FAR *__segp );
#endif
int _CType _FARFUNC bdos( int __dosfun, unsigned __dosdx, unsigned __dosal );
int _CType bdosptr( int __dosfun, void _FAR *__argument,
unsigned __dosal );
struct COUNTRY _FAR *_Cdecl country( int __xcode, struct COUNTRY _FAR *__cp);
void _Cdecl ctrlbrk( int _Cdecl( *handler )( void ));
#if !defined( _Windows )
void _CType delay( unsigned __milliseconds );
#endif
void _Cdecl _FARFUNC disable( void );
int _Cdecl _FARFUNC dosexterr( struct DOSERROR _FAR *__eblkp );
long _Cdecl _FARFUNC dostounix( struct date _FAR *__d, struct time _FAR *__t );
unsigned _Cdecl _dos_allocmem( unsigned __size, unsigned _FAR *__segp );
unsigned _Cdecl _dos_close ( int __fd );
unsigned _Cdecl _dos_commit( int __fd );
unsigned _Cdecl _dos_creat( const char _FAR *__pathP, unsigned __attr,
int _FAR *__fd );
unsigned _Cdecl _dos_creatnew( const char _FAR *__pathP, unsigned __attr,
int _FAR *__fd );
unsigned _Cdecl _dos_findfirst( const char _FAR *__path,
unsigned __attrib,
struct find_t _FAR *__finfo );
unsigned _Cdecl _dos_findnext( struct find_t _FAR *__finfo );
unsigned _Cdecl _dos_freemem( unsigned __segx );
void _Cdecl _dos_getdate( struct dosdate_t _FAR *__datep );
unsigned _Cdecl _dos_getdiskfree( unsigned __drive,
struct diskfree_t _FAR *__dtable);
void _Cdecl _dos_getdrive( unsigned _FAR *__drive );
unsigned _Cdecl _dos_getfileattr( const char _FAR *__filename,
unsigned _FAR *__attrib );
unsigned _Cdecl _dos_getftime( int __fd, unsigned _FAR *__date,
unsigned _FAR *__time );
void _Cdecl _dos_gettime( struct dostime_t _FAR *__timep );
void _Cdecl _dos_keep(unsigned char __status, unsigned __size);
unsigned _Cdecl _dos_open( const char _FAR *__pathP, unsigned __oflag,
int _FAR *__fd );
unsigned _Cdecl _dos_read( int __fd, void far *__buf, unsigned __len,
unsigned _FAR *__nread );
unsigned _Cdecl _dos_setblock( unsigned __size, unsigned __segx,
unsigned _FAR *__maxp );
unsigned _Cdecl _dos_setdate( struct dosdate_t _FAR *__datep );
void _Cdecl _dos_setdrive( unsigned __drive, unsigned _FAR *__ndrives );
unsigned _Cdecl _dos_setfileattr( const char _FAR *__filename,
unsigned _FAR __attrib);
unsigned _Cdecl _dos_setftime( int __fd, unsigned __date, unsigned __time );
unsigned _Cdecl _dos_settime( struct dostime_t _FAR *__timep );
unsigned _Cdecl _dos_write( int __fd, const void far *__buf, unsigned __len,
unsigned _FAR *__nread );
void __emit__( unsigned char __byte, ...);
void _Cdecl _FARFUNC enable( void );
#if !defined( _Windows )
int _Cdecl freemem( unsigned __segx );
#endif
int _Cdecl getcbrk( void );
void _CType getdate( struct date _FAR *__datep );
void _Cdecl getdfree( unsigned char __drive,
struct dfree _FAR *__dtable );
int _Cdecl _getdrive( void );
void _Cdecl getfat( unsigned char __drive,
struct fatinfo _FAR *__dtable );
void _Cdecl getfatd( struct fatinfo _FAR *__dtable );
unsigned _Cdecl getpsp( void );
int _Cdecl getswitchar( void );
void _CType gettime( struct time _FAR *__timep );
int _Cdecl getverify( void );
#if !defined( _Windows )
#ifdef __cplusplus
void _Cdecl _harderr( void _Cdecl (far *__fptr)( unsigned __deverr,
unsigned __doserr, unsigned far *__hdr) );
#else
void _Cdecl _harderr( void _Cdecl (far *__fptr)( ) );
#endif
void _Cdecl _hardresume( int __axret );
void _Cdecl _hardretn( int __retn );
#ifdef __cplusplus
void _CType harderr( int _Cdecl( *__handler )( int __errval, int __ax,
int __bp, int __si) );
#else
void _CType harderr( int _Cdecl( *__handler )( ) );
#endif
void _CType hardresume( int __axret );
void _CType hardretn( int __retn );
#endif
#ifndef _PORT_DEFS
unsigned _Cdecl inport ( unsigned __portid );
unsigned char _Cdecl inportb( unsigned __portid );
unsigned _Cdecl inpw ( unsigned __portid );
int _Cdecl inp ( unsigned __portid );
#endif
int _Cdecl int86( int __intno,
union REGS _FAR *__inregs,
union REGS _FAR *__outregs );
int _Cdecl int86x( int __intno,
union REGS _FAR *__inregs,
union REGS _FAR *__outregs,
struct SREGS _FAR *__segregs );
int _Cdecl intdos( union REGS _FAR *__inregs,
union REGS _FAR *__outregs );
int _Cdecl intdosx( union REGS _FAR *__inregs,
union REGS _FAR *__outregs,
struct SREGS _FAR *__segregs );
void _Cdecl intr( int __intno, struct REGPACK _FAR *__preg );
#if !defined( _Windows )
void _Cdecl keep( unsigned char __status, unsigned __size );
void _Cdecl nosound( void );
#endif
#ifndef _PORT_DEFS
void _Cdecl outport ( unsigned __portid, unsigned __value );
void _Cdecl outportb( unsigned __portid, unsigned char __value );
unsigned _Cdecl outpw ( unsigned __portid, unsigned __value );
int _Cdecl outp ( unsigned __portid, int __value );
#endif
char _FAR * _Cdecl parsfnm( const char _FAR *__cmdline,
struct fcb _FAR *__fcb, int __opt );
int _Cdecl peek( unsigned __segment, unsigned __offset );
char _Cdecl peekb( unsigned __segment, unsigned __offset );
void _Cdecl poke( unsigned __segment, unsigned __offset, int __value);
void _Cdecl pokeb( unsigned __segment,
unsigned __offset, char __value );
#if !defined( _Windows )
int _Cdecl randbrd( struct fcb _FAR *__fcb, int __rcnt );
int _Cdecl randbwr( struct fcb _FAR *__fcb, int __rcnt );
#endif
void _Cdecl segread( struct SREGS _FAR *__segp );
#if !defined( _Windows )
int _Cdecl setblock( unsigned __segx, unsigned __newsize );
#endif
int _Cdecl setcbrk( int __cbrkvalue );
void _Cdecl setdate( struct date _FAR *__datep );
void _Cdecl setswitchar( char __ch );
void _Cdecl settime( struct time _FAR *__timep );
void _Cdecl setverify( int __value );
#if !defined( _Windows )
void _Cdecl sleep( unsigned __seconds );
void _Cdecl sound( unsigned __frequency );
#endif
void _Cdecl _FARFUNC unixtodos( long __time, struct date _FAR *__d,
struct time _FAR *__t );
int _CType unlink( const char _FAR *__path );
/* These are in-line functions. These prototypes just clean up
some syntax checks and code generation.
*/
void _Cdecl __cli__( void );
void _Cdecl __sti__( void );
void _Cdecl __int__( int __interruptnum );
#define disable( ) __emit__( (char )( 0xfa ) )
#define _disable( ) __emit__( (char )( 0xfa ) ) /* MSC name */
#define enable( ) __emit__( (char )( 0xfb ) )
#define _enable( ) __emit__( (char )( 0xfb ) ) /* MSC name */
#define geninterrupt( i ) __int__( i ) /* Interrupt instruction */
#ifndef _PORT_DEFS
#define _PORT_DEFS
unsigned char _Cdecl __inportb__ ( unsigned __portid );
unsigned _Cdecl __inportw__ ( unsigned __portid );
unsigned char _Cdecl __outportb__( unsigned __portid, unsigned char __value );
unsigned _Cdecl __outportw__( unsigned __portid, unsigned __value );
#define inportb(__portid) __inportb__(__portid)
#define outportb(__portid, __value) ((void) __outportb__(__portid, __value))
#define inport(__portid) __inportw__(__portid)
#define outport(__portid, __value) ((void) __outportw__(__portid, __value))
/* MSC-compatible macros for port I/O */
#define inp(__portid) __inportb__ (__portid)
#define outp(__portid, __value) __outportb__(__portid, (unsigned char)__value)
#define inpw(__portid) __inportw__ (__portid)
#define outpw(__portid, __value) __outportw__(__portid, __value)
#endif /* _PORT_DEFS */
#if !__STDC__
extern unsigned _Cdecl _ovrbuffer;
int cdecl far _OvrInitEms( unsigned __emsHandle, unsigned __emsFirst,
unsigned __emsPages );
int cdecl far _OvrInitExt( unsigned long __extStart,
unsigned long __extLength );
char far *cdecl getdta( void );
void cdecl setdta( char far *__dta );
#define MK_FP( seg,ofs )( (void _seg * )( seg ) +( void near * )( ofs ))
#define FP_SEG( fp )( (unsigned )( void _seg * )( void far * )( fp ))
#define FP_OFF( fp )( (unsigned )( fp ))
#ifdef __cplusplus
void _Cdecl _chain_intr ( void interrupt (far *__target)( ... ));
void interrupt( far * _Cdecl _dos_getvect( unsigned __interruptno ))( ... );
void interrupt( far * _CType getvect( int __interruptno ))( ... );
void _Cdecl _dos_setvect( unsigned __interruptno,
void interrupt( far *__isr )( ... ));
void _CType setvect( int __interruptno,
void interrupt( far *__isr )( ... ));
int inline _Cdecl peek( unsigned __segment, unsigned __offset )
{ return( *( (int far* )MK_FP( __segment, __offset )) ); }
char inline _Cdecl peekb( unsigned __segment, unsigned __offset )
{ return( *( (char far* )MK_FP( __segment, __offset )) ); }
void inline _Cdecl poke( unsigned __segment, unsigned __offset, int __value )
{( *( (int far* )MK_FP( __segment, __offset )) = __value ); }
void inline _Cdecl pokeb( unsigned __segment, unsigned __offset, char __value )
{( *( (char far* )MK_FP( __segment, __offset )) = __value ); }
#else
void _Cdecl _chain_intr ( void interrupt (far *__target)( ));
void interrupt( far * _Cdecl _dos_getvect( unsigned __interruptno ))( );
void interrupt( far * _CType getvect( int __interruptno ))( );
void _Cdecl _dos_setvect( unsigned __interruptno,
void interrupt( far *__isr )( ));
void _CType setvect( int __interruptno,
void interrupt( far *__isr )( ) );
#define peek( a,b )( *( (int far* )MK_FP( (a ),( b )) ))
#define peekb( a,b )( *( (char far* )MK_FP( (a ),( b )) ))
#define poke( a,b,c )( *( (int far* )MK_FP( (a ),( b )) ) =( int )( c ))
#define pokeb( a,b,c )( *( (char far* )MK_FP( (a ),( b )) ) =( char )( c ))
#endif /* __cplusplus */
#endif /* !__STDC__ */
#ifdef __cplusplus
}
#endif
#endif /* __DOS_H */


View File

@@ -0,0 +1,91 @@
/* mem.h
Memory manipulation functions
Copyright (c) 1987, 1992 by Borland International
All Rights Reserved.
*/
#if !defined(__MEM_H)
#define __MEM_H
#if !defined(___DEFS_H)
#include <_defs.h>
#endif
#ifndef NULL
#include <_null.h>
#endif
#ifndef _STDDEF
#define _STDDEF
#ifndef _PTRDIFF_T
#define _PTRDIFF_T
#if defined(__LARGE__) || defined(__HUGE__) || defined(__COMPACT__)
typedef long ptrdiff_t;
#else
typedef int ptrdiff_t;
#endif
#endif
#ifndef _SIZE_T
#define _SIZE_T
typedef unsigned size_t;
#endif
#endif
#ifdef __cplusplus
extern "C" {
#endif
void _FAR * _FARFUNC _Cdecl memccpy(void _FAR *__dest, const void _FAR *__src,
int __c, size_t __n);
void _FAR * _FARFUNC _Cdecl memchr(const void _FAR *__s, int __c, size_t __n);
int _FARFUNC _Cdecl memcmp(const void _FAR *__s1, const void _FAR *__s2,
size_t __n);
void _FAR * _FARFUNC _Cdecl memcpy(void _FAR *__dest, const void _FAR *__src,
size_t __n);
int _FARFUNC _Cdecl memicmp(const void _FAR *__s1, const void _FAR *__s2,
size_t __n);
void _FAR * _CType _FARFUNC memmove(void _FAR *__dest, const void _FAR *__src,
size_t __n);
void _FAR * _CType _FARFUNC memset(void _FAR *__s, int __c, size_t __n);
void _FARFUNC _Cdecl movedata(unsigned __srcseg, unsigned __srcoff,
unsigned __dstseg,unsigned __dstoff, size_t __n);
void _FARFUNC _Cdecl movmem(const void _FAR *__src, void _FAR *__dest,
unsigned __length);
void _FARFUNC _Cdecl setmem(void _FAR *__dest,unsigned __length, char __value);
#if !__STDC__
void far * _FARCALL cdecl _fmemccpy(void far *__dest, const void far *__src,
int __c, size_t __n);
void far * _FARCALL cdecl _fmemchr(const void far *__s, int __c, size_t __n);
int _FARCALL cdecl _fmemcmp(const void far *__s1, const void far *__s2,
size_t __n);
void far * _FARCALL cdecl _fmemcpy(void far *__dest, const void far *__src,
size_t __n);
int _FARCALL cdecl _fmemicmp(const void far *__s1, const void far *__s2,
size_t __n);
void far * _FARCALL cdecl _fmemmove(void far *__dest, const void far *__src,
size_t __n);
void far * _FARCALL cdecl _fmemset(void far *__s, int __c, size_t __n);
void _FARCALL cdecl _fmovmem(const void far *__src, void far *__dest,
unsigned __length);
void _FARCALL cdecl _fsetmem(void far *__dest, unsigned __length,
char __value);
#endif
#if !defined(__STRING_H)
/* Intrinsic functions */
void _FAR * _Cdecl _FARFUNC __memchr__ (const void _FAR *__s, int __c, size_t __n);
int _Cdecl _FARFUNC __memcmp__(const void _FAR *__s1,
const void _FAR *__s2, size_t __n);
void _FAR * _Cdecl _FARFUNC __memcpy__(void _FAR *__dest, const void _FAR *__src,
size_t __n);
void _FAR * _CType _FARFUNC __memset__(void _FAR *__s, int __c, size_t __n);
#endif
#ifdef __cplusplus
}
#endif
#endif /* __MEM_H */

View File

@@ -0,0 +1,38 @@
/* stdarg.h
Definitions for accessing parameters in functions that accept
a variable number of arguments.
Copyright (c) 1987, 1992 by Borland International
All Rights Reserved.
*/
#ifndef __STDARG_H
#define __STDARG_H
#ifdef __VARARGS_H
#error Can't include both STDARG.H and VARARGS.H
#endif
#if !defined(___DEFS_H)
#include <_defs.h>
#endif
typedef void _FAR *va_list;
#define __size(x) ((sizeof(x)+sizeof(int)-1) & ~(sizeof(int)-1))
#if defined(__cplusplus) && !defined(__STDC__)
#define va_start(ap, parmN) (ap = ...)
#else
#define va_start(ap, parmN) ((void)((ap) = (va_list)((char _FAR *)(&parmN)+__size(parmN))))
#endif
#define va_arg(ap, type) (*(type _FAR *)(((*(char _FAR *_FAR *)&(ap))+=__size(type))-(__size(type))))
#define va_end(ap) ((void)0)
#if !__STDC__
#define _va_ptr (...)
#endif
#endif

View File

@@ -0,0 +1,248 @@
/* stdio.h
Definitions for stream input/output.
Copyright (c) 1987, 1992 by Borland International
All Rights Reserved.
*/
#ifndef __STDIO_H
#define __STDIO_H
#if !defined(___DEFS_H)
#include <_defs.h>
#endif
#if !defined(___NFILE_H)
#include <_nfile.h>
#endif
#ifndef NULL
#include <_null.h>
#endif
#ifndef _SIZE_T
#define _SIZE_T
typedef unsigned size_t;
#endif
/* Definition of the file position type
*/
typedef long fpos_t;
/* Definition of the control structure for streams
*/
typedef struct {
int level; /* fill/empty level of buffer */
unsigned flags; /* File status flags */
char fd; /* File descriptor */
unsigned char hold; /* Ungetc char if no buffer */
int bsize; /* Buffer size */
unsigned char _FAR *buffer; /* Data transfer buffer */
unsigned char _FAR *curp; /* Current active pointer */
unsigned istemp; /* Temporary file indicator */
short token; /* Used for validity checking */
} FILE; /* This is the FILE object */
/* Bufferisation type to be used as 3rd argument for "setvbuf" function
*/
#define _IOFBF 0
#define _IOLBF 1
#define _IONBF 2
/* "flags" bits definitions
*/
#define _F_RDWR 0x0003 /* Read/write flag */
#define _F_READ 0x0001 /* Read only file */
#define _F_WRIT 0x0002 /* Write only file */
#define _F_BUF 0x0004 /* Malloc'ed Buffer data */
#define _F_LBUF 0x0008 /* line-buffered file */
#define _F_ERR 0x0010 /* Error indicator */
#define _F_EOF 0x0020 /* EOF indicator */
#define _F_BIN 0x0040 /* Binary file indicator */
#define _F_IN 0x0080 /* Data is incoming */
#define _F_OUT 0x0100 /* Data is outgoing */
#define _F_TERM 0x0200 /* File is a terminal */
/* End-of-file constant definition
*/
#define EOF (-1) /* End of file indicator */
/* Number of files that can be open simultaneously
*/
#if __STDC__
#define FOPEN_MAX (_NFILE_ - 2) /* (_NFILE_ - stdaux & stdprn) */
#else
#define FOPEN_MAX (_NFILE_) /* Able to have 20 files */
#define SYS_OPEN (_NFILE_)
#endif
#define FILENAME_MAX 80
/* Default buffer size use by "setbuf" function
*/
#define BUFSIZ 512 /* Buffer size for stdio */
/* Size of an arry large enough to hold a temporary file name string
*/
#define L_ctermid 5 /* CON: plus null byte */
#define P_tmpdir "" /* temporary directory */
#define L_tmpnam 13 /* tmpnam buffer size */
/* Constants to be used as 3rd argument for "fseek" function
*/
#define SEEK_CUR 1
#define SEEK_END 2
#define SEEK_SET 0
/* Number of unique file names that shall be generated by "tmpnam" function
*/
#define TMP_MAX 0xFFFF
/* Standard I/O predefined streams
*/
#if !defined( _RTLDLL )
extern FILE _Cdecl _streams[];
extern unsigned _Cdecl _nfile;
#define stdin (&_streams[0])
#define stdout (&_streams[1])
#define stderr (&_streams[2])
#if !__STDC__
#define stdaux (&_streams[3])
#define stdprn (&_streams[4])
#endif
#else
#ifdef __cplusplus
extern "C" {
#endif
FILE far * far __getStream(int);
#ifdef __cplusplus
}
#endif
#define stdin __getStream(0)
#define stdout __getStream(1)
#define stderr __getStream(2)
#define stdaux __getStream(3)
#define stdprn __getStream(4)
#endif
#ifdef __cplusplus
extern "C" {
#endif
void _Cdecl clearerr(FILE _FAR *__stream);
int _Cdecl _FARFUNC fclose(FILE _FAR *__stream);
int _Cdecl _FARFUNC fflush(FILE _FAR *__stream);
int _Cdecl _FARFUNC fgetc(FILE _FAR *__stream);
int _Cdecl fgetpos(FILE _FAR *__stream, fpos_t _FAR *__pos);
char _FAR *_Cdecl _FARFUNC fgets(char _FAR *__s, int __n, FILE _FAR *__stream);
FILE _FAR *_Cdecl _FARFUNC fopen(const char _FAR *__path, const char _FAR *__mode);
int _Cdecl _FARFUNC fprintf(FILE _FAR *__stream, const char _FAR *__format, ...);
int _Cdecl _FARFUNC fputc(int __c, FILE _FAR *__stream);
int _Cdecl _FARFUNC fputs(const char _FAR *__s, FILE _FAR *__stream);
size_t _Cdecl _FARFUNC fread(void _FAR *__ptr, size_t __size, size_t __n,
FILE _FAR *__stream);
FILE _FAR *_Cdecl _FARFUNC freopen(const char _FAR *__path, const char _FAR *__mode,
FILE _FAR *__stream);
int _Cdecl _FARFUNC fscanf(FILE _FAR *__stream, const char _FAR *__format, ...);
int _Cdecl _FARFUNC fseek(FILE _FAR *__stream, long __offset, int __whence);
int _Cdecl fsetpos(FILE _FAR *__stream, const fpos_t _FAR *__pos);
long _Cdecl _FARFUNC ftell(FILE _FAR *__stream);
size_t _Cdecl _FARFUNC fwrite(const void _FAR *__ptr, size_t __size, size_t __n,
FILE _FAR *__stream);
char _FAR *_Cdecl gets(char _FAR *__s);
void _Cdecl perror(const char _FAR *__s);
int _Cdecl printf(const char _FAR *__format, ...);
int _Cdecl puts(const char _FAR *__s);
int _CType remove(const char _FAR *__path);
int _CType _FARFUNC rename(const char _FAR *__oldname,const char _FAR *__newname);
void _Cdecl _FARFUNC rewind(FILE _FAR *__stream);
int _Cdecl scanf(const char _FAR *__format, ...);
void _Cdecl setbuf(FILE _FAR *__stream, char _FAR *__buf);
int _Cdecl _FARFUNC setvbuf(FILE _FAR *__stream, char _FAR *__buf,
int __type, size_t __size);
int _Cdecl _FARFUNC sprintf(char _FAR *__buffer, const char _FAR *__format, ...);
int _Cdecl _FARFUNC sscanf(const char _FAR *__buffer,
const char _FAR *__format, ...);
char _FAR *_Cdecl _FARFUNC strerror(int __errnum);
FILE _FAR *_Cdecl _FARFUNC tmpfile(void);
char _FAR *_Cdecl _FARFUNC tmpnam(char _FAR *__s);
int _Cdecl _FARFUNC ungetc(int __c, FILE _FAR *__stream);
int _Cdecl _FARFUNC vfprintf(FILE _FAR *__stream, const char _FAR *__format,
void _FAR *__arglist);
int _Cdecl _FARFUNC vfscanf(FILE _FAR *__stream, const char _FAR *__format,
void _FAR *__arglist);
int _CType vprintf(const char _FAR *__format, void _FAR *__arglist);
int _Cdecl vscanf(const char _FAR *__format, void _FAR *__arglist);
int _Cdecl _FARFUNC vsprintf(char _FAR *__buffer, const char _FAR *__format,
void _FAR *__arglist);
int _Cdecl _FARFUNC vsscanf(const char _FAR *__buffer, const char _FAR *__format,
void _FAR *__arglist);
int _CType unlink(const char _FAR *__path);
int _Cdecl getc(FILE _FAR *__fp);
int _Cdecl getchar(void);
int _Cdecl putchar(const int __c);
int _Cdecl putc(const int __c, FILE _FAR *__fp);
int _Cdecl feof(FILE _FAR *__fp);
int _Cdecl ferror(FILE _FAR *__fp);
#if !__STDC__
int _Cdecl _FARFUNC fcloseall(void);
FILE _FAR *_Cdecl _FARFUNC fdopen(int __handle, char _FAR *__type);
int _Cdecl _FARFUNC fgetchar(void);
int _Cdecl _FARFUNC flushall(void);
int _Cdecl _FARFUNC fputchar(int __c);
FILE _FAR * _Cdecl _fsopen (const char _FAR *__path, const char _FAR *__mode,
int __shflag);
int _Cdecl getw(FILE _FAR *__stream);
int _Cdecl putw(int __w, FILE _FAR *__stream);
int _Cdecl rmtmp(void);
char _FAR * _Cdecl _FARFUNC _strerror(const char _FAR *__s);
char _FAR * _Cdecl _FARFUNC tempnam(char _FAR *__dir, char _FAR *__pfx);
#define fileno(f) ((f)->fd)
#ifdef __MSC
#define _fileno(f) fileno(f)
#endif
#endif /* !__STDC__ */
int _Cdecl _FARFUNC _fgetc(FILE _FAR *__stream); /* used by getc() macro */
int _Cdecl _FARFUNC _fputc(char __c, FILE _FAR *__stream); /* used by putc() macro */
void _Cdecl _InitEasyWin(void); /* Initialization call for Easy Windows */
#ifdef __cplusplus
}
#endif
/* The following macros provide for common functions */
#define ferror(f) ((f)->flags & _F_ERR)
#define feof(f) ((f)->flags & _F_EOF)
#define getc(f) \
((--((f)->level) >= 0) ? (unsigned char)(*(f)->curp++) : \
_fgetc (f))
#define putc(c,f) \
((++((f)->level) < 0) ? (unsigned char)(*(f)->curp++=(c)) : \
_fputc ((c),f))
#define getchar() getc(stdin)
#define putchar(c) putc((c), stdout)
#define ungetc(c,f) ungetc((c),f) /* traditionally a macro */
#endif

View File

@@ -0,0 +1,104 @@
/* _defs.h
Common definitions for pointer size and calling conventions.
Copyright (c) 1991, 1992 by Borland International
All Rights Reserved.
*/
#if !defined(___DEFS_H)
#define ___DEFS_H
#if __STDC__
# define _Cdecl
#else
# define _Cdecl cdecl
#endif
#ifndef __PAS__
# define _CType _Cdecl
#else
# define _CType pascal
#endif
#ifdef __MSC
# define _emit db
# define __far _far
# define __near _near
# define __cdecl _cdecl
# define __pascal _pascal
# define __export _export
# ifdef __SMALL__
# define _M_I86SM
# endif
# ifdef __COMPACT__
# define _M_I86CM
# endif
# ifdef __MEDIUM__
# define _M_I86MM
# endif
# ifdef __LARGE__
# define _M_I86LM
# endif
# ifndef _Windows
# define _DOS
# else
# define _WINDOWS
# endif
#endif
#if defined(__STDC__)
# define _FAR
# define _FARFUNC
# define _CLASSTYPE
#else
# if defined(_BUILDRTLDLL)
# define _FARFUNC _export
# elif defined(_RTLDLL)
# define _FARFUNC far
# else
# define _FARFUNC
# endif
# if defined(__DLL__)
# if defined(_RTLDLL) || defined(_CLASSDLL)
# define _CLASSTYPE _export
# else
# define _CLASSTYPE far
# endif
# define _FAR far
# elif defined(_RTLDLL) || defined(_CLASSDLL)
# define _CLASSTYPE huge
# define _FAR far
# else
# define _FAR
# if defined(__TINY__) || defined(__SMALL__) || defined(__MEDIUM__)
# define _CLASSTYPE near
# elif defined(__COMPACT__) || defined(__LARGE__)
# define _CLASSTYPE far
# else
# define _CLASSTYPE huge
# endif
# endif
#endif /* __STDC__ */
#if defined(_BUILDRTLDLL)
# define _FARCALL _export
#else
# define _FARCALL far
#endif
#if defined( __cplusplus )
# define _PTRDEF(name) typedef name _FAR * P##name;
# define _REFDEF(name) typedef name _FAR & R##name;
# define _REFPTRDEF(name) typedef name _FAR * _FAR & RP##name;
# define _PTRCONSTDEF(name) typedef const name _FAR * PC##name;
# define _REFCONSTDEF(name) typedef const name _FAR & RC##name;
# define _CLASSDEF(name) class _CLASSTYPE name; \
_PTRDEF(name) \
_REFDEF(name) \
_REFPTRDEF(name) \
_PTRCONSTDEF(name) \
_REFCONSTDEF(name)
#endif
#endif /* ___DEFS_H */

View File

@@ -0,0 +1,14 @@
/* _nfile.h
Maximum number of open files
Copyright (c) 1991, 1992 by Borland International
All Rights Reserved.
*/
#ifndef ___NFILE_H
#define ___NFILE_H
#define _NFILE_ 20
#endif

View File

@@ -0,0 +1,15 @@
/* _null.h
Definition of NULL.
Copyright (c) 1987, 1992 by Borland International
All Rights Reserved.
*/
#ifndef NULL
# if defined(__TINY__) || defined(__SMALL__) || defined(__MEDIUM__)
# define NULL 0
# else
# define NULL 0L
# endif
#endif

BIN
XTMax/Tools/BCC31/MAKE.EXE Normal file

Binary file not shown.

BIN
XTMax/Tools/BCC31/TASM.EXE Normal file

Binary file not shown.

View File

@@ -0,0 +1 @@
-LD:\LIB

BIN
XTMax/Tools/BCC31/TLINK.EXE Normal file

Binary file not shown.

View File

@@ -0,0 +1,2 @@
-ID:\INCLUDE
-LD:\LIB