C C ************************************************************************** C ** PROGRAM AUTHOR: WILLIAM BAKER C C ** PROGRAM DESCRIPTION: DEFINES AN AREA OF SHARED COMMON FOR USE BY C ** A/D AND D/A DATA ACQUISITION PROGRAMS. C C ** ADDA_SHR.FOR DICTIONARY C ----------------------- C C ** DEFINE THE STRUCTURE OF THE A/D CHANNEL LIST INFORMATION RECORD. C STRUCTURE /AD_LIST/ UNION MAP INTEGER*4 CHAN_NUM INTEGER*4 CHAN_GAIN CHARACTER*72 CHAN_DSCR END MAP END UNION END STRUCTURE C C ** DEFINE THE STRUCTURE OF THE D/A CHANNEL LIST INFORMATION RECORD. C STRUCTURE /DA_LIST/ UNION MAP INTEGER*4 CHAN_NUM CHARACTER*72 CHAN_DSCR INTEGER*4 CHAN_DEVICE INTEGER*4 CHAN_FROM END MAP END UNION END STRUCTURE C C ** DECLARE THE A/D CHANNEL RECORD ARRAYS. C RECORD /AD_LIST/ AD_CHNL(2,16) C C ** DECLARE THE D/A CHANNEL RECORD ARRAYS. C RECORD /DA_LIST/ DA_CHNL(2,2) C C ** DECLARE PARAMETERS FOR EVENT FLAG STATUS. C PARAMETER SS$_WASCLR = '00000001'X PARAMETER SS$_WASSET = '00000009'X C C ** DELCARE LOGICALS USED FOR DETERMINING STATUS OF ACTIVITY. C LOGICAL START_STOP1, USE_LOGICAL1 LOGICAL USE_LOGICAL8 LOGICAL USE_LOGICAL9 LOGICAL START_STOP2, USE_LOGICAL2, CLK_READY C C ** DECLARE SYSTEM SERVICE INTEGER FUNCTIONS. C INTEGER*4 SYS$CREMBX, SYS$DELMBX, SYS$DASSGN INTEGER*4 SYS$WAITFR, SYS$SETIMR, SYS$BINTIM, SYS$DLCEFC INTEGER*4 SYS$CLREF, SYS$ASCEFC, SYS$DACEFC, SYS$SETEF C C ** DECLARE ARRAYS WHICH CONTAIN COUNTS OF NUMBER OF CHANNELS IN USE. C INTEGER*4 AD_NUMBR(2), DA_NUMBR(2) C C ** DECLARE THE CLOCK RATE FOR THIS TEST. C REAL*4 CLK_RATE C C ** DECLARE THE POINTERS FOR THE ARRAYS ASSOCIATED WITH EACH DEVICE. C INTEGER*4 PRV_PNTR1, CUR_PNTR1, AD1_PNTR INTEGER*4 PRV_PNTR2, CUR_PNTR2, AD2_PNTR INTEGER*4 AD8_PNTR, AD9_PNTR C C ** DECLARE VARIABLE FOR CURRENT TIME ON SYSTEM. C INTEGER*4 CUR_TIME C C ** DECLARE VARIABLE FOR PLACEMENT OF NEW OPERATING INSTRUCTIONS CODE. C INTEGER*4 NEWOPT C C ** STORAGE ARRAYS FOR AXA0 DEVICE. C INTEGER*2 AD1_DATA1(120,16), AD1_DATA2(120,16) INTEGER*4 AD1_TIME1(120), AD1_TIME2(120) C C ** BUFFERS FOR AXA0 I/O C INTEGER*2 AD1_BUFFER(16), DA1_BUFFER(2) C C ** STORAGE ARRAYS FOR AXB0 DEVICE. C INTEGER*2 AD2_DATA1(120,16), AD2_DATA2(120,16) INTEGER*4 AD2_TIME1(120), AD2_TIME2(120) C C ** BUFFERS FOR AXB0 I/O C INTEGER*2 AD2_BUFFER(16), DA2_BUFFER(2) C C ** STORAGE ARRAYS FOR POST TEST DATA ANALYSIS OF DATA. C INTEGER*2 AD8_DATA1(120,16), AD9_DATA1(120,16) INTEGER*4 AD8_TIME1(120), AD9_TIME1(120) C C*************************************************************************** C C ** DECLARES THE SHARED COMMON. C COMMON /ADDA_DATA/ AD1_DATA1, AD1_DATA2, AD1_BUFFER, DA1_BUFFER, & AD1_TIME1, AD1_TIME2, & AD2_DATA1, AD2_DATA2, AD2_BUFFER, DA2_BUFFER, & AD2_TIME1, AD2_TIME2 C COMMON /ADDA_STORE/ AD8_DATA1, AD8_TIME1, AD8_PNTR, USE_LOGICAL8, & AD9_DATA1, AD9_TIME1, AD9_PNTR, USE_LOGICAL9 C COMMON /ADDA_PNTRS/ PRV_PNTR1, CUR_PNTR1, AD1_PNTR, & PRV_PNTR2, CUR_PNTR2, AD2_PNTR C COMMON /ADDA_LOGIC/ START_STOP1, USE_LOGICAL1, START_STOP2, & USE_LOGICAL2, CLK_READY C COMMON /ADDA_NMBR/ CLK_RATE, AD_NUMBR, DA_NUMBR, NEWOPT, CUR_TIME, & AD_CHNL, DA_CHNL C C************************************************ C C ** DECLARE FOLLOWING ROUTINES AS EXTERNAL TO NORMAL PROGRAM. C EXTERNAL SYS$CREMBX EXTERNAL SYS$DELMBX EXTERNAL SYS$DASSGN EXTERNAL SYS$WAITFR EXTERNAL SYS$SETEF EXTERNAL SYS$DACEFC EXTERNAL SYS$DLCEFC EXTERNAL SYS$ASCEFC EXTERNAL SYS$CLREF C