Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!gem.mps.ohio-state.edu!wuarchive!cs.utexas.edu!uunet!mcsun!unido!fauern!lan!rommel From: rommel@lan.informatik.tu-muenchen.dbp.de (Kai-Uwe Rommel) Newsgroups: comp.windows.ms Subject: Re: Interrupt driven I/O under MS-Windows Message-ID: <868@tuminfo1.lan.informatik.tu-muenchen.dbp.de> Date: 30 Oct 89 16:45:58 GMT References: <273@ssp7.idca.tds.philips.nl> Sender: news@lan.informatik.tu-muenchen.dbp.de Reply-To: rommel@lan.informatik.tu-muenchen.dbp.de (Kai-Uwe Rommel) Organization: Inst. fuer Informatik, TU Muenchen, W. Germany Lines: 30 In article <273@ssp7.idca.tds.philips.nl> bontekoe@idca.tds.PHILIPS.nl (M. Bontekoe) writes: >We are trying to build a terminal emulation program, which uses interrupt driven >I/O, running under MS-Windows. >The source code is ported to MS-Windows and the code segment, containing the >asynchronous communication routines, is defined as a FIXED code segment. But >it doesn't work. >Can anybody help. Also pointers to any publications about this subject are >welcome. >Meindert Bontekoe, SSP-P4000, PTDSN, Apeldoorn, Holland. I had the same problem and the solution was simple: Put your interrupt handling code into a standard-DOS resident program and load this into memory before running Windows. Make it accessible using the Multiplex Interrupt 0x2F and then call your routines from within your Windows application via int86(0x2F, ...). A resident program becomes a Multiplex-Server if it hooks the INT 2F vector and looks for a special value in register AH if INT 2F is called. If INT 2F is called with other values in AH than the handled one, control is passed to the previous INT 2F vector. Look into the DOS Techn. Ref. for AH values already reserved for existing DOS programs and into the INTER589 interrupt list for values used with other packages to avoid conflicts if you use some of them. Some assembly language programming is required. Kai Uwe Rommel, Munich