C PROGRAM BMAP2.FT C -------------- C C C C C##### SUBROUTINE BMAP(LENS,ZOOM,PUC,UNAME) C C C C P. LEMKIN C NIH C BETHESDA, MD C C JULY 11, 1977 /FIXED LENS # FETCH C JUNE 9, 1977 /NEW CALIBRATION PERFORMED C JUNE 8, 1977 /NOTICED ERROR IN PUC FUNCTION: TEMP FIX C /VALID ONLY AT 0.8X C FEB 25, 1977 C SEPT 22, 1976 C SEPT 21, 1976 C SEPT 20, 1976 C SEPT 19, 1976 C SEPT 18, 1976 C SEPT 17, 1976 C C PURPOSE C ------- C GENERATE CONVERSION COEFFICIENTS C WITH SPECIAL THANKS TO B.S. WHO "FIT" THE CURVE(S) FOR PUC. C C C LENS - I3 LENS # 1, 2.5, 5, 10, 25, 50 (DRY AND OIL), 100 C ZOOM - 0.8 TO 3.2 C PUC - MULT X QMT PIXEL LENGTH TO GET THE LENGTH IN MICRONS C UNAME - "MICRON" OR " PIXEL" (NOT /N) C C C S OPDEF MQL 7421 S OPDEF MQA 7501 S OPDEF TADI 1400 S OPDEF DCAI 3400 C C GET THE MAGNIFICATION C COMPUTE: IX=LSAVE(15,1) S TAD PLSAVE S TAD (D14 /(15,1) OFFSET S DCA 7 S CPAGE 4 S DCA \IX S TADI 7 S DCA \IX C CLIP TO 1:D8 S TAD \IX S SNA S TAD (D8 /MAKE IT 100X C C MAKE SURE NOT > D8 S TAD (-D8 S SMA S CLA S TAD (D8 /ADD IT BACK S DCA \IX C C GET MICRONS/PIXEL CONSTANT FOR 0.8 ZOOM FOR LENS IX. GOTO(1001,1002,1005,1010,1025,1051,1052,1100),IX C C 1X 1001 PARAM=10.59 S TAD (1 S MQL /LENS GOTO 100 C C 2.5X 1002 PARAM=6.48 S TAD (2 S MQL /LENS GOTO 100 C C 5X 1005 PARAM=3.23 S TAD (5 S MQL /LENS GOTO 100 C C 10X 1010 PARAM=1.599 S TAD (D10 S MQL /LENS GOTO 100 C C 25X 1025 PARAM=0.648 S TAD (D25 S MQL /LENS GOTO 100 C C 50X DRY 1051 GOTO 1052 C@C PARAM=0.323 C@S TAD (D50 C@S MQL /LENS C@ GOTO 100 C C 50X OIL 1052 PARAM=0.323 S TAD (D50 S MQL /LENS GOTO 100 C C 100X OIL 1100 PARAM=0.158 S TAD (D100 S MQL /LENS C C C GET THE ZOOM VALUE IN STEPS C FIT 17 POINTS (STAGE VS MICROMETER ZOOM AT 10X OBJECTIVE) C USING MLAB: A1 STD DEV =.7E-4, A2 STD DEV=.2E-6 C RMS ERROR =0.02 C C NOTE: AT THIS POINT ZOOM RANGES [0:4xx] WHICH IS EQV [0.8X:3.2X]. C COMPUTE: ZM=MDPDATA(7,3) S\100, TAD PMDPDATA S TAD (D22 /(7,3) ON [1:8,1:12] IS (3-1)*8+(7-1)=22 S DCA 7 S CPAGE 4 S DCA \IX S TADI 7 S DCA \IX ZM=IX C ZM=1.00000+(.219462E-2)*ZM+(.697539E-5)*ZM*ZM C C COMPUTE THE MICRON/PIXEL CONVERSION FACTOR PUC C WHERE PARAM IS THE (MICRONS/PIXEL) CALIBRATION AT 0.800 ZOOM PUC=PARAM/ZM C C IF NOT /N C THEN PUC CONVERTS PIXELS TO MICRONS C ELSE PUC=1.0 UNAME='MICRON' IX=ISW(14) S TAD \IX S SNA CLA S JMP \192 /MICRONS 191 PUC=1.00000 UNAME=' PIXELS' C C S \192, MQA /GET THE LENS # S DCA I \LENS ZOOM=0.8*ZM RETURN C C ****PARAMETERS**** S PMDPDATA, \MDPDATA S PLSAVE, \LSAVE END