h54414
s 00119/00000/00000
d D 1.1 83/03/23 16:21:27 bog 1 0
c date and time created 83/03/23 16:21:27 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:  							    #
#		EmXMen							    #
#		    Emulator Menu Common Definition			    #
#									    #
#	Called By:							    #
#		included in most Emulator modules			    #
#									    #
#	Routines Called:						    #
#									    #
#############################################################################
',`dnl
CommonOrg
# Interpretive code
CommonCVar(`MMenCod',4130)	CHARACTER MenCod(4130)
 
# Strings
CommonCVar(`MMenStr',6840)	CHARACTER MenStr(6840)
 
# Stack
CommonCVar(`MMenTos')		CHARACTER MenTos
CommonIVar(`MMenStk',20)	INTEGER MenStk(20)
 
# Machine state
CommonIVar(`MMenuPc')	INTEGER MenuPc	# Menu Machine Program Counter
CommonIVar(`MMenIAc')	INTEGER MenIAc	# Menu Machine Integer Accumulator
CommonLVar(`MMenLAc')	LOGICAL MenLAc	# Menu Machine Logical Accumulator
 
# Machine registers
CommonIVar(`MReg0')		INTEGER MenR0
CommonIVar(`MReg1')		INTEGER MenR1
CommonIVar(`MReg2')		INTEGER MenR2
CommonIVar(`MReg3')		INTEGER MenR3
CommonIVar(`MReg4')		INTEGER MenR4
CommonIVar(`MReg5')		INTEGER MenR5
CommonIVar(`MReg6')		INTEGER MenR6
CommonIVar(`MReg7')		INTEGER MenR7
CommonIVar(`MIndex')		INTEGER MenIx
 
# Indirect character array
CommonCVar(`MMnNChN')		CHARACTER MnNChN
CommonCVar(`MMenNCh',26)	CHARACTER MenNCh(26)
 
# Initial Program Counter
CommonIVar(`MInitPc')		INTEGER InitPc
 
# Logical Literals
CommonLVar(`MTrue')		LOGICAL MenTru
CommonLVar(`MFalse')		LOGICAL MenFls
 
# Enables
CommonLVar(`MMCfOpt')		LOGICAL MCfOpt	# Config opt present
CommonLVar(`MMSKOpt')		LOGICAL MSKOpt	# Special Keys menu present
CommonLVar(`MM10Opt')		LOGICAL M10Opt	# 4010 Options menu present
CommonLVar(`MMPgOpt')		LOGICAL MPgOpt	# Pagefull options present
CommonLVar(`MMChOpt')		LOGICAL MChOpt	# Character option present
CommonLVar(`MMDsOpt')		LOGICAL MDsOpt	# Display option present
CommonLVar(`MMHcOpt')		LOGICAL MHcOpt	# Hardcopy option present
 
# Local versions of display-affecting variables
CommonLVar(`MLNativ')		LOGICAL LNativ	# Chars native or 4010
CommonLVar(`MLCrLf')		LOGICAL LCrLf	# Cr => CrLf
CommonLVar(`MLLfCr')		LOGICAL LLfCr	# Lf => CrLf
CommonLVar(`MLPAspc')		LOGICAL LPAspc	# Preserve aspect ratio
 
# Devices available
CommonIVar(`MMenDev')		INTEGER MenDev	# Menu device
CommonIVar(`MNMNDev')		INTEGER NMNDev	# Non-menu device
 
CommonCArray(`CMenu')
CommonIArray(`IMenu')
CommonLArray(`LMenu')
',`dnl
Common	/EmMenu/ CMenu,IMenu,LMenu
',`dnl
Equivalence	(MenStr(1),	CMenu(MMenStr))
Equivalence	(MenCod(1),	CMenu(MMenCod))
Equivalence	(MenTos,	CMenu(MMenTos))
Equivalence	(MenStk(1),	IMenu(MMenStk))
Equivalence	(MenuPc,	IMenu(MMenuPc))
Equivalence	(MenIAc,	IMenu(MMenIAc))
Equivalence	(MenLAc,	LMenu(MMenLAc))
Equivalence	(MenR0,		IMenu(MReg0))
Equivalence	(MenR1,		IMenu(MReg1))
Equivalence	(MenR2,		IMenu(MReg2))
Equivalence	(MenR3,		IMenu(MReg3))
Equivalence	(MenR4,		IMenu(MReg4))
Equivalence	(MenR5,		IMenu(MReg5))
Equivalence	(MenR6,		IMenu(MReg6))
Equivalence	(MenR7,		IMenu(MReg7))
Equivalence	(MenIx,		IMenu(MIndex))
Equivalence	(MnNChN,	CMenu(MMnNChN))
Equivalence	(MenNCh(1),	CMenu(MMenNCh))
Equivalence	(InitPc,	IMenu(MInitPc))
Equivalence	(MenTru,	LMenu(MTrue))
Equivalence	(MenFls,	LMenu(MFalse))
Equivalence	(MCfOpt,	LMenu(MMCfOpt))
Equivalence	(MSKOpt,	LMenu(MMSKOpt))
Equivalence	(M10Opt,	LMenu(MM10Opt))
Equivalence	(MPgOpt,	LMenu(MMPgOpt))
Equivalence	(MChOpt,	LMenu(MMChOpt))
Equivalence	(MDsOpt,	LMenu(MMDsOpt))
Equivalence	(MHcOpt,	LMenu(MMHcOpt))
Equivalence	(LNativ,	LMenu(MLNativ))
Equivalence	(LCrLf,		LMenu(MLCrLf))
Equivalence	(LLfCr,		LMenu(MLLfCr))
Equivalence	(LPAspc,	LMenu(MLPAspc))
Equivalence	(MenDev,	IMenu(MMenDev))
Equivalence	(NMNDev,	IMenu(MNMNDev))
'dnl
E 1
