2amf9
iGpam.libgpsiHiyj{zjCURRENTGPSVERSNPLM86 V2.3062389 14:05:0<STACKMEMORYCODEDATACONSTCURRENTGPSVERSION_CODEDGROUPqh@EHH	TD
KCURRENTGPSVERSIONQUERYREQUESTINFOeDIU9PFPPFF^=uFt^F]eV(t$
GETDEFAULTPTRPLM86 V2.3062389 14:05:28STACKMEMORYCODEDATACONSTGETDEFAULTPTR_CODEDGROUPh@H$H	TD
K4GETAPPLDEFAULTPRINTERGETGPSDEFAULTPRINTERB	CLOSEFILEGETPASCBOPENFILEULCMPBLOOKUPFIELDLOOKUPRESEThD[sys]<sys>	
.user^DefaultPrinterGps GPSIUF
sFtPvFPF	u|

F^O@twA^9L0	Y^G@F^v8
FFNQ^SPFPPrmPF	tNNrFt?uNN'^NwLFVvzFFOOrxPFv^Sv
PQPFP^Sv^SPF	u*F9FuPQNQPuONOvFF]7VCV*9VVVV3*U^Sv^S^Sv P]\t<
GPAMBEGINPAGEPLM86 V2.3062389 14:05:54STACKMEMORYCODEDATACONSTBEGINPAGE_CODEDGROUP2h@^HH	TD
K
GPAMBEGINPAGEH
WRITEBSRECORDINITIALCHECKCHECKSEQFITRGBGPAMCTBUFFER
SBFROMWORDDbUQQ^SPF	u}2vFp^?v
tFq^v
vFZ^v
vFC^v
vF,^ v
 vF^vvF^vNFYF;v;vH
 ^u^P^^{F^SPF	u'^SPPFPF	u^F]
'VV
V4BVtT
GPAMBOLDPLM86 V2.3062389 14:06:2STACKMEMORYCODEDATACONST	BOLD_CODEDGROUPh@<HH	TD
K
GPAMBEGINBOLDGPAMENDBOLDj<
WRITEBSRECORDINITIALCHECKCHECKSEQFITRGBGPAMCTBUFFER?DnUQQ^SPF	uH^SPF	u3^SPPFPF	u	^F]VV06?MVnjUQQ^SPF	uH^SPF	u3^SPPFPF	u	^F]JVV06?MVtl		GPAMBOUNDPLM86 V2.3062389 14:06:44STACKMEMORYCODEDATACONSTGPAMBOUND_CODEDGROUPh@4HH	TD
KGPAMBEGINBOUNDGPAMENDBOUND9<
WRITEBSRECORDINITIALCHECKCHECKSEQFITRGBGPAMCTBUFFER?DUQQ^SPF	u]^SPF	uHv
vF^SP	PFPFF]
VV06:HYaoVaUQQ^SPF	u;^x
SPF	u^SPPFPFF]VV06?MVt	GPAMCLOSEPLM86 V2.3062389 14:07:10STACKMEMORYCODEDATACONST
CLOSE_CODEDGROUPFh@HHTD
K	GPAMCLOSEMCLOSEBYTESTREAM
WRITEBSRECORDINITIALCHECKCHECKSEQFITRGBGPAMCTBUFFERDU^SP	u^8GtA8Gt;^SP	u:^SPPP>u
^S]6V2V7?ENW\VaepVuxKtGPAMGRCLRTABLEPLM86 V2.3062389 14:07:49STACKMEMORYCODEDATACONSTGPAMGRCLRTABLE_CODEDGROUPh@\HH	T,D
KGPAMGRCOLORTABLEIINITIALCHECKSWAPBYTESANDMOVEWORDGPAMWRITERECORDRGBGPAMGRCTBUFFERDU^SPF	u+FV;r
1	tFFv$FFPPPF_SFF@SFFFPPPFP^PP^SPFPFPF	ux
FF^vP^PPF;FsNdr4^SPFPFPF	uF;FsFFFu	^F]7VR[VVVVVVtGPAMGRFILLCOLORPLM86 V2.3062389 14:08:06STACKMEMORYCODEDATACONSTGRFILLCOLOR_CODEDGROUPqh@lHHTD
KGPAMGRFILLCOLORIINITIALCHECKSWAPBYTESANDMOVEWORDGPAMWRITERECORDRGBGPAMGRCTBUFFERDSpU^SP	uNPPPFPPP^SPPP	u	^].VV09VCLQVVftGPAMGRGRAPHICSPLM86 V2.3062389 14:08:25STACKMEMORYCODEDATACONSTGRGRAPHICS_CODEDGROUPh@HHhTD
KRGBGPAMGRCTBUFFERTGPAMGRBEGINGRAPHICSGPAMGRENDGRAPHICSM
WRITEBSRECORDINITIALCHECKCHECKSEQFITGPAMWRITERECORDRGBGPAMCTBUFFERD  @6U^SP	us^SP	u^
v
vF^SP	PP	u^^]
>VV.48FW_hmVrU^SP	uo^uSPPP	uH^SP	u3^SPPP	u	^]9V.3V8HVMU[dmrVwt
GPAMGRHATCHIXPLM86 V2.3062389 14:08:58STACKMEMORYCODEDATACONSTGPAMGRHATCHIX_CODEDGROUPh@pHH	TD
KGPAMGRHATCHINDEXIINITIALCHECKSWAPBYTESANDMOVEWORDGPAMWRITERECORDRGBGPAMGRCTBUFFERDR$tUQQ^SPF	uNPPPFPPP^SPPFPF	u	^F]V(V2;VESVtGPAMGRINTSTYLEPLM86 V2.3062389 14:09:19STACKMEMORYCODEDATACONSTGPAMGRINTSTYLE_CODEDGROUPph@HHTD
KGPAMGRINTERIORSTYLEIINITIALCHECKSWAPBYTESANDMOVEWORDGPAMWRITERECORDRGBGPAMGRCTBUFFERDRbXUU^
SP	ulPPPFPPPuPPP^
SPPP	u	^
]>VV09VDI'NWVajoVtt)GPAMGRLINECOLORPLM86 V2.3062389 14:09:46STACKMEMORYCODEDATACONSTGRLINECOLOR_CODEDGROUPph@lHHTD
KGPAMGRLINECOLORIINITIALCHECKSWAPBYTESANDMOVEWORDGPAMWRITERECORDRGBGPAMGRCTBUFFERDPpU^SP	uNPPPFPPP^SPPP	u	^].VV09VCLQVVft+GPAMGRLINETYPEPLM86 V2.3062389 14:10:05STACKMEMORYCODEDATACONSTGRLINETYPE_CODEDGROUPh@lHHTD
KGPAMGRLINETYPEIINITIALCHECKSWAPBYTESANDMOVEWORDGPAMWRITERECORDRGBGPAMGRCTBUFFERDBPpU^SP	uNPPPFPPP^SPPP	u	^].VV09VCLQVVft.
GPAMGRPOLYGONPLM86 V2.3062389 14:10:34STACKMEMORYCODEDATACONSTGRPOLYGON_CODEDGROUPh@.HHTD
K
GPAMGRPOLYGONgIINITIALCHECKSWAPBYTESANDMOVEWORDGPAMWRITERECORDRGBGPAMGRCTBUFFERD2U^SP	uF=w1	t	vF@FFPPP
F@FFFPPP^SPFPP	uxFF^vP^PPF;FsNd0r4^SPFPP	uF;FsFFF>u	^]
GVKTVmvVVVVt 2GPAMGRPOLYLINEPLM86 V2.3062389 14:11:05STACKMEMORYCODEDATACONSTGRPOLYLINE_CODEDGROUPh@.HHTD
KGPAMGRPOLYLINEIINITIALCHECKSWAPBYTESANDMOVEWORDGPAMWRITERECORDRGBGPAMGRCTBUFFERD2U^SP	uF=w1	t	vF?@FFPPP
F @FFFPPP^SPFPP	uxFF^vP^PPF;FsN,4dr4^SPFPP	uF;FsFFF>u	^]
XGVKTVmvVVVVt86GPAMINTERPRETERPLM86 V2.3062389 14:11:3S:STACKMEMORYCODEDATACONSTGPAMINTERPRETER_CODEDGROUPh@QHHT$D
KKICKOUT
3CHECKERCCLOSEBYTESTREAM
CSUBPARAMS	ERROREXITEXITOPENBYTESTREAMREADBSRECORDREADBYTERGPARAM
WRITEBSRECORD	WRITEBYTEDUMPBSVID{D.Missing Escape codeexecution terminated.Bad OpCodeexecution terminated.[Input is not a GPAM file.
DORevisD8ion No.   Length:  
BeginBold          
BeginOverstrike    
BeginPage          
BeginTransparent   
BeginUnderscore    
Close              
EndBold            
EndOverstrike      
EndTransparent     
EndUnderscore      
GrBeginGraphics    
GrEndGraphics      
LineFeed           
PlaceCharacter     
Reposition         
SetColor           
SetFont            
SetSLD             
SetTranslateTable  
SetVerticalOffset  
WriteRecord        
Open               
WhiteSpace         
WriteCharacter    P: 
{BeginBound         
EndBound           
BeginItalic        
EndItalic          
BeginRaster        
EndRaster          ],X
  bBypass =        
  bChar =          
  bSides =         
  fStagger =       
  wBinOut =        
  sbFormName =     
  fAlign =         
  bAspect =        
  sbPageNum =      
  sbMontage =      
  bQuality =       
  wPgLength =      
  wPgWidth =       
  fBold On =       
  fOverstrikeOn =  
    bBypass =      
    bChar =        
  fTransparentOn = 
  fUnders\<coreOn =  
    bBypass =      
    bUnderscore =  
  wColor =         
  sbFontName =     
    wWidth =       
    wHeight =      
  wSLDDistance =   
M+a  sbTrTableName =  
  intLevel =       @
  wWidth =         
  wHeight =        
  fClear =         ,
  bBypass =        
  bUnderscore =    L,
  wHorizontal =    
  wVertical =      b
  wColor =         @(
  sbFontName =     
  wWidth =         
  wHeight =        ,x
  bChar =          
  wPosition =      
  wSLh>DDistance =   
  sbTrTableName =  
  intLevel =       
  Data =           
  wWidth =         @
  wXLeft =         
  wXRight =        
  bJustify =       @@
  wWidth =         
  wHeight =        
  fClear =         ,|
  bChar =          
  wWidth =         V
UQ^S
PP^S
PP^S^SvFPP]
3
VV VV=V
CVHVPPPPPS6
SPrmPPPPPt@	tNPPPPVPS6
SPwmPPPPVPPPPP:tSPP
PPPSP
PPPSPPPPu5PPP	tSP
	tP>tSP*P
PPPPPPPP>rSPV	V(,9BVHVQVbgV	mVrxVV
B VV\VVV
V'0V5:?VDLQVWVVjoVuVzVV\VVVVP
S
PPS
PPSPQPP.
PPPPPvwSXPQPPSPPu1PPPPPw^SPQPP9uSPD6uPP)PPPvSPQPPtu
tuS\VV$V*V05?GLV
RVXa\gluzVVV
VVVV$V
*V38>DJNTWV\dinw|VVV
VP6'SPPPPtWPPPPPFwjSPQPP	t

tuSP6uPPPPPvSPQPP>u)>u)SPPPPSP6tcPPPPPv9SV'2V
8V=AEMR[VfVlrwV
VVHVV,27V
=VCJRX_eiouzV
VVVVPQPP>u
>u)SPPPPSP6toPPPPPv{SPQPPSPPu1.+(PPPPPvSPQPP>uJ$SP6uPPPPPvVSxPQ
V
V*07=AGMRV
XVeknVtVVV
VV
 VV.14@MSXV
^VdksyVVVPP>uSP6uPPPPPvSLPQPPSPPuwPPPPPSPPPPSPPPPPPPvS(PQPP>u)>uSPPPPSP6tibPPPPV
V)36V;?CKPY^VdVlorV
VVVVV
VNV*V5V=@CO\bgV
mVszV
VVz	PSPPPPSPPPP
PPPSPPPPSPPPPPPPPPSPPPPSPPYQQPPPS
PPSPPPPSPPS
PPSPPP'PPSP6PPS
PPSPPPPSVV
 V
V,1:VBGPUV[VafotV
zVV
VVVV
VVVV$V*V05>CV
IVOT]VckVqVw|V
VV
VVVV
VP6ROPPPPPSPPPPSPPPPPR(PPvS|PQPP>uSP6ugPPPPPvbSPQPP>uSP6tPPPPPvS@PQPP>u9V$V*V05>CV
IVOT]VejsxVVV
VVT)VV ,9?DV
JVPW_ekouxV}VVV
Vz
SP6utSVLOnqt		O

