The Dauug House Wright State University logo
Dauug|36 minicomputer documentation

Dauug|36 download area

Documentation

Are you looking for a softcopy of a booklet I mailed you? Download the preprint.

  1. A preprint describing the Dauug|36 architecture (early 2024, 76 pages)
  2. Marc’s dissertation (late 2022, 460 pages)
  3. The Dauug House (this website)

Note: Metadata was recently added to the preprint for better cataloging. Nothing else changed.

A tarball of The Dauug House can be downloaded at the bottom of this page.

Source code: 20 March 2024

This is not an archival version. Future releases will replace it, rather than be offered alongside it.

This snapshot was taken 20 March 2024. It is not packaged for distribution or well-catalogged, but it has the benefit of being current. This tarball contains source code for the minicomputer netlist, simulation, firmware, virtual machine, assembler, Osmin OS kernel, and associated tools. Its level of completion is a “chapter 8 minicomputer,” that is, a fully-simulated minicomputer in the architecture of the dissertation as described through chapter 8, plus multitasking as foreshadowed in chapter 9. The electrical simulation’s paravirtualized I/O features are also included. Also the new bootloader bootload.a and assembler support for it.

This tarball extends beyond chapter 8, in that it supports cooperative multitasking and preemptive multitasking. But it does not yet have an I/O subsystem or a firmware loader, and there is still a clock skew concern as the dissertation describes.

This implementation has two assemblers: the “old assembler” employed by the virtual machine, and the current level of the new cross assembler, used by netsim by default. All of the VM regression tests work (make vm-regress), and 35 out of 36 netsim regression tests work (make netsim-regress or make nr).

The old assembler is deprecated, but it offers an API that is still needed by the VM. Netsim offers keywords to select either assembler: asm for the new cross assembler, and oldasm for the old assembler. Netsim’s regress/ scripts have been ported to the new cross assembler, and wouldn’t be understood by the old assembler.

Release notes for the Osmin operating system kernel are here.

Source code: 14 January 2023 (with dissertation)

This is an archival version. It will remain available indefinitely, despite being far out of date.

This release is exactly as described in the dissertation. Appendix D contains a guide to the source tree.

This web documentation

Source code for this website—that is, the content management system and markup containing article text—is available in this tarball.

The documentation in this form is distributed on an “as-is” basis as a convenience to you. I don’t provide any timestamp or version control. The generated files in the site/ don’t view well in browsers directly, but expect a web server for packaging that assigns a default MIME type of text/html for resources that don’t have a file extension.

Intellectual property that isn’t mine, such as the Wright State University branding and fonts, is not included. I have permission to use these items, but I have not investigated what my obligations are if I “distribute” them. Moreover, if you aren’t from Wright State, it’s not clear to me that you should be passing along Wright State’s branding, although I am expected to use it.


Marc W. Abel
Computer Science and Engineering
College of Engineering and Computer Science
marc.abel@wright.edu
Without secure hardware, there is no secure software.
937-775-3016