h42343
s 00137/00000/00000
d D 1.1 83/03/23 16:20:47 bog 1 0
c date and time created 83/03/23 16:20:47 by bog
e
u
4
U
t
T
I 1
`############################################################################
#									    #
#	This material is confidential and is furnished under		    #
#	a written license agreement.  It may not be used,		    #
#	copied or disclosed to others except in accordance		    #
#	with the terms of that agreement.				    #
#									    #
#	Copyright (C) 1982 Graphic Software Systems, Inc.		    #
#	All rights reserved.						    #
#									    #
#	Function:  							    #
#		EmXBSt							    #
#		    Emulator Beam and State Common Definitions		    #
#									    #
#	Called By:							    #
#		included in most Emulator modules			    #
#									    #
#############################################################################
',`dnl
CommonOrg
# Emulator state
 #   Alpha/Graph/Gin/Point/SpecialPoint/Incremental
 CommonCVar(`MMode')		CHARACTER Mode
  define(`ALPHA',1)dnl
  define(`GRAPH',2)dnl
  define(`GIN',3)dnl
  define(`POINTPLOT',4)dnl
  define(`SPECIALPOINT',5)dnl
  define(`INCREMENTAL',6)dnl
 
 # Got a LoY for this vector
 CommonLVar(`MGotLoY')		LOGICAL GotLoy
 
 # Last Char was Esc
 CommonLVar(`MLCE')		LOGICAL LCE
 
 # Bypass mode
 CommonLVar(`MBypass')		LOGICAL Bypass
 
 # True: Cr returns to Margin 2
 CommonLVar(`MMargn2')		LOGICAL Margn2
 
 # Margin wrap
 CommonLVar(`MMr2Wrp')		LOGICAL Mr2Wrp
 
 # Move/Draw
 CommonLVar(`MIsDraw')		LOGICAL IsDraw
 
 # Got Intensity for Spec Pt Plot
 CommonLVar(`MGotInt')		LOGICAL GotInt
 
# Beam position
 # Current position -- [0..32k) space
 CommonIVar(`MX')		INTEGER X
 CommonIVar(`MY')		INTEGER Y
 
 # Last beam position
 CommonIVar(`MLastX')		INTEGER LastX
 CommonIVar(`MLastY')		INTEGER LastY
 
 # X,Y in 4k space at start incr pt plot mode
 CommonIVar(`MIncrX')		INTEGER IncrX
 CommonIVar(`MIncrY')		INTEGER IncrY
 
 # Rightmost on-screen X -- [0..32k) space
 CommonIVar(`MXRight')		INTEGER XRight
 
 # Y Home -- [0..32k) space
 CommonIVar(`MYHome')		INTEGER YHome
 
 # Current size of char cell -- [0..32k) space
 CommonIVar(`MXCh')		INTEGER XCh
 CommonIVar(`MYCh')		INTEGER YCh
 
 # Avail char cell sizes
 CommonIVar(`MXChC',4)		INTEGER XChC(4)
 CommonIVar(`MYChC',4)		INTEGER YChC(4)
 
 # 4010 to screen space xform vars
 CommonIVar(`MXMul')		INTEGER XMul
 CommonIVar(`MYMul')		INTEGER YMul
 CommonIVar(`MXDiv')		INTEGER XDiv
 CommonIVar(`MYDiv')		INTEGER YDiv
 
 # X coordinate of margin 2
 CommonIVar(`MXMarg2')		INTEGER XMarg2
 
 # Holding registers for coordinates from host
 CommonCVar(`MHiX')		CHARACTER HiX
 CommonCVar(`MHiY')		CHARACTER HiY
 CommonCVar(`MLoX')		CHARACTER LoX
 CommonCVar(`MLoY')		CHARACTER LoY
 CommonCVar(`MExtraX')		CHARACTER ExtraX
 CommonCVar(`MExtraY')		CHARACTER ExtraY
 
 # Holding register for Special Point Plot intensity
 CommonCVar(`MIntens')		CHARACTER Intens
 
CommonCArray(`CBmSt')
CommonIArray(`IBmSt')
CommonLArray(`LBmSt')
',`dnl
Common	/EmBmSt/ CBmSt,IBmSt,LBmSt
',`dnl
Equivalence	(Mode,		CBmSt(MMode))
Equivalence	(GotLoY,	LBmSt(MGotLoY))
Equivalence	(LCE,		LBmSt(MLCE))
Equivalence	(Bypass,	LBmSt(MBypass))
Equivalence	(Margn2,	LBmSt(MMargn2))
Equivalence	(Mr2Wrp,	LBmSt(MMr2Wrp))
Equivalence	(IsDraw,	LBmSt(MIsDraw))
Equivalence	(GotInt,	LBmSt(MGotInt))
Equivalence	(X,		IBmSt(MX))
Equivalence	(Y,		IBmSt(MY))
Equivalence	(LastX,		IBmSt(MLastX))
Equivalence	(LastY,		IBmSt(MLastY))
Equivalence	(IncrX,		IBmSt(MIncrX))
Equivalence	(IncrY,		IBmSt(MIncrY))
Equivalence	(XRight,	IBmSt(MXRight))
Equivalence	(YHome,		IBmSt(MYHome))
Equivalence	(XCh,		IBmSt(MXCh))
Equivalence	(YCh,		IBmSt(MYCh))
Equivalence	(XChC(1),	IBmSt(MXChC))
Equivalence	(YChC(1),	IBmSt(MYChC))
Equivalence	(XMul,		IBmSt(MXMul))
Equivalence	(YMul,		IBmSt(MYMul))
Equivalence	(XDiv,		IBmSt(MXDiv))
Equivalence	(YDiv,		IBmSt(MYDiv))
Equivalence	(XMarg2,	IBmSt(MXMarg2))
Equivalence	(HiX,		CBmSt(MHiX))
Equivalence	(HiY,		CBmSt(MHiY))
Equivalence	(LoX,		CBmSt(MLoX))
Equivalence	(LoY,		CBmSt(MLoY))
Equivalence	(ExtraX,	CBmSt(MExtraX))
Equivalence	(ExtraY,	CBmSt(MExtraY))
Equivalence	(Intens,	CBmSt(MIntens))
'dnl
E 1
