Page 3 of 8

Re: Asymmetric multiprocessing...

Posted: Sun May 19, 2019 8:45 am
by RalfR
Derek_Stewart wrote:I doubt the author of the Tracker is available. But maybe Martin Head's Decompiler can restore the source code.
The Wiki states Dan and Tom Gaffey as authors. Beside the Tracker program itself there are also a few machine code extensions written in 1991 by Phil Borman.

Re: Asymmetric multiprocessing...

Posted: Sun May 19, 2019 9:30 am
by Derek_Stewart
Dave wrote: Have you worked out a schematic, or got clear photos of the MIDI board? It sounds like it would be a very interesting thing to see. MIDI has been whispered in my ear more than a few times in the last 3-4 years.
Hi Dave,

On the Yahoo QL Hardware Gorup, someone posted some QL schematics and layout files, which included the Miracle MIDI board, see below:

Schematic:
midi_sch.pdf
Miracle Systems MIDI Interface Schematic
(16.18 KiB) Downloaded 124 times
Layout:
midi_lyt.pdf
Miracle Systems MIDI Interface Board Layout
(3.52 KiB) Downloaded 117 times
I have not checked them against the original, but they look about right.

I was going enter the Schematic in KiCad, but long way down the list.

Re: Asymmetric multiprocessing...

Posted: Sun May 19, 2019 8:25 pm
by Dave
1024MAK wrote:....for a basic system you don’t need dual port RAM. One third party Z80 second processor system for the Acorn BBC B used two PIO chips back-back for processor to processor communications. In this case a 6522 VIA for the 6502 and a 8255A for the Z80A.
Nothing *needs* dual port RAM.

But:

If I put a Z80 on 64K of DPRAM, the entire address range of the Z80 is accessible by both machines. The QL can provide ROM to RAM, do IO, video, act as any device you want simply by software. Though DPRAM sounds complicated and expensive, it's simpler and cheaper than implementing IO and video for the Z80 side. It also makes the entire system 100% software defined from the QL side.

It can be ANYTHING you want.

Re: Asymmetric multiprocessing...

Posted: Sun May 19, 2019 8:30 pm
by Dave
Derek_Stewart wrote:I have not checked them against the original, but they look about right.
So Dn -> ZAn and An -> ZDn? Why would they do that?

Re: Asymmetric multiprocessing...

Posted: Sun May 19, 2019 11:19 pm
by Derek_Stewart
Hi,

I do not know...

Re: Asymmetric multiprocessing...

Posted: Mon May 20, 2019 9:06 am
by Pr0f
It could be that the QL is an I/O peripheral of the z80 - during I/O fetches, only bottom 8 bits of address bus are used.

Since the ROM port has no write strobe, the lower order address bits can be used to 'write' a data value.

It's a crazy Heath Robinson scheme, but quite elegant in it's way....

Re: Asymmetric multiprocessing...

Posted: Tue May 21, 2019 3:05 pm
by Silvester
Dave wrote:
Have you worked out a schematic, or got clear photos of the MIDI board?. It sounds like it would be a very interesting thing to see.
Hmm, the schematic was in http://www.dilwyn.me.uk/docs/hardware/QLperip.zip (was I wot did it).
Dave wrote:
MIDI has been whispered in my ear more than a few times in the last 3-4 year.
But that can be better done with fast SERial 68681 (one of the reasons why I'm doing it); 31250 MIDI option with opto-isolators along with full SER.
Ralf R. wrote:
Great to hear. I fear, Tracker was Turbo compiled (but with an older version). Any chance to contact the author to get the source code?
I was given Tracker source code many years ago, I think it may already be on Dilwyn's site, if not I'll send him a copy.
Derek_Stewart wrote:
On the Yahoo QL Hardware Gorup, someone posted some QL schematics and layout files.
Also in QLperip.zip

Re: Asymmetric multiprocessing...

Posted: Tue May 21, 2019 3:24 pm
by Silvester
Oh that reminds me, when I first tried the MIDI interface with a Gold card it was double stepping (as each byte of Z80 code is uploaded it should 'read' back an incrementing address number). Thinking it may be due to GC 68000 not having A0 and it was doing a word access I did a quick remedy by swapping A0 for A8 and it worked OK (see schematic).

Many years later I tried it on another QL with same GC and it didn't exhibit the same behaviour :? Maybe issue number of QL, I can't recall which I used.

Recently saw Marcel's SD investigations into solving GC/SGC problems where he shows short-lived glitch on access, sounds like it may be reason for double step?

https://www.kilgus.net/2018/02/02/clone ... ard-clone/

Re: Asymmetric multiprocessing...

Posted: Tue May 21, 2019 5:09 pm
by Dave
Silvester wrote:But that can be better done with fast SERial 68681 (one of the reasons why I'm doing it); 31250 MIDI option with opto-isolators along with full SER.
You'd have to change the crystal to get the right baud rate out of the 68681, so you would need to use a separate 68681 for MIDI and for serial. If the crystal frequency is changed to 3MHz, using the division ratio 96, the MIDI 31.25k baud rate will be matched exactly.

Re: Asymmetric multiprocessing...

Posted: Tue May 21, 2019 5:22 pm
by dilwyn
Silvester wrote:
Ralf R. wrote:
Great to hear. I fear, Tracker was Turbo compiled (but with an older version). Any chance to contact the author to get the source code?
I was given Tracker source code many years ago, I think it may already be on Dilwyn's site, if not I'll send him a copy.
The Tracker software itself, plus the MIDInet software IIRC, is in http://www.dilwyn.me.uk/misc/midi_tracker.zip

Afraid I can't remember if it contains source code - at least I don't *think* it does (from memory)