Path: utzoo!news-server.csri.toronto.edu!cs.utexas.edu!swrinde!zaphod.mps.ohio-state.edu!sol.ctr.columbia.edu!ira.uka.de!fauern!NewsServ!rommel From: rommel@Informatik.TU-Muenchen.DE (Kai-Uwe Rommel) Newsgroups: comp.windows.ms.programmer Subject: Re: GlobalDosAlloc not exported in libs? Message-ID: <1991Mar12.081711.8270@Informatik.TU-Muenchen.DE> Date: 12 Mar 91 08:17:11 GMT References: <1991Feb13.165724.18629@linus.mitre.org> <1991Mar10.143402.12577@siesoft.co.uk> Sender: news@Informatik.TU-Muenchen.DE Organization: Technische Universitaet Muenchen, Germany Lines: 17 In article <1991Mar10.143402.12577@siesoft.co.uk> mjc@siesoft.co.uk (Mark Carlin) writes: >I would hazard a guess and suggest that if your intention is to >communicate with a a DOS program, such as a TSR, then you may have another >problem to follow; altering segment registers and issuing a software >interrupt in in enhanced mode will cause a protection violation. >To overcome this you may have to mess around with DPMI (DOS Protected >Mode Interface). You *can* issue software interrupts in 386 enhanced mode, at least to the most often used vectors, such as 2F, the multiplex interrupt. I use this a lot. Installing TSR's as INT-2F-handlers is always a good idea because you cannot conflict with other TSR's that easy as if you choose some other arbitrary one if you follow the INT-2F specifications. Also, when issuing a software interrupt, you can pass the segment value for the GlobalDosAlloc()ated block in an universal register and load it into a segment register in real mode in your TSR. Kai Uwe Rommel