minivmac4ios/Mini vMac/mnvm_core/SYSDEPNS.h

153 lines
2.9 KiB
C

/*
SYSDEPNS.h
Copyright (C) 2006 Bernd Schmidt, Philip Cummins, Paul C. Pratt
You can redistribute this file and/or modify it under the terms
of version 2 of the GNU General Public License as published by
the Free Software Foundation. You should have received a copy
of the license along with this file; see the file COPYING.
This file is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
license for more details.
*/
/*
SYStem DEPeNdencies.
*/
#ifdef SYSDEPNS_H
#error "header already included"
#else
#define SYSDEPNS_H
#endif
#include "CNFGGLOB.h"
typedef ui3b *ui3p;
typedef ui4b *ui4p;
typedef ui5b *ui5p;
/*
Largest efficiently supported
representation types. uimr should be
large enough to hold number of elements
of any array we will deal with.
*/
typedef ui5r uimr;
typedef si5r simr;
#define blnr ui3r
#define trueblnr 1
#define falseblnr 0
#define nullpr ((void *) 0)
#define anyp ui3p
/* pascal string, single byte characters */
#define ps3p ui3p
#ifndef MayInline
#define MayInline
#endif
#ifndef MayNotInline
#define MayNotInline
#endif
#ifndef my_reg_call
#define my_reg_call
#endif
#ifndef my_osglu_call
#define my_osglu_call
#endif
#define LOCALVAR static
#ifdef AllFiles
#define GLOBALVAR LOCALVAR
#define EXPORTVAR(t, v)
#else
#define GLOBALVAR
#define EXPORTVAR(t, v) extern t v;
#endif
#define LOCALFUNC static MayNotInline
#define FORWARDFUNC LOCALFUNC
#ifdef AllFiles
#define GLOBALFUNC LOCALFUNC
#define EXPORTFUNC LOCALFUNC
#else
#define GLOBALFUNC MayNotInline
#define EXPORTFUNC extern
#endif
#define IMPORTFUNC EXPORTFUNC
#define TYPEDEFFUNC typedef
#define LOCALPROC LOCALFUNC void
#define GLOBALPROC GLOBALFUNC void
#define EXPORTPROC EXPORTFUNC void
#define IMPORTPROC IMPORTFUNC void
#define FORWARDPROC FORWARDFUNC void
#define TYPEDEFPROC TYPEDEFFUNC void
#define LOCALINLINEFUNC static MayInline
#define LOCALINLINEPROC LOCALINLINEFUNC void
#define LOCALFUNCUSEDONCE LOCALINLINEFUNC
#define LOCALPROCUSEDONCE LOCALINLINEPROC
#define GLOBALOSGLUFUNC GLOBALFUNC my_osglu_call
#define EXPORTOSGLUFUNC EXPORTFUNC my_osglu_call
#define GLOBALOSGLUPROC GLOBALFUNC my_osglu_call void
#define EXPORTOSGLUPROC EXPORTFUNC my_osglu_call void
/*
For functions in operating system glue that
are called by rest of program.
*/
/*
best type for ui4r that is probably in register
(when compiler messes up otherwise)
*/
#ifndef BigEndianUnaligned
#define BigEndianUnaligned 0
#endif
#ifndef LittleEndianUnaligned
#define LittleEndianUnaligned 0
#endif
#ifndef ui3rr
#define ui3rr ui3r
#endif
#ifndef ui4rr
#define ui4rr ui4r
#endif
#ifndef si5rr
#define si5rr si5r
#endif
#ifndef my_align_8
#define my_align_8
#endif
#ifndef my_cond_rare
#define my_cond_rare(x) (x)
#endif
#ifndef Have_ASR
#define Have_ASR 0
#endif
#ifndef HaveMySwapUi5r
#define HaveMySwapUi5r 0
#endif