X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f From: RayeR Newsgroups: comp.os.msdos.djgpp Subject: Re: PM interrupt handling - how to call old old ISR with slower rate than my new ISR Date: Fri, 02 Nov 2007 03:02:30 -0700 Organization: http://groups.google.com Lines: 26 Message-ID: <1193997750.618132.166980@v3g2000hsg.googlegroups.com> References: <1193963270 DOT 088377 DOT 101010 AT 22g2000hsm DOT googlegroups DOT com> <200711020046 DOT lA20kxob017037 AT envy DOT delorie DOT com> NNTP-Posting-Host: 195.70.144.29 Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" X-Trace: posting.google.com 1193997750 9916 127.0.0.1 (2 Nov 2007 10:02:30 GMT) X-Complaints-To: groups-abuse AT google DOT com NNTP-Posting-Date: Fri, 2 Nov 2007 10:02:30 +0000 (UTC) In-Reply-To: <200711020046.lA20kxob017037@envy.delorie.com> User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070802 SeaMonkey/1.1.4,gzip(gfe),gzip(gfe) Complaints-To: groups-abuse AT google DOT com Injection-Info: v3g2000hsg.googlegroups.com; posting-host=195.70.144.29; posting-account=ps2QrAMAAAA6_jCuRt2JEIpn5Otqf_w0 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk > the other DPMI functions... "call real mode procedure with IRET frame" > > For best performance, also hook the real-mode timer interrupt, else > there'll be lots of mode switching. Where can I find the call_real_mode_procedure_with_iret_frame DPMI wrapper? Can I call old ISR by _go32_dpmi_simulate_int or similar? But if I will call RM interrupt I will need to save it's vector as RM int vector using _go32_dpmi_get_realmode_interrupt_vector instead of _go32_dpmi_get_protected_mode_interrupt_vector, right? Does DJGPP hooks something to timer interrupt in PM or pass it to old RM ISR? If I would use hooking RM interrupt I will need to write the ISR completly in assembler and then do some magic with transfer buffer to setup it. I'd rather use PM ISR written in C if possible. BTW if I use _go32_dpmi_set_protected_mode_interrupt_vector and dont't call old ISR at all the system will hang.