All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gerardo Richarte <gera@corest.com>
To: grub-devel@gnu.org
Subject: VbE and eltorito questions
Date: Tue, 02 May 2006 13:30:55 -0300	[thread overview]
Message-ID: <4457893F.3030703@corest.com> (raw)

Hi, I'm in the process of porting some old "OS" I made to take advantage
of GRUB's features.
There are 2 things I currently need, for which I have partial solutions.
But your master advice would be really wellcome!

I need to load a big module (20Megs). This is no problem for GRUB, I can
do it currently, but to test everything I'm using vmware and (now) an
ISO image with eltorito (using stage2_eltorito from ubuntu's GRUB 0.95).
I can also do it with and 0.97 I compiled.

I also need to set the video mode before jumping to my kernel. Here's
where the main problem comes in. I know I could do it if the multiboot
part for this was finished in grub, and I'm willing to implement this
support for grub (at least some partial support). This shouldn't be
complicated after all the code GRUB already has for VBE support (both in
Legacy and grub2).

Now, I have two different problems:

I can use vbeprobe and testvbe from ubuntu's 0.95. However, if I compile
my own grub (either 0.95 with ubuntu's patches or stock 0.97) vbe
doesn't really work. I get an empty list of available modes with
vbeprobe, and an error message saying that 0xffffff00 is not a valid
video mode. I don't know what's causing this.

Ignoring this fact, I hacked a new command: setvbe that does what
testvbe does, but doesn't exit the video mode nor waits a keypress. This
is my first attempt at coding multiboot support for video mode selection.

I also tried using GRUB2 for this, and found that I can set the video
mode using "terminal vesafb" after doing "set vbe_mode=0x141" for
example. This will change the video mode, and then continue with GRUB,
letting me boot my "OS" without switching back to the original video
mode (exactly what I need). However, I didn't find how to make an ISO
image with GRUB2 (allowing me to load a 20MB module, which evidently
doesn't feet in a floppy image :-)

    I have a few questions, any would solve my problem, but some will
not let me implement video mode selection for multiboot.

    How do I do an ISO image with GRUB2? (a la stage2_eltorito)?
    How do I compile GRUB Legacy with vbe support? (any configuration
trick?)
    How do I debug GRUB Legacy so I can find what the problem with vbe is?

    Do you think it's worth implementing the multiboot video mode
selection for GRUB?

    thanks a lot
    gera

PS: I read most GRUB's code looking for multiboot video mode selection
code, but I couldn't find it. If it's there, please tell me how to use it!
PS: When I say multiboot video mode selection I mean what's specified in
http://www.gnu.org/software/grub/manual/multiboot/multiboot.html#Header%20graphics%20fields




             reply	other threads:[~2006-05-02 16:29 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-05-02 16:30 Gerardo Richarte [this message]
2006-05-12 12:52 ` GRUB 2 and eltorito boot (no emul) Gerardo Richarte
2006-05-13  3:12   ` Yoshinori K. Okuji

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4457893F.3030703@corest.com \
    --to=gera@corest.com \
    --cc=grub-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.