From: "Randy Brukardt" <randy@rrsoftware.com>
Subject: Re: Z80 trst circuit
Date: Fri, 29 Jan 2016 15:55:34 -0600
Date: 2016-01-29T15:55:34-06:00 [thread overview]
Message-ID: <n8gn4n$5l9$1@loke.gir.dk> (raw)
In-Reply-To: 2084722069.475747788.515903.laguest-archeia.com@nntp.aioe.org
"Luke A. Guest" <laguest@archeia.com> wrote in message
news:2084722069.475747788.515903.laguest-archeia.com@nntp.aioe.org...
> Randy Brukardt <randy@rrsoftware.com> wrote:
>
>>> Do you have Any advice re this?
>>
>> Not really. Ada 2012 is way different than the subset of Ada 83 that we
>> had
>> on the Z80. I don't remember off-hand precisely what Ada features were
>> available on that compiler; I know we had some software floating point,
>> and
>> certainly not any tasking. But certainly there wasn't anything like
>> tagged
>> types, or dispatching, or preconditions.
>
> You can definitely do multitasking on Z80, I've seen projects that do it,
> they use memory banking to implement it though.
It's surely possible; we did it on the 8086 using early MS-DOS, and that's
essentially the same sort of hardware (with a 16-times bigger address
space). And it's the address space that's the problem; our task runtime
takes up approximately 32K on the 8086, but of course on a pure 16-bit
processor that would leave almost no space for the program. (The rest of the
runtime was around 4K, if I remember right.) I'm sure you could do better
with a Ravenscar task supervisor (that of course didn't exist in 1984), but
it still would be a substantial amount of the code space available.
We used the equivalent of memory banking to expand the data space on 8086
processors (it allows our 16-bit compilers to compile programs about 3 times
larger than they otherwise could), but using that with code would be very
difficult. <Shivers>
Randy.
next prev parent reply other threads:[~2016-01-29 21:55 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-01-27 10:26 Z80 trst circuit Luke A. Guest
2016-01-27 20:24 ` erlo
2016-01-28 0:26 ` Randy Brukardt
2016-01-28 10:07 ` Luke A. Guest
2016-01-28 21:58 ` Randy Brukardt
2016-01-29 8:11 ` Luke A. Guest
2016-01-29 21:55 ` Randy Brukardt [this message]
2016-01-29 21:47 ` erlo
2016-01-28 0:58 ` patrick
2016-01-29 21:47 ` erlo
2016-01-28 0:58 ` patrick
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox