home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 18
/
aminetcdnumber181997.iso
/
Aminet
/
dev
/
m2
/
CycloneModules.lha
/
modules
/
txt
/
GraphicsL.def
< prev
next >
Wrap
Text File
|
1996-12-27
|
25KB
|
749 lines
(**************************************************************************)
(* *)
(* Definition Module (C) Copyright 1994 Marcel Timmermans. *)
(* Date : 19 Feb 1994 *)
(* Language : Modula-2 *)
(* *)
(**************************************************************************)
DEFINITION MODULE GraphicsL {"graphics.library",33};
FROM SYSTEM IMPORT ADDRESS,BITSET,BYTE,LONGSET,WORD;
FROM Hardware IMPORT
BltnodePtr;
FROM UtilityD IMPORT
TagItemPtr;
IMPORT
GraphicsD,Reg;
VAR
graphicsBase:GraphicsD.GfxBasePtr;
(*------ BitMap primitives ------*)
PROCEDURE BltBitMap(
srcBitMap{Reg.A0}:GraphicsD.BitMapPtr;
srcX{Reg.D0}:INTEGER;
srcY{Reg.D1}:INTEGER;
dstBitMap{Reg.A1}:GraphicsD.BitMapPtr;
dstX{Reg.D2}:INTEGER;
dstY{Reg.D3}:INTEGER;
sizeX{Reg.D4}:INTEGER;
sizeY{Reg.D5}:INTEGER;
minterm{Reg.D6}:SHORTCARD;
mask{Reg.D7}:SHORTCARD;
tempA{Reg.A2}:ADDRESS):LONGCARD; CODE -30;
PROCEDURE BltTemplate(
srcTemplate{Reg.A0}:ADDRESS;
srcX{Reg.D0}:INTEGER;
srcMod{Reg.D1}:INTEGER;
rp{Reg.A1}:GraphicsD.RastPortPtr;
dstX{Reg.D2}:INTEGER;
dstY{Reg.D3}:INTEGER;
sizeX{Reg.D4}:INTEGER;
sizeY{Reg.D5}:INTEGER); CODE -36;
(*------ Text routines ------*)
PROCEDURE ClearEOL(rp{Reg.A1}:GraphicsD.RastPortPtr); CODE -42;
PROCEDURE ClearScreen(rp{Reg.A1}:GraphicsD.RastPortPtr); CODE -48;
PROCEDURE TextLength(
rp{Reg.A1}:GraphicsD.RastPortPtr;
string{Reg.A0}:ADDRESS;
count{Reg.D0}:INTEGER):INTEGER; CODE -54;
PROCEDURE Text(
rp{Reg.A1}:GraphicsD.RastPortPtr;
string{Reg.A0}:ADDRESS;
count{Reg.D0}:LONGINT); CODE -60;
PROCEDURE SetFont(
rp{Reg.A1}:GraphicsD.RastPortPtr;
font{Reg.A0}:GraphicsD.TextFontPtr); CODE -66;
PROCEDURE OpenFont(
textAttr{Reg.A0}:GraphicsD.TextAttrPtr):GraphicsD.TextFontPtr; CODE -72;
PROCEDURE CloseFont(font{Reg.A1}:GraphicsD.TextFontPtr); CODE -78;
PROCEDURE AskSoftStyle(
rp{Reg.A1}:GraphicsD.RastPortPtr):GraphicsD.FontStyleSet; CODE -84;
PROCEDURE SetSoftStyle(
rp{Reg.A1}:GraphicsD.RastPortPtr;
style{Reg.D0}:GraphicsD.FontStyleSet;
enable{Reg.D1}:GraphicsD.FontStyleSet):GraphicsD.FontStyleSet; CODE -90;
(*------ Gels routines ------*)
PROCEDURE AddBob(
Bob{Reg.A0}:GraphicsD.BobPtr;
rp{Reg.A1}:GraphicsD.RastPortPtr); CODE -96;
PROCEDURE AddVSprite(
vs{Reg.A0}:GraphicsD.VSpritePtr;
rp{Reg.A1}:GraphicsD.RastPortPtr); CODE -102;
PROCEDURE DoCollision(rp{Reg.A1}:GraphicsD.RastPortPtr); CODE -108;
PROCEDURE DrawGList(
rp{Reg.A1}:GraphicsD.RastPortPtr;
vp{Reg.A0}:GraphicsD.ViewPortPtr); CODE -114;
PROCEDURE InitGels(
head{Reg.A0}:GraphicsD.VSpritePtr;
tail{Reg.A1}:GraphicsD.VSpritePtr;
gInfo{Reg.A2}:GraphicsD.GelsInfoPtr); CODE -120;
PROCEDURE InitMasks(vs{Reg.A0}:GraphicsD.VSpritePtr); CODE -126;
PROCEDURE RemIBob(
bob{Reg.A0}:GraphicsD.BobPtr;
rp{Reg.A1}:GraphicsD.RastPortPtr;
vp{Reg.A2}:GraphicsD.ViewPortPtr); CODE -132;
PROCEDURE RemVSprite(vs{Reg.A0}:GraphicsD.VSpritePtr); CODE -138;
PROCEDURE SetCollision(
num{Reg.D0}:LONGCARD;
routine{Reg.A0}:ADDRESS;
gInfo{Reg.A1}:GraphicsD.GelsInfoPtr); CODE -144;
PROCEDURE SortGList(rp{Reg.A1}:GraphicsD.RastPortPtr); CODE -150;
PROCEDURE AddAnimOb(
anOb{Reg.A0}:GraphicsD.AnimObPtr;
VAR anKey{Reg.A1}:GraphicsD.AnimObPtr;
rp{Reg.A2}:GraphicsD.RastPortPtr); CODE -156;
PROCEDURE Animate(
VAR anKey{Reg.A0}:GraphicsD.AnimObPtr;
rp{Reg.A1}:GraphicsD.RastPortPtr); CODE -162;
PROCEDURE GetGBuffers(
anOb{Reg.A0}:GraphicsD.AnimObPtr;
rp{Reg.A1}:GraphicsD.RastPortPtr;
db{Reg.D0}:BOOLEAN):BOOLEAN; CODE -168;
PROCEDURE InitGMasks(anOb{Reg.A0}:GraphicsD.AnimObPtr); CODE -174;
(*------ General graphics routines ------*)
PROCEDURE DrawEllipse(
rp{Reg.A1}:GraphicsD.RastPortPtr;
cX{Reg.D0}:INTEGER;
cY{Reg.D1}:INTEGER;
a{Reg.D2}:INTEGER;
b{Reg.D3}:INTEGER); CODE -180;
PROCEDURE AreaEllipse(
rp{Reg.A1}:GraphicsD.RastPortPtr;
cX{Reg.D0}:INTEGER;
cY{Reg.D1}:INTEGER;
a{Reg.D2}:INTEGER;
b{Reg.D3}:INTEGER):BOOLEAN; CODE -186;
PROCEDURE LoadRGB4(
vp{Reg.A0}:GraphicsD.ViewPortPtr;
colors{Reg.A1}:ADDRESS;
count{Reg.D0}:INTEGER); CODE -192;
PROCEDURE InitRastPort(VAR rp{Reg.A1}:GraphicsD.RastPort); CODE -198;
PROCEDURE InitVPort(VAR vp{Reg.A0}:GraphicsD.ViewPort); CODE -204;
PROCEDURE MrgCop(view{Reg.A1}:GraphicsD.ViewPtr); CODE -210;
PROCEDURE MakeVPort(
view{Reg.A0}:GraphicsD.ViewPtr;
viewport{Reg.A1}:GraphicsD.ViewPortPtr); CODE -216;
PROCEDURE LoadView(view{Reg.A1}:GraphicsD.ViewPtr); CODE -222;
PROCEDURE WaitBlit(); CODE -228;
PROCEDURE SetRast(
rp{Reg.A1}:GraphicsD.RastPortPtr;
pen{Reg.D0}:CARDINAL); CODE -234;
PROCEDURE Move(
rp{Reg.A1}:GraphicsD.RastPortPtr;
x{Reg.D0}:INTEGER;
y{Reg.D1}:INTEGER); CODE -240;
PROCEDURE Draw(
rp{Reg.A1}:GraphicsD.RastPortPtr;
x{Reg.D0}:INTEGER;
y{Reg.D1}:INTEGER); CODE -246;
PROCEDURE AreaMove(
rp{Reg.A1}:GraphicsD.RastPortPtr;
x{Reg.D0}:INTEGER;
y{Reg.D1}:INTEGER):BOOLEAN; CODE -252;
PROCEDURE AreaDraw(
rp{Reg.A1}:GraphicsD.RastPortPtr;
x{Reg.D0}:INTEGER;
y{Reg.D1}:INTEGER):BOOLEAN; CODE -258;
PROCEDURE AreaEnd(rp{Reg.A1}:GraphicsD.RastPortPtr):BOOLEAN; CODE -264;
PROCEDURE WaitTOF(); CODE -270;
PROCEDURE QBlit(bp{Reg.A1}:BltnodePtr); CODE -276;
PROCEDURE InitArea(
VAR areainfo{Reg.A0}:GraphicsD.AreaInfo;
buffer{Reg.A1}:ADDRESS;
maxvectors{Reg.D0}:INTEGER); CODE -282;
PROCEDURE SetRGB4(
vp{Reg.A0}:GraphicsD.ViewPortPtr;
n{Reg.D0}:CARDINAL;
r{Reg.D1}:CARDINAL;
g{Reg.D2}:CARDINAL;
b{Reg.D3}:CARDINAL); CODE -288;
PROCEDURE QBSBlit(bsp{Reg.A1}:BltnodePtr); CODE -294;
PROCEDURE BltClear(
memBlock{Reg.A1}:ADDRESS;
bytecount{Reg.D0}:LONGCARD;
flags{Reg.D1}:LONGSET); CODE -300;
PROCEDURE RectFill(
rp{Reg.A1}:GraphicsD.RastPortPtr;
xMin{Reg.D0}:INTEGER;
yMin{Reg.D1}:INTEGER;
xMax{Reg.D2}:INTEGER;
yMax{Reg.D3}:INTEGER); CODE -306;
PROCEDURE BltPattern(
rp{Reg.A1}:GraphicsD.RastPortPtr;
mask{Reg.A0}:ADDRESS;
xl{Reg.D0}:INTEGER;
yl{Reg.D1}:INTEGER;
maxX{Reg.D2}:INTEGER;
maxY{Reg.D3}:INTEGER;
bytecnt{Reg.D4}:INTEGER); CODE -312;
PROCEDURE ReadPixel(
rp{Reg.A1}:GraphicsD.RastPortPtr;
x{Reg.D0}:INTEGER;
y{Reg.D1}:INTEGER):LONGINT; CODE -318;
PROCEDURE WritePixel(
rp{Reg.A1}:GraphicsD.RastPortPtr;
x{Reg.D0}:INTEGER;
y{Reg.D1}:INTEGER):BOOLEAN; CODE -324;
PROCEDURE Flood(
rp{Reg.A1}:GraphicsD.RastPortPtr;
mode{Reg.D2}:LONGCARD;
x{Reg.D0}:INTEGER;
y{Reg.D1}:INTEGER):BOOLEAN; CODE -330;
PROCEDURE PolyDraw(
rp{Reg.A1}:GraphicsD.RastPortPtr;
count{Reg.D0}:INTEGER;
array{Reg.A0}:ADDRESS); CODE -336;
PROCEDURE SetAPen(
rp{Reg.A1}:GraphicsD.RastPortPtr;
pen{Reg.D0}:CARDINAL); CODE -342;
PROCEDURE SetBPen(
rp{Reg.A1}:GraphicsD.RastPortPtr;
pen{Reg.D0}:CARDINAL); CODE -348;
PROCEDURE SetDrMd(
rp{Reg.A1}:GraphicsD.RastPortPtr;
mode{Reg.D0}:GraphicsD.DrawModeSet); CODE -354;
PROCEDURE InitView(VAR view{Reg.A1}:GraphicsD.View); CODE -360;
PROCEDURE CBump(c{Reg.A1}:GraphicsD.UCopListPtr); CODE -366;
PROCEDURE CMove(
c{Reg.A1}:GraphicsD.UCopListPtr;
a{Reg.D0}:ADDRESS;
v{Reg.D1}:INTEGER); CODE -372;
PROCEDURE CWait(
c{Reg.A1}:GraphicsD.UCopListPtr;
v{Reg.D0}:INTEGER;
h{Reg.D1}:INTEGER); CODE -378;
PROCEDURE VBeamPos():LONGINT; CODE -384;
PROCEDURE InitBitMap(
VAR bm{Reg.A0}:GraphicsD.BitMap;
depth{Reg.D0}:INTEGER;
width{Reg.D1}:LONGCARD;
height{Reg.D2}:LONGCARD); CODE -390;
PROCEDURE ScrollRaster(
rp{Reg.A1}:GraphicsD.RastPortPtr;
dx{Reg.D0}:INTEGER;
dy{Reg.D1}:INTEGER;
xMin{Reg.D2}:INTEGER;
yMin{Reg.D3}:INTEGER;
xMax{Reg.D4}:INTEGER;
yMax{Reg.D5}:INTEGER); CODE -396;
PROCEDURE WaitBOVP(vp{Reg.A0}:GraphicsD.ViewPortPtr); CODE -402;
PROCEDURE GetSprite(
sprite{Reg.A0}:GraphicsD.SimpleSpritePtr;
pick{Reg.D0}:INTEGER):INTEGER; CODE -408;
PROCEDURE FreeSprite(num{Reg.D0}:INTEGER); CODE -414;
PROCEDURE ChangeSprite(
vp{Reg.A0}:GraphicsD.ViewPortPtr;
s{Reg.A1}:GraphicsD.SimpleSpritePtr;
newdata{Reg.A2}:ADDRESS); CODE -420;
PROCEDURE MoveSprite(
vp{Reg.A0}:GraphicsD.ViewPortPtr;
sprite{Reg.A1}:GraphicsD.SimpleSpritePtr;
x{Reg.D0}:INTEGER;
y{Reg.D1}:INTEGER); CODE -426;
PROCEDURE LockLayerRom(layer{Reg.A5}:GraphicsD.LayerPtr); CODE -432;
PROCEDURE UnlockLayerRom(layer{Reg.A5}:GraphicsD.LayerPtr); CODE -438;
PROCEDURE SyncSBitMap(layer{Reg.A0}:GraphicsD.LayerPtr); CODE -444;
PROCEDURE CopySBitMap(layer{Reg.A0}:GraphicsD.LayerPtr); CODE -450;
PROCEDURE OwnBlitter(); CODE -456;
PROCEDURE DisownBlitter(); CODE -462;
PROCEDURE InitTmpRas(
VAR tmpras{Reg.A0}:GraphicsD.TmpRas;
buffer{Reg.A1}:ADDRESS;
size{Reg.D0}:LONGINT); CODE -468;
PROCEDURE AskFont(
rp{Reg.A1}:GraphicsD.RastPortPtr;
textAttr{Reg.A0}:GraphicsD.TextAttrPtr); CODE -474;
PROCEDURE AddFont(textFont{Reg.A1}:GraphicsD.TextFontPtr); CODE -480;
PROCEDURE RemFont(textFont{Reg.A1}:GraphicsD.TextFontPtr); CODE -486;
PROCEDURE AllocRaster(
width{Reg.D0}:CARDINAL;
height{Reg.D1}:CARDINAL):ADDRESS; CODE -492;
PROCEDURE FreeRaster(
p{Reg.A0}:ADDRESS;
width{Reg.D0}:CARDINAL;
height{Reg.D1}:CARDINAL); CODE -498;
PROCEDURE AndRectRegion(
region{Reg.A0}:GraphicsD.RegionPtr;
rectangle{Reg.A1}:GraphicsD.RectanglePtr); CODE -504;
PROCEDURE OrRectRegion(
region{Reg.A0}:GraphicsD.RegionPtr;
rectangle{Reg.A1}:GraphicsD.RectanglePtr):BOOLEAN; CODE -510;
PROCEDURE NewRegion():GraphicsD.RegionPtr; CODE -516;
PROCEDURE ClearRectRegion(
region{Reg.A0}:GraphicsD.RegionPtr;
rectangle{Reg.A1}:GraphicsD.RectanglePtr):BOOLEAN; CODE -522;
PROCEDURE ClearRegion(region{Reg.A0}:GraphicsD.RegionPtr); CODE -528;
PROCEDURE DisposeRegion(region{Reg.A0}:GraphicsD.RegionPtr); CODE -534;
PROCEDURE FreeVPortCopLists(vp{Reg.A0}:GraphicsD.ViewPortPtr); CODE -540;
PROCEDURE FreeCopList(coplist{Reg.A0}:GraphicsD.CopListPtr); CODE -546;
PROCEDURE ClipBlit(
src{Reg.A0}:GraphicsD.RastPortPtr;
srcX{Reg.D0}:INTEGER;
srcY{Reg.D1}:INTEGER;
dest{Reg.A1}:GraphicsD.RastPortPtr;
destX{Reg.D2}:INTEGER;
destY{Reg.D3}:INTEGER;
xSize{Reg.D4}:INTEGER;
ySize{Reg.D5}:INTEGER;
minterm{Reg.D6}:SHORTCARD); CODE -552;
PROCEDURE XorRectRegion(
region{Reg.A0}:GraphicsD.RegionPtr;
rectangle{Reg.A1}:GraphicsD.RectanglePtr):BOOLEAN; CODE -558;
PROCEDURE FreeCprList(cprlist{Reg.A0}:GraphicsD.CprlistPtr); CODE -564;
PROCEDURE GetColorMap(
entries{Reg.D0}:LONGINT):GraphicsD.ColorMapPtr; CODE -570;
PROCEDURE FreeColorMap(colorMap{Reg.A0}:GraphicsD.ColorMapPtr); CODE -576;
PROCEDURE GetRGB4(
colorMap{Reg.A0}:GraphicsD.ColorMapPtr;
entry{Reg.D0}:LONGINT):LONGINT; CODE -582;
PROCEDURE ScrollVPort(vp{Reg.A0}:GraphicsD.ViewPortPtr); CODE -588;
PROCEDURE UCopperListInit(
copperList{Reg.A0}:GraphicsD.UCopListPtr;
num{Reg.D0}:LONGINT):GraphicsD.CopListPtr; CODE -594;
PROCEDURE FreeGBuffers(
anOb{Reg.A0}:GraphicsD.AnimObPtr;
rp{Reg.A1}:GraphicsD.RastPortPtr;
db{Reg.D0}:BOOLEAN); CODE -600;
PROCEDURE BltBitMapRastPort(
srcbm{Reg.A0}:GraphicsD.BitMapPtr;
srcX{Reg.D0}:INTEGER;
srcY{Reg.D1}:INTEGER;
destRp{Reg.A1}:GraphicsD.RastPortPtr;
destX{Reg.D2}:INTEGER;
destY{Reg.D3}:INTEGER;
sizeX{Reg.D4}:INTEGER;
sizeY{Reg.D5}:INTEGER;
minterm{Reg.D6}:SHORTCARD); CODE -606;
PROCEDURE OrRegionRegion(
region1{Reg.A0}:GraphicsD.RegionPtr;
region2{Reg.A1}:GraphicsD.RegionPtr):BOOLEAN; CODE -612;
PROCEDURE XorRegionRegion(
region1{Reg.A0}:GraphicsD.RegionPtr;
region2{Reg.A1}:GraphicsD.RegionPtr):BOOLEAN; CODE -618;
PROCEDURE AndRegionRegion(
region1{Reg.A0}:GraphicsD.RegionPtr;
region2{Reg.A1}:GraphicsD.RegionPtr):BOOLEAN; CODE -624;
PROCEDURE SetRGB4CM(
cm{Reg.A0}:GraphicsD.ColorMapPtr;
n{Reg.D0}:CARDINAL;
r{Reg.D1}:CARDINAL;
g{Reg.D2}:CARDINAL;
b{Reg.D3}:CARDINAL); CODE -630;
PROCEDURE BltMaskBitMapRastPort(
srcbm{Reg.A0}:GraphicsD.BitMapPtr;
srcX{Reg.D0}:INTEGER;
srcY{Reg.D1}:INTEGER;
destRp{Reg.A1}:GraphicsD.RastPortPtr;
destX{Reg.D2}:INTEGER;
destY{Reg.D3}:INTEGER;
sizeX{Reg.D4}:INTEGER;
sizeY{Reg.D5}:INTEGER;
minterm{Reg.D6}:BYTE;
bltmask{Reg.A2}:ADDRESS); CODE -636;
PROCEDURE AttemptLockLayerRom(
layer{Reg.A5}:GraphicsD.LayerPtr):BOOLEAN; CODE -654;
(*--- functions in V36 or higher (distributed as Release 2.0) ---*)
PROCEDURE GfxNew(gfxNodeType{Reg.D0}:LONGCARD):ADDRESS; CODE -660;
PROCEDURE GfxFree(gfxNodePtr{Reg.A0}:ADDRESS); CODE -666;
PROCEDURE GfxAssociate(
associateNode{Reg.A0}:ADDRESS;
gfxNodePtr{Reg.A1}:ADDRESS); CODE -672;
PROCEDURE BitMapScale(
VAR bitScaleArgs{Reg.A0}:GraphicsD.BitScaleArgs); CODE -678;
PROCEDURE ScalerDiv(
factor{Reg.D0}:CARDINAL;
numerator{Reg.D1}:CARDINAL;
denominator{Reg.D2}:CARDINAL):CARDINAL; CODE -684;
PROCEDURE TextExtent(
rp{Reg.A1}:GraphicsD.RastPortPtr;
string{Reg.A0}:ADDRESS;
count{Reg.D0}:INTEGER;
VAR textExtent{Reg.A2}:GraphicsD.TextExtent); CODE -690;
PROCEDURE TextFit(
rp{Reg.A1}:GraphicsD.RastPortPtr;
string{Reg.A0}:ADDRESS;
strLen{Reg.D0}:CARDINAL;
VAR textExtent{Reg.A2}:GraphicsD.TextExtent;
constrainingExtent{Reg.A3}:GraphicsD.TextExtentPtr;
strDirection{Reg.D1}:INTEGER;
constrainBitWidth{Reg.D2}:CARDINAL;
constrainBitHeight{Reg.D3}:CARDINAL):LONGCARD; CODE -696;
PROCEDURE GfxLookUp(
associateNode{Reg.A0}:ADDRESS):ADDRESS; CODE -702;
PROCEDURE VideoControl(
VAR colorMap{Reg.A0}:GraphicsD.ColorMap;
tagarray{Reg.A1}:TagItemPtr):BOOLEAN; CODE -708;
PROCEDURE OpenMonitor(
monitorName{Reg.A1}:ADDRESS;
displayID{Reg.D0}:LONGCARD):GraphicsD.MonitorSpecPtr; CODE -714;
PROCEDURE CloseMonitor(
monitorSpec{Reg.A0}:GraphicsD.MonitorSpecPtr):BOOLEAN; CODE -720;
PROCEDURE FindDisplayInfo(
dispID{Reg.D0}:LONGCARD):GraphicsD.DisplayInfoHandle; CODE -726;
PROCEDURE NextDisplayInfo(displayID{Reg.D0}: LONGCARD): LONGCARD; CODE -732;
PROCEDURE GetDisplayInfoData(
handle{Reg.A0}:GraphicsD.DisplayInfoHandle;
buf{Reg.A1}:ADDRESS;
size{Reg.D0}:LONGCARD;
tagID{Reg.D1}:LONGCARD;
displayID{Reg.D2}:LONGCARD):LONGCARD; CODE -756;
PROCEDURE FontExtent(
font{Reg.A0}:GraphicsD.TextFontPtr;
VAR fontExtent{Reg.A1}:GraphicsD.TextExtent); CODE -762;
PROCEDURE ReadPixelLine8(
rp{Reg.A0}:GraphicsD.RastPortPtr;
xstart{Reg.D0}:CARDINAL;
ystart{Reg.D1}:CARDINAL;
width{Reg.D2}:CARDINAL;
array{Reg.A2}:ADDRESS;
tempRP{Reg.A1}:GraphicsD.RastPortPtr):LONGINT; CODE -768;
PROCEDURE WritePixelLine8(
rp{Reg.A0}:GraphicsD.RastPortPtr;
xstart{Reg.D0}:CARDINAL;
ystart{Reg.D1}:CARDINAL;
width{Reg.D2}:CARDINAL;
array{Reg.A2}:ADDRESS;
tempRP{Reg.A1}:GraphicsD.RastPortPtr):LONGINT; CODE -774;
PROCEDURE ReadPixelArray8(
rp{Reg.A0}:GraphicsD.RastPortPtr;
xstart{Reg.D0}:CARDINAL;
ystart{Reg.D1}:CARDINAL;
xstop{Reg.D2}:CARDINAL;
ystop{Reg.D3}:CARDINAL;
array{Reg.A2}:ADDRESS;
temprp{Reg.A1}:GraphicsD.RastPortPtr):LONGINT; CODE -780;
PROCEDURE WritePixelArray8(
rp{Reg.A0}:GraphicsD.RastPortPtr;
xstart{Reg.D0}:CARDINAL;
ystart{Reg.D1}:CARDINAL;
xstop{Reg.D2}:CARDINAL;
ystop{Reg.D3}:CARDINAL;
array{Reg.A2}:ADDRESS;
temprp{Reg.A1}:GraphicsD.RastPortPtr):LONGINT; CODE -786;
PROCEDURE GetVPModeID(
vp{Reg.A0}:GraphicsD.ViewPortPtr):LONGCARD; CODE -792;
PROCEDURE ModeNotAvailable(
modeID{Reg.D0}:LONGCARD):LONGCARD; CODE -798;
//V39-private
PROCEDURE WeighTAMatch(reqTextAttr{Reg.A0}:GraphicsD.TextAttrPtr;
targetTextAttr{Reg.A1}:GraphicsD.TextAttrPtr;
targetTags{Reg.A2}:TagItemPtr):CARDINAL; CODE -804;
PROCEDURE EraseRect(
rp{Reg.A1}:GraphicsD.RastPortPtr;
xMin{Reg.D0}:INTEGER;
yMin{Reg.D1}:INTEGER;
xMax{Reg.D2}:INTEGER;
yMax{Reg.D3}:INTEGER); CODE -810;
PROCEDURE ExtendFont(
font{Reg.A0}:GraphicsD.TextFontPtr;
fontTags{Reg.A1}:TagItemPtr):LONGCARD; CODE -816;
PROCEDURE StripFont(
font{Reg.A0}: GraphicsD.TextFontPtr); CODE -822;
(* V39 *)
PROCEDURE CalcIVG(
v{Reg.A0}:GraphicsD.ViewPtr;
vp{Reg.A1}:GraphicsD.ViewPortPtr):CARDINAL; CODE -828;
PROCEDURE AttachPalExtra(
cm{Reg.A0}:GraphicsD.ColorMapPtr;
vp{Reg.A1}:GraphicsD.ViewPortPtr): LONGINT; CODE -834;
PROCEDURE ObtainBestPenA(
cm{Reg.A0}:GraphicsD.ColorMapPtr;
r{Reg.D1}:LONGCARD;
g{Reg.D2}:LONGCARD;
b{Reg.D3}:LONGCARD;
tags{Reg.A1}:TagItemPtr): LONGINT; CODE -840;
PROCEDURE SetRGB32(
vp{Reg.A0}:GraphicsD.ViewPortPtr;
n{Reg.D0}:LONGCARD;
r{Reg.D1}:LONGCARD;
g{Reg.D2}:LONGCARD;
b{Reg.D3}:LONGCARD); CODE -852;
PROCEDURE GetAPen(rp{Reg.A0}:GraphicsD.RastPortPtr):LONGCARD; CODE -858;
PROCEDURE GetBPen(rp{Reg.A0}:GraphicsD.RastPortPtr):LONGCARD; CODE -864;
PROCEDURE GetDrMd(rp{Reg.A0}:GraphicsD.RastPortPtr):LONGCARD; CODE -870;
PROCEDURE GetOutlinePen(rp{Reg.A0}:GraphicsD.RastPortPtr):LONGCARD; CODE -876;
// this is the name in the autodocs
PROCEDURE GetOPen(rp{Reg.A0}:GraphicsD.RastPortPtr):LONGCARD; CODE -876;
PROCEDURE LoadRGB32(
vp{Reg.A0}:GraphicsD.ViewPortPtr;
table{Reg.A1}:ADDRESS); CODE -882;
PROCEDURE SetChipRev(want{Reg.D0}:LONGSET):LONGSET; CODE -888;
PROCEDURE SetABPenDrMd(
rp{Reg.A1}:GraphicsD.RastPortPtr;
apen{Reg.D0}:LONGCARD;
bpen{Reg.D1}:LONGCARD;
drawmode{Reg.D2}:GraphicsD.DrawModeSet); CODE -894; //RegisterFill?
PROCEDURE GetRGB32(
cm{Reg.A0}:GraphicsD.ColorMapPtr;
firstcolor{Reg.D0}:LONGCARD;
ncolors{Reg.D1}:LONGCARD;
table{Reg.A1}:ADDRESS); CODE -900;
PROCEDURE AllocBitMap(
sizex{Reg.D0}:LONGCARD;
sizey{Reg.D1}:LONGCARD;
depth{Reg.D2}:LONGCARD;
flags{Reg.D3}:LONGSET;
friend_bitmap{Reg.A0}:GraphicsD.BitMapPtr): GraphicsD.BitMapPtr; CODE -918;
PROCEDURE FreeBitMap(bm{Reg.A0}:GraphicsD.BitMapPtr); CODE -924;
PROCEDURE GetExtSpriteA(
ss{Reg.A2}:GraphicsD.ExtSpritePtr;
tags{Reg.A1}:TagItemPtr): LONGINT; CODE -930;
PROCEDURE CoerceMode(
vp{Reg.A0}:GraphicsD.ViewPortPtr;
monitorid{Reg.D0}:LONGCARD;
flags{Reg.D1}:LONGSET):LONGCARD; CODE -936;
PROCEDURE ChangeVPBitMap(
vp{Reg.A0}:GraphicsD.ViewPortPtr;
bm{Reg.A1}:GraphicsD.BitMapPtr;
db{Reg.A2}:GraphicsD.DBufInfoPtr); CODE -942;
PROCEDURE ReleasePen(
cm{Reg.A0}:GraphicsD.ColorMapPtr;
n{Reg.D0}:LONGCARD); CODE -948;
PROCEDURE ObtainPen(
cm{Reg.A0}:GraphicsD.ColorMapPtr;
n{Reg.D0}:LONGCARD;
r{Reg.D1}:LONGCARD;
g{Reg.D2}:LONGCARD;
b{Reg.D3}:LONGCARD;
f{Reg.D4}:LONGSET):LONGCARD; CODE -954;
PROCEDURE GetBitMapAttr(
bm{Reg.A0}:GraphicsD.BitMapPtr;
attrnum{Reg.D1}:LONGCARD):LONGCARD; CODE -960;
PROCEDURE AllocDBufInfo(vp{Reg.A0}:GraphicsD.ViewPortPtr): GraphicsD.DBufInfoPtr; CODE -966;
PROCEDURE FreeDBufInfo(dbi{Reg.A1}: GraphicsD.DBufInfoPtr); CODE -972;
PROCEDURE SetOutlinePen(
rp{Reg.A0}:GraphicsD.RastPortPtr;
pen{Reg.D0}:LONGCARD):LONGCARD; CODE -978;
PROCEDURE SetWriteMask(
rp{Reg.A0}:GraphicsD.RastPortPtr;
msk{Reg.D0}:LONGCARD):LONGCARD; CODE -984;
PROCEDURE SetMaxPen(
rp{Reg.A0}:GraphicsD.RastPortPtr;
maxpen{Reg.D0}:LONGCARD); CODE -990;
PROCEDURE SetRGB32CM(
cm{Reg.A0}:GraphicsD.ColorMapPtr;
n{Reg.D0}:LONGCARD;
r{Reg.D1}:LONGCARD;
g{Reg.D2}:LONGCARD;
b{Reg.D3}:LONGCARD); CODE -996;
PROCEDURE ScrollRasterBF(
rp{Reg.A1}:GraphicsD.RastPortPtr;
dx{Reg.D0}:INTEGER; // Do this have to be LONGINTs?
dy{Reg.D1}:INTEGER;
xMin{Reg.D2}:INTEGER;
yMin{Reg.D3}:INTEGER;
xMax{Reg.D4}:INTEGER;
yMax{Reg.D5}:INTEGER); CODE -1002;
PROCEDURE FindColor(
cm{Reg.A3}:GraphicsD.ColorMapPtr;
r{Reg.D1}:LONGCARD;
g{Reg.D2}:LONGCARD;
b{Reg.D3}:LONGCARD;
maxcolor{Reg.D4}:LONGINT):LONGCARD; CODE -1008;
PROCEDURE AllocSpriteDataA(
bm{Reg.A2}:GraphicsD.BitMapPtr;
tags{Reg.A1}:TagItemPtr):GraphicsD.ExtSpritePtr; CODE -1020;
PROCEDURE ChangeExtSpriteA(
vp{Reg.A0}:GraphicsD.ViewPortPtr;
oldsprite{Reg.A1}:GraphicsD.ExtSpritePtr;
newsprite{Reg.A2}:GraphicsD.ExtSpritePtr;
tags{Reg.A3}:TagItemPtr); CODE -1026;
PROCEDURE FreeSpriteData(sp{Reg.A2}:GraphicsD.ExtSpritePtr):LONGCARD; CODE -1032;
PROCEDURE SetRPAttrsA(
rp{Reg.A0}:GraphicsD.RastPortPtr;
tags{Reg.A1}:TagItemPtr); CODE -1038;
PROCEDURE GetRPAttrsA(
rp{Reg.A0}:GraphicsD.RastPortPtr;
tags{Reg.A1}:TagItemPtr); CODE -1044;
PROCEDURE BestModeIDA(tags{Reg.A0}:TagItemPtr):LONGCARD; CODE -1050;
(*--- functions in V40 or higher (Release 3.1); CODE - --- *)
PROCEDURE WriteChunkyPixels(
rp{Reg.A0}:GraphicsD.RastPortPtr;
xstart{Reg.D0}:LONGINT;
ystart{Reg.D1}:LONGINT;
xstop{Reg.D2}:LONGINT;
ystop{Reg.D3}:LONGINT;
array{Reg.A2}:ADDRESS;
bytesperrow{Reg.D4}:LONGINT); CODE -1056;
END GraphicsL.