Path: utzoo!attcan!uunet!lll-winken!lll-tis!helios.ee.lbl.gov!pasteur!agate!bionet!apple!amdahl!oliveb!amiga!boing!dale From: dale@boing.UUCP (Dale Luck) Newsgroups: comp.sys.amiga.tech Subject: Re: Proposal for new DOS calls Message-ID: <482@boing.UUCP> Date: 8 Nov 88 16:54:44 GMT References: <8811072046.AA04999@postgres.Berkeley.EDU> Reply-To: dale@boing.UUCP (Dale Luck) Organization: Boing, Milpitas, Ca. Lines: 35 In article dillon@POSTGRES.BERKELEY.EDU (Matt Dillon) writes: > There are several lackings in DOS that make interactive handling of >file handles difficult. For one, there is no way to determine whether data >is pending (e.g. via SER: AUX:, interactive PIPE: etc...) without calling >Read() or WaitForChar(). I agree, the DOS is lacking here. We need a consistent concept of non-blocking i/o through files. >bool = SetRBlockMode(fh, mode) > 0- return less than requested or 0 if no/little read data available > (def) 1- block if no read data available > 2- (atomic non-blocking): either read everything or nothing. I prefer '0' being the default mode, so maybe just renumbering is inorder. >bool = SetRSignal(fh, signo, amount),bool = SetWSignal(fh, signo, amount) > -1 disables the function. Otherwise, set the signal # that should > occur when read data is available. Wow, is someone else trying to design a consistent select() call? >amnt = GetRDataReady(fh) ,amnt = GetWSpaceAvail(fh) All nice things I wish I had when writing my stdio support for X-Windows and sockets. >bool = ShutDown(fh, how) So tell me, Matt, is your next project a socket library maybe? -- Dale Luck Boing, Inc. {uunet!cbmvax|pyramid}!amiga!boing!dale Although I do contract work for Amiga-LosGatos, my opinions probably don't represent those of Commodore or its management or its engineers, but I think the world would be a better place if they did.