The NEXTSTEP/OpenStep FAQ
! to the table of contents
< to the previous section: 
> to the next section: 
	DISCLAIMER:	THE FOLLOWING PROCEDURE IS NOT SUPPORTED BY NEXT, INC.
			AND WILL DEFINITELY VOID THE WARRANTY ON YOUR NEXT
			COMPUTER. FOLLOW IT AT YOUR OWN RISK. I DISCLAIM ALL
			RESPONSIBILITIES FOR DAMAGES CAUSED BY NEGLIGENCE IN
			FOLLOWING THE PROCEDURE. THERE IS NO GUARANTEE THAT 
			THE PROCEDURE WILL WORK ON ALL VERSIONS(?) OF THE
			NEXT CUBE HARDWARE. ALL I KNOW IS THAT IT WORKED ON
			THE NEXT CUBE I WAS WORKING ON!!!! SO BEWARE.
	Here we go!  I'll first provide a description of the hardware I was 
	using and comment on what I accomplished and how I got the information 
	on how to do it!
	The hardware included a NeXT cube with 660 MB drive, OD, etc., a 68040  
	upgrade board, and a 68030 motherboard. I successfully installed both
	the 68040 and 68030 boards on a SINGLE NeXT cube and linked them 
	together through their ethernet ports. The 68040 was configured as a 
	boot server and the 68030 was used as its client (booting off the 
	network for lack of an additional hard drive).
	The procedure reconfigures slot #2 on the cube's back-plane as slot 
	#0. This provides two slots configured as #0, required for booting 
	the two motherboards. Once I determined what the slot pin-outs were 
	(thanks to my good friend John Chmielewski), it was a matter of time 
	before the two boards happily co-existed.  
	The procedure:
- 	First, follow the procedure on the NeXT User's Reference 
		manual for removing the system board (Appendix C: Opening 
		the Cube, page 291 of the 2.0 manual).
 
- 	Using the NeXT supplied screwdriver, remove the two screws 
		that attach the power-supply housing to the cube (the screws 
		are located on the lower part of the housing) and gently pull 
		the housing out. Set it aside in a safe place (away from kids 
		and nosey friends!)
 
- 	Remove the two plastic grooved plates (used to slide the 
		system boards in) at each side of the inside bottom of the 
		cube. (For each plate, lift the side closest to the rear 
		opening and gently pull them out). Set them aside. 
 
- 	Using the NeXT tool, remove three screws holding the 
		back-plane to the cube and then take the back-plane out of 
		the cube. Let the cube rest for a while. 
		Inspect the back-plane. You will see five bus slots (four 
		vertical and one horizontal). The horizontal slot connects 
		the back-plane to the power supply housing. We're only 
		interested in the four vertical slots. From the factory these 
		slots are configured as 6, 2, 0, and 4 (starting from the left
		and going right with the horizontal slot at the bottom). 
 
		The system board connects to slot #0 (which you've probably
		noticed). Each slot contains three columns of 32 pins. 
		Following is an ASCII representation of one of the slots:  
 
 x y z	 C B A
			o-o o 32 . . .
			o-o o 31 . . .
			o-o o 30 . . .
			o-o o 29 . . .
			      28 . . .
				   . 
				   . 
				   . 
			       3 . . .
			       2 . . .
			       1 . . .
		...where x, y, and z are labeled GND, SID, and VCC, 
		respectively. The GND, SID, and VCC "holes" are used to 
		configure the slot number using simple binary encoding, 
		where GND is logical zero, VCC is logical one, and SID
		(for Slot-ID I guess) determines the current bit state 
		(one or zero). 
 
		Notice the four rows of GND, SID, VCC triads; each row is 
		equivalent to one bit position in the slot number, the bottom 
		row bit position 0, the top row bit position 3. This gives a 
		total of four bit positions, or 16 possible slot numbers. To 
		encode a slot number, you need to connect an SID row to its 
		corresponding GND or VCC row. For example, the diagram below 
		shows the configuration of the slots in my cube's back-plane
		(you'll have to look very closely to see the actual 
		connections):  
 
 SLOT 6		SLOT 2		SLOT 0		SLOT 4
		BIT 3:	o-o o		o-o o		o-o o		o-o o
		BIT 2:	o o-o		o-o o		o-o o		o o-o
		BIT 1:	o o-o	      * o o-o *		o-o o		o-o o
		BIT 0:	o-o o		o-o o		o-o o		o-o o
 
