home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!zaphod.mps.ohio-state.edu!mips!mips!public!thad
- From: thad@public.BTR.COM (Thaddeus P. Floryan)
- Newsgroups: comp.sys.3b1
- Subject: Re: Xinu for the 3b1
- Message-ID: <7512@public.BTR.COM>
- Date: 26 Jul 92 21:57:44 GMT
- References: <1992Jul23.001609.23161@shibaya.lonestar.org>
- Organization: BTR Public Access UNIX, Mountain View CA
- Lines: 151
-
- In article <1992Jul23.001609.23161@shibaya.lonestar.org> afc@shibaya.lonestar.org (Augustine Cano) writes:
- >I just came across the following in misc.forsale.computers:
- >[...]
- >Betty ported Xinu to these machines, the boards from which we now use
- >as standalone Xinu machines for OS courses. You can get her source
- >code with anonymous ftp to ftp.cs.umb.edu in directory /pub/xinu7300
-
- Enclosed is the info on the 7300/3B1/UNIXPC Xinu. The sources to "XINU"
- itself are NOT at ftp.cs.umb.edu
-
- Thad Floryan [ thad@btr.com (OR) {decwrl, mips, fernwood}!btr!thad ]
-
- ---------- begin enclosure
-
- ftp> status
- Connected to bach.cs.umb.edu.
- Mode: stream; Type: binary; Form: non-print; Structure: file
- Verbose: on; Bell: off; Prompting: on; Globbing: on
- Hash mark printing: off; Use of PORT cmds: on
-
- ftp> pwd
- 257 "/pub/xinu7300" is current directory.
-
- ftp> dir
- 200 PORT command successful.
- 150 Opening ASCII mode data connection for /bin/ls.
- total 477
- -rw-r--r-- 1 502 wheel 5085 Jun 18 1991 README
- -rw-r--r-- 1 502 wheel 421108 Jun 18 1991 XINU.tar.Z
- -rw-r--r-- 1 502 wheel 9711 Mar 19 21:30 disserver.tar.Z
- -rw-r--r-- 1 502 wheel 38703 Jun 18 1991 mtip.tar.Z
- 226 Transfer complete.
- 271 bytes received in 0.14 seconds (1.89 Kbytes/sec)
-
-
- Contents of the README file:
-
-
- Xinu for the ATT7300 (3B1) and MECB (Motorola Educational Computer Board)
-
- This is an implementation of the Vol. I Xinu for diskless singleboard
- 68000/68010 systems. The ATT7300 is the preferred system, having
- at least .5M memory vs. the MECB's cramped 32K.
-
- ATT7300 hardware and the Xinu support provided here:
-
- MC68010, 10Mhz
- .5M-2M onboard memory, up to 4M with expansion memory
- VA space of 4M, monolithic page table (not used here for paging)
- RS232 port with software-selectable baudrates to 19.2K baud, with
- NEC7201 SLU (used for Xinu console)
- Line clock interrupting at 60Hz, used for Xinu clock.
- Keyboard interface with MC6850 SLU--Xinu tty driver for it here, but
- not compatible with the serial encoding from the native keyboard,
- so you need to attach another terminal to use it.
- Centronics parallel printer port (start on LPR driver here, fleshing
- it out is a good student project)
- Floppy disk--not supported in Xinu, but used to boot monitor/downloading
- system
- Hard disk--not supported or needed.
- Realtime clock--not supported in Xinu.
- Telephone interfaces--not supported.
- Bitmap graphics monitor interface--not supported.
-
- MECB hardware and Xinu support:
-
- MC68000 CPU, 4Mhz
- 32K memory
- 2 serial ports, each with MC6850 SLUs, available as Xinu ttys or
- dlcs. Easy to add a third MC6850 at 0x30001, for 2nd dlc.
- (However running a Xinu net takes more than 32K memory, not so easy)
- MC68230 PI/timer: Timer used as Xinu clock, setup for LPR driver
- using PI.
-
- Changes to Xinu required by this port
-
- A major aim was preserving the original code as far as possible,
- so that Comer's text (Vol I) is still highly relevant. One
- problem here is that the ATT7300 has 2 different SLU chips, the
- NEC7201 and the MC6850. To mask the differences, all the required
- hardware actions are carried out by macros, and the necessarily
- device-dependent entry points such as ttyoin and ttywrite are
- now TTYOIN and TTYWRITE, expanding as required to ttyoin7201
- or ttyoin6850, etc., so that ttyoiin7201.o68, the resulting
- object file, has the macros expanded for the 7201 chip.
- One could simplify back to one chip by ignoring the 6850
- altogether--it requires making a special cable to be useful.
-
- Development Host Assumptions
-
- We are downloading Xinu from Suns on which we run Gnu C/as/ld, but
- nothing added to Xinu has been written to require ANSI C. So it
- should all build with Sun cc or other pre-ANSI C. The assembler
- sources are in Sun/Gnu syntax, not Motorola syntax nor the still
- different ATT7300 assembler. Luckily this is a very small part
- of the system.
-
- Turning an ATT7300 into an online standalone system.
-
- The ATT7300 as delivered as a UNIX PC has only a turnkey ROM
- program, that initializes the sytem and boots off the floppy
- disk or hard disk, normally the file "/unix", but this can be
- any executable. Thus at least a download program needs to be
- here--see below for our software.
-
- It is straightforward to attach the DTE port of the ATT7300 to
- a serial line, and use whatever system you have to download to
- it. In addition, you need to be able to reset it from the host.
- We have one MECB dedicated as a reset server to all the online
- standalone systems, and the signal from it needs to be connected
- into the reset logic of the 7300. Note that it uses an RC circuit
- to debounce the reset button, so a TTL-type signal needs gain
- before being connected into this circuit, unlike the MECB that
- uses butterfly-connected gates to debounce its reset button.
-
- Downloading/monitor software on the ATT7300
-
- In libsa_on7300 and tutor_on7300 there are the sources for software
- to be built on the ATT7300 running its own UNIX, then written
- to a floppy disk to be read in on reset from the development
- host. The "Tutor" debugger follows the command syntax of
- Motorola's TUTOR series, doing breakpoints but not disassembly.
- There is also "remcom" support for remote gdb built in but not
- yet working--maybe by the end of summer. Getting this working
- from a bare machine was the greater part of this effort--once
- you can download it's easy to do software work, and it means
- you've already got a working serial driver. The 7300's serial
- interface (NEC7201) is ridiculously complicated--I can't imagine
- why they chose this particular chip. The downloading is of
- course just one end of the system we use--we can supply the
- host end too if you want--pick up mtip.tar as well for this.
-
- Running non-Xinu programs.
-
- The two libraries libsa and libxc together provide a C standalone
- programming environment completely separate from Xinu. The
- top-level directory sa_examples has a few sample programs and
- a Makefile. In the top-level sa directory are headers for the
- MMU and PI as well as the Xinu-supported parts of the hardware.
-
- Support
-
- As usual, no support is guaranteed, but please write to eoneil@cs.umb.edu
- with any problems and I'll try to help. In particular, although
- this implementation is known to Purdue and Doug Comer, and this
- method of distribution is OK with them, they have no time to
- support such specific ports as this.
-
- Betty O'Neil June, 1991
-
- ---------- end enclosures
-