open-adventure.git
3 years agoAdd html production for convenience generating the website.
Eric S. Raymond [Sat, 3 Jun 2017 23:55:13 +0000 (19:55 -0400)]
Add html production for convenience generating the website.

3 years agoMore documentation polishing.
Eric S. Raymond [Sat, 3 Jun 2017 23:44:25 +0000 (19:44 -0400)]
More documentation polishing.

3 years agoFix HTML rules and input.
Eric S. Raymond [Sat, 3 Jun 2017 23:27:03 +0000 (19:27 -0400)]
Fix HTML rules and input.

3 years agoMake git ignore all HTML.
Eric S. Raymond [Sat, 3 Jun 2017 23:19:34 +0000 (19:19 -0400)]
Make git ignore all HTML.

3 years agoIgnore coverage files.
Eric S. Raymond [Sat, 3 Jun 2017 19:21:49 +0000 (15:21 -0400)]
Ignore coverage files.

3 years agoCreate website iindex and hints pages.
Eric S. Raymond [Sat, 3 Jun 2017 18:57:07 +0000 (14:57 -0400)]
Create website iindex and hints pages.

3 years agoAddress GitLab issue #7: History note about Crowther's version
Eric S. Raymond [Sat, 3 Jun 2017 18:42:13 +0000 (14:42 -0400)]
Address GitLab issue #7: History note about Crowther's version

3 years agoSync compile.c with misc.c. 37/head
Jason S. Ninneman [Sat, 3 Jun 2017 18:41:33 +0000 (11:41 -0700)]
Sync compile.c with misc.c.

3 years agoRescope and retype a variable.
Jason S. Ninneman [Sat, 3 Jun 2017 18:09:48 +0000 (11:09 -0700)]
Rescope and retype a variable.

3 years agoMake GETTXT() a bit closer to actual C.
Jason S. Ninneman [Sat, 3 Jun 2017 17:55:48 +0000 (10:55 -0700)]
Make GETTXT() a bit closer to actual C.

3 years agoUse "adoc" extension for asciidoc, it's the GitLab convention.
Eric S. Raymond [Sat, 3 Jun 2017 18:29:44 +0000 (14:29 -0400)]
Use "adoc" extension for asciidoc, it's the GitLab convention.

3 years agoAttempt to use GitLab's asciidic grinder for README.
Eric S. Raymond [Sat, 3 Jun 2017 18:20:20 +0000 (14:20 -0400)]
Attempt to use GitLab's asciidic grinder for README.

3 years agoDocumentation polishing.
Eric S. Raymond [Sat, 3 Jun 2017 17:04:46 +0000 (13:04 -0400)]
Documentation polishing.

3 years agoTest for more unusual cases.
Eric S. Raymond [Sat, 3 Jun 2017 15:27:24 +0000 (11:27 -0400)]
Test for more unusual cases.

3 years agoAdd some tests that increase test coverage to add cases.
Eric S. Raymond [Sat, 3 Jun 2017 10:28:00 +0000 (06:28 -0400)]
Add some tests that increase test coverage to add cases.

Proof of concept. More could be added in illformed.log.

3 years agoDo code coverage analysis, and publish the results to GitLab Pages. 35/head
Jason S. Ninneman [Fri, 2 Jun 2017 22:02:34 +0000 (15:02 -0700)]
Do code coverage analysis, and publish the results to GitLab Pages.

3 years agoSimplify bitmask test/set from FORTRANish to actual C.
Eric S. Raymond [Fri, 2 Jun 2017 20:40:29 +0000 (16:40 -0400)]
Simplify bitmask test/set from FORTRANish to actual C.

3 years agoMacro elimination - easy cases first. No logic changes.
Eric S. Raymond [Fri, 2 Jun 2017 20:20:40 +0000 (16:20 -0400)]
Macro elimination - easy cases first.  No logic changes.

3 years agoHeader consolidation - main.h, misc.h, and share.h merge to advent.h.
Eric S. Raymond [Fri, 2 Jun 2017 19:01:52 +0000 (15:01 -0400)]
Header consolidation - main.h, misc.h, and share.h merge to advent.h.

For a project this small size with a small type ontology, it's better
C style to have one header where all the assumptions about types and
structures are immediately visible.

This is a first step towards turning all that global state into a handful
of structures - probably just two, one saveable as a binary game state.

3 years agoFix typo in COPYING. 34/head
Jason S. Ninneman [Fri, 2 Jun 2017 18:07:05 +0000 (11:07 -0700)]
Fix typo in COPYING.

