!!
!!**************************************************
!!
!! CONVERT SOURCE TO OMF TYPE SQFILE.
!!
!!***************************************************
!!
EXTERNALROUTINE CSOMF(STRING (63) S)
EXTERNALROUTINESPEC OPENOMF(STRING (32) S,INTEGER CH,MODE)
EXTERNALROUTINESPEC WRITEOMF(INTEGER CH,FROM, L)
EXTERNALROUTINESPEC CLOSEOMF(INTEGER CH)
SYSTEMROUTINESPEC CONNECT(STRING (32) S INTEGER A,M,P, C
RECORDNAME R, INTEGERNAME FLAG)
RECORDFORMAT RFMT(INTEGER CONAD,FILTYPE,DATASTART, C
DATAEND,SIZE,EEP,REP,MODE,USERS,ARCH,STRING (6) TRAN,STRING (8) DATE, C
TIME, INTEGER COUNT1,SPARE1,SPARE2)
STRING (32) INFILE,OUTF
INTEGER CONAD,FLAG,I,L,J,TOP
RECORDFORMAT FHEADFMT(INTEGER FILELEN,HEADLEN,SIZE,TYPE, C
SUMCHECK,DATETIME,SP1,SP2)
RECORDNAME FHEAD(FHEADFMT)
RECORD R(RFMT)
!!
!!
->ERRORP UNLESS S->INFILE.(",").OUTF
OPENOMF(OUTF,1,1)
CONNECT(INFILE,0,0,0,R,FLAG)
->ERRORO IF FLAG#0
FHEAD==RECORD(R_CONAD)
->ERRORT IF FHEAD_TYPE#3
I=R_CONAD+32
TOP=R_CONAD+FHEAD_FILELEN
!!
CYCLE J=0,1,10000000
EXIT IF I>=TOP
L=0
WHILE BYTEINTEGER(I+L)#NL THEN CYCLE
L=L+1
->OUT IF I+L>=TOP
REPEAT
WRITEOMF(1,I,L) UNLESS L=0 ;! SCRUB BLANK LINE
I=I+L+1
REPEAT
OUT:
!!
NEWLINES(2)
WRITE(J,1)
PRINTSTRING(" RECORDS WRITTEN TO ".OUTF."
")
CLOSEOMF(1)
->END
!!
ERRORP: PRINTSTRING('
PARAMETERS FAULTY - SHOULD BE INFILE,OUTFILE
')
->END
ERRORT: PRINTSTRING("
NOT A SOURCE FILE!
")
->END
ERRORO: PRINTSTRING('
CONNECT FAILS , FLAG = ')
WRITE(FLAG,0)
->END
END:
END
ENDOFFILE