Re: Booting from HDD
Nick Maroudas <[email protected]> Wed, 19 Mar 2008 11:38:40 +0200
| Newsgroups | gmane.comp.lang.forth.colorforth |
|---|---|
| Message-ID | <[email protected]> |
Quoting "Ray St. Marie" <[email protected]>: >... " 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.