Van: Henk Gooijen via cctalk<mailto:cctalk at classiccmp.org>
Verzonden: woensdag 21 februari 2018 21:20
Aan: Pontus Pihlgren<mailto:pontus at Update.UU.SE>; General Discussion: On-Topic
and Off-Topic Posts<mailto:cctalk at classiccmp.org>
Onderwerp: RE: Writing emulators (was Re: VCF PNW 2018: Pictures!)
Van: Pontus Pihlgren<mailto:pontus at Update.UU.SE>
Verzonden: woensdag 21 februari 2018 21:15
Aan: Henk Gooijen<mailto:henk.gooijen at hotmail.com>; General Discussion: On-Topic
and Off-Topic Posts<mailto:cctalk at classiccmp.org>
CC: Paul Koning<mailto:paulkoning at comcast.net>
Onderwerp: Re: Writing emulators (was Re: VCF PNW 2018: Pictures!)
On Wed, Feb 21, 2018 at 07:44:33PM +0000, Henk Gooijen via cctalk wrote:
Van: Paul Koning via cctalk<mailto:cctalk at classiccmp.org>
Verzonden: woensdag 21 februari 2018 20:37
Aan: Guy Sotomayor Jr<mailto:ggs at shiresoft.com>
CC: General Discussion: On-Topic and Off-Topic Posts<mailto:cctalk at
classiccmp.org>
Onderwerp: Re: Writing emulators (was Re: VCF PNW 2018: Pictures!)
However, it is my belief (and I think others have
also stated) that assuming infinitely fast I/O (e.g. no delays what so ever) can cause
issues because in many cases the SW expects to be able to do some work between the time
that the I/O is started and when it completes.
True, that is unfortunately a fairly common type of software bug. And because it is,
emulators have to work around those bugs. I make it a point to call it a bug, though,
because I don't want anyone to get the impression that OS programmers who wrote such
things were doing the right thing.
paul
Yeah, I found that out when I was working on the PDP8/e emulation running on a 6809. OS/8
does that as well. After issueing the disk I/O it executes a few more instructions,
because it ?knows? that the requested disk data cannot yet have been loaded into memory. I
solved that problem with a counter that can be preset to some TBD value. The value defines
the number of extra emulated instructions before it jumps to the (now) loaded data from
disk ? at least, that is how I remember it doing over 10 years ago. I have an extensive
webpage on pdp8 emulation on 6809. I succeeded in finishing it: booting OS/8 and running
spacewr on it!
Don?t ask how ?fast? it ran ?
While I too might consider it a bug and bad style. The OS/8 guys knew
exactly what hardware they would support and probably gained some
performance by doing it "wrong"
Do you have a link to your work?
/P
Direct link:
www.pdp-11/nl/homebrew/pdp8/pdp8startpage.html<http://www.pdp-11/nl/home…
It is a long story! From the start to a working emulation with lots of debug facilities
(as found on HP64000 development systems). But this emulation runs the pdp8 diagnostics
without errors.
Oops, typo.
Change /nl to .nl
www.pdp-11.nl/homebrew/pdp8/pdp8startpage.html<http://www.pdp-11.nl/home…