444,
45}z
 V(,07\9\;\=\?\A\C\E\G\I\K\M\O\Q\S\U\W\Y\[\]\_\a\c\e\g\i\k\m\o\q\p
XA$V*
GPAMINTOUTPUTPLM86 V2.3062389 14:12:11STACKMEMORYCODEDATACONSTOUTPUT_CODEDGROUPh@AHHTD
KDUMP)	WRITEBYTE
WRITEBSRECORDCHECKERCXD0123456789ABCDEFUFH;sv31	u^S
PP^S
PP^611^SPPPP^S PP^S PPt>]
G3V9VFVLVUgY+jy|VVVVVVt[,
GPAMITALICPLM86 V2.3062389 14:12:21STACKMEMORYCODEDATACONSTITALIC_CODEDGROUPh@<HH	TD
K'GPAMBEGINITALIC
GPAMENDITALICj<
WRITEBSRECORDINITIALCHECKCHECKSEQFITRGBGPAMCTBUFFER?DnUQQ^SPF	uH^SPF	u3^SPPFPF	u	^F]XVV06?MVnjUQQ^SPF	uH^SPF	u3^SP]PFPF	u	^F]VV06?MVt(_.GPAMLINEFEEDPLM86 V2.3062389 14:12:53STACKMEMORYCODEDATACONST
LINEFEED_CODEDGROUPzh@YHHTD
KGPAMLINEFEED<
WRITEBSRECORDINITIALCHECKCHECKSEQFITRGBGPAMCTBUFFER?D]U^SP	u;^SP	u^SPPP]<,VV.4=FKVPSt4a
GPAMOPENPLM86 V2.3062389 14:13:2STACKMEMORYCODEDATACONST	OPEN_CODEDGROUPh@gHKH8TBD
KRGBGPAMCTBUFFERGPAMOPENeGETDATETIMEOPENBYTESTREAMRELEASEBYTESTREAM
WRITEBSRECORDTAGGPAMWRITESETGPSPARAMSPPLUS16RDUWDO23 chars for sbDocName.23 chars for sbDocName.23 chars for sbDocName.23 chars for sbDocName.23 chars for sbUserName7 chars>@c014 chars start14 chars start14 chars endlc14 chars endlc<sbFormNamesbsbPageNumsbPsbMontagesbMsbFontNamesbFontNamesbFontNamesbFontNamesbTranslateTIOD{U,s<vt^?\v]v^]v	
^ S^Sv^SvwmP^Sv	u^ G
:uGvvDG^ GFv^ G^ 'vNFYvNFPvSPv+NZ^FFFPPLe1:FFFr^u	P	u^ G
:uwPP	uM^ <z
^ SPPP5MvV{VV$*3V:FLRnv{VV	t^ SFV^ I^ ^ ^ G
:u vvG 	^ G ]1VV3Mr=tXg2GPAMOVERSTRIKEPLM86 V2.3062389 14:13:55STACKMEMORYCODEDATACONSTOVERSTRIKE_CODEDGROUPh@HHTD
KGPAMBEGINOVERSTRIKEGPAMENDOVERSTRIKE<
WRITEBSRECORDINITIALCHECKCHECKSEQFITRGBGPAMCTBUFFER?DU^
SP	ux^
SP	ucvUFF^
SPPP	u^
F^
F^
];VV4<BIOWdi3eVjjU^SP	uH^SP	u3^SPPP	u	^],VV.4=FKVPtpk4
GPAMPLACECHARPLM86 V2.3062389 14:14:28STACKMEMORYCODEDATACONSTGPAMPLACECHAR_CODEDGROUPh@mHHTD
KGPAMPLACECHARACTER,<
WRITEBSRECORDINITIALCHECKCHECKSEQFITRGBGPAMCTBUFFER?DqU^
SP	uO^
SP	u:
Fv^
SPPP])8VV.4;>QZ_Vdgt|m5
GPAMRASTERPLM86 V2.3062389 14:14:45STACKMEMORYCODEDATACONSTGPAMRASTER_CODEDGROUPh@4HH	TD
K'GPAMBEGINRASTER
GPAMENDRASTER<
WRITEBSRECORDINITIALCHECKCHECKSEQFITRGBGPAMCTBUFFER?DUQQ^SPF	u]^SPF	uHv
vF^SP	PFPFF]
VV06:HYaoVaUQQ^SPF	u;o6^SPF	u^SPPFPFF]VV06?MVtq7
GPAMRELEASEPLM86 V2.3062389 14:15:12STACKMEMORYCODEDATACONSTRELEASE_CODEDGROUPh@FHH	TD
KGPAMRELEASE+RELEASEBYTESTREAMINITIALCHECKDJUQFPF^Gu
^SF^F]	V,Vts8GPAMREPOSITIONPLM86 V2.3062389 14:15:45STACKMEMORYCODEDATACONSTREPOSITION_CODEDGROUPh@yHHTD
KGPAMREPOSITION<
WRITEBSRECORDINITIALCHECKCHECKSEQFITRGBGPAMCTBUFFER?D}UF
P	uW^
SP	uBvv^
SPPP]8VV*28<J]fkVps;tu9GPAMSETCOLORPLM86 V2.3062389 14:16:03STACKMEMORYCODEDATACONST
SETCOLOR_CODEDGROUPKh@vHHTD
KGPAMSETCOLOR<
WRITEBSRECORDINITIALCHECKCHECKSEQFITRGBGPAMCTBUFFER?DzU^SP	uX^SP	uCv^SPPP	uF^]T2VV.48KTYV^p<tw:
GPAMSETFONTPLM86 V2.3062389 14:16:32STACKMEMORYCODEDATACONSTSETFONT_CODEDGROUPh@(HHTD
KGPAMSETFONT	<
WRITEBSRECORDINITIALCHECKCHECKSEQFITRGBGPAMCTBUFFER?DU^SP	u
(v	^S0P	u0v
vN
Fvv^SP1PP	u?^v
^vN
FYF^F^]y;GV0V5=CGUhvVt{<
GPAMSETSLDPLM86 V2.3062389 14:17:01STACKMEMORYCODEDATACONSTSETSLD_CODEDGROUPh@vHHTD
K
GPAMSETSLD_<
WRITEBSRECORDINITIALCHECKCHECKSEQFITRGBGPAMCTBUFFER?DzU^SP	uX^SP	uCv^SPPP	uF^]2VV.48KTYV^p<t}=GPAMSETTRANSLTPLM86 V2.3062389 14:17:29STACKMEMORYCODEDATACONSTGPAMSETTRANSLT_CODEDGROUPqh@cHHTD
KGPAMSETTRANSLATETABLE<
WRITEBSRECORDINITIALCHECKCHECKSEQFITRGBGPAMCTBUFFER?DU^SP	uv	^SP	ukFvF^SPPP	u)^v^vNFY]
;V0V5=CJ>MdmrVwBt?GPAMSETVOFFSETPLM86 V2.3062389 14:17:59STACKMEMORYCODEDATACONSTGPAMSETVOFFSET_CODEDGROUP|h@HHTD
KGPAMSETVERTICALOFFSET<
WRITEBSRECORDINITIALCHECKCHECKSEQFITRGBGPAMCTBUFFER?DU^SP	umF}X^SP	uCv^SPPP	uF^]I5V6V;CIMinVst@GPAMTRANSPARENTPLM86 V2.3062389 14:18:26STACKMEMORYCODEDATACONSTTRANSPARENT_CODEDGROUP^h@FHHTD
K1GPAMBEGINTRANSPARENTGPAMENDTRANSPARENTd<
WRITEBSRECORDINITIALCHECKCHECKSEQFITRGBGPAMCTBUFFER?DhU^SP	uF^SP	u1^SPPP	u	^]$,VV03;DIVN^jdU^SP	uH^SPA	u3^SPPP	u	^],VV.4=FKVPtBGPAMUNDERSCOREPLM86 V2.3062389 14:18:55STACKMEMORYCODEDATACONSTUNDERSCORE_CODEDGROUPh@HHTD
KGPAMBEGINUNDERSCOREGPAMENDUNDERSCORE<
WRITEBSRECORDINITIALCHECKCHECKSEQFITRGBGPAMCTBUFFER?DU^
SP	uF<r<vxvj^
SP	uUFF^
SPPP	u^
F^
F^
]>V$2BVGO$CU\bjsxV}3jU^SP	uH^SP	u3	^SPPP	u	^],VV.4=FKVPt0D	GPAMUTILSPLM86 V2.3062389 14:19:10STACKMEMORYCODEDATACONST
UTILS_CODEDGROUP+h@aHH	TD
KSPPLUS16
SBFROMWORDwINITIALCHECKCHECKSEQFITSWAPBYTESANDMOVEWORDQTAGGPAMWRITE
FLUSHBUFFERGPDU^v]}lUQuFsN
tHN
FN10V::rA*VF
F^FN1FFF
]SwUQ^GPPv
PP}F*^p}^Y*F<E^];UQF^ODtF^:FtFF]WXUQQFF@^OW+;r,G
:uSGxWRFPFF]	DVaQUQQFFN;rAI^0^9^YvVN^_V1^Z_9Fs]
;tHFGPAMWHITESPACEPLM86 V2.3062389 14:19:45STACKMEMORYCODEDATACONSTWHITESPACE_CODEDGROUPh@gHHTD
KGPAMWHITESPACE9<
WRITEBSRECORDINITIALCHECKCHECKSEQFITRGBGPAMCTBUFFER?DkU^SP	uI^SP	u4v^SPPP]2VV.48KTYV^aKtTG
GPAMWRITECHARPLM86 V2.3062389 14:20:14STACKMEMORYCODEDATACONSTWRITECHAR_CODEDGROUPh@qHH	T D
K
GPAMWRITECHAR<
WRITEBSRECORDINITIALCHECKCHECKSEQFITRGBGPAMCTBUFFER?DuUQQ^
SPF	uO^
SPF	u:Fv^
SPPFPFF]T)VV06=@SaVtHGPAMWRITERECORDPLM86 V2.3062389 14:20:4:STACKMEMORYCODEDATACONSTGPAMWRITERECORD_CODEDGROUP9h@|HH	T,D
KGPAMWRITERECORDU
WRITEBSRECORDTAGGPAMWRITEINITIALCHECKRGBGPAMCTBUFFER
FLUSHBUFFERGPPPLUS16DU
9F
vF
FPF=uFuY^^G
:tMF
SPPFPF	u^S^Sv
^SFF]^;F
su^GO+sSGlIxWQFPFu[F
^+^Ww+;v+VF
^+FF^SPPFPFu'^S^S^7SvFPFu	^FAVFQU[iVVV(6VTVcVtxJ	GpsRqLabl
CTAsm 11.3|??SEG??SEGSTACKSTACK	seg0F03CH	seg0F044H	seg0F04CH	seg0F164H	seg0F054H	seg0F064H	seg0F06CH	seg0F074H	seg0F0B4Hht
<^
D
L^	

d
T
d
l^
t
AddGpsDeviceTSetGPSParamsZ
SetGPSDeviceParamsGetGPSStatusQueryGpsFile
GetGPSDocInfoAddQueue	GetGPSDdDocInfoRGetGPSNodeConfigU	ReleKaseGPSDeviceDriverZGetGPSDeviceDriverConfigVGetGPSDeviceDriverStatusX	SetGPSNPMXMakeGpsLogEntry 	SetGPSDeviceDriverControl\QueueGPSFileT
RsUpLinkPollGetFontFamilyListDescribeGpsSpoolerDeinstallFontServiceDeInstallGPSDeviceDriverDeleteGPSJobZGetGPSDeviceConfigProvideGPSPasswordR 
SetGPSDeviceDriverRestartWriteGPSFileR
RsUpLinkPickup,
GetGPSNetListIdentifyDeLviceDriverCloseGPSFileVGetQMStatusGetFontDataDeInstallQueueManagerGetFontDeviceListSetImageModeGPS^ DeInstallRsSpDeviceDriver
RsUpLinkDeliverOpenGPSFileP
SetGPSRestart\GetGpsParams	GetGPSDDHistoryT
WriteGPSDeviceDataAcquireGPSDeviceDriver
SetGPSControlVGetGpsSplVolStatusDeInstallRoutingSwitchX 
CleanQueueRemoveQueue
DescribeGpsRS\	MDeleteGpsDDJobPGetGpsDevHistory^	SetGPSDeviceDriverMode^NO[<nPC4{e
GetGPSNetListIGetGPSDeviceConfigIGetGPSDeviceDriverStatusI
GPAMGRPOLYGONGPAMRELEASE6SetGPSDeviceDriverModeIGPAMPLACECHARACTER3GPAMGRENDGRAPHICSGPAMREPOSITION7DeInstallRoutingSwitchIDeInstallRsSpDeviceDriverIGetGpsDevHistoryIReleaseGPSDeviceDriverIGPAMBEGINITALIC+GPAMBEGINOVERSTRIKE1GPAMINTERPRETERGPAMGRPOLYGONGPAMSETVOFFSET>GPAMWRITECHARFPZ6oLy0@'fESetImageModeGPSISetGPSDeviceParamsIGPAMGRLINETYPEAddQueueIGetFontDeviceListIPPLUS16CGetFontDataIDeInstallGPSDeviceDriverIGPAMBEGINTRANSPARENT?GPAMWRITERECORDGGPAMENDUNDERSCOREAMakeGpsLogEntryIGPAMITALIC+GPAMGRCLRTABLEGPAMREPOSITION7GPAMBEGINPAGEQrj'?OGbW}3GetGPSStatusIGETAPPLDEFAULTPRINTERGETGPSDEFAULTPRINTERGPAMSETVERTICALOFFSET>AddGpsDeviceIGPAMLINEFEEDDeleteGPSJobIGPAMENDTRANSPARENT?RsUpLinkPollI
GPAMBEGINBOLDWriteGPSDeviceDataI
GetGPSDocInfoIGPAMBEGINUNDERSCOREAGETDEFAULTPTRGPAMINTOUTPUT)GPAMGRHATCHIX
GPAMUTILSCGPAMGRFILLCOLOR
GPAMSETFONT9
GPAMCLOSE
GPAMWRITERECORDGGPAMSETTRANSLT<Rc:C(y[ksQ2SetGPSDeviceDriverControlIOpenGPSFileIGPAMGRCOLORTABLECloseGPSFileIGPAMBEGINBOUNDSetGPSDeviceDriverRestartIGPAMGRHATCHINDEXGPAMENDBOUND
DescribeGpsRSIWriteGPSFileI	GPAMCLOSE
GPAMGRINTERIORSTYLESetGPSParamsIGPAMENDOVERSTRIKE1
GPAMENDRASTER4GPAMUNDERSCOREAGPAMWHITESPACEE	GPAMOPEN.GPAMGRLINECOLORGPAMRELEASE6
GPAMLINEFEED
GPAMSETCOLOR8GPAMOVERSTRIKE1GPAMPLACECHAR3GPAMTRANSPARENT?CURRENTGPSVERSNS<6YE(ipN$y
SetGPSControlIGPAMGRPOLYLINEDUMP)GetGPSDeviceDriverConfigIGPAMOPEN.GPAMGRLINECOLORRsUpLinkPickupIDescribeGpsSpoolerIGPAMENDBOLDGPAMGRLINETYPEGPAMRASTER4GPAMGRGRAPHICSTWCdMy]:1pGetGPSDDHistoryIGPAMWHITESPACEEGPAMSETTRANSLATETABLE<RsUpLinkDeliverIGPAMBEGINRASTER4RGBGPAMGRCTBUFFERGetGPSNodeConfigI	SetGPSNPMI
SBFROMWORDCSWAPBYTESANDMOVEWORDCGetGPSDdDocInfoIGPAMSETFONT9KICKOUTGetFontFamilyListIRemoveQueueIGetGpsParamsI
GPAMWRITECHARFGetQMStatusI	GPAMBOLDGPAMSETSLD;GPAMGRINTSTYLEUa)4=iFNtVCURRENTGPSVERSIONIdentifyDeviceDriverIGetGpsSplVolStatusIRGBGPAMCTBUFFER.DeleteGpsDDJobI
SetGPSRestartIINITIALCHECKCProvideGPSPasswordIGPAMSETCOLOR8GPAMGRBEGINGRAPHICSAcquireGPSDeviceDriverI
GPAMENDITALIC+
GPAMSETSLD;GPAMGRFILLCOLOR
DeInstallQueueManagerIQueueGPSFileIQueryGpsFileIDeinstallFontServiceICHECKSEQFITC
CleanQueueI
GPAMBEGINPAGEGPAMGRPOLYLINE
GpsRqLablI
GPAMBOUNDV
COPYRIGHT 1980, 1987, 1988 CONVERGENT TECHNOLOGIES, INC.
ALL RIGHTS RESERVED

THIS PROGRAM IS FURNISHED UNDER A LICENSE RESTRICTING ITS USE SOLELY FOR THE
OPERATION OF A DESIGNATED COMPUTER FOR A PARTICULAR PURPOSE, AND MAY NOT BE
COPIED OR OTHERWISE USED WITHOUT THE PRIOR WRITTEN CONSENT OF CONVERGENT
TECHNOLOGIES, INC.  TITLE TO AND OWNERSHIP OF THE PROGRAM, INCLUDING ITS SOURCE
CODE, SHALL AT ALL TIMES REMAIN IN CONVERGENT TECHNOLOGIES.

LIBRARY: Gpam.lib
VERSION: 2.3.1 (friday june 23, 1989, 14:23)
Gpam.pasgpsBp@irjrj.g 
PROGRAM Gpam(INPUT, OUTPUT);

{This program opens a GPS device, as specified by the user, and prints
 formatted text according to the GPAM call (i.e., begin bold and 
 underscore).}

CONST

	bLF  = CHR(0A); {Line feed character}

{$INCLUDE: 'GPAMTypes.edf'}

VAR[PUBLIC]

	bChar			: BYTE;
	BeginPage			: BeginPageType;
	cbRet			: WORD;
	DeviceSpec			: LSTRING(10);
	Erc			: ErcType;
	ErcWrite			: ErcType;
	GPAMWA			: ARRAY [0..299] OF BYTE;
	i			: INTEGER;
	OpenParams			: OpenParamsType;
	rgbGpamBuffer  : A,RRAY [0..1023] OF BYTE;
	SbSentence			: LSTRING(80);

{$INCLUDE: 'GPAMProcs.edf'}



BEGIN		{MAIN}
	CheckErc(NPrint(ADS 'Where do you want the output to go?  ', 37));
	READ(DeviceSpec);
	WITH OpenParams DO
	  BEGIN
		sbDocName				:= 'GPAMTestDoc';
		sbUserName.Len				:= 0;
		fSecurity				:= False;
		fPageSuppress				:= False;
		fBannerSuppress				:= True;
		fTypeThrough				:= False;
		fImmediate				:= False;
		qTimeCreated				:= 0;
		qReqOutputStartTime := 0;
		wcCopies				:= 1;
		wTimeout				:= 0FF;
		fSi8ngleSheet				:= False;
		wTimeToPrint				:= 1;
		bPriority				:= 5;
	  END;

	CheckErc(GPAMOpen(ADS GPAMWA,
		300,
		ADS DeviceSpec[1],    {Name of installed device driver.}
		DeviceSpec.len, 
		ADS ' ',
		0,
		ADS rgbGpamBuffer,
		1024,
		ADS OpenParams,
		145));

	WITH BeginPage DO 
	  BEGIN
		bSides			:= 1;
		fStagger			:= False;
		wBinOut			:= 0;
		sbFormName.Len := 0;
		fAlign			:= False;
		bAspect			:= 0;
		sbPageNum			:= '1'; 
		sbMontage.Len  := 0;
		bQuality			:= 3;
		wPgLength			:= 0;
	  	wPgWidtDh			:= 0;
	  END;

	Erc := GpamBeginPage(ADS GPAMWA, ADS BeginPage, 0);
	IF Erc <> 0 THEN ErrorExit(Erc);

	SbSentence := 'This is plain text followed by a return. ' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);

	SbSentence := 'Now lets begin bold...' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	Erc := GpamBeginBold(ADS GPAMWPA);
	IF Erc <> 0 THEN ErrorExit(Erc);

	SbSentence := 'Now lets end bold and return.' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	Erc := GpamEndBold(ADS GPAMWA);
	IF Erc <> 0 THEN ErrorExit(Erc);

	SbSentence := 
	'Now lets try overstriking with a hyphen (not blanks)...' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	Erc := \GpamBeginOverStrike(ADS GPAMWA, 0, 2D);
	IF Erc <> 0 THEN ErrorExit(Erc);

	SbSentence := 
	'Switch the overstrike character to a slash (with blanks)...' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	Erc := GpamBeginOverStrike(ADS GPAMWA, 1, 2F);
	IF Erc <> 0 THEN ErrorExit(Erc);

	SbSentence := 'Now lets end overstriking...' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbhRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	Erc := GpamEndOverstrike(ADS GPAMWA);
	IF Erc <> 0 THEN ErrorExit(Erc);

	SbSentence := 'Lets try some single word underscoring...' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	Erc := GpamBeginUnderscore(ADS GPAMWA, 0, 1);
	IF Erc <> 0 THEN ErrorExit(Erc);

	SbSentence := 'Lets switch to solid...' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSenttence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	Erc := GpamBeginUnderscore(ADS GPAMWA, 1, 1);
	IF Erc <> 0 THEN ErrorExit(Erc);

	SbSentence := 'Now double solid underscoring...' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	Erc := GpamBeginUnderscore(ADS GPAMWA, 1, 2);
	IF Erc <> 0 THEN ErrorExit(Erc);
	SbSentence := 'And finally double word...' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbS	entence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	Erc := GpamBeginUnderscore(ADS GPAMWA, 0, 2);
	IF Erc <> 0 THEN ErrorExit(Erc);

	SbSentence := 'Now we turn underscoring off...' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	Erc := GpamEndUnderscore(ADS GPAMWA);
	IF Erc <> 0 THEN ErrorExit(Erc);

	SbSentence := 
	'Now lets mix them up.  How about bold overstrike with *...' * bLF;

	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	Erc := GpamBeginBold(ADS GPAMWA);
	IF Erc <> 0 THEN ErrorExit(Erc);
	Erc := GpamBeginOverstrike(ADS GPAMWA, 0, 2A);
	IF Erc <> 0 THEN ErrorExit(Erc);

	SbSentence := 
	'Add single solid underscore and change overstrike to ...' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	Erc := GpamBeginOverstrike(ADS GPAMWA, 0, 23);
	IF Erc <> 0 THEN ErrorExit(Erc);
	Erc := GpamBeginUnderscore(ADS GPAMWA, 1, 1);
	IF Erc <> 0 THEN ErrorExit(Erc);

	SbSentence := 'Now lets drop overstrike...' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	Erc := GpamEndOverstrike(ADS GPAMWA);
	IF Erc <> 0 THEN ErrorExit(Erc);
	SbSentence := 'Now lets drop everything...' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	Erc := GpamEndBold(ADS GPAMWA);
	IF Erc <> 0 THEN ErrorExit(Erc);
	Erc := GpamEndUnderscore(ADS GPAMWA);
	IF Erc <> 0 THEN ErrorExit(Erc);

	SbSentence := 'Lets go to a new page.' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	Erc := GpamBeginPage(ADS GPAMWA, ADS BeginPage, 0);
	IF Erc <> 0 THEN ErrorExit(Erc);

	SbSentence := 'Lets do a line
 feed...' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	Erc := GpamLineFeed(ADS GPAMWA);
	IF Erc <> 0 THEN ErrorExit(Erc);

	SbSentence := 
	'Now lets set line size to 4801440 and do a line feed...' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	Erc := GpamSetSLD(ADS GPAMWA, 240);
	IF Erc <> 0 THEN ErrorExit(Erc);
	Erc := GpamLineFeed(ADS GPAMWA);
	IF Erc <> 0 THEN ErrorExit(Erc);

	SbSentence := 
	'Now lets place a * 2 inches from the side of the page...' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	Erc := GpamPlaceCharacter(ADS GPAMWA, 2A, 2880);
	IF Erc <> 0 THEN ErrorExit(Erc);
	SbSentence := 
	'New page with reposition 3 in. down and 2 in. in...' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	Erc := GpamBeginPage(ADS GPAMWA, ADS BeginPage, 0);
	IF Erc <> 0 THEN ErrorExit(Erc);
	Erc := GpamReposition(ADS GPAMWA, 2880, 4320);
	IF Erc <> 0 THEN ErrorExit(Erc);

	SbSentence := 
	'New lets try a test with super and sub scripting...' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	SbSentence := 'xxx';
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	FOR i := 0 TO 8 DO
	  BEGIN
		Erc := GpamSetVerticalOffset(ADS GPAMWA, i);
		IF Erc <> 0 THEN ErrorExit(Erc);
		IF (i = 0) THEN SbSentence := 'x'
			ELSE SbSentence := 'o';
		Erc := GpamWriteRecord(ADS GPAMWA,
			ADS SbSentence[1],
			SbSentence.Len,
			ADS cbRet);
		IF Erc <> ErcWrite THEN ErrorExit(Erc);
	  END;
	FOR i := 8 DOWNTO 0 DO
	  BEGIN
		Erc := GpamSetVerticalOffset(ADS GPAMWA, i);
		IF Erc <> 0 THEN ErrorExit(Erc);
		IF (i = 0) THEN SbSentence := 'x'
			ELSE SbSentence := 'o';
		Erc := GpamWriteRecord(ADS GPAMWA,
			ADS SbSentence[1],
			SbSentence.Len,
			ADS cbRet);
		IF Erc <> ErcWrite THEN ErrorExit(Erc);
	  END;
	FOR i := 0 DOWNTO 8 DO
	  BEGIN
		Erc := GpamSetVerticalOffset(ADS GPAMWA, i);
		IF Erc <> 0 THEN ErrorExit(Erc);
		IF (i = 0) THEN SbSentence := 'x'
			ELSE SbSentence := 'o';
		Erc := GpamWriteRecord(ADS GPAMWA,
			ADS SbSentence[1],
			SbSentence.Len,
			ADS cbRet);
		IF Erc <> ErcWrite THEN ErrorExit(Erc);
	  END;
	FOR i := 8 TO 0 DO
	  BEGIN
		Erc := GpamSetVerticalOffset(ADS GPAMWA, i);
		IF Erc <> 0 THEN ErrorExit(Erc);
		IF (i = 0) THEN SbSentence := 'x'
			ELSE SbSentence := 'o';
		Erc := GpamWriteRecord(ADS GPAMWA,
			ADS SbSentence[1],
			SbSentence.Len,
			ADS cbRet);
		IF Erc <> ErcWrite THEN ErrorExit(Erc);
	  END;

	SbSentence := 'Well thats all for now folks...BYE' * bLF;
	Erc := GpamWriteRecord(ADS GPAMWA,
		ADS SbSentence[1],
		SbSentence.Len,
		ADS cbRet);
	IF Erc <> ErcWrite THEN ErrorExit(Erc);
	Erc := GpamClose(ADS GPAMWA);

END.