Date : Wed, 25 Feb 2004 10:37:06 +0000
From : Richard Gellman <splodge@...>
Subject: Re: Draft protocal for externally emulated hardware
Jonathan Graham Harston wrote:
>>>Jonathan Graham Harston wrote:
>>>
>>>
>>>>What would be needed is a generally agreed protocol by which a BBC
>>>>emulator passes hardware access to hardware it doesn't implement
>>>>itself to other modules to allow them to pick it up. A minimum would
>>>>
>>>>
>
>
>
>>On 24 Jan 2004 at 2:07, Richard Gellman wrote:
>>
>>
>>>I be many steps ahead of you :)
>>>
>>>
>
>tom@... wrote:
>
>
>>I've had a think about this this morning. It's something I've wanted
>>to do too. I've come up with a header file with some structs and
>>
>>
>
>At http://www.mdfs.net/Docs/Comp/BBC/RISCOS/EmulatedIO I've put together a
>draft specification of how a 6502-based emulator (such as a BBC emulator)
>running on RISC OS can pass accesses to unknown I/O to an external module.
>
>I'd welcome comments, and even more I'd welcome adoption, and translation
>of the concept into other platforms.
>
>
>
I like the idea, but the draft seems to be heavily biased towards
assembler, particularly ARM-based. What is needed perhaps is a wrapper
between the register sets at the C level, so that on the ARM platform at
least, the two are the same, but only the C header remains on other
platforms (perhaps this is what you are already implying, and I'm just
misreading you).
This would ideally be incorporated with respect to hardware emulation
plugins. The idea would be that as much hardware as possible would be
emulator-accessed via a plugin, which while having a universal interface
at the emulator side, differiing plugins would, either map to an
emulatied resource, or a host interface.
As an exmaple, consider the BBC serial port. One plugin would offer a
mapping of this direct to the PC serial port, where as another could be
written to provide a telnet interface, possibly even a plugin to support
web browsing through the serial port could be done (if so desired).
This is the concept I was going for in a later version of BeebEm. I too
would welcome comments.
-- Richard Gellman