*20 /// NUMFUDGE /WORKS ON NUMFILES CONTAINING LEACHE /EEG DATA. FOR EACH SET OF 10 SPECTRAL /BANDS, IT DIVIDES THEM BY PF AND THEN /MULTIPLIES THEM BY 100 & VRMS, OVERCOMING /THE ERROR INTRODUCED BY DIFFERENT SAMPLING /RATES IN FORCHN. / NEW = (OLD\PF) X 100 X VRMS /** PERMENANT ALTERATION OF NUMFILES RESULTS ** /PRESUMES 10(10) BANDS PER ORIGINAL INPUT /SYSFILE. PRESUMES 15(10) INPUT SYSFILES /PER CURRENT NUMFILE. LMODE SEGMNT 5 *20 BEG, LIF 4 MESOUT MNAM /NUMFUDGE LIF 4 INUNIT LIF 4 OUTUNIT JMP WRDSET /STORAGE WORDS D1, LIF 4 INTRACT CJ1 M1 /ALL?: CJ1, T1 J1 T1, YES NO 0 J1, JMP BEG /CR JMP DOALL /YES JMP DOTAB /NO JMP D1 /NUM? /SETUP STORAGE WORDS. WRDSET, LDF 4 LDA I 7105 STA WORD1 LDA I 4406 STA WORD2 JMP 0 /EXIT /END WRDSET. /ALL FILES HANDLER. DOALL, LIF 4 DIRINI NXTFIL, LIF 4 MGETNAM JMP ALLDUN /EOF LIF 4 MGETFIL HLT /HUH? JMP DOFUDG /******* JMP STRBAK JMP NXTFIL /END DOALL. /INPUT FILE TABLE HANDLER. DOTAB, LIF 4 TABSET 0 LDF 7 2000 1000 LIF 4 /ASK NAMES INTABL 0 LIF 4 TABINI 0 NXTTAB, LIF 4 TABGET 0 JMP ENDTAB /EOT JMP NXTTAB /MSNG LIF 4 /ZERO DUN FILES TABZER 0 JMP DOFUDG /******* JMP STRBAK JMP NXTTAB /END DOTAB. /END HANDLERS. ENDTAB, LIF 4 TABINI 0 LIF 4 MISSNG /TYPE MSNG FILE 0 NOP /MSNG FOUND ALLDUN, LIF 4 DEASS JMP REPLQ LIF 4 STOP /* ALL DONE /END END HANDLERS. /STORE FILES BACK. STRBAK, SET 3 0 JMP NORPLQ /NO REPLACE QUES LIF 4 MSTORIT JMP ALLDUN /FULL JMP REPLQ /RESTR REPLC QUES JMP 3 /LEAVE /END STRBAK. /HANDLERS TO REMOVE & REPLACE "REPLACE?" /QUESTION IN SIGSYS-12. REPCK=2376 NORPLQ, LDF 4 LDA I JMP 0 STA REPCK JMP 0 /EXIT REPLQ, LDF 4 LDA I ADD 0 STA REPCK JMP 0 /EXIT /END NORPLQ & REPLQ. /MESSAGES. MNAM, TEXT %NUMFUDGE% 4543 M1, TEXT %ALL?: % /END MESSAGES. /MAIN PROGRAMMING SEQUENCE TO VIOLATE /GIVEN FILES IN AN IRREVOCABLE MANNER. DOFUDG, LDA 0 STC FUDGX SET I 2 -17 /15(10) SETS\NUMFILE LDA I 2000 /START DATA PNTR DOLOOP, JMP DOIT /WREAK HAVOC XSK I 2 /DUN ALL SETS? SKP /NO FUDGX, 0 /YES, LEAVE LDA /SET NXT SET LOC PFLOC ADA I 3 JMP DOLOOP DOIT, STA 7 ADA I 41 /VRMS TO PF STC PFLOC ADD 0 STC DOITX SET I 10 -12 /10(10) BANDS\SET LDF 6 LOAD 4\7 /VRMS FDIV PFLOC, 0 /PF FMUL FPHUN /X 100(10) STORE CORFAC /CORRECTION FACTOR LOAD 7 FMUL CORFAC STORE 4\7 XSK I 10 JMP .-7 DOITX, 0 /EXIT CORFAC, 0 0 0 FPHUN, 7 3100 0 /END DOFUDG. AEND5, 0 //END PROGRAMMING. /PBLOCK FOLLOWS. NOLIST //PBLOCK /COMMAND DECODER ASSIGNMENTS / / STOP=JMP 20 SCAN=JMP 21 STRSCN=JMP 21 INUNIT=JMP 22 STORIT=JMP 23 GETFIL=JMP 24 GETFST=JMP 24 GETNAM=JMP 25 GETNXT=JMP 25 DIRINI=JMP 26 DIRLST=JMP 27 ASSIGN=JMP 30 DEASS=JMP 31 OUTUNIT=JMP 32 LODBLK=JMP 33 RUNBLK=JMP 34 FIND=JMP 35 CALL=JMP 37 UNCALL=JMP 40 RUNPRG=JMP 41 INTRACT=JMP 42 MESOUT=JMP 43 DISK=JMP 44 TABSET=JMP 45 INTABLE=JMP 46 MISSNG=JMP 47 TABGET=JMP 50 TABPUT=JMP 51 TABZER=JMP 52 MAKDIL=JMP 53 TABINI=JMP 54 MGETNAM=JMP 55 MGETFIL=JMP 56 MSTORIT=JMP 57 / /COMMAND LOCATIONS. / FILNAM=2320 WORD1=2323 WORD2=2324 INBUF=2325 /COMMAND NUMBERS. YES=17 NO=20 / /EXEC3 ASSIGNMENTS / OPR=500 IOF=6002 ION=6001 EXC=1710 REXC=540 RLSW=514 RRSW=515 /FLOATING POINT DEFINITIONS. / FAC=0 STARTE=740 FSUB=741 FMUL=742 FDIV=743 LOAD=744 STORE=745 SETWRD=746 INPUT=747 OUTPUT=750 ISTOR1=751 SQRT=752 DFLOAT=753 SFLOAT=754 FIX=755 FADD=756 ISTOR2=757 STARTF=760 FCOMP=761 FZER=762 FAPO=763 FAZE=764 RECIP=765 / /PBLOCK /FEB 74. LIST /// END NUMFUDGE / 23 AUG 77 / JLB & FHD