|
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 - download
Length: 2264 (0x8d8) Types: COMAL_SAVE Notes: ASS2::LOOKUPMT, LOOKUPMT Names: »LOOKUPMT«
└─⟦714f3848e⟧ Bits:30006597 ALM Copy 24.9.79 └─⟦this⟧
SAVE filename: "LOOKUPMT" 0010 REM AUTOLOOKUP PÅ LD FØRSTE REM-TEXT KOMMER MED UD «so»«so» V. JM«nul» 0020 CLOSE 0030 PAGE = 0 0040 DEF FNB ( VAR82 ) = I$ ( [LVAR] ) = " " 0050 DIM A$ ( 500 ) , I$ ( 32 ) , RAN ( 32 ) , UD ( 4 ) 0060 INPUT "LD " , A$ , "<27><12>" , I$ 0070 CONNECT A$ 0080 PRINT "<14> DETTE ER EN LOOKUP PÅ " ; A$ ; "<10><10>" 0090 OPEN FILE ( 7 , 9 ) "LPT" 0100 INPUT FILE ( 7 ) I$ , I$ , I$ , I$ , I$ 0110 WHILE I$ ( 1 , 8 ) <> "$FREE " DO 0120 EXEC UD 0130 INPUT FILE ( 7 ) I$ 0140 ENDWHILE 0150 PRINT "<10><13>" ; I$ 0160 CLOSE 0170 STOP «nul» 0180 PROC UD 0190 PRINT "<10><13>" ; I$ ; " " ; 0200 IF I$ ( 1 , 8 ) = "LPT " THEN RETURN «nul» 0210 LET A$ = I$ ( 1 , 8 - FNB ( 8 ) - FNB ( 7 ) - FNB ( 6 ) - FNB ( 5 ) - FNB ( 4 ) - FNB ( 3 ) - FNB ( 2 ) - FNB ( 1 ) ) 0220 OPEN FILE ( 1 , 1 + 3 * ( I$ ( 10 ) = "R" ) ) A$ 0230 MAT RAN = ZER 0240 IF I$ ( 10 ) = "R" THEN 0250 PRINT " R " ; 0260 ON ERR THEN GOTO 0280 0270 MAT READ FILE ( 1 , 1 ) RAN 0280 RESET ERR 0290 LET PT[[ = 0 0300 FOR X = 1 TO 32 0310 LET A = RAN ( X ) 0320 EXEC UDSK 0330 IF PT[[ > 90 THEN LET X = 32 0340 NEXT 0350 ELSE 0360 READ FILE ( 1 ) A 0370 CALL "FIX" , A , A1 , A2 0380 IF A1 = 21334 THEN 0390 PRINT " S " ; 0400 MAT READ FILE ( 1 ) RAN 0410 LET FU = 1 0420 REPEAT 0430 READ FILE ( 1 ) A 0440 CALL "FIX" , A , A1 , A2 0450 UNTIL A1 MOD 256 = 86 OR A2 MOD 256 = 86 OR EOF ( 1 ) 0460 IF A1 MOD 256 = 86 OR A2 MOD 256 = 86 THEN 0470 CALL "FIX" , A , A1 , A2 0480 IF A1 DIV 256 <> 0 AND A1 MOD 256 <> 0 THEN EXEC UDSK 0490 READ FILE ( 1 ) A 0500 IF A1 DIV 256 <> 0 AND A1 MOD 256 <> 0 AND A2 DIV 256 <> 0 AND A2 MOD 256 <> 0 THEN GOTO 0470 0510 ENDIF 0520 ELSE HVIS IKKE SAVEFIL«nul»@ 0530 IF EOF ( 1 ) THEN PRINT " TOM FIL " ; 0540 IF EOF ( 1 ) THEN GOTO 0710 0550 READ FILE ( 1 ) A$ 0560 IF LEN ( A$ ) > 90 THEN 0570 PRINT " L " ; 0580 LET FU = 1 BL = 0 0590 FOR L = 1 TO LEN ( A$ ) - 3 0600 IF A$ ( L , L + 2 ) = "REM" THEN LET FU = 0 FL = L L = L + 3 0610 IF FU = 0 AND ORD ( A$ ( L ) ) MOD 128 > 31 THEN PRINT A$ ( L ) ; 0620 IF FU = 0 THEN IF A$ ( L ) = "<13>" OR L - FL + BL > 91 THEN LET FU = 1 BL = BL + ( L - FL ) 0630 NEXT 0640 ELSE 0650 PRINT " D " ; 0660 EXEC UDSK 0670 FOR L = 1 TO LEN ( A$ ) 0680 IF A$ ( L ) > "<31>" AND A$ ( L ) < "<127>" THEN PRINT A$ ( L ) ; 0690 NEXT 0700 ENDIF LIST /DATAFILVALG«nul» 0710 ENDIF SAVE/LISTFIL«nul» 0720 ENDIF IKKE RANDOMFIL«nul»L 0730 ON ERR THEN GOTO 0750 0740 CLOSE FILE ( 1 ) 0750 RESET ERR 0760 ENDPROC 0770 PROC UDSK 0780 CALL "FIX" , A , A1 , A2 0790 LET UD ( 1 ) = A1 DIV 256 UD ( 2 ) = A1 MOD 256 UD ( 3 ) = A2 DIV 256 UD ( 4 ) = A2 MOD 256 0800 FOR U = 1 TO 4 0810 IF UD ( U ) MOD 128 > 31 THEN PRINT CHR ( UD ( U ) ) ; 0820 IF UD ( U ) MOD 128 > 31 THEN LET PT[[ = PT[[ + 1 0830 NEXT 0840 ENDPROC
FNA definition = 0xffff FNB definition = 0x006c 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] = 0x00d6 stack[1] = 0x0193 stack[2] = 0x0000 stack[3] = 0x0000 stack[4] = 0x0000 stack[5] = 0x0000 stack[6] = 0x0000 FOR-NEXT stack pointer = 0x0000 Var# = 0x008d Loop Top = 0x029f To Val = 497 (0x431f1000) Step Val = 1 (0x41100000) Var# = 0x008f Loop Top = 0x037e To Val = 4 (0x41400000) 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) 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] = 0x01d4 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] = 0x00c3 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] = 0x0001 stack[1] = 0x0001 stack[2] = 0x0000 stack[3] = 0x0000 stack[4] = 0x0000 stack[5] = 0x0000 stack[6] = 0x0000 Variables: 0x80 0xffff 0x00 0x81 0xffff 0x02 I$ 0x82 0xffff 0x02 A$ 0x83 0xffff 0x00 RAN 0x84 0xffff 0x00 UD 0x85 0xffff 0x00 PT[[ 0x86 0xffff 0x00 X 0x87 0xffff 0x00 A 0x88 0xffff 0x00 UDSK 0x89 0xffff 0x00 A1 0x8a 0xffff 0x00 A2 0x8b 0xffff 0x00 FU 0x8c 0xffff 0x00 BL 0x8d 0xffff 0x00 L 0x8e 0xffff 0x00 FL 0x8f 0xffff 0x00 U
.magic = 0x5356 .u_pas = 0x03a5 // Length of UPAS in words .u_das = 0x00b8 // Length of UDAS in words .u_dvs = 0x00b8 // Start på savede variabel indhold (word adr) .u_nds = 0x0042 // Address på næste prog.sætning (word adr) .u_cps = 0x0042 // Address på curr prog.sætning (word adr) .u_tll = 0x0000 // Page størrelse .u_tts = 0x000e // TAP størrelse .u_ran = 0x0000 // Random tal .u_cdl = 0x0042 // Current DATA sætning ptr .u_cdb = 0x0000 // Current DATA byte ptr .u_esa = 0xffff // ON ESE (word adr) .u_era = 0xffff // ON ERR (word adr) .u_cas = 0x0000 // CASE dybde .u_las = 0xffff // last (-1)