More html files of 2004 fixed

Some bug statuses have been changed so the bugs file was also updated
(some removed, some added).

The manifest of 2004/hibachi was fixed some.

The alt_url of 2004/gavare was fixed which required a rebuild of
authors.html.

For 2004/gavin a proper link to QEMU was added. It strikes me as it
possibly being a good idea to have an FAQ about QEMU (as it is not just
2004/gavin that might benefit from it) but I don't know and in any case
I have zero experience with it.

The entries 2004/gavare, 2004/gavin and 2004/hibachi have been checked
for format / display issues. This would suggest that the next entry to
look at is 2004/hoyle.
This commit is contained in:
Cody Boone Ferguson committed 2024-08-14 09:25:39 -07:00
1 parent 13e6d26a6e
commit 453ed3d75b
13 files changed
+233 -192

No files matched your search

+17 -18
View File
@@ -5,17 +5,18 @@
```
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 [alternate code](#alternate-code) below.
There is an alternate version for those who wish to use
[QEMU](https://www.qemu.org) rather than having
to reboot and rely on having a [floppy
drive](https://en.wikipedia.org/wiki/Floppy_disk) ([if you even
remember](https://en.wikipedia.org/wiki/History_of_the_floppy_disk) what those are
:-) ) etc. See [Alternate code](#alternate-code) below.
### Bugs and (Mis)features:
The current status of this entry is:
> **STATUS: compiled executable crashes - please help us fix**<br>
> **STATUS: doesn't work with some platforms - please help us fix it**<br>
> **STATUS: INABIAF - please DO NOT fix**
For more detailed information see [2004/gavin in bugs.html](../../bugs.html#2004_gavin).
@@ -30,8 +31,8 @@ For more detailed information see [2004/gavin in bugs.html](../../bugs.html#2004
## Try:
To enjoy the results (on a Linux/x86 machine) with a floppy drive (remember
those? We do!):
To enjoy the results (on a Linux/x86 machine) with a floppy drive
([remember](https://en.wikipedia.org/wiki/Old_age) those? We do!):
``` <!---sh-->
@@ -45,9 +46,9 @@ whatever the floppy device is!), mount it under `/mnt/floppy` and then:
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.
**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.
**NOTE**: If your floppy drive is not `/dev/fd0`, edit `lilo.conf` appropriately.
``` <!---sh-->
lilo -C /mnt/floppy/lilo.conf
@@ -92,7 +93,7 @@ you can use it with `QEMU`.
### Alternate use:
The use is mostly the same as `gavin` except that one initially executes `gavin.alt`
(which `make alt` will do) and one will have to use `QEMU` instead. The files
and one will have to use `QEMU` instead. The files
generated are the same names. See [to use](#to-use) and [try](#try) above as
well as the judges' remarks below plus [gavin.html](gavin.html).
@@ -113,9 +114,9 @@ If you do not want to mess with a floppy and you use GRUB, see
You can put additional text files in `fs.tar` for browsing with vi.
If you do not want to bother rebooting your computer at all, see
<http://bellard.org> for QEMU ([Fabrice Bellard](../../authors.html#Fabrice_Bellard)
is an IOCCC 2001 winning entry), but your experience will be limited; use the
[alternate code](#alternate-code) instead. You'll have to move the mouse to
<https://www.qemu.org> for QEMU (by [Fabrice
Bellard](../../authors.html#Fabrice_Bellard), an IOCCC winning author) and use
the [Alternate code](#alternate-code) instead. You'll have to move the mouse to
trigger the initial screen update.
The judges were able to write a few more programs to run in this OS.
@@ -154,7 +155,7 @@ For further usage information see [gavin.html](gavin.html).
The filenames `vi` and `sh` are significant, and should not be changed.
### Known 'features'
### Known 'features':
Known issues are really too plentiful to list.
@@ -188,16 +189,14 @@ keyboard maps, etc. (I should also mention that it contains mini functions to
perform an x86 `in` and `out` instruction - to allow the keyboard & mouse to be
driven from C code).
Porting to another architecture should be relatively easy\* -
Porting to another architecture should be relatively easy[^1] -
the string simply needs be replaced with one containing
data & code suitable for the new target platform.
Accesses to data in the string are made relative to the define `V`,
so these may need updating as appropriate (`0x90200` is the address
at which a Linux bootloader loads an x86 kernel image).
```
\* ;-)
```
[^1]: \* ;-)
<!--
+13 -17
View File
@@ -403,28 +403,24 @@ 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></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
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
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.</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">
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>
<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,14 +15,12 @@ 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
@@ -32,12 +30,10 @@ 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
+24 -17
View File
@@ -409,28 +409,29 @@ Location: <a href="../../location.html#UK">UK</a> - <em>United Kingdom of Great
<!-- BEFORE: 1st line of markdown file: 2004/gavin/README.md -->
<h2 id="to-build">To build:</h2>
<pre><code> make</code></pre>
<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>
<p>There is an alternate version for those who wish to use
<a href="https://www.qemu.org">QEMU</a> rather than having
to reboot and rely on having a <a href="https://en.wikipedia.org/wiki/Floppy_disk">floppy
drive</a> (<a href="https://en.wikipedia.org/wiki/History_of_the_floppy_disk">if you even
remember</a> 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>
<blockquote>
<p><strong>STATUS: compiled executable crashes - please help us fix</strong><br>
<strong>STATUS: doesn’t work with some platforms - please help us fix it</strong><br>
<strong>STATUS: INABIAF - please DO NOT fix</strong></p>
<p><strong>STATUS: INABIAF - please DO NOT fix</strong></p>
</blockquote>
<p>For more detailed information see <a href="../../bugs.html#2004_gavin">2004/gavin in bugs.html</a>.</p>
<h2 id="to-use">To use:</h2>
<pre><code> ./gavin</code></pre>
<h2 id="try">Try:</h2>
<p>To enjoy the results (on a Linux/x86 machine) with a floppy drive (remember
those? We do!):</p>
<p>To enjoy the results (on a Linux/x86 machine) with a floppy drive
(<a href="https://en.wikipedia.org/wiki/Old_age">remember</a> those? We do!):</p>
<pre><code> su</code></pre>
<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>
<pre><code> cp kernel fs.tar lilo.conf boot.b /mnt/floppy</code></pre>
<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>
<p><strong>NOTE</strong>: If the version of your lilo is not 21.4, use the appropriate <code>boot.b</code> file.</p>
<p><strong>NOTE</strong>: If your floppy drive is not <code>/dev/fd0</code>, edit <code>lilo.conf</code> appropriately.</p>
<pre><code> lilo -C /mnt/floppy/lilo.conf</code></pre>
<p>Boot from the floppy on an x86 machine with a PS/2 keyboard and mouse.
Move the window away from the corner.</p>
@@ -448,7 +449,7 @@ you can use it with <code>QEMU</code>.</p>
<pre><code> make alt</code></pre>
<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
and one will have to use <code>QEMU</code> instead. The files
generated are the same names. See <a href="#to-use">to use</a> and <a href="#try">try</a> above as
well as the judges’ remarks below plus <a href="gavin.html">gavin.html</a>.</p>
<h2 id="judges-remarks">Judges’ remarks:</h2>
@@ -463,9 +464,9 @@ future contests.</p>
<a href="gavin.html">gavin.html</a>.</p>
<p>You can put additional text files in <code>fs.tar</code> for browsing with vi.</p>
<p>If you do not want to bother rebooting your computer at all, see
<a href="http://bellard.org" class="uri">http://bellard.org</a> for QEMU (<a href="../../authors.html#Fabrice_Bellard">Fabrice Bellard</a>
is an IOCCC 2001 winning entry), but your experience will be limited; use the
<a href="#alternate-code">alternate code</a> instead. You’ll have to move the mouse to
<a href="https://www.qemu.org" class="uri">https://www.qemu.org</a> for QEMU (by <a href="../../authors.html#Fabrice_Bellard">Fabrice
Bellard</a>, an IOCCC winning author) and use
the <a href="#alternate-code">Alternate code</a> instead. You’ll have to move the mouse to
trigger the initial screen update.</p>
<p>The judges were able to write a few more programs to run in this OS.
What are the limitations for such programs?</p>
@@ -493,7 +494,7 @@ then building a tarball containing the resulting programs
(the filesystem format supported by the OS is the tarball format).</p>
<p>For further usage information see <a href="gavin.html">gavin.html</a>.</p>
<p>The filenames <code>vi</code> and <code>sh</code> are significant, and should not be changed.</p>
<h3 id="known-features">Known ‘features’</h3>
<h3 id="known-features">Known ‘features’:</h3>
<p>Known issues are really too plentiful to list.</p>
<p>If the mouse pointer goes off the left hand side of the screen
it will reappear on the right, and vice-versa.
@@ -519,13 +520,12 @@ Linux-esque kernel header for the bootloader, protected mode descriptor tables,
keyboard maps, etc. (I should also mention that it contains mini functions to
perform an x86 <code>in</code> and <code>out</code> instruction - to allow the keyboard &amp; mouse to be
driven from C code).</p>
<p>Porting to another architecture should be relatively easy* -
<p>Porting to another architecture should be relatively easy<a href="#fn1" class="footnote-ref" id="fnref1" role="doc-noteref"><sup>1</sup></a> -
the string simply needs be replaced with one containing
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>
<!--
Copyright © 1984-2024 by Landon Curt Noll. All Rights Reserved.
@@ -540,6 +540,13 @@ at which a Linux bootloader loads an x86 kernel image).</p>
-->
<!-- AFTER: last line of markdown file: 2004/gavin/README.md -->
<hr style="width:10%;text-align:left;margin-left:0">
<section id="footnotes" class="footnotes footnotes-end-of-document" role="doc-endnotes">
<h5>Footnotes</h5>
<ol>
<li id="fn1"><p>* ;-)<a href="#fnref1" class="footnote-back" role="doc-backlink">↩︎</a></p></li>
</ol>
</section>
<!-- 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 -->