Virgil Dupras
4939189233
emul: make blk operations much faster
It helps a bit with staging times.
3 vuotta sitten
Virgil Dupras
02e6979a46
emul: implement AT-XY
VI, here we come!
4 vuotta sitten
Virgil Dupras
bd38d80f9c
Move Cross-compiled core from B390 to B350
and renamed it "Core words". Also, reworded the presentation.
4 vuotta sitten
Virgil Dupras
ca60685067
Streamline initialization process
Instead of letting each configuration taking care of RDLN$ and
"CollapseOS" prompt, move this to BOOT to simplify xcomp units.
Initialization source code is now only for driver initialization.
4 vuotta sitten
Virgil Dupras
87b51a6261
By default, allocate about 0x100 bytes for PSP+RSP
During "make updatebootstrap", we use less than 0x20 bytes on the
PSP side and less than 0x40 bytes on the RSP one. 0x100 bytes ought
to be enough for anybody.
4 vuotta sitten
Virgil Dupras
9d4d9de511
emul: remove stage1
4 vuotta sitten
Virgil Dupras
e6bac985fa
Cross-compiles in a single stage!
Finally got rid of the XPACKed core and managed to cross-compile
all core words, which greatly simplifies the bootstrapping process.
4 vuotta sitten
Virgil Dupras
40a756cf1c
Move a bunch of words from XPACKed core to xcomp core
4 vuotta sitten
Virgil Dupras
51997533ff
Move a bunch of words from XPACKed core to xcomp core
4 vuotta sitten
Virgil Dupras
bb77cd0759
xcomp: add overrides into a loadable block
Makes xcomp.fs units shorter.
4 vuotta sitten
Virgil Dupras
0434d02818
xcomp: implement X[']
4 vuotta sitten
Virgil Dupras
7c20501f27
Move core's blk to xcomp core (low and high)
TODO: implement X['] so that I can remove those XCURRENT patterns.
4 vuotta sitten
Virgil Dupras
029df00ad4
Free some space for xcomp core
4 vuotta sitten
Virgil Dupras
d6a3e79394
Free some space for xcomp core low
4 vuotta sitten
Virgil Dupras
cbf5baf3b6
Pack core words a bit
This leaves space for xcomp-core which is growing.
4 vuotta sitten
Virgil Dupras
dfe474ca0e
xcomp: add XCOMPILE and X[COMPILE]
This allows us to move words like ABORT" to xcomp-core, which is
I think the last roadblock before being able to unify all drivers
into a single xcomp layer.
4 vuotta sitten
Virgil Dupras
da371451cc
Replace INITIAL_SP with PS_ADDR conf
Now I struggle to remember why I ever did things they way I did.
There must have been a reason...
4 vuotta sitten
Virgil Dupras
afc2327770
Split icore in 2 parts
The goal is to insert device drivers in between.
4 vuotta sitten
Virgil Dupras
31119c2de3
xcomp: move all offset spitting to the end of the unit
I'd like to move this code, along with all recipe contents, to blk/.
It's easier if "emul-related" code is gathered at the same place.
4 vuotta sitten
Virgil Dupras
f023f9bcb4
Pack core words blks a bit tighter
With all this recent movements, we had a bit of a fragmentation
issue.
4 vuotta sitten
Virgil Dupras
0b3a328e65
Add a layer of indirection for KEY
4 vuotta sitten
Virgil Dupras
446a58006d
Remove one of the 2 indirection layers for EMIT
2 was overkill
4 vuotta sitten
Virgil Dupras
ecca70c7f3
Add layer of indirection to EMIT
This would allow things like temporary giving control to the *CL
line on the TRS-80. For example... A very far fetched example. Not
at all the only *raison d'etre* of the layer...
4 vuotta sitten
Virgil Dupras
61b2e02351
xcomp: remove XOFF and use ORG and BIN( instead
4 vuotta sitten
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 vuotta sitten
Virgil Dupras
bc3aabc84e
Update z80c.bin's LATEST during xcomp instead of using slatest
4 vuotta sitten
Virgil Dupras
1bd191e86a
Move /emul/forth/* to /emul
Less noisy this way
4 vuotta sitten
Virgil Dupras
44403c3d4c
Move icore to blkfs
The way is clear for complete stage1 bootstrapping on the RC2014
target!
4 vuotta sitten
Virgil Dupras
dd6ce1b8fe
Avoid using (xentry) outside xcomp config
4 vuotta sitten
Virgil Dupras
fcd77f80ab
Use blk's boot.z80
4 vuotta sitten
Virgil Dupras
372524fd19
Move xcomp to blocks
4 vuotta sitten
Virgil Dupras
3822182226
xcomp: shrink scope
It seems that xcomp can't manage to reliably compile core+ units.
Let's limit the role of xcomp to z80c+icore.
I'm getting a little desperate here. I'll revisit the link.fs approach
with a new idea I had...
4 vuotta sitten
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 vuotta sitten
Virgil Dupras
c8c337fd58
xcomp: widen scope
We can now cross-compile core.fs.
4 vuotta sitten
Virgil Dupras
e6d3638f4f
Add CURRENT* and simplify xcomp
4 vuotta sitten
Virgil Dupras
66dc621919
xcomp: don't automatically shadow core words
4 vuotta sitten
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 vuotta sitten