3 years agoWalktrough is accomplished.
Eric S. Raymond [Fri, 2 Jun 2017 18:06:43 +0000 (14:06 -0400)]
Walktrough is accomplished.

3 years agoUntangle gotos
Peje Nilsson [Fri, 2 Jun 2017 09:20:35 +0000 (11:20 +0200)]
Untangle gotos

Some LXXXX refactored as functions with more meaningful names
Remove unused globals

3 years agoAdd explicit rule for compile to use CCFLAGS instead of CFLAGS (take two)
Michael Jarvis [Fri, 2 Jun 2017 03:54:04 +0000 (22:54 -0500)]
Add explicit rule for compile to use CCFLAGS instead of CFLAGS (take two)

3 years agoRevert "Add explicit rule for compile to use CCFLAGS instead of CFLAGS"
Michael Jarvis [Fri, 2 Jun 2017 03:52:26 +0000 (22:52 -0500)]
Revert "Add explicit rule for compile to use CCFLAGS instead of CFLAGS"

This reverts commit c29e30d25cce4a92d617d79a49d97643fb9261a7.

3 years agoadded braces around initialization of subobjects for clarity
Michael Jarvis [Fri, 2 Jun 2017 03:47:47 +0000 (22:47 -0500)]
added braces around initialization of subobjects for clarity

3 years agoCast size_t to long to silence warning
Michael Jarvis [Fri, 2 Jun 2017 03:45:31 +0000 (22:45 -0500)]
Cast size_t to long to silence warning

3 years agoAdd explicit rule for compile to use CCFLAGS instead of CFLAGS
Michael Jarvis [Fri, 2 Jun 2017 03:45:24 +0000 (22:45 -0500)]
Add explicit rule for compile to use CCFLAGS instead of CFLAGS

3 years agoHand merge of MR !31: Update the CI infrastructure to be faster
Eric S. Raymond [Fri, 2 Jun 2017 10:42:35 +0000 (06:42 -0400)]
Hand merge of MR !31: Update the CI infrastructure to be faster

3 years agoAdded 428-point walkthrough to regression tests.
Eric S. Raymond [Fri, 2 Jun 2017 10:37:56 +0000 (06:37 -0400)]
Added 428-point walkthrough to regression tests.

3 years agouse char, not signed char 30/head
Michael Jarvis [Thu, 1 Jun 2017 22:45:29 +0000 (17:45 -0500)]
use char, not signed char

3 years agoAdd a walkthrough that foes nearly to endgame.
Eric S. Raymond [Thu, 1 Jun 2017 18:36:16 +0000 (14:36 -0400)]
Add a walkthrough that foes nearly to endgame.

3 years agoTest to ensure that the turn count penalties occur. 29/head
Jason S. Ninneman [Wed, 31 May 2017 20:36:36 +0000 (13:36 -0700)]
Test to ensure that the turn count penalties occur.

3 years agoSimplify inclusion computation so it's BSD-friendly.
Eric S. Raymond [Wed, 31 May 2017 18:53:01 +0000 (14:53 -0400)]
Simplify inclusion computation so it's BSD-friendly.

3 years agoMetadata update.
Eric S. Raymond [Wed, 31 May 2017 18:34:32 +0000 (14:34 -0400)]
Metadata update.

