Subject: Re: Alpha PC 150 port ?
To: None <port-alpha@NetBSD.ORG>
From: Chris G Demetriou <Chris_G_Demetriou@LAGAVULIN.PDL.CS.CMU.EDU>
List: port-alpha
Date: 05/23/1995 19:06:00
[ Niko Schuessler sent me this mail about the DECpc AXP 150, and gave me
  permission to reply to it here on the list... ]

> heh :) got your second message :) Can you point me (just in
> case I have this wild programming urge) ?

well,
	http://www.netbsd.org/Ports/alpha/doc-list.html#EK-A0638-TD
is a starting point.

That's my description (and ordering information) for the DEC
"KN121 System Module Programmer's Reference Information"
manual.

It's a not-inexpensive manual, that details (in a sometimes-lacking
way) the system-level information needed by OS writers hoping to get
running on the DECpc AXP 150.  (it's marked 'PRELIMINARY' on every
page, and cost $220 or thereabouts.)

> Do you have any idea
> how close the 3000/xxx series and the DECpc are ... will it take
> a "complete" re-write or can one borrow extensively from the existing
> alpha code ?

In terms of the processor, they're effectively identical.

The difference is in the I/O devices; the 3000/xxx machines use
turbochannel peripherals, while DECpc AXPs use EISA ones.

In theory, it shouldn't be too hard to make the i386 driver for
e.g. the AHA1742 work on the alpha.  In fact, i was working on getting
the DECpc AXPs to run NetBSD, and i got them to the point that they
could identify devices on the EISA bus, etc.  I stopped soon
afterwards, so i don't know how hard it would be to actually _use_ the
devices, but basic stuff like inb(), outb(), et al. were easy enough  8-)

The one thing that's _really_ weird about the DECpc AXP is that the
non-EISA system peripherals (e.g. the clock, serial chips, keyboard
controller, etc.) DON'T live in the EISA address or I/O space!  They
live in a seperate chunk of i/o memory, and interrupt the CPU
directly.  This was the kicker for me; i realized that that is
_nothing_ like the way the AlphaStations work, and therefore that it's
not worth my time to actively pursue a DECpc AXP port.

So, in other words, it shouldn't be too hard, but there are some
relatively complicated issues to deal with, in terms of dealing with
the devices.

> Is this gonna take some assembly programming ?

No, it wouldn't.

> The alpha I have has a NT bios/prom instead of the unix variety ...
> is this gonna make things harder ?

I dunno about this.  As far as i'm aware, AlphaStations (the PCI-based
alphas) have the VMS/OSF console + PALcode _and_ the NT
console/PALcode built in by default.

I don't know if the same is true of the DECpc AXP, but if it's _NOT_
then you'll have a problem.  you need to be using a console/PALcode
combination that can support OSF/1.

> And last, but not least,
> am I asking a lot of questions that are in the docs ? :)

Not really...


later,

chris