================================ DEC Professional Computer Frequently Asked Questions and Miscellaneous Trivia ================================ Currently maintained by: Michael Umbricht mikeu@osfn.org Originally compiled and edited by: Chaim Dworkin chaim@linc.cis.upenn.edu ------------------------------------------------------------------------------ Vol. 4 No. 1 Part I Size:551 lines; 26176 bytes 18-SEP-2002 ------------------------------------------------------------------------------ This is Part 1 of a 4 part post. This "FAQ and other miscellaneous trivia" is compiled from discussions which took place on comp.sys.dec.micro over the past 7 years. Whenever possible names and addresses of contributing individuals are placed after each answer. Additions, corrections, and constructive comments are welcomed. Summary of questions in Part I: Q1. I have just acquired a DEC "Professional 350". I really don't know what it is. What operating system will it run? What sort of CPU does it have? Q2. What's the difference between a pro350 and a pro380? Q3. What languages are available for the Pro? Q4. Where can I get software for the Professional computer? Q5. How much memory is on the motherboard? How much can I bring it up to? Q6. How can I add memory to my Pro? Q7. Along with the Pro-380 I received three RAM boards. I know that the slots in the Pro computers are dedicated, RAM goes in a specified slot, video in another, etc. Can all three RAM boards be put in and be recognized? Q8. Can I put a hard drive and controller card in my Pro 325 to convert it to a Pro 350? Q9. Is there any possible way of doing any kinda modification to my Pro 350 to turn it into a Pro 380? Q10. Is there any way to make a PRO floppy bootable? ************************** Q1. I have just acquired a DEC "Professional 350". I really don't know what it is. What operating system will it run? What sort of CPU does it have? The Pro-300 was the engineering workstation of it's time. There were 3 models: the 325, 350, and 380. The 325 and 350 shared the LSI-11/23 cpu. The difference between them was that the 325 was floppy based, while the 350 had a hard disk and a bigger power supply. It can handle the RD51, RD52, and RD53 drives (10, 20, and 71MB, respectively). The 380 was based on the LSI-11/73 cpu. Available options include color monitors and ethernet. Runs 16 bits at 3 Mhz. Basically, the PRO-300 is a personal PDP-11, with computer and terminal in a neat pc package. It has an expansion bus, the CT-bus. Unfortunately, it never really caught on, DEC marketing being what it is, despite being a contemporary of the IBM-PC and being priced about the same as the original IBM's. A friend of mine ran some benchmarks on his 350 , and determined it's about 1/3 to 1/2 as fast as a microVAX-II for non-virtual-memory numerical applications. For a while after they stopped trying to sell the PRO's to the masses, DEC continued to use them as the central console system for the big VAX Clusters in the 8000 series. They also sold them to various OEM's as process controllers and graphical front-ends for large control systems. It was a cheap way to get an 11/23 or 11/73, if your expansion needs were limited and you only needed one (or perhaps two) terminals. Operating systems: the worst thing DEC did to the PRO's was putting a brain-dead menu-driven version of RSX-11M+ called P/OS (Professional Operating System) on them. Now, RSX-11M+ is a nice operating system, as are the other PDP-11 operating systems. But who wants to be limited to a miserable, slow menu system on a nice little computer like the PRO-350? The only saving grace of P/OS is the PRO/Toolkit, a development environment which includes a partial DCL command shell. But you still boot up at the menu level, and it's only a limited shell. Fortunately, RT-11 quickly became available, as did a couple of versions of PDP-11 unix. The one I remember was VENIX, which was put out by VentureCom. It would be nice if someone at Berkeley put their unix on the PRO... As for P/OS (and a version of RT-11 which actually runs _under_ P/OS), it's still available from DECUS, basically just for media charges. They also have printed documentation. Like DEC operating systems in general, P/OS has excellent and voluminous documentation. I have 8 3-inch 3-ring binders on my bookcase, plus various smaller documents. Everything you ever wanted to know about the Professional 300 series... DECUS also has a C compiler that runs under the PRO/Toolkit, as well as a BASIC. They don't have the PRO Fortran, possibly because it's the same as the regular RSX Fortran (speculation). Personal opinion: if DEC hadn't crippled the PRO with P/OS, but had sold them as software development workstations for the PDP-11, offering versions of all the PDP-11 operating systems (RSX-11M, RSX-11M+, Ultrix, RT-11, RSTS/E, IAS), they could have sold lots of them. It's a great way to move your system hackers off the main production machine without having to buy an expensive machine just for the developers. Unfortunately, Our Favorite Computer Company has always been stronger at engineering than marketing. sigh. Steve Mitchell steve@cps.altadena.ca.us ---- The pro is more akin to a mini, and will do some nifty multitasking if you choose to use it...with HARDWARE protection of each task against the others, hardware floating point, etc. etc. There's a trick to booting off a floppy to regain control. Also [zzsys]firstappl.ptr should probably be deleted, and the pro native toolkit is a MUST. Given the native toolkit, the Pro is a quite respectable computer. The major lossage of a pro is that I/D space separation is not supported by P/OS, which limits you to 8 page registers, making address space manipulation more of a chore. Glenn Everhart Everhart%Arisia.decnet@crd.ge.com ************************** Q2. What's the difference between a pro350 and a pro380? The PRO-380 is in fact a faster PRO-350 - about 5 times as fast I think. The 350 uses the PDP 11/23 chip (F11) and the 380 uses the PDP 11/73 chip (J11). It also has extra memory bitmap pages, faster graphics and comes as standard with 512kb on the mother baord. The ram expansion cards can go in any slot. As I remember it, the 380 does not have a video card as all the video is on the mother board. If you do MACRO-11 assembler coding you'll certainly discover that the F-11 doesn't really check for odd address errors, while the J-11 does (traps thru vector 4). Also, the J-11 includes the ability to seperate Instruction and Data address spaces, and includes a third addressing mode (Supervisor). As I recall, P/OS takes advantage of some but not all of the additional features (not entirely sure exactly which ones appeared in which P/OS version). --Graeme Thomson GRAEME@praxa.com.au Another 380 feature is that you can divide memory for applications into I- space and D-space (I = instructions, D = data), allowing your programs to use twice as much memory as in the 350 (as long as half is instruction and half is data, of course). Other potential OS platforms (anything but POS!) were PRO-Venix (a UNIX of some ilk), RT-11 (and the non-DEC, RT-11-like TSX), and some flavor of MUMPS. Also it can be a decnet end node. Dean File Chapel Hill, NC ************************** Q3. What languages are available for the Pro? DEC has various PDP11 languages that apply to the pro...stuff like BASIC (distinct from the DECUS Basic dialect), Fortran 77, Cobol, Datatrieve, and various others. DEC compilers are fairly cheap on the pro...probably even more so now that the pro is, er, "stabilized". The two DECUS pascal compilers, NBS and Swedish differ in that NBS generates faster, more compact code, while Swedish is more standard-conformant. (Turbo is not very standard conformant, BTW.) Two good Pascal compilers, a BASIC interpreter, a C compiler, FORTH, FOCAL, etc. are available. Also the DEC F77 compiler and mucho other stuff. Glenn Everhart Everhart%Arisia.decnet@crd.ge.com ************************** Q4. Where can I get software for the Professional computer? A couple of years ago, Digital donated all of the latest copies of their software for the PRO-350 to the DECUS library. This included P/OS 3.2, Synergy Windows for the PRO, DECNET, PRO/BASIC, the Tookit w/ DCL, PROSE Plus word processor, etc. This software is available on RX50 floppy media from the DECUS library. Copies of the complete documentation set are also available. Kurt Wampler wampler@MicroUnity.com DECUS can be phoned at 508 480 3418. Join; it's free. It's the Digital Equipment Computer Users' Society. There are at least 95MB of diskettes of stuff packaged for pro between the library and the DECUS PC SIG. Much of it REQUIRES the native toolkit (which supplies little niceties like a decent command interpreter and a n assembler and linker...and the system symbol table file!). The DECUS library catalog, which you'll get free when you join, lists a bunch of pro offerings on rx50. I believe the 350 has a semi- weird disk interface though. My personal use for a 325 would be to run RT11 on it at most, since RT11 runs reasonably well off floppies. P/OS (which is to say, slightly modified RSX11M-PLUS) does not. There's lots of software for rt11 also. The basic engine isn't really all that slow; there IS however a LOT of cruft in p/os. (Not for nothing did that OS get the nickname Piece Of S**t because of the menu orientation and misfeatures that distinguish it from RSX11M+.) With some of the free tools you can bypass much of that though. There's also a quite decent memory disk for p/os on the RSX SIG tapes. When you get your DECUS catalog, check out the pdp11 areas as well as the pro areas. Most of the stuff applies to pro. There's a working group in the RSX SIG whose mission is to make software from sig tapes available on floppies or other media (the "Other Media" working group...it actually DOES function). I'm continually surprised how many people with DEC processors don't know about DECUS. No wonder you use your pro as a terminal! sigh... Glenn Everhart Everhart%Arisia.decnet@crd.ge.com There is now an anonymous ftp site for PDP-11, PDP-8, Professional and Rainbow machines on 'ftp.update.uu.se'. The site is located on a PDP-11/70 running BSD 2.11, but will perhaps later be moved to a VAX8650 with BSD 4.3. All software for the Professional, is from the DECUS library. Tom Karlsson tomk@csd.uu.se ************************** Q5. How much memory is on the motherboard? How much can I bring it up to? The amount of memory is really dependant upon where it is going to be installed: In the Mother Board /or/ in one of the Expansion Cages, that is, along with the disk controllers, Tms etc. locations. Expansion Cage: The memory board are configured for a :: maximum of 256K ::- you can install as many as you want this way (say to about 3 units of 256ks. Mother Board: Here the modules vary; they are one the two module-sizes, that is, 128k boards or 512k boards. System normally comes with 2 of 128ks, thus, making a total of 256k in mother board and the other 256k board in the expansion cage: making a total of 512k - a basic PRO 350 system. You can replace one of 128ks with one 512k new board. This 512k is actually made for PRO380; but You can in Your 350, replace one 128k and substitute a 512k safely. tung tung@eniac.seas.upenn.edu The DECNA card has 128Kbytes of RAM. This memory is not just used as buffer space for Ethernet packets; the memory is dual-ported and can be accessed by the CPU and other devices on the bus. Maintenance Services does not appear to "count" this memory, but it is seen and used by P/OS. For example: the PRO/Tool Kit command SHOW MEMORY reports 320k (words) yet the Maintenance Services Configuration Display reports 512 kilobytes of memory (system total) - Michael Umbricht mikeu@osfn.org ************************** Q6. How can I add memory to my Pro? Here is a how to guide for memory upgrade of the PRO 350 at home. At $2.00 per chip $64 will get you a 1 Megabyte of memory on your PRO and free up 1 expansion slot if you remove the memory board. Each board goes from 128K - > 512K and you could do 1 or both in the PRO. Professional 350 Daughter Board Memory Upgrade The Professional 350 (PRO 350) requires 512Kbytes of memory in order to start P/OS. In the least costly configuration this requirement is supplied by two 128Kbyte daughter boards located on the motherboard underneath the hard disks. These boards are elevated above the motherboard on spacers and are easily recognized. An expansion slot usually holds another memory Board with an additional 256Kbytes. Together these boards form the 512kbytes of memory needed in the minimal system configuration. Because of advances in memory chips and DEC's useful fore-sight it is possible to install 1024Kbytes using only the two daughter boards. This may free up a slot or just give you additional memory. This file describes one method used to upgrade the memory boards. The upgrade requires 32 256K X 1 dynamic refresh memory chips with at least 150ns access time. The original chips are not in sockets so they have to be desoldered. To make desoldering simple we used the following technique. 1) Remove the memory boards from the PRO. 2) Pre-heat a burner on an electric range to about medium heat. 3) Get your pliers or an IC extractor ready. 4) Each board has 2 rows of 8 chips each. The chips will be removed 1 column at a time (2 in each column). Hold the board so that a column of chips is over the hottest part of the burner. When the solder his hot enough simply pull the column of 2 chips out. 5) Remove the board from over the burner an allow it time to cool. If you try to do too many columns at one time you will scorch the board. Minor scorching may be expected depending on the amount of patience you have concerning getting the burner temperature correct and how many rows you attempt to do at one time. If you are careful enough you should be able to do it without scorching the board at all! Any time you touch the board to the burner you can expect scorch marks. Note: Sometimes the pins on the old memory chips are bent outwards on the bottom of the memory board. This makes them harder to remove. Straighten them if you can. Note: Don't worry about the capacitors, they may fall out when the solder is molten. The can be replaced when the new chips are inserted. 6) After you have done all columns and removed all the old memory chips you still have to remove old solder. Our homebrew method of doing this is to use a vacuum cleaner as a solder sucker device. Turn the vacuum cleaner on and hold the nozzle between your knees. Using a soldering iron heat the solder on the pin hole a few inches away from the vacuum cleaner nozzle. When the solder is molten bring the board down on the nozzle so that the nozzle is centered under the hole. This sucks the solder out but it has a tendency to splatter it on the underside of the board too. 7) Use the soldering iron to collect the splattered solder into the pin holes on the other side of the board and then re-heat the pin hole and do step 6 again. After about three times the pin holes are clear from old solder. It could take longer for the first board until the technique is developed. Note: Solder will accumulate on the inside of the vacuum cleaner nozzle. I isn't very much solder but someone's wife could get mad about it. We don't know what will happen if the nozzle is made from plastic instead of metal as it was here. Perhaps some aluminum foil wrapped around the nozzle would solve both problems. 8) After steps 6 and 7 you should have a board with all the all the pin holes free of solder so that you can insert the new memory chips. Certain holes which are part of large traces are take more effort to unsolder because there is more solder in them. All holes need to be open in order to insert the new memory chips. Do the capacitor holes as well if necessary. 9) Place the new memory chips in the old holes and solder them in. Make sure they face the same way as the originals. You need only solder the chips from the bottom of the board, the plate-through holes will do the rest. 10) There are two jumpers that need to be soldered to enable the extra memory. They are labeled J1 and J2 on the board. Cut a piece of wire, strip the ends and solder the ends across the jumpers. 11) Reinstall the board into the PRO. 12) The P/OS toolkit ``show memory'' command should show 512K WORDS (1024K bytes) of memory with only the two mother boards installed. We have upgraded four boards this way so far and not one has failed so far. All the memory chips we used were tested in another computer (one with sockets) before they were installed. You may want to solder sockets into your memory board instead of the chips themselves. If you have bad memory when you start up your PRO it would be much easier to replace a socketed memory chip than a soldered one. Although we have singe'd a few boards perfecting this method the damage was only cosmetic. Removing the memory chips over the burner is the most difficult part of the operation. Todd Miller tmiller@chaos.cs.brandeis.edu ************************** Q7. Along with the Pro-380 I received three RAM boards. I know that the slots in the Pro computers are dedicated, RAM goes in a specified slot, video in another, etc. Can all three RAM boards be put in and be recognized? Actually, if I remember correctly some of the boards were slot dependent, others weren't. Additional memory is useful up to a point (J-11 max physical memory address is 22 bits) depending on what's already in the system. The base memory is daughter boards on the CPU motherboard, expansion memory can be added as modules in the CTI bus. The memory modules should self configure and play (if it all works :-). - Bruce McCulley ************************** Q8. Can I put a hard drive and controller card in my Pro 325 to convert it to a Pro 350? Possibly. The standard method of conversion is to purchase the upgrade kit which consists of new motherboard, stronger power supply, and hard drive with hard drive controller card. It costs a lot of money. I tried to take a shortcut and simply put the hard drive controller card into the Pro 325. DEC glued plastic over the connector edges of the slot that the HD controller card fits into in order to discourage people from just inserting a drive. You have to spend some time carefully cleaning the connector edges of glue and plastic pieces (DEC used a strong glue). I called DEC and asked them if it was possible and the person who I spoke with said he has heard of only two people who succeeded. I did not, but my HD was bad to begin with. Chaim Dworkin chaim@linc.cis.upenn.edu ************************** Q9. Is there any possible way of doing any kinda modification to my Pro 350 to turn it into a Pro 380? Answer: No. The F11 and J11 chips are wildly different. If you could scrounge a Pro380 system board, you could probably replace the 350 system board with that. IMHO, having a 380 doesn't give much additional return. Oh sure, the chip is much more capable than the F11, but with super mode, I/D space, and cache permanently turned off, what real gain is there other than a little bit of CPU speed? I find the stupid disk controller in my 380 to be more of a problem in throttling the performance of the system. BTW, DEC did once put up genuine RSX-11M-Plus on the 380. The conditionals are still there in the Exec source to make it work. Haven't got around to trying it yet, but one of these days ... ************************** Q14. Is there any way to make a PRO floppy bootable? You can build a bootable PRO floppy on an 11/23+, assuming that you have all the pieces (like the distribution kit). The PROs floppies are called DZ and the winny is DW. You also need the PRO's screen driver (it's a bit-mapped screen) called PI. Finally, you have to have either RT11FB or RT11XM; SJ won't run on it :-(. Basically, you should copy (SWAP,RT11XM,DZ,DW,PIX).SYS to the floppy and then COPY/BOOT:DZ to the floppy. You should then have a bootable RT-11 diskie for the thing. From there you can format the hard disk (if you copy FORMAT.SAV over) and install on the hard disk. Roger "I converted a Pro from P/OS to RT-11" Ivie ivie@cc.usu.edu ************************** >> 2. How does a pro350/380 boot from a floppy? - where shoud >> stuff be stashed? how does the pro know where to go?? >> thanks for your patience.. > > For both systems, the boot block is block 0. This is where > you'll find the first executable code for the system. >From DEC literature on the Professional 300 series: The boot block location for 5-1/4 inch diskettes Track 1 (Track numbers start at 0.) Sector 1 (Sector numbers start at 1.) You also need the added magic header numbers at the start of the boot block to be recognised as a boot block. Ken Wellsch (kcwellsc@watdragon.uwaterloo.ca) In further discussion of the above message, Megan Gentry writes: >Can you give specifics about the magic numbers required for bootability, >and/or a DEC spec for what it's called? There are no real magic numbers. There are values which are required in certain words of the boot block (block 0), but they will be filled in by the operating system when you initialize the volume with the file structure the system plans on using. The first word (offset 0) of the boot block should contain 240 (which is a no-op). The second word generally contains a BRanch instruction to a location elsewhere in the first block. On entry to the boot code, the rom bootstrap generally sets R0 to contain the unit number of the unit being booted, and R1 contains the device base CSR. Megan Gentry mbg@world.std.com Charles Lasner replies to Gentry's message: Apparently this isn't true. Certain bytes of the boot block on an RX50 have to conform to something. It was imposed on the DECmate as well, but I've not seen any "official" reference to it. The DM situation is quite troublesome to the prevailing software there and actually significantly hamstrings certain programs! The ROM's of the DM clearly check for validity using a subset of these values, as if the full spec comes from elsewhere. The values aren't random, but rather are always present in a predictable manner. (PS: they aren't code or data to a boot program or anything like that. In fact, their mere presence hinders the boot process. Clearly someone insisted they be present for "compatibility" with something. It's that compatibility issue I seek here, etc.) What you answered is unrelated to this question. Of course certain other bytes have to be what they have to be just so the device boots at all! But these values fall into the "magic numbers" category, etc. -- Charles Lasner lasner@watsun.cc.columbia.edu I just created a bootable RX50 for my PRO using RT-11 and the first few words contain the following: 0/ 000240 nop 2/ 000415 br 36 4/ 000000 . . 32/042020 34/115420 36/000400 br 40 40/000137 jmp @# 42/000556 556 I'll have to check the sources for why the branch to a branch, but that's basically the start of the RT bootstrap for a DZ volume (RX50 for the PRO) the next section of the boot starts at offset 556 (location 556 when loaded into memory). Just wanted to point out that the supposedly *magic* numbers aren't so *magic* or required. I guess the bottom line in all of this is - what are you trying to do? If you have a booting system, then it *should* be able to produce more bootable volumes. If not, then its sort of a catch-22, you can't produce a bootable volume without the running system and you can't get a running system without a bootable volume. Megan Gentry mbg@world.std.com Okay, I'm in my office looking at the manual "CTI BUS: Technical Manual" EK-OOCTI-TM-002 in appendix B titled "Boot Block Standard for Professional 300 Series" and it has this (so people can translate): B.3 Boot Block Contents (All numbers are in octal unless otherwise noted.) Byte 0 240 Type 1 boot block or 0 Type 2 or 4 boot block or 241-277 Type 3 boot block Byte 1 0 Type 1, 2, or 3 boot block or 20 Type 4 boot block Byte 2 N Offset from 0 to identification area, in words Byte 3 1 System volume or 0 Data volume Byte 4 4 Type 1 data volume only Byte 5 1 Type 1 data volume only unfortunately the Identification Area description goes on for two pages. --Ken Wellsch kcwellsc@watdragon.uwaterloo.ca ************************** End of part I: DEC Professional Computer FAQ.