Date: Sat, 03 Apr 1999 14:15:00 -0500 (EST) From: John Baldwin <jobaldwi@vt.edu> To: Alfred Perlstein <bright@rush.net> Cc: freebsd-hackers@FreeBSD.ORG, zhihuizhang <bf20761@binghamton.edu> Subject: Re: What does the "s" in insl and insw mean? Message-ID: <XFMail.990403141500.jobaldwi@vt.edu> In-Reply-To: <Pine.BSF.3.96.990403113649.4169P-100000@cygnus.rush.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On 03-Apr-99 Alfred Perlstein wrote: > On Sat, 3 Apr 1999, zhihuizhang wrote: > >> >> The instructions insl() and insw() should read a long word (l) or a word >> (w) from a specified I/O port. But what does the "s" in both instructions >> stand for? I can not find it in the Info files. > > in from port string operation > > it grabs a byte/word from the port, stores it into DS:DI and increments > DI, (that's in x86 real mode) afaik in prot mode it prolly just stores > to the segemtn pointed to DS and uses EDI. > > The opcodes without 's' use al/ax/eax for the destination. > > -Alfred Actually, ins* use ES, not DS, and ignore segment overrides to boot. Also, if the direction flag is set via std, (E)DI is decremented instead of incremented. --- John Baldwin <jobaldwi@vt.edu> -- http://members.freedomnet.com/~jbaldwin/ PGP Key: http://members.freedomnet.com/~jbaldwin/pgpkey.asc "Power Users Use the Power to Serve!" - http://www.freebsd.org To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.990403141500.jobaldwi>