mirror of
https://github.com/forth-ev/VolksForth.git
synced 2025-01-08 22:29:53 +00:00
Update msdos/readme.org
Add refactoring and transitional make target information.
This commit is contained in:
parent
8a78db5cdc
commit
f2a4edb1a1
@ -1,15 +1,69 @@
|
||||
#+TITLE: VolksForth MS-DOS README
|
||||
#+AUTHOR: Carsten Strotmann
|
||||
#+DATE: <2020-06-19 Fri>
|
||||
#+AUTHOR: Carsten Strotmann, Philip Zembrod
|
||||
#+DATE: <2022-03-13 Sun>
|
||||
|
||||
* How to meta-compile a new kernel
|
||||
* Refactoring in progress
|
||||
|
||||
MSDOS VolksForth is currently in transition towards make based
|
||||
and stream file (.fth) based builds.
|
||||
|
||||
* Documentation for make based builds
|
||||
|
||||
The central Makefile is written for GNU make on Linux and uses
|
||||
the DOS emulator dosbox to run VolksForth and Metacompiler
|
||||
binaries for building new VolksForth binaries and for running
|
||||
tests. The make rules also use several Linux tools, e.g.
|
||||
bash, Python, grep or dos2unix.
|
||||
|
||||
volks4th.com is the old checked-in full VolksForth binary
|
||||
with editor etc, manually compiled from block sources as
|
||||
described in the "Previous .fb-based manual build instructions".
|
||||
It is intended to remain untouched throughout the transition
|
||||
period until it can be safely replaced by new .fth-based
|
||||
kernels with build-in .fth interface.
|
||||
|
||||
** Binary make targets
|
||||
|
||||
=make v4th.com=
|
||||
builds the new minimal VolksForth kernel v4th.com from
|
||||
.fth sources using metafile.com.
|
||||
|
||||
=make metafile.com=
|
||||
builds the metacompiler with included .fth file interface.
|
||||
It is used to build v4th.com, so metafile.com will be built
|
||||
as part of the make rule for v4th.com. Note: metafile.com
|
||||
is mostly still built from meta.fb, i.e. from block sources.
|
||||
|
||||
=make o4th.com=
|
||||
builds a new minimal VolksForth kernel from kernel.fb, i.e.
|
||||
from block sources. This is equivalent to the previous
|
||||
"How to meta-compile a new kernel" instruction.
|
||||
|
||||
=make v4thfile.com=
|
||||
adds the .fth file interface to the old volks4th binary.
|
||||
|
||||
** Test make targets
|
||||
|
||||
=make test=
|
||||
runs all current tests.
|
||||
|
||||
=make test-min.result=
|
||||
runs v4th.com through the initial minimal set of unit tests.
|
||||
|
||||
=make test-volks4th-min.result=
|
||||
runs the same initial minimal set of unit tests on v4thfile.com
|
||||
which is the old volks4th.com binary with added .fth file interface.
|
||||
|
||||
* Previous .fb-based manual build instructions
|
||||
|
||||
** How to meta-compile a new kernel
|
||||
|
||||
After making changes the the Forth kernel source in =kernel.fb=,
|
||||
restart =volksforth.com= to have a clean system and compile a new
|
||||
"minimal" kernel with =include kernel.fb=. This will create a new
|
||||
=FORTH.COM= executable.
|
||||
|
||||
* creating a minimal system with a simple editor
|
||||
** creating a minimal system with a simple editor
|
||||
|
||||
Execute =forth.com include minimal.sys= to generate the file
|
||||
=minimal.com= which contains a minimal VolksForth system with the
|
||||
@ -19,11 +73,12 @@
|
||||
This system can be used to edit the file =volksforth.sys= or other
|
||||
Forth source block files needed to create a full VolksForth system.
|
||||
|
||||
* creating a full VolksForth system from the minimal kernel
|
||||
** creating a full VolksForth system from the minimal kernel
|
||||
|
||||
Execute =forth.com include volks4th.sys= to create a new fully
|
||||
equipped VolksForth executable =volks4th.com=.
|
||||
* creating a version of VolksForth that works with emu2
|
||||
|
||||
** creating a version of VolksForth that works with emu2
|
||||
|
||||
EMU2 is a nice PC Emulator that can run MS-DOS console applications
|
||||
as Linux/MacOS/Windows console applications. EMU2 can be found at
|
||||
|
Loading…
Reference in New Issue
Block a user