lkml.org 
[lkml]   [2001]   [Aug]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRE: DOS2linux
    Date
    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/

    \
     
     \ /
      Last update: 2005-03-22 12:58    [W:0.025 / U:0.724 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site