home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / comp / sys / 3b1 / 2946 < prev    next >
Encoding:
Internet Message Format  |  1992-07-26  |  6.6 KB

  1. Path: sparky!uunet!zaphod.mps.ohio-state.edu!mips!mips!public!thad
  2. From: thad@public.BTR.COM (Thaddeus P. Floryan)
  3. Newsgroups: comp.sys.3b1
  4. Subject: Re: Xinu for the 3b1
  5. Message-ID: <7512@public.BTR.COM>
  6. Date: 26 Jul 92 21:57:44 GMT
  7. References: <1992Jul23.001609.23161@shibaya.lonestar.org>
  8. Organization: BTR Public Access UNIX, Mountain View CA
  9. Lines: 151
  10.  
  11. In article <1992Jul23.001609.23161@shibaya.lonestar.org> afc@shibaya.lonestar.org (Augustine Cano) writes:
  12. >I just came across the following in misc.forsale.computers:
  13. >[...]
  14. >Betty ported Xinu to these machines, the boards from which we now use
  15. >as standalone Xinu machines for OS courses. You can get her source
  16. >code with anonymous ftp to ftp.cs.umb.edu in directory /pub/xinu7300
  17.  
  18. Enclosed is the info on the 7300/3B1/UNIXPC Xinu.  The sources to "XINU"
  19. itself are NOT at ftp.cs.umb.edu
  20.  
  21. Thad Floryan [ thad@btr.com (OR) {decwrl, mips, fernwood}!btr!thad ]
  22.  
  23. ---------- begin enclosure
  24.  
  25. ftp> status
  26. Connected to bach.cs.umb.edu.
  27. Mode: stream; Type: binary; Form: non-print; Structure: file
  28. Verbose: on; Bell: off; Prompting: on; Globbing: on
  29. Hash mark printing: off; Use of PORT cmds: on
  30.  
  31. ftp> pwd
  32. 257 "/pub/xinu7300" is current directory.
  33.  
  34. ftp> dir
  35. 200 PORT command successful.
  36. 150 Opening ASCII mode data connection for /bin/ls.
  37. total 477
  38. -rw-r--r--  1 502      wheel        5085 Jun 18  1991 README
  39. -rw-r--r--  1 502      wheel      421108 Jun 18  1991 XINU.tar.Z
  40. -rw-r--r--  1 502      wheel        9711 Mar 19 21:30 disserver.tar.Z
  41. -rw-r--r--  1 502      wheel       38703 Jun 18  1991 mtip.tar.Z
  42. 226 Transfer complete.
  43. 271 bytes received in 0.14 seconds (1.89 Kbytes/sec)
  44.  
  45.  
  46. Contents of the README file:
  47.  
  48.  
  49. Xinu for the ATT7300 (3B1) and MECB (Motorola Educational Computer Board)
  50.  
  51. This is an implementation of the Vol. I Xinu for diskless singleboard
  52. 68000/68010 systems.  The ATT7300 is the preferred system, having
  53. at least .5M memory vs. the MECB's cramped 32K.
  54.  
  55. ATT7300 hardware and the Xinu support provided here:
  56.  
  57. MC68010, 10Mhz
  58. .5M-2M onboard memory, up to 4M with expansion memory
  59. VA space of 4M, monolithic page table (not used here for paging)
  60. RS232 port with software-selectable baudrates to 19.2K baud, with
  61.   NEC7201 SLU (used for Xinu console)
  62. Line clock interrupting at 60Hz, used for Xinu clock.
  63. Keyboard interface with MC6850 SLU--Xinu tty driver for it here, but
  64.   not compatible with the serial encoding from the native keyboard,
  65.   so you need to attach another terminal to use it.
  66. Centronics parallel printer port (start on LPR driver here, fleshing
  67.   it out is a good student project)
  68. Floppy disk--not supported in Xinu, but used to boot monitor/downloading
  69.   system
  70. Hard disk--not supported or needed.  
  71. Realtime clock--not supported in Xinu.
  72. Telephone interfaces--not supported.
  73. Bitmap graphics monitor interface--not supported.
  74.  
  75. MECB hardware and Xinu support:
  76.  
  77. MC68000 CPU, 4Mhz
  78. 32K memory
  79. 2 serial ports, each with MC6850 SLUs, available as Xinu ttys or
  80.   dlcs.  Easy to add a third MC6850 at 0x30001, for 2nd dlc.
  81.   (However running a Xinu net takes more than 32K memory, not so easy)
  82. MC68230 PI/timer:  Timer used as Xinu clock, setup for LPR driver
  83.   using PI.
  84.  
  85. Changes to Xinu required by this port
  86.  
  87. A major aim was preserving the original code as far as possible,
  88. so that Comer's text (Vol I) is still highly relevant.  One
  89. problem here is that the ATT7300 has 2 different SLU chips, the
  90. NEC7201 and the MC6850.  To mask the differences, all the required
  91. hardware actions are carried out by macros, and the necessarily
  92. device-dependent entry points such as ttyoin and ttywrite are
  93. now TTYOIN and TTYWRITE, expanding as required to ttyoin7201
  94. or ttyoin6850, etc., so that ttyoiin7201.o68, the resulting
  95. object file, has the macros expanded for the 7201 chip.
  96. One could simplify back to one chip by ignoring the 6850
  97. altogether--it requires making a special cable to be useful.
  98.  
  99. Development Host Assumptions
  100.  
  101. We are downloading Xinu from Suns on which we run Gnu C/as/ld, but
  102. nothing added to Xinu has been written to require ANSI C.  So it
  103. should all build with Sun cc or other pre-ANSI C.  The assembler
  104. sources are in Sun/Gnu syntax, not Motorola syntax nor the still
  105. different ATT7300 assembler.  Luckily this is a very small part
  106. of the system.
  107.  
  108. Turning an ATT7300 into an online standalone system.
  109.  
  110. The ATT7300 as delivered as a UNIX PC has only a turnkey ROM
  111. program, that initializes the sytem and boots off the floppy
  112. disk or hard disk, normally the file "/unix", but this can be
  113. any executable.  Thus at least a download program needs to be
  114. here--see below for our software.
  115.  
  116. It is straightforward to attach the DTE port of the ATT7300 to
  117. a serial line, and use whatever system you have to download to
  118. it.  In addition, you need to be able to reset it from the host.
  119. We have one MECB dedicated as a reset server to all the online
  120. standalone systems, and the signal from it needs to be connected
  121. into the reset logic of the 7300.  Note that it uses an RC circuit
  122. to debounce the reset button, so a TTL-type signal needs gain
  123. before being connected into this circuit, unlike the MECB that
  124. uses butterfly-connected gates to debounce its reset button.
  125.  
  126. Downloading/monitor software on the ATT7300
  127.  
  128. In libsa_on7300 and tutor_on7300 there are the sources for software
  129. to be built on the ATT7300 running its own UNIX, then written
  130. to a floppy disk to be read in on reset from the development
  131. host.  The "Tutor" debugger follows the command syntax of
  132. Motorola's TUTOR series, doing breakpoints but not disassembly.
  133. There is also "remcom" support for remote gdb built in but not
  134. yet working--maybe by the end of summer.  Getting this working
  135. from a bare machine was the greater part of this effort--once
  136. you can download it's easy to do software work, and it means
  137. you've already got a working serial driver.  The 7300's serial
  138. interface (NEC7201) is ridiculously complicated--I can't imagine
  139. why they chose this particular chip.  The downloading is of
  140. course just one end of the system we use--we can supply the
  141. host end too if you want--pick up mtip.tar as well for this.
  142.  
  143. Running non-Xinu programs.
  144.  
  145. The two libraries libsa and libxc together provide a C standalone
  146. programming environment completely separate from Xinu.  The
  147. top-level directory sa_examples has a few sample programs and
  148. a Makefile.  In the top-level sa directory are headers for the
  149. MMU and PI as well as the Xinu-supported parts of the hardware.
  150.  
  151. Support
  152.  
  153. As usual, no support is guaranteed, but please write to eoneil@cs.umb.edu
  154. with any problems and I'll try to help.  In particular, although
  155. this implementation is known to Purdue and Doug Comer, and this
  156. method of distribution is OK with them, they have no time to 
  157. support such specific ports as this.
  158.  
  159. Betty O'Neil   June, 1991
  160.  
  161. ---------- end enclosures
  162.