Booting off USB Floppy

bridged with qdn.public.qnx4
Post Reply
Len Meakin

Booting off USB Floppy

Post by Len Meakin » Thu Jan 08, 2004 9:03 am

Hello,
I have a system that is capable of booting off a USB floppy device. I
have successfully booted this system using this device with DOS 6.22 and
Win95 boot disks (both of which do not support USB). When I attempt to
do the same using a QNX 4.25 disk, the following occurs:

The system reads the OS image from the floppy, and starts to process it.
However it fails when it comes to the starting up of Fsys.floppy [No
floppy drives detected, check setup].

Using a DOS boot disk with diagnostics app, it reports the floppy
controller at address 0x3f0, the default used by Fsys.floppy.

I used the QNX 1.44 Demo disk (Internet Demo) and this booted
successfully, but I have no idea how to recreate a custom version of
this disk.

Any help would be very much appreciated in getting this system boot off
the USB floppy device.

Len.

Mario Charest

Re: Booting off USB Floppy

Post by Mario Charest » Thu Jan 08, 2004 1:09 pm

"Len Meakin" <len.m@incubus.co.uk_REMOVE> wrote in message
news:btj558$dc7$1@inn.qnx.com...
Hello,
I have a system that is capable of booting off a USB floppy device. I
have successfully booted this system using this device with DOS 6.22 and
Win95 boot disks (both of which do not support USB). When I attempt to
do the same using a QNX 4.25 disk, the following occurs:

The system reads the OS image from the floppy, and starts to process it.
However it fails when it comes to the starting up of Fsys.floppy [No
floppy drives detected, check setup].
The image is loaded though BIOS calls, hence BIOS takes cares of
the support the USB controller, but Fsys.floppy doesn't know how to deal
with USB floppy.
Using a DOS boot disk with diagnostics app, it reports the floppy
controller at address 0x3f0, the default used by Fsys.floppy.
That is probably the "real controler" and not the USB controler ;-)
I used the QNX 1.44 Demo disk (Internet Demo) and this booted
successfully, but I have no idea how to recreate a custom version of
this disk.

It's possible since QNX did it, but for outsider it is lot of work. The
Demo
disk works because a special loader doesn't have a limit for 640k hence
it can rely on the BIOS to load the whole disk, which is just a boot image
no filesystem.
Any help would be very much appreciated in getting this system boot off
the USB floppy device.

Len.

Bill Caroselli

Re: Booting off USB Floppy

Post by Bill Caroselli » Thu Jan 08, 2004 2:15 pm

Mario Charest <postmaster@127.0.0.1> wrote:

MC > "Len Meakin" <len.m@incubus.co.uk_REMOVE> wrote in message
MC > news:btj558$dc7$1@inn.qnx.com...
I used the QNX 1.44 Demo disk (Internet Demo) and this booted
successfully, but I have no idea how to recreate a custom version of
this disk.
I'm not sure just how much you are hoping to accomplish. If you just
want to boot off a floppy and not have floppy access once QNX is
running, it shouldn't be too hard. As Mario said, BIOS will do teh
initial program load. But since QNX doesn't have a driver that knows
how to talk to a USB floppy,, you won't be able to use that device once
QNX has booted.

Do you have a QNX filesystem on the hard drive for this system? Or are
you looking to install QNX onto this system?

MC > It's possible since QNX did it, but for outsider it is lot of work. The
MC > Demo
MC > disk works because a special loader doesn't have a limit for 640k hence
MC > it can rely on the BIOS to load the whole disk, which is just a boot image
MC > no filesystem.

Len Meakin

Re: Booting off USB Floppy

Post by Len Meakin » Thu Jan 08, 2004 4:45 pm

Bill Caroselli wrote:
Mario Charest <postmaster@127.0.0.1> wrote:

MC > "Len Meakin" <len.m@incubus.co.uk_REMOVE> wrote in message
MC > news:btj558$dc7$1@inn.qnx.com...


I used the QNX 1.44 Demo disk (Internet Demo) and this booted
successfully, but I have no idea how to recreate a custom version of
this disk.



I'm not sure just how much you are hoping to accomplish. If you just
want to boot off a floppy and not have floppy access once QNX is
running, it shouldn't be too hard. As Mario said, BIOS will do teh
initial program load. But since QNX doesn't have a driver that knows
how to talk to a USB floppy,, you won't be able to use that device once
QNX has booted.

Do you have a QNX filesystem on the hard drive for this system? Or are
you looking to install QNX onto this system?
This is basically an emergency access route, if things go bad on the
hard disk within the unit (as it is hard to get to the hard disk within
the unit). It is required that I can access a server mount (Win NT),
through this method, so a re-installation of QNX is possible if required.

