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

⟦1a4edcab3⟧ COMAL_SAVE

    Length: 2320 (0x910)
    Types: COMAL_SAVE

Derivation

└─⟦d85593a46⟧ Bits:30000470 DOMUS disk image - User files
    └─ ⟦7405001df⟧ »/LIB.NTAB2« 
        └─⟦this⟧ 

UPAS Segment

SAVE filename: "NTAB2"

 0005 DIM Q$ ( 150 )
 0010 PRINT "<27><12>"
 0020 DELAY = 1
 0050 OPEN FILE ( 0 , 1 ) "DIM2"
 0060 READ FILE ( 0 ) N , M
 0070 CLOSE FILE ( 0 )
 0080 DIM X ( N ) , DX ( N )
 0090 INPUT "HVOR MANGE FUNKTIONER 0NSKES TABELLAGT? MAX ANTAL 5. " , NT
 0120 LET NT = INT ( NT )
 0130 IF ( NT < 1 ) * ( NT > 5 ) THEN GOTO 0090
 0135 DIM F$ ( NT , 150 ) , F ( NT )
 0140 FOR I = 1 TO NT
 0150   PRINT "FUNKTION NR " ; I ;
 0160   INPUT F$ ( I )
 0170 NEXT 
 0180 PRINT "0NSKES DER RETTET I OVENSTAAENDE, INDTAST 0. ELLERS ET VIL-"
 0190 INPUT "KAARLIGT ANDET TAL." , Q
 0200 IF Q = 0 THEN EXEC RETTE
 0210 CREATE "TABEL" , 1
 0220 OPEN FILE ( 0 , 3 ) "TABEL"
 0225 EXEC FILWORK
 0228 RESTORE 0000
 0230 FOR I = 1 TO NT
 0235   READ LNUM$ , I$
 0240   WRITE FILE ( 0 ) LNUM$ , "LET F(" , I$ , ")=" , F$ ( I ) , "<13><10>"
 0250 NEXT 
 0260 CLOSE FILE ( 0 )
 0265 ENTER "TABEL"
 0270 DELETE "TABEL"
 0280 EXEC TABEL
 0290 GOTO 2000
 0400 PROC MODEL
 0410   REM «nul»
 0420   REM «nul»
 0430   REM «nul»
 0440   REM «nul»
 0510 ENDPROC
 0565 PROC TABEL
 0567   PRINT "<27><12>"
 0568   DELAY = 1
 0570   OPEN FILE ( 0 , 1 ) "STOR2"
 0571   READ FILE ( 0 ) TSLUT , TSTART
 0572   FOR I = 1 TO N
 0575     READ FILE ( 0 ) X ( I ) , DX ( I )
 0577   NEXT 
 0583   READ FILE ( 0 ) T
 0585   LET DT = T - TSTART
 0590   CLOSE FILE ( 0 )
 0595   PRINT "MED HVOR STORE SPRING I T 0NSKES RESULTATERNE ANF0RT?"
 0598   INPUT DELTA
 0600   LET DELTA = DELTA * ( DELTA >= DT ) + DT * ( DELTA < DT )
 0602   OPEN FILE ( 0 , 1 ) "PRNT2"
 0604   FOR I = 1 TO N
 0606     READ FILE ( 0 ) Q$
 0607     PRINT "D2X(" ; I ; ")=" ; Q$
 0608   NEXT 
 0610   CLOSE FILE ( 0 )
 0612   PRINT
 0615   FOR I = 1 TO NT
 0620     PRINT " " ; F$ ( I ) ,
 0630   NEXT 
 0640   PRINT
 0650   OPEN FILE ( 0 , 1 ) "STOR2"
 0655   LET T1 = TSTART
 0660   READ FILE ( 0 ) TSLUT
 0665   REPEAT 
 0668     READ FILE ( 0 ) T
 0670     FOR I = 1 TO N
 0680       READ FILE ( 0 ) X ( I ) , DX ( I )
 0690     NEXT 
 0700     EXEC MODEL
 0705     IF ( T >= T1 ) * ( T < T1 + DT ) THEN
 0708       LET T1 = T1 + DELTA
 0710       FOR I = 1 TO NT
 0715         IF I < NT THEN
 0720           PRINT "--.###^^^^" , F ( I ) ,
 0725         ELSE 
 0727           PRINT "--.###^^^^" , F ( I )
 0728         ENDIF 
 0730       NEXT 
 0732     ENDIF 
 0735   UNTIL T >= TSLUT
 0738   CLOSE FILE ( 0 )
 0740 ENDPROC
 1500 PROC FILWORK
 1510   DATA "410" , "1" , "420" , "2" , "430" , "3" , "440" , "4" , "450" , "5"
 1520   DIM LNUM$ ( 3 ) , I$ ( 1 )
 1530 ENDPROC
 2000 PRINT
 2005 PRINT
 2010 PRINT "DU HAR F0LGNENDE VALGMULIGHEDER (INDTAST TALLET):"
 2030 PRINT "1= SAMME TABEL, MEN MED NYT INTERVAL."
 2040 PRINT "2= NY TABEL PAA GRUNDLAG AF SAMME INTEGRATION."
 2050 PRINT "3= GRAFISK UNDERS0GELSE AF SAMME INTEGRATION."
 2060 PRINT "4= NY INTEGRATION MED NUVAERENDE ELLER NYE LIGNINGER."
 2070 INPUT Q
 2080 CASE Q OF
 2090 WHEN 1
 2100   EXEC TABEL
 2110 WHEN 2
 2120   CHAIN "NTAB2"
 2130 WHEN 3
 2140   CHAIN "NGRF2"
 2150 WHEN 4
 2160   CHAIN "NDIF2" THEN GOTO 0300
 2170 ENDCASE «nul» 
 2180 GOTO 2000

UDAS Segment

    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 X
    0x85 0xffff 0x00 DX
    0x86 0xffff 0x00 NT
    0x87 0xffff 0x02 F$
    0x88 0xffff 0x00 F
    0x89 0xffff 0x00 I
    0x8a 0xffff 0x00 Q
    0x8b 0xffff 0x00 RETTE
    0x8c 0xffff 0x00 FILWORK
    0x8d 0xffff 0x02 LNUM$
    0x8e 0xffff 0x02 I$
    0x8f 0xffff 0x00 TABEL
    0x90 0xffff 0x00 MODEL
    0x91 0xffff 0x00 TSLUT
    0x92 0xffff 0x00 TSTART
    0x93 0xffff 0x00 T
    0x94 0xffff 0x00 DT
    0x95 0xffff 0x00 DELTA
    0x96 0xffff 0x00 T1
    0x97 0xffff 0x00 OPEEN

Wrapper

.magic = 0x4e32
.u_pas = 0x0399  // Length of UPAS in words
.u_das = 0x00e0  // Length of UDAS in words
.u_dvs = 0x00e0  // 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)