From 9b8596109368be53031adebf5fbd4fdf6c214192 Mon Sep 17 00:00:00 2001 From: Virgil Dupras Date: Wed, 13 May 2020 14:31:56 -0400 Subject: [PATCH] Rename "Core words" to "XPACKed core" Now that this section is so small, I think I can see a possibility for cross-compiling Collapse OS entirely, which would be great because we could get rid of the relinker. --- blk/001 | 2 +- blk/439 | 22 ++++++++++++---------- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/blk/001 b/blk/001 index c000d68..157785d 100644 --- a/blk/001 +++ b/blk/001 @@ -7,7 +7,7 @@ MASTER INDEX 200 Z80 assembler 260 Cross compilation 280 Z80 boot code 350 ACIA driver 370 SD Card driver 390 Cross-compiled core -439 Core words 480 AT28 Driver +439 XPACKed core 480 AT28 Driver 490 TRS-80 Recipe 520 Fonts 550 TI-84+ Recipe diff --git a/blk/439 b/blk/439 index 376b6de..b6e9c1c 100644 --- a/blk/439 +++ b/blk/439 @@ -1,12 +1,14 @@ -Core words +XPACKed core -These words follow cross-compiled words, but unlike them, these -are self-bootstrapping and don't depend on the Cross Compiler. -They will typically be included in source form right after a -stage1 binary which will interpret it on boot and bootstrap -itself to a full intepreter, which can then be relinked with -the Relinker. There is no loader for these libraries because -you will typically XPACK (B267) them. +Most of Collapse OS' core words are cross compiled (B390). +However, some of them are too dynamically referenced to be +cross-compiled without great pain, so we XPACK (B267) them, +that is, we put them in source form in the target's +initialization section (see B89). -440 core 447 readln -453 blk +These words will be compiled into RAM at initialization, which +is a bit wasteful both in RAM and in boot time, so we will +typically relink (B120) that newly compiled binary and append +it to our existing binary for optimal resource usage. + +Load range: 440-446