I studied how the Z80 softcard works many years ago and I think the 6502
was halted while the Z80 was working. The Apple' 6502 would 'wake up'
to perform I/O and for short periods of time to refresh its registers
which were built like dynamic RAM (needs refresh or it loses addresses
for program counter and stack pointer!) In short, it was one processor
at a time, plus they shared the same RAM.
Yes. I tried to emulate one of these.
The memory map for the Z80 was all mixed up compared to the 6502 map to
re-create the memory map of a CP/M system.
Really freaky. ;) It was like 0000H->$1000, B000H->$D000,
E000H->$C000, F000H->$0000 or something like that.
CP/M wasn't offering much service: serial and disk I/O (through BDOS)
and a return-to-OS system call. Since CP/M offers I/O, I guess it
wouldn't be too difficult to make Contiki use them.
Bringing CP/M to the Internet age: what a mad concept! Just like
riding a donkey on the freeway :).
Hey, I'd like to do some CP/M-86 hacking...I'm working on some
cross-compile hacks with Turbo C++ 1.01. Ideas? :D