/* Anpassung der Enhanced GEM-Library an GNU CC + MiNT-Lib */
#ifndef __MINT_LIB__
#define __MINT_LIB__ /* MiNT-Lib wird beim GCC verwendet! */
#endif /* !__MINT_LIB__ */
#ifdef __CREATE_E_GEM_LIB__
#define __TCC_COMPAT__
#endif /* __CREATE_E_GEM_LIB__ */
#define reg /* Keine register Variablen */
#define cdecl /* Kein `cdecl' unter GCC */
extern short _global[];
#define AES_VERSION gl_ap_version /* Enhält unter GCC die AES-Version */#define GLOBAL _global[7]#define INTIN _intin#define INTOUT _intout#define vq_gdos vq_vgdos int __aes__(unsigned long); /* Def. aus der GemLib. */#define _aes(a, b) __aes__(b)
extern short _app;
#endif /* __GNUC__ */
#ifdef LATTICE
/* Anpassung der Enhanced GEM-Library an Lattice C + MiNT-Lib */
#ifndef __MINT_LIB__
#define __MINT_LIB__ /* MiNT-Lib wird bei Lattice verwendet! */
#endif /* !__MINT_LIB__ */
#ifdef __CREATE_E_GEM_LIB__
#define __TCC_COMPAT__
#endif /* __CREATE_E_GEM_LIB__ */
#define __TCC_GEMLIB__
#define reg /* Keine register Variablen */
#define cdecl __stdargs /* `__stdargs' entspricht `cdecl' in Lattice C */
extern short _AESglobal[];
#define AES_VERSION _AESglobal[0] /* Enhält unter Lattice C die AES-Version */#define GLOBAL _AESglobal[7]#define INTIN _AESintin#define INTOUT _AESintout
extern short _app;
#endif /* LATTICE */
#ifdef __PUREC__
/* Anpassung an Pure C */
#define reg register
#ifdef __MINT_LIB__
#define __TCC_COMPAT__
#define __TCC_GEMLIB__
typedef struct
{
int contrl[15];
int intin[132];
int intout[140];
int ptsin[145];
int ptsout[145];
} VDIPARBLK;
typedef struct
{
int *contrl;
int *intin;
int *ptsin;
int *intout;
int *ptsout;
} VDIPB;
typedef struct
{
int contrl[15];
int global[15];
int intin[132];
int intout[140];
void *addrin[16];
void *addrout[16];
} GEMPARBLK;
extern GEMPARBLK _GemParBlk;
extern VDIPARBLK _VDIParBlk;
void vdi(VDIPB *vdipb);
#endif /* __MINT_LIB__ */
#define AES_VERSION _GemParBlk.global[0]
#define GLOBAL _GemParBlk.global#define INTIN _GemParBlk.intin#define INTOUT _GemParBlk.intout
extern int _app;
extern void _aes(int dummy,long);
#endif /* __PUREC__ */
#include <stdlib.h>
#ifdef __MINT_LIB__
#ifdef __PUREC__
#define short int
#endif /* __PUREC__ */
#include <unistd.h>
#include <fcntl.h>
#include <osbind.h>
#include <aesbind.h>
#include <vdibind.h>
#define DTA _DTA
#define d_fname dta_name
#define d_length dta_size
/* Macros zum Umsetzen geringer MiNT-GEM-Lib-Abweichungen von der