8085 IO ports

Tony Duell ard.p850ug1 at gmail.com
Tue Jan 17 10:53:57 CST 2017

On Tue, Jan 17, 2017 at 1:15 AM, Adrian Graham
<witchy at binarydinosaurs.co.uk> wrote:
> On 15/01/2017 14:38, "Tony Duell" <ard.p850ug1 at gmail.com> wrote:
>> But do you know it''s not doing I/O. OK IO/M is never going into the
>> right state for
>> I/O, but what that _really_ means is that the 8085 is never executing
>> any IN or OUT
>> type instructions. But of course memory mapped I/O is possible
>> (storing or loading
>> at particular locations that happen to be I/O devices) on any processor that
>> can
>> access memory (including the 8085). I've seen small 8085 and Z80 control
>> systems
>> with only memory-mapped I/O.
> I pondered that too but the reference says IN and OUT are used for
> non-memory mapped I/O and there's a few of those instructions in the code.
> Whether they're being executed at this point in time is moot.

Basically, memory mapped I/O means having devices addressed as memory that
perform I/O functions. You access them with the same load/store
instructions that
you use on real memory. On some processors (6502, 6800, 68000. PDP11, etc)
that's all you have, there are no special I/O instructions. On others
(8080, 8085,
Z80, PDP8, P850, etc) you have special I/O instructions accessing I/O devices.
The address spaces are totally separate, I/O location 0 has nothing to do with
memory location 0. On the 8085, an I/O instructon (IN or OUT) will cause
IO/M to be asserted (other state from when the CPU is accessing memory).

Note that on a machine with I/O instructions (like the 8085) there is
(a) nothing
to stop you having memory mapped I/O (that processor can access memory),
and (b) nothing to stop you having a mix of memory mapped and I/O mapped
I/O. You might have simple devices mapped as I/O ports, but video memory
(which is a sort-of I/O device in that storing something there causes it to
appear on the screen) memory-mapped. As an aside, the TRS-80 model 1
had almost everything (video, keyboard, printer port, etc) _memory mapped_,
the only standard I/O mapped device was the cassette unit.

> I've now traced all of them and its associated pair of supporting chips
> (LS04 and an MM74C906) and it's a tape controller, it's only using port 2
> and all the lines go to the tape drive header.
>>> There are also 3 modules on the phone side which I can't find anything
>>> about, marked "NKT NMC1515", NMC1516 and NMC1517.
>> Are these potted blocks, or can you see the components on them?
> They're the big green rectangles visible in this picture -

Ah.... I can see what appear to be thick-film resistors on them
(the black rectangles). Are there more conventional components
on the underside?

> http://www.binarydinosaurs.co.uk/STCexecutelboard.jpg
> The D8741A is above them and the SAA5070 LUCY chip is to the right.
>> Could this be part of the serial data transfer? There will be incoming data
>> at 1200 baud. There should be some kind of demodulator (maybe one of the
>> modules) and a serial-to-parallel converter You've not mentioned a serial chip
>> (is there one), if not then I would expect it to be simulated in software.
>> Maybe on the 8085, maybe on the 8741.
> LUCY does that, it's also where the keyboard connector's lines split off so
> the whole data bus goes up to the keyboard module too. I now need to check

Ah, I'd forgotten there was an SAA5070 on this board...

> Now, having just typed that it's making me think of what Allison said about
> lightning or ESD, I know the previous owner of this machine powered it up
> before putting it on eb*y and 'the smoke came out' which I thought initially
> was just the RIFA mains filter popping (it had), but look at this picture:
> http://www.binarydinosaurs.co.uk/STCExecutelBlownCaps.jpg
> These are on the tape drive controller board and I thought they'd rotted
> through exposure to moisture for several years but could they have exploded
> instead? The damage looks old so I don't think that power up is responsible.

What is the tape drive? That board has a distinct look of Philips about it. What
tapes does it use? If I were a gambling man I would guess at Phlips
(not microcassettes). I think I know that drive...

If it is the drive I am thinking of, I have one somewhere, meaning I can look up
the capacitors.

But I would expect the thing to produce video without it.

I don't suppose you have a logic analyser? This is the sort of problem
that would
have me using said instrument to see what the processor is executing.


More information about the cctalk mailing list