Thanks,
Len.

MC > It's possible since QNX did it, but for outsider it is lot of work. The
MC > Demo
MC > disk works because a special loader doesn't have a limit for 640k hence
MC > it can rely on the BIOS to load the whole disk, which is just a boot image
MC > no filesystem.

Bill Caroselli

Re: Booting off USB Floppy

Post by Bill Caroselli » Thu Jan 08, 2004 5:23 pm

Len Meakin <len.m@incubus.co.uk_remove> wrote:
LM > Bill Caroselli wrote:
Do you have a QNX filesystem on the hard drive for this system? Or are
you looking to install QNX onto this system?
LM > This is basically an emergency access route, if things go bad on the
LM > hard disk within the unit (as it is hard to get to the hard disk within
LM > the unit). It is required that I can access a server mount (Win NT),
LM > through this method, so a re-installation of QNX is possible if required.

OK. So there is already a QNX system on the hard disk. You just need
to boot off a floppy, mount the hard drive, re-root '/' to the hard
drive and start running from there. Right?

This should not be too difficult.

Create a boot image with a build file similar to:
-----------------
sys/boot
$ boot -v

sys/Proc32
$ Proc32 -l 1

sys/Slib32
$ Slib32

sys/Slib16
$ Slib16

/bin/Fsys
$ Fsys

/bin/Fsys.eide
$ Fsys.eide

/bin/mount
$ mount -p /dev/hd0 /dev/hd0t77 /

/bin/sinit
$ sinit TERM=qnx
-------------

Lines that you may want to pay particular attention to are:
1. The node number on "Proc32 -l 1". The 1 is the node number.
I'd use a new/unique node number. This was the system will try to
locate /etc/config/sysinit.x where x is the new node number. Then you
can do any special initialization you need only when booted from floppy.

2. Do you need any options to Fsys & Fsys.eide?

3. Is your QNX partition type 77?

Then:

1. Build the boot image with buildqnx

2. Prepare a floppy. I'd:
2a. fdformat /dev/fd0
2b. dceck /dev/fd0
2c. dinit /dev/fd0
2d. mount /dev/fd0 /fd0

3. Put the boot image on the floppy:
cp /boot/images/your_new_image /fd0/.boot

This should now be ready to boot.

The magic is that BIOS will read the QNX boot image off of the USB
floppy. Control is then passed to the QNX image which mounts the hard
drive and the '/' directory without needing to do any more disk IO.
Finally, it passes control to the /etc/config/sysinit.x file which is
now located on the hard drive partition.

Good luck.

Mario Charest

Re: Booting off USB Floppy

Post by Mario Charest » Thu Jan 08, 2004 5:56 pm

"Len Meakin" <len.m@incubus.co.uk_REMOVE> wrote in message
news:btk071$30c$1@inn.qnx.com...
Bill Caroselli wrote:

Mario Charest <postmaster@127.0.0.1> wrote:

MC > "Len Meakin" <len.m@incubus.co.uk_REMOVE> wrote in message
MC > news:btj558$dc7$1@inn.qnx.com...


I used the QNX 1.44 Demo disk (Internet Demo) and this booted
successfully, but I have no idea how to recreate a custom version of
this disk.



I'm not sure just how much you are hoping to accomplish. If you just
want to boot off a floppy and not have floppy access once QNX is
running, it shouldn't be too hard. As Mario said, BIOS will do teh
initial program load. But since QNX doesn't have a driver that knows
how to talk to a USB floppy,, you won't be able to use that device once
QNX has booted.

Do you have a QNX filesystem on the hard drive for this system? Or are
you looking to install QNX onto this system?

This is basically an emergency access route, if things go bad on the
hard disk within the unit (as it is hard to get to the hard disk within
the unit). It is required that I can access a server mount (Win NT),
through this method, so a re-installation of QNX is possible if required.
Unfortunately all the required component to access a windows machine cannot
fit
inside the <640k image.

You could use QNX6 to build the special floppy. QNX6 doesn't have the 640 k
limitation.
However in order to do that you need to purchase QNX6, the free version
doesn't have what it takes to build custom images.

Other option is to use Norton Ghost, which allows booting from a floppy to
copy a HD image from a remote machine (never done it myself)


Thanks,
Len.



MC > It's possible since QNX did it, but for outsider it is lot of work.
The
MC > Demo
MC > disk works because a special loader doesn't have a limit for 640k
hence
MC > it can rely on the BIOS to load the whole disk, which is just a
boot image
MC > no filesystem.

Post Reply

Return to “qdn.public.qnx4”