|
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: 4096 (0x1000) Types: COMAL_SAVE Names: »INT2«
└─⟦d85593a46⟧ Bits:30000470 DOMUS disk image - User files └─⟦this⟧ »/LIB.INT2«
SAVE filename: "INT2" 0010 PRINT "<27><12>" 0020 DELAY = 1 0030 DIM Q$ ( 150 ) 0040 ENTER "LGNN2" 0050 PRINT 0060 LET AFBRYD = 0 0070 ON ESC THEN EXEC OUTESC 0080 OPEN FILE ( 0 , 1 ) "DIM2" 0090 READ FILE ( 0 ) N , M 0100 CLOSE FILE ( 0 ) 0110 DIM H ( M + ( M = 0 ) ) 0120 DIM X ( N ) , DX ( N ) , D2X ( N ) 0130 DIM K ( 4 , N ) , L ( 4 , N ) 0140 OPEN FILE ( 1 , 1 ) "PRNT2" 0150 FOR I = 1 TO M + N 0160 READ FILE ( 1 ) Q$ 0170 IF I <= M THEN PRINT "H(" ; I ; ")=" ; Q$ 0180 IF I = M THEN PRINT 0190 IF I > M THEN PRINT "D2X(" ; I - M ; ")=" ; Q$ 0200 NEXT 0210 CLOSE FILE ( 1 ) 0220 LET AFBRYD = 1 0230 PRINT 0240 PRINT "INDTAST BEGYNDELSESVAERDIER:" 0250 PRINT 0260 FOR I = 1 TO N 0270 PRINT "X(" ; I ; ")=" ; 0280 INPUT X ( I ) ; 0290 PRINT " DX(" ; I ; ")=" ; 0300 INPUT DX ( I ) 0310 NEXT 0320 PRINT 0330 INPUT "BEGYNDELSESVAERDIEN FOR T= " , TSTART 0340 INPUT "SLUTVAERDIEN FOR T= " , TSLUT 0350 IF TSLUT <= TSTART THEN GOTO 0340 0360 PRINT 0370 INPUT "STEPLAENGDE VED INTEGRATIONEN= " , DT 0380 IF DT <= 0 THEN GOTO 0370 0390 LET T = TSTART 0400 PRINT 0410 PRINT "VED TRYK PAA RETURN GAAR INTEGRATIONEN IGANG. MAN B0R IKKE S0GE" 0420 INPUT "AT AFBRYDE DEN UNDERVEJS. FORTRYDER DU, TRYK ESCAPE NU." , Q$ 0430 LET AFBRYD = 0 0440 PRINT "INTEGRATIONEN ER IGANG." 0450 EXEC INTEG 0460 LET AFBRYD = 1 0470 PRINT 0480 PRINT "INTEGRATIONEN ER SLUT" 0490 PRINT "0NSKER DU RESULTATERNE UNDERS0GT GRAFISK, INDTAST 1." 0500 PRINT "0NSKER DU RESULTATERNE TABELLAGT, INDTAST 2." 0510 INPUT Q 0520 IF Q = 1 THEN CHAIN "NGRF2" 0530 IF Q = 2 THEN CHAIN "NTAB2" 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 ENDPROC 1000 PROC INTEG 1010 ON ESC THEN EXEC OUTESC 1020 ON ERR THEN EXEC OUTERR 1030 DELETE "STOR2" 1040 CREATE "STOR2" , INT ( ( 2 * N + 1 ) * ( TSLUT - TSTART ) / DT / 100 + 1 ) 1050 OPEN FILE ( 0 , 3 ) "STOR2" 1060 WRITE FILE ( 0 ) TSLUT , TSTART 1070 FOR I = 1 TO N 1080 WRITE FILE ( 0 ) X ( I ) , DX ( I ) 1090 NEXT 1095 REPEAT 1100 EXEC MODEL 1110 FOR I = 1 TO N 1120 LET K ( 1 , I ) = D2X ( I ) 1130 LET L ( 1 , I ) = DX ( I ) 1140 NEXT 1150 LET T = T + DT / 2 1160 FOR I = 1 TO N 1170 LET DX ( I ) = DX ( I ) + K ( 1 , I ) * DT / 2 1180 LET X ( I ) = X ( I ) + L ( 1 , I ) * DT / 2 1190 NEXT 1200 EXEC MODEL 1210 FOR I = 1 TO N 1220 LET K ( 2 , I ) = D2X ( I ) 1230 LET L ( 2 , I ) = DX ( I ) 1240 NEXT 1250 FOR I = 1 TO N 1260 LET DX ( I ) = DX ( I ) - K ( 1 , I ) * DT / 2 + K ( 2 , I ) * DT / 2 1270 LET X ( I ) = X ( I ) - L ( 1 , I ) * DT / 2 + L ( 2 , I ) * DT / 2 1280 NEXT 1290 EXEC MODEL 1300 FOR I = 1 TO N 1310 LET K ( 3 , I ) = D2X ( I ) 1320 LET L ( 3 , I ) = DX ( I ) 1330 NEXT 1340 LET T = T + DT / 2 1350 FOR I = 1 TO N 1360 LET DX ( I ) = DX ( I ) - K ( 2 , I ) * DT / 2 + K ( 3 , I ) * DT 1370 LET X ( I ) = X ( I ) - L ( 2 , I ) * DT / 2 + L ( 3 , I ) * DT 1380 NEXT 1390 EXEC MODEL 1400 FOR I = 1 TO N 1410 LET K ( 4 , I ) = D2X ( I ) 1420 LET L ( 4 , I ) = DX ( I ) 1430 NEXT 1440 FOR I = 1 TO N 1450 LET DX ( I ) = DX ( I ) + ( K ( 1 , I ) / 6 + K ( 2 , I ) / 3 - K ( 3 , I ) * 2 / 3 + K ( 4 , I ) / 6 ) * DT 1460 LET X ( I ) = X ( I ) + ( L ( 1 , I ) / 6 + L ( 2 , I ) / 3 - L ( 3 , I ) * 2 / 3 + L ( 4 , I ) / 6 ) * DT 1470 NEXT 1480 WRITE FILE ( 0 ) T 1490 FOR I = 1 TO N 1500 WRITE FILE ( 0 ) X ( I ) , DX ( I ) 1510 NEXT 1520 UNTIL T >= TSLUT 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
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
.magic = 0x4e32 .u_pas = 0x062d // Length of UPAS in words .u_das = 0x00ef // Length of UDAS in words .u_dvs = 0x00ef // 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)