- 	To reconfigure slot 2 as slot 0, cut the trace between SID 
		and VCC for bit position 1 (see * o o-o * above) and connect 
		SID to GND on the same row. I used the SIMM removal tool 
		supplied by NeXT in the 040 upgrade (talk about multi-purpose) 
		to cut the trace!  Very gently, scrape the solder off between 
		the two holes. Take a paperclip, shape it to fit between the
		holes in SID and GND, and trim it down to an even 1/4 inch
		(perfect fit)!
		That's all there is to it. If for some reason you ever want 
		to revert to slot 2, just remove the paperclip from GND-SID 
		and reconnect it to SID-VCC. 
 
 
- 	Now put the cube back together. First, re-install the 
		back-plane using its three connecting screws, then snap on 
		the plastic plates, and finally insert the power-supply housing 
		and secure with its two screws. 
	At this point the cube is ready to take on the two system boards (it 
	is up to you to determine where/how you want to use the two boards; 
	I'll explain how I used mine) ... 
 
 
- 	I installed the 68040 in the original slot 0 and the 68030 
		in the reconfigured slot 0 (previously slot 2). The 68040 
		was used as the main processor board. I connected the 660 MB 
		drive, the OD, and the monitor to it.
	NOTE: 	Before beginning the procedure, I went into the NeXT Monitor 
		on the 68030 and disabled the Sound out, SCSI tests and verbose 
		test mode and enabled serial port A as a console terminal. 
		I also made "en" the default boot device. I setup the 68040 as
		a boot server and taught it about the 68030 (which took some 
		time in getting it setup properly). 
 
 
- 	I connected the 68040 to the 68030 using a thin-ethernet cable
		and I booted. First thing I noticed was that the 030 timed-out 
		a couple of times waiting for the 040 to tell it to boot. But
		after the 040 was up, the 030 booted nicely.  
	That's all folks. Hope all this made some sense and people find it  
	useful. 
Comments:
-  	To power off the cube, I have to first shutdown the 030 
		(I run "halt -p" as root from a telnet connection and wait 
		for the 030 to go down), and I then power-down the 040. If you 
		shut down the 040 before the 030, you'll have to pull the power
		plug to turn the machine off. The cube will not power off if
 		either of the two boards is providing a load to the 
		power-supply.
 
-  	Remember, I've only performed this procedure on one system.
		I do not know what will happen on your system. So make sure 
		you plan ahead what your going to do and that you understand 
		the procedure.
 
-  	I don't know what problems may arise when you add a board that 
		uses the NeXTbus, such as the NeXTdimension, or how it will 
		behave. If someone is courageous enough to perform the 
		procedure and installs another board, please post your results
		to the net.
 
	Update:
	To clear up some misunderstandings with the settings in the "p"
	command of the NeXT monitor (these settings are only required for the
	system board that doesn't have the NeXT display monitor connected):
- 	Sound out test must be "no"; the boot process will not proceed 
		if the monitor isn't connected to the board and this is set to 
		"yes" (the sound out tests will fail, aborting the boot 
		procedure).
 
- 	SCSI tests should be "no" if you don't have SCSI devices 
		attached to the board (SCSI tests will fail otherwise, aborting 
		the boot procedure).
 
- 	Verbose test mode must be "no" for booting from the network.  
		If set to "yes", the boot process will timeout waiting for a 
		BOOTP and you'll be left in the monitor with no means of 
		restarting the board (except pulling the power plug)!  
		This is probably true also for booting from an OD that hasn't 
		been inserted (assuming the OD was attached to the board).
 
 
- 	Allow serial port A as alternate console if you want to view 
		the boot process (for problems and peace-of-mind).
 
- 	Other settings were not modified from their factory defaults 
		or had no effect on the procedure. 
 
	There is also a way in using 2 boards plus NeXTDimension board
	in one Cube.
	I've run my "screw with the backplane trick" cube with :
	|  | 32MB-ND | | 64MB-040 | 40MB-030 |
	without any problems.  Using the od got the system warm, but never 
	had a problem. The cool part was having the printer on the 030. 
	One day I tried to dump an 040 into the 030 position, but I couldn't 
	get it to boot. I played for a couple minutes, but put the 030 back in 
	and went on with life...
This document was converted from LaTeX using Karl Ewald's latex2html.