commit 7cad314c94174f6025cf1c4fc068eb542715ee5a Author: Eagle517 <347708-Eagle517@users.noreply.gitlab.com> Date: Mon Feb 17 23:17:30 2025 -0600 Initial commit diff --git a/Makefile b/Makefile new file mode 100755 index 0000000..de4cc1b --- /dev/null +++ b/Makefile @@ -0,0 +1,46 @@ +-include mk/conf.mk + +ifndef CONFIG_STATUS +doConfigure: + $(error Configuration file not defined. Please run $(MAKE) -f mk/configure.mk) + #@$(MAKE) --no-print-directory -f ../mk/configure.mk +else +ifeq ($(CONFIG_STATUS),INVALID) +doConfigure: + $(error Invalid Configuration file. Please run $(MAKE) -f mk/configure.mk) + #@$(MAKE) --no-print-directory -f mk/configure.mk +endif +endif + +default: + @$(MAKE) -s -C lib default + @$(MAKE) -s -C engine + +.PHONY: tools engine dedicated docs clean + +tools: + @$(MAKE) -s -C tools + +dedicated: + @$(MAKE) -s -C lib + @$(MAKE) -s -C engine dedicated + +engine: + @$(MAKE) -s -C lib + @$(MAKE) -s -C engine engine + +html_docs: +# Assumes Doxygen is in your path + @doxygen doc/doxygen/html/doxygen.html.cfg + +php_docs: +# Internal gg use only +# Assumes Doxygen is in your path + @doxygen doc/doxygen/php/doxygen.php.cfg + +all: default tools + +clean: + @$(MAKE) -s -C engine clean + @$(MAKE) -s -C lib clean + @$(MAKE) -s -C tools clean diff --git a/ReadMe.html b/ReadMe.html new file mode 100755 index 0000000..38851ba --- /dev/null +++ b/ReadMe.html @@ -0,0 +1,72 @@ + + + + Torque Engine SDK + + + + +

Torque Game Engine SDK

+ +

Welcome to the GarageGames +Torque Game Engine SDK.

+ +

+ + +
+

Getting Started

+ +

+This SDK release includes the Torque Engine, related +tools and the demo application. Binaries and sources are included for all +applications. All Torque SDK documentation is found online on the +Torque Game Engine SDK Documentation +home page. You must be logged into the GarageGames site for all the documentation to be visible. +Documentation is divided into two main books:

+ + +
+

SDK Home Page

+

The Torque SDK home page contains links to +all the documentation as well as tutorials, example code and all other things Torque related. This should be +your first stop for information regarding the SDK.

+ +
+

Forums

+

The Torque SDK has a large online community located on the GarageGames +forums. Forums dedicated to the Torque engine +include both the public and +private SDK forums. To access the private +forums you must be logged in to the GarageGames site.

+ +
+

FAQ

+

Visit the online FAQ resources +for frequently answered questions regarding the engine SDK and tools.

+ +
+

Support

+

Support is provided exclusively through the online Torque SDK Private Forums +and FAQ resources. +Please make sure you read through the FAQs before posting questions. The Private forums are only visible if you are logged into the +GarageGames website.

+ +

- GarageGames Staff

