Virgil Dupras
532bcc7e78
cvm: split stage and forth xcomp units
I wanted to make CVM's forth use the Grid subsystem, but doing so
would break the stage binary. Hence, this split.
3年前
Virgil Dupras
6cb310c38c
emul+cvm: link to curses instead of ncurses
NetBSD doesn't have ncurses. Linking to curses doesn't seem to change
anything. Tried on OpenBSD and Ubuntu.
3年前
Virgil Dupras
8e624034bf
recipes/sms: move recipe blocks into local overlay
3年前
Virgil Dupras
fff893452d
cvm: remove makefile duplicate recipe
3年前
Virgil Dupras
ceabc9920f
move avra.sh from emul to cvm
The stage binary is now there.
3年前
Virgil Dupras
8a7fa77163
cvm: bootstraps itself!
3年前
Virgil Dupras
fc3919863f
cvm: implement stack underflow errors
3年前
Virgil Dupras
36cb1389e6
Add a C implementation of native words
This will soon replace the libz80 based "forth" and
"stage" executables. This is much, much faster.
3年前
Liorst4
374932fa4d
Clean libz80/libz80.o in make clean ( #118 )
3年前
Virgil Dupras
394f962510
recipe: fix makefiles for fresh clone contexts
All recipe makesfiles would previously assume a built emul/.
Fixes #113
3年前
Virgil Dupras
05ca95e759
emul: make updatebootstrap two-stepped
Writing directly to forth.bin seems to cause problems in some
environments such as Travis CI.
4年前
Virgil Dupras
1d4b75add2
emul: deduplicate some code
4年前
Virgil Dupras
93c6d150e2
emul: don't embed forth.bin in emul binaries
Read the contents of forth.bin at runtime. This allows us to get
rid of the bin2c tooling.
4年前
Virgil Dupras
8d3da4c0de
emul: stop embedding blkfs in binaries
Instead, embed absolute path to blkfs. Having to rebuild the stage
binary at every change in blkfs is getting tedious.
4年前
Virgil Dupras
f884918d73
emul: use ncurses in /emul/forth
It doesn't change anything featurewise, but this change is in
preparation for the addition of an eventual AT-XY.
4年前
Virgil Dupras
5446afd87d
emul: rename stage2 to stage
4年前
Virgil Dupras
9d4d9de511
emul: remove stage1
4年前
Virgil Dupras
581f04a4bc
Keep stage1 bootstrap bin instead of stage 0
XPACKed source needing to be kept in bootstrap bin didn't make
much sense. With the removal of stripfc, it makes more sense to keep
the compiled form of stage 1 in repository as a bootstrap binary.
Also, rename it to forth.bin.
4年前
Virgil Dupras
a2f164ecc3
emul: bootstrap to stage2 from within Collapse OS!
Big bootstrapping change which greatly reduces the role of the modern
operating system in the bootstrapping process.
4年前
Virgil Dupras
898684a795
emul: merge pre.fs and emul.fs into stage1.fs
4年前
Virgil Dupras
bc3aabc84e
Update z80c.bin's LATEST during xcomp instead of using slatest
4年前
Virgil Dupras
b5c370a936
emul: embed blkfs in forth binary
This will allow us to read from blkfs in tests.
4年前
Virgil Dupras
1bd191e86a
Move /emul/forth/* to /emul
Less noisy this way
4年前
Virgil Dupras
44403c3d4c
Move icore to blkfs
The way is clear for complete stage1 bootstrapping on the RC2014
target!
4年前
Virgil Dupras
dd6ce1b8fe
Avoid using (xentry) outside xcomp config
4年前
Virgil Dupras
fcd77f80ab
Use blk's boot.z80
4年前
Virgil Dupras
7a0e63746f
parse: don't validate 0x and 0b lengths
It doesn't serve much purpose and takes up many precious bytes. And,
after all, parsed didn't do it either...
4年前
Virgil Dupras
372524fd19
Move xcomp to blocks
4年前
Virgil Dupras
4967c2add2
Merge z80c.fs and boot.fs into boot.z80
4年前
Virgil Dupras
d466c6d95d
emul: make stage2 load z80a from blkfs
This allows us to remove forth/z80a.fs. Another big step towards
self-hosting!
4年前
Virgil Dupras
9edab10a3a
blk: add dirty flag and auto write blocks on fetch
Also, fix some PSP leaks related to LOAD.
4年前
Virgil Dupras
79acf92b28
emul: fix Makefile
4年前
Virgil Dupras
b8dd86bd18
Move notes.txt in blk
4年前
Virgil Dupras
f59cac0588
blk: first steps
4年前
Virgil Dupras
d919a10265
Remove runbin
It's not used
4年前
Virgil Dupras
d08a9711c5
boot: make HERE point to RAMEND instead of CURRENT
The former was only used in the peculiar context of "/emul". The
regular case is actually HERE pointing to RAMEND on boot.
4年前
Virgil Dupras
c515720e23
Revert "Remove link.fs"
Let's revisit the relinking approach, with LITA this time.
This reverts commit 6652125d47
.
4年前
Virgil Dupras
a6efb65010
emul: extract capture mark from icore into xstop.fs
4年前
Virgil Dupras
7aa1be070b
emul: build boot binary in one pass
... instead of building boot.fs, and then z80c.fs/icore.fs in separate
passes. This strengten xcomp by making it support 2 completely separate
dicts (that is, the X dict is *not* connected to the system dict. The chain
now stops at EXIT def in boot.fs).
4年前
Virgil Dupras
68f359d6c2
Add xcomp unit for cross compilation
Memory mapping is a dead end too, solution has to be at a higher
level. xcomp is my new approach.
4年前
Virgil Dupras
6652125d47
Remove link.fs
This was a dead end.
4年前
Byron A. Grobe
217df20d77
Moved tools/bin2c to single-level with other tools.
4年前
Virgil Dupras
1c6e979028
link: new unit to relink dictionaries
Not quite functional yet, but works in toy situations. The goal is to
concatenate RC2014's bootstrapped dict to the boot binary.
4年前
Virgil Dupras
974018831e
Add chained comparison support
4年前
Byron A. Grobe
f65c189e9b
Replace bin2c.sh with a more portable implementation.
`xxd' is not available on all systems, and on others does not support
the `-i' flag. Since bin2c.sh relied on a tool that I can't seem to find
a compatible version of, I have included a simple, portable replacement in C.
Usage remains the same:
bin2c ARRAYNAME < inputfile > outputfile.
This change is also reflected in emul/Makefile.
4年前
Virgil Dupras
ba384bfa0f
Add stripfc tool
4年前
Virgil Dupras
41cefb7460
Extract EMIT-dependent routines from core
4年前
Virgil Dupras
80891d7ec1
Add in-memory bootstrapping system
This should help with the bootstrapping of non-emulated environment.
For example, I have a problem with the RC2014: I can't send it
bootstrap info until the ACIA is up. I need to find a way...
4年前
Virgil Dupras
9235fa9223
Add /tools/slatest
To update LATEST offset more easily. Will be useful for recipes.
4年前
Virgil Dupras
941791d609
forth: remove RAMSTART and RS_ADDR from stable ABI
4年前