QNX2 boot diskette creation

Dear all,
i’ve just started to work with QNX.

I’ve got the same trouble as discussed in members warta post 2008 just putting working QNX2.21 HD into the mashine with wrong manual CHS settings.
Result:
QNXLoader
Boot to Partition 1

I have QNX2.21 with QNX Windows on another PC and i need to create the boot diskette to follow the instructions of that post.
How it can be done?
Is it possible to make HD starting again?

Thanks all

I tried the first QNX 2.21 distibution disk and followed the warta post sequence.
The partitition table seems ok and I can see filesystem but it doesn’t want to boot as before.
Please help me to get it bootable.
Thanks all

Are you getting the dreaded “Operating System not found” message? Getting QNX 2 to boot requires a very specific sequence of commands. There are pitfalls related to H/T/C settings. The settings you see when you mount the driver must match the settings in the BIOS. I didn’t see the “warta” posting so I can’t comment on whether it is correct or now. I’d like to know why you need to boot a 25 year old OS before I start writing out instructions.

As time goes on, questions about the LBA driver disk.ata get fewer and fewer. I’m wondering if that is because it is highly distributed or because people are surviving without it, using H/T/C instead.

Thank you for immediate reply.
We have a large cryogenic plant that still is working with QNX 2.21.
Last year we started the upgrade project including the specific hardware and we need some time about 1 year to arrive to the new solution.
It was working fine but it was a human error that brought us to this situation and we have no backup copy.
We shall be very grateful if you will help us to solve the problem.

At startup the message is:

QNXLoader
Boot Partition 1

And it hangs

Starting from diskette and mounting the drive the partitition table seems ok, QNX partitition is activated for boot and I can see filesystem that seems normal. So the BIOS settings should be ok.
Now I’ll try to run chkfsys to see if there are damaged files.

Where can I read about LBA driver? Or maybe later…

Is it the case that you have an “installation” diskette and that when you install, you get this problem? That could be tricky.

I don’t know anywhere that you can read about the LBA driver. It is called disk.ata. I wrote it many years ago, after QNX stopped supporting QNX 2. It is free. I could send it to you or upload it here (if I can figure out how). The biggest problem is usually getting it onto a QNX 2 diskette.

Hi,
I do not install anything. I just boot up from diskette and use your sequence that you proposed to “warta”. I’ll copy it here.


If you boot off of a floppy, you must mount a driver. If the disk is an IDE drive, you might do the following:

$ mount disk 3 /drivers/disk.atc pa=qnx +v

This would use the AT (Cache) driver, and mount a QNX (Type 7) partition if it is found in the partition table. If this does not work, you can do things in two steps.

$ mount disk 3 /drivers/disk.atc +v

$ fdisk 3

Fdisk will show you what the partition table looks like. You could then mount a partition this way:

$ mount disk 3 d=3 pa=7 +v

There are other parameters in case you have two physical disks on the same controller.

There are other complications. QNX 2 never supported LBA mode, but I have a disk.ata driver that does. QNX 2 never (properly) supported 2 IDE controllers, but I have a way to do this also. QNX 2 did not support CD-ROM’s, so don’t even try. They use a different interface on top of the IDE interface called ATAPI which is not supported.

Once you think you have access to the disk you can check as follows:

$ ls 3:/


Nothing else.
So with fdisk and ls I see correct partitition table and directory structure.
If i try to boot from HD i get

QNXLoader
Boot Partition 1

And after it hangs.

Thank you.

This is a problem that comes up every once in a while. Let me see if I can explain the problem and what you might be able to do about it.

At boot time the QNX 2 OS loader loads the OS using BIOS calls. The BIOS calls assume Head/Sectors/Cylinders values that are stored in CMOS RAM. These have to match the same numbers that are being used when the QNX disk driver is first loaded. This usually happens automatically because the QNX disk driver reads these values from the BIOS by default.

Sometimes this doesn’t seem to work right. Here is how to check whether this is the problem.

  1. Go into the BIOS and see what the settings are

  2. Boot off of a floppy

  3. Mount the disk driver without any parameters

  4. Run fdisk
    At the bottom of the screen are some head sector cylinder numbers.

They should match the BIOS values

If they don’t there are a few things you can try.

  1. Mount the driver using h= n= t= parameters to match the BIOS.

  2. Change the settings in the BIOS to match what QNX shows

After each of these, repeat the above experiment to see if things match.
When they match, you have to fdisk, dinit, and load the hard drive, and then run “boot”.

This is hit or miss.

Thank you very much.
I understood perfectly your explanation.
Just finished to read the installation chapters of QNX 2.2 manual that I found at QNX site.
Except the last phrase “fdisk, dinit, and load the hard drive”.

Do I really need to use dinit if i have all file system already on HD? Isn’t it dangerous?
What should i load to HD?

I’ll try tomorrow (Europe) and inform you about the result.
Thanks once more.

If you have important data already loaded on a hard drive, and it’s the only copy, no, please do not fdisk and dinit.

But if you loaded the disk with the wrong H/N/C values, you will not be able to boot off of it.

So you might need to copy your files off some where first.

If you mount a drive with H/N/C values different from when you first initialized it, your disk is logically corrupted. You could re-mount with the right values and access it again, but it might not be bootable.

Thank you again.
In this case maybe it would be better to create a new QNX hard disk
put it as a slave or as a master and the old as a slave and backup there all my files. Will ithe new one be bootable after?

No.

After you copy the files, you will have to re-configure the new drive as the master, boot off of the floppy, mount the drive, and run the boot command. Again, this requires that the H/N/C values be correct.

OK. I’ll try this way.
Isn’t it possible to copy from old hd slave to new hd master booting from diskette?
Thank you once more.

YOu could do that and save a step.

Finally i’ve got it starting and entering QNX Windows.
For the rest I must wait Monday for complete test on the plant.
There was a lot of errors on hd and i had to zap many files but they were never important system files. After i backuped smoothly everything except bitmap, /config and /netboot, checked that it was still booting and copied also last two.
Again, thank you very much for your precious advices.

Glad to hear. bitmap is never copied. It’s the system file that keeps track of which sectors are allocated and which are not.

It works also on the plant.
Now I have to prepare some working backup copy but the smallest HD I have are from 1 to 5 GB.
If i run fdisc on them using disk.atc driver it gives me disk size that is not correct or negative.
Does your driver disk.ata solve the problem of larger disks?
I can create clones and they work but they always request manual BIOS HD settings.
Thank you again.

It works also on the plant.
Now I have to prepare some working backup copy but the smallest HD I have are from 1 to 5 GB.
If i run fdisc on them using disk.atc driver it gives me disk size that is not correct or negative.
Does your driver disk.ata solve the problem of larger disks?
I can create clones and they work but they always request manual BIOS HD settings.
Thank you again.

It works also on the plant.
Now I have to prepare some working backup copy but the smallest HD I have are from 1 to 5 GB.
If i run fdisc on them using disk.atc driver it gives me disk size that is not correct or negative.
Does your driver disk.ata solve the problem of larger disks?
I can create clones and they work but they always request manual BIOS HD settings.
Thank you again.

Probably.

Most BIOS’s require Head/Sectors/Cylinder values to boot off of a disk. Fortunately, even LBA drives simulate these numbers. Finding the right numbers is crucial and tricky. The best way I know of it so mount the driver and run fdisk. Try the values listed on the bottom of the screen.