h14201
s 00001/00000/00186
d D 1.26 83/03/15 14:26:25 mjb 26 25
c 
e
s 00002/00000/00184
d D 1.25 83/03/03 22:32:06 mjb 25 24
c 
e
s 00002/00000/00182
d D 1.24 83/03/02 23:19:53 mjb 24 23
c 
e
s 00003/00002/00179
d D 1.23 83/03/01 12:48:42 mjb 23 22
c 
e
s 00003/00003/00178
d D 1.22 83/02/25 19:34:40 mjb 22 21
c 
e
s 00001/00001/00180
d D 1.21 83/02/25 14:04:27 mjb 21 20
c 
e
s 00003/00001/00178
d D 1.20 83/02/23 14:20:30 mjb 20 19
c 
e
s 00014/00003/00165
d D 1.19 83/02/17 01:31:37 tes 19 18
c modified f80 switch to CPU80, CPU86
e
s 00008/00000/00160
d D 1.18 83/02/09 21:51:38 tes 18 17
c added legend defines
e
s 00002/00001/00158
d D 1.17 83/02/08 20:19:33 mjb 17 16
c 
e
s 00002/00002/00157
d D 1.16 83/02/08 14:39:17 mjb 16 15
c 
e
s 00001/00001/00158
d D 1.15 83/02/03 20:56:56 mjb 15 14
c changed menucom size
e
s 00002/00000/00157
d D 1.14 83/02/02 20:35:20 tes 14 13
c added define for FOREVER
e
s 00011/00001/00146
d D 1.13 83/02/02 16:12:11 tes 13 12
c added annotation text data structure defines
e
s 00001/00001/00146
d D 1.12 83/02/01 17:51:20 tes 12 11
c removed question mark from KEEPxDATA menu define
e
s 00032/00029/00115
d D 1.11 83/02/01 13:06:24 mjb 11 10
c modified graphdef menu.tex for standard menu id numbers
e
s 00002/00002/00142
d D 1.10 83/02/01 02:20:31 mjb 10 9
c increased size of mnucom for new menu.tex
e
s 00005/00004/00139
d D 1.9 83/02/01 01:02:24 mjb 9 8
c put in more error reporting prompts
e
s 00010/00008/00133
d D 1.8 83/01/31 20:09:09 tes 8 7
c added defines for DATA selection menus and DIF file data access
e
s 00001/00000/00140
d D 1.7 83/01/31 19:11:22 mjb 7 6
c 
e
s 00010/00000/00130
d D 1.6 83/01/29 16:12:37 mjb 6 5
c added error number defines
e
s 00005/00002/00125
d D 1.5 83/01/27 13:48:59 mjb 5 4
c took care of interface changes
e
s 00004/00000/00123
d D 1.4 83/01/22 18:24:53 tes 4 3
c added ROW/COLUMNxCELLxSIZE defines
e
s 00002/00007/00121
d D 1.3 83/01/21 18:09:32 tes 3 2
c deleted CREATExMULTIPLE, reassigned ANNOTATE, and MULTIPLExCHART
e
s 00000/00002/00128
d D 1.2 83/01/21 16:37:44 tes 2 1
c removed defines for ASCII/GRAPHICS mode, use ENTER/EXIT..MODE
e
s 00130/00000/00000
d D 1.1 83/01/20 11:08:31 tes 1 0
c date and time created 83/01/20 11:08:31 by tes
e
u
tes
mjb
U
t
T
I 1
divert(-1)
define(`UNIX')
D 19
#define(`F80')
E 19
I 19
#define(`CPU80')
#define(`CPU86')
E 19
I 6
#define(`OVERLAY')
E 6
#
D 19
define(`CHAR',`character*(*)')
E 19
I 19
# On 8080 LONGINT is defined as real because of the load module size
# of the integer*4 library routines which is about 4k of overhead, whereas
# reals are about 1k of overhead. We use integer arithmetic as base for 
# comparison.
E 19
#
D 19
ifdef(`F80',`define(`SHORTINT',`integer*1')')
E 19
I 19
ifdef(`CPU80',`define(`SHORTINT',`integer*1')')
ifdef(`CPU80',`define(`LONGINT',`real')')
E 19
#
I 19
ifdef(`CPU86',`define(`SHORTINT',`integer*1')')
ifdef(`CPU86',`define(`LONGINT',`integer*4')')
#
E 19
ifdef(`UNIX',`define(`SHORTINT',`integer*2')')
I 19
ifdef(`UNIX',`define(`LONGINT',`integer*4')')
#
define(`CHAR',`character*(*)')
E 19
#
define(`MAXFILES',10)              #maximum number of files allowed
define(`CLOSED',0)                 #file closed or not          
define(`ASCIIxREAD',0)             #read mode flag              
define(`ASCIIxWRITE',1)            #write mode flag               
define(`ASCIIxREADxWRITE',2)       #read/write mode flag
define(`BINARYxREAD',3)            #read mode flag              
define(`BINARYxWRITE',4)           #write mode flag               
define(`BINARYxREADxWRITE',5)      #read/write mode flag
define(`EXISTS',0)                 #file exists mode flag
define(`OK',0)
define(`NO',0)
define(`YES',1)
define(`OPCODE',1)                 #opcode index 
define(`VERTICESxIN',2)            #number of points input
define(`INTEGERxINxLENGTH',4)      #length of input integers
#
D 10
define(`MAXMENUS',30)              #maximum number of menus 
define(`MENUSIZE',4500)            #maximum menu buffer size
E 10
I 10
define(`MAXMENUS',40)              #maximum number of menus 
D 15
define(`MENUSIZE',5000)            #maximum menu buffer size
E 15
I 15
D 20
define(`MENUSIZE',5250)            #maximum menu buffer size
E 20
I 20
D 21
define(`MENUSIZE',5750)            #maximum menu buffer size
E 21
I 21
define(`MENUSIZE',6000)            #maximum menu buffer size
E 21
E 20
E 15
E 10
define(`FIELDSIZE',1000)           #maximum field buffer size
define(`FIELDxDATAxSIZE',1650)     #maximum field data buffer size
define(`CHOICExDATAxSIZE',100)     #maximum choice data buffer size
define(`CHARxREALxLENGTH',11)      #maximum length of reals in characters
define(`DATAxREALxLENGTH',5)       #maximum length of encoded real data
#
I 4
define(`ROWxCELLxSIZE',1365)       # the vertical size of a character in device
				   # coordinates
define(`COLUMNxCELLxSIZE',409)     # the horizontal size of a character in 
				   # device coordinates
E 4
D 2
define(`ASCIIxMODE',0)             # device selection is to be ascii mode
define(`GRAPHICSxMODE',1)          # device selection is to be graphics mode
E 2
define(`OTHERxWISE',6969)          #label for default goto
I 14
define(`FOREVER',9999)             # value used to pass to apdata to display
				   # everything
E 14
define(`CRT',1)                    #crt device index
define(`PLOTTER',2)                #plotter device index
define(`PRINTER',3)                #printer device index
#
I 8
define(`STOP',0)
define(`PAUSE',1)
#
E 8
define(`MAINxMENU',1)
define(`CREATExNEWxCHART',2)
define(`DATAxINPUTxMODE',3)
D 8
define(`FILExPROMPTS',4)
D 3
define(`MULTIPLExCHARTSxPERxPAGE',5)
E 3
define(`FILExNAMExPROMPT',6)
E 8
I 8
define(`SELECTxCURVE',4)
D 11
define(`SELECTxFIRSTxDATA',5)
E 8
define(`RESTORExFILExNAMExPROMPT',6)
define(`SAVExFILExNAMExPROMPT',7)
define(`DEVICExSELECTION',8)
I 7
D 8
define(`DEFINEDxFILE',9)
E 8
I 8
define(`KEEPxDATA?',9)
define(`DATAxACCESSxMETHOD',10)
E 8
E 7
D 3
define(`ANNOTATE',50)
define(`ANNOTATEx0',50)
define(`ANNOTATEx1',51)
define(`ANNOTATEx2',52)
E 3
define(`ASKxFORxTEXT',55)
define(`POSITIONxCURSORxFORxTEXT',56)
define(`POSITIONxCURSORxONxTEXT',57)
define(`POSITIONxCURSORxATxNEWxPOSITION',58)
D 3
define(`CURRENTxANDxNEWxVALUE',59)
E 3
define(`PIExEDIT',100)
define(`ADVANCEDxPIExEDIT',101)
define(`GRAPHxDATAxFRAME',200)
define(`GRAPHxEDIT',201)
define(`ADVANCEDxGRAPHxEDIT',202)
define(`AXESxEDIT',203)
D 3
define(`CREATExMULTIPLExPAGE',300)
E 3
I 3
define(`MULTIPLExCHARTSxPERxPAGE',400)
define(`ANNOTATE',500)
I 6
D 8
define(`STOP',0)
define(`PAUSE',1)
E 8
I 8
define(`TOGGLExTOxDATA',1000)
define(`TOGGLExTOxCHOICE',1001)
E 8
E 6
E 3
define(`INVALIDxKEY',2000)
I 6
define(`ANOBUFxERROR',2001)
define(`CANNOTxOPENxFILExERROR',2002)
define(`CORRUPTxFILExERROR',2003)
D 8
define(`CANNOTxWRITExFILExERROR',2004)
E 8
I 8
D 9
define(`DEFINEDxFILE',2004)
E 8
define(`OPENxHERSHYxERROR',2005)
define(`OPENxMENUxERROR',2006)
define(`CORRUPTxMENUxERROR',2007)
E 9
I 9
define(`NOxCHARTxDEFINEDxERROR',2004)
define(`DEFINEDxFILE',2005)
define(`OPENxHERSHYxERROR',2006)
define(`OPENxMENUxERROR',2007)
define(`CORRUPTxMENUxERROR',2008)
E 11
I 11
define(`DEVICExSELECTION',5)
define(`DATAxACCESSxMETHOD',6)
#
define(`SELECTxFIRSTxDATA',101)
define(`RESTORExFILExNAMExPROMPT',102)
define(`SAVExFILExNAMExPROMPT',103)
D 12
define(`KEEPxDATA?',104)
E 12
I 12
define(`KEEPxDATA',104)
E 12
#
D 16
define(`MULTIPLExCHARTSxPERxPAGE',201)
define(`ANNOTATE',202)
E 16
I 16
define(`ANNOTATE',201)
define(`MULTIPLExCHARTSxPERxPAGE',202)
E 16
define(`PIExEDIT',203)
define(`ADVANCEDxPIExEDIT',204)
define(`GRAPHxDATAxFRAME',205)
define(`GRAPHxEDIT',206)
define(`ADVANCEDxGRAPHxEDIT',207)
define(`AXESxEDIT',208)
I 18
D 22
define(`MOVExLEGEND',209)
I 20
define(`LINEARxAXESxEDIT',210)
define(`PERIODICxAXESxEDIT',211)
E 22
I 22
define(`NUMERICxAXESxEDIT',209)
define(`PERIODICxAXESxEDIT',210)
define(`MOVExLEGEND',211)
I 26
define(`DEMOxMENU',250)
E 26
E 22
E 20
E 18
#
define(`TOGGLExTOxDATA',301)
define(`TOGGLExTOxCHOICE',302)
define(`ASKxFORxTEXT',303)
define(`POSITIONxCURSORxFORxTEXT',304)
define(`POSITIONxCURSORxONxTEXT',305)
define(`POSITIONxCURSORxATxNEWxPOSITION',306)
define(`INVALIDxKEY',307)
define(`ANOBUFxERROR',308)
define(`CANNOTxOPENxFILExERROR',309)
define(`CORRUPTxFILExERROR',310)
define(`NOxCHARTxDEFINEDxERROR',311)
define(`DEFINEDxFILE',312)
define(`OPENxHERSHYxERROR',313)
define(`OPENxMENUxERROR',314)
define(`CORRUPTxMENUxERROR',315)
I 18
define(`POSITIONxCURSORxFORxLEGEND',316)
I 24
define(`NOxGRAPHICSxERROR',317)
define(`NOxGRAPHICxINPUTxERROR',318)
I 25
define(`EITHER',1)
define(`MULTI',2)
E 25
E 24
#
D 23
define(`MAXxJUMP',15)
E 23
I 23
define(`MAXxJUMP',16)
E 23
define(`JUMPxTABLE',`MAINxMENU, CREATExNEWxCHART, DATAxINPUTxMODE,
	DATAxACCESSxMETHOD, MULTIPLExCHARTSxPERxPAGE, DEVICExSELECTION,
	ANNOTATE, PIExEDIT, ADVANCEDxPIExEDIT, GRAPHxDATAxFRAME, GRAPHxEDIT,
D 23
        ADVANCEDxGRAPHxEDIT, AXESxEDIT, MOVExLEGEND, OTHERxWISE')
E 23
I 23
        ADVANCEDxGRAPHxEDIT, NUMERICxAXESxEDIT, PERIODICxAXESxEDIT,
	MOVExLEGEND, OTHERxWISE')
E 23
E 18
E 11
E 9
E 6
D 8
define(`TOGGLExTOxDATA',1000)
define(`TOGGLExTOxCHOICE',1001)
E 8
#
# GRAPH type defines
#
define(`LINE',1)
define(`BAR',2)
define(`STEP',3)
define(`STICK',4)
D 5
define(`PIE',5)
define(`TEXT',6)
E 5
I 5
define(`SCATTER',5)
define(`PIE',6)
define(`TEXT',7)
define(`CLUST',8)
define(`STACK',9)
E 5
#
# ACTION's for graph main
#
I 17
define(`BREAKxOVERLAY',-1)
E 17
define(`SHOWxCHART',1)
D 17
define(`EXITxGSSxGRAPH',-1)
E 17
I 17
define(`EXITxGSSxGRAPH',99)
E 17
#
D 13
# ESCAPE function ids
E 13
I 13
#   Annotation data structure defines
#
define(`TEXTxITEMxLENTH',0)
define(`TEXTxITEMxX',1)
define(`TEXTxITEMxY',3)
define(`TEXTxITEMxFONT',5)
define(`TEXTxITEMxCOLOR',6)
define(`TEXTxITEMxSIZE',7)
define(`TEXTxITEMxSTRING',8)
#
# ESCAPE function ids for device drivers
E 13
#
define(`ESCAPE',5)                 #graphic escape
define(`INQUIRExADDRESSABLExCELLS',1)       
define(`ENTERxGRAPHICSxMODE',2)
define(`EXITxGRAPHICSxMODE',3)
define(`CURSORxUP',4)
define(`CURSORxDOWN',5)
define(`CURSORxRIGHT',6)
define(`CURSORxLEFT',7)
define(`HOMExCURSOR',8)
define(`ERASExTOxENDxOFxSCREEN',9)
define(`ERASExTOxENDxOFxLINE',10)
define(`DIRECTxCURSORxADDRESS',11)
define(`OUTPUTxCURSORxADDRESSABLExTEXT',12)
define(`REVERSExVIDEOxON',13)
define(`REVERSExVIDEOxOFF',14)
define(`INQUIRExCURRENTxCURSORxADDRESS',15)
define(`INQUIRExTABLETxSTATUS',16)
define(`HARDCOPY',17)
define(`PLACExCURSORxATxLOCATION',18)
define(`REMOVExCURSOR',19)
#
define(`SETxCOLORxREPRESENTATION',14)   #map index to color opcode identifier
#
# CPM disk I/O defines
#
define(`CPMxOPEN',15)              # bdos open file opcode
define(`CPMxCLOSE',16)             # bdos close file opcode
define(`CPMxSFIRST',17)            # bdos search first occurrance 
define(`CPMxDELETE',19)            # bdos delete file opcode
define(`CPMxCREATE',22)            # bdos create file opcode
define(`SETxDMA',26)               # bdos set DMA opcode
define(`CPMxREAD',33)              # bdos random read opcode
define(`CPMxWRITE',34)             # bdos random write opcode
define(`CPMxGETSIZE',35)           # bdos get file size opcode
#
define(`RECORDxSIZE',128)          # CPM record size
#
define(`CPMEOF',26)                # CPM end of file (cntrl Z)
#
define(`ON',1)
define(`OFF',0)
# undefine m4 index macro 
undefine(`index')
divert
E 1
