Legacy colorForth
Disclaimer
cfdos.com , floppy.com and the associated *.BLK files
are supplied as tools to download and view colorForth source files.
It is as safe as any DOS program, and does not modify any hard disk boot
sectors.
It does however, create bootable floppy disks that
when run can access your hard disk’s boot sectors. This will not happen by
accident, but only if you load the “Hard disk” access block (for example in
CFDOS4.BLK block 150) and then write to sector 0.
Obviously, you use it at your own risk!
Full assembler source files, NASM assembler, colorForth source and DOS batch file to create the colorForth image, plus
floppy.com to download it to a floppy disc :
Download the zip file here cf2010_4v1.zip and self-extracting zip file here cf2010_4v1.exe
Real colorForth running really slowly...
A trade-off between working on (just about) any
Windows PC against execution speed.
Double left click ( run )
go.bat to start the cf2010.blk version of colorForth
in a bochs PC emulator.
bochs is available from http://bochs.sourceforge.net/
bochs is truly wonderful!
Thank you to all the bochs developers...
Download the zip file here cf2010bochs.zip and self-extracting zip file here cf2010bochs.exe
cf2010 supercedes cf2009 –
it is now formatted for NASM.
Run cf2010_4v1.exe and
follow the instructions
Put a blank, formatted floppy disk in the floppy drive
and double click on "go.bat"
This will create a bootable colorForth floppy disk
Reboot your computer with the floppy in the drive
You may need to adjust your BIOS settings to get the
floppy to boot -
please see http://www.inventio.co.uk/getbios.htm from
http://www.inventio.co.uk/cfdos.htm for
how to do this...
Note : this version requires a built-in floppy drive -
it will not work from an external USB drive
The PC must have an AGP graphics card and at least 32M
bytes of RAM.
Cf2009 - legacy – please use cf2010 ! Full
assembler source files, MASM assembler, colorForth source and DOS batch file to create the colorForth
image, plus floppy.com to download it to a floppy disc : Zip file cf2009May15.zip and self-extracting zip file cf2009May15.exe
Please use
cfdos if you want to read colorForth source under DOS/Windows XP/DosBox:
Version 4.0
2005 Jan 23 : See new features…
Download
cfdos4v0.exe self-extracting zip file.
Download cfdos4v0.zip non-self-extracting
zip file. Unzip
to \cfdos and run cfdos.com .
Download cfdos4.blk my latest ( not zipped ) reference file. Copy to \cfdos and run cfdos.com .
Download
CFDOS.BLK ( not zipped ) reference file. Copy to \cfdos
and run cfdos.com .
Press F1 repeatedly to step through the help screens, then any other
key.
cfdos.com is a DOS program to display colorForth pre-parsed source blocks. This
program will work on any computer that runs or emulates DOS, and allows you to
view colorForth source, in both normal and "colour blind" mode. It
features a file listing utility ( F6 ) which displays all files of type *.BLK in
the same directory, and can copy them to a formatted
floppy disk.
cfdos.com would be nothing without the various versions of colorForth
and application code that I have trawled from the Internet, so thanks to :
Bernd Beuster ( sound driver ), Terry Loveall ( floppy driver ), Kris
Johnson ( assorted apps ), Tim Neitz
( block client/server ), Mark
Slicker ( Mandlebrot set, comet Ethernet driver,
DNS and DHCP ), Bob
Shafer (Game of
Life) and of course to Chuck Moore for not only discovering
colorForth, but for releasing it into the public domain. Thanks!
If you have any
colorForth source, can fill in details of the files that I already have, do not
want your source distributed with cfdos, I have spelled your name wrong, or
forgotten to mention you, please let me know.
I should
also mention thanks to Roman Pavlyuk and Richard Collins for
their Windows versions, Sean Pringle
for Enth and Jeff Fox for Aha and his many
lucid explanations on comp.lang.forth.
My own contribution is
cfdos.com, and the colorForth source file CFDOS4.BLK ( which is the default
file when you first run cfdos.com ). CFDOS4.BLK is a compilation of code from
any and all of the above authors. I have added “wood”, which is Mark Slicker’s
Mandelbrot set display mangled to look like pine block-board. I have also added
“nload” and “+load” in block 20. They load the next
or nth next block, and allow sections of code to be moved without editing. I
have changed many literal loads to this form, so that the code can be copied
and loaded from different blocks. To make life easier, I have added “ld” which loads a block and saves the block number, “vv” which views the last block loaded by “ld”, “ll” which loads the
currently edited block and “ss” which saves the current edit block to the
floppy disk, and “uu” which restores the current
block from the floppy disk. All of these double letter words actually read or
write one floppy disk sector, or 18 blocks.
I have also changed the
number of sectors loaded at startup and saved by
“save” to 14, giving 252 blocks in total. The files are 256 blocks each – don’t
use the last four blocks as they will not get loaded or saved.
The colorForth binary
in blocks 0 to 17 is Terry Loveall’s code with the
new improved floppy strobe. I find that this works on all of my 3 PCs and on my
laptop, and also on most laptops I have tried it on.
To run colorForth your
PC must have a floppy drive, 386 or above processor, 32Mbytes of RAM, PCI or
AGP video and a monitor capable of displaying 1024x768x16bit colours. The
binary image cf800.blk is also available – it runs in 800x600x16bit video mode.
Hints :
You should certainly be
able to see the source code with cfdos.com, but if at all possible you should
find some floppy disks and a computer and run colorForth. Press “D” to
download to the floppy. Try CFDOS4.BLK first, as it works on most of the
computers that I have tried it on. You may need to find a 200MHz - 500MHz
Pentium ( with a floppy disk and AGP graphics ), as these seem to be
particularly compatible, as are 1GHz to 1.5GHz laptops.
You may need to change the boot order in the BIOS to allow the floppy
disk to boot first. Press F2, Del or whatever the BIOS tells you to to “Enter Setup” as the computer boots. Find the boot order
section, change it to make the Floppy disk boot first, save and exit. Put the
colorForth floppy in the disk drive, and reboot the computer.
If you see the
colorForth main screen, try typing “save” (
actually the ;a/d keys ). This
should save 252 blocks to the floppy, and then return to colorForth ( after
about 58 seconds ). If this hangs, you have incompatible floppy disk hardware.
Try one of the other files. You can also try adding an ISA card with floppy
driver on board – they generally work.
You can mix and match
the binary in blocks 0 to 17 plus souce in blocks 18
to 35, with the source in another file by pressing ctrlD
or ctrlU. When you have created your perfect disk (
with lots of new code ! ) you can use cfdos.com to upload it to a file. Give it
an 8.3 DOS name and send it to me so that I can include in my next
distribution. ;)
I do not
recommend that
you run color.com from the colorForth website under Windows 98 ( or
earlier ), as this can upset the operating system – the file CFCHUCK.BLK
supplied with cfdos is a binary version of this which you can download to a
floppy. This also applies to other, simliar DOS executables
of the colorForth image - but cfdos.com
is perfectly safe! Note that Windows XP, 2000 and NT are not affected by this.
If you do
click on color.com using Windows 98 and answer YES to the "Run in MSDOS
mode" option, Windows will add a line to the c:\autoexec.bat file
something like :
"CALL ........\COLOR-BG-COM" .
This will execute the colorForth binary every time
Windows is started.
To return to normal Windows 98 operation :
Press F8 as Windows is starting, and select
"4. step-by-step confirmation".
Press "Y" repeatedly (about 15 to
20 times) until the "CALL ........\COLOR-BG-COM" line when you press
"N".
Press "Y" again a few more
times... Windows will then tidy up the file, and all will return to normal.
ColorForth and the
various applications are all Work In Progress. All code runs directly on the
hardware, and so may have to be modified for your system. This goes against the
sales pitch of every other language and program – “plug & play”, “point
& click”.
Almost everything about
colorForth is different
to any other programming language you may have seen. It does not use ASCII, or
files or even the letters printed on your keyboard.
colorForth is really neat, and is worth any effort you may
make to understand and use it. I hope cfdos.com makes it that little bit easier
for you…
colorForth links can be
found at :
Chuck Moore’s
original website : https://colorforth.github.io/ (was http://colorforth.com)
My (Howerd Oakford’s) colorForth website https://www.inventio.co.uk/colorforth
and documentation https://www.inventio.co.uk/colorforth/cf2019_colorForth.pdf
.
John M Drake http://primarycolorforth.blogspot.com
( ??? ) http://cflinks.strangegizmo.com/
Green Arrays, Inc.
http://www.greenarraychips.com/home/documents/greg/cf-elements.htm
(may be slightly different)
Kris Johnson’s
Wiki http://c2.com/cgi/wiki?ColorForth (interesting,
but I don't agree with everything there ;)
Wikipedia http://en.wikipedia.org/wiki/ColorForth
And of course there is always Google...
Please give feedback and bug reports to Howerd Oakford
: howerd@inventio.co.uk