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

⟦e61ddd4c7⟧ COMAL_SAVE

    Length: 1630 (0x65e)
    Types: COMAL_SAVE

Derivation

└─⟦d85593a46⟧ Bits:30000470 DOMUS disk image - User files
    └─ ⟦ada597483⟧ »/STORM.AKSPI« 
        └─⟦this⟧ 

UPAS Segment

SAVE filename: "AKSPI"

 0010 REM  ALLAN KRISTIANSEN«nul»
 0020 REM  SPIL"PERISKOP"«nul»
 0030 PRINT "<27><12>"
 0040 DELAY = 1
 0050 PRINT "<10><10><10><10><10><10>"
 0060 PRINT "====================================================="
 0070 PRINT "== DU SKAL FORSØGE AT RAMME RUMSKIBET<7><7> VED AT:<7>      =="
 0080 PRINT "== RAMME DETTE TEGN(.) MED DE TO VECTORER<7><7><7>          =="
 0090 PRINT "== HVIS DU RAMMER,VIL DU HØRE EN LYD OG SAMTIDIG   =="
 0100 PRINT "== VIL DER BLIVE SLÆTTET SKÆRMMEN OG UDSKREVET     =="
 0110 PRINT "== ANTAL RRAMTE                                   <7><7><7><7><7><7><7><7><7><7><7><7> =="
 0120 PRINT "====================================================="
 0130 DELAY = 3
 0140 LET OMG = 0 ; RAMTT = 0
 0150 PRINT "<27><12>"
 0160 DELAY = 1
 0170 DIM A$ ( 5 )
 0180 LET M1 = INT ( RND ( 0 ) * 700 ) + 1 ; M2 = INT ( RND ( 0 ) * 800 ) + 1
 0190 CALL "GRAPH" , M1 - 5 , M2 - 1
 0200 CALL "ALPHA"
 0210 PRINT "."
 0220 LET OMG = OMG + 1
 0230 INPUT "<27><26>" , A$
 0240 LET X = ( ORD ( A$ ( 2 ) ) - 33 ) * 32 + ORD ( A$ ( 3 ) )
 0250 LET Y = ( ORD ( A$ ( 4 ) ) - 33 ) * 32 + ORD ( A$ ( 5 ) )
 0260 PRINT M1 ; X ; M2 ; Y
 0270 DELAY = 3
 0280 CALL "ALPHA"
 0290 IF M1 = X AND M2 = Y THEN
 0300   PRINT "RAMT<7><7><7><7><7><7><7><7><7><7><7><7><7><7><7><7><7><7><7><7><7><7><7><7><7><7><7><7><7>"
 0310   DELAY = 1
 0320   PRINT "<27><12>"
 0330   CALL "GRAPH" , 10 , 2
 0340   CALL "ALPHA"
 0350   LET RAMT = RAMT + 1
 0360   DELAY = 1
 0370   PRINT "ANT.SKUD:" ; OMG ; " ANT.RAMTE:" ; RAMT ; " %:" ; RAMT / OMG * 100
 0380 ENDIF 
 0390 GOTO 0180

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# = 0x0081
      Loop Top = 0x004e
      To Val = 1000   (0x433e8000)
      Step Val = 2   (0x41200000)
      Var# = 0x0084
      Loop Top = 0x0067
      To Val = 100   (0x42640000)
      Step Val = 1   (0x41100000)
      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 0xffff 0x00 
    0x81 0x000e 0x00 X
    0x82 0xffff 0x00 B
    0x83 0x0004 0x02 A$
    0x84 0xffff 0x00 I
    0x85 0x000a 0x00 M1
    0x86 0x000c 0x00 M2
    0x87 0x0010 0x00 Y
    0x88 0xffff 0x00 XX
    0x89 0xffff 0x00 YY
    0x8a 0x0012 0x00 RAMT
    0x8b 0x0000 0x00 OMG
    0x8c 0x0002 0x00 RAMTT
    0x8d 0xffff 0x00 ANT
    0x8e 0xffff 0x00 S
    0x8f 0xffff 0x00 LISTT
    0x90 0xffff 0x00 REUMBER

Wrapper

.magic = 0x4e32
.u_pas = 0x024f  // Length of UPAS in words
.u_das = 0x00d1  // Length of UDAS in words
.u_dvs = 0x00bd  // Start på savede variabel indhold (word adr)
.u_nds = 0x01a7  // Address på næste prog.sætning (word adr)
.u_cps = 0x01a1  // 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 = 0x2d98  // 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)