improved indentation and whitespace for markdown code blocks

All code blocks in markdown have been intended by at least 4 spaces.

We add `--tab-stop=8` to all `pandoc(1)` executions in order to set
a better tab stop indentation, especially for tab intended code blocks.

Changed `bin/pandoc-wrapper.sh` VERSION from "1.5.3 2024-03-26"
to "1.6 2024-03-31".

Fixed `1991/brnstnd/sorta.README.md` so that the sorta code
is code blocks.

Removed unneeded paragraph group in copyright in `inc/footer.default.html`.

Fixed excess whitespace after list Author on entry `index.html` page.

Changed `bin/output-index-author.sh` VERSION from "1.5.2 2024-03-26"
to "1.6 2024-03-31".

Performed `make www` to perform the above and test under macOS.

TODO: Fix the problem of the initial line of code being extra intended.
TODO: Fix excess whitespace around code that is inline.
This commit is contained in:
Landon Curt Noll committed 2024-04-01 04:48:48 -07:00
1 parent b84c27ce02
commit a996f8d2b8
734 files changed
+16723 -16963

No files matched your search

+5 -5
View File
@@ -1,14 +1,14 @@
## To build:
```sh
make
make
```
## To use:
```sh
./anonymous 'foo' > bar.pgm
./anonymous 'foo' > bar.pgm
```
Now open the output using your favourite
@@ -22,7 +22,7 @@ images.
## Try:
```sh
./try.sh
./try.sh
```
NOTE: technically the text is supposed to be in all lower case but the script
@@ -108,8 +108,8 @@ inscription](https://www.glyphweb.com/arda/r/ringinscription.html) to
the file `ring.pgm`:
```sh
./anonymous "ash nazg durhbatuluhk, ash nazg gimbatul, \
ash nazg thrakatuluhk, agh burzhumh-ishi krimpatul." >ring.pgm
./anonymous "ash nazg durhbatuluhk, ash nazg gimbatul, \
ash nazg thrakatuluhk, agh burzhumh-ishi krimpatul." >ring.pgm
```
The source code assumes the ASCII character set; also, due to space
+6 -7
View File
@@ -132,8 +132,7 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Anonymous_2004">Anonymous 2004</a><br>
Location: <a href="../../location.html#SG">SG</a> - <em>Republic of Singapore</em> (<em>Singapore</em>)
<br><br></li>
Location: <a href="../../location.html#SG">SG</a> - <em>Republic of Singapore</em> (<em>Singapore</em>)</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -142,9 +141,9 @@ Location: <a href="../../location.html#SG">SG</a> - <em>Republic of Singapore</e
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span></span></code></pre></div>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span></span></code></pre></div>
<h2 id="to-use">To use:</h2>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./anonymous</span> <span class="st">&#39;foo&#39;</span> <span class="op">&gt;</span> bar.pgm</span></code></pre></div>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./anonymous</span> <span class="st">&#39;foo&#39;</span> <span class="op">&gt;</span> bar.pgm</span></code></pre></div>
<p>Now open the output using your favourite
<a href="https://en.wikipedia.org/wiki/Netpbm#PGM_example">pgm</a> viewer. If you don’t
have a <code>pgm</code> viewer then we suggest the <a href="https://netpbm.sourceforge.net">netpbm
@@ -152,7 +151,7 @@ toolkit</a> to convert the image to a graphics
format that you can view. Most graphical web browsers can display PNG or JPEG
images.</p>
<h2 id="try">Try:</h2>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./try.sh</span></span></code></pre></div>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./try.sh</span></span></code></pre></div>
<p>NOTE: technically the text is supposed to be in all lower case but the script
does use some upper case letters for demonstration purposes.</p>
<h2 id="judges-remarks">Judges’ remarks:</h2>
@@ -221,8 +220,8 @@ in lower case.</p>
<p>The following command thus writes a rendering of the <a href="https://www.glyphweb.com/arda/r/ringinscription.html">Ring
inscription</a> to
the file <code>ring.pgm</code>:</p>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./anonymous</span> <span class="st">&quot;ash nazg durhbatuluhk, ash nazg gimbatul, </span><span class="dt">\</span></span>
<span id="cb4-2"><a href="#cb4-2" aria-hidden="true" tabindex="-1"></a><span class="st"> ash nazg thrakatuluhk, agh burzhumh-ishi krimpatul.&quot;</span> <span class="op">&gt;</span>ring.pgm</span></code></pre></div>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./anonymous</span> <span class="st">&quot;ash nazg durhbatuluhk, ash nazg gimbatul, </span><span class="dt">\</span></span>
<span id="cb4-2"><a href="#cb4-2" aria-hidden="true" tabindex="-1"></a><span class="st"> ash nazg thrakatuluhk, agh burzhumh-ishi krimpatul.&quot;</span> <span class="op">&gt;</span>ring.pgm</span></code></pre></div>
<p>The source code assumes the ASCII character set; also, due to space
constraints, the program uses rather inefficient algorithms, so it may
waste a lot of time and space even when rendering moderately long
+6 -6
View File
@@ -1,7 +1,7 @@
## To build:
```sh
make
make
```
There is an alt version for rogue players, vi(m) users and Dvorak typist (i.e.
@@ -12,20 +12,20 @@ code](#alternate-code) below.
## To use:
```sh
./arachnid [mazefile]
./arachnid [mazefile]
```
## Try:
```sh
./arachnid arachnid.txt
./arachnid arachnid.txt
```
and then try:
```sh
./arachnid arachnid.c
./arachnid arachnid.c
```
Navigation is through the use of the `wasd` inverted-T formation on
@@ -42,7 +42,7 @@ instead.
### Alternate build:
```sh
make alt
make alt
```
@@ -81,7 +81,7 @@ explorers out there.
### Usage
```sh
./arachnid [mazefile]
./arachnid [mazefile]
```
You can explore the maze using the `w`,`a`,`s`, and `d` keys.
+7 -8
View File
@@ -132,8 +132,7 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Nick_Johnson">Nick Johnson</a><br>
Location: <a href="../../location.html#NZ">NZ</a> - <em>New Zealand</em>
<br><br></li>
Location: <a href="../../location.html#NZ">NZ</a> - <em>New Zealand</em></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -142,16 +141,16 @@ Location: <a href="../../location.html#NZ">NZ</a> - <em>New Zealand</em>
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span></span></code></pre></div>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span></span></code></pre></div>
<p>There is an alt version for rogue players, vi(m) users and Dvorak typist (i.e.
those who need <code>hljk</code> for moving left, right, down and up. See <a href="#alternate-code">alternate
code</a> below.</p>
<h2 id="to-use">To use:</h2>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./arachnid</span> <span class="pp">[</span><span class="ss">mazefile</span><span class="pp">]</span></span></code></pre></div>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./arachnid</span> <span class="pp">[</span><span class="ss">mazefile</span><span class="pp">]</span></span></code></pre></div>
<h2 id="try">Try:</h2>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./arachnid</span> arachnid.txt</span></code></pre></div>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./arachnid</span> arachnid.txt</span></code></pre></div>
<p>and then try:</p>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./arachnid</span> arachnid.c</span></code></pre></div>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./arachnid</span> arachnid.c</span></code></pre></div>
<p>Navigation is through the use of the <code>wasd</code> inverted-T formation on
QWERTY keyboards. Rogue players, vi users, and Dvorak typists are
invited to get lost (or use the alt version)!</p>
@@ -159,7 +158,7 @@ invited to get lost (or use the alt version)!</p>
<p>If you don’t like the <code>wasd</code> movement keys you can try the vi(m) movement keys
instead.</p>
<h3 id="alternate-build">Alternate build:</h3>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> alt</span></code></pre></div>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span> alt</span></code></pre></div>
<h3 id="alternate-use">Alternate use:</h3>
<p>Use <code>arachnid.alt</code> as you would <code>arachnid</code> above.</p>
<h2 id="judges-remarks">Judges’ remarks:</h2>
@@ -182,7 +181,7 @@ Another maze, <a href="arachnid.txt">arachnid.txt</a> has also been provided. Th
255x255, about the largest maze supported, for the particularly insane maze
explorers out there.</p>
<h3 id="usage">Usage</h3>
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./arachnid</span> <span class="pp">[</span><span class="ss">mazefile</span><span class="pp">]</span></span></code></pre></div>
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./arachnid</span> <span class="pp">[</span><span class="ss">mazefile</span><span class="pp">]</span></span></code></pre></div>
<p>You can explore the maze using the <code>w</code>,<code>a</code>,<code>s</code>, and <code>d</code> keys.</p>
<!--
+17 -17
View File
@@ -1,7 +1,7 @@
## To build:
```sh
make
make
```
NOTE: We FORCE the use of -O0 even if someone overrides it because this entry
@@ -11,7 +11,7 @@ will not work with it enabled.
## To use:
```sh
./burley
./burley
```
NOTE: you need to input a number first. See judges' remarks below for
@@ -25,28 +25,28 @@ start with $100. Input alternates between your bet and which cards to keep.
Example:
```
5 <== you enter a bet of $5 (defaults to $1)
J Q J 9 5 <== your hand is Jack of Clubs, Queen of Hearts,
C H D S C Jack of Diamonds, 9 of Spades, 5 of Clubs
123 <== you enter which cards you want to keep
5 <== you enter a bet of $5 (defaults to $1)
J Q J 9 5 <== your hand is Jack of Clubs, Queen of Hearts,
C H D S C Jack of Diamonds, 9 of Spades, 5 of Clubs
123 <== you enter which cards you want to keep
(enter 0 to 5 digits between 1 and 5)
J Q J J Q <== your new hand is Jack of Clubs, Queen of Hearts,
C H D S C Jack of Diamonds, Jack of Spaces, Queen of clubs
$145 (45) <== Your new balance is now $145. You had a Full House
J Q J J Q <== your new hand is Jack of Clubs, Queen of Hearts,
C H D S C Jack of Diamonds, Jack of Spaces, Queen of clubs
$145 (45) <== Your new balance is now $145. You had a Full House
so your payoff is 9 times your bet == 45
```
The payout is according to "Vegas rules":
```
Straight Flush 50 times your bet
Four of a Kind 25 times your bet
Full House 9 times your bet
Flush 6 times your bet
Straight 4 times your bet
3 of a Kind 3 times your bet
2 Pair 2 times your bet
Jacks or Better 1 times your bet
Straight Flush 50 times your bet
Four of a Kind 25 times your bet
Full House 9 times your bet
Flush 6 times your bet
Straight 4 times your bet
3 of a Kind 3 times your bet
2 Pair 2 times your bet
Jacks or Better 1 times your bet
```
The program allows you to go into debt. However I'm sure you would never
+18 -19
View File
@@ -132,8 +132,7 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Brent_Burley">Brent Burley</a><br>
Location: <a href="../../location.html#US">US</a> - <em>United States of America</em> (<em>United States</em>)
<br><br></li>
Location: <a href="../../location.html#US">US</a> - <em>United States of America</em> (<em>United States</em>)</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -142,35 +141,35 @@ Location: <a href="../../location.html#US">US</a> - <em>United States of America
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span></span></code></pre></div>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span></span></code></pre></div>
<p>NOTE: We FORCE the use of -O0 even if someone overrides it because this entry
will not work with it enabled.</p>
<h2 id="to-use">To use:</h2>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./burley</span></span></code></pre></div>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./burley</span></span></code></pre></div>
<p>NOTE: you need to input a number first. See judges’ remarks below for
information on how to play.</p>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>This is a <a href="https://en.wikipedia.org/wiki/Draw_poker">draw poker</a> program. You
start with $100. Input alternates between your bet and which cards to keep.
Example:</p>
<pre><code>5 &lt;== you enter a bet of $5 (defaults to $1)
J Q J 9 5 &lt;== your hand is Jack of Clubs, Queen of Hearts,
C H D S C Jack of Diamonds, 9 of Spades, 5 of Clubs
123 &lt;== you enter which cards you want to keep
<pre><code> 5 &lt;== you enter a bet of $5 (defaults to $1)
J Q J 9 5 &lt;== your hand is Jack of Clubs, Queen of Hearts,
C H D S C Jack of Diamonds, 9 of Spades, 5 of Clubs
123 &lt;== you enter which cards you want to keep
(enter 0 to 5 digits between 1 and 5)
J Q J J Q &lt;== your new hand is Jack of Clubs, Queen of Hearts,
C H D S C Jack of Diamonds, Jack of Spaces, Queen of clubs
$145 (45) &lt;== Your new balance is now $145. You had a Full House
J Q J J Q &lt;== your new hand is Jack of Clubs, Queen of Hearts,
C H D S C Jack of Diamonds, Jack of Spaces, Queen of clubs
$145 (45) &lt;== Your new balance is now $145. You had a Full House
so your payoff is 9 times your bet == 45</code></pre>
<p>The payout is according to “Vegas rules”:</p>
<pre><code>Straight Flush 50 times your bet
Four of a Kind 25 times your bet
Full House 9 times your bet
Flush 6 times your bet
Straight 4 times your bet
3 of a Kind 3 times your bet
2 Pair 2 times your bet
Jacks or Better 1 times your bet</code></pre>
<pre><code> Straight Flush 50 times your bet
Four of a Kind 25 times your bet
Full House 9 times your bet
Flush 6 times your bet
Straight 4 times your bet
3 of a Kind 3 times your bet
2 Pair 2 times your bet
Jacks or Better 1 times your bet</code></pre>
<p>The program allows you to go into debt. However I’m sure you would never
control-C to kill the program just because you got behind, right? On the other
hand the program never willingly exits, so you have to leave even when you are
+8 -8
View File
@@ -1,7 +1,7 @@
## To build:
```sh
make
make
```
There are three alternate versions; see [alternate code](#alternate-code) below
@@ -11,14 +11,14 @@ for more details.
## To use:
```sh
./gavare > ioccc_ray.ppm
./gavare > ioccc_ray.ppm
```
Open `ioccc_ray.ppm` with a viewer capable of viewing PPM files. Alternatively,
if you have ImageMagick installed, you can convert it to a jpeg:
```sh
convert ioccc_ray.ppm ioccc_ray.jpg
convert ioccc_ray.ppm ioccc_ray.jpg
```
and then view `ioccc_ray.jpg` in a graphics viewer, editor or web browser.
@@ -29,7 +29,7 @@ and then view `ioccc_ray.jpg` in a graphics viewer, editor or web browser.
If you have `xv(1)` you can do:
```sh
./gavare | xv -
./gavare | xv -
```
to not worry about writing it to a file and just viewing the image it creates.
@@ -54,19 +54,19 @@ on `stdout` which theoretically should work in Windows.
To build the configurable and unobfuscated versions:
```sh
make alt
make alt
```
To change the default size from 1024x768 try:
```sh
make clobber XX=640 YY=480 alt
make clobber XX=640 YY=480 alt
```
You might also wish to change the anti-alias setting:
```sh
make clobber AA=2 alt
make clobber AA=2 alt
```
You may of course combine the above two commands and give any combination you
@@ -79,7 +79,7 @@ As the Windows version will not compile on most viewers' systems we do not build
it with `make alt`; instead try:
```sh
make alt2
make alt2
```
+9 -10
View File
@@ -132,8 +132,7 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Anders_Gavare">Anders Gavare</a><br>
Location: <a href="../../location.html#SE">SE</a> - <em>Kingdom of Sweden</em> (<em>Sweden</em>)
<br><br></li>
Location: <a href="../../location.html#SE">SE</a> - <em>Kingdom of Sweden</em> (<em>Sweden</em>)</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -142,18 +141,18 @@ Location: <a href="../../location.html#SE">SE</a> - <em>Kingdom of Sweden</em> (
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span></span></code></pre></div>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span></span></code></pre></div>
<p>There are three alternate versions; see <a href="#alternate-code">alternate code</a> below
for more details.</p>
<h2 id="to-use">To use:</h2>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./gavare</span> <span class="op">&gt;</span> ioccc_ray.ppm</span></code></pre></div>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./gavare</span> <span class="op">&gt;</span> ioccc_ray.ppm</span></code></pre></div>
<p>Open <code>ioccc_ray.ppm</code> with a viewer capable of viewing PPM files. Alternatively,
if you have ImageMagick installed, you can convert it to a jpeg:</p>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="ex">convert</span> ioccc_ray.ppm ioccc_ray.jpg</span></code></pre></div>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">convert</span> ioccc_ray.ppm ioccc_ray.jpg</span></code></pre></div>
<p>and then view <code>ioccc_ray.jpg</code> in a graphics viewer, editor or web browser.</p>
<h2 id="try">Try:</h2>
<p>If you have <code>xv(1)</code> you can do:</p>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./gavare</span> <span class="kw">|</span> <span class="ex">xv</span> <span class="at">-</span></span></code></pre></div>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./gavare</span> <span class="kw">|</span> <span class="ex">xv</span> <span class="at">-</span></span></code></pre></div>
<p>to not worry about writing it to a file and just viewing the image it creates.</p>
<h2 id="alternate-code">Alternate code:</h2>
<p>The alt code <a href="gavare.alt.c">gavare.alt.c</a> allows you to change the size of the
@@ -166,18 +165,18 @@ was used during development, which we have included in the file
on <code>stdout</code> which theoretically should work in Windows.</p>
<h3 id="alternate-build">Alternate build:</h3>
<p>To build the configurable and unobfuscated versions:</p>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> alt</span></code></pre></div>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span> alt</span></code></pre></div>
<p>To change the default size from 1024x768 try:</p>
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> clobber XX=640 YY=480 alt</span></code></pre></div>
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span> clobber XX=640 YY=480 alt</span></code></pre></div>
<p>You might also wish to change the anti-alias setting:</p>
<div class="sourceCode" id="cb7"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> clobber AA=2 alt</span></code></pre></div>
<div class="sourceCode" id="cb7"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span> clobber AA=2 alt</span></code></pre></div>
<p>You may of course combine the above two commands and give any combination you
wish.</p>
<p>This is not possible with the author’s version but it is with the alt versions
(Windows - see below - and otherwise).</p>
<p>As the Windows version will not compile on most viewers’ systems we do not build
it with <code>make alt</code>; instead try:</p>
<div class="sourceCode" id="cb8"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb8-1"><a href="#cb8-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> alt2</span></code></pre></div>
<div class="sourceCode" id="cb8"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb8-1"><a href="#cb8-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span> alt2</span></code></pre></div>
<h3 id="alternate-use">Alternate use:</h3>
<p>Use <code>gavare.alt</code>, <code>gavare.r3</code> or <code>gavare.alt2</code> as you would <code>gavare</code> above.</p>
<h2 id="judges-remarks">Judges’ remarks:</h2>
+14 -14
View File
@@ -1,7 +1,7 @@
## To build:
```sh
make
make
```
@@ -15,9 +15,9 @@ to reboot and rely on having a floppy drive (if you even remember what those are
The current status of this entry is:
```
STATUS: compiled executable crashes - please help us fix
STATUS: doesn't work with some platforms - please help us fix
STATUS: INABIAF - please **DO NOT** fix
STATUS: compiled executable crashes - please help us fix
STATUS: doesn't work with some platforms - please help us fix
STATUS: INABIAF - please **DO NOT** fix
```
For more detailed information see [2004 gavin bugs](../../bugs.html#2004_gavin).
@@ -26,7 +26,7 @@ For more detailed information see [2004 gavin bugs](../../bugs.html#2004_gavin).
## To use:
```sh
./gavin
./gavin
```
@@ -37,14 +37,14 @@ those? We do!):
```sh
su
su
```
Make a floppy with an ext2 filesystem (`mke2fs /dev/fd0` replacing `fd0` with
whatever the floppy device is!), mount it under `/mnt/floppy` and then:
```sh
cp kernel fs.tar lilo.conf boot.b /mnt/floppy
cp kernel fs.tar lilo.conf boot.b /mnt/floppy
```
NOTE: If the version of your lilo is not 21.4, use the appropriate boot.b file.
@@ -52,27 +52,27 @@ NOTE: If the version of your lilo is not 21.4, use the appropriate boot.b file.
NOTE: If your floppy drive is not `/dev/fd0`, edit lilo.conf appropriately.
```sh
lilo -C /mnt/floppy/lilo.conf
lilo -C /mnt/floppy/lilo.conf
```
Boot from the floppy on an x86 machine with a PS/2 keyboard and mouse.
Move the window away from the corner.
```sh
vi gavin.c
vi gavin.c
```
Scroll up and down the file with up-arrow and down-arrow.
```sh
sh
sh
```
You can have several shell windows:
```sh
vi README.md
./prim
vi README.md
./prim
```
Press and hold any key.
@@ -87,7 +87,7 @@ you can use it with `QEMU`.
### Alternate build:
```sh
make alt
make alt
```
@@ -198,7 +198,7 @@ so these may need updating as appropriate (`0x90200` is the address
at which a Linux bootloader loads an x86 kernel image).
```
\* ;-)
\* ;-)
```
+17 -13
View File
@@ -136,24 +136,28 @@ should do no damage to your existing setup, BUT I ACCEPT NO LIABILITY FOR ANY
DAMAGE DONE BY THIS PROGRAM. Run it at your own risk. The OS has been tested
on half a dozen machines or so, and worked on all but one. The failure came in
the form of the machine rebooting itself midway through loading the OS, with no
nasty side-effects.</p>
<p>Hardware requirements - i386 or better processor, but the GUI is
surprisingly power-hungry, so I would recommend a fast P3 or P4 processor
(has been tested on P3/P4/Athlon machines). Minimum RAM is something like
32MB. PS/2 mouse &amp; keyboard required - no USB I’m afraid, and the keyboard
map is for a UK keyboard. Uses VESA VBE 3.0, so should work on any modern
graphics card (has been tested on NVIDIA, Matrox, and SiS cards).</p></li>
<li><p>Now you need to setup a bootloader to load the OS. If you have a system
nasty side-effects.</p></li>
</ol>
<pre><code> Hardware requirements - i386 or better processor, but the GUI is
surprisingly power-hungry, so I would recommend a fast P3 or P4 processor
(has been tested on P3/P4/Athlon machines). Minimum RAM is something like
32MB. PS/2 mouse &amp; keyboard required - no USB I&#39;m afraid, and the keyboard
map is for a UK keyboard. Uses VESA VBE 3.0, so should work on any modern
graphics card (has been tested on NVIDIA, Matrox, and SiS cards).</code></pre>
<ol start="3" type="1">
<li>Now you need to setup a bootloader to load the OS. If you have a system
using a lilo bootloader you can simply add the OS to your boot menu. Just add
appropriate <code>image=</code> and <code>initrd=</code> lines to your <code>/etc/lilo.conf</code>, pointing at
<code>kernel</code> and <code>fs.tar</code> respectively (as built by make earlier), then run <code>lilo</code>.
If you do not wish modify your lilo setup, one easy option is to get yourself a
GRUB boot disk image, and follow the instructions for GRUB below - Debian users
can simply run<code>apt-get install grub-disk</code> to get themselves a GRUB boot disk.</p>
<p>If you run GRUB, then at the boot menu simply hit <code>c</code> to get a console, then
type <code>kernel=(hd0,0)/&lt;PATH&gt;/kernel</code> (substituting appropriate hard
drive/partition numbers &amp; path, or using <code>(fd0)</code> to load a kernel on the
floppy), then <code>initrd=(hd0,0)/&lt;PATH&gt;/fs.tar</code>, and finally <code>boot</code>.</p></li>
can simply run<code>apt-get install grub-disk</code> to get themselves a GRUB boot disk.</li>
</ol>
<pre><code> If you run GRUB, then at the boot menu simply hit `c` to get a console, then
type `kernel=(hd0,0)/&lt;PATH&gt;/kernel` (substituting appropriate hard
drive/partition numbers &amp; path, or using `(fd0)` to load a kernel on the
floppy), then `initrd=(hd0,0)/&lt;PATH&gt;/fs.tar`, and finally `boot`.</code></pre>
<ol start="4" type="1">
<li><p>Assuming the OS has booted, what can you do now? Well, start by trying <code>sh</code>,
to open another shell. Then, try <code>vi gavin.c</code> to open up the OS source in a
text file viewer (up/down or PgUp/PgDn to scroll). Note that the provided
+4
View File
@@ -15,12 +15,14 @@ on half a dozen machines or so, and worked on all but one. The failure came in
the form of the machine rebooting itself midway through loading the OS, with no
nasty side-effects.
```
Hardware requirements - i386 or better processor, but the GUI is
surprisingly power-hungry, so I would recommend a fast P3 or P4 processor
(has been tested on P3/P4/Athlon machines). Minimum RAM is something like
32MB. PS/2 mouse & keyboard required - no USB I'm afraid, and the keyboard
map is for a UK keyboard. Uses VESA VBE 3.0, so should work on any modern
graphics card (has been tested on NVIDIA, Matrox, and SiS cards).
```
3. Now you need to setup a bootloader to load the OS. If you have a system
using a lilo bootloader you can simply add the OS to your boot menu. Just add
@@ -30,10 +32,12 @@ If you do not wish modify your lilo setup, one easy option is to get yourself a
GRUB boot disk image, and follow the instructions for GRUB below - Debian users
can simply run`apt-get install grub-disk` to get themselves a GRUB boot disk.
```
If you run GRUB, then at the boot menu simply hit `c` to get a console, then
type `kernel=(hd0,0)/<PATH>/kernel` (substituting appropriate hard
drive/partition numbers & path, or using `(fd0)` to load a kernel on the
floppy), then `initrd=(hd0,0)/<PATH>/fs.tar`, and finally `boot`.
```
4. Assuming the OS has booted, what can you do now? Well, start by trying `sh`,
to open another shell. Then, try `vi gavin.c` to open up the OS source in a
+15 -16
View File
@@ -132,8 +132,7 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Gavin_Barraclough">Gavin Barraclough</a><br>
Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em>
<br><br></li>
Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -142,42 +141,42 @@ Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em>
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span></span></code></pre></div>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span></span></code></pre></div>
<p>There is an alternate version for those who wish to use QEMU rather than having
to reboot and rely on having a floppy drive (if you even remember what those are
:-) ) etc. See <a href="#alternate-code">alternate code</a> below.</p>
<h3 id="bugs-and-misfeatures">Bugs and (Mis)features:</h3>
<p>The current status of this entry is:</p>
<pre><code>STATUS: compiled executable crashes - please help us fix
STATUS: doesn&#39;t work with some platforms - please help us fix
STATUS: INABIAF - please **DO NOT** fix</code></pre>
<pre><code> STATUS: compiled executable crashes - please help us fix
STATUS: doesn&#39;t work with some platforms - please help us fix
STATUS: INABIAF - please **DO NOT** fix</code></pre>
<p>For more detailed information see <a href="../../bugs.html#2004_gavin">2004 gavin bugs</a>.</p>
<h2 id="to-use">To use:</h2>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./gavin</span></span></code></pre></div>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./gavin</span></span></code></pre></div>
<h2 id="try">Try:</h2>
<p>To enjoy the results (on a Linux/x86 machine) with a floppy drive (remember
those? We do!):</p>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="fu">su</span></span></code></pre></div>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">su</span></span></code></pre></div>
<p>Make a floppy with an ext2 filesystem (<code>mke2fs /dev/fd0</code> replacing <code>fd0</code> with
whatever the floppy device is!), mount it under <code>/mnt/floppy</code> and then:</p>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="fu">cp</span> kernel fs.tar lilo.conf boot.b /mnt/floppy</span></code></pre></div>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">cp</span> kernel fs.tar lilo.conf boot.b /mnt/floppy</span></code></pre></div>
<p>NOTE: If the version of your lilo is not 21.4, use the appropriate boot.b file.</p>
<p>NOTE: If your floppy drive is not <code>/dev/fd0</code>, edit lilo.conf appropriately.</p>
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a><span class="ex">lilo</span> <span class="at">-C</span> /mnt/floppy/lilo.conf</span></code></pre></div>
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">lilo</span> <span class="at">-C</span> /mnt/floppy/lilo.conf</span></code></pre></div>
<p>Boot from the floppy on an x86 machine with a PS/2 keyboard and mouse.
Move the window away from the corner.</p>
<div class="sourceCode" id="cb7"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a><span class="fu">vi</span> gavin.c</span></code></pre></div>
<div class="sourceCode" id="cb7"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">vi</span> gavin.c</span></code></pre></div>
<p>Scroll up and down the file with up-arrow and down-arrow.</p>
<div class="sourceCode" id="cb8"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb8-1"><a href="#cb8-1" aria-hidden="true" tabindex="-1"></a><span class="fu">sh</span></span></code></pre></div>
<div class="sourceCode" id="cb8"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb8-1"><a href="#cb8-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">sh</span></span></code></pre></div>
<p>You can have several shell windows:</p>
<div class="sourceCode" id="cb9"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb9-1"><a href="#cb9-1" aria-hidden="true" tabindex="-1"></a><span class="fu">vi</span> README.md</span>
<span id="cb9-2"><a href="#cb9-2" aria-hidden="true" tabindex="-1"></a><span class="ex">./prim</span></span></code></pre></div>
<div class="sourceCode" id="cb9"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb9-1"><a href="#cb9-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">vi</span> README.md</span>
<span id="cb9-2"><a href="#cb9-2" aria-hidden="true" tabindex="-1"></a> <span class="ex">./prim</span></span></code></pre></div>
<p>Press and hold any key.</p>
<h2 id="alternate-code">Alternate code:</h2>
<p>This version’s main difference is that the macro <code>K</code> is redefined to <code>1</code> so that
you can use it with <code>QEMU</code>.</p>
<h3 id="alternate-build">Alternate build:</h3>
<div class="sourceCode" id="cb10"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb10-1"><a href="#cb10-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> alt</span></code></pre></div>
<div class="sourceCode" id="cb10"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb10-1"><a href="#cb10-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span> alt</span></code></pre></div>
<h3 id="alternate-use">Alternate use:</h3>
<p>The use is mostly the same as <code>gavin</code> except that one initially executes <code>gavin.alt</code>
(which <code>make alt</code> will do) and one will have to use <code>QEMU</code> instead. The files
@@ -257,7 +256,7 @@ data &amp; code suitable for the new target platform.
Accesses to data in the string are made relative to the define <code>V</code>,
so these may need updating as appropriate (<code>0x90200</code> is the address
at which a Linux bootloader loads an x86 kernel image).</p>
<pre><code>\* ;-)</code></pre>
<pre><code> \* ;-)</code></pre>
<!--
Copyright © 1984-2024 by Landon Curt Noll. All Rights Reserved.
+13 -13
View File
@@ -1,14 +1,14 @@
## To build:
```sh
make
make
```
## To use:
```sh
cd build; ./hibachi-start.sh &
cd build; ./hibachi-start.sh &
```
Then use your web browser to visit `http://localhost:8008/`. When you're
@@ -43,8 +43,8 @@ extraction) that unpacks several support files and a subdirectory tree
containing the documentation and examples. It can be viewed by:
```sh
tar -zxf hibachi.tgz
lynx hibachi/localhost/index.html
tar -zxf hibachi.tgz
lynx hibachi/localhost/index.html
```
Or once `Hibachi` is running, use a web browser (preferably one that
@@ -59,19 +59,19 @@ To build just the executable:
For Cygwin, FreeBSD, Linux (newer), Mac OS X:
```sh
gcc -o hibachi hibachi.c
gcc -o hibachi hibachi.c
```
For Linux (older):
```sh
gcc -DSHUT_WR=1 -o hibachi hibachi.c
gcc -DSHUT_WR=1 -o hibachi hibachi.c
```
For SunOS:
```sh
gcc -o hibachi hibachi.c -lnsl -lsocket
gcc -o hibachi hibachi.c -lnsl -lsocket
```
Since some systems place socket and network functions into other libraries, a
@@ -82,27 +82,27 @@ headers and functions are present, and setup the `#!` paths for the CGI
examples. In which case the preferred build commands are:
```
./configure [--enable-port=number]
make
./configure [--enable-port=number]
make
```
To start the server on the default port (8008):
```sh
cd build;
./hibachi-start.sh &
cd build;
./hibachi-start.sh &
```
To test the server:
```sh
lynx http://localhost:8008/
lynx http://localhost:8008/
```
To stop the server:
```sh
kill %1
kill %1
```
### Features
+14 -15
View File
@@ -132,8 +132,7 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Anthony_C_Howe">Anthony C. Howe</a><br>
Location: <a href="../../location.html#CA">CA</a> - <em>Canada</em>
<br><br></li>
Location: <a href="../../location.html#CA">CA</a> - <em>Canada</em></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -142,9 +141,9 @@ Location: <a href="../../location.html#CA">CA</a> - <em>Canada</em>
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span></span></code></pre></div>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span></span></code></pre></div>
<h2 id="to-use">To use:</h2>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="bu">cd</span> build<span class="kw">;</span> <span class="ex">./hibachi-start.sh</span> <span class="kw">&amp;</span></span></code></pre></div>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a> <span class="bu">cd</span> build<span class="kw">;</span> <span class="ex">./hibachi-start.sh</span> <span class="kw">&amp;</span></span></code></pre></div>
<p>Then use your web browser to visit <code>http://localhost:8008/</code>. When you’re
finished make sure to kill <code>hibachi</code>.</p>
<p>NOTE: you must be in the <code>build</code> directory when running <code>hibachi-start.sh</code> for
@@ -164,34 +163,34 @@ so the file does not exist here.</p>
<p>There is a <code>hibachi.tgz</code> file (NOTE: this file was removed by the judges after
extraction) that unpacks several support files and a subdirectory tree
containing the documentation and examples. It can be viewed by:</p>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="fu">tar</span> <span class="at">-zxf</span> hibachi.tgz</span>
<span id="cb3-2"><a href="#cb3-2" aria-hidden="true" tabindex="-1"></a><span class="fu">lynx</span> hibachi/localhost/index.html</span></code></pre></div>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">tar</span> <span class="at">-zxf</span> hibachi.tgz</span>
<span id="cb3-2"><a href="#cb3-2" aria-hidden="true" tabindex="-1"></a> <span class="fu">lynx</span> hibachi/localhost/index.html</span></code></pre></div>
<p>Or once <code>Hibachi</code> is running, use a web browser (preferably one that
supports images and JavaScript, to view the documentation and try
some of the CGI examples) to visit: <code>http://localhost:8008/</code>.</p>
<h3 id="building">Building</h3>
<p>To build just the executable:</p>
<p>For Cygwin, FreeBSD, Linux (newer), Mac OS X:</p>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="fu">gcc</span> <span class="at">-o</span> hibachi hibachi.c</span></code></pre></div>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">gcc</span> <span class="at">-o</span> hibachi hibachi.c</span></code></pre></div>
<p>For Linux (older):</p>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="fu">gcc</span> <span class="at">-DSHUT_WR</span><span class="op">=</span>1 <span class="at">-o</span> hibachi hibachi.c</span></code></pre></div>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">gcc</span> <span class="at">-DSHUT_WR</span><span class="op">=</span>1 <span class="at">-o</span> hibachi hibachi.c</span></code></pre></div>
<p>For SunOS:</p>
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a><span class="fu">gcc</span> <span class="at">-o</span> hibachi hibachi.c <span class="at">-lnsl</span> <span class="at">-lsocket</span></span></code></pre></div>
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">gcc</span> <span class="at">-o</span> hibachi hibachi.c <span class="at">-lnsl</span> <span class="at">-lsocket</span></span></code></pre></div>
<p>Since some systems place socket and network functions into other libraries, a
<a href="https://en.wikipedia.org/wiki/Autoconf">GNU autoconf</a>
<a href="https://en.wikipedia.org/wiki/Configure_script">configure</a> script has been
provided to figure out the necessary link libraries, to verify all the necessary
headers and functions are present, and setup the <code>#!</code> paths for the CGI
examples. In which case the preferred build commands are:</p>
<pre><code>./configure [--enable-port=number]
make</code></pre>
<pre><code> ./configure [--enable-port=number]
make</code></pre>
<p>To start the server on the default port (8008):</p>
<div class="sourceCode" id="cb8"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb8-1"><a href="#cb8-1" aria-hidden="true" tabindex="-1"></a><span class="bu">cd</span> build<span class="kw">;</span></span>
<span id="cb8-2"><a href="#cb8-2" aria-hidden="true" tabindex="-1"></a><span class="ex">./hibachi-start.sh</span> <span class="kw">&amp;</span></span></code></pre></div>
<div class="sourceCode" id="cb8"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb8-1"><a href="#cb8-1" aria-hidden="true" tabindex="-1"></a> <span class="bu">cd</span> build<span class="kw">;</span></span>
<span id="cb8-2"><a href="#cb8-2" aria-hidden="true" tabindex="-1"></a> <span class="ex">./hibachi-start.sh</span> <span class="kw">&amp;</span></span></code></pre></div>
<p>To test the server:</p>
<div class="sourceCode" id="cb9"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb9-1"><a href="#cb9-1" aria-hidden="true" tabindex="-1"></a><span class="fu">lynx</span> http://localhost:8008/</span></code></pre></div>
<div class="sourceCode" id="cb9"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb9-1"><a href="#cb9-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">lynx</span> http://localhost:8008/</span></code></pre></div>
<p>To stop the server:</p>
<div class="sourceCode" id="cb10"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb10-1"><a href="#cb10-1" aria-hidden="true" tabindex="-1"></a><span class="bu">kill</span> %1</span></code></pre></div>
<div class="sourceCode" id="cb10"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb10-1"><a href="#cb10-1" aria-hidden="true" tabindex="-1"></a> <span class="bu">kill</span> %1</span></code></pre></div>
<h3 id="features">Features</h3>
<ul>
<li><p>Supports virtual hosts.</p></li>
+5 -5
View File
@@ -1,21 +1,21 @@
## To build:
```sh
make
make
```
## To use:
```sh
./hoyle point ...
./hoyle point ...
```
## Try:
```sh
./try.sh
./try.sh
```
@@ -48,13 +48,13 @@ passed in.
For example, to graph `y = x^2`:
```sh
./hoyle 0 0 1
./hoyle 0 0 1
```
Note that:
```sh
./hoyle 0 0 2
./hoyle 0 0 2
```
will produce the same graph, since the `y-axis` is auto scaling.
+6 -7
View File
@@ -132,8 +132,7 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Jonathan_Hoyle">Jonathan Hoyle</a><br>
Location: <a href="../../location.html#US">US</a> - <em>United States of America</em> (<em>United States</em>)
<br><br></li>
Location: <a href="../../location.html#US">US</a> - <em>United States of America</em> (<em>United States</em>)</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -142,11 +141,11 @@ Location: <a href="../../location.html#US">US</a> - <em>United States of America
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span></span></code></pre></div>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span></span></code></pre></div>
<h2 id="to-use">To use:</h2>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./hoyle</span> point ...</span></code></pre></div>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./hoyle</span> point ...</span></code></pre></div>
<h2 id="try">Try:</h2>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./try.sh</span></span></code></pre></div>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./try.sh</span></span></code></pre></div>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>The obfuscation functions at several levels. Note the clever
use of use of <code>#define</code>s. The <code>#define do(if,else)</code>, for example,
@@ -168,9 +167,9 @@ passed in.</li>
dashes rather than a simple block of <code>X</code>s.</li>
</ul>
<p>For example, to graph <code>y = x^2</code>:</p>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./hoyle</span> 0 0 1</span></code></pre></div>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./hoyle</span> 0 0 1</span></code></pre></div>
<p>Note that:</p>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./hoyle</span> 0 0 2</span></code></pre></div>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./hoyle</span> 0 0 2</span></code></pre></div>
<p>will produce the same graph, since the <code>y-axis</code> is auto scaling.</p>
<!--
+8 -8
View File
@@ -1,7 +1,7 @@
## To build:
```sh
make
make
```
There is an alternate version that allows one to control the number of numbers
@@ -13,7 +13,7 @@ to print on a line. See [alternate code](#alternate-code) below.
The current status of this entry is:
```
STATUS: INABIAF - please **DO NOT** fix
STATUS: INABIAF - please **DO NOT** fix
```
For more detailed information see [2004 jdalbec bugs](../../bugs.html#2004_jdalbec).
@@ -22,14 +22,14 @@ For more detailed information see [2004 jdalbec bugs](../../bugs.html#2004_jdalb
## To use:
```sh
./jdalbec number ...
./jdalbec number ...
```
## Try:
```sh
./try.sh
./try.sh
```
@@ -44,7 +44,7 @@ which line it is on.
### Alternate build:
```sh
make alt
make alt
```
The macro `Ag` ([silver](https://en.wikipedia.org/wiki/Silver)) controls how
@@ -53,7 +53,7 @@ you wish to make it silver, 47 (a prime) protons, do:
```sh
make clobber Ag=47 alt
make clobber Ag=47 alt
```
though it might be odd to have 47 numbers on a line as it would defeat the
@@ -61,7 +61,7 @@ purpose. :-) Or if you prefer some prime, golden irony:
```sh
make clobber Ag=79 alt
make clobber Ag=79 alt
```
@@ -73,7 +73,7 @@ Use `jdalbec.alt` as you would `jdalbec` above.
### Alternate try:
```sh
./try.alt.sh
./try.alt.sh
```
+9 -10
View File
@@ -132,8 +132,7 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#John_Dalbec">John Dalbec</a><br>
Location: <a href="../../location.html#US">US</a> - <em>United States of America</em> (<em>United States</em>)
<br><br></li>
Location: <a href="../../location.html#US">US</a> - <em>United States of America</em> (<em>United States</em>)</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -142,35 +141,35 @@ Location: <a href="../../location.html#US">US</a> - <em>United States of America
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span></span></code></pre></div>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span></span></code></pre></div>
<p>There is an alternate version that allows one to control the number of numbers
to print on a line. See <a href="#alternate-code">alternate code</a> below.</p>
<h3 id="bugs-and-misfeatures">Bugs and (Mis)features:</h3>
<p>The current status of this entry is:</p>
<pre><code>STATUS: INABIAF - please **DO NOT** fix</code></pre>
<pre><code> STATUS: INABIAF - please **DO NOT** fix</code></pre>
<p>For more detailed information see <a href="../../bugs.html#2004_jdalbec">2004 jdalbec bugs</a>.</p>
<h2 id="to-use">To use:</h2>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./jdalbec</span> number ...</span></code></pre></div>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./jdalbec</span> number ...</span></code></pre></div>
<h2 id="try">Try:</h2>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./try.sh</span></span></code></pre></div>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./try.sh</span></span></code></pre></div>
<h2 id="alternate-code">Alternate code:</h2>
<p>This version lets you control how many numbers to show on a line before adding a
newline as it can be harder to see when there are a lot of numbers. For lines
that don’t end up having too many line breaks it also makes it easier to see
which line it is on.</p>
<h3 id="alternate-build">Alternate build:</h3>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> alt</span></code></pre></div>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span> alt</span></code></pre></div>
<p>The macro <code>Ag</code> (<a href="https://en.wikipedia.org/wiki/Silver">silver</a>) controls how
many number of lines to print on a line. Set at default to 11 protons, salt, if
you wish to make it silver, 47 (a prime) protons, do:</p>
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> clobber Ag=47 alt</span></code></pre></div>
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span> clobber Ag=47 alt</span></code></pre></div>
<p>though it might be odd to have 47 numbers on a line as it would defeat the
purpose. :-) Or if you prefer some prime, golden irony:</p>
<div class="sourceCode" id="cb7"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> clobber Ag=79 alt</span></code></pre></div>
<div class="sourceCode" id="cb7"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span> clobber Ag=79 alt</span></code></pre></div>
<h3 id="alternate-use">Alternate use:</h3>
<p>Use <code>jdalbec.alt</code> as you would <code>jdalbec</code> above.</p>
<h3 id="alternate-try">Alternate try:</h3>
<div class="sourceCode" id="cb8"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb8-1"><a href="#cb8-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./try.alt.sh</span></span></code></pre></div>
<div class="sourceCode" id="cb8"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb8-1"><a href="#cb8-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./try.alt.sh</span></span></code></pre></div>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>We still aren’t sure whether or not this is a useful program, but
it’s the first atomic fission we’ve seen in the IOCCC.</p>
+12 -12
View File
@@ -1,7 +1,7 @@
## To build:
```sh
make
make
```
NOTE: We FORCE the use of -O0 even if someone overrides it because this entry
@@ -11,14 +11,14 @@ will not work with it enabled.
## To use:
```sh
./kopczynski < input_file
./kopczynski < input_file
```
## Try:
```sh
./try.sh
./try.sh
```
What happens if you feed the program source to the program? Can you figure out
@@ -35,15 +35,15 @@ does.
### Alternate build:
```sh
make alt
make alt
```
### Alternate try:
```sh
./kopczynski.alt < kopczynski-10
echo $?
./kopczynski.alt < kopczynski-10
echo $?
```
@@ -182,12 +182,12 @@ not the top left one.) The following messages will also work instead of `has
dirtiest IF`:
```
HighlandYachter
TestDirtiestTen
has lintiest IF
TighterLaughter
HustlerDaughter
TighterDemoThen
HighlandYachter
TestDirtiestTen
has lintiest IF
TighterLaughter
HustlerDaughter
TighterDemoThen
```
They can be mixed, of course!
+13 -14
View File
@@ -132,8 +132,7 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Eryk_Kopczynski">Eryk Kopczynski</a><br>
Location: <a href="../../location.html#PL">PL</a> - <em>Republic of Poland</em> (<em>Poland</em>)
<br><br></li>
Location: <a href="../../location.html#PL">PL</a> - <em>Republic of Poland</em> (<em>Poland</em>)</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -142,13 +141,13 @@ Location: <a href="../../location.html#PL">PL</a> - <em>Republic of Poland</em>
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span></span></code></pre></div>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span></span></code></pre></div>
<p>NOTE: We FORCE the use of -O0 even if someone overrides it because this entry
will not work with it enabled.</p>
<h2 id="to-use">To use:</h2>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./kopczynski</span> <span class="op">&lt;</span> input_file</span></code></pre></div>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./kopczynski</span> <span class="op">&lt;</span> input_file</span></code></pre></div>
<h2 id="try">Try:</h2>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./try.sh</span></span></code></pre></div>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./try.sh</span></span></code></pre></div>
<p>What happens if you feed the program source to the program? Can you figure out
why?</p>
<h2 id="alternate-code">Alternate code:</h2>
@@ -156,10 +155,10 @@ why?</p>
program returned the result as an exit code which is what the alternate version
does.</p>
<h3 id="alternate-build">Alternate build:</h3>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> alt</span></code></pre></div>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span> alt</span></code></pre></div>
<h3 id="alternate-try">Alternate try:</h3>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./kopczynski.alt</span> <span class="op">&lt;</span> kopczynski-10</span>
<span id="cb5-2"><a href="#cb5-2" aria-hidden="true" tabindex="-1"></a><span class="bu">echo</span> <span class="va">$?</span></span></code></pre></div>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./kopczynski.alt</span> <span class="op">&lt;</span> kopczynski-10</span>
<span id="cb5-2"><a href="#cb5-2" aria-hidden="true" tabindex="-1"></a> <span class="bu">echo</span> <span class="va">$?</span></span></code></pre></div>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>What is in a line? A lot when you obfuscate the way Eryk Kopczynski
did it. This small one line program is an outstanding technical
@@ -256,12 +255,12 @@ we use 15-character string.)</p></li>
until it did. (The <code>#</code> character to find vertexes is in the top right corner,
not the top left one.) The following messages will also work instead of <code>has dirtiest IF</code>:</p></li>
</ol>
<pre><code>HighlandYachter
TestDirtiestTen
has lintiest IF
TighterLaughter
HustlerDaughter
TighterDemoThen</code></pre>
<pre><code> HighlandYachter
TestDirtiestTen
has lintiest IF
TighterLaughter
HustlerDaughter
TighterDemoThen</code></pre>
<p>They can be mixed, of course!</p>
<ol start="8" type="1">
<li><p>NOTE: item 8 was removed by the judges so as to not spoil the challenge of
+5 -5
View File
@@ -1,21 +1,21 @@
## To build:
```sh
make
make
```
## To use:
```sh
./newbern [file.dat arg]
./newbern [file.dat arg]
```
## Try:
```sh
./try.sh
./try.sh
```
@@ -35,14 +35,14 @@ This is a configurable `banner(1)`-like program.
- To convert a character glyph into a data file:
```sh
./newbern char < some_nicely_shaped_text >> data_file
./newbern char < some_nicely_shaped_text >> data_file
```
- To print a string using glyphs from a data file:
```sh
./newbern data_file a_string
./newbern data_file a_string
```
+6 -7
View File
@@ -132,8 +132,7 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Jeff_Newbern">Jeff Newbern</a><br>
Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em>
<br><br></li>
Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -142,11 +141,11 @@ Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em>
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span></span></code></pre></div>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span></span></code></pre></div>
<h2 id="to-use">To use:</h2>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./newbern</span> [file.dat arg]</span></code></pre></div>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./newbern</span> [file.dat arg]</span></code></pre></div>
<h2 id="try">Try:</h2>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./try.sh</span></span></code></pre></div>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./try.sh</span></span></code></pre></div>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>The program is formatted using the same font glyphs as the example
data file.</p>
@@ -156,11 +155,11 @@ data file.</p>
<ul>
<li>To convert a character glyph into a data file:</li>
</ul>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./newbern</span> char <span class="op">&lt;</span> some_nicely_shaped_text <span class="op">&gt;&gt;</span> data_file</span></code></pre></div>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./newbern</span> char <span class="op">&lt;</span> some_nicely_shaped_text <span class="op">&gt;&gt;</span> data_file</span></code></pre></div>
<ul>
<li>To print a string using glyphs from a data file:</li>
</ul>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./newbern</span> data_file a_string</span></code></pre></div>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./newbern</span> data_file a_string</span></code></pre></div>
<h3 id="extra-functionality">Extra functionality</h3>
<p>The program can also act as a Morse encoder, unarguably.</p>
<p>It also has double-super-secret encryption capabilities.
+13 -14
View File
@@ -1,21 +1,21 @@
## To build:
```sh
make
make
```
## To use:
```sh
./omoikane infile layout outfile
./omoikane infile layout outfile
```
## Try:
```
./try.sh
./try.sh
```
@@ -44,7 +44,7 @@ insert a human-readable checksum string in the text itself! `^_^`
### Usage
```sh
./omoikane <infile> <layout> <outfile>
./omoikane <infile> <layout> <outfile>
```
All three arguments may reference the same file. All files is
@@ -82,18 +82,18 @@ layout.
Example file/layout:
```
file: layout:
crc = ######## ... . XXXXXXXX
patch = ###### ..... . XXXXXX
other text here ..... .... ....
file: layout:
crc = ######## ... . XXXXXXXX
patch = ###### ..... . XXXXXX
other text here ..... .... ....
```
And `Rinia` may generate a file similar to this:
```
crc = 1bad73cf
patch = #FR-QQ
other text here
crc = 1bad73cf
patch = #FR-QQ
other text here
```
Note that the original file by itself is a valid layout file, since
@@ -116,9 +116,8 @@ runs faster if the checksum is placed before the other marker
characters rather than after, e.g.:
```
a: X X XXX b: XXXXXXXX c: XXXXXXXX
XXXXXXXX X X XXX XXXXX
a: X X XXX b: XXXXXXXX c: XXXXXXXX
XXXXXXXX X X XXX XXXXX
```
`a` usually takes the longest time, while `c` usually is the
+14 -16
View File
@@ -132,8 +132,7 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Don_Yang">Don Yang</a><br>
Location: <a href="../../location.html#US">US</a> - <em>United States of America</em> (<em>United States</em>)
<br><br></li>
Location: <a href="../../location.html#US">US</a> - <em>United States of America</em> (<em>United States</em>)</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -142,11 +141,11 @@ Location: <a href="../../location.html#US">US</a> - <em>United States of America
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span></span></code></pre></div>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span></span></code></pre></div>
<h2 id="to-use">To use:</h2>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./omoikane</span> infile layout outfile</span></code></pre></div>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./omoikane</span> infile layout outfile</span></code></pre></div>
<h2 id="try">Try:</h2>
<pre><code>./try.sh</code></pre>
<pre><code> ./try.sh</code></pre>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>For extra credit, spot the checksum in the source file itself.
What makes this one particularly interesting is that the checksum,
@@ -162,7 +161,7 @@ Comments refer to it as such.</p>
strange file names or package .SFVs with your files! <code>Rinia</code> will
insert a human-readable checksum string in the text itself! <code>^_^</code></p>
<h3 id="usage">Usage</h3>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./omoikane</span> <span class="op">&lt;</span>infile<span class="op">&gt;</span> <span class="op">&lt;</span>layout<span class="op">&gt;</span> <span class="op">&lt;</span>outfile<span class="op">&gt;</span></span></code></pre></div>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./omoikane</span> <span class="op">&lt;</span>infile<span class="op">&gt;</span> <span class="op">&lt;</span>layout<span class="op">&gt;</span> <span class="op">&lt;</span>outfile<span class="op">&gt;</span></span></code></pre></div>
<p>All three arguments may reference the same file. All files is
assumed to be of ASCII character set.</p>
<h3 id="input">Input</h3>
@@ -188,14 +187,14 @@ then replace the remaining ones with space. Often it’s possible to
write the original file in such a way that it can be used as a
layout.</p>
<p>Example file/layout:</p>
<pre><code>file: layout:
crc = ######## ... . XXXXXXXX
patch = ###### ..... . XXXXXX
other text here ..... .... ....</code></pre>
<pre><code> file: layout:
crc = ######## ... . XXXXXXXX
patch = ###### ..... . XXXXXX
other text here ..... .... ....</code></pre>
<p>And <code>Rinia</code> may generate a file similar to this:</p>
<pre><code>crc = 1bad73cf
patch = #FR-QQ
other text here</code></pre>
<pre><code> crc = 1bad73cf
patch = #FR-QQ
other text here</code></pre>
<p>Note that the original file by itself is a valid layout file, since
<code>Rinia</code> will recognize that only <code>#</code> marks enough space to hold the
checksum, and has the lowest frequency.</p>
@@ -209,9 +208,8 @@ and nothing is written.</p>
completely dominated by the layout file design. In general, <code>Rinia</code>
runs faster if the checksum is placed before the other marker
characters rather than after, e.g.:</p>
<pre><code> a: X X XXX b: XXXXXXXX c: XXXXXXXX
XXXXXXXX X X XXX XXXXX
</code></pre>
<pre><code> a: X X XXX b: XXXXXXXX c: XXXXXXXX
XXXXXXXX X X XXX XXXXX</code></pre>
<p><code>a</code> usually takes the longest time, while <code>c</code> usually is the
fastest.</p>
<p>That said, each run is randomized with respect to system time, so
+7 -7
View File
@@ -1,21 +1,21 @@
## To build:
```sh
make
make
```
## To use:
```sh
./schnitzi <foo | vi -n
./schnitzi <foo | vi -n
```
## Try:
```sh
./try.sh
./try.sh
```
@@ -76,7 +76,7 @@ description of the input file format.
The first line is specified thusly:
```
[duration] [timefactor]
[duration] [timefactor]
```
The first parameter, `duration`, defines how long the animation will run. The
@@ -94,7 +94,7 @@ each successive frame. Each sprite begins with a line of parameters
of the following form:
```
[start] [end] [x] [y] [dx] [dy] [cols] [rows] [viewcount]
[start] [end] [x] [y] [dx] [dy] [cols] [rows] [viewcount]
```
where:
@@ -133,13 +133,13 @@ Try one of these methods to get the animation to run:
1. Redirect the output directly to vi, like this:
```sh
./schnitzi < input.dat | vi
./schnitzi < input.dat | vi
```
2. Redirect the output to a file, like this:
```sh
./schnitzi < input.dat > output.dat
./schnitzi < input.dat > output.dat
```
Then, open the output file, select the text, and copy it
+8 -9
View File
@@ -132,8 +132,7 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Mark_Schnitzius">Mark Schnitzius</a><br>
Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em>
<br><br></li>
Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -142,11 +141,11 @@ Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em>
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span></span></code></pre></div>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span></span></code></pre></div>
<h2 id="to-use">To use:</h2>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./schnitzi</span> <span class="op">&lt;</span>foo <span class="kw">|</span> <span class="fu">vi</span> <span class="at">-n</span></span></code></pre></div>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./schnitzi</span> <span class="op">&lt;</span>foo <span class="kw">|</span> <span class="fu">vi</span> <span class="at">-n</span></span></code></pre></div>
<h2 id="try">Try:</h2>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./try.sh</span></span></code></pre></div>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./try.sh</span></span></code></pre></div>
<p>NOTE: if you’re one of those who don’t know how to exit <code>vi</code> :-) don’t worry as
it will exit for you.</p>
<h2 id="judges-remarks">Judges’ remarks:</h2>
@@ -186,7 +185,7 @@ it.)</p>
to <code>stdin</code> when running the program. What follows is a detailed
description of the input file format.</p>
<p>The first line is specified thusly:</p>
<pre><code>[duration] [timefactor]</code></pre>
<pre><code> [duration] [timefactor]</code></pre>
<p>The first parameter, <code>duration</code>, defines how long the animation will run. The
second, <code>timefactor</code>, is used as sort of a fudge factor for machines that run
too fast to see the animation. A <code>timefactor</code> of 0 means, “run the animation as
@@ -199,7 +198,7 @@ different sprites, each up 50 by 50 in size, and with up to four
different ‘views’ of that object, which are cycled through with
each successive frame. Each sprite begins with a line of parameters
of the following form:</p>
<pre><code>[start] [end] [x] [y] [dx] [dy] [cols] [rows] [viewcount]</code></pre>
<pre><code> [start] [end] [x] [y] [dx] [dy] [cols] [rows] [viewcount]</code></pre>
<p>where:</p>
<ul>
<li><p><code>start</code> is the time at which this sprite first appears.</p></li>
@@ -222,11 +221,11 @@ scene, the other a bit of scrolling text.</p>
<ol type="1">
<li>Redirect the output directly to vi, like this:</li>
</ol>
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./schnitzi</span> <span class="op">&lt;</span> input.dat <span class="kw">|</span> <span class="fu">vi</span></span></code></pre></div>
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./schnitzi</span> <span class="op">&lt;</span> input.dat <span class="kw">|</span> <span class="fu">vi</span></span></code></pre></div>
<ol start="2" type="1">
<li>Redirect the output to a file, like this:</li>
</ol>
<div class="sourceCode" id="cb7"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./schnitzi</span> <span class="op">&lt;</span> input.dat <span class="op">&gt;</span> output.dat</span></code></pre></div>
<div class="sourceCode" id="cb7"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./schnitzi</span> <span class="op">&lt;</span> input.dat <span class="op">&gt;</span> output.dat</span></code></pre></div>
<p>Then, open the output file, select the text, and copy it
to your system pasteboard/cut/selection buffer and paste
it into vi. The paste is NOT the vi paste command, but
+10 -10
View File
@@ -1,7 +1,7 @@
## To build:
```sh
make
make
```
@@ -10,7 +10,7 @@ make
The current status of this entry is:
```
STATUS: INABIAF - please **DO NOT** fix
STATUS: INABIAF - please **DO NOT** fix
```
For more detailed information see [2004 sds bugs](../../bugs.html#2004_sds).
@@ -19,14 +19,14 @@ For more detailed information see [2004 sds bugs](../../bugs.html#2004_sds).
## To use:
```sh
./sds
./sds
```
## Try:
```sh
./try.sh
./try.sh
```
@@ -64,13 +64,13 @@ decoder.
Try it out. Compile the program, then type
```sh
./sds < sds.c
./sds < sds.c
```
You should see the encoder program displayed. Now save it, like:
```sh
./sds < sds.c > encoder.c
./sds < sds.c > encoder.c
```
Then compile `encoder.c`. You now have the complete system ready.
@@ -83,15 +83,15 @@ standard input, and will output the results on the standard output.
You can use it like this (assuming you have a file called remarks):
```sh
echo 'Hello, World!' > message
./encoder message < remarks > remarks_msg
echo 'Hello, World!' > message
./encoder message < remarks > remarks_msg
```
Then to decode:
```sh
./sds < remarks_msg
Hello, World!
./sds < remarks_msg
Hello, World!
```
C programs are mostly unaffected by adding steganographic content,
+11 -12
View File
@@ -132,8 +132,7 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Stephen_Sykes">Stephen Sykes</a><br>
Location: <a href="../../location.html#FI">FI</a> - <em>Republic of Finland </em> (<em>Finland</em>)
<br><br></li>
Location: <a href="../../location.html#FI">FI</a> - <em>Republic of Finland </em> (<em>Finland</em>)</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -142,15 +141,15 @@ Location: <a href="../../location.html#FI">FI</a> - <em>Republic of Finland </em
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span></span></code></pre></div>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span></span></code></pre></div>
<h3 id="bugs-and-misfeatures">Bugs and (Mis)features:</h3>
<p>The current status of this entry is:</p>
<pre><code>STATUS: INABIAF - please **DO NOT** fix</code></pre>
<pre><code> STATUS: INABIAF - please **DO NOT** fix</code></pre>
<p>For more detailed information see <a href="../../bugs.html#2004_sds">2004 sds bugs</a>.</p>
<h2 id="to-use">To use:</h2>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./sds</span></span></code></pre></div>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./sds</span></span></code></pre></div>
<h2 id="try">Try:</h2>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./try.sh</span></span></code></pre></div>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./try.sh</span></span></code></pre></div>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>Why not use the program to hide another program in the program? It
must have seemed reasonable at the time.</p>
@@ -175,20 +174,20 @@ provide a separate encoding program, you should not be surprised to
learn that I opted to steganographically hide the encoder inside the
decoder.</p>
<p>Try it out. Compile the program, then type</p>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./sds</span> <span class="op">&lt;</span> sds.c</span></code></pre></div>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./sds</span> <span class="op">&lt;</span> sds.c</span></code></pre></div>
<p>You should see the encoder program displayed. Now save it, like:</p>
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./sds</span> <span class="op">&lt;</span> sds.c <span class="op">&gt;</span> encoder.c</span></code></pre></div>
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./sds</span> <span class="op">&lt;</span> sds.c <span class="op">&gt;</span> encoder.c</span></code></pre></div>
<p>Then compile <code>encoder.c</code>. You now have the complete system ready.</p>
<p>The encoder expects to get a filename as an argument. This filename
is the name of the file containing the information to be hidden. It
expects the file in which to hide the information to be on the
standard input, and will output the results on the standard output.</p>
<p>You can use it like this (assuming you have a file called remarks):</p>
<div class="sourceCode" id="cb7"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a><span class="bu">echo</span> <span class="st">&#39;Hello, World!&#39;</span> <span class="op">&gt;</span> message</span>
<span id="cb7-2"><a href="#cb7-2" aria-hidden="true" tabindex="-1"></a><span class="ex">./encoder</span> message <span class="op">&lt;</span> remarks <span class="op">&gt;</span> remarks_msg</span></code></pre></div>
<div class="sourceCode" id="cb7"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a> <span class="bu">echo</span> <span class="st">&#39;Hello, World!&#39;</span> <span class="op">&gt;</span> message</span>
<span id="cb7-2"><a href="#cb7-2" aria-hidden="true" tabindex="-1"></a> <span class="ex">./encoder</span> message <span class="op">&lt;</span> remarks <span class="op">&gt;</span> remarks_msg</span></code></pre></div>
<p>Then to decode:</p>
<div class="sourceCode" id="cb8"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb8-1"><a href="#cb8-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./sds</span> <span class="op">&lt;</span> remarks_msg</span>
<span id="cb8-2"><a href="#cb8-2" aria-hidden="true" tabindex="-1"></a><span class="ex">Hello,</span> World!</span></code></pre></div>
<div class="sourceCode" id="cb8"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb8-1"><a href="#cb8-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./sds</span> <span class="op">&lt;</span> remarks_msg</span>
<span id="cb8-2"><a href="#cb8-2" aria-hidden="true" tabindex="-1"></a> <span class="ex">Hello,</span> World!</span></code></pre></div>
<p>C programs are mostly unaffected by adding steganographic content,
but it is possible in certain circumstances for whitespace to be
changed inside strings where it should be left alone. Plain text
+16 -16
View File
@@ -1,27 +1,27 @@
## To build:
```sh
make
make
```
## To use:
```sh
./vik1 [arg]
./vik1 [arg]
```
## Try:
```sh
./vik1
./vik1
./vik1 a
./vik1 a
./vik1 d2
./vik1 d2
./vik1 ad3
./vik1 ad3
```
@@ -83,24 +83,24 @@ The program takes three options which have to be typed in a specific
order as described below.
```sh
Usage: ./vik1 ['a']['d'][#]
Usage: ./vik1 ['a']['d'][#]
a - Advanced racing in a winter landscape
d - Racing in at night in the dark
a - Advanced racing in a winter landscape
d - Racing in at night in the dark
# - Race track selection 1-3 are valid numbers
```
Here are a few examples:
```
Command line: Description:
Command line: Description:
$ ./vik1 Run track 1 at daytime in the summer
$ ./vik1 a Run track 1 at daytime in the winter
$ ./vik1 d Run track 1 at night in the summer
$ ./vik1 3 Run track 3 at daytime in the summer
$ ./vik1 d3 Run track 3 at night in the summer
$ ./vik1 ad2 Run track 2 at night in the winter
$ ./vik1 Run track 1 at daytime in the summer
$ ./vik1 a Run track 1 at daytime in the winter
$ ./vik1 d Run track 1 at night in the summer
$ ./vik1 3 Run track 3 at daytime in the summer
$ ./vik1 d3 Run track 3 at night in the summer
$ ./vik1 ad2 Run track 2 at night in the winter
```
Note that the order in which the argument characters are entered is
+17 -18
View File
@@ -132,8 +132,7 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Daniel_Vik">Daniel Vik</a><br>
Location: <a href="../../location.html#US">US</a> - <em>United States of America</em> (<em>United States</em>)
<br><br></li>
Location: <a href="../../location.html#US">US</a> - <em>United States of America</em> (<em>United States</em>)</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -142,17 +141,17 @@ Location: <a href="../../location.html#US">US</a> - <em>United States of America
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span></span></code></pre></div>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span></span></code></pre></div>
<h2 id="to-use">To use:</h2>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./vik1</span> <span class="pp">[</span><span class="ss">arg</span><span class="pp">]</span></span></code></pre></div>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./vik1</span> <span class="pp">[</span><span class="ss">arg</span><span class="pp">]</span></span></code></pre></div>
<h2 id="try">Try:</h2>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./vik1</span></span>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./vik1</span></span>
<span id="cb3-2"><a href="#cb3-2" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb3-3"><a href="#cb3-3" aria-hidden="true" tabindex="-1"></a><span class="ex">./vik1</span> a</span>
<span id="cb3-3"><a href="#cb3-3" aria-hidden="true" tabindex="-1"></a> <span class="ex">./vik1</span> a</span>
<span id="cb3-4"><a href="#cb3-4" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb3-5"><a href="#cb3-5" aria-hidden="true" tabindex="-1"></a><span class="ex">./vik1</span> d2</span>
<span id="cb3-5"><a href="#cb3-5" aria-hidden="true" tabindex="-1"></a> <span class="ex">./vik1</span> d2</span>
<span id="cb3-6"><a href="#cb3-6" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb3-7"><a href="#cb3-7" aria-hidden="true" tabindex="-1"></a><span class="ex">./vik1</span> ad3</span></code></pre></div>
<span id="cb3-7"><a href="#cb3-7" aria-hidden="true" tabindex="-1"></a> <span class="ex">./vik1</span> ad3</span></code></pre></div>
<p>Can you figure out how to cheat?</p>
<p>Also see the author’s remarks below for more details on the different
modes/options.</p>
@@ -185,20 +184,20 @@ glance at the feature list he provided below. Amazing!</p>
<p>Compile the source code and link X libraries if necessary.
The program takes three options which have to be typed in a specific
order as described below.</p>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="ex">Usage:</span> ./vik1 <span class="pp">[</span><span class="st">&#39;a&#39;</span><span class="pp">][</span><span class="st">&#39;d&#39;</span><span class="pp">][</span><span class="ss">#</span><span class="pp">]</span></span>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">Usage:</span> ./vik1 <span class="pp">[</span><span class="st">&#39;a&#39;</span><span class="pp">][</span><span class="st">&#39;d&#39;</span><span class="pp">][</span><span class="ss">#</span><span class="pp">]</span></span>
<span id="cb4-2"><a href="#cb4-2" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb4-3"><a href="#cb4-3" aria-hidden="true" tabindex="-1"></a><span class="ex">a</span> <span class="at">-</span> Advanced racing in a winter landscape</span>
<span id="cb4-4"><a href="#cb4-4" aria-hidden="true" tabindex="-1"></a><span class="ex">d</span> <span class="at">-</span> Racing in at night in the dark</span>
<span id="cb4-3"><a href="#cb4-3" aria-hidden="true" tabindex="-1"></a> <span class="ex">a</span> <span class="at">-</span> Advanced racing in a winter landscape</span>
<span id="cb4-4"><a href="#cb4-4" aria-hidden="true" tabindex="-1"></a> <span class="ex">d</span> <span class="at">-</span> Racing in at night in the dark</span>
<span id="cb4-5"><a href="#cb4-5" aria-hidden="true" tabindex="-1"></a><span class="co"># - Race track selection 1-3 are valid numbers</span></span></code></pre></div>
<p>Here are a few examples:</p>
<pre><code>Command line: Description:
<pre><code> Command line: Description:
$ ./vik1 Run track 1 at daytime in the summer
$ ./vik1 a Run track 1 at daytime in the winter
$ ./vik1 d Run track 1 at night in the summer
$ ./vik1 3 Run track 3 at daytime in the summer
$ ./vik1 d3 Run track 3 at night in the summer
$ ./vik1 ad2 Run track 2 at night in the winter</code></pre>
$ ./vik1 Run track 1 at daytime in the summer
$ ./vik1 a Run track 1 at daytime in the winter
$ ./vik1 d Run track 1 at night in the summer
$ ./vik1 3 Run track 3 at daytime in the summer
$ ./vik1 d3 Run track 3 at night in the summer
$ ./vik1 ad2 Run track 2 at night in the winter</code></pre>
<p>Note that the order in which the argument characters are entered is
important. It is for example not possible to type <code>./vik1 da</code>. (Well it is
possible, but the result will not be as expected.)</p>
+6 -6
View File
@@ -1,14 +1,14 @@
## To build:
```sh
make
make
```
## To use:
```sh
./vik2
./vik2
```
@@ -128,7 +128,7 @@ speed up the compilation, define the `STOP` symbol to anything from `_3` to
time.) Prime numbers up to `2^STOP` will be calculated.
```sh
cpp '-DSTOP=_5' '-DFNAME="tmp1.c"' prog.c tmp1.c
cpp '-DSTOP=_5' '-DFNAME="tmp1.c"' prog.c tmp1.c
```
Then use `cpp` or any other
@@ -136,20 +136,20 @@ Then use `cpp` or any other
work. This will take some time....
```sh
cpp tmp1.c > tmp2.c
cpp tmp1.c > tmp2.c
```
Finally compile the pre-processed file
```sh
cc -O tmp2.c -o prog
cc -O tmp2.c -o prog
```
Then run the program to reveal all prime numbers up to 32 (if you used
`STOP=_5` as above):
```sh
./vik2
./vik2
```
+7 -8
View File
@@ -132,8 +132,7 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Daniel_Vik">Daniel Vik</a><br>
Location: <a href="../../location.html#US">US</a> - <em>United States of America</em> (<em>United States</em>)
<br><br></li>
Location: <a href="../../location.html#US">US</a> - <em>United States of America</em> (<em>United States</em>)</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -142,9 +141,9 @@ Location: <a href="../../location.html#US">US</a> - <em>United States of America
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span></span></code></pre></div>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">make</span></span></code></pre></div>
<h2 id="to-use">To use:</h2>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./vik2</span></span></code></pre></div>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./vik2</span></span></code></pre></div>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>The fun thing about <a href="https://en.wikipedia.org/wiki/C_preprocessor">CPP</a> abuses
is that, in most cases, running the
@@ -235,16 +234,16 @@ symbol must be defined to the name of the output file. If you want to
speed up the compilation, define the <code>STOP</code> symbol to anything from <code>_3</code> to
<code>_10</code>. (The default value is <code>_10</code> which will make the compilation take some
time.) Prime numbers up to <code>2^STOP</code> will be calculated.</p>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="fu">cpp</span> <span class="st">&#39;-DSTOP=_5&#39;</span> <span class="st">&#39;-DFNAME=&quot;tmp1.c&quot;&#39;</span> prog.c tmp1.c</span></code></pre></div>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">cpp</span> <span class="st">&#39;-DSTOP=_5&#39;</span> <span class="st">&#39;-DFNAME=&quot;tmp1.c&quot;&#39;</span> prog.c tmp1.c</span></code></pre></div>
<p>Then use <code>cpp</code> or any other
<a href="https://en.wikipedia.org/wiki/C_preprocessor">pre-processor</a> to do the actual
work. This will take some time….</p>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="fu">cpp</span> tmp1.c <span class="op">&gt;</span> tmp2.c</span></code></pre></div>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">cpp</span> tmp1.c <span class="op">&gt;</span> tmp2.c</span></code></pre></div>
<p>Finally compile the pre-processed file</p>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="fu">cc</span> <span class="at">-O</span> tmp2.c <span class="at">-o</span> prog</span></code></pre></div>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a> <span class="fu">cc</span> <span class="at">-O</span> tmp2.c <span class="at">-o</span> prog</span></code></pre></div>
<p>Then run the program to reveal all prime numbers up to 32 (if you used
<code>STOP=_5</code> as above):</p>
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./vik2</span></span></code></pre></div>
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a> <span class="ex">./vik2</span></span></code></pre></div>
<h3 id="verification">Verification</h3>
<p>I wasn’t able to compile the full program which calculates <a href="https://en.wikipedia.org/wiki/Prime_number">prime
numbers</a> up to 1024 using GNU <code>cpp</code>