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

⟦ffcc520b6⟧ COMAL_SAVE

    Length: 2214 (0x8a6)
    Types: COMAL_SAVE

Derivation

└─⟦d85593a46⟧ Bits:30000470 DOMUS disk image - User files
    └─ ⟦7d180e417⟧ »/SPACE.TERNI« 
        └─⟦this⟧ 

UPAS Segment

SAVE filename: "TERNI"

 0010 LET AB = 0 ; AC = 0 ; N = 1
 0020 DIM SV$ ( 3 ) , AB$ ( 10 ) , AC$ ( 10 ) , G$ ( 8 )
 0030 DIM HH$ ( 1 )
 0040 LET X = 0 ; Y = 0
 0050 PRINT "==================="
 0060 PRINT "***** TERNING *****"
 0070 PRINT "==================="
 0080 PRINT "<10><10><10>"
 0090 INPUT "          1.SPILLER : " , AB$
 0100 PRINT
 0110 INPUT "          2.SPILLER : " , AC$
 0120 PRINT "<10><10><10>"
 0130 PRINT AB$ ; ", DIN TUR" ;
 0140 INPUT " " , HH$
 0150 RANDOMIZE 
 0160 DEF FNK ( VAR8e ) = INT ( RND ( 6 ) * 30 + 1 )
 0170 GOTO 0200
 0180 PRINT AB$ ; ", DIN TUR" ;
 0190 INPUT " " , HH$
 0200 LET A = FNK ( N )
 0210 LET B = FNK ( N )
 0220 LET C = FNK ( N )
 0230 IF A < 5 THEN GOTO 0200
 0240 IF B < 5 THEN GOTO 0200
 0250 IF C < 5 THEN GOTO 0200
 0260 LET R = A + B + C ; X = X + R
 0270 PRINT "1.KAST" , "2.KAST" , "3.KAST"
 0280 PRINT A , B , C
 0290 PRINT
 0300 PRINT AC$ ; ", DIN TUR" ;
 0310 INPUT " " , HH$
 0320 LET D = FNK ( N )
 0330 LET E = FNK ( N )
 0340 LET F = FNK ( N )
 0350 IF D < 5 THEN GOTO 0320
 0360 IF E < 5 THEN GOTO 0320
 0370 IF F < 5 THEN GOTO 0320
 0380 LET S = D + E + F ; Y = Y + S
 0390 PRINT "1.KAST" , "2.KAST" , "3.KAST"
 0400 PRINT D , E , F
 0410 PRINT "----------------------------------"
 0420 PRINT "<10><10><10><10>"
 0430 PRINT "=================================="
 0440 PRINT "STILLINGEN ER:" ;
 0450 PRINT "  " ; AB$ ; " " ; X , AC$ ; " " ; Y
 0460 PRINT "=================================="
 0470 PRINT "<10><10><10><10>"
 0480 IF X / 25 = INT ( X / 25 ) AND X <= 1000 THEN LET X = 0
 0490 IF Y / 25 = INT ( Y / 25 ) AND Y <= 1000 THEN LET Y = 0
 0500 IF X = 0 OR Y = 0 THEN GOSUB 0700
 0510 PRINT
 0520 IF X >= 1001 AND Y >= 1001 THEN GOTO 0600
 0530 IF X >= 1001 THEN GOTO 0560
 0540 IF Y >= 1001 THEN GOTO 0580
 0550 GOTO 0180
 0560 PRINT AB$ ; " HAR VUNDET OVER " ; AC$
 0565 LET AB = AB + 1
 0570 GOTO 0630
 0580 PRINT AC$ ; " HAR VUNDET OVER " ; AB$
 0585 LET AC = AC + 1
 0590 GOTO 0630
 0600 LET G$ = "UAFGJORT"
 0610 PRINT CHR ( 12 )
 0620 PRINT TAB ( 20 ) ; G$
 0630 PRINT "=================================="
 0640 PRINT "SAMLET STILLINNG :" ; AB$ ; " : " ; AB , AC$ ; " : " ; AC
 0645 PRINT "=================================="
 0647 PRINT "<10><10>"
 0650 LET X = 0 ; Y = 0
 0660 INPUT " VIL I PRØVE IGEN J/N :" , SV$
 0670 IF SV$ = "J" THEN GOTO 0130
 0680 IF SV$ = "N" THEN STOP «nul» 
 0690 GOTO 0630
 0700 FOR BEP = 1 TO 25
 0710   PRINT "<7>"
 0720 NEXT 
 0730 RETURN «nul»

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 = 0x00d8
    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] = 0x0238
      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# = 0x0092
      Loop Top = 0x0319
      To Val = 25   (0x42190000)
      Step Val = 1   (0x41100000)
      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 0xffff 0x00 
    0x81 0x000b 0x02 AB$
    0x82 0x0013 0x02 AC$
    0x83 0x002a 0x00 A
    0x84 0x0004 0x00 N
    0x85 0x002c 0x00 B
    0x86 0x002e 0x00 C
    0x87 0x0030 0x00 R
    0x88 0x0026 0x00 X
    0x89 0xffff 0x00 HH
    0x8a 0x0032 0x00 D
    0x8b 0x0034 0x00 E
    0x8c 0x0036 0x00 F
    0x8d 0x0038 0x00 S
    0x8e 0x0028 0x00 Y
    0x8f 0x001b 0x02 G$
    0x90 0x0006 0x02 SV$
    0x91 0xffff 0x00 BEEP
    0x92 0x003a 0x00 BEP
    0x93 0xffff 0x00 RUH
    0x94 0x0022 0x02 HH$
    0x95 0x0000 0x00 AB
    0x96 0x0002 0x00 AC

Wrapper

.magic = 0x4e32
.u_pas = 0x032d  // Length of UPAS in words
.u_das = 0x0117  // Length of UDAS in words
.u_dvs = 0x00db  // Start på savede variabel indhold (word adr)
.u_nds = 0x0315  // Address på næste prog.sætning (word adr)
.u_cps = 0x030f  // 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 = 0xc922  // 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)