Go Back   { mindfrost82.com } > Gadget Corner > Tech Newsgroups > Linux > Linux Hardware

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1 (permalink)  
Old 05-06-2008, 04:25 PM
smsabu2002@yahoo.com
 
Posts: n/a
Real mode BIOS call in x86_64 Linux environment

I have an application which gets Video controller information using
VESA BIOS routines. It makes use of LRMI library for making real mode
BIOS call in x86_32 bit Linux machine.

Now, I need to port this application for x64 Linux. But, LRMI is
limited only to x86_32 enviornment. Is there any other equivalent
libarary for x64 porting ?

Thanks in advance,

Arun
Reply With Quote
  #2 (permalink)  
Old 05-06-2008, 04:27 PM
Rainer Weikusat
 
Posts: n/a
Re: Real mode BIOS call in x86_64 Linux environment

smsabu2002@yahoo.com writes:
> I have an application which gets Video controller information using
> VESA BIOS routines. It makes use of LRMI library for making real mode
> BIOS call in x86_32 bit Linux machine.
>
> Now, I need to port this application for x64 Linux. But, LRMI is
> limited only to x86_32 enviornment. Is there any other equivalent
> libarary for x64 porting ?


The x86_64 'long mode' ('64bit') does not support 8086-emulation
(vm86).
Reply With Quote
  #3 (permalink)  
Old 05-06-2008, 04:27 PM
Rainer Weikusat
 
Posts: n/a
Re: Real mode BIOS call in x86_64 Linux environment

smsabu2002@yahoo.com writes:
> I have an application which gets Video controller information using
> VESA BIOS routines. It makes use of LRMI library for making real mode
> BIOS call in x86_32 bit Linux machine.
>
> Now, I need to port this application for x64 Linux. But, LRMI is
> limited only to x86_32 enviornment. Is there any other equivalent
> libarary for x64 porting ?


The x86_64 'long mode' ('64bit') does not support 8086-emulation
(vm86).
Reply With Quote
  #4 (permalink)  
Old 05-07-2008, 03:23 AM
smsabu2002@yahoo.com
 
Posts: n/a
Re: Real mode BIOS call in x86_64 Linux environment

On May 6, 5:51*pm, David Schwartz <dav...@webmaster.com> wrote:
> On May 6, 9:25*am, smsabu2...@yahoo.com wrote:
>
> > I have an application which gets Video controller information using
> > VESA BIOS routines. It makes use of LRMI library for making real mode
> > BIOS call in x86_32 bit Linux machine.

>
> > Now, I need to port this application for x64 Linux. But, LRMI is
> > limited only to x86_32 enviornment. Is there any other equivalent
> > libarary for x64 porting ?

>
> Could you be a bit more specific about what information you need and
> what you need it for? It seems odd that a Linux application would want
> this kind of information. Is this hardware auditing? Or are you trying
> to control the video hardware directly?
>
> DS


The requirement is to collect video controller information using Video
BIOS VBE3 in x86_64 Linux OS. The Bios Interrupt routine 0x10 is meant
for Video system. Right now, my application uses LRMI library to make
BIOS routine call 0x10.
But this 32 bit application is failing in x86_64 while making call to
BIOS routine.

Hence, I have started porting the application to x86_64 machine. But,
I am struck up with finding LRMI equivalent in x86_64 platform.
Could you please help me.

Thanks a lot.

Arun
Reply With Quote
  #5 (permalink)  
Old 05-07-2008, 04:02 AM
David Schwartz
 
Posts: n/a
Re: Real mode BIOS call in x86_64 Linux environment

On May 6, 8:23*pm, smsabu2...@yahoo.com wrote:

> The requirement is to collect video controller information using Video
> BIOS VBE3 in x86_64 Linux OS.


I think this is quite close to impossible. Whatever your outer problem
is, there's almost certainly a better way to solve it. You should do
whatever you can to get the requirement fixed.

DS
Reply With Quote
  #6 (permalink)  
Old 05-07-2008, 04:02 AM
David Schwartz
 
Posts: n/a
Re: Real mode BIOS call in x86_64 Linux environment

On May 6, 8:23*pm, smsabu2...@yahoo.com wrote:

> The requirement is to collect video controller information using Video
> BIOS VBE3 in x86_64 Linux OS.


I think this is quite close to impossible. Whatever your outer problem
is, there's almost certainly a better way to solve it. You should do
whatever you can to get the requirement fixed.

DS
Reply With Quote
  #7 (permalink)  
Old 05-07-2008, 10:03 AM
Rainer Weikusat
 
Posts: n/a
Re: Real mode BIOS call in x86_64 Linux environment

David Schwartz <davids@webmaster.com> writes:
> On May 6, 8:23*pm, smsabu2...@yahoo.com wrote:
>> The requirement is to collect video controller information using Video
>> BIOS VBE3 in x86_64 Linux OS.

>
> I think this is quite close to impossible.


It is certainly 'possible', eg by disassembling the BIOS, determining
where it gets the information from and reimplementing the same
functionality without resorting to 'real-mode' softints.
Reply With Quote
  #8 (permalink)  
Old 05-07-2008, 10:03 AM
Rainer Weikusat
 
Posts: n/a
Re: Real mode BIOS call in x86_64 Linux environment

David Schwartz <davids@webmaster.com> writes:
> On May 6, 8:23*pm, smsabu2...@yahoo.com wrote:
>> The requirement is to collect video controller information using Video
>> BIOS VBE3 in x86_64 Linux OS.

>
> I think this is quite close to impossible.


It is certainly 'possible', eg by disassembling the BIOS, determining
where it gets the information from and reimplementing the same
functionality without resorting to 'real-mode' softints.
Reply With Quote
Reply

  { mindfrost82.com } > Gadget Corner > Tech Newsgroups > Linux > Linux Hardware


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are Off
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT. The time now is 05:50 PM.


Powered by vBulletin, Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0 ©2007, Crawlability, Inc.
© 1999-2008 mindfrost82.com v11.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109