I would like to boot QNX4 system from CF formatted with FAT fs. That means I
have to write my own secondary boot loader.
From my understanding of QNX4 boot process it should be enough to load .boot
file into memory (start of .boot file is placed at addr. 1000 (0:1000 or
100:0000). Then I fill offset 0xC (bootsrc) with ‘H’ and I transfer control
to it.
And this is the outcome:
BOOT ERROR: no modules in image, check build file
— cannot start operating system
Filesize of (.boot) is 450kB and I know there are modules in this file. (If
I put the same file
on QNX4 formated CF it is working fine)
I would like to boot QNX4 system from CF formatted with FAT fs. That means I
have to write my own secondary boot loader.
From my understanding of QNX4 boot process it should be enough to load .boot
file into memory (start of .boot file is placed at addr. 1000 (0:1000 or
100:0000). Then I fill offset 0xC (bootsrc) with ‘H’ and I transfer control
to it.
And this is the outcome:
BOOT ERROR: no modules in image, check build file
— cannot start operating system
Filesize of (.boot) is 450kB and I know there are modules in this file. (If
I put the same file
on QNX4 formated CF it is working fine)
Is there anything I am missing?
Roughly you listed everything Might be you missed some small detail
or made a mistake reading FAT fs.
Address where to put image is 0:1000 (0100:0), or stricly speaking you
should get segment (0x100) at offset 0xA in inode block.
Before transfering control it looks like you need
mov al,0xff
out 0x21,al
cli
Address where to put image is 0:1000 (0100:0), or stricly speaking you
should get segment (0x100) at offset 0xA in inode block.
sorry, I meant first extent block, not inode ^^^^^^^^^^^^
In article <> MPG.1cd0d427c6771e7a9896b3@inn.qnx.com> >, > ed1k@fake.address
says…
Address where to put image is 0:1000 (0100:0), or stricly speaking you
should get segment (0x100) at offset 0xA in inode block.
sorry, I meant first extent block, not inode ^^^^^^^^^^^^
Eduard.