Project Home
Project Home
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - x86 buildfile: (7 Items)
   
x86 buildfile  
Hi,

I tryed to use build file from Making Buildfiles for the QNX Neutrino RTOS, Part 2 document:

[virtual=x86,bios +compress] .bootstrap={
startup-bios -s 64k
PATH=/proc/boot LD_LIBRARY_PATH=/proc/boot:/usr/lib procnto
}
[+script] .script={
seedres
display_msg "My QNX Explorer Image..."
display_msg "Hello World"
# two virtual consoles
# at Ctrl+Alt+1 and Ctrl+alt+2
devc-con -n2 &
reopen /dev/con2
[+session] ksh &
reopen /dev/con1
[+session] ksh &
}
libc.so
# here?s another way of creating a symbolic link
[type=link] /usr/lib/ldqnx.so.2=/proc/boot/libc.so
[code=uip data=copy perms=+r,+x]
seedres
kill
cat
ls
ksh
devc-con
less
ps
sin
pidin
#Here goes our favorite editor...
vi


I thougth that it was the simplest and sufficient but only a message:
Hit Esc for .altboot       
occured.

I used commands sequence:
mkifs -v buildfile my.ifs
dinit -f my.ifs floppy.img.


The output was:
  Offset   Size    Entry   Ramoff Target=Host
  400000    400        0      --- /opt/qnx632/target/qnx6/x86/boot/sys/bios.boot
  400400    100     ----      --- Startup-header
  400500   e408   403c08      --- /tmp/fileusaW6v
  40e508     5c     ----      --- Image-header
  40e564    350     ----      --- Image-directory
    ----    ---     ----      --- usr/lib/ldqnx.so.2=/proc/boot/libc.so
  40e8b4     c0     ----      --- proc/boot/.script=/tmp/fileQNxqxa
  40f000  45000 f002e498      --- proc/boot/procnto=/tmp/fileSwJ5GR
  454000  5e000    34792      --- proc/boot/libc.so.2=/opt/qnx632/target/qnx6/x86/lib/libc.so
    ----    ---     ----      --- proc/boot/libc.so=libc.so.2
  4b2000   324c  8048730      --- proc/boot/seedres=/opt/qnx632/target/qnx6/x86/sbin/seedres
  4b6000   2314  804865c      --- proc/boot/kill=/opt/qnx632/target/qnx6/x86/bin/kill
  4b9000   1ddb  80484c0      --- proc/boot/cat=/opt/qnx632/target/qnx6/x86/bin/cat
  4bb000   47d4  8048c50      --- proc/boot/ls=/opt/qnx632/target/qnx6/x86/bin/ls
  4c0000  2597a  80496dc      --- proc/boot/ksh=/opt/qnx632/target/qnx6/x86/bin/ksh
  4e6000  10336  8049c30      --- proc/boot/devc-con=/opt/qnx632/target/qnx6/x86/sbin/devc-con
  4f7000  1b49f  8049230      --- proc/boot/less=/opt/qnx632/target/qnx6/x86/usr/bin/less
  513000   56a9  8048ba8      --- proc/boot/ps=/opt/qnx632/target/qnx6/x86/bin/ps
  519000  15a58  80480a4      --- proc/boot/sin=/opt/qnx632/target/qnx6/x86/bin/sin
  52f000   d0dc  804935c      --- proc/boot/pidin=/opt/qnx632/target/qnx6/x86/bin/pidin
  53d000  1bdc0  8049060      --- proc/boot/vi=/opt/qnx632/target/qnx6/x86/bin/vi
  558dc0      4     ----      --- Image-trailer


All existing files on floppy.img will be lost!  Are you sure (y or n) ? y
Using loader /opt/qnx632/target/qnx6/x86/boot/sys/ipl-diskpc2-flop
Disk 'floppy.img' contains 2880 blocks (1440K).


Jacek
Re: x86 buildfile  
Jacek,

How are you moving the newly created floppy.img onto your floppy disk?  Or are you using it for bootable CD ROM creation
?

I'm assuiming the command dinit <filename> does in fact create a floppy image (I've never used it that way before). 

Kevin
Re: x86 buildfile  
Kevin,

I use vmplayer with the floppy.img file instead of a real floppy device

Jacek
Re: x86 buildfile  
> Kevin,
> 
> I use vmplayer with the floppy.img file instead of a real floppy device
> 
> Jacek

Hey Jacek,

I don't know if you are trying to install onto vmware, but if you are, the ISO image is bootable.....

Kevin
Re: x86 buildfile  
I had replied but I think my webmail app is screwing things up.

You need to use the dinit from the trunk - the released dinit can't dinit a floppy image, only a real floppy disk drive 
(it tries to read the parameters from the hardware).

I hacked dinit to create a 1.44Mb floppy image if the file given is a regular file.
You will need to build it trunk/utils/d/dinit

ARGH, it's not there...

*SIGH*

I'll try to get it added to the public svn

--
cburgess@qnx.com
Re: x86 buildfile  
Thank you for your suggestions. You were right. I used real device for formatting and it's working. It crashed in a 
different place but it was my fault. 
I wanted to use dinit from the trunk as you suggested but in the repository trunk/utils/d/dinit this file didn't exist.

Jacek
Re: x86 buildfile  
I ran into a similar problem trying to make images for QEMU.

I was never able to make a floppy image work, but I did it with hard disk images, and the difference isn't much, as long
 as you tell VMware to boot from a hard disk image.


I had to call dinit twice like:

dinit -H -R -f qemu-minimal.ifs small-hdd.img
dinit -B pc2 small-hdd.img

The second one writes only the hard disk loader, rather than the floppy loader that always gets used when you use the 
old dinit on a file.


This seems to work fine - if you're ok booting from a "hard disk" that's the size of a floppy.