/GLOBL.PA VERSION 2 /A PROGRAM TO SHORTEN THE MONITOR SYMBOL LIST / OCTOBER 1974 /START-ADDRESS IS 00200 /WHEN ASSEMBLING PARTS OF THE MULTI8-SYSTEM, /E.G. MODULES,MUCH TIME IS SPENT BY THE ASSEMBLER /TO COPY THE MONITOR-SYMBOLS (M.LS)TO ITS INTERNAL /SYMBOL-LIST. THIS TIME CAN BE MINIMIZED BY /SHORTENING THE MONITOR-SYMBOL-LIST. /THIS OPERATION MAY BE PERFORMED BY THIS PROGRAM. /IT WILL ONLY COPY THOSE SYMBOLS WHICH ARE IN A /SECOND LIST (OR WHICH ARE NOT, OR ALL) ON THE SPE- /CIFIED OUTPUT FILE. /HOW TO USE: /.R GLOBL /*OUT;215;212;"F;"I;"X;"T;"A;"B;";;0 JMS I [XLSTX JMP I FXTAB /RETURN PAGE NAMLST=. /OS8IN-OS8OUT /THESE ROUTINES WILL BE LOAD IN FIELD 0 /BUT RUN IN FIELD 1 /IF THE PROGRAM STARTS THESE TWO PAGES /WILL BE MOVED UP TO 17200-17577 TWOPAG=1 BUFOUT=0000 BLKOUT=7 HANDL=7200 PFIELD=10 FILNAM=7601 BUFFLD=10 WRITE=4000 PS8OUT, 0 OS8OUT=7200 DCA CHAR / RDF / TAD PSOCIF / DCA PSORET CDF PFIELD PSINIT, JMP PSOBEG JMS PSWRIT TAD CHAR TAD PSM232 SZA CLA JMP PSORET DCA CHAR PSPACK, JMS PACKB SKP JMP .-2 JMS PSWRIT CLA CLL IAC RTL JMS PSOUSR PSOCIF, CIF CDF 0 JMP I PS7600 PSORET, CDF CIF 0 JMP I PS8OUT 7400 PACKB, 0 TAD OUPKSW SZA JMP PACKON TAD CHAR DCA I OUPTR TAD OUPTR CLL RAR SNL CLA JMP .+4 CLA CLL CMA RAL DCA OUPKSW SKP ISZ OUPTR JMP PACKEX PACKON, CLA CMA TAD OUPTR DCA OUPTR TAD CHAR RTL RTL DCA PSOBL-1 TAD PSOBL-1 AND PACKB-1 TAD I OUPTR DCA I OUPTR ISZ OUPTR TAD PSOBL-1 ISZ OUPKSW JMP PACKON+4 PS7600, 7600 TAD LIMIT TAD OUPTR SPA CLA PACKEX, ISZ PACKB JMP I PACKB FILNAM PSOUSR, 0 DCA PSCALL+1 TAD PSOUSR-1 DCA PSCALL+2 TAD PSOBL DCA PSCALL+3 TAD I PS7600 AND (17 PSCALL, JMS I USR 0 0 0 JMP ERR2 JMP I PSOUSR PSOBEG, TAD I PS7600 SNA CLA CLL CML IAC RAL DCA I PS7600 TAD I PS7600 JMS I USR PSOBL, 1 PSOHND, HANDL+TWOPAG CLA CLL IAC RAL CLL CML IAC RAL JMS PSOUSR TAD PSPACK DCA PSINIT DCA PSOBL JMP PSINIT ERR4, ISZ PSOUSR-1 ERR3, ISZ PSOUSR-1 ERR2, ISZ PSOUSR-1 JMP PSOHND+1 BLKOUT PSWRIT, 0 TAD PSCALL+2 DCA PSOWRI TAD PSCALL+3 CLL TAD PSWRIT-1 SZL JMP ERR3 DCA PSCALL+3 CIF 0 JMS I PSOHND BLKOUT^200+BUFFLD+WRITE PSOBUF, BUFOUT PSOWRI, -5 JMP ERR4 TAD PSWRIT-1 TAD PSCALL+2 DCA PSCALL+2 TAD PSWRIT-1 TAD PSOBL DCA PSOBL TAD PSOBUF DCA OUPTR JMP I PSWRIT CHAR, 0 OUPKSW, 0 OUPTR, BUFOUT LIMIT, -BLKOUT^400-BUFOUT USR, 7700 PSM232, -232 PAGE /OS8 INPUT ROUTINE IBUFST=3400 IBUFLG=7 IHNDLR=6601 OSIEXT=1423 /.LS IBUFLD=10 OSICCD=1 OSIREL=1 NOICDF=1 IUSR=200 /WILL BE CHANGED TO 7700 /---------------------------------------------------------------/ /OS8IN-1975 J.VERBURG 7-NOV-75 / OS/8 INPUT ROUTINE /CONFIGURATION LOGIC: / DEFAULT VALUES: IFNDEF OS8IN IFNDEF OSIFLD IFNDEF IPRFLD IFNDEF IBUFLD IFNDEF IUSR IFNDEF IHNDLR IFNDEF OSIEXT IFNDEF IBUFST IFNDEF IBUFLG / PARAMETER TESTS: IFNZRO IBUFST&1 IFNZRO IBUFLG-1&7760 IFNZRO IBUFST%2+77%100+IBUFLG+IBUFLG-1^10-IBUFLD&7400 IFNZRO OS8IN&177 IFNZRO OS8IN%2+100&4000 IFNZRO OSIFLD&7707 IFNZRO IPRFLD&7707 IFNZRO IBUFLD&7707 / DATAFIELD: /0 FIELD 0 /1 FIELD 10 /2 BUFFER FIELD /3 FIELD OF OS8IN /4 FIELD OF CALLING PROGRAM IFNDEF OSIREL < FIELD OSIFLD%10 *OS8IN > IFDEF OSIREL < RELOC OS8IN > O=(7760 /FOR OSI377 0 IFDEF OSICLA < CLA /? > IFDEF OSIOLD < RDF /4 COMPUTE CALLING FIELD TAD (CDF CIF /4 DCA OSICDI /4 > IFNDEF NOICDF < CDF IBUFLD /2 > JMP I OSIPCH /2 COROUTINES OSIFRST, IFDEF OSICCD < IFNZRO IBUFLD < CDF 0 /0 > OSIPNT, TAD OSIHND /2 OSINDC, DCA I OSIBLK /0 SET NON-RESTARTABLE IFNZRO OSIFLD < CDF OSIFLD /3 > IFNZRO OSIFLD-10 < CIF 10 /3 > OSINUM, JMS I OSIUSR /3 CALL COMMAND DECODER OSICNT, 5 /3 OSIEXT /3 IFDEF NOCLOS < 0 /3 > IFZERO IBUFLD-10 < IFNZRO OSIFLD-10 < CDF 10 /1 >>> OSINXT, /1,2 IFNZRO IBUFLD-10 < CDF 10 /1 > TAD (IHNDLR&7601/1 NEXT (FIRST) INPUT FILE DCA OSIHND /1 ISZ OSIFILP /1 TAD I OSIFILP /1 IFNZRO OSIFLD-10 < CDF OSIFLD /3 > SNA /3 IFDEF IRSTRT < JMP OSIRST /3 NO NEXT ONE, MAKE RESTARTABLE > IFNDEF IRSTRT < JMP OSIEND /3 NO NEXT ONE, RETURN ^Z > IFNZRO OSIFLD-10 < CIF 10 /3 > JMS I OSIUSR /3 1 /3 FETCH HANDLER OSIHND, 1000 /3 INIT VALUE IFDEF INPER1 < IFZERO OSIFLD-IPRFLD < JMP I (INPER1 /3 HANDLER FETCH ERROR > IFNZRO OSIFLD-IPRFLD < JMP OSIER1 /3 HANDLER FETCH ERROR >> IFNDEF INPER1 < HLT /3 HANDLER FETCH ERROR ... > IFNZRO OSIFLD-10 < CDF 10 /1 > TAD I OSIFILP /1 OSI377, AND (7760 /1 CLL RTR /1 RTR /1 SZA /1 TAD (7400 /1 DCA OSINUM /1 NUMBER OF BLOCKS ISZ OSIFILP /1 TAD I OSIFILP /1 DCA OSIBLK /1 IFZERO IBUFLD-OSIFLD < IFNZRO OSIFLD-10 < CDF OSIFLD /3 >> OSIREAD, /2,3 IFNZRO IBUFLD-OSIFLD < CDF OSIFLD /3 > IFNZRO IBUFLG-1 < CLL STA /3 DCA OSINDC /3 TAD (IBUFLG /3 TAD OSINUM /3 SNA SZL /3 ISZ OSINDC /3 WILL SKIP DCA OSINUM /3 CLL RTR /3 RTR /3 RTR /3 TAD (-IBUFLG^200/3 DCA OSICNT /3 TAD OSICNT /3 CIA /3 IFZERO IBUFLG-20 < SPA /3 CLA /3 > IFNZRO IBUFLD < TAD (IBUFLD /3 >> IFZERO IBUFLG-1 < TAD (7600 /3 DCA OSICNT /3 TAD (200+IBUFLD /3 > DCA OSIFUNC /3 IFNZRO OSIFLD < CIF 0 /3 > JMS I OSIHND /3 OSITEM, OSIFUNC, IBUFLG&17^200+IBUFLD/3 OSIBUF, IBUFST /3 OSIBLK, 7746 /3 INIT VALUE IFDEF INPER2 < IFZERO OSIFLD-IPRFLD < JMP I (INPER2 /3 > IFNZRO OSIFLD-IPRFLD < JMP OSIER2 /3 >> IFNDEF INPER2 < HLT /3 INPUT ERROR, FATAL ?... > IFNZRO IBUFLG-1 < TAD (IBUFLG /3 TAD OSIBLK /3 DCA OSIBLK /3 > IFZERO IBUFLG-1 < ISZ OSIBLK /3 > IFNZRO IBUFST < TAD OSIBUF /3 > DCA OSIPNT /3 IFNZRO OSIFLD-IBUFLD < CDF IBUFLD /2 > OSILP, TAD I OSIPNT /2 FAST BUFFER UNPACK JMS OSIPCH /2 TAD I OSIPNT /2 ISZ OSIPNT /2 AND (7400 /2 DCA OSITEM /2 TAD I OSIPNT /2 JMS OSIPCH /2 TAD I OSIPNT /2 ISZ OSIPNT /2 IFZERO IBUFST%400+IBUFLG-20&4000 < NOP /2 > AND (7400 /2 CLL RTR /2 RTR /2 TAD OSITEM /2 RTR /2 RTR /2 JMS OSIPCH /2 ISZ OSICNT /2 JMP OSILP /2 IFNZRO IBUFLG-1 < ISZ OSINDC /2 JMP OSINXT /2 JMP OSIREAD /2 > IFZERO IBUFLG-1 < ISZ OSINUM /2 JMP OSIREAD /2 JMP OSINXT /2 > OSIPCH, OSIFRST /2 COROUTINES AND OSI377 /2 TAD (-232 /2 SNA /2 JMP OSINXT /2 OSIEND, TAD (232 /2,3 IFDEF OSIOLD < OSICDI, HLT /4 CDF CIF CALLING FIELD > IFNDEF OSIOLD < IFNZRO OSIFLD-IPRFLD < CDF CIF IPRFLD /4 > IFZERO OSIFLD-IPRFLD < IFNZRO IBUFLD-IPRFLD < CDF IPRFLD /4 >>> JMP I OS8IN /4 IFNZRO OSIFLD-IPRFLD < IFDEF INPER1 < OSIER1, CDF CIF IPRFLD /4 JMP I (INPER1 /4 > IFDEF INPER2 < OSIER2, CDF CIF IPRFLD /4 JMP I (INPER2 /4 >> IFDEF IRSTRT < OSIRST, TAD (OSINXT /3 DCA OSIPCH /3 TAD (7617-1 /3 DCA OSIFILP /3 JMP OSIEND /3 > OSIFILP,7617-1 OSIUSR, IUSR IFNDEF OSICCD < OSIPNT, 0 OSINUM, 0 OSICNT, 0 IFNZRO IBUFLG-1 < OSINDC, 0 >> PAGE IFDEF OSIREL < RELOC > $