From: "Javier Calleja" To: Subject: Put an interrupr function in DOS mermory with 'dosputmem'. Date: Mon, 27 Apr 1998 16:05:56 +0200 Message-ID: <01bd71e5$98f53c60$0100a8c0@dismuntel.ctv.es> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_NextPart_000_000B_01BD71F6.5C7E0C60" Precedence: bulk This is a multi-part message in MIME format. ------=_NextPart_000_000B_01BD71F6.5C7E0C60 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hello: I'm still programming the aplication which uses the PacketDriver = functions. I need to put an interrupt function handler int the DOS = memory and I need to use its segment:offset. I could do it with the _go32_dpimi_allocate_real_mode_callback_ret = function or similar, but I have read that it's so slow because this = function calls to the interrupt function handler which is allocated in = the dpmi memory. I've also read that I can put my interrupt function directly in the = part of the DOS memory if I use an seginfo structure to know where it is = allocated my interrupt function code and I use the dosputmem function to = copy it to DOS memory. But, how can I know how much bytes I need to copy with the dosputmem = (I must put in a field of this function the number of bytes to copy)? And how must I write this interrupt function? This function is a void = far interrupt in C standar and I don=B4t know if I must end it with any = special return or if it needs any special parameter to call (as any = pointer to a structure register) Could someone help me? I'm looking forward your answer, and any sample is welcome. Kind regards from Spain Javier Calleja Av. Pais Valenciano 155, E 46680-Algemes=ED (Valencia) Espa=F1a Tlf:+34-96-2481217 FAX:+34-96-2481217 =20 email:dismuntel AT apdo DOT com ------=_NextPart_000_000B_01BD71F6.5C7E0C60 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
 
  = Hello:
 
  I'm still programming the = aplication which=20 uses the PacketDriver functions. I = need to put=20 an interrupt function handler int the DOS memory and I need to use its=20 segment:offset.
 
  I could do it with the=20 _go32_dpimi_allocate_real_mode_callback_ret function or = similar, but I=20 have read that it's so slow because this function calls to the interrupt = function handler which is allocated in the dpmi memory.
 
  I've also read that I can put my = interrupt=20 function directly in the part of the DOS memory if I use an = seginfo=20 structure to know where it is allocated my interrupt function code and I = use the=20 dosputmem function to copy it to DOS memory.
 
  But, how can I know how much = bytes I need to=20 copy with the dosputmem (I must put in a field of this function = the=20 number of bytes to copy)?
 
  And how must I write this = interrupt=20 function? This function is a void far interrupt in C = standar=20 and I don´t know if I must end it with any special return or if it = needs=20 any special parameter to call (as any pointer to a structure=20 register)
 
  Could someone help = me?
 
  I'm looking forward your answer, = and any=20 sample is welcome.
 
 
Kind regards from Spain
 
Javier Calleja
Av. = Pais Valenciano=20 155, E
46680-Algemesí=20 (Valencia)
España
Tlf:+34-96-2481217
FAX:+34-96-2481217=20
email:dismuntel AT apdo DOT com
------=_NextPart_000_000B_01BD71F6.5C7E0C60--