Subject: Re: pmax/mips HUGE modification
To: None <david@mono.org>
From: Toru Nishimura <nisimura@itc.aist-nara.ac.jp>
List: port-mips
Date: 03/04/1997 09:56:41
Hi.

David Brownlee <david@mono.org> wrote;

> I do not have a mips based machine yet, but may be picking up
> a magnum based machine in a few months (if I do not, then the
> person who has it now would love to use NetBSD on it :)

I once tried to run 4.4 BSD porting project to MIPS Computer Magnum
Rx3230 produect line.  I'm glad to hear from someone also interested in.

My project was abandoned around 1993 May just because of my lack of
experience.  Before that, I made a little research on MIPS Co. product
line.  The major obstacle with 3230 was "RAMBO" I/O ASIC.  It looked
extremely smart device which can archive amazing I/O performance.
RISC/os provided all of device driver source codes, though I could not
figure out how to run RAMBO ASIC correctly and efficiently.

At the very last stage of dying MIPS Co., the company made two
distinctive computers; M-120/RC3240 and Rx3230.  Former was codenamed
"Intrepid," latter was codenamed "Pizazz" (Magnum was the marketing nick
name).

They were contrastive machines.  Intrepid was made with off-the-shelf
standard devices.  On the other hand, Pizazz was a much more
aggresively designed machine.   So, my conclusion was at the time, porting
BSD UNIX for Intrepid was easier than for Pizazz.  Once done for Intrepid,
Pizazz port would be archieved with less effort than through straight path.

Here goes some excerpts from my private document which happens to be
still kept in my home directory;

//// short product description ////

M/120-5         16.7MHHz R2000/R2010, 128KB I&D caches, 8-24MB main
                memory, DMA SCSI controller, 5.25" 328MB disk, 120MB
                QIC-120 1/4" cartridge tape drive, DMA Ethernet controller,
                4 RS-232C ports in base system, 4 AT bus slots

RC3240          (R3000 M120) 25MHz R3000/R3010, 128KB I&D caches, and 48MB
                main memory, DMA SCSI controller, DMA Ethernet controller,
                four ATbus slot, one 5.25" 328MB disk, 120MB QIC-120 1/4"
                cartridge tape drive, 8 RS-232C ports

Rx3230          25MHz R3000/R3010, 64KB I&D cache, 128MB main memory,
                builtin monochrome framebuffer or optional colour board,
                3.5" SCSI hardisk drive, 1.44MB floppy disk drive, 150MB
                QIC-150 1/4" cartridge tape drive

//// MIPS board type distinction ////

        R2400           "Intrepid" M120/RC3240 cpu/motherboard
        R3030           "Pizazz" R3030 motherboard

//// Intrepid components ////
	(names in the left column are of RISC/os device driver source files)
udc.c           Am9516 Universal DMA controller (UDC)
spc.c           Fujitsu MB87030 SCSI protocol controller
spc_poll.c      Fujitsu MB87030 SCSI protocol controller
scsi.c          Intrepid SCSI disk and tape driver
sduart.c        STREAMS async serial driver for signetics SCN2681 (MC68681) 
todc.c          i8254 programmable RTC and MK48T02 TOD

//// Pizazz components ////
asc.c           NCR53C94 Advanced SCSI Controller
asc_poll.c      NCR53C94 Advanced SCSI Controller
r3030_scsi.c    Pizazz SCSI disk and tape driver with RAMBO
fl8272.c        i8272 floppy disk driver
scc.c           STREAMS async serial driver for Zilog Z85C30 
graf_r3030.c    3030 Graphics board interface
cons3030.c      3030 console driver for various display/keyboard configurations
mono.c          Monochrome graphics using RAMBO DMA controller/timer ASIC
r3030_mono.c    Monochrome graphics using RAMBO DMA controller/timer ASIC
keymap_r3030.c  3030 AT keyboard/UNIX keyboard kerycode map
pkdb.c          STREAMS keyboard driver for RS3230
todc_r3030.c    RAMBO RTC and MK48T02 TOD

Now, here is the list of files I tried to make for 4.4BSD/mips project.
        sys4.4mips/
            dev/
                ramboclock.c    RAMBO RTC and TOD manipulation
                asc.c           NCR53C94 Advanced SCSI Controller
                scsi.c          SCSI driver core
                sd.c            SCSI disk
                st.c            SCSI tape
                scc.c           85C30 SCC serial driver
                if_le.c         LANCE
                kbd.c           i8742 AT compatible keyboard processor
                console.c       generic console driver
                cfb.c           COLOR display framebuffer
                mfb.c           MONO display framebuffer
                nvram.c         non volatile memory read/write
            pizazz/
                locore.s        
                trap.c          CPU trap and interrupt processing
                clock.c         real time clock which resides in RAMBO ASIC
                machdep.c
                pmap.c		MIPS pmap
                mem.c
                sys_machdep.c
                vm_machdep.c
	    intrepid/
		<.not.done.>

//// device interrupts /////

   Pizazz assignments
       7       Intr5   DMA parity error/LANCE parity error/VIDEO
       6       Intr4   Floppy
       5       Intr3   FPA
       4       Intr2   DMA timer
       3       Intr1   DMA channel 1/ASC
       2       Intr0   LANCE/SCC/Keyboard/Mbus/ATbus
       1               Software network interrupt
       0               Software clock interrupt

   DECstation assignments (for comparisons)
       DEC Pmax: DS3100
                        7      fpa
                        6      memory/video
                        5      scheduling clock
                        4      console lines
                        3      lance
                        2      sii
       DEC 3max: DS5000
                        7      fpa
                        6      -
                        5      memory
                        4      -
                        3      scheduling clock
                        2      IO devices

Unfortunately, computers made by MIPS Co. were ill-engineered
products.  They were errorprone.  From my limited experieces, they
easily got broken.  We had many broken RC2030s (early times RISC desktop
with sloooooow R2000, codenamed "Jupiter") and many broken RC3230s.
We stock them unwillingly and dumpped eventually with dissappointments.
And MIPS Co. itself gone.  Gggggg........  (Step down from soapbox)

Tohru Nishimura
Nara Institute of Science and Technology