TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: David Muir
from: Peter Fitzsimmons
date: 1995-08-10 16:41:20
subject: Serial I/O {4 of 10}

DM>          if TX_free>0 then doswrite(Fport,fchar,1,ret);

 PF> Calling DosWrite/Read for each byte is __very__ 
 PF> expensive.  You should
 PF> try and combine your ReadChar and ReadBlock (and 
 PF> WriteChar/WriteBlock)
 PF> so they use the same buffer (which is emptied by another thread
 PF> perhaps). 

 DM>     The Basic functions included in that unit were originally made to 
 DM> duplicate an existing "DOS" unit (for easy porting).

There is no reason why your class (unit) can't have a "write one
byte" routine;  what I am saying is that under the covers,  this
should not translate to a DosWrite() for 1 byte (calling the device driver,
in ring 0,  is what is expensive).


--- Maximus/2 2.02p1

* Origin: Sol 3/Toronto (905)858-8488 (1:259/414)
SEEN-BY: 105/42 620/243 711/401 409 410 413 430 807 808 809 934 955 712/407
SEEN-BY: 515 628 704 713/888 800/1 7877/2809
@PATH: 259/414 400 99 250/99 3615/50 396/1 270/101 105/103 42 712/515
@PATH: 711/808 809 934

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.