diff --git a/RIGAL/rigsc.446/bin/RIGCOMP.TMP b/RIGAL/rigsc.446/bin/RIGCOMP.TMP deleted file mode 100644 index 4a44f3aa623d937422fd58e51511fd8ceb170758..0000000000000000000000000000000000000000 --- a/RIGAL/rigsc.446/bin/RIGCOMP.TMP +++ /dev/null @@ -1 +0,0 @@ -hanoi diff --git a/RIGAL/rigsc.446/bin/check_tmp.out b/RIGAL/rigsc.446/bin/check_tmp.out deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/RIGAL/rigsc.446/bin/hanoi.rig b/RIGAL/rigsc.446/bin/hanoi.rig deleted file mode 100644 index 1c63078c77ca605be127227dd436f0727f7cbb12..0000000000000000000000000000000000000000 --- a/RIGAL/rigsc.446/bin/hanoi.rig +++ /dev/null @@ -1,88 +0,0 @@ - - -- Hanoi tower problem -#MAIN - OPEN S ' '; - $Count:=4; -- Count of rings in first tower - S<<' Rings count =' $Count ; - $STATE:=#INIT($Count); -- Global variable - - #VIDEOSHOW(T); -#H( $Count 1 3 ); - -## -#H - $Num $From $To - / -S<< ' $Num $From $To =' $Num $From $To ; - - IF $Num=1 -> - S << 'FROM' $From 'TO ' $To; - #VIDEOMOVE ($From $To); - #VIDEOSHOW (T) - ELSIF T-> - $Middle := 6-$From-$To ; - #H( $Num-1 $From $Middle ); - #H( 1 $From $To ); - #H( $Num-1 $Middle $To ) -FI / ## - -#INIT $Count -/ $V:=(. - <. LEN : COPY($Count), BODY : (.COPY($Count).) .> - <. LEN : 0 , BODY : (.0.) .> - <. LEN : 0 , BODY : (.0.) .> .); - LOOP - IF $Count=1 -> BREAK FI; - $Count:=COPY($Count-1); - $V[1].BODY!.:=$Count; - $V[2].BODY!.:=0; - $V[3].BODY!.:=0; - END; - RETURN $V; - / ## - -#VIDEOMOVE - $From $To - / - $S_from := LAST #MAIN $STATE [$From]; - $S_to := LAST #MAIN $STATE [$To]; - $Ring:=COPY( $S_from.BODY[$S_from.LEN]); - $S_from.BODY[$S_from.LEN]:=0; - $S_from.LEN+:=-1; - $S_to.LEN+:=1; - $S_to.BODY[$S_to.LEN]:=$Ring; - / -## - -#VIDEOSHOW - -/ $X:=LAST #MAIN $STATE; - $I:=1; - LOOP - S<<$I ' '; - #STR($X[1].BODY[-$I]); - S<]' '; - #STR($X[2].BODY[-$I]) ; - S<]' '; - #STR($X[3].BODY[-$I]); - IF $I>=LAST #MAIN $Count -> BREAK;FI; - $I+:=1; - END; - S<<; -#CALL_PAS(1 '<<<<<>>>>>>')/## - -#STR - $N -/ $E:=LAST #MAIN $Count-$N; - #FILL(' ' $E); - #FILL('O' 2*$N); - #FILL(' ' $E)/ ## - -#FILL - $SYM $CNT - /LOOP - $CNT:=$CNT-1; - IF $CNT<0 -> BREAK FI; - S<]@$SYM; - END; - /## diff --git a/RIGAL/rigsc.446/bin/xd-copy.txt b/RIGAL/rigsc.446/bin/xd-copy.txt deleted file mode 100644 index 05074060b5de84eeb5fa78c1a17eb5ef08e451e3..0000000000000000000000000000000000000000 --- a/RIGAL/rigsc.446/bin/xd-copy.txt +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash -f -$rig/anrig -p N.TMP -$rig/genrigd S -p N.TMP - cc -w -I{$rig}/../include -I. xcrg.c xcrg_0.c -o hanoi $rig/../lib/riglib.a -lm -rm -f xcrg_0.c xcrg_0.o -rm -f xcrg.c xcrg.o xcrga.h xcrg.h -rm -f *.RC2 *.RC4 RIGCOMP.TMP N.TMP diff --git a/RIGAL/rigsc.446/doc/80.txt~ b/RIGAL/rigsc.446/doc/80.txt~ deleted file mode 100644 index b189a3a4985f5f4b87fda31f25578c758d03300d..0000000000000000000000000000000000000000 --- a/RIGAL/rigsc.446/doc/80.txt~ +++ /dev/null @@ -1,249 +0,0 @@ - - Operations with real values in Rigal - ======================================= - -NOTE: -This description presents implementation of -operations with real values in Rigal in -MS-DOS (Turbo-Pascal based) and UNIX (C - based) -variants, starting from Rigal V.2.34 and UNIX Rigal V.4.45. -Read carefully parts regarding UNIX and MS-DOS. - - Old such description was for MS-DOS version -only. Unix description exists only starting from version -4.45. - - Limitations of Turbo Pascal - =========================== - -MS-DOS Rigal is implemented via Pascal real run time library. The -following sequence of characters is accepted by Pascal VAL -procedure as a real number: - - (* space *) [ (+!-) ] (* digits1 *) [ '.' (* digit2 *) ] - [ (e!E) [ (+!-) ] (* digit3 *) ] - The context constraints are that: - digit1+digit2<37 ( limited number of digits ) - The absolute value of digits1.digits2E[-]digits3 must be - in 2.9e-39 ... 1.7e38 - - We assume that UNIX C has no such constraints. - - Input real number from lexical analyzer - ======================================= - -We call real numbers stored in Rigal memory as #FATOMs. Use -built-in Rigal predicate #FATOM to recognize them. They -can be read by the lexical analyzer from its input as -sequences of characters that must match following grammar -rule - - (+ digits1 +) - ( '.' (* digit2 *) [ (e!E) [ (+!-) ] (* digit3 *) ] - ! (e!E) [ (+!-) ] (* digit3 *) ) - -and it must be acceptable by procedure VAL (see above). - -IN MS-DOS: -========= -If #FATOM is read then it is stored in 8-byte-length atom, 6 -bytes are occupied by standard representation of REAL type -in Pascal. In other two bytes number of digits before dot -and number of digits after the dot are stored. If the input -number was in exponential form then these bytes contain -zeros. - -IN UNIX: -======= -If #FATOM is read then it is stored in 8-byte-length atom, -assuming that sizeof(double)=8. The information about the -number of digits before the dot and number of digits after -the dot are _NOT_ stored. - - -Since standard 6 (or 8)-byte representation is stored, only 10 (13) - digits are valid. - -Non-matching in MS-DOS scaner -============================= -If the input value matches grammar and does not match "VAL -rules" then atom with type #KEYWORD is produced (it is -used for diagnostic purposes). Normally #FATOM is produced. - -Output of real numbers -====================== - Statements PRINT, <<, ,<], built-in rules #IMPLODE and -#EXPLODE output real numbers in "exponential" form, -like the %E format in UNIX, or simple WRITE() in Pascal. - - Sd.ddddddddddEZdd - S is space or '-' - d are digits (exactly 10 digits after dot) - E is character 'E' - Z is '+' or '-' - - Real numbers in traditional operators - ===================================== - If you use real numbers in traditional arithmetical -operators and comparisons, all #FATOMs are accepted the -same way as NULL. It corresponds to 0 value. If you compare -#FATOMs with '=', their internal representation (with 6 -or 8 bytes long code) will be compared. Therefore, there -is no sense in such operations. - - Ways to create #FATOM - ===================== - #CALL_PAS(80 S any_string) - returns #FATOM if the string value matches "VAL rule". -Otherwise NULL is returned. - - #CALL_PAS(80 I integer) - returns #FATOM. Integer value can be arbitrary. - - - Ways to get information from #FATOM - =================================== - ( THIS APPLIES TO MS_DOS VARIANT ONLY !) - ====================================== - #CALL_PAS(80 D #FATOM) returns pair - (. digits_before digits_after .) - for FATOM values that were entered through the -lexical analyzer. If the number was entered in exponential -style (with character, 'E'), value (. 0 0 .) is returned. -If the value was obtained by #CALL_PAS(80..), NULL is -returned. There is no other ways to create #FATOM. - - NOTE: - If you have entered #FATOM to variable $X via lexical -analyzer, you can output it with the same number of digits -before and after the point (if it was not exponential -style) as it was read by lexical analyser: - - $D:=#CALL_PAS(80 D $X); - IF $D AND ($D[1]+$D[2]>0) -> - $REZ:=#CALL_PAS(80 Z $X ($D[1]+$D[2]+1)*100+$D[2]) - ELSIF T-> - $REZ:=#CALL_PAS(80 V $X) - FI; - - Conversions (MS-DOS VARIANT ONLY) - ================================= - #CALL_PAS(80 T #FATOM) - returns #NUMBER - whole part of real value. If the -number is not in -2147483648..2147483647 then NULL is -returned. - - #CALL_PAS(80 Z #FATOM D*100+A) - returns formatted string with the value of the real -number. "A" can be positive or negative. - - If "A" is arbitrary NEGATIVE number then exponential form -is produced in following form: - Sd.dEZdd (e.g. -7.7E01) - S is space or '-' Z is '-' or '+' - - If D>=9 then additional digits are added after the point, -but not more than 10 digits. - - If "A" is 0 then integer value is produced, possible with -'-'. - If "A" is positive, it specifies number of digits after -the point. Non-exponential form is produced. -Zeros are appended after point if necessary. The -number of digits after the point cannot be larger than 11. - - After all cases discussed above, if "D" is larger than the -new string, RIGAL adds spaces from the left side of the -string. The result string length is not less than "D". - - #CALL_PAS(80 R #FATOM p) - - returns rounded value of real number. The number is -rounded such way that digits after p-th position after the -dot must be set to zeros. E.g. 23.1415 rounded at 2 nd -position must be 23.140000. - If p is not positive, it is accepted as 0. If absolute -value of real*(10 in p-th degree) is larger than 1e37 then -NULL is returned. - - #CALL_PAS(80 V #FATOM) - - creates string from real number in form - [-]d.ddddddddddESdd - S is '+' or '-' - - Conversions (UNIX VARIANT ONLY) - ================================= - - #CALL_PAS(80 F #FATOM FORMAT_STRING) - returns formatted string with UNIX C the _arbitrary_ format - (allowed in UNIX C sprintf function) you specified, - for example #CALL_PAS(80 F $A 'A=%.9e'); - Note, however, that this option is _not_ ported to MS-DOS. - - #CALL_PAS(80 Z #FATOM D*100+A) - returns formatted string with the value of the real -number. "A" _must_ be positive. - - If "A" is 0 then integer value is produced, possible with -'-'. - If "A" is positive, it specifies number of digits after -the point. Non-exponential form is produced. -Zeros are appended after point if necessary. The -number of digits after the point cannot be larger than 11. - - After all cases discussed above, if "D" is larger than the -new string, RIGAL adds spaces from the left side of the -string. The result string length is not less than "D". - - #CALL_PAS(80 V #FATOM) - returns formatted string with UNIX C %E format. - - Mathematical operations - ======================= - - #CALL_PAS(80 op #FATOM #FATOM) - Operations "op" can be '+','-', '*','/', '<','>', -'<=','>=', '<>','=' - In MS-DOS if '+' or '-' applied, absolute value of the arguments -must be less than 6.2e37 otherwise NULL is returned. - - In MS-DOS if '*' or '-' applied, absolute value of the result must -be between 1.6e-38..6.2e37 and the second argument of '/' is -not 0, otherwise NULL is returned. - If '<','>','<=','>=','<>','=' are applied, one of the -arguments is returned to indicate 'true', NULL is returned -to indicate 'false' Note that it is BAD and DANGEROUS STYLE to check the -results of real arithmetic using '=' or '<>' operations, -because the computer never calculates precise results. You -can compare two real numbers only after some conversion, -e.g. using #CALL_PAS(80 V ...). - - #CALL_PAS(80 Q #FATOM) returns square root if argument is -not negative, NULL otherwise. - - #CALL_PAS(80 X #FATOM) returns exponential ( e in r-th -degree) of the argument. - - #CALL_PAS(80 L #FATOM) returns natural logarithm if the -argument is positive, otherwise NULL. - - Mathematical operations for UNIX only - ===================================== -#CALL_PAS(80 op #FATOM) - - where op = tSIN, tCOS, tTAN, tASIN, tACOS, tATAN. - - call corresponding functions from UNIX libm library. - - - - Common note about #CALL_PAS(80..). - ================================= - It has no run time diagnostic. - If wrong types of arguments of wrong number of arguments -or wrong operation name is given, NULL is returned. - If #CALL_PAS(80...) produces a #FATOM, it is 6 (or 8) bytes long -and it has _no_ information about the digits before and after -the dot. - You can learn more details about #CALL_PAS(80) from -source files USE80.PAS and SERVICES.PAS in MS-DOS, -usemod.c, sevice.c in UNIX C. diff --git a/RIGAL/rigsc.446/bin/hanoi b/RIGAL/rigsc.446/examples/hanoi similarity index 100% rename from RIGAL/rigsc.446/bin/hanoi rename to RIGAL/rigsc.446/examples/hanoi diff --git a/RIGAL/rigsc.446/bin/hanoi.rsc b/RIGAL/rigsc.446/examples/hanoi.rsc similarity index 100% rename from RIGAL/rigsc.446/bin/hanoi.rsc rename to RIGAL/rigsc.446/examples/hanoi.rsc diff --git a/RIGAL/rigsc.446/include/c1.h~ b/RIGAL/rigsc.446/include/c1.h~ deleted file mode 100644 index 4a4aa53665a396b88330e48ddfcb89e050dbf258..0000000000000000000000000000000000000000 --- a/RIGAL/rigsc.446/include/c1.h~ +++ /dev/null @@ -1,116 +0,0 @@ -/*#define xxx printf("lin=%d file=%s\n",__LINE__,__FILE__);*/ -#define xxx ; -int g_argc; -Char ** g_argv; - -typedef union v { - a sa; /* s -adres */ - longint nu; - boolean bo; - a at; /* a -adres */ -} v; - - -boolean debugrule; /* to be used in future */ -Char filebuf[2048]; - - -/************ definitions in c1 ***************/ -extern Void er PP((long n)); - -/* kod o{ibki */ -extern Void errstr PP((long n, Char *s)); - -extern Void crlist PP((long *l)); -/* p2c: c1.z, line 471: - * Note: Turbo Pascal conditional compilation directive was ignored [218] */ - -/* sozdatx pustoj spisok */ -/*$ifdef xx*/ -/*extern Void d PP((long r, long s));*/ -extern Void d PP((long status_r ,char * rulename,long rulenum,long param,boolean success)); - -extern Void d1 PP((long r)); - -/*$endif*/ -extern Void addel PP((long sel, boolean not_atomic, long xsel, long ob, long *tr_)); - -extern long numval PP((long ob)); - -/* nomer wstr.prawila */ -extern Void bltin PP((v *rr, boolean *success, long arg, long n)); - -/* a-adres */ -extern Void mkatom PP((long k, char atype, long *r)); - -/*************** c2 *****************/ -extern Void concop PP((long *a1, long a2)); - -extern Void indxop PP((long xx, boolean isobject, long xa, long l, long *rez)); - -extern Void selop PP((long xn, boolean not_atomic, long xa, long tr_, long *rez)); - -extern Void setind PP((long xx, boolean isobject, long xa, long l, long rez)); - -extern Void setsel PP((long xn, boolean not_atomic, long xa, long tr_, long rez)); - -extern Void addnum PP((long *a1, long a2)); - -extern Void copyop PP((long ob, long *rez)); - - -/* ******************* c3 ******************* */ - -#define max_digit 10 - - -extern Void epilog PV(); - -extern Void prolog PV(); - -/* a-adr.imeni fajla*/ -/* s-adr.wyw.obxekta*/ -/* s now.stroki*/ -/* s probelami*/ -extern Void outxt PP((long fname, long arg, boolean nl, boolean blanks)); - -/* a-adr.imeni fajla*/ -/* wywodimyj atom*/ -/* s now.stroki*/ -/* s probelami*/ -extern Void outatm PP((long fname, Char *arg, boolean nl, boolean blanks)); - - -/* a-adres imeni fajla*/ -/* s-adr.*/ -extern Void opn PP((long fname, long fspec)); - -/* 0-load,1 -save*/ -extern Void loasav PP((v *p, long f, long paz)); - -extern Void explod PP((long kk, long *rez)); - -extern Void implod PP((ptr_ *pl, long *rez)); - -extern Void bltin1 PP((long *rez, boolean *success, ptr_ *pl, long n)); - -/* a-adr.*/ -extern Void clsfil PP((long fname)); - -/**************** c4 ******************* */ -/* cequ(=), cnequ(<>) */ -extern boolean eqop PP((long o, long a1, long a2)); - -extern Void varpat PP((ptr_ *pl, char tip, long *rez, boolean *success)); - -extern Void atmpat PP((long aconval, ptr_ *pl, long *rez, boolean *success)); - -extern boolean eqnum PP((long m1, long n)); - -extern boolean eqatom PP((long m1, long atm)); - -/* kod operacii */ -extern boolean compare PP((long op, long a1, long a2)); - - - diff --git a/RIGAL/rigsc.446/include/define.h~ b/RIGAL/rigsc.446/include/define.h~ deleted file mode 100644 index 18e9d7fa5639be5110be0da9c4d9078d2164dd3f..0000000000000000000000000000000000000000 --- a/RIGAL/rigsc.446/include/define.h~ +++ /dev/null @@ -1,421 +0,0 @@ -/****** define.h *****/ -/* the declaration of main data structures of - s-space for rigal/ unix; - (c) rigal v.00-v.2.xx -*/ - -#define rigal_version "4.43" - - -/* descriptor sizes ******************************** */ - -#define listnodenumb 5 /* number of nodes for list descriptor */ -#define mainlistelnum 5 -/* was = 6 before 1.60 */ -/* = (listnodenumb - 2) * 2 -1 number of list elements in the - main list descriptor */ - -#define fragmlistelnum 8 -/*= (listnodenumb - 1) * 2 number of list elements in - auxilary list descriptors */ - -#define treenodenumb 5 /* number of nodes for tree descriptor */ - -#define maintreearcnum 3 -/* (treenodenumb - 2) number of list elements in the - main tree descriptor */ - - -#define fragmtreearcnum 4 -/* (treenodenumb - 1) in auxilary */ - -#define null_ 0 /* empty object */ -#define maxvarnumb 127 /* maximal number of variables in one rule */ -#define filenum 5 /* maximal number of opened files */ - - -/* following s-addresses are reserved for internal purposes - - for the interpretable code. they are x*512 , they are in 0 <= x < 64k */ -/* 0 512 1024 1536 2048 2560 3072 */ -/* 3584 4096 4608 5120 5632 6144 6656 */ -/* 7168 7680 8192 8704 9216 9728 10240 */ -/* 10752 11264 11776 12288 12800 13312 13824 */ -/* 14336 14848 15360 15872 16384 16896 17408 */ -/* 17920 18432 18944 19456 19968 20480 20992 */ -/* 21504 22016 22528 23040 23552 24064 24576 */ -/* 25088 25600 26112 26624 27136 27648 28160 */ -/* 28672 29184 29696 30208 30720 31232 31744 */ - -/* codes used in the interpreter */ - -#define tr 512 /* tree <. .> */ -#define li 1024 /* list (. .) */ -#define al 1536 /* alternatiwa ( ! ) */ -#define fa 2048 /* fakultatiw [ ] */ -#define se 2560 /* star el. ( * * ) */ -#define ps 3072 /* plus (+ +) */ -#define ti 3584 /* tree iteration <* *> */ -#define vpat 6144 /* v -pattern */ -#define spat 6656 /* s -pattern */ - -/* separatori w s-kodah rigal */ - -#define tdelim 4096 /* separatorx wetwej derewa */ -#define adelim 4608 /* separatorx wetwej alxternatiwy */ -#define asdelim 5632 /* razd.lew. i praw. ~astej := */ -#define opdelim 28672 /* separatorx / */ -#define clistdelim 14336 -#define ctreedelim 15872 -#define seldelim 30720 /* razd.selektora i obxekta */ - -/* statements and operators */ - -#define cfail 12288 -#define creturn 11776 -#define cass1 6144 -#define cass2 6656 -#define cass3 7168 -#define cass4 7680 -#define cass5 8192 -#define cnull 29184 /* $e:= null w {ablone */ -#define clast 17408 -#define crule 17920 -#define cselect 18432 -#define cindex 18944 -#define cname 19456 -#define cmult 19968 -#define cdiv 20480 -#define cmod 20992 -#define cconc 21504 -#define clconc 22016 -#define ctradd 22528 -#define cadd 23040 -#define cminus 23552 -#define cequ 24064 -#define cnequ 24576 -#define cgt 25088 -#define clt 25600 -#define cge 26112 -#define cle 26624 -#define cin 27136 -#define cand 27648 -#define cor 28160 -#define cnot 16384 -#define cunminus 16896 -#define ccopy 29696 -#define clist1 13312 -#define clist2 13824 -#define ctree1 14848 -#define ctree2 15360 - - -/* data types */ - - -typedef long longint; - - -typedef unsigned short word; - /* must be 2 byte positive integer */ -typedef Char string80[81]; - -typedef short byte_type; - -/* string80=string[80];*/ - -typedef long a; - -typedef long aa; - /* adresses of a-space */ - -typedef Char c2[2]; /* =2. bytes */ -typedef Char c4[4]; -/* c8 = packed array [1..8] of char;*/ -typedef Char bl80[80]; -typedef Char a80[80]; -typedef Char real_char[sizeof(double)]; /*added 17-feb-92*/ - -#define dummy 0 -#define listmain 1 -#define listfragm 2 -#define treemain 3 -#define treefragm 4 -#define atom 5 -#define idatom 6 -#define keyword 7 -#define number 8 -#define tatom 9 -#define fatom 10 -#define variable 11 -#define idvariable 12 -#define nvariable 13 -#define fvariable 14 -#define rulename 15 -#define object_d 16 -#define set_coord 17 -#define spec 18 -#define xxx_19 19 -#define complex_desk 20 -#define start_list 21 -#define end_list 22 -#define start_tree 23 -#define end_tree 24 -#define name_obj 25 -#define eof_desk 26 - - -/* !! internal representation of these enumerable constants - is important !! */ -/* =1. bytes */ -/*0*/ -/*1*/ -/*2*/ -/*3*/ -/*4*/ -/*5*/ -/*6*/ -/* identifier */ -/*7*/ -/*8*/ -/*9*/ -/* text constant */ -/*10*/ -/* float constant */ -/*11*/ -/*17*/ -/* sets coordinate */ -/*18*/ -/* special delimiter 0,512,1024,..*/ -/* reserved */ -/*20*/ -/*21*/ -/*22*/ -/*23*/ -/*24*/ -/*25*/ -/*26*/ - -/* these structures are important, - if something is shifted, it must be marked in - defpage.pas tables */ -/* "dtype" and "flags" must be 2 first bytes */ -/* "next" must be the last 37-40 bytes */ -/* "xx", "xxx" are reserved fields */ -/* "cord" is unsigned integer, 2 bytes */ -/* "val" is signed long integer */ - -/* old version : -mainlistdescriptor= record (* =40. bytes *) - dtype : descriptortype; (* =1. bytes *) - flags : 0 ..31; (* =1. bytes *) - xx : array [ 1 .. 1 ] of boolean;(* =1. bytes *) - elnum : 0 ..mainlistelnum; (* =1. bytes *) - totalelnum : longint; (* =4. bytes *) - name : aa; (* =4. bytes *) - elt : array[ 1 ..mainlistelnum] of a; (* =6*4=24. bytes *) - next : a; end; (* =4. bytes *) -*/ - -typedef struct mainlistdescriptor { - /* =40. bytes */ - char dtype; /* =1. bytes */ - char flags; /* =1. bytes */ - boolean xx[1]; /* =1. bytes */ - char elnum; /* =1. bytes */ - longint totalelnum; /* =4. bytes */ - aa name; /* =4. bytes */ - a elt[mainlistelnum]; /* =5*4=20. bytes */ - a lastfragm; /* last descriptor address =4. bytes */ - a next; -} mainlistdescriptor; /* =4. bytes */ - -typedef struct fragmlistdescriptor { - /* =40. bytes */ - char dtype; /* =1. bytes */ - char flags; /* =1. bytes */ - char elnum; /* =1. bytes */ - boolean xx[1]; /* =1. bytes */ - a elt[fragmlistelnum]; /* =8*4=32. bytes */ - a next; -} fragmlistdescriptor; /* =4. bytes */ - - -typedef struct te { - aa arcname; /* =8=4+4. bytes */ - a elt; -} te; - - -typedef struct maintreedescriptor { - /* =40. bytes */ - char dtype; /* =1. bytes */ - char flags; /* =1. bytes */ - char arcnum; /* =1. bytes */ - boolean xx[1]; /* =1. bytes */ - longint totalarcnum; /* =4. bytes */ - aa name; /* =4. bytes */ - te arc[maintreearcnum]; /* =8*3=24. bytes */ - a next; -} maintreedescriptor; /* =4. bytes */ - -typedef struct fragmtreedescriptor { - /* =40. bytes */ - char dtype; /* =1. bytes */ - char flags; /* =1. bytes */ - char arcnum; /* =1. bytes */ - boolean xx[1]; /* =1. bytes */ - te arc[fragmtreearcnum]; /* =8*4=32. bytes */ - a next; -} fragmtreedescriptor; /* =4. bytes */ - - -typedef struct atomdescriptor { - /* =8. bytes */ - char dtype; /* =1. bytes */ - char flags; /* =1. bytes */ - word cord; - /* unsigned */ - /* =2. bytes */ - aa name; /* =4. bytes */ -} atomdescriptor; - -typedef struct numberdescriptor { - /* =8. bytes */ - char dtype; /* =1. bytes */ - char flags; /* =1. bytes */ - word cord; /* =2. bytes */ - longint val; /* signed */ -} numberdescriptor; /* =4. bytes */ - -typedef struct vardescriptor { - /* =8. bytes */ - char dtype; /* =1. bytes */ - char flags; /* =1. bytes */ - boolean guard; /* =1. bytes */ - char location; /* =1. bytes */ - aa name; -} vardescriptor; /* =4. bytes */ - -typedef struct ruledescriptor { - /* =16. bytes */ - char dtype; /* =1. bytes */ - char flags; /* =1. bytes */ - word cord; /* =2. bytes */ - aa name; /* =4. bytes */ - a fragmadr; /* =4. bytes */ - a nomintab; /* =4. bytes */ -} ruledescriptor; - - -typedef struct specdescriptor { - /* =8. bytes */ - char dtype; /* =1. bytes */ - char flags; /* =1. bytes */ - boolean xx[2]; /* =2. bytes */ - longint val; -} specdescriptor; /* =4. bytes */ - -typedef struct objdescriptor { - /* =16. bytes */ - char dtype; /* =1. bytes */ - char flags; /* =1. bytes */ - boolean variable_; /* =1. bytes */ - char nel; /* =1. bytes */ - - a fragmorvar; /* =4. bytes */ - a glavn; /* =4. bytes */ - a rezerv; /* =4. bytes */ -} objdescriptor; - -typedef a a10_type[10]; - -typedef union mpd { - /* multiply pointers to descriptors */ - a sa; - mainlistdescriptor *smld; - fragmlistdescriptor *sfld; - maintreedescriptor *smtd; - fragmtreedescriptor *sftd; - atomdescriptor *sad; - numberdescriptor *snd; - vardescriptor *svd; - ruledescriptor *srd; - atomdescriptor *sc8; - specdescriptor *sspec; - objdescriptor *sobj; - Char *sbl80; - long *sa10; -} mpd; /* =4. bytes */ - -#define ptrlist 0 -#define ptrtree 1 -#define packedlist 2 - -/*------------------------------------------------*/ - -typedef struct ptr_ { - /* refers to the current element of agregate */ - unsigned ptrtype : 2; -/* p2c: defsun3.z, line 337: Note: - * Field width for PTRTYPE assumes enum ptrtype_enum has 3 elements [105] */ - /* type of agregate */ - unsigned nel : 4; - /* number of element in current fragment of agregate, - or in array */ - /* =0 if no more elements */ - unsigned plistsize : 3; - /* current size of array; - used for rule call optimization - with <= 4 arguments. - used only if ptrtype=packedlist , - undefined otherwise */ - - a cel; /* refers to the current element */ - union { - struct { - a arc; /* arc selector a-address */ - - a curfragment; /* current fragment descriptor */ - - /* main fragment */ - a mainadr; - } U1; - /* number "4" is fixed in compiler code-generation phase - file stmt2.rig rule #g_call */ - a plistelt[3]; - } UU; -} ptr_; - -/*======================================*/ -/* this is used for access to os file names */ -typedef Char filename_type[81]; -typedef Char checker_message_type[81]; -typedef Char filespecification[81]; - - - -/* this is used for checker and editor common variables */ - -typedef struct error_rec_type { - checker_message_type message; - filename_type filename; - word address; -} error_rec_type; - - -typedef struct _REC_filetab { - a name; /* a-address of rigal file */ - boolean isopen; /* */ - boolean screen; - long strlen; /* specified max length */ - long curlen; /* current length */ -} _REC_filetab; - - -/* character set *********************************** */ -long digit[9], letter[9], symbols[9]; -_REC_filetab filetab[filenum]; - -FILE *files[filenum]; - - diff --git a/RIGAL/rigsc.446/lint/RIGCOMP.TMP b/RIGAL/rigsc.446/lint/RIGCOMP.TMP deleted file mode 100644 index e38ee40cc4443a32368073bfed6661d07b8d7d6c..0000000000000000000000000000000000000000 --- a/RIGAL/rigsc.446/lint/RIGCOMP.TMP +++ /dev/null @@ -1,11 +0,0 @@ -rig_lint -l_anal -l_operat -l_instr -l_patt -l_patt2 -l_patt3 -l_exprs -l_expr1 -l_closur -l_check diff --git a/RIGAL/rigsc.446/lint/xd b/RIGAL/rigsc.446/lint/xd deleted file mode 100644 index e554be6fb8ea3a2997c8b843830ef043f0374e81..0000000000000000000000000000000000000000 --- a/RIGAL/rigsc.446/lint/xd +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/csh -f -$rig/anrig -p N.TMP -$rig/genrigd S -p N.TMP - cc -w -O -I{$rig}/../include -I. xcrg.c xcrg_0.c\ -xcrg_1.c\ -xcrg_2.c\ -xcrg_3.c\ -xcrg_4.c\ -xcrg_5.c\ -xcrg_6.c\ -xcrg_7.c\ -xcrg_8.c\ -xcrg_9.c\ -xcrg_10.c\ --o rig_lint\ -$rig/../lib/riglib.a -lm -rm -f xcrg_0.c xcrg_0.o -rm -f xcrg_1.c xcrg_1.o -rm -f xcrg_2.c xcrg_2.o -rm -f xcrg_3.c xcrg_3.o -rm -f xcrg_4.c xcrg_4.o -rm -f xcrg_5.c xcrg_5.o -rm -f xcrg_6.c xcrg_6.o -rm -f xcrg_7.c xcrg_7.o -rm -f xcrg_8.c xcrg_8.o -rm -f xcrg_9.c xcrg_9.o -rm -f xcrg_10.c xcrg_10.o -rm -f xcrg.c xcrg.o xcrga.h xcrg.h -rm -f *.RC2 *.RC4 RIGCOMP.TMP N.TMP diff --git a/RIGAL/rigsc.446/src/Makefile~ b/RIGAL/rigsc.446/src/Makefile~ deleted file mode 100644 index e50035efc932d4d6263b6bf64446c28a0e67ad16..0000000000000000000000000000000000000000 --- a/RIGAL/rigsc.446/src/Makefile~ +++ /dev/null @@ -1,169 +0,0 @@ - -# -# MAKEFILE for Rigal in C, version 4.45.1 -# - -# C compiler to use (Compiler path can be changed by the user) -CCFLAGS = -g -PCA = cc $(CCFLAGS) -c -D xsun=1 -I../include/ -# Specify -DLE for Little-endian architectures (Big-endian is default)! -# Specify -Dbbs for BBS-version of scaner (LaTeX version is default)! - -LIBS = -lm -# This is for sin, cos, sqrt etc. - -# Other things are usually not changed by the user -.INIT: check$(rig) - -# ------------------------------------------------- -# MACRO DEFINITIONS -# ----------------------------------------------- -# Object files for "rc" -RCF_SRC = defsun3.o ley_.o nef2.o ou2.o sevice.o -# They are in src/ subdirectory - -# Object files for "ic" -ICF_SRC = cim.o defsun3.o erm.o ic.o ley_.o scan.o scanmif.o usemod.o nef2.o ou2.o sevice.o - - -# Object files for "rc -c" (library) -CCF_SRC = defsun3.o ley_.o scan.o scanmif.o usemod.o c1.o c2.o c3.o c4.o nef2.o ou2.o sevice.o - - -DISTLIB = defsun3.c ley_.c scan.c scanmif.c usemod.c c1.c c2.c c3.c c4.c nef2.c ou2.c sevice.c - -# All include files -INCLIB_SRC = ../include/c1.h ../include/define.h \ - ../include/defpage.h ../include/ley.h \ - ../include/scan.h ../include/cim.h \ - ../include/def180.h ../include/nef2.h\ - ../include/usemod.h ../include/globrig.h - -#-------------------------------------------------------- -# TARGET DEFINITIONS -#--------------------------------------------------------- - -# Normally builds all necessary after unpack and performs test. -normal: bins ../lib/riglib.a ../bin/anrig ../bin/genrigd ../bin/rig_lint test clean - -bins: bin ../bin/rc ../bin/ic ../bin/v -bin: - -mkdir ../bin -../bin/rc:$(RCF_SRC) rc_.o - cc $(CCFLAGS) -o ../bin/rc rc_.o $(RCF_SRC) - -../bin/ic:$(ICF_SRC) - cc $(CCFLAGS) -o ../bin/ic $(ICF_SRC) $(LIBS) - - -../bin/v:$(RCF_SRC) v.o - cc $(CCFLAGS) -o ../bin/v v.o $(RCF_SRC) $(LIBS) - -../lib/riglib.a:$(CCF_SRC) - @echo '*Starting creating library' - -mkdir ../lib - -rm -f ../lib/riglib.a - ar rv ../lib/riglib.a $(CCF_SRC) - -ranlib ../lib/riglib.a - @echo '*Library created' - -../bin/anrig:$(INCLIB_SRC) ../lib/riglib.a - cc $(CCFLAGS) -w \ - -Ianrig/ -I../include/\ - anrig/xcrg.c anrig/xcrg_0.c\ - anrig/xcrg_1.c\ - anrig/xcrg_2.c\ - anrig/xcrg_3.c\ - anrig/xcrg_4.c\ - anrig/xcrg_5.c\ - anrig/xcrg_6.c\ - anrig/xcrg_7.c\ - anrig/xcrg_8.c\ - anrig/xcrg_9.c\ - -o ../bin/anrig ../lib/riglib.a $(LIBS) - -rm -f anrig/*.o - -../bin/genrigd:$(INCLIB_SRC) ../lib/riglib.a - cc $(CCFLAGS) -w \ - -Igenrig/ -I../include/\ - genrig/xcrg.c\ - genrig/xcrg_1.c\ - genrig/xcrg_2.c\ - genrig/xcrg_3.c\ - genrig/xcrg_4.c\ - genrig/xcrg_5.c\ - genrig/xcrg_6.c\ - genrig/xcrg_7.c\ - genrig/xcrg_8.c\ - genrig/xcrg_9.c\ - genrig/xcrg_10.c\ - -o ../bin/genrigd ../lib/riglib.a $(LIBS) - -rm -f genrig/*.o - -../bin/rig_lint: ../lint/rig_lint.rig ../bin/rc ../lib/riglib.a ../bin/anrig ../bin/genrigd - (cd ../lint;../bin/rc rig_lint -c -P '-O';cd ..) - -mv ../lint/rig_lint ../bin/ - -test: ../test/rigcrf.rig ../bin/rc ../lib/riglib.a ../bin/anrig ../bin/genrigd - (cd ../test;\ - $(rig)/rc rigcrf;\ - $(rig)/ic rigcrf rigcrf;\ - $(rig)/rc rigcrf -c;\ - rigcrf rigcrf) - -##------------------ Hidden possibilities -z: anrigz genrigz -anrigz: - (cd anrig;\ - ../../bin/rc anrig;\ - ../../bin/anrig;\ - ../../bin/genrigd S -p N.TMP;\ - /bin/rm *.RC2 *.RC4 *.TMP) - -genrigz: - (cd genrig;\ - ../../bin/rc genrigd;\ - ../../bin/anrig;\ - ../../bin/genrigd S -p N.TMP;\ - /bin/rm *.RC2 *.RC4 *.TMP) -##--------------------------------------- -VERSION = 445.2 -tar: clean - -rm -f ../rigsc.$(VERSION).tar.Z - (cd ..;tar -cvf rigsc.$(VERSION).tar include src examples lint doc test) - compress ../rigsc.$(VERSION).tar - cp ../rigsc.$(VERSION).tar.Z /info/ftp/pub/labs/pelab/rigal/ -##-------------------------------------- -clean: - mv ../test/rigcrf.rig . - -rm -f *.o */*.o *.RC2 */*.RC2 *.RC4 */*.RC4 */*.rsc ../lint/*.o ../lint/*.RC2 ../lint/*.RC4 \ - ../examples/hanoi ../*/*.rsc ../*/*.out ../*/*/*.out ../test/* - mv rigcrf.rig ../test/ -##-------------------------------------- -.c.o: $(INCLIB_SRC) - $(PCA) $< -o $@ -check: - @echo '********************************************************' - @echo '*' User ERROR: you have not set \"rig\" environment variable to $(PWD)/../bin - @echo '********************************************************' - ____FATAL___ERROR___ -check$(rig): - @echo VARIABLE rig have been set to $(rig) - @echo --------------------------------------- -##---------------------------------------- -# Prepare distribution -mkdist$(RFILE)$(RDIR): - @echo '*** to prepare for distribution write make mkdist RFILE=fff RDIR=/u/vaden/xyz/xyz/' -mkdist: - (cd $(RDIR);\ - $(rig)/rc $(RFILE);\ - $(rig)/anrig;\ - $(rig)/genrigd S -p N.TMP;\ - /bin/rm *.RC2 *.RC4 *.TMP) - cp ../include/* $(RDIR) - cp $(DISTLIB) $(RDIR) - (cd $(RDIR);\ - echo 'cc -O -w -D xsun=1 ' $(DISTLIB) ' xc*.c -o ' $(RFILE) $(LIBS) > cmd) -mkdist2: - (cd $(RDIR);\ - cc -O -w -D xsun=1 $(DISTLIB) xc*.c -o $(RFILE) $(LIBS) ;/bin/rm *.o) diff --git a/RIGAL/rigsc.446/src/c1.c~ b/RIGAL/rigsc.446/src/c1.c~ deleted file mode 100644 index 61f6e26072f9ac407bb5c695281d605fc6d3a94c..0000000000000000000000000000000000000000 --- a/RIGAL/rigsc.446/src/c1.c~ +++ /dev/null @@ -1,593 +0,0 @@ -#include "globrig.h" -#include "define.h" -#include "defpage.h" -#include "nef2.h" -#include "c1.h" - -/* Local variables for bltin: */ -struct LOC_bltin { - long l; - bl80 mm; -} ; - -Local long alen(k, LINK) -long k; -struct LOC_bltin *LINK; -{ - a t; - - - t = k; - pointa(t, LINK->mm, &LINK->l); /*ibm*/ - return LINK->l; -} /* alen */ - - - - - -Void bltin(rr, success, arg, n) -v *rr; -boolean *success; -long arg, n; -{ - /* nomer wstr.prawila */ - /*===========================*/ - /* wyzow wstroennogo prawila */ - /*===========================*/ - struct LOC_bltin V; - /* wyhod */ - - char rulenum; - a k, s, rez; - mpd x, y; - long t; - longint li_; - string80 s80; /* for parameter */ - atomdescriptor *WITH; - numberdescriptor *WITH1; - - - - rr->nu = 0; - rulenum = n; - k = arg; - if ((k & 511) != 0 || k >= 65536L || k < 0) - pointr(k, &x.sa); - *success = true; - rez = arg; - switch (rulenum) { - - case 3: /* #atom */ - if (k == null_) - goto _L99; - *success = (((1L << ((long)x.sad->dtype)) & - ((1L << ((long)fatom + 1)) - (1L << ((long)atom)))) != 0); - break; - - case 4: /* #number */ - if (k == null_) - *success = false; - else - *success = (x.sad->dtype == number); - break; - - case 5: /* #ident */ - if (k == null_) - *success = false; - else - *success = (x.sad->dtype == idatom); - break; - - case 6: /* #list */ - if (k == null_) - goto _L99; - *success = (x.sad->dtype == listmain); - break; - - case 7: /* #tree */ - if (k == null_) - goto _L99; - *success = (x.sad->dtype == treemain); - break; - - case 8: /* #tatom */ - if (k == null_) - *success = false; - else - *success = (x.sad->dtype == tatom); - break; - - case 9: /* #fatom */ - if (k == null_) - *success = false; - else - *success = (x.sad->dtype == fatom); - break; - - case 10: /* #_keyword */ - if (k == null_) - *success = false; - else - *success = (x.sad->dtype == keyword); - break; - - case 11: /* #_specdesc */ - if (k == null_) - *success = false; - else - *success = (x.sad->dtype == spec); - break; - - case 15: /* #len */ - if (k == null_) - rr->nu = 0; - else { - switch (x.sad->dtype) { - - case atom: - case idatom: - case keyword: - case tatom: - case fatom: - rr->nu = alen(x.sad->name, &V); - break; - - case number: - /* pods~itatx ~islo zna~.cifr */ - li_ = x.snd->val; - t = 0; - while (li_ != 0) { - li_ /= 10; - t++; - } - if (t == 0) - t = 1; - if (x.snd->val < 0) - t++; - rr->nu = t; - break; - /* number */ - - case listmain: - rr->nu = x.smld->totalelnum; - break; - - case treemain: - rr->nu = x.smtd->totalarcnum; - break; - - - default: - rr->nu = 0; - break; - }/* case */ - } - break; - /* #len */ - - case 14: /* #_rulename */ - if (k == null_) - *success = false; - else - *success = (x.sad->dtype == rulename); - break; - - case 12: /* #_varname */ - if (k == null_) - *success = false; - else - *success = (((1L << ((long)x.sad->dtype)) & - ((1L << ((long)fvariable + 1)) - (1L << ((long)variable)))) != 0); - break; - - case 16: - case 17: /* #_ruletoatom, #_varntoatm */ - if (k == null_) - *success = false; - else { - if (x.srd->dtype == rulename && rulenum == 16 || - (((1L << ((long)x.svd->dtype)) & - ((1L << ((long)fvariable + 1)) - (1L << ((long)variable)))) != 0 && - rulenum == 17)) { - gets1(&s, &y.sa); - WITH = y.sad; - WITH->dtype = idatom; - if (rulenum == 16) - WITH->name = x.srd->name; - else - WITH->name = x.svd->name; - rez = s; - } else - *success = false; - } - break; - - case 19: /* #debug */ - debugrule = true; - break; - - case 21: /* _content2 */ - if ((k & 511) == 0 && k < 65536L && k >= 0) - *success = false; - else { - s = x.snd->val; - gets1(&k, &x.sa); - WITH1 = x.snd; - WITH1->dtype = number; - WITH1->val = s; - rez = k; - } - break; - /* _content2 */ - - case 22: /* #chr */ - if ((k & 511) == 0 && k < 65536L && k >= 0) { - rez = null_; - *success = false; - } else if (x.snd->dtype != number || x.snd->val > 255 || x.snd->val < 0) { - rez = null_; - *success = false; - } else { - t = x.snd->val; - V.mm[0] = (Char)t; - V.l = 1; - putatm(V.mm, V.l, &s); - gets1(&k, &x.sa); - WITH = x.sad; - if (is_rig_letter((int)t)) - WITH->dtype = idatom; - else - WITH->dtype = atom; - WITH->name = s; - rez = k; - } - break; - /* chr */ - - case 23: /* parm */ - rez = null_; - V.l = 1; - while (V.l < g_argc) { - strcpy(s80,g_argv[(int)V.l]); - brt(s80); - if (!strcmp(s80, "-p")) - V.l++; - else - lconc(&rez, str_to_atom(s80)); - V.l++; - } - - break; - - - - - case 24: /* #_totatom */ - if (k == null_) - *success = false; - else { - gets1(&s, &y.sa); - WITH = y.sad; - WITH->dtype = tatom; - WITH->name = x.sad->name; - WITH->flags = 0; - rez = s; - } - break; - - case 25: /* #ord */ - if ((k & 511) == 0 && k < 65536L && k >= 0) { - *success = false; - goto _L99; - } - if (((1L << ((long)x.sad->dtype)) & - (((1L << ((long)keyword + 1)) - (1L << ((long)atom))) | - (1L << ((long)tatom)))) != 0) { - k = x.sad->name; - pointa(k, V.mm, &V.l); - rr->nu = V.mm[0]; - } else - *success = false; - break; - /* ord */ - - - }/* case */ -_L99: - if (!*success) - rez = null_; - if (n != 15 && n != 25) - rr->sa = rez; -} - - - -Void mkatom(k, atype, r) -long k; -char atype; -long *r; -{ - /* a-adres */ - mpd x; - atomdescriptor *WITH; - - if (k == 0) { - *r = null_; - return; - } - gets1(r, &x.sa); - WITH = x.sad; - WITH->dtype = atype; - WITH->name = k; -} /* mkatom */ - - -Void crlist(l) -long *l; -{ - /* sozdatx pustoj spisok */ - long n; - mpd x; - mainlistdescriptor *WITH; - - - gets5(l, &x.sa); - WITH = x.smld; - WITH->dtype = listmain; - WITH->elnum = 0; - WITH->totalelnum = 0; - WITH->name = null_; - WITH->next = null_; - for (n = 0; n < mainlistelnum; n++) - WITH->elt[n] = null_; -} /* crlist */ - - - -Static Void errstrmes(n, m) -long n; -Char *m; -{ - Char STR2[130]; - - switch (n) { - - case 1: - sprintf(m, "Interpreter stack size overflow (stack size = %s);", - strcpy(STR2, m)); - break; - - case 2: - strcpy(m, "Assignment left side is not list or tree"); - break; - - case 3: - strcpy(m, "List index is not number"); - break; - - case 4: - strcpy(m, "Using [..] not for list"); - break; - - case 5: - strcpy(m, "Index value exceeds list bounds"); - break; - - case 6: - strcpy(m, "Not list or tree after \"::\""); - break; - - case 7: - strcpy(m, "Not atomic name before \"::\""); - break; - - case 8: - strcpy(m, "NULL in left side of assignment"); - break; - - case 9: - strcpy(m, "Not numerical value in left side of \"+:=\" statement"); - break; - - case 10: - strcpy(m, "Not numerical value in right side of \"+:=\" statement"); - break; - - case 11: - strcpy(m, "File specification is not atom"); - break; - - case 12: - strcpy(m, "Too long file specification"); - break; - - case 13: - strcpy(m, "Too much open text files"); - break; - - case 14: - strcpy(m, "File not open for output"); - break; - - case 15: - strcpy(m, "Wrong file name in SAVE statement "); - break; - - case 16: - strcpy(m, "File was not closed before new opening"); - break; - - case 17: - strcpy(m, "Atom length exceeds file record length"); - break; - - case 18: - strcpy(m, "Not exist file in LOAD statement "); - break; - - case 19: - strcpy(m, "Wrong file name in OPEN statement "); - break; - - case 21: - strcpy(m, "Selector after \".\" is not identifier "); - break; - - case 22: - strcpy(m, "Selector in tree constructor is not identifier "); - break; - - case 23: - strcpy(m, "Not tree before \".\" operation "); - break; - - case 24: - strcpy(m, "Not tree or list as base of FORALL-IN statement "); - break; - - case 25: - strcpy(m, "Atom length more than 80 bytes in #IMPLODE "); - break; - - case 26: - strcpy(m, "\"BRANCHES\" option cannot be used for lists "); - break; - - default: - strcpy(m, "Unknown error"); - break; - } -} - - -Void er(n) -long n; -{ - /* kod oshibki */ - string80 m; - - errstrmes(n, m); - if (out_open) - fprintf(out, "*** ERROR %12ld %s\n", n, m); - else - printf("*** ERROR %12ld %s\n", n, m); - -} /* err */ - - -Void errstr(n, s) -long n; -Char *s; -{ - string80 m; - - errstrmes(n, m); - if (out_open) - fprintf(out, "*** ERROR %12ld %s%s\n", n, m, s); - else - printf("*** ERROR %12ld %s%s\n", n, m, s); -} /* err */ - - -/* used for statistics only */ -Void d1(r) -long r; -{ - /* called from runtime library, s=1, r=1000..1030 */ -} - - -Void d(r, s) -long r, s; -{ - /* called from r1..r999 r=1..999, s=1..4 */ - if (s == 1) - printf(".b.%12ld\n", r); - if (s == 2) - printf(".c.%12ld\n", r); - if (s == 3) - printf(".r.%12ld\n", r); - if (s == 4) - printf(".e.%12ld\n", r); - /* if s=1 then inc(dmas[r]); - if s=10 then for i:=1 to 200 do dmas[i]:=0; - if s=11 then begin - assign(ff,'sta.lst'); - rewrite(ff); - for i:=0 to 49 do begin - for j:=1 to 4 do write(ff,i*4+j:3,' ',dmas[i*4+j]:4,' !'); - writeln(ff); end; - close (ff); - end; - */ - - -} - - - - -Void addel(sel, not_atomic, xsel, ob, tr_) -long sel; -boolean not_atomic; -long xsel, ob, *tr_; -{ - /*===============================*/ - /* dobawitx k derewu |lement */ - /* tr := tr ++ <. sel : ob .> */ - /*===============================*/ - /* wyhod s tr:=l */ - /* wyhod bez tr:=l */ - - a l; /* s-adres glawnogo derewa */ - mpd x; /* dostup k glawnomu deskr.derewa */ - - - - - if (not_atomic) { - if (xsel == null_) { - er(21L); - goto _L2; - } - pointr(xsel, &x.sa); - if (x.sad->dtype != idatom) { - er(22L); - goto _L2; - } - sel = x.sad->name; - } - addel3(tr_, sel, ob); -_L2: ; -} - - -long numval(ob) -long ob; -{ - /*=============*/ - /* ob -> ~islo */ - /*=============*/ - mpd x; - - - if (ob == null_) - return 0; - else { - pointr(ob, &x.sa); - if (x.snd->dtype != number) - return 0; - else - return (x.snd->val); /* sign proc deleted */ - } - - -} - - -/* numval*/ - - - -/* End. */ diff --git a/RIGAL/rigsc.446/src/c1.o b/RIGAL/rigsc.446/src/c1.o deleted file mode 100644 index 2f867ee389e872eeaa784618744a06b6caed09e8..0000000000000000000000000000000000000000 Binary files a/RIGAL/rigsc.446/src/c1.o and /dev/null differ diff --git a/RIGAL/rigsc.446/src/c2.o b/RIGAL/rigsc.446/src/c2.o deleted file mode 100644 index 76cd9f7176868b605d0e9f85b6507de7042117fa..0000000000000000000000000000000000000000 Binary files a/RIGAL/rigsc.446/src/c2.o and /dev/null differ diff --git a/RIGAL/rigsc.446/src/c3.o b/RIGAL/rigsc.446/src/c3.o deleted file mode 100644 index a752ac06c31925490c7ba1885ee23a4f0110482b..0000000000000000000000000000000000000000 Binary files a/RIGAL/rigsc.446/src/c3.o and /dev/null differ diff --git a/RIGAL/rigsc.446/src/c4.c~ b/RIGAL/rigsc.446/src/c4.c~ deleted file mode 100644 index 4432b3589805a4f86550b1ed3f58bb436b7fec36..0000000000000000000000000000000000000000 --- a/RIGAL/rigsc.446/src/c4.c~ +++ /dev/null @@ -1,287 +0,0 @@ -#include "globrig.h" -#include "define.h" -#include "defpage.h" -#include "nef2.h" -#include "c1.h" - -boolean eqatom(m1, atm) -long m1, atm; -{ - mpd x; - atomdescriptor *WITH; - - if (m1 == null_) - return false; - else { - pointr(m1, &x.sa); - WITH = x.sad; - return (((1L << ((long)WITH->dtype)) & (((1L << ((long)keyword + 1)) - - (1L << ((long)atom))) | (1L << ((long)fatom)))) != 0 && - WITH->name == atm); - } -} - - -Void varpat(pl, tip, rez, success) -ptr_ *pl; -char tip; -long *rez; -boolean *success; -{ - mpd x; - atomdescriptor *WITH; - - - *rez = pl->cel; - if (pl->nel == 0 || *rez == null_) - *success = false; - else { - pointr(*rez, &x.sa); - WITH = x.sad; - *success = (WITH->dtype == tip); - } - if (*success) { - if (pl->ptrtype != ptrtree) - next(pl); - } else - *rez = null_; -} /* varpat */ - - -Void atmpat(aconval, pl, rez, success) -long aconval; -ptr_ *pl; -long *rez; -boolean *success; -{ - mpd x; - atomdescriptor *WITH; - - - *rez = pl->cel; - if (pl->nel == 0 || *rez == null_) - *success = false; - else { - pointr(*rez, &x.sa); - WITH = x.sad; - *success = ((WITH->dtype == atom || WITH->dtype == idatom || - WITH->dtype == keyword || - WITH->dtype == fatom) && WITH->name == aconval); - /* tatom removed from this set 25-july 1989 */ - } - if (*success) { - if (pl->ptrtype != ptrtree) - next(pl); - } else - *rez = null_; -} /* atmpat */ - - - -boolean eqnum(m1, n) -long m1, n; -{ - mpd x; - numberdescriptor *WITH; - - - if (m1 == null_) - return false; - else { - pointr(m1, &x.sa); - WITH = x.snd; - return (WITH->dtype == number && WITH->val == n); - } -} /* eqnum */ - - - -boolean eqop(o, a1, a2) -long o, a1, a2; -{ - /* cequ(=), cnequ(<>) */ - /*====================================*/ - /* rawenstwo/ nerawenstwo obxektow */ - /* whod: a1 a2 */ - /* wyhod: true / false w rez1 */ - /*====================================*/ - /*wyhod */ - - mpd x, y; - boolean rez; - ptr_ px, py; - - - - rez = true; - if (a2 == null_) { - if (a1 == null_) - goto _L1; - else { - pointr(a1, &x.sa); - rez = (((1L << ((long)x.smld->dtype)) & - ((1L << ((long)listmain)) | (1L << ((long)treemain)))) != 0 && - x.smld->totalelnum == 0); - goto _L1; - } - } /* a2 =null */ - pointr(a2, &x.sa); - if (a1 == null_) { - rez = (((1L << ((long)x.smld->dtype)) & - ((1L << ((long)listmain)) | (1L << ((long)treemain)))) != 0 && - x.smld->totalelnum == 0); - goto _L1; - } - pointr(a1, &y.sa); - /* oba ne null */ - switch (x.smld->dtype) { - - case variable: - case idvariable: - case nvariable: - case fvariable: - case spec: - case rulename: /* coord removed */ - rez = (memcmp(x.sc8, y.sc8, sizeof(atomdescriptor)) == 0); - break; - - case number: - rez = (y.snd->dtype == number && x.snd->val == y.snd->val); - break; - - - case atom: - case idatom: - case keyword: - case tatom: - case fatom: - rez = (((1L << ((long)y.sad->dtype)) & - (((1L << ((long)keyword + 1)) - (1L << ((long)atom))) | - (1L << ((long)tatom)) | (1L << ((long)fatom)))) != 0 && - x.sad->name == y.sad->name); - break; - - case listmain: - rez = (x.smld->totalelnum == y.smld->totalelnum && - y.smld->dtype == listmain); - if (rez) { - first(a1, &px); - first(a2, &py); - while (rez && px.nel != 0) { - rez = eqop(o, px.cel, py.cel); - next(&px); - next(&py); - } /* while */ - } - break; - - case treemain: - rez = (x.smtd->totalarcnum == y.smtd->totalarcnum && - y.smtd->dtype == treemain); - if (rez) { - first(a1, &px); - while (rez && px.nel != 0) { - first(a2, &py); - while (py.nel != 0 && px.UU.U1.arc != py.UU.U1.arc) - next(&py); - if (py.nel == 0) - rez = false; - else - rez = eqop(o, px.cel, py.cel); - next(&px); - } /* while */ - } - break; - }/* case */ -_L1: - return rez; - - /* a2 <>null */ -} /* eqop */ - - -/* c4.pas */ - -boolean compare(op, a1, a2) -long op, a1, a2; -{ - /* kod operacii */ - /*=======================*/ - /* operacii */ - /* > < >= <= */ - /* whod: */ - /* a1 a2 */ - /* wyhod: */ - /* a1 op a2 */ - /*=======================*/ - boolean Result; - /* wyhod */ - - mpd x; - longint n[2]; /* changed 17-nov-90 */ - aa a_adr[2]; - char dts[2]; - - - Result = false; - - if (a1 == null_) { - n[0] = 0; - dts[0] = dummy; - } else { - pointr(a1, &x.sa); - n[0] = x.snd->val; - dts[0] = x.snd->dtype; - a_adr[0] = x.sad->name; - } - - if (a2 == null_) { - n[1] = 0; - dts[1] = dummy; - } else { - pointr(a2, &x.sa); - n[1] = x.snd->val; - dts[1] = x.snd->dtype; - a_adr[1] = x.sad->name; - } - - if ((dts[0] == dummy || dts[0] == number) && - (dts[1] == dummy || dts[1] == number)) { - Result = (op == 3 && n[0] > n[1] || op == 1 && n[0] < n[1] || - op == 4 && n[0] >= n[1] || op == 2 && n[0] <= n[1]); - - } else { - if (((1L << ((long)dts[0])) & ((1L << ((long)atom)) | (1L << ((long)idatom)) | - (1L << ((long)keyword)) | (1L << ((long)tatom)))) != 0) { - if (((1L << ((long)dts[1])) & - ((1L << ((long)atom)) | (1L << ((long)idatom)) | - (1L << ((long)keyword)) | (1L << ((long)tatom)))) != 0) { - Result = compatom(op, a_adr[0], a_adr[1]); - - } else { - if (dts[1] == dummy) - Result = (op > 2); - } - - } else { - if (dts[0] == dummy && - ((1L << ((long)dts[1])) & ((1L << ((long)atom)) | (1L << ((long)idatom)) | - (1L << ((long)keyword)) | (1L << ((long)tatom)))) != 0) - Result = (op < 3); - } - } - - - - -_L33: - return Result; - - -} /* compare */ - - - - - -/* End. */ diff --git a/RIGAL/rigsc.446/src/c4.o b/RIGAL/rigsc.446/src/c4.o deleted file mode 100644 index ae6295664dc8a7d84c80d7700ccb48b158404741..0000000000000000000000000000000000000000 Binary files a/RIGAL/rigsc.446/src/c4.o and /dev/null differ diff --git a/RIGAL/rigsc.446/src/cim.o b/RIGAL/rigsc.446/src/cim.o deleted file mode 100644 index d422482619edf7de6fe1c44f33cc1a36c861a809..0000000000000000000000000000000000000000 Binary files a/RIGAL/rigsc.446/src/cim.o and /dev/null differ diff --git a/RIGAL/rigsc.446/src/defsun3.o b/RIGAL/rigsc.446/src/defsun3.o deleted file mode 100644 index 6e1af93ad687b0391ee06a15586a5393b0e04547..0000000000000000000000000000000000000000 Binary files a/RIGAL/rigsc.446/src/defsun3.o and /dev/null differ diff --git a/RIGAL/rigsc.446/src/erm.o b/RIGAL/rigsc.446/src/erm.o deleted file mode 100644 index 470d08e8a51f9fe1e66bf60bcd857c434ebbd08f..0000000000000000000000000000000000000000 Binary files a/RIGAL/rigsc.446/src/erm.o and /dev/null differ diff --git a/RIGAL/rigsc.446/src/ic.o b/RIGAL/rigsc.446/src/ic.o deleted file mode 100644 index 59abc03a2f679f403db7b899d112a968dce2fe5d..0000000000000000000000000000000000000000 Binary files a/RIGAL/rigsc.446/src/ic.o and /dev/null differ diff --git a/RIGAL/rigsc.446/src/ley_.o b/RIGAL/rigsc.446/src/ley_.o deleted file mode 100644 index 55c899fce1154b0ac810b8e52a070401c3f71ebf..0000000000000000000000000000000000000000 Binary files a/RIGAL/rigsc.446/src/ley_.o and /dev/null differ diff --git a/RIGAL/rigsc.446/src/nef2.o b/RIGAL/rigsc.446/src/nef2.o deleted file mode 100644 index 159b2c53ed7fee7b8d5646e0efe59c1484f16201..0000000000000000000000000000000000000000 Binary files a/RIGAL/rigsc.446/src/nef2.o and /dev/null differ diff --git a/RIGAL/rigsc.446/src/ou2.o b/RIGAL/rigsc.446/src/ou2.o deleted file mode 100644 index 60e5dbcb9a2c938319ba2daebd82842459cf5008..0000000000000000000000000000000000000000 Binary files a/RIGAL/rigsc.446/src/ou2.o and /dev/null differ diff --git a/RIGAL/rigsc.446/src/rc_.o b/RIGAL/rigsc.446/src/rc_.o deleted file mode 100644 index e65ff976b1bd64e832e9d009758e2bd73dfa323a..0000000000000000000000000000000000000000 Binary files a/RIGAL/rigsc.446/src/rc_.o and /dev/null differ diff --git a/RIGAL/rigsc.446/src/scan.o b/RIGAL/rigsc.446/src/scan.o deleted file mode 100644 index 28941a2a8bea25d34fd740712671b2863ab3054b..0000000000000000000000000000000000000000 Binary files a/RIGAL/rigsc.446/src/scan.o and /dev/null differ diff --git a/RIGAL/rigsc.446/src/scanmif.o b/RIGAL/rigsc.446/src/scanmif.o deleted file mode 100644 index e49927b5253ba8d15ec7e1bb52e6b6fe9ad3ee82..0000000000000000000000000000000000000000 Binary files a/RIGAL/rigsc.446/src/scanmif.o and /dev/null differ diff --git a/RIGAL/rigsc.446/src/sevice.c~ b/RIGAL/rigsc.446/src/sevice.c~ deleted file mode 100644 index a68e5744f6d71bce065d205a3ada884d4c110e30..0000000000000000000000000000000000000000 --- a/RIGAL/rigsc.446/src/sevice.c~ +++ /dev/null @@ -1,370 +0,0 @@ -#include <stdlib.h> -#include "globrig.h" -#include "define.h" -#include "defpage.h" - -/*procedure argv(i:integer;var rez:string80); - begin rez:=paramstr(i);end; -function argc:integer; - begin argc:=paramcount+1;end;*/ - -long long_to_atom(a_long) -long a_long; -{ - a a_rez; - mpd x; - numberdescriptor *WITH; - - gets1(&a_rez, &x.sa); - WITH = x.snd; - WITH->dtype = number; - WITH->cord = 0; - WITH->val = a_long; - return a_rez; -} - - -Char *real_to_string(Result, ar) -Char *Result; -double ar; -{ - sprintf(Result,"%E",ar); -/* - boolean neg; - string80 bs, cs; - - neg = false; - if (ar < 0) { - ar = -ar; - neg = true; - } - long_to_str(bs, (long)ar); - long_to_str(cs, (long)((ar - (long)ar + 1.0) * 100000L)); - cs[0] = '.'; - if (neg) { - sprintf(Result, "-%s%s", bs, cs); - return Result; - } else { - sprintf(Result, "%s%s", bs, cs); - return Result; - } -*/ -} - -boolean is_rig_letter(let) -int let; -{ return ( isalpha(let) || (let=='_') - || (let=='~')|| (let=='|')|| (let=='`')|| (let=='{')|| (let=='}') - ); } - -boolean is_rig_symbol(let) -int let; -{ return ( is_rig_letter(let) || isdigit(let) ); } - -char* _OutMem() -{ printf(" **** Out of memory ****"); - exit(0); -} - -void _EscIO(d) -int d; -{ printf(" ****** I/O Error *****"); - exit(0); -} - -Char *real_to_string_f(Result, ar, dignum, afterpoint) -Char *Result; /* MANUAL CHANGE char to Char */ -double ar; - long dignum, afterpoint; -{ - boolean neg; - string80 bs, cs; - double mult; - long i; - Char STR1[82]; - Char STR2[162]; - - mult = 1.0; - for (i = 1; i <= afterpoint; i++) - mult *= 10; - - neg = false; - if (ar < 0) { - ar = -ar; - neg = true; - } - long_to_str(bs, (long)ar); - long_to_str(cs, (long)((ar - (long)ar + 1.0) * mult)); - cs[0] = '.'; - if (afterpoint == 0) - *cs = '\0'; - if (neg) - sprintf(bs, "-%s%s", strcpy(STR2, bs), cs); - else - strcat(bs, cs); - if (strlen(bs) < dignum) { - while (strlen(bs) != dignum) - sprintf(bs, " %s", strcpy(STR1, bs)); - } - strcpy(Result,bs); /* Splitted manually */ - return Result; - } - - -long str_to_atom(ssr_) -Char *ssr_; -{ - string80 ssr; - long l; - a rez; - aa atm; - longint intval; - boolean id; - long i; - - strcpy(ssr, ssr_); - rez = null_; - val(ssr, &intval, &l); - if (l == 0) { - rez = long_to_atom(intval); - return rez; - } - else { - rez = str_to_textatom(ssr); - return rez; - } -} - -long str_to_textatom(ssr_) -Char *ssr_; -{ - string80 ssr; - long l; - a rez; - aa atm; - longint intval; - boolean id; - long i; - mpd x; - atomdescriptor *WITH; - - strcpy(ssr, ssr_); - rez = null_; - l = strlen(ssr); - if (l == 0) - return rez; - id = is_rig_letter(ssr[0]); - for (i = 0; i < l; i++) - id &= is_rig_letter (ssr[i]); - putatm(ssr, l, &atm); /* makes a-address */ - gets1(&rez, &x.sa); /* makes s-address */ - /* fills descriptor */ - WITH = x.sad; - if (id) - WITH->dtype = idatom; - else - WITH->dtype = atom; - WITH->name = atm; - return rez; -} - - -Char *long_to_str(Result, int_) -Char *Result; -long int_; -{ - sprintf(Result,"%ld",int_); - return(Result); -/* ******************* - string80 rezstr; - boolean neg; - Char STR1[256]; - Char STR2[82]; - - neg = false; - if (int_ < 0) { - int_ = -int_; - neg = true; - } - *rezstr = '\0'; - do { - sprintf(STR1, "%c", (Char)(int_ % 10 + rezstr + '0')); - strcpy(rezstr, STR1); - p2c: defsun3.z, line 541: - * Note: Using % for possibly-negative arguments [317] - int_ /= 10; - } while (int_ != 0); - if (neg) - sprintf(rezstr, "-%s", strcpy(STR2, rezstr)); - printf("SC=%s",strcpy(Result,rezstr)); - printf("RE=%s",Result); - return strcpy(Result, rezstr); - ************************ */ -} - - -Char *aa_str(Result, a1) -Char *Result; -long a1; -{ - bl80 b80; - long len; - Char STR2[256]; - - pointa(a1, b80, &len); - - sprintf(STR2, "%.80s", b80); - sprintf(Result, "%.*s", (int)len, STR2); - return Result; - -} - - -Void val(m, intval, rez) -Char *m; -long *intval, *rez; -{ - /* converts string to longint. returns 0 if normal terminated */ - int i; - boolean sign; - i = 1; - *intval = 0; - *rez = 1; - sign = false; - if (m[0] == '-') { - sign = true; - i++; - } - if (m[0] == '+') - i++; - while ((i <= strlen(m)) && isdigit(m[i - 1])) { - *intval = *intval * 10 + m[i - 1] - '0'; - i++; - } - if (i <= strlen(m)) { - *rez = i; - *intval = 0; - } else - *rez = 0; - if (sign) - *intval = -*intval; -} - - -Void val2(st_, r, code) -Char *st_; -double *r; -long *code; -{ - char * res; /* Help variable , used to analyze the result of "strtod" */ - res=st_; - *r=strtod(st_,&res); - if ((res != st_)&&(res>=st_+strlen(st_))) - *code=0; /* Correct value */ - else *code=1; /* Incorrect value */ - - -/* - string80 st; - long i, l; - double rx; - boolean sign; - long SET[3]; - long SET1[9]; - - strcpy(st, st_); - *code = 0; - i = 1; - l = strlen(st); - *r = 0.0; - while (i <= l && st[i - 1] == ' ') - i++; - if (i <= l && st[i - 1] == '-') { - sign = true; - i++; - } else - sign = false; - if ((i > l) | (! - ( isdigit(st[i-1]) || (st[i-1]=='.') ) -#ifdef xxx - P_inset(st[i - 1], - P_setunion - (SET1, digit, - P_addset(P_expset(SET, 0L), '.'))) -#endif - - )) - { - *code = i; - *r = 0.0; - goto _L1; - } - while ((i <= l) && isdigit(st[i - 1])) { - *r = *r * 10 + st[i - 1] - '0'; - i++; - } - if (i <= l && st[i - 1] == '.') { - i++; - rx = 1.0; - while ((i <= l) && isdigit(st[i - 1])) { - rx /= 10.0; - *r += rx * (st[i - 1] - '0'); - i++; - } - } - - if (i != l + 1) { - *code = i; - *r = 0.0; - } - if (sign) - *r = -*r; -_L1: ; - -*/ -} - - - - -Void brt(p1) -Char *p1; -{ - long i; - Char STR1[256]; - - i = 1; - while (i <= strlen(p1) && p1[i - 1] != ' ') - i++; - /* writeln('i=',i);*/ - sprintf(p1, "%.*s", (int)(i - 1), strcpy(STR1, p1)); -} - - - - - -FILE *fi; - - -boolean existfile(fname) -Char *fname; -{ FILE * FF; - /* returns true if it is screen file ('') or existing disk file */ - FF=fopen(fname,"r"); - if (FF!=0) fclose(FF); - return (FF!=0); -} - - - -boolean rightfile(fname) -Char *fname; -{ - - /* returns true if it is screen or nul (dummy) or valid disk file - ( former version is erased (!) ) */ - return true; -} - - diff --git a/RIGAL/rigsc.446/src/sevice.o b/RIGAL/rigsc.446/src/sevice.o deleted file mode 100644 index d71154e5e4f12ed6274998aa1da2fe164efd4d26..0000000000000000000000000000000000000000 Binary files a/RIGAL/rigsc.446/src/sevice.o and /dev/null differ diff --git a/RIGAL/rigsc.446/src/usemod.c~ b/RIGAL/rigsc.446/src/usemod.c~ deleted file mode 100644 index 08b6f805efd49a5680f8983c4753d53dd06e5079..0000000000000000000000000000000000000000 --- a/RIGAL/rigsc.446/src/usemod.c~ +++ /dev/null @@ -1,1711 +0,0 @@ -#include "globrig.h" -#include "define.h" -#include "defpage.h" -#include "ley.h" -#include "scan.h" -#include "nef2.h" -#include "usemod.h" -#include <math.h> -#include <string.h> - /* us1 bodies of use-procedures for sun */ - -mpd xx; - - -Static boolean plstr(p0, strval, lenval, stringflag, stringval) -long p0; -Char *strval; -long *lenval; -boolean stringflag; -Char *stringval; -{ - /* input - s-address*/ - /* output: array */ - /* length of atom */ - /* need stringval ? */ - /* string */ - /* returns array of letters of atom if it is list parameter; */ - /* stringval with the same contest returned only - if required by stringflag */ - aa atm; - long i, FORLIM; - - *stringval = '\0'; - if (p0 == null_) - return false; - else { - pointr(p0, &xx.sa); /* access to atom in memory */ - if (((1L << ((long)xx.sad->dtype)) & ((1L << ((long)fatom + 1)) - - (1L << ((long)atom))) & (~(1L << ((long)number)))) == 0) - return false; - else { - atm = xx.sad->name; /* access to a-address */ - pointa(atm, strval, lenval); /* reads value to str variable */ - if (stringflag) { - FORLIM = *lenval; - for (i = 0; i < FORLIM; i++) - sprintf(stringval + strlen(stringval), "%c", strval[i]); - /* and to stringval variable */ - } - - return true; - } - } -} /* plstr */ - - - - -Static Char bc(a_) -long a_; -{ - if (a_ >= 10) - return ((Char)(a_ + 55)); - else - return ((Char)(a_ + 48)); -} - - -Static Void dump(adr, sad) -long adr, sad; -{ - /* physical address */ -} - - -a a2, atm; -long j, l, i1; -error_rec_type error_rec_use; -Char dty; -FILE *workfile; -Char c; -boolean id; -string80 sv1, sv2, svar; -bl80 str_; /*for pointa & putatm*/ -bl80 str1_; /*for pointa & putatm*/ -longint im[5]; - - - typedef union sa_pointer { - a pointa; - Char immed[4]; - struct { - - - word offset; - Char page, pazime; - - } struct_; -} sa_pointer; - - -Void use_42(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - /* returns current page (very useful for big algorythms) */ - sa_pointer xxx; - long i; - numberdescriptor *WITH; - - gets1(rez, &xx.sa); - WITH = xx.snd; - - WITH->dtype = number; - WITH->cord = 0; - xxx.pointa = *rez; - putchar('\n'); - for (i = 0; i <= 3; i++) - printf("%d-", xxx.immed[i]); - putchar('\n'); - WITH->val = xxx.immed[1]; -} - - -Void use_43(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - /* returns #call_pas(42) if current disk in use, - 0 otherwise. */ - numberdescriptor *WITH; - - gets1(rez, &xx.sa); - WITH = xx.snd; - WITH->dtype = number; - WITH->cord = 0; - vols(im, &im[1], &WITH->val); -} - - -Void use_30(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - *rez = null_; - /*write atom or number*/ - if (plstr(p1, str_, &l, true, sv1)) - fputs(sv1, stdout); - else { - if (plnum(p1, im)) - printf("%12ld", im[0]); - } -} - - -Void use_31(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - long i, FORLIM; - - /*write atom or number with adding spaces after it or rupping the end*/ - *rez = 0; - if (!plstr(p1, str_, &l, true, sv1)) { - if (!plnum(p1, &im[1])) - goto _L1; - long_to_str(sv1, im[1]); - } - if (plnum(p2, im)) { - if (im[0] > strlen(sv1)) { - FORLIM = im[0]; - for (i = strlen(sv1); i < FORLIM; i++) - sv1[i] = ' '; - } - - printf("%*s", (int)im[0], sv1); - } else - fputs(sv1, stdout); -_L1: ; -} - - - -Void use_1(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - char *TEMP; /* Char ->char */ - - *rez = 0; - /* puts an atom (or null) to screen. - user's answer (atom, identifier or number ) is returned */ - if (plstr(p1, str_, &l, true, sv1)) - fputs(sv1, stdout); - fgets(svar, 81, stdin); - TEMP = strchr(svar, '\n'); - if (TEMP != NULL) /* enters from screen */ - *TEMP = 0; - *rez = str_to_atom(svar); -} - - -/*rigal lexical analyser */ -Void use_14(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - *rez = 0; - *error_rec_use.message = '\0'; - if (plstr(p1, str_, &l, true, sv1)) - ley(sv1, rez, false, &error_rec_use); -} - - -Void use_15(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - *rez = 0; - *error_rec_use.message = '\0'; - if (plstr(p1, str_, &l, true, sv1)) - ley(sv1, rez, true, &error_rec_use); -} - -Void use_16(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - FILE *inpfile; - string80 s; - Char c; - long rline; - int fff; - - inpfile = NULL; - *rez = 0; - if (plstr(p1, str_, &l, true, sv1)) { - if (existfile(sv1)) { - inpfile = fopen(sv1, "r"); - if (inpfile == NULL) _EscIO(FileNotFound); - - *rez = null_; - while (!feof(inpfile)) { - - - fgets(s,145,inpfile); - if (s[strlen(s)-1]=='\n') - { s[strlen(s)-1]=0; - fff=fgetc(inpfile); - if (fff!=10) - { ungetc(fff,inpfile);} - } - - - a2 = str_to_textatom(s); - lconc(rez, a2); - } /*while eof*/ - /* readln(inftext,svar); */ - - if (inpfile != NULL) - fclose(inpfile); - inpfile = NULL; - } - - } - if (inpfile != NULL) - fclose(inpfile); -} - - - -Void use_4(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - numberdescriptor *WITH; - - *rez = 0; - /* finds coordinate of atom */ - if (p1 == 0) - return; - pointr(p1, &xx.sa); - if (((1L << ((long)xx.sad->dtype)) & ((1L << ((long)fatom + 1)) - - (1L << ((long)atom))) & (~(1L << ((long)number)))) != 0) - a2 = xx.sad->cord; - else if (xx.snd->dtype == number) - a2 = xx.snd->cord; - else - a2 = 0; - /* make numerical atom */ - gets1(rez, &xx.sa); /* fill descriptor */ - WITH = xx.snd; - WITH->dtype = number; - WITH->cord = 0; - WITH->val = a2; -} - - -Void use_10(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - - /* dump */ - *rez = 0; - if (p1 == 0) - return; - a2 = p1; - do { - pointr(a2, &xx.sa); - dump(xx.sa, a2); - printf(" Another address="); - scanf("%ld%*[^\n]", &a2); - getchar(); - } while (a2 != 0); -} - - -Void use_13(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - /* nice print */ - *rez = 0; - if (p1 != 0) - putchar('\n'); /* dout(p1);*/ -} - - -Void use_12(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - *rez = 0; - /* nice print */ - if (p1 != 0) - fprintf(out, "\n\n"); /*dout2(p1);*/ -} - - - -Void use_19(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - *rez = 0; - - -} - - -Void use_20(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - /*random*/ - *rez = 0; - -} - - -Void use_21(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - /* atom->number, others->null */ - *rez = 0; - if (!plstr(p1, str_, &l, true, sv1)) - return; - /* if (sv1[l]='l') or (sv1[l]='L') - then sv1:=substr(sv1,1,l-1);*/ - /*substr*/ - val(sv1, im, &l); - if (l == 0) - *rez = long_to_atom(im[0]); -} - - - - - - a erlist; - - -/* used to leave error message list in usepas after scaner - return it to another usepas call later - when it will - be retrieved */ - -Void use_35(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - /* scaner receives data from file */ - /* format #call_pas(35 $dos_filename [ $options ]) */ - /* returns null if file does not exist */ - erlist = 0; - *rez = 0; - if (!plstr(p1, str_, &l, true, sv1)) /* file name */ - return; - if (!plstr(p2, str_, &l, true, sv2)) /* options */ - *sv2 = '\0'; - initialize_scan_variables(); - scaner(1L, sv1, sv2, rez, &erlist, (long)null_, 0L, 0L); -} - - -Void use_121(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - /* scaner receives data from file */ - /* format #call_pas(121 $mif_filename [ $options ]) */ - /* returns null if file does not exist */ - erlist = 0; - *rez = 0; - if (!plstr(p1, str_, &l, true, sv1)) /* file name */ - return; - if (!plstr(p2, str_, &l, true, sv2)) /* options */ - *sv2 = '\0'; - initialize_scan_variables_mif(); - scaner_mif(1L, sv1, sv2, rez, &erlist, (long)null_, 0L, 0L); -} - - -Void use_36(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - /* scaner receives data from list of strings, - numbers and complex structures in the input list are ignored */ - /* format #call_pas(36 $list [$options] ) */ - *rez = 0; - erlist = 0; - if (!plstr(p2, str_, &l, true, sv2)) /* options */ - *sv2 = '\0'; - initialize_scan_variables(); - scaner(2L, "", sv2, rez, &erlist, p1, 0L, 0L); -} - - -Void use_38(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - /* returns error message list, - produced after last call of "scaner" */ - *rez = erlist; -} - - - -Void use_40(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - /* any -> s-address */ - numberdescriptor *WITH; - - gets1(rez, &xx.sa); - WITH = xx.snd; - WITH->dtype = number; - WITH->cord = 0; - WITH->val = p1; -} - - -Void use_41(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - /* returns current s-address */ - numberdescriptor *WITH; - - gets1(rez, &xx.sa); - WITH = xx.snd; - WITH->dtype = number; - WITH->cord = 0; - WITH->val = *rez; -} - - -Void use_44(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - /* sets coordinate to atom */ - *rez = 0; - if (!plnum(p2, im)) - goto _L1; - if (p1 != 0) { - *rez = p1; - a2 = p1; - points(a2, &xx.sa); - if (((1L << ((long)xx.sad->dtype)) & ((1L << ((long)fatom + 1)) - - (1L << ((long)atom))) & (~(1L << ((long)number)))) != 0) - xx.sad->cord = im[0]; - else if (xx.snd->dtype == number) - xx.snd->cord = im[0]; - } -_L1: ; -} - - -Void use_45(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - reopen(rez, &p1); - /* removes all s-space saving only this p1 value in result; - all variables after that moment will have wrong values */ - /* this not allowed in interpreter ! */ -} - - -Void use_46(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - *rez = null_; -} /* returns null if we are in compiler */ - - - -Void use_9(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - *rez = 0; -} - - -Void use_85(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - /* upcase */ - long FORLIM; - - *rez = 0; - if (!plstr(p1, str_, &l, true, sv1)) - return; - FORLIM = strlen(sv1); - for (j = 1; j <= FORLIM; j++) { - if (islower(sv1[j - 1])) - sv1[j - 1] -= 32; - } - *rez = str_to_textatom(sv1); -} - - -Void use_86(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - /* locase */ - long FORLIM; - - *rez = 0; - if (!plstr(p1, str_, &l, true, sv1)) - return; - FORLIM = strlen(sv1); - for (j = 1; j <= FORLIM; j++) { - if (isupper(sv1[j - 1])) - sv1[j - 1] += 32; - } - *rez = str_to_textatom(sv1); -} - - -Void use_87(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - /* substr */ - Char STR1[256]; - - *rez = 0; - if (!plstr(p1, str_, &l, true, sv1)) - return; - if (plnum(p2, im)) { - if (!plnum(p3, &im[1])) - im[1] = l; - } - sprintf(STR1, "%.*s", (int)im[1], sv1 + im[0] - 1); - *rez = str_to_textatom(STR1); -} - - -Void use_88(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ char * tmp; - /* position */ - *rez = 0; - if (plstr(p1, str_, &l, true, sv1)) { - if (plstr(p2, str_, &l, true, sv2)) - { tmp=strstr(sv2,sv1); - *rez = long_to_atom((long) (tmp?((long)tmp-(long)sv1):0) );} - } -} - - -Void use_90(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - long iii; - - /* if plnum(p2,im[1]) then hlt:=im[1] else hlt:=0; */ - for (iii = 0; iii < filenum; iii++) { - if (filetab[iii].isopen) { - if (filetab[iii].screen) - putchar('\n'); /* Corrected 29/5/95 */ - else - {putc('\n', files[iii]); - if (files[iii] != NULL) - fclose(files[iii]);} - files[iii] = NULL; - } - } - if (out_open) { - if (out != NULL) - fclose(out); - out = NULL; - } - closea(); - closes(); - - exit(0); -} - - - -Void use_78(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - if (plnum(p1, im)) - max_printlevel = im[0]; -} - - -Void use_79(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - boolean is_tree; - ptr_ ap; - longint elnum; - atomdescriptor *WITH; - - *rez = null_; - first(p1, &ap); - is_tree = (ap.ptrtype == ptrtree); - elnum = 0; - while (ap.nel != 0) { - elnum++; - if (eqatoms(ap.cel, p2)) - goto _L22; - next(&ap); - } - return; -_L22: - if (!is_tree) { - *rez = long_to_atom(elnum); - return; - } - - gets1(rez, &xx.sa); /* makes s-address */ - /* fills descriptor */ - WITH = xx.sad; /* with */ - WITH->dtype = idatom; - WITH->name = ap.UU.U1.arc; -} - - -Void use_91(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - /* for lists - modifies list descriptor and - makes it 1 element shorter by deleting ladst element ; - returns the argument. - if length of list is 1 or 0 then this function returns null, - but list descriptor is not modified (!!!) - if argument is not list then returns null. - - e.g. - $a:=(.a.) - #call_pas(91 $a) returns null , but $a retain (.a.) - - $a:=(.a b.) - #call_pas(91 $a) returns (.a.), and $a is (.a.) - */ - ptr_ ap; - longint len, i; - - *rez = null_; - points(p1, &xx.sa); - if (xx.smld->dtype != listmain) - return; - len = xx.smld->totalelnum; - if (len == 1 || len == 0) - return; - first(p1, &ap); - for (i = 1; i <= len - 2; i++) - next(&ap); - /* we are standing on the last element of future list */ - /* the next elements (or descriptor) are to cut off, - we split to 4 cases main/fragm element/descriptor */ - *rez = p1; - points(ap.UU.U1.curfragment, &xx.sa); - if (xx.smld->dtype == listmain) { - if (ap.nel == mainlistelnum) { - xx.smld->next = null_; - xx.smld->lastfragm = ap.UU.U1.curfragment; - /* correction 8-apr-1993 */ - } else - xx.smld->elnum--; - xx.smld->totalelnum--; - return; - } - if (ap.nel == fragmlistelnum) { - xx.sfld->next = null_; - points(p1, &xx.sa); - xx.smld->lastfragm = ap.UU.U1.curfragment; - /* correction 8-apr-1993 */ - } else - xx.sfld->elnum--; - points(p1, &xx.sa); - xx.smld->totalelnum--; -} - - - -Static long selection(tree, arc) -long tree, arc; -{ - long Result; - ptr_ ap; - - Result = null_; - first(tree, &ap); - if (ap.ptrtype != ptrtree) - return Result; - while (ap.nel != null_ && ap.UU.U1.arc != arc) - next(&ap); - if (ap.UU.U1.arc == arc) - return (ap.cel); - return Result; -} - - -Static long indexing(list, index) -long list, index; -{ - long Result; - ptr_ ap; - longint maxind, i; - - Result = null_; - first(list, &ap); - if (ap.ptrtype != ptrlist) - return Result; - pointr(list, &xx.sa); - maxind = xx.smld->totalelnum; - if (index < -maxind || index == 0 || index > maxind) - return Result; - if (index < 0) - index += maxind + 1; - for (i = 1; i < index; i++) - next(&ap); - return (ap.cel); -} - - - -Void use_92(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - /* traverses list "p1". - if element is a number then index is applied to "p2" - if element is an atom the selection ia applied to "p2" */ - ptr_ ap; - - *rez = p2; - first(p1, &ap); - if (ap.ptrtype != ptrlist) { - *rez = null_; - return; - } - while (ap.nel != null_) { - pointr(ap.cel, &xx.sa); - if (xx.snd->dtype == number) - *rez = indexing(*rez, xx.snd->val); - else if (xx.sad->dtype == idatom) - *rez = selection(*rez, xx.sad->name); - else - *rez = null_; - if (*rez == null_) - return; - next(&ap); - } -} - - -Void use_93(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - /* returns stack size*/ - *rez = 0; -} - - - - - -Void use_108(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - /* get environment variable ; - requires variable name(string) - returns null if absent - or value (converted to number if possible) */ - string80 pc; - - *rez = 0; - if (plstr(p1, str_, &l, true, sv1)) { - - *rez = str_to_atom(getenv(sv1)); - } -} - - - -Void use_110(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - *rez = 0; - } - - -Void use_111(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - *rez = 0; - } - - -Void use_116(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - /* returns c-string value 'a"bc\n' -> '"abc\\m\"' */ - long i, FORLIM; - - *rez = 0; - if (!plstr(p1, str_, &l, true, sv1)) - return; - strcpy(sv2, "\""); - FORLIM = l; - for (i = 0; i < FORLIM; i++) { - if (sv1[i] == '\\' || sv1[i] == '"') - strcat(sv2, "\\"); - sprintf(sv2 + strlen(sv2), "%c", sv1[i]); - } - strcat(sv2, "\""); - *rez = str_to_atom(sv2); -} - - - - -/* floating point processor */ -Void use_80(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ - long real_size; - - long i; - double re1, re2, re3; - Char c1, c2_; - mpd x; - double *refr2, *refr3; - numberdescriptor *WITH; - atomdescriptor *WITH1; - - real_size = sizeof(double); - *rez = 0; /* in case of unsuccessful data returns null */ - if (!plstr(p1, str1_, &l, false, sv1)) - goto _L1; - - c1 = str1_[0]; - if (l > 1 ) - c2_ = str1_[1]; - else - c2_ = ' '; - switch (c1) { /*1*/ - - case 'S': /* string -> real */ - if (!plstr(p2, str_, &l, true, sv1)) - goto _L1; - val2(sv1, &re1, &i); - if (i != 0) - goto _L1; - break; - - case 'I': /*2*/ - /* integer -> real */ - if (!plnum(p2, &im[1])) - goto _L1; - re1 = im[1]; /* *1.0 */ - break; - - - /* real -> ... */ - - default: - if (!plstr(p2, str_, &l, false, sv1)) - goto _L1; - if (l != real_size) - goto _L1; - refr2 = (double *)str_; - /* re2 = *refr2; */ - memcpy(&re2,refr2,sizeof(double)); - switch (c1) { /*3*/ - - case 'T': - im[2] = (long)re2; - gets1(rez, &x.sa); - WITH = x.snd; - WITH->dtype = number; - WITH->val = im[2]; - goto _L1; - break; - - case 'Z': /*4*/ - if (!plnum(p3, &im[1])) - goto _L1; - real_to_string_f(svar, re2, im[1] / 100, im[1] % 100); -/* p2c: ./use80.pas, line 48: - * Note: Using % for possibly-negative arguments [317] */ - i = strlen(svar); - putatm(svar, i, &atm); - gets1(rez, &x.sa); - WITH1 = x.sad; - WITH1->dtype = atom; - WITH1->name = atm; - goto _L1; - break; - - case 'V': /*4*/ - sprintf(svar,"%E",re2); - i = strlen(svar); - putatm(svar, i, &atm); - gets1(rez, &x.sa); - WITH1 = x.sad; - WITH1->dtype = atom; - WITH1->name = atm; - goto _L1; - break; - - case 'F': - if (!plstr(p3, str_, &l, true, sv1)) - goto _L1; - sprintf(svar,sv1,re2); - i = strlen(svar); - putatm(svar, i, &atm); - gets1(rez, &x.sa); - WITH1 = x.sad; - WITH1->dtype = atom; - WITH1->name = atm; - goto _L1; - break; - - - - case 'Q': if (re2>0) re1=sqrt(re2); else goto _L1; break; - case 'X': re1=exp(re2); break; - case 'L': if (re2>0) re1=log(re2); else goto _L1; break; - - - case 't': - if (!strncmp("tSIN",str1_,4)) re1=sin(re2); - else if (!strncmp("tCOS",str1_,4)) re1=cos(re2); - else if (!strncmp("tTAN",str1_,4)) re1=tan(re2); - else if (!strncmp("tASIN",str1_,5)) re1=asin(re2); - else if (!strncmp("tACOS",str1_,5)) re1=acos(re2); - else if (!strncmp("tATAN",str1_,5)) re1=atan(re2); - break; - - default: - if (!plstr(p3, str_, &l, false, sv1)) - goto _L1; - if (l != real_size) - goto _L1; - refr3 = (double *)str_; - /* re3 = *refr3; */ - memcpy(&re3,refr3,sizeof(double)); - - switch (c1) { /*5*/ - - case '+': - re1 = re2 + re3; - break; - - case '-': - re1 = re2 - re3; - break; - - case '*': - re1 = re2 * re3; - break; - - case '/': - if (re3 == 0) - goto _L1; - re1 = re2 / re3; - break; - - case '=': - if (re2 == re3) - *rez = p2; - goto _L1; - break; - - case '>': - if (c2_ == '=') { - if (re2 >= re3) - *rez = p2; - } else { - if (re2 > re3) - *rez = p2; - } - goto _L1; - break; - - case '<': - if (c2_ == '=') { - if (re2 <= re3) - *rez = p2; - } else if (c2_ == '>') { - if (re2 != re3) - *rez = p2; - } else if (re2 < re3) - *rez = p2; - goto _L1; - break; - - - default: /* wrong real operation */ - goto _L1; - break; - }/*5*/ - /*4*/ - break; - }/*3*/ - /*2*/ - break; - }/*1*/ - /* this part processes only + - * / s(str->real) i(int->real) */ - refr2 = (double *)svar; -/* *refr2 = re1; */ - memcpy(refr2,&re1,sizeof(double)); - - putatm(svar, real_size, &atm); - gets1(rez, &x.sa); - WITH1 = x.sad; - WITH1->dtype = fatom; - WITH1->name = atm; -_L1: ; -} - - - - - -/* these procedures currently are used in ibm/pc version - of rigal. don't use them for future compatibility */ -Void use_2(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_3(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_5(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_6(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_7(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_8(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_11(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_17(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_18(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_22(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_23(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_24(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_25(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_26(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_27(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_28(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_29(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_32(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_33(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_34(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_37(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_39(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_47(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_48(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_49(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_50(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_51(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_52(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_53(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_54(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_55(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_56(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_57(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_58(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_59(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_60(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_61(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_62(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_63(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_64(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_65(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_66(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_67(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_68(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_69(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_70(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_71(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_72(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_73(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_74(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_75(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_76(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_77(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_81(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_82(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_83(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_84(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - -Void use_89(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - - -Void use_94(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_95(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_96(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_97(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_98(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_99(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_100(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_101(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_102(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_103(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_104(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_105(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_106(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_107(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_109(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_112(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_113(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_114(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_115(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_117(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_118(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_119(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -/* these procedures are not used , you can use them ! */ - -Void use_120(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_122(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_123(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_124(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_125(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_126(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_127(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_128(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_129(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_130(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_131(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_132(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_133(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_134(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_135(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_136(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_137(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_138(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_139(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_140(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_141(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_142(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_143(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_144(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_145(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_146(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_147(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_148(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_149(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - -Void use_150(p1, p2, p3, rez) -long p1, p2, p3, *rez; -{ -} - - - - -/* End. */ - diff --git a/RIGAL/rigsc.446/src/usemod.o b/RIGAL/rigsc.446/src/usemod.o deleted file mode 100644 index 27d9f9016d36e89edbd59e50189272f8c714d022..0000000000000000000000000000000000000000 Binary files a/RIGAL/rigsc.446/src/usemod.o and /dev/null differ diff --git a/RIGAL/rigsc.446/src/v.o b/RIGAL/rigsc.446/src/v.o deleted file mode 100644 index 57b253f11641de8969b4c6cd7bb1af53c699d3cb..0000000000000000000000000000000000000000 Binary files a/RIGAL/rigsc.446/src/v.o and /dev/null differ