DataMuseum.dk

Presents historical artifacts from the history of:

RegneCentralen RC3600/RC7000

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about RegneCentralen RC3600/RC7000

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦9159a5f61⟧ TextFile

    Length: 5290 (0x14aa)
    Types: TextFile
    Notes: CLPRG112
    Names: »CLPRG112«

Derivation

└─⟦714f3848e⟧ Bits:30006597 ALM Copy 24.9.79
    └─ ⟦this⟧ »ASS2::CLPRG112« 

TextFile

«ff»
  0042 LET DOMMEDAG=0
  0060 PROC RADIX
  0070   FOR II=4+(RA=10) TO 1 STEP -1
  0080     LET RAD$(II)=CHR(RA0 MOD RA+(RA0 MOD RA>9)*7+48-16*(SP=1)*(RA0=0)); RA0=RA0 DIV RA
  0090   NEXT II
  0100 ENDPROC
  0110 PROC FIND
  0120   LET MIN=1; MAX=EA*(Ø=1)+PA*(Ø=2); MIDT=MAX*(Å>ADR(Ø,1)) DIV (2-(Å>=ADR(Ø,MAX))); JUMP=0
  0130   IF Å<=ADR(Ø,1) OR Å>=ADR(Ø,MAX) THEN GOTO 0170
  0140   WHILE ADR(Ø,MIDT)>=Å OR ADR(Ø,MIDT+1)<Å DO 
  0150     LET W=(Å>ADR(Ø,MIDT)); S=NOT W; MIN=MIN*S+MIDT*W; MAX=MAX*W+MIDT*S; MIDT=(MIN+MAX) DIV 2
  0160   ENDWHILE
  0170   IF ADR(Ø,MIDT+1)<>Å THEN GOTO 0200
  0180   READ FILE(Ø-1,MIDT+1)S,UD$
  0190   LET JUMP=1; UD$=UD$(1,5+(Ø=2)*(LEN(UD$)-5))
  0200 ENDPROC
  0210 REM
  0220 CLOSE 
  0230 PAGE=0
  0240 DIM DAT$(8),UD$(15),UDSKRIFT$(80),UDSK$(13),T$(12,8),HJÆLP$(10),RAD$(5),PIL$(5),ADR(2,280)
  0250 DEF FNB(X)=ABS(S) MOD 10^X DIV 10^(X-1)+48-16*(ABS(S) DIV 10^(X-1)=0)*(X<>1)
  0260 LET EA=279; PA=138; RAD$="     "; UDSK$="                                 "
  0270 OPEN FILE(0,4)"CO10.ENT"
  0280 OPEN FILE(1,4)"CO...PSE"
  0290 OPEN FILE(3,4)"CO...STA"
  0300 OPEN FILE(4,4)"CO...USE"
  0310 FOR S=1 TO EA+1
  0320   READ FILE(0,S)ADR(1,S)
  0330   IF S<=PA THEN READ FILE(1,S)ADR(2,S)
  0340   IF S<=12 THEN READ T$(S)
  0350 NEXT S
  0360 DATA " ZOC"," LRS"," SCP","BNBZDNDZ","    ",",SKP",",SZC",",SNC",",SZR",",SNR",",SEZ",",SBN"
  0364 LET UUU=2
  0365 FOR III=1 TO UUU
  0366   RESTORE 2010
  0368   REPEAT
  0370     READ STS,SLS
  0371     LET OS=1
  0372     PRINT "<12>";
  0373     IF STS=0 AND SLS=0 THEN LET DOMMEDAG=1
  0374     IF DOMMEDAG THEN GOTO 1110
  0380     PROC HEAD
  0385       PRINT 
  0390       PRINT TAB(36);"_____________________      __________________"
  0400       PRINT "   ADR INDHOLD      INSTRUKTION    !AC0 !AC1 !AC2 !AC3 !      ! ADR ! INDHOLD"
  0410       PRINT "  ---------------------------------!----!----!----!----!------!-----!-----------"
  0415       PRINT "                                   !____!____!____!____!      !_____!___________"
  0420     ENDPROC
  0440     LET POS=0
  0450     REPEAT
  0460       LET POS=POS+1
  0470     UNTIL ADR(1,POS)>=STS
  0480     IF POS<280 THEN READ FILE(0,POS)PIL,PIL$
  0490     EXEC HEAD
  0500     LET B=STS-1+(STS=0)
  0510     CALL "GMEM",B,B
  0520     LET CA=(B=3232)*(STS<>0)
  0530     FOR ADRR=STS TO SLS
  0540       LET JUMP=0; UDSK$="               "
  0550       CALL "GMEM",ADRR,B
  0560       LET B1=B DIV 256; B2=B MOD 256; SP=1; RA=10; RA0=B
  0570       EXEC RADIX
  0580       LET UDSK$(9,13)=RAD$
  0590       IF ADRR<>PIL THEN 
  0600         LET SP=0; RA0=ADRR
  0610         EXEC RADIX
  0620         LET UDSK$(3,7)=RAD$
  0630       ENDIF
  0640       IF ADRR<22169 THEN GOTO 0700
  0650       LET UD$="               "
  0660       IF ADRR>23172 AND ADRR<23259 THEN GOTO 0700
  0670       IF ADRR>22168 AND ADRR<23173 THEN GOTO 1060
  0680       LET S=B1; UD$=".",CHR(FNB(3)),CHR(FNB(2)),CHR(FNB(1)),"."; S=B2; UD$=UD$,CHR(FNB(3)),CHR(FNB(2)),CHR(FNB(1)),"."
  0690       GOTO 1060
  0700       WHILE ADRR=PIL DO 
  0710         IF OS AND STS<>ADRR THEN EXEC HEAD
  0720         LET UDSK$(1,5)=PIL$,"   "; UDSK$(6,8)="   "; POS=POS+1
  0730         READ FILE(0,POS)PIL,PIL$
  0740       ENDWHILE
  0750       IF CA THEN 
  0760         LET Ø=1; Å=B
  0770         EXEC FIND
  0780       ENDIF
  0790       IF NOT (JUMP=0 AND CA OR B<256 OR ADRR<311) THEN GOTO 0830
  0800       LET JUMP=1; SP=(B<256 OR ADRR<311); RA=10; RA0=B
  0810       EXEC RADIX
  0820       LET UD$=RAD$
  0830       LET CA=(B=3232); Ø=2; Å=B
  0840       IF JUMP THEN GOTO 1060
  0850       EXEC FIND
  0860       IF JUMP THEN GOTO 1060
  0870       REM   ALMEN OVERSÆTTELSE
  0880       READ FILE(3,B1+1)UD$
  0890       IF UD$="FEJL" THEN GOTO 0800
  0900       IF B1>127 THEN 
  0910         LET UD$(4)=T$(1,B MOD 64 DIV 16+1); UD$(4+(UD$(4)<>" "))=T$(2,B2 DIV 64+1)
  0920         LET UD$(11,14)=T$(B MOD 8+5); UD$(6)=CHR(32+B MOD 16 DIV 8*3)
  0930       ELSE
  0940         IF B1>95 THEN 
  0950           IF UD$(1)<>"S" THEN LET S=B2 MOD 64; UD$(4)=T$(3,B2 DIV 64+1); UD$(10,11)=CHR(FNB(2)),CHR(FNB(1))
  0960           IF UD$(1)="S" THEN LET S=B2 MOD 64; UD$(4,5)=T$(4,(B2 DIV 64)*2+1,(B2 DIV 64)*2+2)
  0970           IF UD$(1)="S" OR UD$(1)="N" THEN LET UD$(8,15)=CHR(FNB(2)),CHR(FNB(1)),"               "
  0980         ELSE
  0990           LET S=B2-(B MOD 1024 DIV 256<>0)*(B2>127)*256; LS=2*(B1 DIV 32<>0)
  1000           LET UD$(8+LS,11+LS)=CHR(43+2*(S<0)),CHR(FNB(3)),CHR(FNB(2)),CHR(FNB(1))
  1010           IF B1<8 OR S<11 OR S>111 OR B MOD 1024 DIV 256<>3 OR ADRR<4012 THEN GOTO 1040
  1020           READ FILE(4,S)HJÆLP$
  1030           LET UD$(8+LS,15)=HJÆLP$,"           "
  1040         ENDIF
  1050       ENDIF
  1060       REM
  1070       LET UD$=UD$,"               "; UDSKRIFT$=UDSK$,"      ",UD$," !____!____!____!____!      !_____!___________"
  1080       PRINT UDSKRIFT$
  1090     NEXT ADRR
  1110   UNTIL DOMMEDAG
  1120 NEXT III
  2000 DATA 6614,6645,6646,6687,6688,6742,6743,6774
  2001 DATA 6614,6645,6646,6687,6688,6727,6728,6774
  2010 DATA 6775,6806,6807,6839,6840,6881,6882,6925
  2222 DATA 0,0