|
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: 3584 (0xe00) Types: COMAL_SAVE Names: »GRAFT«
└─⟦d85593a46⟧ Bits:30000470 DOMUS disk image - User files └─⟦this⟧
SAVE filename: "GRAFT" 0010 REM (+UDVIKLET AF IB I. OLSEN - 1982+)«nul» 0020 PRINT "<27>AF" 0030 PRINT "<27><12>" 0040 DELAY = 1 0050 PRINT TAB ( 20 ) ; "*** GRAFTEGNER ***" 0060 PRINT 0065 TAB = 10 0070 PRINT "" , "GRAFTEGNEREN KAN TEGNE EN ENKELT FUNKTION" 0080 PRINT "" , " BAGEFTER ER DET MULIGT AT LAVE KOORDINAT-" 0090 PRINT "" , "SOEGNING VED HJAELP AF KORSET, SOM FREMKOMMER." 0100 PRINT "" , "KORSET INDSTILLES V.H.A. DE TO KNAPPER I" 0110 PRINT "" , "HOEJRE SIDE AF TASTATURET. NAAR KORSET ER INDSTIL-" 0120 PRINT "" , "LET OVER DEN SOEGTE KOORDINAT TRYKKES DER PAA ET BOG-" 0130 PRINT "" , "STAV. NAAR SOEGNINGEN ER FORBI TRYKKES PAA -RETURN-" 0135 PRINT 0140 DIM GEM$ ( 40 ) 0150 ON ERR THEN GOTO 0190 0160 CREATE "GEM" , 0 0170 OPEN FILE ( 0 , 2 ) "GEM" 0180 OPEN FILE ( 0 , 2 ) "GEM" 0190 ON ERR THEN GOTO 0250 0200 PRINT "" , "INDTAST FUNKTIONEN : " ; 0210 INPUT "Y=" , GEM$ 0220 WRITE FILE ( 0 ) " 290 DEF FNY(X)=" , GEM$ , "<13><10>" 0230 CLOSE 0240 ENTER "GEM" 0250 CLOSE 0260 DELETE "GEM" 0270 IF SYS ( 7 ) <> 42 THEN PRINT "DER ER EN FEJL I DIN LIGNING. PROEV IGEN!" 0280 IF SYS ( 7 ) <> 42 THEN GOTO 0150 0290 DEF FNY ( VAR98 ) = SIN ( [LVAR] ) / COS ( [LVAR] ^ 2 ) 0300 PRINT 0310 PRINT "" , "INDTAST STOERSTE OG MINDSTE X-VAERDI: " ; 0320 INPUT "XMIN,XMAX ? " , X1 , X2 0330 PRINT 0340 PRINT "" , "INDTAST STOERSTE OG MINDSTE Y-VAERDI: " ; 0350 INPUT "YMIN,YMAX ? " , Y1 , Y2 0360 IF X1 > 0 THEN LET X1 = 0 0370 IF Y1 > 0 THEN LET Y1 = 0 0380 IF X2 < 0 THEN LET X2 = 0 0390 IF Y2 < 0 THEN LET Y2 = 0 0400 LET X1 = INT ( X1 ) Y1 = INT ( Y1 ) 0410 IF INT ( X2 ) < X2 THEN LET X2 = INT ( X2 + 1 ) 0420 IF INT ( Y2 ) < Y2 THEN LET Y2 = INT ( Y2 + 1 ) 0430 LET XSTEP = 770 / ( X2 - X1 ) YSTEP = 770 / ( Y2 - Y1 ) 0440 LET XAKS = - YSTEP * Y1 + 4 YAKS = - XSTEP * X1 + 125 0450 PRINT "<27>AE" 0460 PRINT "<27><12>" 0470 DELAY = 1 0480 LET A1 = 125 A2 = XAKS A3 = 895 A4 = A2 C1 = - 5 C2 = 3 C3 = C1 C4 = - 3 C5 = 8 C6 = 0 0490 LET S = XSTEP Y = XAKS + 4 START = ( X2 - X1 ) * XSTEP + 125 SLUT = 125 0500 EXEC KOORD 0510 LET A1 = YAKS A2 = 4 A3 = A1 A4 = 774 C1 = 3 C2 = - 5 C3 = - 3 C4 = C2 C5 = 0 C6 = 8 0520 LET S = YSTEP X = YAKS + 4 START = ( Y2 - Y1 ) * YSTEP + 4 SLUT = 4 0530 EXEC KOORD 0540 LET A1 = 520 0550 IF YAKS > 510 THEN LET A1 = 120 0560 CALL "GRAPH" , A1 , 760 0570 CALL "ALPHA" 0580 PRINT "Y=" ; GEM$ 0590 ON ERR THEN EXEC ERR2 0600 LET S = ( X2 - X1 ) / 1000 VEC = 0 0610 CALL "GRAPH" , 125 , FNY ( X1 ) * YSTEP + XAKS 0620 FOR T = X1 TO X2 STEP S 0630 LET X = T * XSTEP + YAKS Y = FNY ( T ) * YSTEP + XAKS 0640 IF Y < 4 OR Y > 774 THEN 0650 LET VEC = 0 0660 ELSE 0670 CALL "VECTOR" , X , Y , VEC 0680 LET VEC = 1 0690 ENDIF 0700 NEXT 0710 CALL "GRAPH" , 0 , 100 0720 PRINT "<27>AF" 0730 CALL "ALPHA" 0740 REPEAT 0750 PRINT "<29>" ; 0760 EXEC CROSS 0770 LET XKOR = ( X - 125 ) * ( X2 - X1 ) / 770 + X1 YKOR = ( Y - 4 ) * ( Y2 - Y1 ) / 770 + Y1 0780 PRINT "<31>" ; 0790 PAGE = 72 0800 PRINT "(" ; XKOR ; "," ; YKOR ; ")" 0810 UNTIL 0 0820 PROC CROSS 0830 DIM G$ ( 5 ) 0840 ON ERR THEN GOTO 0840 0850 INPUT "<27><26>" , G$ ; 0860 IF LEN ( G$ ) = 0 THEN 0870 PRINT "<31>" 0880 END «nul» 0890 ENDIF 0900 LET X = ( ORD ( G$ ( 2 ) ) - 33 ) * 32 + ORD ( G$ ( 3 ) ) 0910 LET Y = ( ORD ( G$ ( 4 ) ) - 33 ) * 32 + ORD ( G$ ( 5 ) ) 0920 ENDPROC 0930 PROC KOORD 0940 CALL "GRAPH" , A1 , A2 0950 CALL "OUTVECT" , A3 , A4 0960 CALL "OUTVECT" , A3 + C1 , A4 + C2 0970 CALL "OUTVECT" , A3 + C3 , A4 + C4 0980 CALL "OUTVECT" , A3 , A4 0990 FOR T = START - S TO SLUT STEP - S 1000 IF C5 THEN LET X = T 1010 IF C6 THEN LET Y = T 1020 CALL "GRAPH" , X , Y 1030 CALL "OUTVECT" , X - C6 , Y - C5 1040 NEXT 1050 DELAY = 1 1060 ENDPROC 1070 PROC ERR2 1080 ON ERR THEN EXEC ERR2 1090 LET VEC = 0 1100 ENDPROC 1110 PROC INFO 1120 PRINT 1130 PRINT "JEG SKAL LIGE FINDE PAA NOGET !!??" 1140 ENTER "PLOIN" 1150 EXEC PLOIN 1160 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 = 0x01e5 FNZ definition = 0xffff FN[ definition = 0xffff FN\ definition = 0xffff FN] definition = 0xffff GOSUB-RETURN stack pointer = 0x0000 stack[0] = 0x03d8 stack[1] = 0x032f stack[2] = 0x0000 stack[3] = 0x0000 stack[4] = 0x0000 stack[5] = 0x0000 stack[6] = 0x0000 FOR-NEXT stack pointer = 0x0000 Var# = 0x03cd 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# = 0x009c Loop Top = 0x03a1 To Val = 4 (0x41400000) Step Val = 0.008 (0x3f20c49c) 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 0xffff 0x02 GEM$ 0x82 0xffff 0x00 X1 0x83 0xffff 0x00 X2 0x84 0xffff 0x00 Y1 0x85 0xffff 0x00 Y2 0x86 0xffff 0x00 XSTEP 0x87 0xffff 0x00 YSTEP 0x88 0xffff 0x00 XAKS 0x89 0xffff 0x00 YAKS 0x8a 0xffff 0x00 A1 0x8b 0xffff 0x00 A2 0x8c 0xffff 0x00 A3 0x8d 0xffff 0x00 A4 0x8e 0xffff 0x00 C1 0x8f 0xffff 0x00 C2 0x90 0xffff 0x00 C3 0x91 0xffff 0x00 C4 0x92 0xffff 0x00 C5 0x93 0xffff 0x00 C6 0x94 0xffff 0x00 S 0x95 0xffff 0x00 Y 0x96 0xffff 0x00 START 0x97 0xffff 0x00 SLUT 0x98 0xffff 0x00 KOORD 0x99 0xffff 0x00 X 0x9a 0xffff 0x00 ERR2 0x9b 0xffff 0x00 VEC 0x9c 0xffff 0x00 T 0x9d 0xffff 0x00 CROSS 0x9e 0xffff 0x02 G$ 0x9f 0xffff 0x00 XKOR 0xa0 0xffff 0x00 YKOR 0xa1 0xffff 0x00 LIST200 0xa2 0xffff 0x00 INFO 0xa3 0xffff 0x00 PLOIN
.magic = 0x4e32 .u_pas = 0x0504 // Length of UPAS in words .u_das = 0x011c // Length of UDAS in words .u_dvs = 0x011c // Start på savede variabel indhold (word adr) .u_nds = 0x007b // 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 = 0x000a // 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)