|
|
DataMuseum.dkPresents historical artifacts from the history of: RegneCentralen RC3600/RC7000 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about RegneCentralen RC3600/RC7000 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 2560 (0xa00)
Types: COMAL_SAVE
Names: »RTAB«
└─⟦d85593a46⟧ Bits:30000470 DOMUS disk image - User files
└─⟦this⟧ »/RTAB«
SAVE filename: "RTAB"
0010 PRINT "<27><12>"
0020 DELAY = 1
0025 DIM Q$ ( 100 )
0030 OPEN FILE ( 0 , 1 ) "ANT"
0040 READ FILE ( 0 ) M , N , COUNT
0050 CLOSE FILE ( 0 )
0060 DIM S1$ ( M + N , 10 ) , B$ ( M + N , 75 ) , S2$ ( N , 10 ) , F$ ( N , 75 )
0070 OPEN FILE ( 1 , 1 ) "PRNT"
0080 FOR I = 1 TO M + N
0090 READ FILE ( 1 ) S1$ ( I ) , B$ ( I )
0100 NEXT
0110 FOR I = 1 TO N
0120 READ FILE ( 1 ) S2$ ( I ) , F$ ( I )
0130 NEXT
0140 CLOSE FILE ( 1 )
0150 DIM BC ( N )
0160 PRINT "ANF0R ANTALLET AF 0NSKEDE BETYDENDE CIFRE (MELLEM 1 OG 5)"
0165 PRINT
0170 FOR I = 1 TO N
0172 IF S2$ ( I ) = "QWZQ" THEN
0173 LET Q$ = F$ ( I )
0175 LET S2$ ( I ) = Q$ ( 2 , LEN ( Q$ ) ) F$ ( I ) = ""
0178 ENDIF
0180 PRINT " I " ; S2$ ( I ) ,
0190 INPUT BC ( I )
0195 LET BC ( I ) = INT ( BC ( I ) )
0200 IF ( BC ( I ) < 1 ) + ( BC ( I ) > 5 ) THEN GOTO 0190
0210 NEXT
0220 PRINT "<27><12>"
0230 DELAY = 1
0240 PRINT
0250 PRINT
0260 PRINT "SYMBOLLISTE:"
0280 PRINT
0290 FOR I = 1 TO M + N
0292 IF S1$ ( I ) = "" THEN GOTO 0310
0295 IF B$ ( I ) = "" THEN PRINT S1$ ( I )
0300 IF ( S1$ ( I ) <> "" ) * ( B$ ( I ) <> "" ) THEN PRINT S1$ ( I ) ; ": " ; B$ ( I )
0310 NEXT
0320 PRINT
0330 PRINT
0340 PRINT "ANVENDTE FORMLER:"
0360 PRINT
0362 LET J = 1
0370 FOR I = 1 TO N
0372 IF F$ ( I ) = "" THEN GOTO 0390
0380 PRINT "(" ; J ; ") " ; S2$ ( I ) ; F$ ( I )
0382 LET J = J + 1
0390 NEXT
0410 PRINT
0420 PRINT
0421 OPEN FILE ( 0 , 1 ) "STORE"
0425 LET C0 = 1
0430 LET C1 = M * ( M <= 5 ) + 5 * ( M > 5 )
0440 LET C2 = ( M + N ) * ( M + N <= 5 ) + 5 * ( M + N > 5 )
0450 EXEC TABEL
0452 CLOSE FILE ( 0 )
0460 IF C2 = M + N THEN GOTO 0700
0462 PRINT
0463 PRINT
0464 PRINT
0465 OPEN FILE ( 0 , 1 ) "STORE"
0470 LET C0 = 6
0480 LET C1 = 5 * ( M <= 5 ) + M * ( M > 5 )
0490 LET C2 = ( M + N ) * ( M + N <= 10 ) + 10 * ( M + N > 10 )
0500 EXEC TABEL
0502 CLOSE FILE ( 0 )
0510 IF C2 = M + N THEN GOTO 0700
0512 PRINT
0513 PRINT
0514 PRINT
0515 OPEN FILE ( 0 , 1 ) "STORE"
0520 LET C0 = 11 C1 = 10 C2 = M + N
0530 EXEC TABEL
0540 CLOSE FILE ( 0 )
0700 END «nul»
1000 PROC TABEL
1010 FOR I = C0 TO C1
1020 IF ( I <> 5 ) * ( I <> 10 ) * ( I <> 15 ) THEN PRINT " " ; S1$ ( I ) ,
1030 IF ( I = 5 ) + ( I = 10 ) + ( I = 15 ) THEN PRINT " " ; S1$ ( I )
1040 NEXT
1050 FOR I = ( C1 - M ) * ( C1 > M ) + 1 TO C2 - M
1052 LET Q$ = S2$ ( I )
1055 IF Q$ ( 1 ) = "=" THEN LET S2$ ( I ) = Q$ ( 2 , LEN ( Q$ ) )
1060 IF I < C2 - M THEN PRINT " " ; S2$ ( I ) ,
1070 IF I = C2 - M THEN PRINT " " ; S2$ ( I )
1080 NEXT
1090 PRINT
1100 FOR I = 1 TO COUNT
1110 FOR J = 1 TO M + N
1115 READ FILE ( 0 ) X
1120 IF ( J >= C0 ) * ( J <= C1 ) THEN PRINT X ,
1130 IF ( J > C1 ) * ( J <= C2 ) THEN EXEC AFRND
1140 NEXT
1150 NEXT
1160 ENDPROC
1500 PROC AFRND
1505 LET P = 0
1510 IF X >= 0.1 THEN
1520 WHILE X >= 1 DO
1530 LET X = X / 10
1540 LET P = P + 1
1550 ENDWHILE
1600 ELSE
1605 IF X = 0 THEN GOTO 1645
1610 WHILE X < 0.1 DO
1620 LET X = X * 10
1630 LET P = P - 1
1640 ENDWHILE
1645 ENDIF
1650 LET X1 = X * 10 ^ BC ( J - M )
1660 LET X1 = X1 + ( X1 - INT ( X1 ) >= 0.5 )
1670 LET X1 = INT ( X1 )
1680 LET X = X1 * 10 ^ P / 10 ^ BC ( J - M )
1690 IF J < C2 THEN PRINT X ,
1700 IF J = C2 THEN PRINT X
1710 ENDPROC
FNA definition = 0xffff
FNB definition = 0xffff
FNC definition = 0xffff
FND definition = 0xffff
FNE definition = 0xffff
FNF definition = 0xffff
FNG definition = 0xffff
FNH definition = 0xffff
FNI definition = 0xffff
FNJ definition = 0xffff
FNK definition = 0xffff
FNL definition = 0xffff
FNM definition = 0xffff
FNN definition = 0xffff
FNO definition = 0xffff
FNP definition = 0xffff
FNQ definition = 0xffff
FNR definition = 0xffff
FNS definition = 0xffff
FNT definition = 0xffff
FNU definition = 0xffff
FNV definition = 0xffff
FNW definition = 0xffff
FNX definition = 0xffff
FNY definition = 0xffff
FNZ definition = 0xffff
FN[ definition = 0xffff
FN\ definition = 0xffff
FN] definition = 0xffff
GOSUB-RETURN stack pointer = 0x0000
stack[0] = 0x0000
stack[1] = 0x0000
stack[2] = 0x0000
stack[3] = 0x0000
stack[4] = 0x0000
stack[5] = 0x0000
stack[6] = 0x0000
FOR-NEXT stack pointer = 0x0000
Var# = 0x0000
Loop Top = 0x0000
To Val = 0 (0x00000000)
Step Val = 0 (0x00000000)
Var# = 0x0000
Loop Top = 0x0000
To Val = 0 (0x00000000)
Step Val = 0 (0x00000000)
Var# = 0x0000
Loop Top = 0x0000
To Val = 0 (0x00000000)
Step Val = 0 (0x00000000)
Var# = 0x0000
Loop Top = 0x0000
To Val = 0 (0x00000000)
Step Val = 0 (0x00000000)
Var# = 0x0000
Loop Top = 0x0000
To Val = 0 (0x00000000)
Step Val = 0 (0x00000000)
Var# = 0x0000
Loop Top = 0x0000
To Val = 0 (0x00000000)
Step Val = 0 (0x00000000)
Var# = 0x0000
Loop Top = 0x0000
To Val = 0 (0x00000000)
Step Val = 0 (0x00000000)
REPEAT-UNTIL stack pointer = 0x0000
stack[0] = 0x0000
stack[1] = 0x0000
stack[2] = 0x0000
stack[3] = 0x0000
stack[4] = 0x0000
stack[5] = 0x0000
stack[6] = 0x0000
WHILE-ENDWHILE stack pointer = 0x0000
stack[0] = 0x0000
stack[1] = 0x0000
stack[2] = 0x0000
stack[3] = 0x0000
stack[4] = 0x0000
stack[5] = 0x0000
stack[6] = 0x0000
IF-ELSE stack pointer = 0x0000
stack[0] = 0x0000
stack[1] = 0x0000
stack[2] = 0x0000
stack[3] = 0x0000
stack[4] = 0x0000
stack[5] = 0x0000
stack[6] = 0x0000
Variables:
0x80 0x0000 0x00
0x81 0xffff 0x00 M
0x82 0xffff 0x00 N
0x83 0xffff 0x00 COUNT
0x84 0xffff 0x02 S1$
0x85 0xffff 0x02 B1$
0x86 0xffff 0x02 S2$
0x87 0xffff 0x02 B$
0x88 0xffff 0x02 F$
0x89 0xffff 0x00 I
0x8a 0xffff 0x00 X
0x8b 0xffff 0x00 Y
0x8c 0xffff 0x00 BC
0x8d 0xffff 0x00 DLAY
0x8e 0xffff 0x00 C
0x8f 0xffff 0x00 J
0x90 0xffff 0x00 C1
0x91 0xffff 0x00 C2
0x92 0xffff 0x00 TABEL
0x93 0xffff 0x00 THN
0x94 0xffff 0x00 C0
0x95 0xffff 0x00 TH
0x96 0xffff 0x00 AFRND
0x97 0xffff 0x00 WEHILE
0x98 0xffff 0x00 X1
0x99 0xffff 0x00 P
0x9a 0xffff 0x00 LI400
0x9b 0xffff 0x02 Q$
.magic = 0x4e32 .u_pas = 0x03ed // Length of UPAS in words .u_das = 0x00f4 // Length of UDAS in words .u_dvs = 0x00f4 // Start på savede variabel indhold (word adr) .u_nds = 0x0000 // Address på næste prog.sætning (word adr) .u_cps = 0x0000 // Address på curr prog.sætning (word adr) .u_tll = 0x0048 // Page størrelse .u_tts = 0x000e // TAP størrelse .u_ran = 0x0001 // Random tal .u_cdl = 0x0006 // Current DATA sætning ptr .u_cdb = 0x0000 // Current DATA byte ptr .u_esa = 0x0042 // ON ESE (word adr) .u_era = 0x0000 // ON ERR (word adr) .u_cas = 0xffff // CASE dybde .u_las = 0xffff // last (-1)