In article <9la9mb$t1j$1@inn.qnx.com>, Jay.Hogg@t-netix.com.r-e-m-o-v-e
saysâŚ
Steve,
Iâm sitting back anxiously waiting to see if you get it working before
I forge new territory >
> I went through many painful lessons on QNX4
when sys/boot had issues with being relocatedâŚ
Lets talk 3Meg âbootâ⌠The only specification that I am familiar with
that would support this is the Intel PXE spec that would let you dâld
a âmenuâ or an initial boot image. If you go with the menu then you
can setup a large download and manage it.
Well, AFAIK (especially after reading that reply from Chris - thanks
Chris):
- I am using an Etherboot 5.0.0 derived bootp ROM (that is what I am
primarily working on - for our FE line of cards)
- It can load several different loadfile formats.
- It runs in a stripped down protected mode, so all physical addresses
are available to it.
- It switches in and out of protected and real mode.
- It can load data anywhere in memory, and jump to loaded code in either
real (<1M only) or protected (anywhere) mode.
- It appears that QNX6 startup program needs to be loaded into the lower
1M, and get control in real mode.
- It appears that if the âheader informationâ for the boot file
specifies an address above 1M that the startup will switch into protected
mode (it may do that anyway) and process all the remaining code from
those locations.
This means that my work boils down to the following:
Make/change a program that takes a QNX6 boot file (done by mkifs), and
convert it into an appropriate âtaggedâ or NBI boot file that the TFTP
process can serve to the network booted machine.
Since the âtaggedâ format is fairly simple, yet flexible, I should be
able to do what Chris mentionedâŚ
a. Make a tagged âblockâ that loads at the 4M mark (or wherever the
header says) - for as big as necessary⌠a complete copy of the boot
file.
b. Take the first xxxK bytes and make it a second block loaded <1M (say
at 0x10000) and jump to the second block in real mode. It appears from
Chrisâs commments that the startup code is position independent, and can
handle being started anywhere in real mode memory (that does not conflict
with other software)
Iâve got PXE running (with ISC dhcp/bootp server) on/for QNX4. Now
that I have an Nto box running at home Iâm going to spend some time
setting up at least a <512k Nto PXE boot and start from there.
Only discouraging part is that for all I now know about the QNX4
boot process - sequence, addresses, buildqnx options, ⌠- I know
zip, nada, nothing about the Nto boot process⌠Yet.
This will be a bootp ROM that should work for QNX6 and QNX4.
Only QNX6 will have the ability to boot âlargeâ images - since it appears
to be a thing actually implemented in the QNX6 boot process.
QNX4 boot images will be limited to around 512K or soâŚ
We already have QNX4 boot ROMs for our older cards (FE-120 and FE-130)
but need a new one for our FE-122 card.
I think that with a little re-write of this bootp ROM - replace bootp
with QNX4 native method - that we can create a boot ROM that would work
with all of our FE cards for native QNX4 bootingâŚ
So, when all is said and done, we will hopefully have:
- A bootp ROM for our FE-??? cards - will do QNX6 and/or QNX4 using
bootp
- A different boot ROM for our FE-??? cards that will do native QNX4
booting
And maybe, just maybe, if I can figure out a good way to do itâŚ
A single boot ROM that will do either of bootp and native QNX4
Comments welcomeâŚ
Jay
Stephen Munnings wrote in message âŚ
In article <> MPG.15ca1c7eac5f350f98969e@inn.qnx.com> >, > steve@cormantech.com
saysâŚ
In article <> MPG.15bfafd9dcce850298969b@inn.qnx.com> >, > steve@cormantech.com
saysâŚ
I am working on creating a bootp ROM for our Network cards (no it is
not
available - or even announced - yet - so sHHHH! > 
I believe that I have a working prototype, but am having some troubles
with the bootable image file that I am building to try it out.
I can create a bootable image if I keep it small (about 512K max) and
use
NBI (tagged image) format, and if I load it into memory within the
first
640K.
However, I believe that QNX6.1.0 supports bootable images of up to
3MâŚ
When I try to create one of these (load the image at 1M boundary, and
jump to it) - the system just re-boots.
What is the secret to bootable images over approx 512K??
Can I not jumpto/call the beginning of the image in protected
mode? (necessary to get to the 1M start location)
Do I have to load it in sections, where the first section is below the
1M
boundary - because we are in real mode? If so, how do I tell the
startup
code/ifs/whatever where all the sections are?
Should I be creating this image in ELF format? (The boot ROM should be
able to load it into memory if it is in ELF format)
If this forum is inappropriate for this kind of question, who/how/
should
I be talking to??
TIA
No comment at all?
Not even a re-direct to a better person/place?
Still nothing??
I donât want this one falling through the cracksâŚ
At least somebody direct me where to go, if this is not the right
forum/method for communicating this issue⌠Please!
\
Stephen Munnings
Software Developer
Corman Technologies Inc.
\
â
Stephen Munnings
Software Developer
Corman Technologies Inc.