Atari ST: Documentation: building new kernel

This commit is contained in:
Carsten Strotmann 2020-07-22 00:50:20 +02:00
parent 59e71d98bf
commit 5f2eecc2ba
1 changed files with 65 additions and 0 deletions

65
AtariST/README.ORG Normal file
View File

@ -0,0 +1,65 @@
#+Title: VolksForth Atari ST Notes
#+Date: <2020-07-22 Wed>
#+Author: Carsten Strotmann
* How to re-compile the Atari ST VolksForth kernel
Requirements:
* Atari ST computer (or an emulator such as Hatari) running VolksForth
* Floppy Disk (for a real computer) or a Disk-Image (for the Emulator)
Files:
* FORTH83.FB- The VolksForth Kernel source
* ASSEMBLE.FB- M68000 Forth Assembler
* TARGET.FB- VolksForth Target Compiler
* PATCH.FB- The Patch Tool to patch the kernel and load the Fileinterface
* FILEINT.FB - The File-Interface
* C.FB - Target Compile "script"
** Step 1: Compiling a new kernel
* make your changes to the VolksForth kernel (=FORTH83.FB=)
* start a fresh copy of VolksForth (File =4TH.PRG=)
* enter: =include c.fb=. This will compile the kernel. It will load
the files =ASSEMBLE.FB=, =TARGET.FB= and =FORTH83.FB= and will
write the generated new kernel as =4THIMG.PRG=. This new Forth
image is very very basic, it does not contain the file interface
and can only load source for blocks (sector I/O) from the floppy
disks A: or B:
* exit the VolksForth (=BYE=)
** Step 2: adding the file interface to the new Kernel
* format a new floppy (360 KB or 720 KB floppy, HD floppies will not
work) in drive A:
* copy the following files exactly in this order. The order is
important, as the new VolksForth kernel need to find the source
code at the correct block/sector locations!: =PATCH.FB=, =ASSEMBLE.FB=
and =FILEINT.FB=. =PATCH.FB= must be in Block 1, =ASSEMBLE.FB= must start
at Block 6 and =FILEINT.FB= must start at Block 24 ($18).
* execute the new VolksForth kernel (=4THIMG.PRG=).
* select drive A: =0 drive=
* test that =PATCH.FB= is in Block 1: =1 list= should show the
=PATCH.FB= load screen
* test that =ASSEMBLE.FB= is in Block 6: =6 list= should show the
=ASSEMBLE.FB= load screen
* test that =FILEINT.FB= is in Block 24: =24 list= should show the
=FILEINT.FB= load screen
* load the patch tool: =1 load=
* save the new VolksForth Image to disk: =save-system
4THCORE.PRG=. =4THCORE.PRG= is now the kernel plus the file
interface. This is a minimal but useable Forth system
** Step 3: build a full VolksForth system
* edit the file =STARTUP.FB=, add or remove features you want to have
in your VolksForth system
* start =4THCORE.PRG= created in step 2
* load =STARTUP.FB=: =include startup.fb=
* save the new image under a new name (be careful not to overwrite
your original =VOLKS4TH.PRG=, make a backup first!): =save-system myforth.prg=
* your new VolksForth system is now ready!
Have fun.