+ + + + diff --git a/bin/bison/bison.exe b/bin/bison/bison.exe new file mode 100755 index 0000000..4881bf6 Binary files /dev/null and b/bin/bison/bison.exe differ diff --git a/bin/bison/bison.hairy b/bin/bison/bison.hairy new file mode 100755 index 0000000..260b687 --- /dev/null +++ b/bin/bison/bison.hairy @@ -0,0 +1,334 @@ + +extern int timeclock; + + +int yyerror; /* Yyerror and yycost are set by guards. */ +int yycost; /* If yyerror is set to a nonzero value by a */ + /* guard, the reduction with which the guard */ + /* is associated is not performed, and the */ + /* error recovery mechanism is invoked. */ + /* Yycost indicates the cost of performing */ + /* the reduction given the attributes of the */ + /* symbols. */ + + +/* YYMAXDEPTH indicates the size of the parser's state and value */ +/* stacks. */ + +#ifndef YYMAXDEPTH +#define YYMAXDEPTH 500 +#endif + +/* YYMAXRULES must be at least as large as the number of rules that */ +/* could be placed in the rule queue. That number could be determined */ +/* from the grammar and the size of the stack, but, as yet, it is not. */ + +#ifndef YYMAXRULES +#define YYMAXRULES 100 +#endif + +#ifndef YYMAXBACKUP +#define YYMAXBACKUP 100 +#endif + + +short yyss[YYMAXDEPTH]; /* the state stack */ +YYSTYPE yyvs[YYMAXDEPTH]; /* the semantic value stack */ +YYLTYPE yyls[YYMAXDEPTH]; /* the location stack */ +short yyrq[YYMAXRULES]; /* the rule queue */ +int yychar; /* the lookahead symbol */ + +YYSTYPE yylval; /* the semantic value of the */ + /* lookahead symbol */ + +YYSTYPE yytval; /* the semantic value for the state */ + /* at the top of the state stack. */ + +YYSTYPE yyval; /* the variable used to return */ + /* semantic values from the action */ + /* routines */ + +YYLTYPE yylloc; /* location data for the lookahead */ + /* symbol */ + +YYLTYPE yytloc; /* location data for the state at the */ + /* top of the state stack */ + + +int yynunlexed; +short yyunchar[YYMAXBACKUP]; +YYSTYPE yyunval[YYMAXBACKUP]; +YYLTYPE yyunloc[YYMAXBACKUP]; + +short *yygssp; /* a pointer to the top of the state */ + /* stack; only set during error */ + /* recovery. */ + +YYSTYPE *yygvsp; /* a pointer to the top of the value */ + /* stack; only set during error */ + /* recovery. */ + +YYLTYPE *yyglsp; /* a pointer to the top of the */ + /* location stack; only set during */ + /* error recovery. */ + + +/* Yyget is an interface between the parser and the lexical analyzer. */ +/* It is costly to provide such an interface, but it avoids requiring */ +/* the lexical analyzer to be able to back up the scan. */ + +yyget() +{ + if (yynunlexed > 0) + { + yynunlexed--; + yychar = yyunchar[yynunlexed]; + yylval = yyunval[yynunlexed]; + yylloc = yyunloc[yynunlexed]; + } + else if (yychar <= 0) + yychar = 0; + else + { + yychar = yylex(); + if (yychar < 0) + yychar = 0; + else yychar = YYTRANSLATE(yychar); + } +} + + + +yyunlex(chr, val, loc) +int chr; +YYSTYPE val; +YYLTYPE loc; +{ + yyunchar[yynunlexed] = chr; + yyunval[yynunlexed] = val; + yyunloc[yynunlexed] = loc; + yynunlexed++; +} + + + +yyrestore(first, last) +register short *first; +register short *last; +{ + register short *ssp; + register short *rp; + register int symbol; + register int state; + register int tvalsaved; + + ssp = yygssp; + yyunlex(yychar, yylval, yylloc); + + tvalsaved = 0; + while (first != last) + { + symbol = yystos[*ssp]; + if (symbol < YYNTBASE) + { + yyunlex(symbol, yytval, yytloc); + tvalsaved = 1; + ssp--; + } + + ssp--; + + if (first == yyrq) + first = yyrq + YYMAXRULES; + + first--; + + for (rp = yyrhs + yyprhs[*first]; symbol = *rp; rp++) + { + if (symbol < YYNTBASE) + state = yytable[yypact[*ssp] + symbol]; + else + { + state = yypgoto[symbol - YYNTBASE] + *ssp; + + if (state >= 0 && state <= YYLAST && yycheck[state] == *ssp) + state = yytable[state]; + else + state = yydefgoto[symbol - YYNTBASE]; + } + + *++ssp = state; + } + } + + if ( ! tvalsaved && ssp > yyss) + { + yyunlex(yystos[*ssp], yytval, yytloc); + ssp--; + } + + yygssp = ssp; +} + + + +int +yyparse() +{ + register int yystate; + register int yyn; + register short *yyssp; + register short *yyrq0; + register short *yyptr; + register YYSTYPE *yyvsp; + + int yylen; + YYLTYPE *yylsp; + short *yyrq1; + short *yyrq2; + + yystate = 0; + yyssp = yyss - 1; + yyvsp = yyvs - 1; + yylsp = yyls - 1; + yyrq0 = yyrq; + yyrq1 = yyrq0; + yyrq2 = yyrq0; + + yychar = yylex(); + if (yychar < 0) + yychar = 0; + else yychar = YYTRANSLATE(yychar); + +yynewstate: + + if (yyssp >= yyss + YYMAXDEPTH - 1) + { + yyabort("Parser Stack Overflow"); + YYABORT; + } + + *++yyssp = yystate; + +yyresume: + + yyn = yypact[yystate]; + if (yyn == YYFLAG) + goto yydefault; + + yyn += yychar; + if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar) + goto yydefault; + + yyn = yytable[yyn]; + if (yyn < 0) + { + yyn = -yyn; + goto yyreduce; + } + else if (yyn == 0) + goto yyerrlab; + + yystate = yyn; + + yyptr = yyrq2; + while (yyptr != yyrq1) + { + yyn = *yyptr++; + yylen = yyr2[yyn]; + yyvsp -= yylen; + yylsp -= yylen; + + yyguard(yyn, yyvsp, yylsp); + if (yyerror) + goto yysemerr; + + yyaction(yyn, yyvsp, yylsp); + *++yyvsp = yyval; + + yylsp++; + if (yylen == 0) + { + yylsp->timestamp = timeclock; + yylsp->first_line = yytloc.first_line; + yylsp->first_column = yytloc.first_column; + yylsp->last_line = (yylsp-1)->last_line; + yylsp->last_column = (yylsp-1)->last_column; + yylsp->text = 0; + } + else + { + yylsp->last_line = (yylsp+yylen-1)->last_line; + yylsp->last_column = (yylsp+yylen-1)->last_column; + } + + if (yyptr == yyrq + YYMAXRULES) + yyptr = yyrq; + } + + if (yystate == YYFINAL) + YYACCEPT; + + yyrq2 = yyptr; + yyrq1 = yyrq0; + + *++yyvsp = yytval; + *++yylsp = yytloc; + yytval = yylval; + yytloc = yylloc; + yyget(); + + goto yynewstate; + +yydefault: + + yyn = yydefact[yystate]; + if (yyn == 0) + goto yyerrlab; + +yyreduce: + + *yyrq0++ = yyn; + + if (yyrq0 == yyrq + YYMAXRULES) + yyrq0 = yyrq; + + if (yyrq0 == yyrq2) + { + yyabort("Parser Rule Queue Overflow"); + YYABORT; + } + + yyssp -= yyr2[yyn]; + yyn = yyr1[yyn]; + + yystate = yypgoto[yyn - YYNTBASE] + *yyssp; + if (yystate >= 0 && yystate <= YYLAST && yycheck[yystate] == *yyssp) + yystate = yytable[yystate]; + else + yystate = yydefgoto[yyn - YYNTBASE]; + + goto yynewstate; + +yysemerr: + *--yyptr = yyn; + yyrq2 = yyptr; + yyvsp += yyr2[yyn]; + +yyerrlab: + + yygssp = yyssp; + yygvsp = yyvsp; + yyglsp = yylsp; + yyrestore(yyrq0, yyrq2); + yyrecover(); + yystate = *yygssp; + yyssp = yygssp; + yyvsp = yygvsp; + yyrq0 = yyrq; + yyrq1 = yyrq0; + yyrq2 = yyrq0; + goto yyresume; +} + +$ diff --git a/bin/bison/bison.html b/bin/bison/bison.html new file mode 100755 index 0000000..f56b912 --- /dev/null +++ b/bin/bison/bison.html @@ -0,0 +1,4501 @@ + + + +Bison 1.24 + + + +

Bison +

+

The YACC-compatible Parser Generator +

+

May 1995, Bison Version 1.24 +

+
by Charles Donnelly and Richard Stallman +
+

+


+

Table of Contents

+ +


+