CoCoBoot with legs!

Welcome to CoCoBoot.  This web page is the informational web page for Brett Gordon's CoCoBoot project.  CoCoBoot is a stand-alone program written for the cira 1980's Tandy Color Computer 1,2 and 3.  CoCoBoot is designed to be a flexible booting/BASIC replacement.  It'll do more than boot your computer... CoCoBoot will be full Forth Programing Environment, and comes with all the flavors of HDB and RBF disk drivers.

What's "Legs"
Legs is a new incarnation of CoCoBoot's forth engine.  In fact, it is a stand-alone Vitual Machine (VM) designed for general programming.  Anything that can have a Legs VM can run the same code. Read  Legs VM.
  • Boot any flavor of HDBDOS
  • Boot OS9 level 2 (new ccb-style)
  • SCSI, IDE, DW, BECKER, and  SDC are supported
  • Autoload any BIN files
  • Autoload any BAS files
  • Boot to a ROM in SDC or SuperIDE
  • Replicates BASIC's DOS command on ANY drive/device combination

  • Setup program functioning
  • DW to HDB disk copy program
  • Boot loads any HDB-DOS
  • New Nitros9 loading is larval, but working



Forth Outer Interpreter

posted Nov 28, 2014, 7:48 AM by Brett Gordon

I hacked in a Forth prompt into CoCoBoot.  It's silly really, but only took me a few minutes to modify LegsOS's outer interpreter and stick it in the setup menu of CCB. If you actually use the forth prompt, let me know.  You'll probably have to have a basic understanding of Forth, and my source code (for documentation of CCB's words) to do anything exciting. But you can do some neat stuff like manually loading in a profile's drivers:

\ The clasic:
: test  .str "Hello World!" cr ;
\ Load the HDB drivers associated with profile no 1.
1 prof2a HDBSwitch

SDC feeding frenzy

posted Nov 24, 2014, 5:27 AM by Brett Gordon

I'm jumped into the CoCoSDC feeding frenzy.  My SDC showed up in the mail last week (Thanks Darren, Ed, Tim ).   CoCoBoot supported the FLASH ram banks in the SDC, and now supports the CoCoSDC's LBA mode.   I have tested against the stock Nitros9 SDC image, and it works just fine.  As usual, I have updated the "Download" section with a new pre-built DSK image for your enjoyment.

Because CoCoBoot re-uses the stock HDBDOS drivers,  I have added a new flavor of HDB, that support SDC, to the mix.  

Hacking HDBDOS

posted Nov 17, 2014, 1:56 PM by Brett Gordon

Today, I added the ability for the HDB-loader, to not only switch auto-booting on or off, but to also load BIN files on boot, rather than just BAS files.  Here's the dilemma:

1. CoCoBoot, in order to hack HDB sits in lower RAM memory, and uses a fair amount of memory to boot.
2. To auto-load a BAS (or now a BIN) file, BASIC likes to have that RAM that CCB uses
3. CoCoBoot can't load the BIN file directly, for same reason as 2, and when rebooting into HDBDOS

The answer was some hairy hacking of HDBDOS's HWINIT routine, to replace the code for autobooting "AUTOEXEC.BAS" to make it auto-run a bin file.  Actually, besides for the awful spaghetti code of BASIC (I had to wrangle a bit with its expression evaluator - which is particular horrible), it was easier than I anticipated to patch HDB.

A new disk image is available of this from above (along with some factory preset profiles)

Thanks Simon

posted Nov 13, 2014, 11:27 AM by Brett Gordon

CoCoBoot has a pretty new splash screen.  Thanks to Simon Jonassen for his SG Editor.   Also, a nasty memory bug was (re)fixed, which usually caused problems with booting to Nitros9

CoCoBoot's New Splash Screen

Darg! Umph! Grrrr.... Cursor Good!

posted Nov 12, 2014, 10:26 PM by Brett Gordon

The cocoboot setup program now uses a cursor and then "enter" key to select menu items.  A new disk image release has been released.


posted Nov 7, 2014, 1:48 PM by Brett Gordon

Added some file load thermometers for fun last night.  I was erked by CoCoBoot not showing anything that was going on especially on the long load of OS9Boot.   Now at least we have some visual feedback to let you know your wait is not in vane.

And I uncovered two previously hidden (and bad) bugs.  We're back to not clearing the OS9 screen on boot until I fix that.  

More Profiles, Looking forward

posted Nov 5, 2014, 2:38 PM by Brett Gordon   [ updated Nov 5, 2014, 2:42 PM ]

I've reworked the setup system a bit and increased the number of profiles to 8.  Also, Nitros9 boot profiles now let you control a pause before mounting root.  A pause while booting Nitros9 is very handy for when your Nitros9 and cocoboot boot from the same drive... it gives you the ability to manually switch disk *before* attempting to boot Nitros9.

Also, the profile editor now allows one to copy and/or del boot profiles.

Click the "Download" button above.

Looking forward: 
  A very handy feature would be a boot-changer... allowing one to change the active boot disk on boot (or on setup).  This should allow one to hack the boot settings on a drive different than the one CCB2 was booted on

New SDC ROM support

posted Nov 1, 2014, 8:42 AM by Brett Gordon

Preliminary support for booting to a user defined SDC flash ROM bank has been coded.  Thanks to Darren Atkinson for help in getting this implemented!  Check the "Download" link for the lasted DSK image.  Enjoy!

Franken Boot

posted Oct 29, 2014, 11:13 AM by Brett Gordon   [ updated Oct 29, 2014, 12:34 PM ]

I added routines for IDE and SCSI sector deblocking allowing me to boot Nitros the "new" way on devices supporting 512 byte sectors.  It worked well enough on my real coco3 using Cloud-9's SuperIDE controller.  Oddly enough the Nitros on my CF is a old Version 2.9.  But it still had a OS9Boot file and an old version of CCBKRN from cocoboot1 days.  I'll be darned if it didn't boot up just fine!   I only have composite here, so the default os9boot screen is kinda hideously unreadable, but it works.  

Demo Desk of "New" Nitros booting

posted Oct 29, 2014, 9:57 AM by Brett Gordon

This demo will boot Nitros9 via Drivewire/bitbanger, or Drivewire/Becker port.
There are three disk images:

boot.dsk      This is the pre-configured cocoboot disk
becker.dsk    this is a near stock Nitros9 disk with DW/becker support
dw.dsk        this is a near stock Nitros9 disk for DW/bitbanger (coco3)

Instructing to use:

1. Turn off "HDB translation" in Drivewire

2. Insert "boot.dsk", above, into drive 0

3. Boot your coco.  If your native ROM is HDB then CoCoboot will
autoboot, if not you will have to type: DOS

4. If you are using a emulator enabled with becker port support, type
"0" at the boot prompt. If using regular Drivewire, type "1" at
the boot prompt.

5. Wait for Cocoboot to prompt you to insert the Nitros9 root
filesystem.  Now, in DriveWire, insert either "becker.dsk" or "dw.dsk"
into drive 0, and of course, "hit any key"

6. Nitros should boot.

1-10 of 26