|
|
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: 3584 (0xe00)
Types: COMAL_SAVE
Names: »CALC«
└─⟦d85593a46⟧ Bits:30000470 DOMUS disk image - User files
└─⟦this⟧ »/CALC«
SAVE filename: "CALC"
0010 PRINT "<27><12>"
0020 DELAY = 1
0030 DIM Q1$ ( 75 ) , Q2$ ( 75 )
0040 ENTER "LGNN"
0050 PRINT
0060 LET AFBRYD = 0
0070 ON ESC THEN EXEC OUTESC
0080 OPEN FILE ( 0 , 1 ) "ANT"
0090 READ FILE ( 0 ) MQZ5 , NQZ5 , CQZ5
0095 CLOSE FILE ( 0 )
0100 DIM S$ ( MQZ5 + NQZ5 , 10 )
0110 DIM XQZ5 ( MQZ5 ) , YQZ5 ( NQZ5 )
0140 OPEN FILE ( 1 , 1 ) "PRNT"
0145 PRINT "SYMBOLER:"
0146 PRINT
0150 FOR I = 1 TO MQZ5 + NQZ5
0160 READ FILE ( 1 ) S$ ( I ) , Q1$
0165 IF S$ ( I ) = "" THEN GOTO 0175
0168 IF Q1$ = "" THEN PRINT S$ ( I )
0170 IF ( S$ ( I ) <> "" ) * ( Q1$ <> "" ) THEN PRINT S$ ( I ) ; ": " ; Q1$
0175 NEXT
0176 PRINT
0181 PRINT "FORMLER/BEREGNINGSUDTRYK:"
0182 PRINT
0183 FOR I = 1 TO NQZ5
0186 READ FILE ( 1 ) Q1$ , Q2$
0187 IF LEN ( Q2$ ) < 2 THEN LET Q2$ = " "
0188 IF Q1$ = "QWZQ" THEN LET Q1$ = "" Q2$ = Q2$ ( 2 , LEN ( Q2$ ) )
0190 PRINT "(" ; I ; ") " ; Q1$ ; Q2$
0200 NEXT
0210 CLOSE FILE ( 1 )
0220 LET AFBRYD = 1
0230 PRINT
0232 PRINT "0NSKER DU NYE BEREGNINGER PAA GRUNDLAG AF GAMLE MAALERESULTATER"
0234 INPUT "INDTAST 0. ELLERS ET VILKAARLIGT ANDET TAL." , Q
0235 PRINT
0236 IF Q = 0 THEN
0237 LET AFBRYD = 0
0238 EXEC CALC0
0240 ELSE
0245 PRINT "EFTER HVERT HELT TALSAET DU INDTASTER, VISER COMPUTEREN ET SPR0RGS-"
0250 PRINT "MAALSTEGN. TAST RETURN , HVIS DU HAR FLERE TALSAET. SKRIV "
0260 PRINT " SLET , HVIS DU HAR BEGAAET EN FEJL OG 0NSKER AT SLETTE FORE-"
0270 PRINT "GAAENDE TAELSAET. SKRIV END , HVIS DU ER FAERDIG."
0280 PRINT
0290 INPUT "NAAR DU ER PARAT, TAST RETURN." , Q1$
0295 LET AFBRYD = 0
0300 EXEC CALC
0310 LET AFBRYD = 1
0320 ENDIF
0470 PRINT
0500 CHAIN "RTAB"
0540 END «nul»
0800 PROC MODEL
0810 REM ** I LINIE 810 TIL 850«nul»
0820 REM ** SKRIVES HJAELPEFUNK-«nul»«nul»
0830 REM ** TIONERNE UNDER K0RS-«nul»«nul»
0840 REM ** LEN.«nul»R
0850 REM «nul»*
0860 REM ** I LINIE 860 TIL 940«nul»
0870 REM ** SKRIVES DIFFERENTIAL-«nul»
0880 REM ** LIGNINGERNE UNDER«nul»
0890 REM ** K0RSLEN.«nul»N
0900 REM «nul»*
0910 REM «nul»*
0920 REM «nul»*
0930 REM «nul»*
0940 REM «nul»*
0950 REM «nul»
0960 ENDPROC
1010 ON ESC THEN EXEC OUTESC
1020 ON ERR THEN EXEC OUTERR
1040 PROC CALC
1050 OPEN FILE ( 0 , 3 ) "STORE"
1090 LET CQZ5 = 0
1100 REPEAT
1110 LET CQZ5 = CQZ5 + 1
1120 FOR I = 1 TO MQZ5
1130 PRINT " " ; S$ ( I ) ; " = " ;
1135 IF I < MQZ5 THEN
1140 INPUT XQZ5 ( I ) ;
1142 ELSE
1145 INPUT XQZ5 ( I )
1148 ENDIF
1150 NEXT
1160 EXEC MODEL
1162 FOR I = 1 TO MQZ5
1164 WRITE FILE ( 0 ) XQZ5 ( I )
1166 NEXT
1170 FOR I = 1 TO NQZ5
1180 WRITE FILE ( 0 ) YQZ5 ( I )
1190 NEXT
1200 INPUT Q1$
1205 UNTIL ( Q1$ = "END" )
1210 CLOSE FILE ( 0 )
1250 OPEN FILE ( 1 , 3 ) "ANT"
1260 WRITE FILE ( 1 ) MQZ5 , NQZ5 , CQZ5
1270 CLOSE FILE ( 1 )
1300 ENDPROC
1530 CLOSE FILE ( 0 )
1540 ENDPROC
2000 PROC OUTESC
2010 ON ESC THEN EXEC OUTESC
2020 IF AFBRYD THEN
2030 PRINT
2040 PRINT "PROGRAMMET AFBRUDT"
2050 END «nul»
2060 ENDIF
2070 ENDPROC
2080 PROC OUTERR
2090 IF SYS ( 7 ) = 100 THEN GOTO 2240
2100 CLOSE
2110 DELETE "STOR2"
2120 CREATE "STOR2" , INT ( ( 2 * N + 1 ) * ( TSLUT - TSTART ) / DT / 100 + 1 )
2130 IF ( SYS ( 7 ) = 16 ) + ( SYS ( 7 ) = 34 ) THEN
2140 PRINT
2150 PRINT "DER ER OPSTAAET FEJL UNDER INTEGRATIONEN. UNDERS0G OM DINE FUNK-"
2155 PRINT "TIONER ER VELDEFINEREDE I HELE T-INTERVALLET."
2160 PRINT "AF PROGRAMTEKNISKE GRUNDE ER BEREGNINGERNE SLETTET."
2170 ENDIF
2180 IF ( SYS ( 7 ) = 17 ) + ( SYS ( 7 ) = 31 ) + ( SYS ( 7 ) = 38 ) THEN
2190 PRINT
2200 PRINT "DER ER BENYTTET ET ELLER FLERE FORKERTE UDTRYK I LIGNINGERNE."
2210 PRINT "START FORFRA OG PR0V AT FINDE FEJLEN."
2220 ENDIF
2230 END «nul»%
2240 ENDPROC
2300 PROC CALC0
2302 IF CQZ5 = 0 THEN GOTO 2520
2305 DIM ZQZ5 ( CQZ5 , NQZ5 ) , WQZ5 ( CQZ5 , MQZ5 )
2310 OPEN FILE ( 0 , 1 ) "STORE"
2320 FOR JQZ5 = 1 TO CQZ5
2330 FOR I = 1 TO MQZ5 + NQZ5
2340 READ FILE ( 0 ) A
2345 IF I <= MQZ5 THEN
2350 LET XQZ5 ( I ) = A WQZ5 ( JQZ5 , I ) = XQZ5 ( I )
2358 ENDIF
2360 NEXT
2370 EXEC MODEL
2380 FOR I = 1 TO NQZ5
2390 LET ZQZ5 ( JQZ5 , I ) = YQZ5 ( I )
2395 NEXT
2400 NEXT
2410 CLOSE FILE ( 0 )
2420 OPEN FILE ( 0 , 3 ) "STORE"
2430 FOR JQZ5 = 1 TO CQZ5
2440 FOR I = 1 TO MQZ5 + NQZ5
2450 IF I <= MQZ5 THEN
2460 WRITE FILE ( 0 ) WQZ5 ( JQZ5 , I )
2470 ELSE
2480 WRITE FILE ( 0 ) ZQZ5 ( JQZ5 , I - MQZ5 )
2489 ENDIF
2490 NEXT
2500 NEXT
2510 CLOSE FILE ( 0 )
2520 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 0x02 Q$
0x82 0xffff 0x00 N
0x83 0xffff 0x00 M
0x84 0xffff 0x00 H
0x85 0xffff 0x00 X
0x86 0xffff 0x00 DX
0x87 0xffff 0x00 D2X
0x88 0xffff 0x00 K
0x89 0xffff 0x00 L
0x8a 0xffff 0x00 I
0x8b 0xffff 0x00 PRHINT
0x8c 0xffff 0x00 TSTART
0x8d 0xffff 0x00 TSLUT
0x8e 0xffff 0x00 DT
0x8f 0xffff 0x00 T
0x90 0xffff 0x00 INTEG
0x91 0xffff 0x00 Q
0x92 0xffff 0x00 OUTESC
0x93 0xffff 0x00 OUTERR
0x94 0xffff 0x00 CLSE
0x95 0xffff 0x00 PN
0x96 0xffff 0x00 LIIS
0x97 0xffff 0x00 MODEL
0x98 0xffff 0x00 AFBRYD
0x99 0xffff 0x00 LIST400
0x9a 0xffff 0x00 LISS
0x9b 0xffff 0x02 S$
0x9c 0xffff 0x02 B$
0x9d 0xffff 0x02 F$
0x9e 0xffff 0x00 R
0x9f 0xffff 0x00 CALC
0xa0 0xffff 0x00 COUNT
0xa1 0xffff 0x00 Y
0xa2 0xffff 0x02 Q1$
0xa3 0xffff 0x02 Q2$
0xa4 0xffff 0x00 XQZ5
0xa5 0xffff 0x00 YQZ5
0xa6 0xffff 0x00 S4
0xa7 0xffff 0x00 MQZ5
0xa8 0xffff 0x00 NQZ5
0xa9 0xffff 0x00 CQZ5
0xaa 0xffff 0x00 NQZW
0xab 0xffff 0x00 CALC0
0xac 0xffff 0x00 ZQZ5
0xad 0xffff 0x00 JQZ5
0xae 0xffff 0x00 A
0xaf 0xffff 0x00 J
0xb0 0xffff 0x00 WQZ5
.magic = 0x4e32 .u_pas = 0x056a // Length of UPAS in words .u_das = 0x015d // Length of UDAS in words .u_dvs = 0x015d // 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)