Unknows S-100 System

Roy J. Tellason rtellason at verizon.net
Sun Sep 23 11:35:38 CDT 2007


On Sunday 23 September 2007 01:34, Chuck Guzis wrote:
> On 22 Sep 2007 at 21:34, dwight elvey wrote:
> >  I saw someone mention the NSC800. I don't think it was mentioned
> > that the NSC800 runs Z80 instructions but has the exact same
> > pins and interface as the 8085.
>
> Not the same pinout at all; and some signals have inverted polarity.
> What's similar is the timing (so the 8085 peripheral chips work)--and
> the multiplexed data/address bus.  It has the three "half-INT"
> signals, but TRAPs to 0066h, like the Z80 and not 0024H  like the
> 8085.  There are no RIM and SIM instructions, and therefore, no
> SID/SOD pins.  There is also a low-power "sleep" feature.
>
> To control the masking of the half-interrupt pins, since there's no
> SIM instruction, there is a mask register located at I/O port 0BBh,
> accessed by executing an output instruction--but only when accessing
> the port via the indiirect "input/output to (C)" instructions; the
> 0D3h output and 0DBh input to immediate port function normally,
> without accessing the internal register at 0BBh.

That's odd.  :-)

> I never really considered the Z80 to be faster than the 8085, with
> perhaps the exception of the 2-byte jump instructions.  For
> everything else, the Z80 seemed to be roughly as fast for most
> things. But the Z80 was easier to program, particularly with the IX
> and IY registers, particularly with the 8-bit displacement.

I never really made use of those,  myself,  nor saw much source code for stuff 
that did.

> And I suppose interrupt servicing could be faster for high-priority
> interrupts where the alternate register set could be used.

That's what Osborne did on the Executive,  in their 1.2 ROM,  which turned out 
to be a mistake for software that wanted to use that alternate register set.  
>From what I understand this was a problem with Turbo Pascal (which I never 
used),  I found it to be a problem with Mix C,  where attempting to do 
anything dropped you back to a command prompt.  The solution initially was to 
automatically run a little program I found out there called "TPATCH" (I guess 
for Turbo Pascal),  that patched the code.  Eventually I got an image for the 
1.21 ROM and burned one and put it in there,  which changed that bit of code.

The Exec's technical manuals contain ROM source and detail this.

> One real pain with the 8085 was the input and output instructions.
> No indirection at all; just an immediate-valued port.  One of the
> engineers set up a peripheral that mapped into 64 I/O locations that
> essentially forced us into self-modifying code to plug the port
> address into a DBh or D3h instruction.  That wasn't too bad normally,
> but we had to access the ports during POST, which meant moving the
> code to RAM from ROM so we could modify the I/O instructions.

That I/O capability and relative jumps are what I like most about the Z80.

> What irritated me was that Intel never documented the additional 8085
> instructions, even though they seemed to be present on every version
> of the chip Intel (and second sources) ever produced.  Because they
> weren't "officially" documented, we adopted a policy that they should
> not be used to avoid possible future "surprises".

What are these?  I remember some stuff in the magazines early on (probably 
Byte,  in its first year of publication or so) and have run across some stuff 
on the 'net about undocumented z80 opcodes,  most of which don't seem to be 
terribly useful,  but this is the first I've heard of undocumented 8085 
codes.

> I've got about 20 of the 40-pin DIP NSC800s; 3MHz ones, I believe.

Do you know of any handy data online for the part?  A basic overview and maybe 
some info on the instruction set and hardware would be nice.  Somehow or 
other I never managed to get a hold of any when that chip hit the market.

Are those easy enough to find these days if one wanted to play with 'em?

-- 
Member of the toughest, meanest, deadliest, most unrelenting -- and
ablest -- form of life in this section of space,  a critter that can
be killed but can't be tamed.  --Robert A. Heinlein, "The Puppet Masters"
-
Information is more dangerous than cannon to a society ruled by lies. --James 
M Dakin




More information about the cctalk mailing list