Subject: Re: Multiple Extensions?
To: RC5Stint <rc5stint@yahoo.com>
From: M. R. Brown <mrbrown@0xd6.org>
List: port-dreamcast
Date: 07/17/2001 10:08:59
* RC5Stint <rc5stint@yahoo.com> on Tue, Jul 17, 2001:

> 
> This is what I know.  I gleaned it from reading the archives for this and
> other Dreamcast development lists, and reading some sites out there.
> 

Hehe, no offense, but I think some of it is also "wishful thinking" :P.

> The Dreamcast uses a propietary bus Sega called the Maple bus.  But the BBA
> and modem are built around common PCI-based chips!  To hook up these
> PCI-based solutions to the Dreamcast, Sega built a proprietary Maple bus to
> PCI bus bridge chip.
>

The Maple Bus is a serial bus/protocol used for input peripherals, and has
nothing to do with the Expansion Port.  See Marcus Comstedt's page
(mc.pp.se/dc/) for detailed info on how the Maple bus works.  You could
almost substitute "G2" and "G1" in place of all the times you used Maple,
I'll elaborate below.  Another good page that breaks down (using a good 'ol
block diagram) the DC internals is the Dreamcast Technical Pages
(www.segatech.com).

There are a few "buses" that operate in the DC, the PVR2 and a couple of
other things sit on one (again, see the DC tech pages, I can't access them
now), and the AICA system, GDC, and expansion port sit on the other.  I
still don't know which one is G2 and which one is G1, but I think Maple
belongs to G2.  The bus that the AICA & expansion port sit on runs at
66Mhz, a bit slower than devices on the G2 bus ;-).

> [Inside Dreamcast][              Inside BBA or modem      ]
> [   Maple bus -->][bridge -> PCI bus -> NIC or modem chips]
>
      ^^^^^
      G2/G1 bus (see DC Tech Pages - I forget which is which)

> You could take the modem apart and use the bridge chip in your own projects.
> But the bridge chip may not know how to map multiple PCI devices to the
> Maple bus.  It's worth a try, though.  It might save you some work.
> 

I've never heard of anyone doing this.  The ISA/IDE interfaces are
connected directly to the expansion port, and the only thing I could see
someone using from the all-but-useless modem would be the expansion port
connector itself.  And the glue ASIC in the modem is different from the one
in the BBA, AFAIK.  The idea of using the PCI glue ASIC in the BBA for
connecting an entire PCI bus was something I had thought about before, but
I'm not an EE guy, and I've never heard of anyone attempting to do this ..
so at the risk of being ignorant, I'd have to say it's not being done.
That's why I called it "wishful thinking" above.

> Or you could build your own bridge, and map as many quantities of devices
> and as many different bus types to the Maple bus as you want.
> 

That's a plausible theory - but it's never been tested or verified, AFAIK.

> I haven't done this; electronics aren't my strong suit.  But from all this
> information, it certainly looks possible.  One thing to consider, though, is
> that you would also have to write/port your own drivers.
> 

The authoritive source (hehe, for DC hacking? ;-) on this would be Marcus
Comstedt, who has done the most (publicly, at least) in reversing DC
hardware.  You also might want to try bITmASTER, or the gents on this list
who actually built the ISA/IDE interface.  They'll explain it better than I
could ;-).

M. R.