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

⟦11747331a⟧ TextFile

    Length: 5342 (0x14de)
    Types: TextFile
    Notes: K231SLUT
    Names: »K231SLUT«

Derivation

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

TextFile

«ff»
  0009 REM CB 12.11.79 «so»LAGERANALYSE   C.L.PRG
  0010 PROC OVERSKRI
  0020   LET UDSKRIFT$="<13>",CHR(10+2*(XX*256=X)); RA=16; SP=0
  0030   FOR Y=0 TO 3
  0040     LET RA0=X+64*Y; UD(Y+1)=RA0; S=RA0-1+(RA0=0)
  0050     IF X=XX*256 THEN CALL "GMEM",S,S
  0060     IF X=XX*256 THEN LET CA(Y+1)=(S=3232)
  0070     EXEC RADIX
  0080     LET UDSKRIFT$=UDSKRIFT$,"         ##### ",RAD$(1,4),"              "; UDSKRIFT$=UDSKRIFT$(1,128)
  0090   NEXT Y
  0095   LET UDSKRIFT$(64,63+LEN(DAT$))=DAT$
  0100   IF X=XX*256 THEN LET UDSKRIFT$(3,7)="(###)"; UDSKRIFT$(124,128)="(###)"
  0110   IF X=XX*256 THEN PRINT USING UDSKRIFT$,XX,UD(1),UD(2),UD(3),UD(4),XX
  0120   IF X=XX*256+32 THEN PRINT USING UDSKRIFT$,UD(1),UD(2),UD(3),UD(4)
  0130   PRINT 
  0140 ENDPROC
  0150 PROC RADIX
  0160   FOR II=4+(RA=10) TO 1 STEP -1
  0170     LET RAD$(II)=CHR(RA0 MOD RA+(RA0 MOD RA>9)*7+48-16*(SP=1)*(RA0=0)); RA0=RA0 DIV RA
  0180   NEXT II
  0190 ENDPROC
  0200 PROC FIND
  0210   LET MIN=1; MAX=EA*(Ø=1)+PA*(Ø=2); MIDT=MAX*(Å>ADR(Ø,1)) DIV (2-(Å>=ADR(Ø,MAX))); JUMP=0
  0220   IF Å<=ADR(Ø,1) OR Å>=ADR(Ø,MAX) THEN GOTO 0260
  0230   WHILE ADR(Ø,MIDT)>=Å OR ADR(Ø,MIDT+1)<Å DO 
  0240     LET W=(Å>ADR(Ø,MIDT)); S=NOT W; MIN=MIN*S+MIDT*W; MAX=MAX*W+MIDT*S; MIDT=(MIN+MAX) DIV 2
  0250   ENDWHILE
  0260   IF ADR(Ø,MIDT+1)<>Å THEN GOTO 0290
  0270   READ FILE(Ø-1,MIDT+1)S,UD$
  0280   LET JUMP=1; UD$=UD$(1,5+(Ø=2)*(LEN(UD$)-5))
  0290 ENDPROC
  0300 REM MAINPROC START  LAGERUD  // CB 12.11.79
  0310 CLOSE 
  0320 PAGE=0
  0325 DIM DAT$(8)
  0330 DIM UD$(15),UDSKRIFT$(132),UDSK$(13),P$(3),T$(12,8),HJÆLP$(10),RAD$(5)
  0340 DIM CA(4),PIL(4),PIL$(4,5),POS(4),UD(4),ADR(2,280)
  0350 DEF FNB(X)=ABS(S) MOD 10^X DIV 10^(X-1)+48-16*(ABS(S) DIV 10^(X-1)=0)*(X<>1)
  0360 LET EA=279; PA=138; RAD$="     "; UDSK$="                                 "
  0370 OPEN FILE(0,4)"CO10.ENT"
  0380 OPEN FILE(1,4)"CO...PSE"
  0390 OPEN FILE(3,4)"CO...STA"
  0400 OPEN FILE(4,4)"CO...USE"
  0410 FOR S=1 TO EA
  0420   READ FILE(0,S)ADR(1,S)
  0430   IF S<=PA THEN READ FILE(1,S)ADR(2,S)
  0440   IF S<=12 THEN READ T$(S)
  0450 NEXT S
  0460 DATA " ZOC"," LRS"," SCP","BNBZDNDZ","    ",",SKP",",SZC",",SNC",",SZR",",SNR",",SEZ",",SBN"
  0465 INPUT "     DD/MM-ÅÅ<13>DATO ",DAT$
  0470 PRINT "LABLERNE VIRKER IKKE HELT ENDNU !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
  0471 INPUT "FRA SIDE : ",STS,"  TIL SIDE : ",SLS
  0480 FOR S=1 TO 4
  0490   LET POS(S)=0
  0500   REPEAT
  0510     LET POS(S)=POS(S)+1
  0520   UNTIL ADR(1,POS(S))>=STS*256+(S-1)*64
  0530   READ FILE(0,POS(S))PIL(S),PIL$(S)
  0540 NEXT S
  0550 REM«ff»

  0560 REM                                             «so»PAGE 2
  0570 FOR XX=STS TO SLS
  0580   FOR X=XX*256 TO XX*256+63
  0590     IF X MOD 32=0 THEN EXEC OVERSKRI
  0600     LET UDSKRIFT$=""
  0610     FOR Y=1 TO 4
  0620       LET ADRR=X+(Y-1)*64; JUMP=0; P$=" ! "
  0630       CALL "GMEM",ADRR,B
  0640       LET B1=B DIV 256; B2=B MOD 256; SP=0; RA=16; RA0=B
  0650       EXEC RADIX
  0660       LET UDSK$(10,13)=RAD$
  0670       IF ADRR<>PIL(Y) THEN 
  0680         LET SP=1; RA=10; RA0=B
  0690         EXEC RADIX
  0700         LET UDSK$(1,8)=CHR(ADRR MOD 100 DIV 10+48),CHR(ADRR MOD 10+48)," ",RAD$
  0710       ENDIF
  0720       WHILE ADRR=PIL(Y) DO 
  0730         LET UDSK$(1,5)=PIL$(Y); UDSK$(6,8)="   "; POS(Y)=POS(Y)+1
  0740         READ FILE(0,POS(Y))PIL(Y),PIL$(Y)
  0750       ENDWHILE
  0760       IF CA(Y) THEN 
  0770         LET Ø=1; Å=B
  0780         EXEC FIND
  0790       ENDIF
  0800       IF NOT (JUMP=0 AND CA(Y) OR B<256 OR ADRR<311) THEN GOTO 0840
  0810       LET JUMP=1; SP=(B<256 OR ADRR<311); RA=10; RA0=B
  0820       EXEC RADIX
  0830       LET UD$=RAD$
  0840       LET CA(Y)=(B=3232); Ø=2; Å=B
  0850       IF JUMP THEN GOTO 1100
  0860       EXEC FIND
  0870       IF JUMP THEN GOTO 1100
  0880       REM   ALMEN OVERSÆTTELSE
  0890       READ FILE(3,B1+1)UD$
  0900       IF UD$="FEJL" THEN GOTO 0810
  0910       IF B1>127 THEN 
  0920         LET UD$(4)=T$(1,B MOD 64 DIV 16+1); UD$(4+(UD$(4)<>" "))=T$(2,B2 DIV 64+1)
  0940         LET UD$(11,14)=T$(B MOD 8+5); UD$(6)=CHR(32+B MOD 16 DIV 8*3)
  0950       ELSE
  0960         IF B1>96 THEN 
  0970           IF UD$(1)<>"S" AND UD$(1)<>"N" THEN LET S=B2 MOD 64; UD$(4)=T$(3,B2 DIV 64+1); UD$(10,11)=CHR(FNB(2)),CHR(FNB(1))
  0980           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)
  0990           IF UD$(1)="S" OR UD$(1)="N" THEN LET UD$(8,9)=CHR(FNB(2)),CHR(FNB(1))
  1000         ELSE
  1010           LET S=B2-(B MOD 1024 DIV 256<>0)*(B2>127)*256; LS=2*(B1 DIV 32<>0)
  1020           LET UD$(8+LS,11+LS)=CHR(43+2*(S<0)),CHR(FNB(3)),CHR(FNB(2)),CHR(FNB(1))
  1030           IF B1<8 OR S<11 OR S>111 OR B MOD 1024 DIV 256<>3 OR ADRR<4012 THEN GOTO 1080
  1060           READ FILE(4,S)HJÆLP$
  1070           LET UD$(10,15)=HJÆLP$,"        "
  1080         ENDIF
  1090       ENDIF
  1100       IF B1>64 AND B1<95 THEN LET P$(1)=CHR(B1)
  1110       IF B1>64 AND B1<95 AND B2>47 AND B2<95 THEN LET P$(2)=CHR(B2)
  1120       LET UD$=UD$,"               "; UDSKRIFT$=UDSKRIFT$,UDSK$," ",UD$," ",P$
  1130     NEXT Y
  1140     PRINT UDSKRIFT$
  1150   NEXT X
  1160 NEXT XX
  1170 GOTO 0471