home .. forth .. colorforth mail list archive ..

Re: [colorforth] Booting from HDD


Quoting "Ray St. Marie" <ray.stmarie@xxxxxxxxx>:

>... " As to the IDE HDD boot,
>... " I recall an idea by Tim Neitz and someone ...
>... " talking about a device that puts thumbstick
>... " drive memory into the IDE
>... " chain. . The idea was
>... " that Tim has HDD boot software at the archive
>... " that could be adapted to
>... " the purpose. One would boot originally from
>... " floppy, then swap the
>... " floppy driver for the HDD driver, and then write
>... " the image first to
>... " the HDD, and then somehow also to the external
>... " memory chip.
>... " 
>... " Raymond St. Marie ii,
>... " colorforthray.info
>... " 
>... " 

Nick here, 

I think we are going to find flash boot much simpler
than that, and nearer to the essential simplicity of
CF.  The CF kernel is self contained and self booting. 
As CM said in his original instructions "How CF boots"
the boot process must accomplish two steps: 

1.  Copy the whole CF image to RAM address 0.
2.  Copy the address of videocard Frame Buffer to the
CF variable "display".

If you look at the dissassembly of Chuck's original
CF01 (annotated by JC) and also of CF05 (annotated by
Josh Grams) you will see that provision was clearly
made 
for:  

1.1  Alternative methods of copying to RAM - either
from a floppy via Chuck's own floppy code, or via BIOS 
(which in those days meant CF.com); the switch for this
second route being this hex number in the image, 4444
4444 ie "DDDDDDDD".  The 444444444 is quite clear in
JG's listing of his cleaned up version of CF05, 

http://qualdan.com/colorforth/chuck05-jg5.tar.gz

Vestigial traces 4444xyz are found in other listings,
but I cannot recall it being specifically used.  I
propose to restore the 44444444 switch and add a couple
of BIOS calls to a CF05 image, then dd that image to
flash HD, and boot it direct:  no DOS, no Linux, no
other OS - simply CF.  Shouldn't take me more than 10
years; shouldn't take a real programmer like Tim more
than 10 minutes.   
    
2.1  Alternative methods for finding the videocard's FB
address - either Chuck's own "ati0:" which is an AGP
PCI call, or the VESA VBE call 4F01; the latter is very
clear in JC's listing, under as/ in 

http://colorforth.cvs.sourceforge.net/colorforth/colorforth/

 but the 4F01 tends to get left out of later versions
(with the notable exception of Howerd Oakfords CF4DOS
floppy - which coincidentally? is the one that seems to
boot on the most PCs). I propose to restore those VBE
calls to CF05.  Should enable me to use that new CF on
my new PC.  

Meanwhile, I must get back to my real interest in CF -
getting more speed and versatility for a music project,
and gaining more insight into the PC, and with less
specialist training, than in any other language.  With
apologies for writing the above in words, not code.

Caritas, 

NickM

*****

How many CForthers to install a new lightbulb?  One AND
the one that installed the present bulb.

---------------------------------------------------------------------
To unsubscribe, e-mail: colorforth-unsubscribe@xxxxxxxxxxxxxxxxxx
For additional commands, e-mail: colorforth-help@xxxxxxxxxxxxxxxxxx
Main web page - http://www.colorforth.com