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!

cf2010  New! colorForth system with all sources and easy to use floppy disk writer!

View the readme file here

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

cf2010bochs New! colorForth system packaged with Bochs

Real colorForth running really slowly...

 

A tradeoff 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.

 

Quick start guide

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 :

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 Mandlebrot 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 its mess, 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 http://colorforth.com/

John M Drake http://primarycolorforth.blogspot.com

Ray St. Marie http://colorforthray.info

Mark Tillotson http://members.shaw.ca/marktillotson/

( ??? ) http://cflinks.strangegizmo.com/

Green Arrays, Inc. http://www.greenarraychips.com/home/documents/greg/cf-elements.htm (may be slightly different)

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