------------------------------------------------------------------------------ Subject: 17 What are the pinouts of those phone-like serial connectors? ------------------------------------------------------------------------------ The connectors 3B2's use are called RJ-45. They are 8 conductor telephone like connectors, and lucky for us, are pretty standard. You can either buy the cables and connectors from AT&T for an arm and a leg, or elsewhere. I don't know about the cables, since I've never bought them from anyone but AT&T, but I have made my own RS-232 connectors with excellent results. The following is an excellent description of the RJ-45 port on the 3B2: From: rthomas@hakatac.almanac.bc.ca (Robert N Thomas) Looking into the 8 pin modular RJ-45 jack you'll see that pin 1 should be on the right. Diagram of what you should see when looking at an 8 PIN modular jack connector. +----------+ | 87654321 | | | +--+ +--+ | | +----+ Ok, not all 3B2 8 pin modular jack connectors are created "EQUAL". These beasties are used for running StarLan 1MBit, EPORTS cards, PORTS cards, as well as for running ETHERNET 10MBits as well. The pin outs for the two modular jack cables on the back of the 3B2, as well as for the PORTS card should be as follows: PIN Lead Direction Explanation ===== ========== ============= ======================== 1 PROT GRD Ground 2 reserved Not Connected 3 TXD0 Out Transmit Data 4 DTR0 Out Data Terminal Ready 5 RXD0 In Receive Data 6 DCD0 In Data Carrier Detect 7 SIG GRD Signal Ground 8 reserved Not Connected The 2 modular jacks on the back of your machine should be labeled console and contty. If your talking about a PORTS card, here is what one looks like: Centronics connector for Parallel Printer | \|/ +------------+ +----+ +----+ +----+ +----+ \ / | | | | | | | | \________/ +-__-+ +-__-+ +-__-+ +-__-+ ^ ^ ^ ^ The above 4 RJ45 connectors are for plugging serial terminals into your 3B2. The EPORTS card is card that has 8 RJ45 connectors (8 pin modular jacks) on it. This card is where you would want to plug a high speed modem onto your system, because the above connectors DO NOT SUPPORT HARDWARE FLOW CONTROL. The PIN OUTS for the EPORTS card are as follows: PIN Lead Direction Explanation ===== ========== ============= ======================== 1 PROT GRD Ground 2 CTS Out Clear to Send 3 TXD0 Out Transmit Data 4 DTR0 Out Data Terminal Ready 5 RXD0 In Receive Data 6 DCD0 In Data Carrier Detect 7 SIG GRD Signal Ground 8 RTS In Request to send * NOTES: CTS & RTS (if you have them). Most 3B2 systems need to do the following to enable hardware flow control. Otherwise the 3B2 will ignore RTS & CTS. Also see the FAQ item about handing high speed modems on EPORTS cards for more detailed information. epstty hfc <-- XON/XOFF flow control must be disabled before you do this. The stty command is one way to disable XON/XOFF. Line DISCIPLINES are another way to do this. See etc/gettydefs file. DTR0 notes. {3B2 uses this to signal DISCONNECT} When the 3B2 is active on the port (waiting for someone to logon to the port or whatever.), DTR is active. When the 3B2 wishes to DISCONNECT (ie, too many wrong passwords, or the user logs off the port), it will lower DTR momentarily. If you are trying to get a modem to work, you might want the modem to DISCONNECT the user when DTR is dropped.. DCD0 notes. {Used to tell 3B2 that the user has DROPPED CARRIER} When the DCD is set inactive, the 3B2 will assume that the user has either turned off the terminal, or dropped carrier. If this occurs, the user is logged off the system, and background tasks are aborted. If DCD is inactive, be aware that NONE of the standard AT&T provided utilities are capable of sending anything to the device. There is a way to get around this in the more recent releases of the 3B2's OS. See your admin documentation for details. Otherwise, in the case of a MODEM, when the user drops carrier, you want the modem to "momentarily" lower this DCD0 just long enough for the 3B2 to realize that the user has dropped carrier. The modem should then Re-ENABLE DCD0, so that the 3B2 will be able to send data to the modem. {needed for cu, and outbound UUCP to work correctly in older releases of the OS} Most semi-decent modems are capable of handling DCD and DTR in a 3B2 friendly manner. I have done this with PEP's, USR HST's, and MicroComm 9600 AX modems, without incident. From: pen@cbnewsf.cb.att.com (paul.e.nepermann) Here are the pinouts for the connectors from the 8 pin modular to the 25 pin adapters. 8 pin modular to 25 pin RS232C Terminal/Printer 8 pin modular to 25 pin RS232C ACU Modem | Terminal/Printer | ACU Modem 8 pin side | 25 pin/male | 25 pin/female | 25 pin | | | 1 FG | FG 1 | FG 1 | FG 1 2 CTS (in) | RTS 4 | RTS 4 | CTS 5 3 TXD (out) | RXD 3 | RXD 3 | TXD 2 4 DTR (out) | DCD 8 | DCD 8 | DTR 20 5 RXD (in) | TXD 2 | RXD 2 | RXD 3 6 DCD (in) | DTR 20 | DTR 20 | DCD 8 | DSR 6 | | 7 SG | SG 7 | SG 7 | SG 7 8 RTS (out) | CTS 5 | CTS 5 | RTS 4 ------------------------------------------------------------------------------ Subject: 18 What is the u3b. newsgroup hierarchy? ------------------------------------------------------------------------------ Don't worry about it, you're not missing anything. It's an almost completely dead hierarchy that used to be about 3B2's and 3B1's. Discussions about 3B2's have migrated to comp.sys.att, and discussions about 3B1's have migrated to comp.sys.3b1. ------------------------------------------------------------------------------ Subject: 19 What is the proper way to rebuild the kernel after tuning kernel parameters? ------------------------------------------------------------------------------ # cp /unix /oldunix # cd /etc/master.d Edit your kernel parameters # cd /boot # mkboot -k KERNEL # cd / # sysadm firmware Once in firmware mode, have the 3B2 boot using /etc/system ------------------------------------------------------------------------------ Subject: 20 Which GNU packages DON'T run on the 3B2? ------------------------------------------------------------------------------ Most software from the Free Software Foundation compiles and runs on 3B2s with little or no modification. The following are exceptions and their reasons. Please prove me wrong, I'd love to have some of this stuff on my 3B2 as well. gdb - GNU Debugger No configuration files for WE32K processor. libg++ - C++ Libraries The g++ compiler produces invalid assembler code for one of the modules. ------------------------------------------------------------------------------ Subject: 21 How do I put a root and/or swap partition on a SCSI drive on a 3B2/300|310|400? ------------------------------------------------------------------------------ From: rthomas@hakatac.almanac.bc.ca (Robert N Thomas) [This is intended for experienced 3B2 system administrators only. You can lose all the data on your system if a mistake is made. You should make a full system backup before you try this. Heck, make two just to be sure. Do this at your own risk!] Well, I have managed to get a SCSI drive interfaced to my unix system. I thought that while this is all fresh in my mind, that I would type this document and make it available to the Net. I also am keeping a copy of it to aid me if I need to do this again. The EMAIL message by geoff describing the edittbl process was invaluable to me. But it still took 30 hours for me to get it to work. Hopefully the information here will make it easier for someone else trying to get this stuff to work. I have a 3B2/400 computer system, with the following required hardware and software: 1 SCSI Host Adaptor Card. 1 SCSI cable. 1 brand new SCSI disk drive. In this case a Quantum 170 Meg drive. Software Required. cd /usr/options grep -i scsi * scsi.name:AT&T 3B2 SCSI Host Adapter Utilities Release 1.0 sd01.name:AT&T 3B2 SCSI Disk Controller Utilities Release 3.0 You need the SCSI host adaptor utilities, and disk controller utilities. If you don't have the SCSI card, and the software, don't bother trying it. Here's what I did. prtconf <-- Take down what SCSI addresses you currently have in use. Look under SCSI at the ID: number. Jumper your new hard disk to an unused SCSI ID: number (0-7) (don't forget about terminating resistors.) I didn't do this and wasted a few hours because I managed to pick one of the few "used" address's. BTW, Address 0 is always used on a 3B2. SCSI host adaptor takes this address. Power Down the 3B2. Connect the new SCSI drive to the 3B2 SCSI bus. Power the 3B2 on. With finger on the CTRL-S or printscreen, watch the machine boot. As it comes up it will say something like: unknown device "QUANTUM ELS170S 3.5" not configured (*void). (TC:0, ID:2) {Gee, maybe I am installing a Quantum 170 on my 3b2 at address 2 eh??} Write all this down, and ensure you got it right. The 3B2 usually tries to scroll it off right away for you, to be helpful :-} logon as root. cd /etc/scsi ./edittbl -l <-- The idea here is to view how SCSI disk entries are formatted. I'll show you what I did here to get the QUANTUM 170 up. ./edittbl -i <-- We want to insert a new entry. Enter Vendor ID: QUANTUM The vendor ID must be padded out to 8 characters. So add one space on the end of quantum to pad it out to 8 characters. Enter Product ID: ELS170S The vendor id entered must be 16 characters. The "3.5" won't fit in 16 characters, hence I simply added 9 spaces onto the end until I had 16 characters. AT&T Device Name: SD01 SD01 = disk drive ST01 = tape drive TC Driver type: 0x001 Enter Peripheral Device Type: 0x000 <-- Most cases. 1 = tape 0 = disk Max lu supported: 0x001 <--- How many logical units, or if you like subdevices are here. Usually 1. The system then asks again what vendor ID again. Enter Vendor ID: <--- CTRL-D to update and exit. Interrupt to exit without save Next... cd to /usr/lib/scsi Next, you want to edit the tc.index file. Add an entry for your hard disk similar to the others. Here's what I did for the Quantum. QUANTUM ELS180S 3.09 sd00.0 Again, QUANTUM padded to 8 chars, ELS170S. Must be at least 16 chars long. In my case I went "over it". sysadm reboot <--- Reboot machine. Once machine is up, sysadm single <--- Go to single user mode. Rumor has it that formatting needs single user mode. cd /usr/lib/scsi ./format -v /dev/xxxxxx <-- In my case /dev/rdsk/c1t6d0s6 <-- c1 = controller #1, t6 = scsi ID number <-- d0 = disk 0, and s6 = partition number sysadm partitioning <-- to add simple data partitions to the system <-- and add them or In my case, since I wanted the SCSI disk to replace my existing boot disk, you can't use sysadm partitioning. Instead, you have to do it in a more manual mode. I could use a SLOW MFM drive for critical things like root, swap and /usr, or I could use a nice BRAND NEW SCSI drive for this, and use the MFM's for other less critical things. To become a bit more farmilliar with how your disks are setup, you can try the below in safety. prtvtoc only displays the current settings. prtvtoc /dev/dsk/c1d0s6 <-- Display partitions on my BOOTABLE CD WREN 70 Meg MFM hard disk. A standard one for most 3B2 systems. prtvtoc /dev/dsk/c1d1s6 <-- This displays the second partition settings for the second MFM hard disk on a 3B2. If the above does not work, you may cat /etc/fstab and this will show you most of your disks. You could also check /etc/system for your root partitions name. In my case, I decided to store these configurations in /etc/vtoc, since it makes sense to know what's in your partition tables. The manuals made mention of this vtoc directory. When I got there, this was an empty directory so I decided to populate it. cd /etc/vtoc prtvtoc /dev/rdsk/c1d0s6 > c1d0s6.vtoc prtvtoc /dev/rdsk/c1d1s6 > c1d1s6.vtoc Since we want to add partitions to the newly added SCSI disk, what I did is. Remember to select the correct device id for the disk your adding. fmthard /dev/rdsk/c1t6d0s6 This will install an unparitioned vtoc (volume table of contents, or partition table if you prefer). This gave me some badly needed information about how many sectors are usable on the disk. I then would recommend: cd /etc/vtoc prtvtoc /dev/rdsk/c1t6d0s6 > c1t6d0s6.vtoc Funny thing about prtvtoc. It's output can be read by the partitioning program to re-create your partitions!!! Nice touch don't you think. I then went and edited this file's partition tables entries such that I would have 20 Meg root, 140 Meg /usr and 8 Megs of swap. Here is what it looked like when I finished for my Quantum drive: * /dev/rdsk/c1t6d0s6 partition map * * Dimensions: * 512 bytes/sector * 63 sectors/track * 4 tracks/cylinder * 252 sectors/cylinder * 1325 cylinders * 1323 accessible cylinders * * Flags: * 1: unmountable * 10: read-only * * First Sector Last * Partition Tag Flags Sector Count Sector Mount Directory 0 2 00 100 40986 41085 1 3 01 41086 16384 57469 2 4 00 57470 275926 333395 6 0 01 0 333396 333395 7 0 01 0 100 99 Partition 0 is a root file system. Starting at sector 100, going to sector 41085, making a total of 41085 - 100 + 1 = 40986 sectors. Partition 1 is my swap partition. I started this one at sector num 41086 to 57469, making a total of 57469 - 41086 +1 = 16384 sectors, or 8 Meg of swap (16384 * 512 bytes/sector = 8Meg). I also positioned this as close to the center of the drive as possible, to try and make it more accessible. I want speedy access to this area. Putting it at the beginning of the drives, means that when the 3B2 has to read a swapped process, its got to seek to the beginning of the drive. I save myself a bit of seek time. Partition 2 is my /usr file system. Partition 6 defines the total length of the drive. Partition 7 defines the BOOT area of the drive. I selected the beginning of the drive. I suspect you could move it anywhere, but for me the beginning is good enough. The TAGS also seem to define the type of partition, hence you should follow the TAG & FLAG examples shown above. If your just adding a data disk, let sysadm partition do the dirty work for you. One observation is fmthard does not format a hard disk. I think a name like makevtoc would be a bit better choice of a name. Oh well, who said unix makes sense anyway!!! Ok, now that the file is all edited just right, time to partition the disk: fmthard -s /etc/c1t6d0s6.vtoc /dev/rdsk/c1t6d0s6 I would recommend doing a prtvtoc to ensure that you got everything right. prtvtoc will declare if you had any problems. EG: unused sectors and such. Now that the disk is partitioned, it's time to make it a bootable disk. I tried to get newboot to work and couldn't. So I went and used dd to get the job done: dd if=/dev/dsk/c1d0s7 of=/dev/dsk/c1t6d0s7 And POOF! Instant boot disk. Next, we must use mkfs to create the file systems. Again, the /etc/vtoc directory contains most of the answers. In this case the number of sectors for each mountable partition. mkfs /dev/dsk/c1t6d0s0 40986:5120 10 126 -b 1024 <-- makes root file sys 40986 = total number of sectors. 5120 = total number of inodes (total number of files you can create) 10 = gap. Floppy this should be 1, on my box 10. It's in the manuals. Your system may be somewhat different for gap. Since I have a 3B2/400 at 10MHz, 10 is good. 126 = Blocks per track. In the prtvtoc output it says 252 sectors per cylinder. Since each sector is 512 bytes, and my block size is 1024. You get 512/1024 * 252 to get 126 blocks per cylinder. 1024 = I want a 1K/block file system. I sure could use 2K file system software. I got 5120 from a df -lt command. The current configuration AT&T provided for my root file system. Seems good enough for me. mkfs /dev/dsk/c1t6d0s2 275926:40000 10 126 -b 1024 <-- makes my /usr file sys I kinda trumped up my inodes here. It's always good to have enough Inodes, and a dam pain when you run out. I wanted to ensure I had enough. Adding more later means the destruction of all files on the file system and a restore from tape to recover. mkfs to partition 1 (the swap area) is not very useful. Also mkfs to partition 6 in also not a smart idea. Next it is time to label the file system. This is a job for the labelit command. labelit /dev/dsk/c1t6d0s0 / labelit /dev/dsk/c1t6d0s2 /usr mount each newly created file system(s). For me, I did the following: cd / mkdir user mkdir root mount /dev/dsk/c1t6d0s0 /root mount /dev/dsk/c1t6d0s2 /user OK, now that we have our file systems online, it's time to copy the files over to this new file system. Here's what I did: cd / find . -mount -print | cpio -pvdlm /root This copies all files on ONLY THE ROOT {/} FILE SYSTEM to the /root file system. cd /usr find . -print | cpio -pvdlm /user Copies all files on /usr as well as any other file systems below /usr to the /user file system. You could use the -mount option to limit this. In my case there are no other file systems, so who cares :-}. OK, now all needed files are now on my SCSI drive. Only problem is I can't boot off the scsi's / file system. cd /root/etc vi system While you edit this file, you'll find a section all commented out. The default looks like: * System device specifications * * NOTE: With VTOC, specifications are not required. * following is an example of what should go here * * ROOTDEV: /dev/idsk00 * PIPEDEV: /dev/idsk00 * SWAPDEV: /dev/swap 0 3528 I changed my /root/etc/system files entries to look like: * System device specifications * * NOTE: With VTOC, specifications are not required. * following is an example of what should go here * ROOTDEV: /dev/dsk/c1t6d0s0 PIPEDEV: /dev/dsk/c1t6d0s0 SWAPDEV: /dev/dsk/c1t6d0s1 0 16384 I ran into a terrible problem, and could not get the SCSI drive to boot. The system would start booting off the SCSI, and then switch midstream to the MFM drives on me. This was horrible, and I could not find anything in the docs to help. Editing the /etc/system was the only way I could get it to work. If there is a better way, I would appreciate hearing about it. Since the SCSI is the new root file system, you'll have to ensure that all mount point directories are re-created on your file system replacements. All file system mountpoints will be nonexistant on your new file systems. mkdir /usr Now you need to select which file systems you want mounted at boot time. cd /etc vi fstab In my case, the default file looked like: /dev/dsk/c1d1s2 /usr /dev/dsk/c1d0s8 /usr2 I changed it to: /dev/dsk/c1t6d0s2 /usr /dev/dsk/c1d0s8 /usr2 And remember to ensure the mount directories DO exist. sysadm firmware MCP is usually the Password for most dos based systems. For the boot file name, type in /etc/system For the load device, select SCSI For the subdevice, select the SCSI disk. The system will produce a warning about the devices. I don't know if I did all the correctly, but it seems to work. I tried to find the answer to my boot disk problem in the docs, but failed. I assume the warnings are caused by the 3B2's OS assuming the existence of only MFM drives. If the machine boots, and your df -lt reports a SCSI root file system, and a SCSI /usr, then it worked. Next you'll have to use sysadm autold to select the SCSI boot device. Hope this helps, and may be kept available to help someone else get SCSI disks on their 3B2 as well. Cheers.... ---- Robb ---- ============================================================================== ============================================================================== To get the latest copy of this FAQ, send a mail message to mail-server@pit-manager.mit.edu The body of your mail should contain a command to the mail server. To get all the parts of this FAQ (currently consisting of 2 parts), place the following command in the body of your message: send usenet/news.answers/3b2-faq/* To request only one part, substitute the part number as in the following example: send usenet/news.answers/3b2-faq/part1 Please remember to leave the Subject: line blank to reduce the chance of confusing the server. ============================================================================== ============================================================================== If you have any other questions, or better answers, please send mail to 'greg@gagme.chi.il.us' ============================================================================== -- Gregory A. Gulik Call Gagme, a public access greg@serveme.chi.il.us UNIX system at 312-282-8606 || gulik@rtsg.mot.com For information, drop a note to info@gagme.chi.il.us Gagme offers service without an "attitude" ------------------------------------------------------------------------------- -- USPS: The Consultants' Exchange, PO Box 12100, Santa Ana, CA 92712 EMAIL: larry@mtndew.com or root@conexch.uucp or uunet!usa2002!conexch!root TELE: (714) 842-6348; (714) 842-5851: Public guest & bbs logins UUCP: conexch Any ACU 9600 17148426348 ogin:-""-ogin:-""-ogin: nuucp