Path: utzoo!utgpu!news-server.csri.toronto.edu!rutgers!usc!zaphod.mps.ohio-state.edu!sol.ctr.columbia.edu!trantor.harris-atd.com!charybdis!sonny From: sonny@charybdis.harris-atd.com (Bob Davis) Newsgroups: comp.os.msdos.programmer Subject: Re: Serial line TSR - help needed please? Keywords: serial TSR how nasty DOS stuff Message-ID: <5163@trantor.harris-atd.com> Date: 31 Dec 90 16:59:22 GMT References: <6517@crash.cts.com> <1990Dec30.041551.4685@micor.OCUnix.On.Ca> Sender: news@trantor.harris-atd.com Reply-To: sonny@trantor.harris-atd.com (Bob Davis) Organization: Advanced Technology Dept., Harris ESS, Melbourne, FL Lines: 27 In article <1990Dec30.041551.4685@micor.OCUnix.On.Ca> gwaigh@micor.OCUnix.On.Ca (Geoffrey Waigh) writes: >This may not apply to you, but if you try writing to disk with a DOS call >(which is the easy way to access the file system) in the background, it will >not behave. DOS is extremely non-rentrant (sp?) and does not like people >trying to do two things at once. You will have to do something to be sure >that DOS is not doing it's thing when you want to flush your buffer. I would >guess that grabbing INT 21 (ugh :-() may help but some Guru here may know a >better kludge. > No guru here, but I would suggest reading the sections on the InDOS flag and the Critical Error flag, as well as on the "DOS Idle" interrupt, Int28h, in a good DOS programmer's reference. I like: DOS Programmer's Reference, 2nd Edition by Terry Dettmann (w/ 2nd Ed. revisions by Jim Kyle) Published by QUE (C) 1989 ISBN:0-88022-458-4 The recommended topics will help you stay out of DOS's way as far as re-entrancy is concerned (no mean feat!). _____________________________________________________________________________ Bob Davis, UofALA alum \\ INTERNET: sonny@trantor.harris-atd.com | _ _ | Harris Corporation, ESS \\ UUCP: ...!uunet!x102a!trantor!sonny |_| |_| | | Advanced Technology Dept.\\ AETHER: K4VNO |==============|_/\/\/\|_| PO Box 37, MS 3A/1912 \\ VOICE: (407) 727-5886 | I SPEAK ONLY | |_| |_| | Melbourne, FL 32902 \\ FAX: (407) 729-2537 | FOR MYSELF. |_________|