Writing emulators (was Re: VCF PNW 2018: Pictures!)
Peter Coghlan
cctalk at beyondthepale.ie
Thu Feb 22 04:54:40 CST 2018
Guy Sotomayor Jr wrote:
>
>> On Feb 21, 2018, at 12:19 PM, Rich Alderson via cctalk <cctalk at classiccmp.org> wrote:
>>
>> From: Guy Sotomayor Jr
>> Sent: Wednesday, February 21, 2018 11:24 AM
>>
>>>> On Feb 21, 2018, at 10:59 AM, Paul Koning via cctalk <cctalk at classiccmp.org>
>>>> wrote:
>>
>>>> Typically you'd emulate the I/O device functionality, regardless of whether
>>>> that is implemented in gates or in co-processor firmware. That's the
>>>> approach taken with the MSCP I/O device emulation in SIMH, or the disk
>>>> controller emulation in the CDC 6000 emulator DtCyber.
>>
>>> It’s also what’s done in Hercules (S/370, 370/XA, 390, Z simulator) and the
>>> mainframe I/O is complex to say the least.
>>
>> Also the method used by the KLH10 emulator (KS-10, KS-10/ITS microcode, KL-10).
>> There, each device type runs in a separate fork, using System V style memory
>> mapping. This of course means that it only runs under certain Unix variants.
>
> I haven’t looked at KLH10 in a long time, but Hercules runs on a lot of different platforms
> including Windows (and I would not call that a Unix variant by any stretch of the imagination).
>
Hercules uses posix threads, not forks, however, each device does not necessarily
get it's own thread. It's pretty portable stuff though. With very few tweaks,
I run it on VMS.
Regards,
Peter Coghlan.
>
> TTFN - Guy
>
More information about the cctalk
mailing list