RE: DOS2linux

From: Camiel Vanderhoeven (camiel_toronto@hotmail.com)
Date: Mon Aug 27 2001 - 18:39:23 EST


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; inregs.h.al=0x1; inregs.h.cl=DiSC_Id.slot>>12;
> inregs.h.ch=0;
> sregs.ds=FP_SEG(s); inregs.x.si=FP_OFF(s);
> int86x(0x15, &inregs, &outregs, &sregs);
> valid=outregs.h.ah;
> if(!valid) { DiSC_Id.it=buff[itconf]; DiSC_Id.dma=buff[dmachd]; }
> return(valid);
> }
>
> Would it help if i told you that itconf and dmachd are defined as (see
> http://mc303.ulyssis.org/heim/downloads/DISCINC.H )
>
> #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...

Camiel.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Fri Aug 31 2001 - 21:00:26 EST