force use of pandoc version >= 3.1.12.2
The `bin/pandoc-wrapper.sh` tool will verify that the ssytem has a recent enough version of `pandoc(1)`. We explain why we insist on `pandoc(1)`. version >= 3.1.12.2 in comments where the $PANDOC_MIN_VERSION is set. Added `--wrap=preserve` as a default argument to `pandoc(1)`. While this change will impact every HTML file generated, we believe this will improve the ability of someone to look at the generated HTML and correlate with the original markdown. Changed `bin/pandoc-wrapper.sh` VERSION from "1.4.2 2024-03-17" to "1.4.3 2024-03-18". Performed `make www` to achieve all of the above and to generate HTML using the new `--wrap=preserve` `pandoc(1)` mode.
This commit is contained in:
1 parent
9eb7a54e9f
commit
b0b212acb1
402 files changed
+37061
-55132
No files matched your search
+46
-74
@@ -144,57 +144,52 @@ Location: <a href="../../location.html#JP">JP</a> - <em>Japan</em>
|
||||
<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">./prog</span></span></code></pre></div>
|
||||
<h2 id="try">Try:</h2>
|
||||
<p>To see the original <a href="mullender.c">mullender</a> in
|
||||
action:</p>
|
||||
<p>To see the original <a href="mullender.c">mullender</a> in action:</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">./try.sh</span></span></code></pre></div>
|
||||
<p>Observe what happens when you hit enter or another character! You
|
||||
might even try typing out, one character at a time,
|
||||
<code>1984/mullender</code>, and then see what it looks like at the end.
|
||||
Send INTR to end the program.</p>
|
||||
<p>Observe what happens when you hit enter or another character! You might even try
|
||||
typing out, one character at a time, <code>1984/mullender</code>, and then see what it looks
|
||||
like at the end. Send INTR to end the program.</p>
|
||||
<p>More generally use:</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">cc</span> <span class="at">-o</span> prog prog.c foo.c</span>
|
||||
<span id="cb4-2"><a href="#cb4-2" aria-hidden="true" tabindex="-1"></a><span class="ex">./prog</span></span>
|
||||
<span id="cb4-3"><a href="#cb4-3" aria-hidden="true" tabindex="-1"></a><span class="ex">^C</span> <span class="co"># if necessary, where ^C is ctrl-C, interrrupt</span></span></code></pre></div>
|
||||
<p>to compile and run <code>prog</code> as whatever foo.c is in the joke
|
||||
PDP-11 emulator.</p>
|
||||
<p>to compile and run <code>prog</code> as whatever foo.c is in the joke PDP-11 emulator.</p>
|
||||
<h2 id="judges-remarks">Judges’ remarks:</h2>
|
||||
<p>Like <a href="https://en.wikipedia.org/wiki/Marty_McFly">Marty</a>
|
||||
and <a href="https://en.wikipedia.org/wiki/Emmett_Brown">Doc</a>,
|
||||
something nostalgic from 1984 appears live in October of 2015!</p>
|
||||
<p>The author of this gem is a true <a
|
||||
href="https://en.wikipedia.org/wiki/DeLorean_time_machine">DeLorean</a>!</p>
|
||||
<p>A question for inquisitive readers: is the implemented subset of
|
||||
PDP-11 instructions <a
|
||||
href="https://en.wikipedia.org/wiki/Turing_completeness">Turing-complete</a>?
|
||||
(For a clue, see the end of the author’s remarks.) If in doubt, use <a
|
||||
href="https://github.com/DoctorWkt/Apout">APOUT</a>.</p>
|
||||
<p>Like <a href="https://en.wikipedia.org/wiki/Marty_McFly">Marty</a> and
|
||||
<a href="https://en.wikipedia.org/wiki/Emmett_Brown">Doc</a>, something nostalgic from 1984
|
||||
appears live in October of 2015!</p>
|
||||
<p>The author of this gem is a true
|
||||
<a href="https://en.wikipedia.org/wiki/DeLorean_time_machine">DeLorean</a>!</p>
|
||||
<p>A question for inquisitive readers: is the implemented subset of PDP-11
|
||||
instructions
|
||||
<a href="https://en.wikipedia.org/wiki/Turing_completeness">Turing-complete</a>? (For a
|
||||
clue, see the end of the author’s remarks.) If in doubt, use
|
||||
<a href="https://github.com/DoctorWkt/Apout">APOUT</a>.</p>
|
||||
<h2 id="authors-remarks">Author’s remarks:</h2>
|
||||
<h3 id="hint-compatibility">Hint / Compatibility</h3>
|
||||
<ul>
|
||||
<li>A little-endian system is required due to an external factor.</li>
|
||||
<li>Strictly speaking, this program does not comply with any C
|
||||
specification for the same reason. But I believe it is reasonably
|
||||
portable.</li>
|
||||
<li>Strictly speaking, this program does not comply with any C specification for
|
||||
the same reason. But I believe it is reasonably portable.</li>
|
||||
<li>It uses a GCC extension but works with clang.</li>
|
||||
<li>This is a kind of emulator. You may find its architecture name if
|
||||
you look at the source code from all angles..</li>
|
||||
<li>This is a kind of emulator. You may find its architecture name if you look at
|
||||
the source code from all angles..</li>
|
||||
<li>Find <code>main()</code> function.</li>
|
||||
</ul>
|
||||
<h3 id="spoiler">Spoiler</h3>
|
||||
<p>This program is a joke PDP-11 emulator. (“ll-dpd” is embedded in the
|
||||
code. Read it upside down.)</p>
|
||||
<p>This program is a joke PDP-11 emulator. (“ll-dpd” is embedded in the code.
|
||||
Read it upside down.)</p>
|
||||
<p>You got it? This program is supposed to be used in this way:</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">wget</span> https://www.ioccc.org/1984/mullender.c</span>
|
||||
<span id="cb5-2"><a href="#cb5-2" aria-hidden="true" tabindex="-1"></a><span class="fu">clang</span> <span class="at">-o</span> prog prog.c mullender.c</span>
|
||||
<span id="cb5-3"><a href="#cb5-3" aria-hidden="true" tabindex="-1"></a><span class="ex">./prog</span></span></code></pre></div>
|
||||
<p>You can enjoy the legendary winning entry of the first IOCCC,
|
||||
again.</p>
|
||||
<p>You can enjoy the legendary winning entry of the first IOCCC, again.</p>
|
||||
<h3 id="internal">Internal</h3>
|
||||
<p>This program uses <code>__attribute__((constructor))</code>, which is
|
||||
a GCC extension, to hijack the <code>main()</code> function call. And
|
||||
then it interprets <code>main()</code> as an instruction sequence.</p>
|
||||
<p>It supports the minimal subset of instructions and addressing modes
|
||||
which are needed for <a href="mullender.c">mullender.c</a> to work:</p>
|
||||
<p>This program uses <code>__attribute__((constructor))</code>, which is a GCC extension, to
|
||||
hijack the <code>main()</code> function call. And then it interprets <code>main()</code> as an
|
||||
instruction sequence.</p>
|
||||
<p>It supports the minimal subset of instructions and addressing modes which are
|
||||
needed for <a href="mullender.c">mullender.c</a> to work:</p>
|
||||
<ul>
|
||||
<li>Instructions
|
||||
<ul>
|
||||
@@ -215,10 +210,10 @@ which are needed for <a href="mullender.c">mullender.c</a> to work:</p>
|
||||
</ul></li>
|
||||
</ul>
|
||||
<h3 id="limitations">Limitations</h3>
|
||||
<p>Non-trivial combination of instruction and addressing mode may cause
|
||||
undefined behavior (unsequenced modification), such as attempting to
|
||||
auto-increment a destination register. Index addressing mode works well
|
||||
only for R7 (PC register).</p>
|
||||
<p>Non-trivial combination of instruction and addressing mode may cause undefined
|
||||
behavior (unsequenced modification), such as attempting to auto-increment a
|
||||
destination register. Index addressing mode works well only for R7 (PC
|
||||
register).</p>
|
||||
<h3 id="one-more-thing">One more thing</h3>
|
||||
<p>Note: this program writes a binary file to <code>stdout</code>:</p>
|
||||
<pre><code>short main[]={5568,1,-30460,12,2782,0,-29921,2056,-4864,6873,770,30054,11886,
|
||||
@@ -334,59 +329,36 @@ only for R7 (PC register).</p>
|
||||
8203,-25556,13494,30352,29161,30898,1432,-5991,25411,1344,-4019,22299,15685,
|
||||
-16401,-23136,-28110,11874,-18945,1879,2,0,-32256,-20996,-18169,29220,12,0,0,0,
|
||||
335,-27277,-30776,20480,0};</code></pre>
|
||||
<h2 id="copyright-and-cc-by-sa-4.0-license">Copyright and CC BY-SA 4.0
|
||||
License:</h2>
|
||||
<p>This file is Copyright (c) 2023 by Landon Curt Noll. All Rights
|
||||
Reserved. You are free to share and adapt this file under the terms of
|
||||
this license:</p>
|
||||
<h2 id="copyright-and-cc-by-sa-4.0-license">Copyright and CC BY-SA 4.0 License:</h2>
|
||||
<p>This file is Copyright (c) 2023 by Landon Curt Noll. All Rights Reserved.
|
||||
You are free to share and adapt this file under the terms of this license:</p>
|
||||
<pre><code>Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)</code></pre>
|
||||
<p>For more information, see:
|
||||
https://creativecommons.org/licenses/by-sa/4.0/</p>
|
||||
<p>For more information, see: https://creativecommons.org/licenses/by-sa/4.0/</p>
|
||||
|
||||
<!-- END: this line ends content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
|
||||
<!-- START: this line starts content for HTML phase 22 by: bin/output-index-inventory.sh via bin/md2html.sh -->
|
||||
|
||||
<!-- START: this line starts content generated by: bin/output-index-inventory.sh -->
|
||||
|
||||
<h1 id="inventory-for-2015endoh3"><a name="inventory"></a>Inventory for
|
||||
2015/endoh3</h1>
|
||||
<h1 id="inventory-for-2015endoh3"><a name="inventory"></a>Inventory for 2015/endoh3</h1>
|
||||
<p><a href="#top">Jump to top</a></p>
|
||||
<h2 id="primary-files">Primary files</h2>
|
||||
<ul>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2015/endoh3/prog.c">prog.c</a>
|
||||
- entry source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2015/endoh3/Makefile">Makefile</a>
|
||||
- entry Makefile</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2015/endoh3/prog.orig.c">prog.orig.c</a>
|
||||
- original source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2015/endoh3/try.sh">try.sh</a>
|
||||
- how to run</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2015/endoh3/ioccc.c">ioccc.c</a>
|
||||
- program as an array of shorts</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2015/endoh3/mullender.c">mullender.c</a>
|
||||
- copy of 1984/mullender.c</li>
|
||||
<li><a href="2015_endoh3.tar.bz2">2015_endoh3.tar.bz2</a> - download
|
||||
entry source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2015/endoh3/prog.c">prog.c</a> - entry source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2015/endoh3/Makefile">Makefile</a> - entry Makefile</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2015/endoh3/prog.orig.c">prog.orig.c</a> - original source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2015/endoh3/try.sh">try.sh</a> - how to run</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2015/endoh3/ioccc.c">ioccc.c</a> - program as an array of shorts</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2015/endoh3/mullender.c">mullender.c</a> - copy of 1984/mullender.c</li>
|
||||
<li><a href="2015_endoh3.tar.bz2">2015_endoh3.tar.bz2</a> - download entry source</li>
|
||||
</ul>
|
||||
<h2 id="secondary-files">Secondary files</h2>
|
||||
<ul>
|
||||
<li><a href="index.html">index.html</a> - entry home page</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2015/endoh3/.entry.json">.entry.json</a>
|
||||
- description of entry in JSON</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2015/endoh3/.gitignore">.gitignore</a>
|
||||
- list of files that should not be committed under git</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2015/endoh3/.entry.json">.entry.json</a> - description of entry in JSON</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2015/endoh3/.gitignore">.gitignore</a> - list of files that should not be committed under git</li>
|
||||
<li><a href=".path">.path</a> - directory path from top directory</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2015/endoh3/README.md">README.md</a>
|
||||
- markdown source for index.html</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2015/endoh3/README.md">README.md</a> - markdown source for index.html</li>
|
||||
</ul>
|
||||
|
||||
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->
|
||||
|
||||
Reference in new issue
Block a user