#ifndef _INCLUDE_PRAGMA_GFX3D_LIB_H
#define _INCLUDE_PRAGMA_GFX3D_LIB_H

#ifndef CLIB_GFX3D_PROTOS_H
#include <clib/gfx3d_protos.h>
#endif

#if defined(AZTEC_C) || defined(__MAXON__) || defined(__STORM__)
#pragma amicall(GfX3dBase,0x01E,GFXVersion())
#pragma amicall(GfX3dBase,0x024,GFXFeatures())
#pragma amicall(GfX3dBase,0x02A,GFXAllocMem(d0))
#pragma amicall(GfX3dBase,0x030,GFXFreemem(a0))
#pragma amicall(GfX3dBase,0x036,GFXFlt(d0))
#pragma amicall(GfX3dBase,0x03C,GFXFix(d0))
#pragma amicall(GfX3dBase,0x042,GFXAdd(d1,d0))
#pragma amicall(GfX3dBase,0x048,GFXSub(d1,d0))
#pragma amicall(GfX3dBase,0x04E,GFXMul(d1,d0))
#pragma amicall(GfX3dBase,0x054,GFXDiv(d1,d0))
#pragma amicall(GfX3dBase,0x05A,GFXFixMul(d1,d0))
#pragma amicall(GfX3dBase,0x060,GFXFltMul(d1,d0))
#pragma amicall(GfX3dBase,0x066,GFXAbs(d0))
#pragma amicall(GfX3dBase,0x06C,GFXNeg(d0))
#pragma amicall(GfX3dBase,0x072,GFXSin(d0))
#pragma amicall(GfX3dBase,0x078,GFXCos(d0))
#pragma amicall(GfX3dBase,0x07E,GFXSqrt(d0))
#pragma amicall(GfX3dBase,0x084,GFXFixSqrt(d0))
#pragma amicall(GfX3dBase,0x08A,GFXPi())
#pragma amicall(GfX3dBase,0x090,GFXSetColor(d0))
#pragma amicall(GfX3dBase,0x096,GFXSetFarClip(d0))
#pragma amicall(GfX3dBase,0x09C,GFXSetNearClip(d0))
#pragma amicall(GfX3dBase,0x0A2,GFXBegin(d0))
#pragma amicall(GfX3dBase,0x0A8,GFXColor(d0))
#pragma amicall(GfX3dBase,0x0AE,GFXVertex(d0,d1,d2))
#pragma amicall(GfX3dBase,0x0B4,GFXPolygon(a0))
#pragma amicall(GfX3dBase,0x0BA,GFXFrame(a0))
#pragma amicall(GfX3dBase,0x0C0,GFXPosition(d0,d1,d2))
#pragma amicall(GfX3dBase,0x0C6,GFXDirection(d0,d1,d2))
#pragma amicall(GfX3dBase,0x0CC,GFXFarClip(d0))
#pragma amicall(GfX3dBase,0x0D2,GFXNearClip(d0))
#pragma amicall(GfX3dBase,0x0D8,GFXObject(a0))
#pragma amicall(GfX3dBase,0x0DE,GFXEnvironment(a0))
#pragma amicall(GfX3dBase,0x0E4,GFXWidth(d0))
#pragma amicall(GfX3dBase,0x0EA,GFXHeight(d0))
#pragma amicall(GfX3dBase,0x0F0,GFXFocus(d0))
#pragma amicall(GfX3dBase,0x0F6,GFXAspectRatio(d0,d1,d2))
#pragma amicall(GfX3dBase,0x0FC,GFXVideoBuffer(a0))
#pragma amicall(GfX3dBase,0x102,GFXEnd())
#pragma amicall(GfX3dBase,0x108,GFXModifyObjectPosition(a0,d0,d1,d2))
#pragma amicall(GfX3dBase,0x10E,GFXModifyObjectDirection(a0,d0,d1,d2))
#pragma amicall(GfX3dBase,0x114,GFXModifyObjectFrame(a0,a1))
#pragma amicall(GfX3dBase,0x11A,GFXModifyCameraPosition(a0,d0,d1,d2))
#pragma amicall(GfX3dBase,0x120,GFXModifyCameraDirection(a0,d0,d1,d2))
#pragma amicall(GfX3dBase,0x126,GFXModifyCameraFocus(a0,d0))
#pragma amicall(GfX3dBase,0x12C,GFXModifyCameraAspectRatio(a0,d0,d1,d2))
#pragma amicall(GfX3dBase,0x132,GFXModifyCameraWidth(a0,d0))
#pragma amicall(GfX3dBase,0x138,GFXModifyCameraHeight(a0,d0))
#pragma amicall(GfX3dBase,0x13E,GFXModifyCameraVideoBuffer(a0,a1))
#pragma amicall(GfX3dBase,0x144,GFXUpdateVideoBuffer())
#pragma amicall(GfX3dBase,0x14A,GFXWritePixel(d0,d1,d2))
#pragma amicall(GfX3dBase,0x150,GFXClearWorkBuffer())
#pragma amicall(GfX3dBase,0x156,GFXUpdateScene(a0))
#pragma amicall(GfX3dBase,0x15C,GFXPalette(a0))
#pragma amicall(GfX3dBase,0x162,GFXSetShading(d0))
#pragma amicall(GfX3dBase,0x168,GFXShadeTable(a0))
#pragma amicall(GfX3dBase,0x16E,GFXShading(d0))
#pragma amicall(GfX3dBase,0x174,GFXShareWorkBuffer(a0))
#pragma amicall(GfX3dBase,0x17A,GFXSteps(d0))
#pragma amicall(GfX3dBase,0x180,GFXThreshold(d0))
#endif
#if defined(_DCC) || defined(__SASC)
#pragma libcall GfX3dBase GFXVersion           01E 00
#pragma libcall GfX3dBase GFXFeatures          024 00
#pragma libcall GfX3dBase GFXAllocMem          02A 001
#pragma libcall GfX3dBase GFXFreemem           030 801
#pragma libcall GfX3dBase GFXFlt               036 001
#pragma libcall GfX3dBase GFXFix               03C 001
#pragma libcall GfX3dBase GFXAdd               042 0102
#pragma libcall GfX3dBase GFXSub               048 0102
#pragma libcall GfX3dBase GFXMul               04E 0102
#pragma libcall GfX3dBase GFXDiv               054 0102
#pragma libcall GfX3dBase GFXFixMul            05A 0102
#pragma libcall GfX3dBase GFXFltMul            060 0102
#pragma libcall GfX3dBase GFXAbs               066 001
#pragma libcall GfX3dBase GFXNeg               06C 001
#pragma libcall GfX3dBase GFXSin               072 001
#pragma libcall GfX3dBase GFXCos               078 001
#pragma libcall GfX3dBase GFXSqrt              07E 001
#pragma libcall GfX3dBase GFXFixSqrt           084 001
#pragma libcall GfX3dBase GFXPi                08A 00
#pragma libcall GfX3dBase GFXSetColor          090 001
#pragma libcall GfX3dBase GFXSetFarClip        096 001
#pragma libcall GfX3dBase GFXSetNearClip       09C 001
#pragma libcall GfX3dBase GFXBegin             0A2 001
#pragma libcall GfX3dBase GFXColor             0A8 001
#pragma libcall GfX3dBase GFXVertex            0AE 21003
#pragma libcall GfX3dBase GFXPolygon           0B4 801
#pragma libcall GfX3dBase GFXFrame             0BA 801
#pragma libcall GfX3dBase GFXPosition          0C0 21003
#pragma libcall GfX3dBase GFXDirection         0C6 21003
#pragma libcall GfX3dBase GFXFarClip           0CC 001
#pragma libcall GfX3dBase GFXNearClip          0D2 001
#pragma libcall GfX3dBase GFXObject            0D8 801
#pragma libcall GfX3dBase GFXEnvironment       0DE 801
#pragma libcall GfX3dBase GFXWidth             0E4 001
#pragma libcall GfX3dBase GFXHeight            0EA 001
#pragma libcall GfX3dBase GFXFocus             0F0 001
#pragma libcall GfX3dBase GFXAspectRatio       0F6 21003
#pragma libcall GfX3dBase GFXVideoBuffer       0FC 801
#pragma libcall GfX3dBase GFXEnd               102 00
#pragma libcall GfX3dBase GFXModifyObjectPosition 108 210804
#pragma libcall GfX3dBase GFXModifyObjectDirection 10E 210804
#pragma libcall GfX3dBase GFXModifyObjectFrame 114 9802
#pragma libcall GfX3dBase GFXModifyCameraPosition 11A 210804
#pragma libcall GfX3dBase GFXModifyCameraDirection 120 210804
#pragma libcall GfX3dBase GFXModifyCameraFocus 126 0802
#pragma libcall GfX3dBase GFXModifyCameraAspectRatio 12C 210804
#pragma libcall GfX3dBase GFXModifyCameraWidth 132 0802
#pragma libcall GfX3dBase GFXModifyCameraHeight 138 0802
#pragma libcall GfX3dBase GFXModifyCameraVideoBuffer 13E 9802
#pragma libcall GfX3dBase GFXUpdateVideoBuffer 144 00
#pragma libcall GfX3dBase GFXWritePixel        14A 21003
#pragma libcall GfX3dBase GFXClearWorkBuffer   150 00
#pragma libcall GfX3dBase GFXUpdateScene       156 801
#pragma libcall GfX3dBase GFXPalette           15C 801
#pragma libcall GfX3dBase GFXSetShading        162 001
#pragma libcall GfX3dBase GFXShadeTable        168 801
#pragma libcall GfX3dBase GFXShading           16E 001
#pragma libcall GfX3dBase GFXShareWorkBuffer   174 801
#pragma libcall GfX3dBase GFXSteps             17A 001
#pragma libcall GfX3dBase GFXThreshold         180 001
#endif

#endif	/*  _INCLUDE_PRAGMA_GFX3D_LIB_H  */