commit acf215b863ecad5d1e482161a9ea94befccb4636
parent 2899c17528a28ed6413509d1ba3f25ee0f8b7190
Author: Virgil Dupras <hsoft@hardcoded.net>
Date: Fri, 27 Jan 2023 10:25:59 -0500
Update README
Diffstat:
1 file changed, 12 insertions(+), 14 deletions(-)
diff --git a/README.md b/README.md
@@ -54,7 +54,7 @@ bootstrap itself some more.
With regards to "source bootstrapping", it's even more extreme than Collapse OS
because modern machines allows this process to run quickly and the whole
-process is not much slower than a regular Linux boot. On Collapse OS target
+process is still faster than a regular Linux boot. On Collapse OS target
machines, this process would be prohibitive, so a bigger part of the OS is
cross-compiled into the kernel.
@@ -71,7 +71,7 @@ type are simple Forth words.
Dusk OS self-hosts in about 1000 lines of assembly and a few hundred lines of
Forth (the exact number depends on the target machine). From there, it
-bootstraps to DuskCC, which is roughly 3000 lines of Forth code (including
+bootstraps to DuskCC, which is roughly 2000 lines of Forth code (including
arch-specific backend and assembler). To my knowledge, Dusk OS is unique in
that regard.
@@ -143,7 +143,7 @@ higher cognitive space to fit BSD/Linux wider abstractions in your mind.
* Has a VM written in C, buildable from a POSIX environment, which allows Dusk
to build itself for any of its supported targets.
-* Has an ["almost C" compiler][duskcc] which still needs a lot of work, but is
+* Has an ["almost C" compiler][duskcc] which still needs some work, but is
already capable of compiling a nice subset of C.
* It can run bare metal on some PCs (and QEMU, of course). It has drivers (in
various state of sophistication) for:
@@ -160,8 +160,8 @@ higher cognitive space to fit BSD/Linux wider abstractions in your mind.
* Can create new FAT12 volumes.
* It completely self-hosts on all its target (only PC for now) machines.
* Did I mention that the *whole* code for Dusk OS and its ported applications
- (excluding docs and test code) is less than 13K lines of code and that DuskCC
- is less than 1400 lines of code?
+ (excluding docs and test code) is less than 13K lines of code and that DuskCC,
+ including its assemblers, is 2000 lines?
* Since `text/ed` has reached a usable status, the main author of Dusk has been
developing it from within itself on an old Pentium 75 Mhz with 16mb of RAM and
he's having a blast.
@@ -213,18 +213,16 @@ that. To avoid that, you can invoke it like this:
`make run` does this for you.
-## Deploying to a real machine
+## Running on QEMU or bare metal
-`make run` builds and runs a binary designed to work on a POSIX platform, but
-if you want to build binaries designed to run on bare metal, it's another
-matter.
+Running Dusk under the POSIX VM is fine, but severly limited: the filesystem is
+read-only and there is no Grid (text UI system) or Screen (graphical system).
-For now, only the x86 PC platform is supported and can be built with
-`make pc.img`. If you have QEMU installed, you can run it right away with
-`make pcrun`.
+To see a fully-featured Dusk, it's better to run it on an actual machine or, if
+you're in a hurry, under QEMU. You can do the latter with `make pcrun`.
-To deploy that image on a real machine, it's a bit more involving and you should
-read `doc/deploy.txt`.
+To deploy Dusk on a real machine, it's a bit more involving and you should read
+`doc/deploy.txt`.
## See what it can do