[lkml]   [2001]   [Aug]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRE: DOS2linux
Bart Vandewoesteyne wrote:
> That is also what I think, but the problem is that I don't know at
> which offset to look for that data...
> If you look at the code:
> static int getslotinfo( void )
> {
> static char buff[320], *s=&buff[0]; int valid;
> inregs.h.ah=0xd8;;>>12;
> sregs.ds=FP_SEG(s);;
> int86x(0x15, &inregs, &outregs, &sregs);
> valid=outregs.h.ah;
> if(!valid) {[itconf]; DiSC_Id.dma=buff[dmachd]; }
> return(valid);
> }
> Would it help if i told you that itconf and dmachd are defined as (see
> )
> #define itconf 0xb2
> #define dmachd 0xc0
> So if my EISA board is at 0x1000, i should be able to read these
> values from 0x1000+0xb2 and 0x1000+0xc0 ??? And if 'yes', any idea
> about how to read them? (byte, word, long...? My guess would be as a
> byte, but I'm not sure...)

Looking at the above piece of sourcecode, I would say your guess is
correct. "buff" is declared as an array of chars (bytes), so I would try
to read a byte at 0x10b2 and at 0x10c0. Just try it out & see what you
get back...

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2005-03-22 12:58    [from the cache]
©2003-2014 Jasper Spaans. hosted at Digital Ocean