On startup the Konilo image will search for and, if found, run a word named `startup`. By default this is defined to run the `prelude` word. This will load blocks 1 and 2, and if they start with a (, run the code in them. The default blocks as I provide them will load various extras like the (std) library and some programs (this is done in block 1) and then setup various settings like the terminal height and width. The settings are done in block 2. So to customize the startup process you have two basic options: - write a new `startup` and save a custom image - craft a custom set of startup blocks This is the preferable way to do customizations as it keeps the image clean and in a known working state. When loading blocks there is an obstacle. Konilo has a single block buffer, so you can't just run another one while there is still code waiting to be run in the current one. Loading another will just overwrite the current buffer, leading to execution of whatever remains after the load. Instead, wrap the loads in a quotation, then have a `call` as the last item in the block. The `call` should be at the end of the last line. The default blocks are setup this way. I prefer to use block 1 to load any vocabularies I'd like to keep on hand. For me this will include the (std) standard libra- ry, (termina), and a few tools like (tools/describe), (nonix), and (tools/catalogue). (termina) programs need to know some information about the local screen size. I set this up in block 2. I also like to have block 2 display a greeting block (0) or, for specially purposed machines, run the main code for a program. The other path to customizing the system is to create a custom image with a new `startup` word. To do this you will need an ilo with support for `rom:save`. The standard C implementation supports this, but you should check the source for your chosen one to make sure it's implemented. To use this path, define a new `startup` and then run `rom:save` E.g., for an image that displays "Hello World" and exits: :startup (-) 'Hello_World s:put nl bye ; rom:save