3 years agoFix dependencies so parallel make works (issue #4). 28/head
Jason S. Ninneman [Wed, 31 May 2017 17:52:46 +0000 (10:52 -0700)]
Fix dependencies so parallel make works (issue #4).

3 years agoAdd a missing dependency.
Eric S. Raymond [Wed, 31 May 2017 17:08:23 +0000 (13:08 -0400)]
Add a missing dependency.

3 years agoAdd another test.
Eric S. Raymond [Wed, 31 May 2017 10:22:39 +0000 (06:22 -0400)]
Add another test.

3 years agoRemove erroneous comment about PRNG usage. 26/head
Jason S. Ninneman [Wed, 31 May 2017 00:19:01 +0000 (17:19 -0700)]
Remove erroneous comment about PRNG usage.

3 years agoFix things so seed doesn't cost clock time. seed
Eric S. Raymond [Wed, 31 May 2017 00:08:55 +0000 (20:08 -0400)]
Fix things so seed doesn't cost clock time.

3 years agoRemove inventory commands from the pirare log - more hope of completing it.
Eric S. Raymond [Tue, 30 May 2017 23:59:38 +0000 (19:59 -0400)]
Remove inventory commands from the pirare log - more hope of completing it.

3 years agoReplace 161-point partial walktgrough with 219-point (same base).
Eric S. Raymond [Tue, 30 May 2017 22:27:25 +0000 (18:27 -0400)]
Replace 161-point partial walktgrough with 219-point (same base).

3 years agoLaunder seed generation through rand() to ensure seed diversity. 25/head
Jason S. Ninneman [Tue, 30 May 2017 18:06:53 +0000 (11:06 -0700)]
Launder seed generation through rand() to ensure seed diversity.

This doesn't affect reproducibility because a) the seed value written to logs is the output of this process, and b) the argument to the seed command *doesn't* get laundered.

3 years agoDon's account of differences from the original.
Eric S. Raymond [Tue, 30 May 2017 21:47:26 +0000 (17:47 -0400)]
Don's account of differences from the original.

3 years agoHistory clarification.
Eric S. Raymond [Tue, 30 May 2017 00:37:53 +0000 (20:37 -0400)]
History clarification.

3 years agoAdvent doesn't need automake 24/head
David James Sherman [Tue, 30 May 2017 20:11:53 +0000 (20:11 +0000)]
Advent doesn't need automake

3 years agoAdd .gitlab-ci.yml
David James Sherman [Tue, 30 May 2017 16:36:10 +0000 (16:36 +0000)]
Add .gitlab-ci.yml

3 years agoUpdate reservoir test to reflect the magic word fix. 23/head
Jason S. Ninneman [Mon, 29 May 2017 21:41:15 +0000 (14:41 -0700)]
Update reservoir test to reflect the magic word fix.

3 years agoFix a bug in RNDVOC() that prevented the reservoir magic word for working.
Jason S. Ninneman [Mon, 29 May 2017 21:22:52 +0000 (14:22 -0700)]
Fix a bug in RNDVOC() that prevented the reservoir magic word for working.

To do this, I first had to refactor the code into proper C, just so I could understand it. Then I found another layer of encryption around the value itself. Finally, I discovered that the line to actually set the new magic word was placed such that it was using a global index instead of the local one.

3 years agoMake RNDVOC() into better C.
Jason S. Ninneman [Mon, 29 May 2017 20:59:06 +0000 (13:59 -0700)]
Make RNDVOC() into better C.

3 years agoRemove an obfuscation scheme for the reservoir magic word.
Jason S. Ninneman [Mon, 29 May 2017 20:34:34 +0000 (13:34 -0700)]
Remove an obfuscation scheme for the reservoir magic word.

3 years agogitignore the database compilation products. 22/head
Jason S. Ninneman [Mon, 29 May 2017 17:58:17 +0000 (10:58 -0700)]
gitignore the database compilation products.

3 years agoDon't build with two -std options.
Jason S. Ninneman [Mon, 29 May 2017 17:57:47 +0000 (10:57 -0700)]
Don't build with two -std options.

3 years agoReally mean it about strict C99 compliance. 21/head
Jason S. Ninneman [Mon, 29 May 2017 16:30:37 +0000 (09:30 -0700)]
Really mean it about strict C99 compliance.

3 years agoAdd a qualification.
Eric S. Raymond [Mon, 29 May 2017 16:01:28 +0000 (12:01 -0400)]
Add a qualification.

3 years agoThe ADVENTURE variable is no more.
Eric S. Raymond [Mon, 29 May 2017 16:00:44 +0000 (12:00 -0400)]
The ADVENTURE variable is no more.

3 years agoMinor build tweaks.
Eric S. Raymond [Mon, 29 May 2017 15:39:19 +0000 (11:39 -0400)]
Minor build tweaks.

3 years agoMove the if for GCC 4 to an elseif so it does not interfere with MacOS 19/head 20/head
Warren Melnick [Mon, 29 May 2017 14:52:51 +0000 (10:52 -0400)]
Move the if for GCC 4 to an elseif so it does not interfere with MacOS

3 years agoTest for >= gcc 4, and change to g99 -std=gnu99 for the compiler if it is found.
Warren Melnick [Mon, 29 May 2017 14:42:37 +0000 (10:42 -0400)]
Test for >= gcc 4, and  change to g99 -std=gnu99 for the compiler if it is found.

3 years agoTypo fixes.
Eric S. Raymond [Mon, 29 May 2017 13:14:56 +0000 (09:14 -0400)]
Typo fixes.

3 years agoUpdate history.txt.
Eric S. Raymond [Mon, 29 May 2017 13:08:44 +0000 (09:08 -0400)]
Update history.txt.

3 years agoDon't assume gcc.
Eric S. Raymond [Mon, 29 May 2017 13:02:02 +0000 (09:02 -0400)]
Don't assume gcc.

3 years agoMacOS port fix.
Eric S. Raymond [Mon, 29 May 2017 12:50:17 +0000 (08:50 -0400)]
MacOS port fix.

3 years agoRemove 'compile' upon 'make clean'. 17/head
Jason S. Ninneman [Mon, 29 May 2017 05:53:03 +0000 (22:53 -0700)]
Remove 'compile' upon 'make clean'.

Also remove a disused rule.

3 years agoSimplify build: nested makefiles considered harmful.
Eric S. Raymond [Mon, 29 May 2017 05:33:59 +0000 (01:33 -0400)]
Simplify build: nested makefiles considered harmful.

3 years agoBegin "Functional Changes" section.
Eric S. Raymond [Mon, 29 May 2017 05:16:08 +0000 (01:16 -0400)]
Begin "Functional Changes" section.

3 years agoMove database compilation out into its own tool (for now). 15/head
Jason S. Ninneman [Mon, 29 May 2017 04:46:54 +0000 (21:46 -0700)]
Move database compilation out into its own tool (for now).

3 years agoApply further polish and add in a couple of missing size variables.
Jason S. Ninneman [Mon, 29 May 2017 00:21:04 +0000 (17:21 -0700)]
Apply further polish and add in a couple of missing size variables.

3 years agoFactor out handling of variables populated from the database. 14/head
Jason S. Ninneman [Sun, 28 May 2017 22:42:05 +0000 (15:42 -0700)]
Factor out handling of variables populated from the database.

This reorganization is a first step toward handling database compilation separately.

3 years agoRemove debris from the Makefile.
Eric S. Raymond [Sun, 28 May 2017 17:55:41 +0000 (13:55 -0400)]
Remove debris from the Makefile.

3 years agoAdd regression test that gets to reservoir.
Eric S. Raymond [Sun, 28 May 2017 17:53:59 +0000 (13:53 -0400)]
Add regression test that gets to reservoir.

This allows reproduction of the magic-word bug.

3 years agoRestory working seed value for dwarf.log. 13/head
Jason S. Ninneman [Sat, 27 May 2017 16:23:52 +0000 (09:23 -0700)]
Restory working seed value for dwarf.log.

3 years agoRestore regression tests.
Eric S. Raymond [Sat, 27 May 2017 14:51:43 +0000 (10:51 -0400)]
Restore regression tests.

3 years agoMore Makefile simplification.
Eric S. Raymond [Sat, 27 May 2017 14:32:11 +0000 (10:32 -0400)]
More Makefile simplification.

3 years agoSimplify the test makefile.
Eric S. Raymond [Sat, 27 May 2017 14:31:16 +0000 (10:31 -0400)]
Simplify the test makefile.

3 years agoCorrect a dependency.
Eric S. Raymond [Sat, 27 May 2017 14:24:34 +0000 (10:24 -0400)]
Correct a dependency.

3 years agoUpdate the list of changes.
Eric S. Raymond [Sat, 27 May 2017 14:17:18 +0000 (10:17 -0400)]
Update the list of changes.

3 years agoEnsure the ZZZZ magic word is reproducible. 12/head
Jason S. Ninneman [Fri, 26 May 2017 23:34:16 +0000 (16:34 -0700)]
Ensure the ZZZZ magic word is reproducible.

This happens by making the SEED command also regenerate the magic word.

3 years agoUse C99 moode of compiler.
Eric S. Raymond [Fri, 26 May 2017 18:03:17 +0000 (14:03 -0400)]
Use C99 moode of compiler.

3 years agoJust say no to encrypting internal state. 11/head
Jason S. Ninneman [Fri, 26 May 2017 17:21:19 +0000 (10:21 -0700)]
Just say no to encrypting internal state.

3 years agoFlush log on interrupt, just for convenience.
Eric S. Raymond [Fri, 26 May 2017 11:22:24 +0000 (07:22 -0400)]
Flush log on interrupt, just for convenience.

3 years agoCase correction.
Eric S. Raymond [Fri, 26 May 2017 10:33:44 +0000 (06:33 -0400)]
Case correction.

3 years agoDeath by dwarf test.
Eric S. Raymond [Fri, 26 May 2017 10:16:16 +0000 (06:16 -0400)]
Death by dwarf test.

3 years agoFix bug that led to comments bnot being ignored.
Eric S. Raymond [Fri, 26 May 2017 09:14:18 +0000 (05:14 -0400)]
Fix bug that led to comments bnot being ignored.

3 years agoDifferent, correct fix of tests 10/head
NHOrus [Fri, 26 May 2017 06:41:54 +0000 (09:41 +0300)]
Different, correct fix of tests

Now without caching .data and extended cleanup

3 years agoDocument test comment format.
Eric S. Raymond [Fri, 26 May 2017 04:40:35 +0000 (00:40 -0400)]
Document test comment format.

3 years agoRegression-test machinery is now documented.
Eric S. Raymond [Fri, 26 May 2017 04:37:24 +0000 (00:37 -0400)]
Regression-test machinery is now documented.

3 years agoFirst version of regression tests.
Eric S. Raymond [Fri, 26 May 2017 04:22:51 +0000 (00:22 -0400)]
First version of regression tests.

Only one test so far but the framework for more is in place.

3 years agoRepeatable seeding is working.
Eric S. Raymond [Thu, 25 May 2017 22:52:39 +0000 (18:52 -0400)]
Repeatable seeding is working.

3 years agoImplement fallback handler that looks at the raw command buffer.
Eric S. Raymond [Thu, 25 May 2017 22:21:38 +0000 (18:21 -0400)]
Implement fallback handler that looks at the raw command buffer.

With database cinpilation not broken this time...

3 years agoRepair CentOS 6 build (fails due to clock_gettime() being undefined)
Eric S. Raymond [Thu, 25 May 2017 13:09:11 +0000 (09:09 -0400)]
Repair CentOS 6 build (fails due to clock_gettime() being undefined)

GitLab issue #2.

3 years agoStop command-logging from non-stdin sources. 8/head
Jason S. Ninneman [Thu, 25 May 2017 05:31:26 +0000 (22:31 -0700)]
Stop command-logging from non-stdin sources.

3 years agoOnce again, take srand()/random() out of the initialization chain.
Eric S. Raymond [Thu, 25 May 2017 03:36:25 +0000 (23:36 -0400)]
Once again, take srand()/random() out of the initialization chain.

They have exactly the wrong kind of randomness for this job - not
returning consistent sequences across different platforms or C library
versions, and because pseodorandom not really better than sampling
the clock.

3 years agoRe-enable skipping of #-led comments.
Eric S. Raymond [Thu, 25 May 2017 03:05:19 +0000 (23:05 -0400)]
Re-enable skipping of #-led comments.

3 years agoReapply "Clean up logic for exiting input loop and scoring."
Eric S. Raymond [Thu, 25 May 2017 02:51:36 +0000 (22:51 -0400)]
Reapply "Clean up logic for exiting input loop and scoring."

3 years agoRemove disused label. 7/head
Jason S. Ninneman [Wed, 24 May 2017 22:43:34 +0000 (15:43 -0700)]
Remove disused label.

3 years agoRemove cached data on clean.
Eric S. Raymond [Wed, 24 May 2017 22:29:26 +0000 (18:29 -0400)]
Remove cached data on clean.

We've had two instances now of database compilation getting silently
broken and that not noticed because of the caching. Attempt to
forestall this.

3 years agoRevert SEED handling and comment orocessing. It broke database compilation.
Eric S. Raymond [Wed, 24 May 2017 22:24:09 +0000 (18:24 -0400)]
Revert SEED handling and comment orocessing.  It broke database compilation.

This code is remarkably like the game it implements - a maze of twisty
little FORTRANisms, all alike.  Very easy to get lost.

3 years agoTake srand()/rand() out of the initialization chain...
Eric S. Raymond [Wed, 24 May 2017 15:57:53 +0000 (11:57 -0400)]
Take srand()/rand() out of the initialization chain...

...they're not guatanteed to produce consistent across platforms or
libc versions.

3 years agoClean up logic for exiting input loop and scoring.
Eric S. Raymond [Wed, 24 May 2017 15:16:59 +0000 (11:16 -0400)]
Clean up logic for exiting input loop and scoring.

3 years agoAllow comments in logfiles.
Eric S. Raymond [Wed, 24 May 2017 14:07:05 +0000 (10:07 -0400)]
Allow comments in logfiles.