From johnv@dcs.rhbnc.ac.uk Tue May 3 08:56:42 EDT 1994 Article: 786 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!corpgate!news.utdallas.edu!wupost!udel!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!pipex!doc.ic.ac.uk!sun.rhbnc.ac.uk!cad2.cs.rhbnc.ac.uk!johnv From: johnv@cad2.cs.rhbnc.ac.uk (John E. Veness) Newsgroups: alt.sys.pdp8 Subject: PDP-8 pictures online Date: 2 May 1994 03:39:17 GMT Organization: Royal Holloway, Uni of London Lines: 23 Message-ID: <2q1sl5$qah@sun.rhbnc.ac.uk> Reply-To: johnv@dcs.rhbnc.ac.uk NNTP-Posting-Host: cad2.cs.rhbnc.ac.uk X-Newsreader: TIN [version 1.2 PL2] Dear All, I am nearing the time when my PDP-8 simulator project has to be handed in to my university. For my report, which I am LaTeXing, I thought it would be nice to include a picture of a PDP-8 as a figure. I have a file pdp8_1.jpg which I remember getting from somewhere on the net, but I cannot find where - I've looked in all the sites mentioned in the FAQ. If any1 knows where I can get pictures from, can they please *mail* me (johnv@dcs.rhbnc.ac.uk) as I won't be reading this group, because of the workload. Also if any1 has any hints how to make 256 colour GIFs look good as 2 colour PostScript files! John Veness PS I'll probably release this project to the net, copyright permitting.. and if I actually finish it! -- _ John Veness |_)_ | _, _, _ johnv@dcs.rhbnc.ac.uk | (_'|(_|(_|(_) (_) From ard@siva.bris.ac.uk Tue May 3 09:00:23 EDT 1994 Article: 787 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!corpgate!news.utdallas.edu!wupost!howland.reston.ans.net!pipex!warwick!bsmail!siva.bris.ac.uk!ard From: ard@siva.bris.ac.uk (PDP11 Hacker .....) Subject: Re: My second PDP8 Message-ID: <2MAY199417172937@siva.bris.ac.uk> News-Software: VAX/VMS VNEWS 1.41 Sender: usenet@info.bris.ac.uk (Usenet news owner) Nntp-Posting-Host: siva.bris.ac.uk Organization: University of Bristol Physics Department References: <30APR199400370720@siva.bris.ac.uk> <2q1s92$9om@nexus.uiowa.edu> Date: Mon, 2 May 1994 16:17:00 GMT Lines: 102 In article <2q1s92$9om@nexus.uiowa.edu>, jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) writes... >From article <30APR199400370720@siva.bris.ac.uk>, >by ard@siva.bris.ac.uk (PDP11 Hacker .....): >> >> Now, I've not even powered the machine up yet - is there anything I >> should know before I do. > >Welcome to the club! My suggested sequence for bringing your new machine >up: Well, I've now powered it up, and after a little work, I've got it to run the 'Accumulator Incrementing test' in the front of the maintenance manual. I guess that means that most of the machine is working. > >1) Pull the boards from the backplane and dust it! Vacuum cleaner, > compressed air, etc are all good. Yes, did that. Also ripped off the decaying fan filter, on the grounds it would add more dust than it removed. > >2) Check the power supply output voltages, and while you're at it, check > that the cooling fans all spin under power. Opened up PSU, reseated A1 and A2 control modules, checked wiring, connected voltmeter to +5V line, powered up. +5V line spot on. Then checked the +15/-15 lines. Forgot at this point to check the Power OK line, see below. > >3) Put in the bus terminator and front panel, then power it up and verify > that you've got minimal functionality (not much). Basically, verify that > you have a good backplane between terminator and front panel, and that > the panel has some working lights and switches. At this point I added the CPU (3 boards - timing, regs, reg control), Bus loads, front panel. Found I could load address, but nothing else. BTW, my front panel has LEDs (like an 8/m), not bulbs, but I have the H724 PSU. The machine says PDP8/e on the front. So, I had to do some debugging. First place was on the console board, where I checked the correct control signals were being generated on an Examine. Still no luck - the signals were right, and the address still did not increment. Then I put the timing board on an extender, and looked at the run flip-flop signals with a logic probe. The Set input was being pulsed, but there was no latching action, and the timing generator was not starting. Aha, the clear input is stuck low. Why? Because the Power OK signal from the PSU is low. (This was being done in the early hours of the morning, and was nowhere near as quick as I'm making it out to be - I was digging through a lot of manuals and logic). So, a PSU problem. Out came the PSU, and I put the A2 board on a single extender from my PDP12 spares box (:-)). A bit of work with a voltmeter revealed that pin 6 of the module was at 0V. So, I thought the fault was on the A1 module, and for some reason the -15V supply was thought to be faulty (the -15V line was fine). Now, I put the A1 module on the extender, and spend a long time digging through the circuitry, to find nothing (Incidentally, my copy of the 8e printset does not contain layouts of the A1,A2 PSU modules - should it?). In the end, I checked with an ohmeter, and found that pin 6 of the modules (The power fail link between them) was shorted to ground. After removing the edge connectors, I found a trapped wire. So, I repositioned it, reassembled the PSU module (The screws in the edge connector assembly are impossible to get at !!!), and tested again. Power OK now at 4.5V. Refitted PSU, tried again. Examine/deposit now increment address > >4) Power down, add one memory module, and add the master CPU clock module. > You can now load and store in memory from the lights and switches. Test > a bit of memory (can you store 7777 0000 5252 2525 in 4 successive > locations?) At this point, I added all the memory - it was on a separate backplane, so I moved the Bus Loads into the rearmost slot, and fitted a couple of M935 (?) jumpers. > >5) Power down, add the CPU, then toggle in a tiny program, some classic > like LOOP,IAC; JMP LOOP. It should run. My CPU was already in, so I toggled in the CPU test (4 instructions, can't remember what) from the maintenance manual. It worked! > >6) Drop in an asynch port, add an asynch terminal, and toggle in some > code to echo what you type. Added all my other modules, and checked that the program still ran. It did. No tests on the other stuff (like serial ports, disks) yet. > >7) etc. > >On my surplus PDP-8/F, I had to start fixing things at step 2, 3, and 6. >Good luck! > Doug Jones > jones@cs.uiowa.edu Well, my problems were mechanical(ish), but it now seems to work. -tony Bristol University takes no responsibility for the views expressed in this posting. They are the personal views of the user concerned. From ivie@cc.usu.edu Tue May 3 09:01:06 EDT 1994 Article: 788 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!corpgate!news.utdallas.edu!wupost!gumby!newsxfer.itd.umich.edu!sol.ctr.columbia.edu!howland.reston.ans.net!agate!dog.ee.lbl.gov!hellgate.utah.edu!cc.usu.edu!ivie From: ivie@cc.usu.edu Newsgroups: alt.sys.pdp8 Subject: Re: 1's complement arithmeti Message-ID: <1994May2.092332.17813@cc.usu.edu> Date: 2 May 94 09:23:32 MDT References: <12a.66.2370.0N3E1830@human.enet.dec.com> Distribution: world Organization: Utah State University Lines: 11 In article <12a.66.2370.0N3E1830@human.enet.dec.com>, :supnik@human.enet.dec.com writes: > By the way - an urgent request to a decSter with some interest in > history. Heard word DEC was moving out of the old Maynard Mills. What? Again? That rumor was floating around a while ago. Supposedly, moving DEC corporate headquarters to Texas was going to be Robert Palmer's big reward for showing some profit. Hasn't managed it yet... -- ----------------+------------------------------------------------------ Roger Ivie | Don't think of it as a 'new' computer, think of it as ivie@cc.usu.edu | 'obsolete-ready' From Kevin@kmurrell.demon.co.uk Tue May 3 09:04:20 EDT 1994 Article: 789 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 From: Kevin@kmurrell.demon.co.uk (Kevin Murrell) Path: bigblue.oit.unc.edu!concert!news.duke.edu!convex!cs.utexas.edu!howland.reston.ans.net!pipex!uknet!demon!kmurrell.demon.co.uk!Kevin Subject: An English PDP8? Organization: Home Reply-To: Kevin@kmurrell.demon.co.uk X-Newsreader: Demon Internet Simple News v1.27 Lines: 111 Date: Sat, 30 Apr 1994 13:52:14 +0000 Message-ID: <767713934snz@kmurrell.demon.co.uk> Sender: usenet@demon.co.uk I have been reading a great deal about the PDP8 in this newsgroup and a lot of the discussion about the 8 sounded very similar to an English Minicomputer I used to work with. An English company, variously known as Business Computers Ltd, BCL, and Business Computers (Systems) Ltd., produced a machine known as the Molecular (In its last few years the name changed to the Distributor). The machine had a word length of 18 bits, was generally programmed directly in machine code (without the aid of an assembler!), and was configured with between 16K and 64K of Memory (Initially core, later static RAM with NICAD battery backup). Offline storage was CDC Hawk Drives, and later CDC Lark Drives. There were earlier options but before my time. A general overview of the system was CPU Primary Storage A Reg Memory (16K to 64K) B Reg (Bank switched to 128K) MA Memory Address PC Program Counter 17bits + Parity Bit C Carry Flag GT Greater Than Flag The intruction set was in the form 17| 16| 15| 14| 13| 12| 11| 10| 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 OpCode(2-26) |i/d|z/c| --------memory address--------------- OpCode(00) | mode |a/b| ---register microinstructions---- OpCode(01) |a/b| function | ------device code------------ i/d = indirect or direct addressing a/b = Register A or B z/c = Zero Page or Current Page The basic memory reference instruction set was quite adequate with Add and Subtract with or without Carry Logical AND, OR and exclusive OR Increment and skip in zero Decrement and skip on zero Load and Store Compare and set GT Flag All operated on either Register A or B Jump was not unusual, but Jump To Subroutine I thought was quite unique : JSBR transferred control to the address specified + 1. It stored the return address (known as the back address) in the address specified by the JSBR instruction. Therefore at the end of the routine you simply did an indirect jump through the back address! Sounds familier? Register instructions included Clear,Shift Left, Shift Right, Clear Carry, Set Carry, Swap, Increment, Decrement, Skip if (Bit1=0, or Bit16=0, or Bit17=0), One's complement. The instructions could also be combined, for instance : Clear carry would be 002400(8) 00 000 010 100 000 000 Left shift Reg A would be 003300(8) 00 000 011 011 000 000 These could be combined into 003700(8) 00 000 011 111 000 000 One instruction that cleared the carry flag, and left shifted Reg A I must say that combining anything more complex than this was beyond most of us. IO instructions were very limited, and very generic, there were no specific instructions for different peripherals (such as there seem to be with the PDP8). Basically there was read 8 bits from device register, write 8 bits to device, and wait on ready flag. Interrupt On also functioned like the PDP8 in waiting one cycle before enabling interrupts. One 'clever' feature of the machine was Power Fail handling, the machine would pick its self up and carry on automatically after a power fail. All moleculars had very spectacular front panels. Lots of switches and lights. Even if in later models these were covered up with a smart cover, they were always required in actual use. Without the benefit of any memory protection, rogue programs ran through memory creating havoc, and the only solution was to reload the OS bootstrap through the switches on the front panel. The two main OS's for the machine were really only a set of programmers utilities to load and save blocks of core, and allocate areas of disk for data storage. The OS did allow multi-tasking however, and twenty users ran comfortably on a 64K machine. The OS wasn't pre-emptive, and again rogue programs stuck in a loop would stop everyone else working. As time went on we learnt to stop the machine using the front panel and set the PC back into an address in the OS and return to rogue task back to the OS prompt! Probably less than 1000 were installed, primarily onto small commercial operations. From a 1973 issue of Computing (UK) the cost of the machine was quoted at between 2,200 and 22,000 UK Pounds. This would have comparable with the UK price of the PDP8/e and PDP8/f. There are still some in use, but are fading fast. My lasting memory was the relatively small group of people that could program these machine. We are all grown up now and are stuck with character-less boxes running slow and over fussy software on increasingly more over-blown machines. No one believes that 20 users could work quite happily with a machine with only 64k !! ---------------------------------------------------------------------------- Kevin Murrell Sutton Coldfield England ---------------------------------------------------------------------------- From lasner@sunSITE.unc.edu Tue May 3 09:19:27 EDT 1994 Article: 790 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!sunSITE!lasner From: lasner@sunSITE.unc.edu (Charles Lasner) Newsgroups: alt.sys.pdp8 Subject: Re: 1's complement arithmeti Date: 3 May 1994 12:52:55 GMT Organization: University of North Carolina, Chapel Hill Lines: 22 Message-ID: <2q5hf7$k7v@bigblue.oit.unc.edu> References: <12a.66.2370.0N3E1830@human.enet.dec.com> NNTP-Posting-Host: calzone.oit.unc.edu In article <12a.66.2370.0N3E1830@human.enet.dec.com>, <:supnik@human.enet.dec.com> wrote: >BS>Message-ID: <2pht8o$3k7@sousa.amt.ako.dec.com> > [david.razler@compudata.com] > (who carries an XX2247 key at all > times Never know when it might come > in handy) What! You only carry around: *ONE* ACE key? You never know when you need to turn on a room of machines. Wear them as a necklace. cjl From lasner@sunSITE.unc.edu Tue May 3 09:20:30 EDT 1994 Article: 791 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!sunSITE!lasner From: lasner@sunSITE.unc.edu (Charles Lasner) Newsgroups: alt.sys.pdp8 Subject: Re: An English PDP8? Date: 3 May 1994 13:18:17 GMT Organization: University of North Carolina, Chapel Hill Lines: 29 Message-ID: <2q5iup$tc2@bigblue.oit.unc.edu> References: <767713934snz@kmurrell.demon.co.uk> NNTP-Posting-Host: calzone.oit.unc.edu In article <767713934snz@kmurrell.demon.co.uk>, Kevin Murrell wrote: > >No one believes that 20 users could work quite happily with a machine >with only 64k !! My newswire system runs 40 tasks in 32K. Each could be defined as a terminal user. In practice about 25 actually were. The rest were special-purpose lines dedicated to some incoming or outgoing service. A standard configuration was 4 8-channel Telcon multiplexors, 03/04 console, PC04 reader/punch, device 66 LPT and a few "extra" lines such as device 40/41 KL8-JA plus limited support for a VT8E. Some lines ran Baudot and had to be translated by table lookup, etc. (Also it supported Baudot variants where un-shift on space does/does not exist, etc.) Any line defined to output files instead of edit them, etc. could additionally be defined as requiring an audit trail; this was used off-line for customer billing, etc. All file outputs were fully queued and could have their priority changed if needed. Also, this way the system could go down real fast and be restarted later without loss. Power-fail made it all possible (this is a 32K core machine, an -8/e!) cjl From gsc@cairo.anu.edu.au Wed May 4 02:54:22 EDT 1994 Article: 792 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!zombie.ncsc.mil!MathWorks.Com!europa.eng.gtefsd.com!library.ucla.edu!ihnp4.ucsd.edu!munnari.oz.au!newshost.anu.edu.au!cairo!gsc From: gsc@cairo.anu.edu.au (Sean Case) Newsgroups: alt.sys.pdp8 Subject: Re: An English PDP8? Date: 1 May 94 12:11:22 GMT Organization: Australian National University Lines: 21 Message-ID: References: <767713934snz@kmurrell.demon.co.uk> NNTP-Posting-Host: 150.203.76.16 Kevin@kmurrell.demon.co.uk (Kevin Murrell) writes: >Jump was not unusual, but Jump To Subroutine I thought was quite unique : >JSBR transferred control to the address specified + 1. It stored the >return address (known as the back address) in the address specified by >the JSBR instruction. Therefore at the end of the routine you simply >did an indirect jump through the back address! Sounds familier? This was quite a common trick - after all, where are you going to put the return address? There's no stack as such, you don't really have a register you can spare, and you can't put more than one memory address in an instruction. The only choice left is to put it somewhere near the top of the subroutine, so the same address field can point to both the routine and the return address storage. Sean Case -- Sean Case gsc@cairo.anu.edu.au "November 11 - Ned Kelly died, ahh shame Fraser shame and we all cried." -- The Whitlams, "Gough" From jones@pyrite.cs.uiowa.edu Wed May 4 09:19:54 EDT 1994 Article: 793 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!convex!cs.utexas.edu!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: Re: My second PDP8 Date: 2 May 1994 03:32:50 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 37 Distribution: world Message-ID: <2q1s92$9om@nexus.uiowa.edu> References: <30APR199400370720@siva.bris.ac.uk> NNTP-Posting-Host: pyrite.cs.uiowa.edu >From article <30APR199400370720@siva.bris.ac.uk>, by ard@siva.bris.ac.uk (PDP11 Hacker .....): > > Now, I've not even powered the machine up yet - is there anything I > should know before I do. Welcome to the club! My suggested sequence for bringing your new machine up: 1) Pull the boards from the backplane and dust it! Vacuum cleaner, compressed air, etc are all good. 2) Check the power supply output voltages, and while you're at it, check that the cooling fans all spin under power. 3) Put in the bus terminator and front panel, then power it up and verify that you've got minimal functionality (not much). Basically, verify that you have a good backplane between terminator and front panel, and that the panel has some working lights and switches. 4) Power down, add one memory module, and add the master CPU clock module. You can now load and store in memory from the lights and switches. Test a bit of memory (can you store 7777 0000 5252 2525 in 4 successive locations?) 5) Power down, add the CPU, then toggle in a tiny program, some classic like LOOP,IAC; JMP LOOP. It should run. 6) Drop in an asynch port, add an asynch terminal, and toggle in some code to echo what you type. 7) etc. On my surplus PDP-8/F, I had to start fixing things at step 2, 3, and 6. Good luck! Doug Jones jones@cs.uiowa.edu From ard@siva.bris.ac.uk Wed May 4 09:20:42 EDT 1994 Article: 794 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!inxs.concert.net!taco.cc.ncsu.edu!lll-winken.llnl.gov!fastrac.llnl.gov!s1.gov!overload.lbl.gov!agate!howland.reston.ans.net!pipex!uknet!gdt!bsmail!siva.bris.ac.uk!ard From: ard@siva.bris.ac.uk (PDP11 Hacker .....) Subject: My second PDP8 Message-ID: <30APR199400370720@siva.bris.ac.uk> News-Software: VAX/VMS VNEWS 1.41 Sender: usenet@info.bris.ac.uk (Usenet news owner) Nntp-Posting-Host: siva.bris.ac.uk Organization: University of Bristol Physics Department Date: Fri, 29 Apr 1994 23:37:00 GMT Lines: 20 As mentioned in my previous posting, I could have obtained a PDP8e. Well, I've now got it, and I'm in love.... No, I don't know much about it yet, but it came with a lot of circuit diagrams (for the PDP8e CPU, Extended address option, EAE, memory, serial port, RK8, etc. No, I don't have all that lot). What I seem to have is : PDP8e CPU, extended address, 3 serial ports, 32K(? 4 sets of I think 8K) Core, printer(?) port, line clock, RK8. Also, spare RK8, and some other boards. Manuals : printsets for most of that, PDP8e maintenance manual (all 3 volumes !!), assorted user guides and... (Don't all jump on me at once) ... An almost complete set of _PDP12_ maintenance manuals... (No, they're not up for grabs). Now, I've not even powered the machine up yet - is there anything I should know before I do. I was intending to test the PSU off-load before I connect any logic to it, but is there anything else to be aware of? -tony Bristol University takes no responsibility for the views expressed in this posting. They are the personal views of the user concerned. From wilsonj@alum01.its.rpi.edu Wed May 4 09:22:41 EDT 1994 Article: 795 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news-feed-1.peachnet.edu!news.duke.edu!zombie.ncsc.mil!MathWorks.Com!noc.near.net!usenet.elf.com!rpi!wilsonj From: wilsonj@alum01.its.rpi.edu (John Wilson) Newsgroups: alt.sys.pdp8 Subject: Re: An English PDP8? Date: 3 May 1994 18:43:03 GMT Organization: Rensselaer Polytechnic Institute, Troy NY Lines: 17 Message-ID: <2q65vn$ljk@usenet.rpi.edu> References: <767713934snz@kmurrell.demon.co.uk> <2q5iup$tc2@bigblue.oit.unc.edu> NNTP-Posting-Host: alum01.its.rpi.edu In article <2q5iup$tc2@bigblue.oit.unc.edu>, Charles Lasner wrote: >Some lines ran Baudot and had to be translated by table lookup, etc. >(Also it supported Baudot variants where un-shift on space does/does not >exist, etc.) Sigh... Now you're making me all misty-eyed... I used to have hundreds of pounds of Baudot TTYs, but none of mine had the USOS option. Those were the days... you had to re-send FIGS in case the receiving TTY had USOS, and you ended your lines with CR CR LF LTRS LTRS, the extra CR was in case the receiver's dashpot was adjusted too loose and the carriage was bouncing off the stop, and the LTRS's were to give the machine time to settle down after the line feed. Just seeing a comma printed on a model 15 gives me a warm cozy feeling... kind of the opposite of the feeling you get from accidentally touching the loop supply! John KC1P From lasner@sunSITE.unc.edu Wed May 4 12:14:26 EDT 1994 Article: 796 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!sunSITE!lasner From: lasner@sunSITE.unc.edu (Charles Lasner) Newsgroups: alt.sys.pdp8 Subject: Re: An English PDP8? Date: 4 May 1994 13:30:02 GMT Organization: University of North Carolina, Chapel Hill Lines: 44 Message-ID: <2q880q$e6p@bigblue.oit.unc.edu> References: <767713934snz@kmurrell.demon.co.uk> <2q5iup$tc2@bigblue.oit.unc.edu> <2q65vn$ljk@usenet.rpi.edu> NNTP-Posting-Host: calzone.oit.unc.edu In article <2q65vn$ljk@usenet.rpi.edu>, John Wilson wrote: >In article <2q5iup$tc2@bigblue.oit.unc.edu>, >Charles Lasner wrote: >>Some lines ran Baudot and had to be translated by table lookup, etc. >>(Also it supported Baudot variants where un-shift on space does/does not >>exist, etc.) > >Sigh... Now you're making me all misty-eyed... I used to have hundreds >of pounds of Baudot TTYs, but none of mine had the USOS option. Those >were the days... you had to re-send FIGS in case the receiving TTY had >USOS, and you ended your lines with CR CR LF LTRS LTRS, the extra CR was >in case the receiver's dashpot was adjusted too loose and the carriage >was bouncing off the stop, and the LTRS's were to give the machine time >to settle down after the line feed. Just seeing a comma printed on a >model 15 gives me a warm cozy feeling... kind of the opposite of the >feeling you get from accidentally touching the loop supply! > >John KC1P Yes, you don't want to touch the 60 ma power supply! Amazingly enough these sparky things didn't affect the PDP-8/e! The original network was a baudot paper-tape to printer system as a classic news-wire, and as the system was being automated to the -8/e, there were still some of the original terminals out there. By the time the -8/e system was fully operational (1978) there was still baudot, but it had been upgraded to a bunch of little printers that ran at 112.5 baud and definitely had usos and no delay problems. The paper-tapes were almost phased out, but were now all ASCII, so they got read into the PC04 and some serial readers. (Basically there was little baudot traffic incoming, and it only came from a lone telex infrequently. The paper-tape of that traffic would be read into a Facit-Addo reader that had a translate-to-ASCII mode, so to the -8/e it looked like another ASCII serial reader. An alternate station on the Facit also took care of the twx input, also seldomly needed. Most of the input traffic came from modems by then (other than the bulk of the in-house editted stuff, etc.) cjl From jones@pyrite.cs.uiowa.edu Thu May 5 05:11:31 EDT 1994 Article: 797 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!corpgate!news.utdallas.edu!chpc.utexas.edu!cs.utexas.edu!howland.reston.ans.net!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: PDP-8's in the schools Date: 4 May 1994 14:25:10 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 203 Distribution: world Message-ID: <2q8b86$7de@nexus.uiowa.edu> NNTP-Posting-Host: pyrite.cs.uiowa.edu About two weeks ago, my son (age 11) said: "Dad, we've got an all school project coming up, and I'd like to take your PDP-8 and hook it up with two terminals so people can talk to each other." I asked for more detail, and it turned out that the all school project is on communications, all kinds, and each kid was supposed to do a project for it, leading up to a communications fair on this coming Thursday. Back when I was debugging my KL8E boards, I had toggled in a little program to read from either of two boards and echo to both, and he remembered enjoying playing with it. So, over the last two weeks, we've struggled. Most of the work was in helping him get the information he needed for his poster describing the project. His poster focuses on the ASCII code, and how ASCII characters are sent over a serial line. I stripped down my PDP-8/F, removing everything but the CPU, memory, and 2 KL8E boards, and then, over and over, I had my son plug the machine in, plug together the terminals and machine, and power the thing up, start the program, and test it, then halt it, power down, and unplug everything -- now he can do that without notes. Finally, I wrote an better demo version of the program. It reads from either terminal and echos to both, but it also echos CR as CR-LF, it echos BS as BS-SP-BS, and it echos RUB as RUB-BS-SP-BS. As an added bonus, I added a trap for ESC that echos the startup test message (that begins with NULL), thus preventing people from accidentally setting the terminals into funny states with accidental escape sequences. The biggest pain was getting the program loaded in the PDP-8. I bought an RS-232 cable to connect my laptop UNIX system to the world, but I'd never tried it yet (after all, until I tried downloading code into the PDP-8, the internal modem and ethernet interfaces were all I needed). Unfortunately, the laptop has an Apple style asynch plug on the back, and the cable I bought omitted one line the box wanted. It took me an hour with a voltmeter, tweezers, and hair thin wire to diagnose and kluge around that problem, and then I was able to spit RIM code down the wire into the PDP-8. I put two copies of the program in core, one at address 200 and another at 400, so that there's a backup copy available in case someone bounces on the deposit switch. Today, I delivered the PDP-8, an ADM31 and an ADM5 to school -- while other students were arriving with boxes of ants, string and tincan telephones, posters on sanskrit or braille, and a wealth of other projects demonstrating communication of one kind or another. So, for the next two days, my son will have a PDP-8 key in his pocket. I hope other owners of antique computers can get them into the schools for demonstrations! I think machines with blinking lights, switches, and other details we're missing on our modern computers can make a real contribution to students understanding of where we are today and how different things were only a short time ago. Doug Jones jones@cs.uiowa.edu PS. Here's an assembly listing of the program (from my UNIX-based PDP-8 cross assembler): 1 / Instruction mnemonics for input output 2 TFL= 6040 3 TFL1= 6410 4 KCF= 6030 5 KCF1= 6400 6 KSF= 6031 7 KSF1= 6401 8 KRB= 6036 9 KRB1= 6406 10 TLS= 6046 11 TLS1= 6416 12 TSF= 6041 13 TSF1= 6411 14 15 / ASCII characters 16 BS= 0210 / backspace 17 LF= 0212 / linefeed 18 CR= 0215 / carriage return 19 SP= 0240 / space 20 ESC= 0233 / escape 21 RUB= 0377 / rubout 22 23 *0200 24 / Special startup actions 25 00200 6040 START, TFL / Reset output to terminal 0 26 00201 6410 TFL1 / Reset output to terminal 1 27 00202 6030 KCF / Reset input from terminal 0 28 00203 6400 KCF1 / Reset input from terminal 1 29 30 00204 7200 MSGOUT, CLA / Setup to output a message 31 00205 1377 TAD (MSG-1) / Get the address of the message 32 00206 3010 DCA 10 / put it in an index register 33 00207 1410 MSGLP, TAD I 10 / Get a character of the message 34 00210 7450 SNA / if nonzero, skip 35 00211 5215 JMP WAITIN / if zero, go wait for input 36 00212 4257 JMS OUTPUT / if nonzero, output character 37 00213 7200 CLA / Clear it up 38 00214 5207 JMP MSGLP / and process the next char 39 40 / Code to read from one or the other keyboard 41 00215 6031 WAITIN, KSF / Is there input from term 0? 42 00216 7410 SKP / if not, skip 43 00217 5224 JMP IN0 / if so, go get it 44 00220 6401 KSF1 / Is there input from term 1? 45 00221 5215 JMP WAITIN / if not, go wait for input 46 / if so, go get it 47 48 00222 6406 IN1, KRB1 / Read the input from term 1 49 00223 5225 JMP OUT / then go output it 50 51 00224 6036 IN0, KRB / Read the input from term 0 52 / then go output it 53 54 / Code to output to both displays 55 00225 4257 OUT, JMS OUTPUT / Output the character 56 00226 1376 TAD (-CR) / Is it CR (carriage return)? 57 00227 7450 SNA / if not, skip next line 58 00230 5244 JMP CRFIX / if so, special action 59 00231 1375 TAD (CR-BS) / Is it BS (backspace)? 60 00232 7450 SNA / if not, skip next line 61 00233 5247 JMP BSFIX / if so, special action 62 00234 1374 TAD (BS-RUB)/ Is it RUB (rubout)? 63 00235 7450 SNA / if not, skip next line 64 00236 5254 JMP RUBFIX / if so, special action 65 00237 1373 TAD (RUB-ESC)/Is it ESC (escape)? 66 00240 7450 SNA / if not, skip next line 67 00241 5204 JMP MSGOUT / if so, special action 68 00242 1372 TAD (ESC) / Undo funny effects of tests 69 00243 5215 JMP WAITIN / then go get more input 70 71 / Code for special actions after some codes 72 00244 4267 CRFIX, JMS OUTCON / For CR 73 00245 0212 LF / follow it with LF 74 00246 5215 JMP WAITIN / then go get more input 75 76 00247 4267 BSFIX, JMS OUTCON / For BS 77 00250 0240 SP / follow it with SP 78 00251 4267 JMS OUTCON / and 79 00252 0210 BS / follow that with BS 80 00253 5215 JMP WAITIN / then go get more input 81 82 00254 4267 RUBFIX, JMS OUTCON / For RUB 83 00255 0210 BS / follow it with BS 84 00256 5247 JMP BSFIX / finish up same as BS 85 86 / Routine to output a character to both terminals 87 00257 0000 OUTPUT, .-. 88 00260 6041 TSF / Is term 0 ready to output? 89 00261 5260 JMP .-1 / if not, wait 90 00262 6046 TLS / if so, output to term 0 91 00263 6411 TSF1 / Is term 1 ready to output? 92 00264 5263 JMP .-1 / if not, wait 93 00265 6416 TLS1 / if so, output to term 1 94 00266 5657 JMP I OUTPUT / Return 95 96 / Alternate entry to output a character constant 97 00267 0000 OUTCON, .-. 98 00270 7200 CLA / Clear 99 00271 1667 TAD I OUTCON / and get the constant 100 00272 4257 JMS OUTPUT / then put it out 101 00273 2267 ISZ OUTCON / and advance the return address 102 00274 5667 JMP I OUTCON / Return 103 104 / The output message, on startup or ESC 105 00275 0200 MSG, 0200 / null 106 00276 0215 CR 107 00277 0212 LF 108 00300 0212 LF 109 00301 0320 0320 / P 110 00302 0304 0304 / D 111 00303 0320 0320 / P 112 00304 0255 0255 / - 113 00305 0270 0270 / 8 114 00306 0240 SP 115 00307 0303 0303 / C 116 00310 0357 0357 / o 117 00311 0355 0355 / m 118 00312 0355 0355 / m 119 00313 0365 0365 / u 120 00314 0356 0356 / n 121 00315 0351 0351 / i 122 00316 0343 0343 / c 123 00317 0341 0341 / a 124 00320 0364 0364 / t 125 00321 0351 0351 / i 126 00322 0357 0357 / o 127 00323 0356 0356 / n 128 00324 0240 SP 129 00325 0320 0320 / P 130 00326 0362 0362 / r 131 00327 0357 0357 / o 132 00330 0347 0347 / g 133 00331 0362 0362 / r 134 00332 0341 0341 / a 135 00333 0355 0355 / m 136 00334 0215 CR 137 00335 0212 LF 138 00336 0212 LF 139 00337 0000 0 140 00372 0233 $ 00373 0144 00374 7611 00375 0005 00376 7563 00377 0274 From ard@siva.bris.ac.uk Thu May 5 05:50:18 EDT 1994 Article: 798 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!xanth.cs.odu.edu!news.larc.nasa.gov!lerc.nasa.gov!magnus.acs.ohio-state.edu!math.ohio-state.edu!howland.reston.ans.net!EU.net!uknet!warwick!bsmail!siva.bris.ac.uk!ard From: ard@siva.bris.ac.uk (PDP11 Hacker .....) Subject: Re: PDP-8's in the schools Message-ID: <4MAY199418192636@siva.bris.ac.uk> News-Software: VAX/VMS VNEWS 1.41 Sender: usenet@info.bris.ac.uk (Usenet news owner) Nntp-Posting-Host: siva.bris.ac.uk Organization: University of Bristol Physics Department References: <2q8b86$7de@nexus.uiowa.edu> Date: Wed, 4 May 1994 17:19:00 GMT Lines: 35 In article <2q8b86$7de@nexus.uiowa.edu>, jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) writes... [Great story deleted] >I hope other owners of antique computers can get them into the schools >for demonstrations! I think machines with blinking lights, switches, >and other details we're missing on our modern computers can make a >real contribution to students understanding of where we are today and >how different things were only a short time ago. This is almost the founding statement of the P850 User Group, a group of Madmen, mostly in the UK, who are trying to preserve as much of the history of computing as possible. Museums do a great job preserving the realy significant machines, like ENIAC, EDSAC, etc, but there are many other macines that sold well in their day, but are likely to be lost for ever if someone doesn't preserve them - machines like the PDP8, PDP11, PERQ, P850, Intellec, and later machines like the first PETs, TRS80s, Apples, Exidy Sorcerors, etc. Hence they keep as much of that stuff running, so that a new generation will have a chance to see a real computer. > > Doug Jones > jones@cs.uiowa.edu > >PS. Here's an assembly listing of the program (from my UNIX-based >PDP-8 cross assembler): Is that assembler available for public consumption anywhere? -tony Bristol University takes no responsibility for the views expressed in this posting. They are the personal views of the user concerned. From jones@pyrite.cs.uiowa.edu Thu May 5 05:50:43 EDT 1994 Article: 799 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!corpgate!news.utdallas.edu!chpc.utexas.edu!cs.utexas.edu!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: Re: PDP-8's in the schools Date: 4 May 1994 18:45:21 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 9 Distribution: world Message-ID: <2q8qg1$e3s@nexus.uiowa.edu> References: <4MAY199418192636@siva.bris.ac.uk> NNTP-Posting-Host: pyrite.cs.uiowa.edu >From article <4MAY199418192636@siva.bris.ac.uk>, by ard@siva.bris.ac.uk (PDP11 Hacker .....): > > Is that assembler available for public consumption anywhere? Ask and ye shall recieve. I sent a copy by E-mail. Doug Jones jones@cs.uiowa.edu From lasner@sunSITE.unc.edu Thu May 5 05:51:06 EDT 1994 Article: 800 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!sunSITE!lasner From: lasner@sunSITE.unc.edu (Charles Lasner) Newsgroups: alt.sys.pdp8 Subject: Re: PDP-8's in the schools Date: 5 May 1994 09:45:16 GMT Organization: University of North Carolina, Chapel Hill Lines: 65 Message-ID: <2qaf7c$scm@bigblue.oit.unc.edu> References: <2q8b86$7de@nexus.uiowa.edu> NNTP-Posting-Host: calzone.oit.unc.edu Doug Jones' school project is excellent and I laud him for doing it! However, I wish to point out a few notions about the actual program: 1) It's good form to have the output routine clear the AC afterwards. This makes it independent of the hardware. (There are alternate devices besides serial ports; in the course of outputting to them, the AC preservation may not be reliable or will at least amount to overhead. Since there is at least one place in the program where the AC has to be cleared of the old data, this doesn't serve anything useful.) 2) I don't understand why the RUB character wants to be outputted, and I hope the reason was thought through as other than an after-the-fact documentation of the "it's not a bug, it's a feature" variety. Note that reorganizing the program to use the output routine with final clearing will make this decision a bit easier. 3) When outputting multiple characters, it's best to avoid "library"-type solutions (ask Johnny Billquist about this!) in the sense that each problem begs a slightly different variety of solution type. Here straight-forward multiple single calls were used with the character code passed in-line. The passing in-line portion is fine per se. In fact, it lends itself to an optimization technique because then the constants are available as literals (and likely needed!). However, it can be more efficient to institute special-purpose features to match the requirements. For example, since there will likely be a sequence of the form JMP for some indefinite number of characters, an alternate way to do this is to pass *multiple* in-line literal arguments, each to be outputted in turn until a sentinal argument is found. Regarding that specific, the PDP-8 offers a nice additional trick: By insisting that such a call is always followed by a JMP, which in octal happens to be a negative number (5xxx), you can return to the first place after the literals that isn't positive. This gets implemented with no overhead, since it just means that the order of argument checking changes; if the passed argument is negative, do a return JMP immediately. Else, retrieve the argument again, process it and then ISZ past the argument and JMP back to the argument-parser, etc. (Note: if for some reason, the requirement of a JMP instruction following the caller's literal arguments cannot be met, it always can be accomplished with some form of potential overhead such as a NOP or CLA or JMP .+1. Perhaps the negative value can itself have applicability elsewhere; as long as the fact that it also executes can be tolerated, then perhaps it can be done without an overhead per se.) 4) The program should avoid the use of the text-book-type interrupt skip-chain form. In practice this is never used except for a few contrived cases (such as in RTS-8 where the address is being patched in from elsewhere). In this programs flag-checking routines (which are akin to interrupt handling) are taking no advantage of the fact that the IOT's for checking skip when set, since they were used to cancel SKP instructions which negate JMP instructions, etc. In PDP-8 terms, this amounts to a limited form of what CS people want to call "spaghetti code". A fixed-task interrupt handler (the vast majority of situations) should be written using the IOT skipping to negate the JMP to the next device test. So, overall project rating: A PDP-8 coding efficiency rating: B- Keep up the good work; next year the state finals! cjl From lasner@sunSITE.unc.edu Thu May 5 05:51:19 EDT 1994 Article: 801 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!sunSITE!lasner From: lasner@sunSITE.unc.edu (Charles Lasner) Newsgroups: alt.sys.pdp8 Subject: Re: PDP-8's in the schools Date: 5 May 1994 09:49:48 GMT Organization: University of North Carolina, Chapel Hill Lines: 15 Message-ID: <2qaffs$ggi@bigblue.oit.unc.edu> References: <2q8b86$7de@nexus.uiowa.edu> <4MAY199418192636@siva.bris.ac.uk> NNTP-Posting-Host: calzone.oit.unc.edu In article <4MAY199418192636@siva.bris.ac.uk>, PDP11 Hacker ..... wrote: >In article <2q8b86$7de@nexus.uiowa.edu>, jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) writes... >>PS. Here's an assembly listing of the program (from my UNIX-based >>PDP-8 cross assembler): > >Is that assembler available for public consumption anywhere? Doug's Assembler hasn't passed muster with all of the PDP-8 hackers yet. An alternate way to develop stuff that *will* definitely be compatible is to use an emulator. Viable ones are already among us. cjl From ard@siva.bris.ac.uk Fri May 6 03:31:55 EDT 1994 Article: 802 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!xanth.cs.odu.edu!news.larc.nasa.gov!lerc.nasa.gov!usenet.ins.cwru.edu!howland.reston.ans.net!pipex!warwick!bsmail!siva.bris.ac.uk!ard From: ard@siva.bris.ac.uk (PDP11 Hacker .....) Subject: Re: PDP-8's in the schools Message-ID: <5MAY199414541733@siva.bris.ac.uk> News-Software: VAX/VMS VNEWS 1.41 Sender: usenet@info.bris.ac.uk (Usenet news owner) Nntp-Posting-Host: siva.bris.ac.uk Organization: University of Bristol Physics Department References: <2q8b86$7de@nexus.uiowa.edu> <4MAY199418192636@siva.bris.ac.uk> <2qaffs$ggi@bigblue.oit.unc.edu> Date: Thu, 5 May 1994 13:54:00 GMT Lines: 36 In article <2qaffs$ggi@bigblue.oit.unc.edu>, lasner@sunSITE.unc.edu (Charles Lasner) writes... >In article <4MAY199418192636@siva.bris.ac.uk>, >PDP11 Hacker ..... wrote: >>In article <2q8b86$7de@nexus.uiowa.edu>, jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) writes... > >>>PS. Here's an assembly listing of the program (from my UNIX-based >>>PDP-8 cross assembler): >> >>Is that assembler available for public consumption anywhere? > >Doug's Assembler hasn't passed muster with all of the PDP-8 hackers yet. What does it fail on? It's surely OK for cross-assembling little test programs, and at least I get the source. >An alternate way to develop stuff that *will* definitely be compatible is >to use an emulator. Viable ones are already among us. Surely that means I need an assembler than runs on a PDP8 (if it is to run on an emulator). In that case, I could run the assembler on my PDP8. Is such an assemblerr available anywhere. I'm afraid I don't really know what PDP8 software is out there - I've just got the machine and so far I've only run one program and that was from the maintenance manual, just to check that most of the hardware was working. I have this ingrained objection to emulators, and prefer to run the real hardware. SOmething to do with being a hardware hacker I guess... > >cjl > -tony Bristol University takes no responsibility for the views expressed in this posting. They are the personal views of the user concerned. From lasner@sunSITE.unc.edu Fri May 6 03:50:27 EDT 1994 Article: 803 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!sunSITE!lasner From: lasner@sunSITE.unc.edu (Charles Lasner) Newsgroups: alt.sys.pdp8 Subject: Re: PDP-8's in the schools Date: 6 May 1994 07:49:16 GMT Organization: University of North Carolina, Chapel Hill Lines: 88 Message-ID: <2qcsps$9g5@bigblue.oit.unc.edu> References: <2q8b86$7de@nexus.uiowa.edu> <4MAY199418192636@siva.bris.ac.uk> <2qaffs$ggi@bigblue.oit.unc.edu> <5MAY199414541733@siva.bris.ac.uk> NNTP-Posting-Host: calzone.oit.unc.edu In article <5MAY199414541733@siva.bris.ac.uk>, PDP11 Hacker ..... wrote: >In article <2qaffs$ggi@bigblue.oit.unc.edu>, lasner@sunSITE.unc.edu (Charles Lasner) writes... >>In article <4MAY199418192636@siva.bris.ac.uk>, >>PDP11 Hacker ..... wrote: >>>In article <2q8b86$7de@nexus.uiowa.edu>, jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) writes... >> >>>>PS. Here's an assembly listing of the program (from my UNIX-based >>>>PDP-8 cross assembler): >>> >>>Is that assembler available for public consumption anywhere? >> >>Doug's Assembler hasn't passed muster with all of the PDP-8 hackers yet. > >What does it fail on? It's surely OK for cross-assembling little test programs, >and at least I get the source. Full-blown PDP-8 assemblers are few and far between. Most people who have written viable PDP-8 cross assemblers haven't gotten it quite right, or are just missing important features, etc. Unlike some other lame assemblers, the PDP-8 assembler depends on certain quirks that have been around for decades, and the programs that exist depend on the nuances, etc. I assume Doug will "stay the course" and eventually produce a full-fledged assembler that will produce both a compatible listing and correct binary for all possible files we can throw at him. Right now, this isn't true, etc. The source of virtually anything PDP-8 is available, although we are mired in wasting some time dis-assembling some noteworthy exceptions. But in general, if you used something on the -8, the source was available. Closing an architecture is something somebody dreamt up later! Of course, what good is it to you to have the source of the assembler written in itself without a system to run it on? (And if you have the system itself, you have no immediate need for the assembler's own source, unless you want to study/modify the assembler itself!) (Remember, most PDP-8 software is written in assembler!) > >>An alternate way to develop stuff that *will* definitely be compatible is >>to use an emulator. Viable ones are already among us. > >Surely that means I need an assembler than runs on a PDP8 (if it is to run on >an emulator). In that case, I could run the assembler on my PDP8. Is such an >assemblerr available anywhere. I'm afraid I don't really know what PDP8 >software is out there - I've just got the machine and so far I've only run one >program and that was from the maintenance manual, just to check that most of >the hardware was working. No, you don't have a machine yet. You have a CPU only. The dominant software isn't for a CPU with a little memory. You need a disk device and a terminal, and preferably a line-printer. Add an extra serial line and you can run Kermit, etc. In any case, all but the extra serial line is needed to run the assembler; delete the LPT: only if you don't want paper listings, etc. So, start with an emulator. When you get a whole machine together, you can run the same software on both the real hardware and on the emulator. Perhaps you'll even outgrow the need to have an emulator at all! > >I have this ingrained objection to emulators, and prefer to run the real >hardware. SOmething to do with being a hardware hacker I guess... Understand, but the emulator isn't the goal, just a point on the journey. In any case, to avoid compatibility problems, run real assemblers whether on real or virtual hardware! Note: we have defined various viable mechanisms to transfer binary between machines. Assuming a cross-assembler gets written that really is compatible, and this certainly *can* be done, then it's fine. It's just that so far, no one's quite done it. > >> >>cjl >> >-tony > >Bristol University takes no responsibility for the views expressed in this >posting. They are the personal views of the user concerned. > cjl From jones@pyrite.cs.uiowa.edu Sun May 8 08:42:11 EDT 1994 Article: 804 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!zombie.ncsc.mil!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: Re: PDP-8's in the schools Date: 5 May 1994 15:03:17 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 57 Distribution: world Message-ID: <2qb1rl$eb6@nexus.uiowa.edu> References: <2qaf7c$scm@bigblue.oit.unc.edu> NNTP-Posting-Host: pyrite.cs.uiowa.edu >From article <2qaf7c$scm@bigblue.oit.unc.edu>, by lasner@sunSITE.unc.edu (Charles Lasner): > > However, I wish to point out a few notions about the actual program: > > 1) It's good form to have the output routine clear the AC afterwards. I wanted the ASCII characters to hang around in AC for as long as possible, so that students typing on the terminals could see the ASCII codes for the keys they hit. As a result, I deliberately avoided clearing AC, and after the string of comparisons for special stuff, I put things back the way they were. > 2) I don't understand why the RUB character wants to be outputted After the fact kluge engineering -- processing of BS and CR came first, and then, on the evening before the darned thing had to be delivered to his school, I discovered my son trying to erase things with RUB. It's harmless to echo RUB, so I didn't bother reorganizing the program to catch RUB before things were output. > 3) ... For example, since there will likely be a sequence of the form > JMP for some indefinite number of > characters, an alternate way to do this is to pass *multiple* in-line > literal arguments, each to be outputted in turn until a sentinal > argument is > found. Nice idea, and if there's ever cause to tune the program a step farther, I'll probably do it -- but this program was developed in my spare time between calls for help from my son as he worked on his poster presentation and messing around with a cable that almost but not quite supported the interface requirements of my laptop. I didn't exactly have time to tune the darned thing. > Regarding that specific, the PDP-8 offers a nice additional trick: By > insisting that such a call is always followed by a JMP, which in octal > happens to be a negative number (5xxx), you can return to the first place > after the literals that isn't positive. A cute trick! > 4) ... In this programs flag-checking routines (which are akin > to interrupt handling) are taking no advantage of the fact that the IOT's > for checking skip when set, since they were used to cancel SKP > instructions which negate JMP instructions, etc. You're right about that. That's a clunky bit of code I wrote a year ago and toggled in by hand, then never bothered to rethink. Your idea of having each section begin with TRYDEV, IOT / skip if ready JMP NXTDEV stuff / process for this device is clearly superior. Doug Jones jones@cs.uiowa.edu From jones@pyrite.cs.uiowa.edu Sun May 8 08:43:18 EDT 1994 Article: 805 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!convex!cs.utexas.edu!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: Cross Assemblers Date: 6 May 1994 15:06:37 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 30 Distribution: world Message-ID: <2qdmdt$kl2@nexus.uiowa.edu> References: <2qcsps$9g5@bigblue.oit.unc.edu> NNTP-Posting-Host: pyrite.cs.uiowa.edu >From article <2qcsps$9g5@bigblue.oit.unc.edu>, by lasner@sunSITE.unc.edu (Charles Lasner): > > I assume Doug will "stay the course" and eventually produce a > full-fledged assembler that will produce both a compatible listing and > correct binary for all possible files we can throw at him. Right now, > this isn't true, etc. Have you read the disclaimer in the source for my assembler? Here it is: disclaimer: This assembler accepts a subset of the PAL 8 assembly language. It was written as a quick hack in order to download software into my bare-bones PDP-8 system, and no effort has been made to apply sound software engineering techniques in its design. For further clarification, the software comes with a warantee: warrantee: If you don't like it the way it works or if it doesn't work, that's tough. You're welcome to fix it yourself. That's what you get for using free software. I have little interest in staying the course! The thing is available, it's quite useful for supporting (and debugging) a bare bones machine, and it avoids the hassles of running an emulator. It is compatable enough that source files you develop under it are likely to assemble with no problems on real PAL assemblers, but my purpose was never to produce a fully compatable assembler. Doug Jones jones@cs.uiowa.edu From jones@pyrite.cs.uiowa.edu Sun May 8 08:44:32 EDT 1994 Article: 806 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!zombie.ncsc.mil!MathWorks.Com!news.cic.net!magnus.acs.ohio-state.edu!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: Re: PDP-8's in the schools Date: 6 May 1994 15:15:02 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 28 Distribution: world Message-ID: <2qdmtm$kqq@nexus.uiowa.edu> References: <2qcsps$9g5@bigblue.oit.unc.edu> NNTP-Posting-Host: pyrite.cs.uiowa.edu By the way, the PDP-8 demo at my son's school went off without a hitch, and it was, by any standard, a wild success. We delivered the hardware in pieces -- just stripped down PDP-8/F with memory, cpu and terminal interfaces, plus two terminals. My son managed to find wall outlets, string wires to the terminals, and fire it up (the program was already in core), and it worked like a charm for an hour or two during the day and another hour or two yesterday evening. The 8/F ran with the top off (actually, I don't have a lid for it), and my son made signs saying "CPU" "Memory" and "I/O Interfaces" for those parts. More than a few parents peered into it and asked "where's the disk" or other questions that illustrated great knowledge. It was competing against tin-can telephones, morse code stuff, posters about the internet, video tapes and more, and for most of the time it was running, it had crowds of kids around the two terminals typing messages (for the kids old enough to type) or just typing gibberish (younger kids) to each other. There were running PCs and Macs sitting around too, but most of them didn't attract crowds. So, in conclusion, do it! Get those old machines out in public! The right dinky little program (and the code I posted a few days ago is hardly disserving of any higher acclaim) can really be as fun to play with as something that runs in 3 megabytes and requires a WIMP user interface! Doug Jones jones@cs.uiowa.edu From tomk@csd.uu.se Sun May 8 08:45:05 EDT 1994 Article: 807 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!xanth.cs.odu.edu!lll-winken.llnl.gov!koriel!cs.utexas.edu!howland.reston.ans.net!pipex!sunic!columba.udac.uu.se!news.uu.se!tomk From: tomk@csd.uu.se (Tom Karlsson) Newsgroups: alt.sys.pdp8 Subject: Re: PDP-8's in the schools Date: 07 May 1994 11:31:19 GMT Organization: CS, University of Uppsala, Sweden Lines: 35 Distribution: world Message-ID: References: <2qcsps$9g5@bigblue.oit.unc.edu> <2qdmtm$kqq@nexus.uiowa.edu> NNTP-Posting-Host: kobra.csd.uu.se In-reply-to: jones@pyrite.cs.uiowa.edu's message of 6 May 1994 15:15:02 GMT In article <2qdmtm$kqq@nexus.uiowa.edu> jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) writes: > It was competing against tin-can telephones, morse code stuff, posters > about the internet, video tapes and more, and for most of the time it > was running, it had crowds of kids around the two terminals typing > messages (for the kids old enough to type) or just typing gibberish > (younger kids) to each other. There were running PCs and Macs sitting > around too, but most of them didn't attract crowds. > > So, in conclusion, do it! Get those old machines out in public! > The right dinky little program (and the code I posted a few days ago > is hardly disserving of any higher acclaim) can really be as fun to > play with as something that runs in 3 megabytes and requires a WIMP > user interface! A year and a half ago, we (Update) experienced the same thing when showing some of our machines at the computer science and mathematical campus in Uppsala (when the campus was officially opened). Besides some newer and smaller machines (DEC Rainbows, Professionals and a small microVAX II), we had a PDP-8i, a PDP-11/24 (or was it 34 ?) and a PDP-11/70. All of the machines were running and we even had a Votrax connected to the PDP-11/x4, just to be able to "talk" to the spectators :-) The temporary computer room we used was well visited. We got some complaints from others in the building, that we draw too much attention from the other attractions... (I wonder why? :-) /Tom -- | Tom Karlsson email: tomk@csd.uu.se phone: +46 18 260097 | | Student of Computer Science @ Uppsala University, Sweden. | | Secretary of Update. email: tomk@Update.UU.SE | | "Intelligence is to do stupid things in a smart way" | From prc@world.std.com Sun May 8 08:45:31 EDT 1994 Article: 808 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!zombie.ncsc.mil!MathWorks.Com!news.kei.com!world!prc From: prc@world.std.com (Peter R Cook) Subject: Re: PDP-8's in the schools Message-ID: Organization: The World Public Access UNIX, Brookline, MA References: <2qcsps$9g5@bigblue.oit.unc.edu> <2qdmtm$kqq@nexus.uiowa.edu> Date: Fri, 6 May 1994 18:01:12 GMT Lines: 10 When I was in high school it was a PDP-8 with the early version of star trek on it that got me hooked. After that I took BASIC, then off to college for a BSCS. -- Peter R. Cook - Unix, Ultrix, | Black Dragon Entertainment is a full & VMS Software Engineering. | service Management, Music (BMI/ASCAP), prc@world.std.com | Record, & Production company. Inquire! The opinions expressed above are held by the entire known universe. From lasner@sunSITE.unc.edu Sun May 8 08:46:46 EDT 1994 Article: 809 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!sunSITE!lasner From: lasner@sunSITE.unc.edu (Charles Lasner) Newsgroups: alt.sys.pdp8 Subject: Re: PDP-8's in the schools Date: 8 May 1994 12:41:31 GMT Organization: University of North Carolina, Chapel Hill Lines: 94 Message-ID: <2qimlr$rq4@bigblue.oit.unc.edu> References: <2qaf7c$scm@bigblue.oit.unc.edu> <2qb1rl$eb6@nexus.uiowa.edu> NNTP-Posting-Host: calzone.oit.unc.edu In article <2qb1rl$eb6@nexus.uiowa.edu>, Douglas W. Jones,201H MLH,3193350740,3193382879 wrote: >From article <2qaf7c$scm@bigblue.oit.unc.edu>, by lasner@sunSITE.unc.edu >(Charles Lasner): >> 1) It's good form to have the output routine clear the AC afterwards. >I wanted the ASCII characters to hang around in AC for as long as possible, >so that students typing on the terminals could see the ASCII codes for the >keys they hit. As a result, I deliberately avoided clearing AC, and after >the string of comparisons for special stuff, I put things back the way they >were. Still cleaner to put the char into the AC while waiting for a new one if you insist. Alternatively, instead of doing a final CLA, do an MQL. Then the latest typed char is in the MQ. >> 2) I don't understand why the RUB character wants to be outputted >After the fact kluge engineering -- processing of BS and CR came first, >and then, on the evening before the darned thing had to be delivered to >his school, I discovered my son trying to erase things with RUB. It's >harmless to echo RUB, so I didn't bother reorganizing the program to >catch RUB before things were output. I know this was a quick and dirty job. My purpose is to advance the skills after the fact, etc. >> 3) ... For example, since there will likely be a sequence of the form >> JMP for some indefinite number of >> characters, an alternate way to do this is to pass *multiple* in-line >> literal arguments, each to be outputted in turn until a sentinal >> argument is > found. >Nice idea, and if there's ever cause to tune the program a step farther, >I'll probably do it -- but this program was developed in my spare time >between calls for help from my son as he worked on his poster >presentation and messing around with a cable that almost but not quite >supported the interface requirements of my laptop. I didn't exactly >have time to tune the darned thing. I know. The point is that there are many ways to tweak code. The -8 is a place it's been done. Other machines tend to standardize on mediocre methods and are never revisited. This encourages abstraction and expediency while wasting compute resources. While some people seem to operate on the notion that resources are infinite, sometimes they get hoisted accordingly. Better to have an appreciation of what can be done with less, not assume more is always possible! >> Regarding that specific, the PDP-8 offers a nice additional trick: By >> insisting that such a call is always followed by a JMP, which in octal >> happens to be a negative number (5xxx), you can return to the first place >> after the literals that isn't positive. >A cute trick! Not original. Look at the way you call the FPP package. A bunch of in-line arguments with a special-purpose terminator. Some FPP's actually execute the 0000 that exits knowing that it's a harmless AND instruction! >> 4) ... In this programs flag-checking routines (which are akin >> to interrupt handling) are taking no advantage of the fact that the IOT's >> for checking skip when set, since they were used to cancel SKP >> instructions which negate JMP instructions, etc. >You're right about that. That's a clunky bit of code I wrote a year ago >and toggled in by hand, then never bothered to rethink. Your idea of >having each section begin with >TRYDEV, IOT / skip if ready > JMP NXTDEV > stuff / process for this device >is clearly superior. But hardly original. That's just the way all of the reasonable code was ever written! It appears that the only source of the demented code is the manual! I guess they didn't want to call interrupt handling a JMP chain :-). Also, I fully appreciate the problem of hand-loading of code. A lot of the benefits of these ideas only came about because we were users of whole systems, not just CPU's and a terminal. In your case two terminals, but still not a whole system! Perhaps you needed to bring in an RX drive as well to dazzle the school people :-). > Doug Jones > jones@cs.uiowa.edu cjl From koppel@werple.apana.org.au Sun May 8 18:41:49 EDT 1994 Article: 810 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!xanth.cs.odu.edu!lll-winken.llnl.gov!elroy.jpl.nasa.gov!swrinde!cs.utexas.edu!uwm.edu!msuinfo!harbinger.cc.monash.edu.au!yarrina.connect.com.au!werple.apana.org.au!news From: koppel@werple.apana.org.au (David Broadbent) Newsgroups: alt.sys.pdp8 Subject: First come best dressed - PDP8E's Date: 8 May 1994 09:17:13 +1000 Organization: werple public-access unix, Melbourne Lines: 37 Message-ID: <2qh7hp$136@werple.apana.org.au> NNTP-Posting-Host: werple.apana.org.au X-Newsreader: TIN [version 1.2 PL1] Yesterday I rescued two pdp8e from being burried in a tip. Both appear to be complete and in reasonable condition. One has a cracked face plate. Both have minor damage to the toggles, but I think no actual switch damage. Also there were two only RKO5J with them. One still has the pack in it, the other 'SIGH' is only good for spares. There may be a third system plus a tape punch/reader in running condition. 2% chance of it still existing. More on that later. They are available here in Melbourne Australia, as is, where is, as I do not have time to box or cart then anywhere. I can only store them a week, two at the most, else I will have to scrap them myself. I had to pay to get them ($150) so I hope some one out there appreciates the effort I took to save them. Offers to cover my out of pocket costs would be appreciated. I had, as some may remember, the disappointment to scrap (3 years ago) a pdp8i as I could not find any takers. I did not know of this group at that time. I was sure I had some of the 8i hidden away but i have not found these parts yet. I lost the reply from the DECUS gents in NSW that responded to my posting earlier this year. If I had more space I would like to keep the 8e's but I have to be realistic in that there is only so much time and hobbies one can enjoy in a life time. And my house and garage just have to be tidied up. Some people drink, others gamble, while yet others have sex as a vice. I think my vice in life is to be a Bower Bird (jjunk dealer), or so my family thinks. The stuff people throw out !!!!!!!!!!. Anyway Email me if interested, regards David Broadbent. From wilsonj@alum01.its.rpi.edu Mon May 9 09:05:31 EDT 1994 Article: 811 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!solaris.cc.vt.edu!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!noc.near.net!usenet.elf.com!rpi!wilsonj From: wilsonj@alum01.its.rpi.edu (John Wilson) Newsgroups: alt.sys.pdp8 Subject: PDP-8 assemblers Date: 8 May 1994 05:18:19 GMT Organization: Rensselaer Polytechnic Institute, Troy NY Lines: 37 Message-ID: <2qhsmr$7d3@usenet.rpi.edu> NNTP-Posting-Host: alum01.its.rpi.edu I should know better than to say this (got in a flame war with cjl last time I did :-) but, why is PAL-8 compatibility such a lofty goal? It's a pretty lame assembler, and it's not as if there are untold hundreds of megabytes of PDP-8 source code available to most of us, which it would be impossible to convert to a slightly different syntax. If you need PAL-8 compatibility, by all means use PAL-8. If some other assembler has sufficient advantages to make it worth using (like being a single- pass assembler, or having decent literals a la MACRO-10, or producing relocatable output), then presumably you've weighed these advantages against the fact that the author liked ".=" or "LOC" better than "*", or wanted to use ".END" instead of "$", or whatever, before deciding to care one way or another. I've about had it with "compatibility" in the PC world, who needs it in PDP8-land. When I got TASM the box said "100% compatible with MASM V4.0 and V5.1" on it, and the first program I tried it on (which assembled without errors under MASM V5.1) triggered many dozens of error messages. It took me about a day to get it conditionalized so that both assemblers would like it. Why bother? I'd much rather make a clean break and blow off compatibility in favor of correcting some of the basic sillinesses in MASM's design. If I found (or wrote) an assembler that did all these things right, I'd gladly spend a week or two reediting all my programs (probably with a lot of help from a simple BASIC program, like the syntax would really be that different) to use the better assembler. And as Doug pointed out, if your goals are modest why sweat over the assembler? I wrote a lousy PDP-8 cross assembler when I was a freshman (and had unlimited free electricity!) so that I could upload code from my PDT-11/150 into my PDP-8/E, and the only neat thing about it was that it worked at all (my PDP-8 peripherals were all 150 miles away so so much for PAL/D), but so what? I *like* to put dots on the beginning of ".TEXT" and ".PAGE", and I consider generating a BIN "org" record for every "*" command even if no data are generated to be a bug, not a feature, but no one else will ever use the assembler anyway. John From bob@sed.csc.com Mon May 9 09:39:45 EDT 1994 Article: 812 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!eff!cs.umd.edu!anagld!bob From: bob@sed.csc.com (Bob Smith) Subject: Re: PDP-8's in the schools Message-ID: Organization: Computer Sciences Corporation References: <2qaf7c$scm@bigblue.oit.unc.edu> <2qb1rl$eb6@nexus.uiowa.edu> <2qimlr$rq4@bigblue.oit.unc.edu> Date: Sun, 8 May 1994 14:39:37 GMT Lines: 28 In CJL's last post on this article (at the time of my post), he does his best to say: All of your stuff has been done before, there are better ways, none of this is original, and CJL can do better. While all of his comments MAY BE true, I say that it is time to focus on what this effort is all about: FUN. The fun of seeing something work. The fun of seeing how you (the individual) can do something, the fun of learning how to do it even if someone else has already done it a similar way or even a better way. There is a bit of life left in the old 8's. There is still more fun left in them if we can give each other credit for trying, gently coach and mentor with ways of doing things differently, and ENCOURAGE EVERYONE to try. The logical thinking process that gets a program to work or a piece of hardware to work is only part of it. The individual stamp, the artistry if you will, should not be squelched by any of us. If advice is sought, it should be freely given. If some one is letting us know that they have accomplished something of note to them personally, we all should enjoy, not just for them or with them but for our selves as we remember or premeber how will did or will do something similar. There are way to impart information that do not detract from an individual's effort. There are destructive ways of attempting to do the same thing. Let's make this fun. bob From ard@siva.bris.ac.uk Mon May 9 10:17:50 EDT 1994 Article: 813 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!xanth.cs.odu.edu!lll-winken.llnl.gov!sol.ctr.columbia.edu!howland.reston.ans.net!pipex!warwick!bsmail!siva.bris.ac.uk!ard From: ard@siva.bris.ac.uk (PDP11 Hacker .....) Subject: Re: PDP-8's in the schools Message-ID: <8MAY199415370720@siva.bris.ac.uk> News-Software: VAX/VMS VNEWS 1.41 Sender: usenet@info.bris.ac.uk (Usenet news owner) Nntp-Posting-Host: siva.bris.ac.uk Organization: University of Bristol Physics Department References: <2q8b86$7de@nexus.uiowa.edu> <4MAY199418192636@siva.bris.ac.uk> <2qaffs$ggi@bigblue.oit.unc.edu> <2qcsps$9g5@bigblue.oit.unc.edu> Date: Sun, 8 May 1994 14:37:00 GMT Lines: 83 In article <2qcsps$9g5@bigblue.oit.unc.edu>, lasner@sunSITE.unc.edu (Charles Lasner) writes... >In article <5MAY199414541733@siva.bris.ac.uk>, >PDP11 Hacker ..... wrote: [Doug's C cross-assembler] >>What does it fail on? It's surely OK for cross-assembling little test programs, >>and at least I get the source. > >Full-blown PDP-8 assemblers are few and far between. Most people who >have written viable PDP-8 cross assemblers haven't gotten it quite right, >or are just missing important features, etc. Unlike some other lame >assemblers, the PDP-8 assembler depends on certain quirks that have been >around for decades, and the programs that exist depend on the nuances, etc. Could you please post some examples of these quirks. It would be interesting to see what the programmers got up to. >Of course, what good is it to you to have the source of the assembler >written in itself without a system to run it on? (And if you have the >system itself, you have no immediate need for the assembler's own source, >unless you want to study/modify the assembler itself!) Actually, I would be interested in studying the assembler. The reason I run all the old machines that I do is to learn about computers, how they work (both hardware and software), and also to learn from the mistakes. Reading software source code is a great way to do this. > >(Remember, most PDP-8 software is written in assembler!) >>Surely that means I need an assembler than runs on a PDP8 (if it is to run on >>an emulator). In that case, I could run the assembler on my PDP8. Is such an >>assemblerr available anywhere. I'm afraid I don't really know what PDP8 >>software is out there - I've just got the machine and so far I've only run one >>program and that was from the maintenance manual, just to check that most of >>the hardware was working. > >No, you don't have a machine yet. You have a CPU only. The dominant >software isn't for a CPU with a little memory. You need a disk device >and a terminal, and preferably a line-printer. Add an extra serial line >and you can run Kermit, etc. In any case, all but the extra serial line >is needed to run the assembler; delete the LPT: only if you don't want >paper listings, etc. Hmmm. I have a little more that just the CPU and memory. I _think_ my current list of options is : PDP8/e CPU Timeshare/extended address board 32K core (4 off 8K 3-board sets) Line-frequency Clock 3 serial ports (M8655?) 1 LS8E (Is that a printer port) 1 RK8 (No drives yet, but I can 'borrow' an RK05 off my PDP11 if necessary). I also have (non-working I think) a further serial port and a second RK8E. The only thing I am missing is the EAE board set, but presumably some software will run without that installed. I am still testing things up at the moment, but I will get it all working... > >So, start with an emulator. When you get a whole machine together, you >can run the same software on both the real hardware and on the emulator. >Perhaps you'll even outgrow the need to have an emulator at all! I'd much rather fix up the hardware and run the programs on the 'right' machine. Somehow, a PDP8 without a front panel doesn't seem right :-) >>-tony >> >>Bristol University takes no responsibility for the views expressed in this >>posting. They are the personal views of the user concerned. >> > >cjl > -tony Bristol University takes no responsibility for the views expressed in this posting. They are the personal views of the user concerned. From ard@siva.bris.ac.uk Mon May 9 10:31:11 EDT 1994 Article: 814 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!xanth.cs.odu.edu!lll-winken.llnl.gov!sol.ctr.columbia.edu!howland.reston.ans.net!pipex!warwick!bsmail!siva.bris.ac.uk!ard From: ard@siva.bris.ac.uk (PDP11 Hacker .....) Subject: Re: PDP-8 assemblers Message-ID: <8MAY199415450361@siva.bris.ac.uk> News-Software: VAX/VMS VNEWS 1.41 Sender: usenet@info.bris.ac.uk (Usenet news owner) Nntp-Posting-Host: siva.bris.ac.uk Organization: University of Bristol Physics Department References: <2qhsmr$7d3@usenet.rpi.edu> Date: Sun, 8 May 1994 14:45:00 GMT Lines: 28 In article <2qhsmr$7d3@usenet.rpi.edu>, wilsonj@alum01.its.rpi.edu (John Wilson) writes... >I should know better than to say this (got in a flame war with cjl last >time I did :-) but, why is PAL-8 compatibility such a lofty goal? It's I fully agree with you. The reason I wanted Doug's assembler was not to avoid getting a real assembler/operating system/disk for my PDP8e, but to assemble little test programs to sort out the hardware that I've got, so that I know it will work correctly. It sure beats hand-assembling :-) Incidentally, I know it's a cause of flames to mention PC's on this newsgroup, but Doug's assembler will compile and run (I think correctly) under Microsoft QuickC v2.5 on a PC. No changes needed. >a pretty lame assembler, and it's not as if there are untold hundreds of >megabytes of PDP-8 source code available to most of us, which it would >be impossible to convert to a slightly different syntax. If you need Most of these sytanx changes can be fixed by running sed on the source file, and then fixing up any errors that come on assembly. OK, so it would be a pain for something like an operating system source, but in that case, why not use PAL8. It's not like you're limited to one assembler for all programs... >John -tony Bristol University takes no responsibility for the views expressed in this posting. They are the personal views of the user concerned. From oddjob@cix.compulink.co.uk Mon May 9 10:31:43 EDT 1994 Article: 815 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!xanth.cs.odu.edu!lll-winken.llnl.gov!sol.ctr.columbia.edu!howland.reston.ans.net!pipex!sunic!EU.net!uknet!cix.compulink.co.uk!oddjob From: oddjob@cix.compulink.co.uk ("Stephen Walters") Subject: Yippee! more PDP-8e owners Message-ID: Organization: Skills Unlimited Date: Sun, 8 May 1994 14:48:29 GMT X-News-Software: Ameol Lines: 12 I Consider myself quit lucky....I have a PDP 8/e with 12k words of CORE, ASR Teletype....a large collection of paper tapes and....the original sales brochure from 1972...used to sell it!! Neat...What I would like to do is get the teletype, with it's paper tape reader to work...I have focal-8, os-8 and assorted assemblers....Ideally I'd like to upload the tapes to a PC (as a teletype replacement) and do away with the teletype all together. Any suggestions? oddjob@cix.compulink.co.uk From oddjob@cix.compulink.co.uk Mon May 9 10:31:56 EDT 1994 Article: 816 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!xanth.cs.odu.edu!lll-winken.llnl.gov!sol.ctr.columbia.edu!howland.reston.ans.net!pipex!sunic!EU.net!uknet!cix.compulink.co.uk!oddjob From: oddjob@cix.compulink.co.uk ("Stephen Walters") Subject: Beginners guide to PDP 8 machine code Message-ID: Organization: Skills Unlimited Date: Sun, 8 May 1994 14:48:32 GMT X-News-Software: Ameol Lines: 5 Beginners guide to PDP 8 machine code Does this exist.....is there a FAQ for this???? oddjob@cix.compulink.co.uk From lasner@sunSITE.unc.edu Mon May 9 10:42:33 EDT 1994 Article: 817 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!sunSITE!lasner From: lasner@sunSITE.unc.edu (Charles Lasner) Newsgroups: alt.sys.pdp8 Subject: Re: PDP-8 assemblers Date: 9 May 1994 13:01:02 GMT Organization: University of North Carolina, Chapel Hill Lines: 301 Message-ID: <2qlc6e$ocv@bigblue.oit.unc.edu> References: <2qhsmr$7d3@usenet.rpi.edu> NNTP-Posting-Host: calzone.oit.unc.edu In article <2qhsmr$7d3@usenet.rpi.edu>, John Wilson wrote: >I should know better than to say this (got in a flame war with cjl last >time I did :-) True! So this time the entire world of alt.sys.pdp8 is gonna hear it :-) > but, why is PAL-8 compatibility such a lofty goal? Because it's a standard language. I suppose that every time you wanted to write something in FORTRAN, you put your project on hold and instead decided what you personally didn't like about F66/F77/F8whatever, then spent untold hours coming up with a non-standard implementation of a compiler that no one else wants to use, *then* proceeded to write your original program in that newly-created incompatible language? If the particulars of a project seem to indicate that there is a weakness in the otherwise language of choice, then it's good practice to get the job done anyway, and document what tedium it is to accomplish that sort of problem. At a later time, you can consider mapping out or even implementing that which would have made the job (now done!) easier to do at the time. Perhaps there will even be a next time where you'll get additional benefit from the effort. Perhaps, in documenting it, others will see the wisdom of your variant design. But in the mean time, by not getting the current project accomplished, you are internally side-tracking yourself, etc. > It's >a pretty lame assembler, and it's not as if there are untold hundreds of >megabytes of PDP-8 source code available to most of us, which it would >be impossible to convert to a slightly different syntax. Well, there aren't untold megabytes, but rather there are very-well-told megabytes! In fact, we are starting to accumulate quite a bit of PDP-8 source code. I personally have over 1 million lines of code, and that's just from me over a 25+ year period. Towards what end, assuming there was some purpose in doing so, is it useful to convert this stuff? > If you need >PAL-8 compatibility, by all means use PAL-8. No, I don't need PAL-8 compatibility; I need PAL-8 functionality. I consider PAL-8 barely functional for my needs. Often, it's getting in my way. > If some other assembler >has sufficient advantages to make it worth using (like being a single- >pass assembler, I find no particular up-side to single-pass assemblers. The time spent in fixing up the forward references, possibly coupled with some load-time consequences, I find to be of no advantage, rather, I find that it could approach the more predictable "overhead" of a clean second-pass approach. Moreover, it means the listing has less info in it unless it's a second-pass listing, which is what I do anyway when I need one. Why would I want a listing that differs from the binary (unless I want to do manual calculations)? So, a one-pass assembler is just too quirky for me. But there's a larger issue: a one-pass assembler lacking nothing else relative to PAL8 just doesn't exist! Are you saying that PAL8 compatibility must be avoided at all costs, even if it means I should drop everything and go write a one-pass asm that I also don't want? > or having decent literals a la MACRO-10, That's a very nice cute feature. I would like it incorporated into PAL8, but I don't expect it to happen real soon. In any case, it's not a high priority on my list of what I need an assembler to do. I welcome it rather than require it. However, note that this is one of those quick and dirty techniques (not the implementing of it, but rather the using of it!), and doesn't really apply to much of what I do. > or producing >relocatable output), Relocatable output I consider a negative feature on the PDP-8. This machine's address space is so small that I am "familiar" with every bit of storage. A level of abstraction where the code goes where someone other than me is putting it there means I'm not exactly programming an -8 anymore! Others will argue against this. However, they have a differing set of goals from me. Their programs are also longer than mine for the same level of functionality, etc. I don't share their enthusiasm for expediency either. If you use a compiler of a high-level language, you have already abdicated caring about efficiency. By all means use relocatable output; it makes the compiler design miles easier to achieve. No one expects compiler-generated code to match the efficiency of hand-created code. But I write in -8 assembler, not in the assembler of an "almost" -8 whose addressing rules are relaxed somewhat, but only towards the goal of making a relocatable-oriented binary system, etc. BTW, there is an assembler for the -8 called PAGE8. Besides the fact that it has IBM/360-type syntax, it has a level of abstraction beyond the PDP-8. It attempts to make the notion of pages of code go away by creating instructions you didn't ask for when necessary. This is often done at quite a big expense of efficiency, and in some cases also in point of fact doesn't work! In essence, PAGE8 picks up where "links" leave off. Consider a short subroutine named FOO that for foolish reasons is being attempted to be written too close to the end of the page to entirely fit. PAGE8 will in fact generate the code there anyway! The only requirement internally in PAGE8 is that the following *actual* code fit on the end of the page: FOO, 0 /THIS IS THE HEADER THE USER SPECIFIED JMP I (BAR) /PAGE8-GENERATED LINK TO USER CODE! FOOBAR, JMP I FOO /PAGE8-GENERATED EXIT INSTRUCTION! PAGE /PAGE8-CREATED ORIGIN TO NEXT PAGE AFTER /LITERALS ARE DUMPED BAR= . /PAGE8-GENERATED DEFINITION OF USER CODE CONTINUATION! / THE BODY OF THE USER CODE GOES HERE JMP I FOO /**** WRONG! **** THE USER WANTS TO /RETURN TO THE MAIN CALLER What the last instruction actually generates is JMP I (FOOBAR) back to the JMP I FOO on the previous page! Also, I think you can imagine what happens when you want to parse in-line arguments! You get ISZ I (FOO) instead of ISZ FOO. Statements of the form TAD I FOO generate additional small subroutine calls to routines back on the original page that also then have to fit because they can only work if actually on the same page as FOO,. Note that each line of code independently creates a kludge. There isn't an attempt to make a small subroutine that includes TAD I FOO and ISZ FOO on the same page as FOO, etc. For the same reason as why links in fact don't work, all of this naive coding helpout doesn't work: On an -8 with extended memory beyond 4K, you cannot introduce arbitrary indirectness into an instruction. Unless you limit this strictly to JMP and JMS, it then depends on something the assembler has no control over, namely the DF register. When the code is written as the user intends, he owns control of the DF and how to use it. Sophisticated subroutine handling may define the DF as belonging to the caller from another field, or perhaps where the caller's field is imputed, it actually refers to the field where the arguments passed in-line pertain to, or perhaps some totally other arbitrary user-defined meaning. In any case, the assembler has no business in this process. All of this toy code generation trickery depends strictly on the notion that the DF is the same as the IF of the code being manipulated! Even in PAL8, links are as braindead. Consider the following sloppiness: *200 CDF 10 TAD 400 When executed, the DF is set to 1 when you get to 00201. Stupid PAL8 links created an actual TAD I 377 where 00377 contains 0400. OF course this doesn't work because it adds the contents of 10400, not 00400! If you allow links because you are too lazy to write in -8 code, and want the assembler to write "almost -8" code for you, you are then obliged to check if all of the lazy links actually are JMP or JMS type strictly. You either have a ticking timebomb waiting to go off, or you are spending more time hand-checking against the accidental introduction of unwanted code than could have been better put to use merely by avoiding the link feature altogether. It's a whole lot easier to use JMS I (FOO) where you need to. BTW, there is a useful P?S/8 extension to literals that aids in efficiency in this area. Perhaps there is an issue that the use of the pointer to a commonly used subroutine warrants it being called as JMS I [FOO] instead of JMS I (FOO). It's likely that you can further classify calls as either "dominant" or "passive" in the sense that earlier in the source, it is likely determined that there are enough callers to warrant it, but somewhat later in the source, this information is more needed to be known than immediately apparent "locally" etc. Within P?S/8 there is a feature for this known as a "dependent" literal. In essence, the dominant callers decide whether there should be a global page zero type JMS I [FOO] as opposed to JMS I (FOO). The dependent routines use neither! Instead, they use the syntax JMS I \FOO/ which generates either type according to the following: If the page-zero literal already exists, use it. If not, then create a current-page reference. Thus, if there is enough usage to demand a global literal, it gets used accordingly. Else, the normal rules of current-page literals (which might be locally reused!) apply, etc. So, I will continue to avoid like the plague assemblers with features like PAGE8, while I have the dependent literal on my wish list for a PAL8 upgrade. Without the feature, I compromise and hand-determine which way to setup all the calls, etc. With today's good choice of powerful editors, this isn't really too much work fortunately, etc. > then presumably you've weighed these advantages >against the fact that the author liked ".=" or "LOC" better than "*", >or wanted to use ".END" instead of "$", or whatever, before deciding >to care one way or another. I really couldn't care less about this part. Here's a few reasons why: 1) Making a distinction without a difference is pointless. So-called "modern" compiler writers should take heed of this! 2) There are no such assemblers for the -8. I specifically dismiss from the list any toy programs anyone has written over the years that are useless to me because of the lack of the meat-and-potatoes features that I find even PAL8 a little too lean in, etc. (I have had to write non-portable code in P?S/8 PAL merely because it was the only way! Literally all other assemblers simply lacked the features to describe the program structure I was creating at the conceptual level. In point of fact I had an obligation to make the program PAL8-compatible so it could be developed from OS/8, so I spent drudgery time hand-modifying working code to down-grade the source so PAL8 could actually assemble it correctly, etc. If there is sufficient interest, I can elaborate on this.) > >I've about had it with "compatibility" in the PC world, who needs it >in PDP8-land. If this is what's ailing you, then I understand. But what the complaint is not what you said, but rather what is, is that there is *claimed* compatibility, but actually a promise not delivered. Actually, there are two issues here. MASM is a braindead assembler. Who *wants* to be compatible with it! Look at some PC code: most of it starts with an inefficient jump around data. The reason is that the inefficiency in that initial jump is a sacrifice so that the other data doesn't fall prey to the same thing. A more user-oriented data structure would put the data last perhaps, but to do so would make even more code inefficient. (MASM always assumes jumps are a long-form. When the code is fixed up, then a NOP occupies the wasted byte after the short jump, etc. Thus, the lone wasted byte. But at least the references to the rest of the data are forward this way, etc.) In effect, MASM cannot create at the source level what you can hand-assemble and run from DEBUG. However, there fortunately is no PDP-8 parallel to this nonsense. The other issue is that Borland's product claims are exaggerated. Only with effort is it true. Thus, you got stung by claimed compatibility never fully delivered. So, you have to either use MASM, or accept TASM as a different product with a different set of tradeoffs. One could almost see this as a parallel to wanting to be compatible with PAL8 to avoid this sort of problem! In any case, please separate the arguments of compatibility and fraudulent claims of compatibility, etc. > When I got TASM the box said "100% compatible with >MASM V4.0 and V5.1" on it, and the first program I tried it on (which >assembled without errors under MASM V5.1) triggered many dozens of >error messages. It took me about a day to get it conditionalized so >that both assemblers would like it. Why bother? I'd much rather make >a clean break and blow off compatibility in favor of correcting some >of the basic sillinesses in MASM's design. I totally agree. Fortunately, we don't have this dreadful a situation on the PDP-8! > If I found (or wrote) an >assembler that did all these things right, I'd gladly spend a week >or two reediting all my programs (probably with a lot of help from >a simple BASIC program, like the syntax would really be that different) >to use the better assembler. You are seriously underestimating the situation here. All of your programs are a proverbial drop in the bucket compared to what fills the PDP-8 pail. And again, unless you offer some compelling reason to switch beyond different for difference's sake, what's the point? > >And as Doug pointed out, if your goals are modest why sweat over the >assembler? IF that's truly true, then you are right. However, why encourage mediocrity? Perhaps if the right tools are available, someone will actually write non-trivial programs for the -8. By having only mediocre tools, you are guaranteeing the results. > I wrote a lousy PDP-8 cross assembler when I was a freshman >(and had unlimited free electricity!) so that I could upload code from >my PDT-11/150 into my PDP-8/E, and the only neat thing about it was that >it worked at all (my PDP-8 peripherals were all 150 miles away so so >much for PAL/D), but so what? So what you are saying is that you had a toy project that included writing a toy assembler? So what? Indeed that's fine if that's the scope of it. Besides, who would even want to deal with PAL/D which is the TSS8 dog assembler with no useful features anyway. Lotsa people had input into PAL8 to correct a lot of the "sins of the past" such as PAL/D. (I personally specified RELOC without which most of mine and others' work couldn't get done. In fact, I'll go further: without RELOC I refuse to use PAL8!) >I *like* to put dots on the beginning >of ".TEXT" and ".PAGE", and I consider generating a BIN "org" record >for every "*" command even if no data are generated to be a bug, not >a feature, but no one else will ever use the assembler anyway. Your personal preferences for the names of petty features aren't an issue to me beyond the reasons stated above. I find it far more rewarding to adapt to a universal standard language than to bitch about cosmetics. More important to ensure the useful features that "matter" are present. > >John cjl From lasner@sunSITE.unc.edu Mon May 9 10:44:36 EDT 1994 Article: 818 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!sunSITE!lasner From: lasner@sunSITE.unc.edu (Charles Lasner) Newsgroups: alt.sys.pdp8 Subject: Re: PDP-8's in the schools Date: 9 May 1994 13:37:01 GMT Organization: University of North Carolina, Chapel Hill Lines: 81 Message-ID: <2qle9t$i93@bigblue.oit.unc.edu> References: <2qaf7c$scm@bigblue.oit.unc.edu> <2qb1rl$eb6@nexus.uiowa.edu> <2qimlr$rq4@bigblue.oit.unc.edu> NNTP-Posting-Host: calzone.oit.unc.edu In article , Bob Smith wrote: >In CJL's last post on this article (at the time of my post), he does his >best to say: All of your stuff has been done before, there are better >ways, none of this is original, and CJL can do better. This is simply not true! I think it's great that a science fair project in 1994 involves the -8! I hope there's a whole lot more of things like this! As to the comments on programming technique, all I am encouraging is constructive criticism. Doug is a self-proclaimed -8 programming novice. I thought it was a good opportunity to show how his code could be tweaked in various ways for his benefit., as well as anyone else who cares to see the distinctions, etc. Of course I can do it better, so what? Is this a contest? Others can also do it better, so what? There are others who can do it better than me, so what? Hopefully with some additional experience, Doug himself will do it better. That's a goal for my posting, etc. > >While all of his comments MAY BE true, I say that it is time to >focus on what this effort is all about: FUN. The fun of seeing something >work. The fun of seeing how you (the individual) can do something, >the fun of learning how to do it even if someone else has already done >it a similar way or even a better way. I totally agree. How do you think the tricks of the -8 were developed in the first place? Personally, I think there are still many more to be learned for all of us. When I learned programming, the authoritarian types spouted party-line nonsense such as the old saw that to check if a number is in a range, you have to do a double-compare, first to see if it's greater than a lower bound, and then less than an upper bound. Since I initially didn't know any better, I followed their false notion. One day I was staring at someone else's code and saw that this is wrong: on the -8, if you setup the link before you check a range, it flips/does not flip according to if the number is in range! And as a useful side effect, you get the relative list position in the ac as a bonus. This revelation blew me away! I really learned an important concept from another person. It would have been real helpful if that person was available to me and was telling it to me. I would have been writing far better code far sooner if enough of that sort of guidance had been available, etc. > >There is a bit of life left in the old 8's. There is still more >fun left in them if we can give each other credit for trying, gently >coach and mentor with ways of doing things differently, and ENCOURAGE >EVERYONE to try. Which is exactly what I am attempting to do! > >The logical thinking process that gets a program to work or a piece of >hardware to work is only part of it. The individual stamp, the artistry >if you will, should not be squelched by any of us. If advice is sought, >it should be freely given. If some one is letting us know that >they have accomplished something of note to them personally, we all >should enjoy, not just for them or with them but for our selves as >we remember or premeber how will did or will do something similar. Doug posted his code here for all of us to see. He isn't doing so to win prizes for best of -8 code awards :-). > >There are way to impart information that do not detract from an >individual's effort. There are destructive ways of attempting to >do the same thing. Let's make this fun. I totally agree. But I think you are alone in the way you mistook this. I think Doug's reactions differ. And since he was the "prime target" I think we should let him decide. In any case, this is a fun thing, and it should be that way, etc. :-) >bob cjl From lasner@sunSITE.unc.edu Mon May 9 10:47:03 EDT 1994 Article: 819 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!sunSITE!lasner From: lasner@sunSITE.unc.edu (Charles Lasner) Newsgroups: alt.sys.pdp8 Subject: Re: PDP-8's in the schools Date: 9 May 1994 14:17:04 GMT Organization: University of North Carolina, Chapel Hill Lines: 125 Message-ID: <2qlgl0$g3t@bigblue.oit.unc.edu> References: <2q8b86$7de@nexus.uiowa.edu> <2qaffs$ggi@bigblue.oit.unc.edu> <2qcsps$9g5@bigblue.oit.unc.edu> <8MAY199415370720@siva.bris.ac.uk> NNTP-Posting-Host: calzone.oit.unc.edu In article <8MAY199415370720@siva.bris.ac.uk>, PDP11 Hacker ..... wrote: >In article <2qcsps$9g5@bigblue.oit.unc.edu>, lasner@sunSITE.unc.edu (Charles Lasner) writes... >>In article <5MAY199414541733@siva.bris.ac.uk>, >>PDP11 Hacker ..... wrote: >[Doug's C cross-assembler] >>>What does it fail on? It's surely OK for cross-assembling little test programs, >>>and at least I get the source. >>Full-blown PDP-8 assemblers are few and far between. Most people who >>have written viable PDP-8 cross assemblers haven't gotten it quite right, >>or are just missing important features, etc. Unlike some other lame >>assemblers, the PDP-8 assembler depends on certain quirks that have been >>around for decades, and the programs that exist depend on the nuances, etc. >Could you please post some examples of these quirks. It would be interesting to >see what the programmers got up to. I could dig up some relevant examples, but I suspect you would do better to just look at some example programs. In any case, a "complete" -8 assembler depends on a whole bunch of inter-dependent characteristics that make the difference between a toy and something more useful than for just getting a little binary from a little source. Some of this is documented in the relevant manuals, but even they leave some things out, etc. >>Of course, what good is it to you to have the source of the assembler >>written in itself without a system to run it on? (And if you have the >>system itself, you have no immediate need for the assembler's own source, >>unless you want to study/modify the assembler itself!) >Actually, I would be interested in studying the assembler. The reason I run all >the old machines that I do is to learn about computers, how they work (both >hardware and software), and also to learn from the mistakes. Reading software >source code is a great way to do this. I agree. But without a complete -8 assembler to read, what little is gained from an incomplete attempt at an -8 assembler will only show another point of view on how not to write one! Also, remember that this is a language processor. You are not only dealing with syntax issues, but also the assembler itself is interfaced to an operating system, and of course the whole thing is PDP-8-specific code to implement the thing. >>(Remember, most PDP-8 software is written in assembler!) >>>Surely that means I need an assembler than runs on a PDP8 (if it is to run on >>>an emulator). In that case, I could run the assembler on my PDP8. Is such an >>>assemblerr available anywhere. I'm afraid I don't really know what PDP8 >>>software is out there - I've just got the machine and so far I've only run one >>>program and that was from the maintenance manual, just to check that most of >>>the hardware was working. >>No, you don't have a machine yet. You have a CPU only. The dominant >>software isn't for a CPU with a little memory. You need a disk device >>and a terminal, and preferably a line-printer. Add an extra serial line >>and you can run Kermit, etc. In any case, all but the extra serial line >>is needed to run the assembler; delete the LPT: only if you don't want >>paper listings, etc. >Hmmm. I have a little more that just the CPU and memory. I _think_ my current >list of options is : >PDP8/e CPU >Timeshare/extended address board >32K core (4 off 8K 3-board sets) >Line-frequency Clock >3 serial ports (M8655?) >1 LS8E (Is that a printer port) >1 RK8 (No drives yet, but I can 'borrow' an RK05 off my PDP11 if necessary). >I also have (non-working I think) a further serial port and a second RK8E. >The only thing I am missing is the EAE board set, but presumably some software >will run without that installed. Sorry, but as the phrase goes, close, but no cigar! Clearly you are heading in the correct direction, but until you are there, you are no closer than just CPU and memory as far as a development environment goes. >I am still testing things up at the moment, but I will get it all working... I hope so! At that point you have enough to start using real code without an emulator. >>So, start with an emulator. When you get a whole machine together, you >>can run the same software on both the real hardware and on the emulator. >>Perhaps you'll even outgrow the need to have an emulator at all! >I'd much rather fix up the hardware and run the programs on the 'right' >machine. Somehow, a PDP8 without a front panel doesn't seem right :-) I agree. But I already have lotsa in-place hardware already doing it. Yet curiously I find myself primarily typing on DECmates for development as a more "personal" environment. Then I use Kermit to finalize the program on the -8. However, on the -8 I have plenty of development tools available as well, so often the version that comes back to the DECmate is itself edited and sent back, etc. My -8 has more than just lights and switches, it also has a hardware breakpoint module. For some problems, this is invaluable and has bailed me out more than once! >>>-tony >>>Bristol University takes no responsibility for the views expressed in this >>>posting. They are the personal views of the user concerned. >>cjl You will be needing a way to get OS/8 to your machine if you haven't done that already. It would help if you can at least borrow an RX01/02 for that purpose so someone can mail you a starter system. Beyond that, the net can get you what you need, etc. Unfortunately, we don't have presently any software to download an O/S at an -8 that is "empty" :-(. (Note: Kermit-12 includes a facility to get *it* up on a "bare" OS/8 system!) >-tony >Bristol University takes no responsibility for the views expressed in this >posting. They are the personal views of the user concerned. cjl From lasner@sunSITE.unc.edu Mon May 9 10:47:39 EDT 1994 Article: 820 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!sunSITE!lasner From: lasner@sunSITE.unc.edu (Charles Lasner) Newsgroups: alt.sys.pdp8 Subject: Re: PDP-8 assemblers Date: 9 May 1994 14:30:32 GMT Organization: University of North Carolina, Chapel Hill Lines: 44 Message-ID: <2qlhe8$amt@bigblue.oit.unc.edu> References: <2qhsmr$7d3@usenet.rpi.edu> <8MAY199415450361@siva.bris.ac.uk> NNTP-Posting-Host: calzone.oit.unc.edu In article <8MAY199415450361@siva.bris.ac.uk>, PDP11 Hacker ..... wrote: >In article <2qhsmr$7d3@usenet.rpi.edu>, wilsonj@alum01.its.rpi.edu (John Wilson) writes... >>I should know better than to say this (got in a flame war with cjl last >>time I did :-) but, why is PAL-8 compatibility such a lofty goal? It's >I fully agree with you. The reason I wanted Doug's assembler was not to avoid >getting a real assembler/operating system/disk for my PDP8e, but to assemble >little test programs to sort out the hardware that I've got, so that I know it >will work correctly. It sure beats hand-assembling :-) Totally agree with that. Never was an issue. John Wilson is really raising other issues answered elsewhere, etc. >Incidentally, I know it's a cause of flames to mention PC's on this newsgroup, >but Doug's assembler will compile and run (I think correctly) under Microsoft >QuickC v2.5 on a PC. No changes needed. It's good to know that it will run on a PC. In case it gets to be a "real" assembler some day :-). >>a pretty lame assembler, and it's not as if there are untold hundreds of >>megabytes of PDP-8 source code available to most of us, which it would >>be impossible to convert to a slightly different syntax. If you need >Most of these sytanx changes can be fixed by running sed on the source file, >and then fixing up any errors that come on assembly. OK, so it would be a pain >for something like an operating system source, but in that case, why not use >PAL8. It's not like you're limited to one assembler for all programs... No good. Name this mythical assembler that has the functionality, but only achieved using incompatible syntax. John is referring to incomplete projects that happen to have pet features that he finds useful while they leave out functionality found elsewhere, such as in PAL8. >>John >-tony >Bristol University takes no responsibility for the views expressed in this >posting. They are the personal views of the user concerned. cjl From jones@pyrite.cs.uiowa.edu Mon May 9 17:26:53 EDT 1994 Article: 821 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!zombie.ncsc.mil!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: Re: PDP-8 assemblers Date: 9 May 1994 15:09:55 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 37 Distribution: world Message-ID: <2qljo3$ojt@nexus.uiowa.edu> References: <2qlhe8$amt@bigblue.oit.unc.edu> NNTP-Posting-Host: pyrite.cs.uiowa.edu >From article <2qlhe8$amt@bigblue.oit.unc.edu>, by lasner@sunSITE.unc.edu (Charles Lasner): > In article <8MAY199415450361@siva.bris.ac.uk>, > PDP11 Hacker ..... wrote: >>In article <2qhsmr$7d3@usenet.rpi.edu>, >>wilsonj@alum01.its.rpi.edu (John Wilson) writes... >>>I should know better than to say this (got in a flame war with cjl last >>>time I did :-) but, why is PAL-8 compatibility such a lofty goal? It's We're not really trying to construct the longest USEnet thread in history, are we? This silly flamewar is rediculous! 1) Of course, full compatability with PAL 8 is desirable. One of our ultimate goals should be to create a source-level archive of all the PDP-8 software we can get. Source archives are far less fragile than binary archives -- look what happened to that poor fellow who posted in alt-folklore-computers when his data was converted from EBCDIC to ASCII by someone who didn't know that it contained binary data as well as text; odds are, he'll never recover the binary data! Given a source archive and a decent portable cross assembler, you can reconstruct the software you want and use it to rescue and rebuild a system with nothing left functioning. This can be particularly important with diagnostics, where source listings would be particularly useful! 2) All I said was that I was in no hurry to produce a fully compatable cross assembler. Why the arguments about whether such compatability is a worthy goal? 3) My assembler doesn't support conditional assembly, but other than that, it appears to be source-level compatable with PAL. The listing format is mildly incompatable, it screams way too loud about off page references (but assembles them correctly), and it is limited to a 32K memory model. I'll probably put in conditionals someday. Doug Jones jones@cs.uiowa.edu From ard@siva.bris.ac.uk Mon May 9 18:29:26 EDT 1994 Article: 822 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!solaris.cc.vt.edu!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!EU.net!uknet!warwick!bsmail!siva.bris.ac.uk!ard From: ard@siva.bris.ac.uk (PDP11 Hacker .....) Subject: Re: PDP-8's in the schools Message-ID: <9MAY199417524974@siva.bris.ac.uk> News-Software: VAX/VMS VNEWS 1.41 Sender: usenet@info.bris.ac.uk (Usenet news owner) Nntp-Posting-Host: siva.bris.ac.uk Organization: University of Bristol Physics Department References: <2q8b86$7de@nexus.uiowa.edu> <2qaffs$ggi@bigblue.oit.unc.edu> <2qcsps$9g5@bigblue.oit.unc.edu> <2qlgl0$g3t@bigblue.oit.unc.edu> Date: Mon, 9 May 1994 16:52:00 GMT Lines: 124 In article <2qlgl0$g3t@bigblue.oit.unc.edu>, lasner@sunSITE.unc.edu (Charles Lasner) writes... [Quirks in PAL8 code] >I could dig up some relevant examples, but I suspect you would do better >to just look at some example programs. In any case, a "complete" -8 >assembler depends on a whole bunch of inter-dependent characteristics >that make the difference between a toy and something more useful than for >just getting a little binary from a little source. Some of this is >documented in the relevant manuals, but even they leave some things out, etc. OK. Please point me at the example programs. Are they on an ftp site anywhere? I would like to see one such characteristic, preferably undocumented, that could cause problems. [Is the source to an assembler useful] >I agree. But without a complete -8 assembler to read, what little is There seems to be 2 issues here a) Doug's assembler came with source, so that I could trivially compile it on a PC and use it to assemble little test programs to sort out my 8/e's hardware b) I would be interested in seeing the source to a 'real' PDP8 assembler, so that I can see how it was written, and how it works, and what quirks it expresses. >gained from an incomplete attempt at an -8 assembler will only show >another point of view on how not to write one! Also, remember that this >is a language processor. You are not only dealing with syntax issues, >but also the assembler itself is interfaced to an operating system, and Surely an assembler translates assembly code into machine code. The OS it runs on to do this (if in fact there is an underlying OS - standalone assemblers have existed) is irrelevant. Why does a PDP8 assembler have to run on a PDP8? Why can't a proper, compatible, one run on UNIX, VMS, MS-DOS, or whatever other OS you care to name. >of course the whole thing is PDP-8-specific code to implement the thing. Again, I fail to see why it has to be PDP8 code. [My PDP8e - >> line are mine] >>Hmmm. I have a little more that just the CPU and memory. I _think_ my current >>list of options is : >>PDP8/e CPU >>Timeshare/extended address board >>32K core (4 off 8K 3-board sets) >>Line-frequency Clock >>3 serial ports (M8655?) >>1 LS8E (Is that a printer port) >>1 RK8 (No drives yet, but I can 'borrow' an RK05 off my PDP11 if necessary). > >>I also have (non-working I think) a further serial port and a second RK8E. > >>The only thing I am missing is the EAE board set, but presumably some software >>will run without that installed. > >Sorry, but as the phrase goes, close, but no cigar! Clearly you are >heading in the correct direction, but until you are there, you are no >closer than just CPU and memory as far as a development environment goes. I have the maintenance manual, printsets, and enough test equipment to turn some members of this group the colour of a PDP12 :-). Every component in the system I can either get or have in my junk box. I repair PDP11's, PERQs, and P850s, no problems. There is no question as to whether I will get the rest of the hardware running. In the meantime I was going to try and find out what software was available, and how to get it, for the time when I finally got it all together. However, if I do run into problems, please remind me not to post to this group as I shall probably get a flame for not having a GenRad board tester, like DEC used to use. [Emulators] >I hope so! At that point you have enough to start using real code >without an emulator. Just out of curiousity, what sort of machine do I need to run a PDP8 emulator, and where can I get the emulator from? [Real hardware vs emulators] My aim in all this has been simple : To fix up the PDP8/e, get a terminal and disk drive on it, and then to run some software. I'm not particularly interested in running PDP8 code on anything else. So, when I saw that a PDP8 cross assembler was available, I thought it might be a way of saving a lot of hand assembling for little test programs. Simple as that. > >My -8 has more than just lights and switches, it also has a hardware >breakpoint module. For some problems, this is invaluable and has bailed >me out more than once! I could probably do something similar by clearing the run f/f with the trigger output from my logic analyser. > >>>>-tony > >>>>Bristol University takes no responsibility for the views expressed in this >>>>posting. They are the personal views of the user concerned. > > >>>cjl > >You will be needing a way to get OS/8 to your machine if you haven't done >that already. IT would help if you can at least borrow an RX01/02 for No, I have no operating systems. I have plenty of RX01's and RX02's, but only UNIBUS and QBUS controllers. Unfortunately, the schematics (or theroy of operation) of the RX8 and RX28 where not in the pile of PDP8 and PDP12 manuals that came with my machine. >that purpose so someone can mail you a starter system. Beyond that, the >net can get you what you need, etc. Unfortunately, we don't have >presently any software to download an O/S at an -8 that is "empty" :-(. >(Note: Kermit-12 includes a facility to get *it* up on a "bare" OS/8 system!) Wasn't there a way to load OS-8 from paper tape. I have a real ASR33 if that's the way to go... >cjl > -tony Bristol University takes no responsibility for the views expressed in this posting. They are the personal views of the user concerned. From ard@siva.bris.ac.uk Mon May 9 18:59:51 EDT 1994 Article: 823 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!corpgate!news.utdallas.edu!chpc.utexas.edu!cs.utexas.edu!howland.reston.ans.net!pipex!warwick!bsmail!siva.bris.ac.uk!ard From: ard@siva.bris.ac.uk (PDP11 Hacker .....) Subject: This silly flamewar Message-ID: <9MAY199419233906@siva.bris.ac.uk> News-Software: VAX/VMS VNEWS 1.41 Sender: usenet@info.bris.ac.uk (Usenet news owner) Nntp-Posting-Host: siva.bris.ac.uk Organization: University of Bristol Physics Department Date: Mon, 9 May 1994 18:23:00 GMT Lines: 44 As I seem to be the start of this current stupid flamewar, maybe I should put a few points in my defence.... Firstly, Lets look at the hardware. I've just rescued a PDP8e that was otherwise going for scrap. This is my first real PDP8, my only other contact with them being a DECmate 2 that I'd bought 1 week earlier and had done nothing to. So, I get this machine home, sort out a problem with the PSU, get it to run a simple program. I have no peripherals, no software. I know I need to remedy this. So, I post to alt.sys.pdp8, and am flamed for not having a fully working system. I've only had the machine for a week, and only worked on it at weekends. Surely you don't have to have a full system, with every possible option, to post here. Shouldn't we be encouraging the repair/rescue of the old machines, however little they have on them. I know that if I was offered a straight-8, no matter what the configuration, I'd jump at the chance... Now lets look at the real flamewar - namely the assembler. I understand that PAL-8 is the standard. I'd love to run PAL-8 on my system, but until I get a disk and terminal up and running, I am unable to do so. My first priority is to fix the remaining parts of my system. Now, I see this post mentioning a C cross assembler. I think that this might be a way of building little test programs to test the RK8 etc. Nothing more - as soon as I get the machine working, I'll try and get some real software. So, I ask about it, and am treated to a flame war. I've been computing long enough to know that compatability with the 'standard' is not the only goal. What about all the CP/M systems with Z80's, whose assemblers either used Ziolg mnemonics or Intel mnemonics. What about all the FORTH assemblers. Useful work is done with all of these. In the HP saturn (the calcuator CPU used in the 71, 18,19,28,48 etc series) world there are 2 completely different sets of mnemonics, and the assemblers for them have totally different features. If you are building some HP code, you need an HP-compatable assembler, sure. But the other mnemonics are somewhat more logical, and some programmers prefer to use them. So What. Use whatever you like Much has been posted about the PAL-8 compatability, but I've yet to see one example of the quirks that keep on being mentioned. What exactly are they? Why do other assemblers break? Let's have some facts -tony Bristol University takes no responsibility for the views expressed in this posting. They are the personal views of the user concerned. From jones@pyrite.cs.uiowa.edu Mon May 9 19:00:29 EDT 1994 Article: 824 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!zombie.ncsc.mil!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: GenRad board tester Date: 9 May 1994 19:14:37 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 19 Distribution: world Message-ID: <2qm22t$1u1@nexus.uiowa.edu> References: <9MAY199417524974@siva.bris.ac.uk> NNTP-Posting-Host: pyrite.cs.uiowa.edu >From article <9MAY199417524974@siva.bris.ac.uk>, by ard@siva.bris.ac.uk (PDP11 Hacker .....): > > ... for not having a GenRad board tester, like DEC used to use. You want one? I happen to know where most of one is sitting right now, begging for a new owner. I bought the high speed reader and punch from it, but the GenRad backplane is still there. (My tongue is in cheek, I'll admit. I actually believe I have a stack of far more useful boards I got from the U of Iowa Psych Department, opto-isolated 36 bit out, 24 bit in parallel I/O boards. These look like they'd make great test interfaces!) I'm tempted by the old GenRad hardware just as a source of muffin fans, 5 volt power supply, and misc socketed chips (since all its chips are socketed). Doug Jones jones@cs.uiowa.edu From jones@pyrite.cs.uiowa.edu Mon May 9 19:32:41 EDT 1994 Article: 825 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!convex!cs.utexas.edu!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: Re: This silly flamewar Date: 9 May 1994 19:35:46 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 61 Distribution: world Message-ID: <2qm3ai$2p2@nexus.uiowa.edu> References: <9MAY199419233906@siva.bris.ac.uk> NNTP-Posting-Host: pyrite.cs.uiowa.edu >From article <9MAY199419233906@siva.bris.ac.uk>, by ard@siva.bris.ac.uk (PDP11 Hacker .....): > > Much has been posted about the PAL-8 compatability, but I've yet to > see one example of the quirks that keep on being mentioned. Quirks rarely center on the basic instructions (ADD, TAD, etc). It's in the area of pseudo-ops that odd stuff happens. If it was just a matter of getting listings right (for example, odd handling of XLIST, which toggles listing generation), it wouldn't be too bad, but getting the following wrong can make a good program under one assembler turn into pure nonsense on another: ENPUNCH -- turn on binary (object file) output NOPUNCH -- turn off binary output Do these nest or does the first ENPUNCH after a sequence of NOPUNCHES undo the effects of all of them. I -- indirect (as in TAD I WHIZZO) Z -- page zero (as in TAD Z WHIZZO) Are I and Z just constants? If not, what special semantics do they have? IFDEF IFNDEF IFZERO IFNZRO -- conditional assembly. How do conditional assembly directives nest. If a closing bracket is found in a comment, is it ignored or does it close the conditional. EXPUNGE -- clear the symbol table of all but pseudooperations FIXTAB -- mark all symbols as permanent FIXMRI -- define a new memory reference instruction mnemonic How do these interact? How do these interact? RELOC -- assemble code into one location that will run in another. There are a multitude of ways to get this wrong, particularly when it comes to the effects of consecutive RELOC pseudoops -- is the effect cumulative? How does it accumulate? Most of these quirks are of no importance at all for the purposes you and I envision for the kind of cross assembler I wrote -- downloading simple little test programs rarely involves any of these! On the other hand, after I get around to getting my RX01 drives working, I'll be looking for an operating system. If I have to assemble something like OS8, it'll likely require full compatability with the above. I have full source listings of a number of 1960's vintage paper-tape tools for the -8, and I'd like to scan them into machine-readable form and then try assembling them (this is practical! We tried a test scan of a few pages of the old 4K Fortran system, and Kurzweil Reading Machine could indeed read the smudgy old line-printer characters). Again, a fully compatable assembler is what I need for such a job. Doug Jones jones@cs.uiowa.edu From lasner@sunSITE.unc.edu Mon May 9 19:33:42 EDT 1994 Article: 826 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!sunSITE!lasner From: lasner@sunSITE.unc.edu (Charles Lasner) Newsgroups: alt.sys.pdp8 Subject: Re: PDP-8's in the schools Date: 9 May 1994 22:28:39 GMT Organization: University of North Carolina, Chapel Hill Lines: 301 Message-ID: <2qmden$oad@bigblue.oit.unc.edu> References: <2q8b86$7de@nexus.uiowa.edu> <2qcsps$9g5@bigblue.oit.unc.edu> <2qlgl0$g3t@bigblue.oit.unc.edu> <9MAY199417524974@siva.bris.ac.uk> NNTP-Posting-Host: calzone.oit.unc.edu In article <9MAY199417524974@siva.bris.ac.uk>, PDP11 Hacker ..... wrote: >In article <2qlgl0$g3t@bigblue.oit.unc.edu>, lasner@sunSITE.unc.edu (Charles Lasner) writes... > >[Quirks in PAL8 code] > >>I could dig up some relevant examples, but I suspect you would do better >>to just look at some example programs. In any case, a "complete" -8 >>assembler depends on a whole bunch of inter-dependent characteristics >>that make the difference between a toy and something more useful than for >>just getting a little binary from a little source. Some of this is >>documented in the relevant manuals, but even they leave some things out, etc. > >OK. Please point me at the example programs. Are they on an ftp site anywhere? >I would like to see one such characteristic, preferably undocumented, that >could cause problems. Ask Doug for a smattering of these. He had to re-implement his assembler's reckoning of some of the common problem situations until it worked correctly. Otherwise, what you are asking for is a spec on how to implement the language, which I guess I'm the tapped person to write it, etc. I will get to it, but it's gonna take some time for a complete spec and wish-list. But I will say for now, that it will be quite picky on points often ignored in other machines. In any case, I'll try to give an example of what the assembler gets used for that perhaps breaks most attempts. By the end of this, the only assembler left standing will be P?S/8's. Problem: We are going to write an overlay. It needs to use current page literals for itself (in each of its pages) and also has the right to use page zero literals of what page zero looks like at the time this gets loaded off of a disk block back into absolute memory locations as defined at assembly time. Additionally, both the relevant page-zero literal table and the overlay itself are not where they would be loaded later, as this program we are writing is actually the generator of the overlay etc., and thus this "real" program is running in a normal binary space and has its own aspects to be concerned about just to get the overlay written to the disk. Thus, this program needs to know the loading address of the overlay as it exists in memory right now, "next to" the program that will do the writing. Yet, the assembler has to correctly assemble the overlay itself as if being executed in the place where the overlay later gets loaded back in when called up, etc. To accomplish all of this, the assembler has to support RELOC so that the source origin deliberately is not the same as the binary one. The relocation has to be cumulative so that the page zero literals can be offset differently from the current page code. Additionally, the literal generation method has to keep track of the extent of literals on each current page, as well as page zero. According to standard rules, when you leave a page, the extents of both the code and literal dump are remembered, so that re-enterring the page can be accomplished with full checking of literal table/code collision, etc. (Of course the literals themselves are dumped, so that redundant literal generation could occur!) However, we need to be able to disable this remembrance altogether for this program, since the program space seems to be redundant to the overlay space or vice-versa. As a concession to the assembler, we are willing to not re-enter pages once leaving them. PAL8 can accomplish all of the above, as long as they are all in the same field. Only P?S/8 PAL can do it should the data be loaded into two different fields. Considering that this is an overlay, that's entirely possible! (One uses overlays because all of the available space is filled, and swapping in is feasible. Thus, the binary definition of where to load the overlay for write-out/generation purposes to get it to the disk would easily require the use of memory space outside of the 4K field where the program that gets overlayed would have to be created, etc.) The reason P?S/8 PAL can accomplish this is because beyond PAL8's capability, P?S/8 PAL includes a dynamic option to prevent the page-zero literal table from being dumped during a field change. Thus, up to 7 additional entire fields of overlays can be created over a 4K base program in a 32K development environment, all stages sharing the page-zero literal area in an equitable way. I actually had to do this once to create an application that was a real-time system which swapped in some analysis tools. The rest of memory was occupied either by data or code in 32K, so overlaying was the only option. Since the disk calls were P?S/8-specific, it could only be done there for execution purposes also. However, by using OS/8 conventions, it could have easily been made runnable from OS/8 only, yet OS/8 couldn't assemble it. I once had a similar application of these principles, but for a totally different application. Additionally, it had to be run from OS/8. So, after it was completed, we had to go back and identify by hand all page-zero literals in both the overlays and the base code, and delete them by effectively doing kludges like Z100= [0100] Z20= [0020] Then changing all of the references from something like: AND [100] to AND Z100/[100] Note the commented-out attempt at a literal to remind us of what we would have liked to do, but couldn't! So, in effect, we removed all of the literals from page zero! As the base code is dumped, so is the page zero literal table. Then the overlays are on their own to reference the Z-constants. So, instead of the assembler working for us, we worked for the assembler! Code that is relocated affects the way the assembler listing is created. There is an asterisk next to any relocated address, since it's showing the source reckoning, not the binary reckoning. BTW, (John Wilson, are you listening?) some utilities look at sequences of deliberate origin settings in files to validate them. (I think this includes TSS8.) Thus, it's necessary that origins be under the control of the programmer. There is even an option to enable/disable the automatic *200 that comes just after a field setting. Also, there are the NOPUNCH and ENPUNCH pseudo-ops used to establish overall controll. This can be useful to be a poor man's RELOC as long as literals aren't being used, or to create dummy sections in a program merely to create definitions, but no actual binary. > >[Is the source to an assembler useful] >>I agree. But without a complete -8 assembler to read, what little is > >There seems to be 2 issues here >a) Doug's assembler came with source, so that I could trivially compile it on a >PC and use it to assemble little test programs to sort out my 8/e's hardware >b) I would be interested in seeing the source to a 'real' PDP8 assembler, so >that I can see how it was written, and how it works, and what quirks it >expresses. > >>gained from an incomplete attempt at an -8 assembler will only show >>another point of view on how not to write one! Also, remember that this >>is a language processor. You are not only dealing with syntax issues, >>but also the assembler itself is interfaced to an operating system, and > >Surely an assembler translates assembly code into machine code. The OS it runs >on to do this (if in fact there is an underlying OS - standalone assemblers >have existed) is irrelevant. Why does a PDP8 assembler have to run on a PDP8? >Why can't a proper, compatible, one run on UNIX, VMS, MS-DOS, or whatever other >OS you care to name. Some of the features can't apply to a non-O/S version, such as PAUSE which means to force local EOF. P?S/8 includes an option to force a separate binary file for output to be started at an arbitrary point, which is also useful towards the endeavor of overlays, etc. But other than that, of course you are correct. Using the medium of exchange of the 8-bit frame paper-tape binary output encoded in some suitable manner, cross-assemblers are fine, as long as they really do obey all of the quirks of assembly, etc. It's just that so far, no one has ever quite got it right! > >>of course the whole thing is PDP-8-specific code to implement the thing. > >Again, I fail to see why it has to be PDP8 code. Same as above, no reason other than history. > >[My PDP8e - >> line are mine] >>>Hmmm. I have a little more that just the CPU and memory. I _think_ my current >>>list of options is : >>>PDP8/e CPU >>>Timeshare/extended address board >>>32K core (4 off 8K 3-board sets) >>>Line-frequency Clock >>>3 serial ports (M8655?) >>>1 LS8E (Is that a printer port) >>>1 RK8 (No drives yet, but I can 'borrow' an RK05 off my PDP11 if necessary). >> >>>I also have (non-working I think) a further serial port and a second RK8E. >> >>>The only thing I am missing is the EAE board set, but presumably some software >>>will run without that installed. >> >>Sorry, but as the phrase goes, close, but no cigar! Clearly you are >>heading in the correct direction, but until you are there, you are no >>closer than just CPU and memory as far as a development environment goes. > >I have the maintenance manual, printsets, and enough test equipment to turn >some members of this group the colour of a PDP12 :-). Be careful about that! Most of Mark Hyde's -12's are blue, not green. > Every component in the >system I can either get or have in my junk box. I repair PDP11's, PERQs, and >P850s, no problems. There is no question as to whether I will get the rest of >the hardware running. In the meantime I was going to try and find out what >software was available, and how to get it, for the time when I finally got it >all together. >However, if I do run into problems, please remind me not to post to this group >as I shall probably get a flame for not having a GenRad board tester, like DEC >used to use. We have great confidence in your ability to eventualy get there! My only point is that at the present time you aren't there yet. And further, you have no software to run on it yet even if you were. Additionally, you have no experience with the software, which will take you a little longer to get fluent with it sufficiently (but not much! :-)). > >[Emulators] >>I hope so! At that point you have enough to start using real code >>without an emulator. >Just out of curiousity, what sort of machine do I need to run a PDP8 emulator, >and where can I get the emulator from? Ask Bill Haygood what the extet of his emulator is. There are others that are PC-specific. They have the advantage of being able to exchange live media with some DEC machines. Bill's uses simulated devices exclusively. > >[Real hardware vs emulators] >My aim in all this has been simple : To fix up the PDP8/e, get a terminal and >disk drive on it, and then to run some software. I'm not particularly >interested in running PDP8 code on anything else. So, when I saw that a PDP8 >cross assembler was available, I thought it might be a way of saving a lot of >hand assembling for little test programs. Simple as that. Absolutely. When you get the real thing up, then use the real thing. > >> >>My -8 has more than just lights and switches, it also has a hardware >>breakpoint module. For some problems, this is invaluable and has bailed >>me out more than once! > >I could probably do something similar by clearing the run f/f with the trigger >output from my logic analyser. > This one's got some nice rotary wheels/dials to set the address of the fetch or exec stop. Someone published these things in DECUS years ago for the Omnibus. >> >>>>>-tony >> >>>>>Bristol University takes no responsibility for the views expressed in this >>>>>posting. They are the personal views of the user concerned. >> >> >>>>cjl >> >>You will be needing a way to get OS/8 to your machine if you haven't done >>that already. IT would help if you can at least borrow an RX01/02 for > >No, I have no operating systems. I have plenty of RX01's and RX02's, but only >UNIBUS and QBUS controllers. Unfortunately, the schematics (or theroy of >operation) of the RX8 and RX28 where not in the pile of PDP8 and PDP12 manuals >that came with my machine. Not a problem. There is an RT-11 program that maintains OS/8 RX01 disks. But you still need a way to read them on the -8 for boot purposes, so you need the M8357 card :-(. Perhaps there is another way: It's possible to write a two-page OS/8 system handler that uses the serial port as a device assuming a support device on the other end. In essence, what you have to do is get a copy of OS/8 configured for this system in image form. Then get it to the server machine of your choice so it translates disk read and write requests into the 8-bit format the comm board expects. This is how "WPS-11" worked, which was really a bunch of VT-78's on an -11 server, etc. The -8 boot of such a system would be long by boot standards, but still short enough to toggle in. Once up, you could then run BUILD to transfer it to an RK8E/RK05, etc. > >>that purpose so someone can mail you a starter system. Beyond that, the >>net can get you what you need, etc. Unfortunately, we don't have >>presently any software to download an O/S at an -8 that is "empty" :-(. >>(Note: Kermit-12 includes a facility to get *it* up on a "bare" OS/8 system!) > >Wasn't there a way to load OS-8 from paper tape. I have a real ASR33 if that's >the way to go... There is a way to run BUILD to create a system from paper-tapes. I wouldn't think of using an ASR-33 though! It was designed for use with a PC04 reader/punch, etc. > >>cjl >> >-tony > >Bristol University takes no responsibility for the views expressed in this >posting. They are the personal views of the user concerned. > cjl From lasner@sunSITE.unc.edu Mon May 9 19:34:14 EDT 1994 Article: 827 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!sunSITE!lasner From: lasner@sunSITE.unc.edu (Charles Lasner) Newsgroups: alt.sys.pdp8 Subject: Re: This silly flamewar Date: 9 May 1994 23:32:02 GMT Organization: University of North Carolina, Chapel Hill Lines: 185 Message-ID: <2qmh5i$10ug@bigblue.oit.unc.edu> References: <9MAY199419233906@siva.bris.ac.uk> <2qm3ai$2p2@nexus.uiowa.edu> NNTP-Posting-Host: calzone.oit.unc.edu In article <2qm3ai$2p2@nexus.uiowa.edu>, Douglas W. Jones,201H MLH,3193350740,3193382879 wrote: >From article <9MAY199419233906@siva.bris.ac.uk>, >by ard@siva.bris.ac.uk (PDP11 Hacker .....): >> >> Much has been posted about the PAL-8 compatability, but I've yet to >> see one example of the quirks that keep on being mentioned. > >Quirks rarely center on the basic instructions (ADD, TAD, etc). Oh yeah? Try assembling *TAD . TAD TAD TAD . And not as ridiculous as it sounds. Handlers have stuff like: TAD (TAD I FOO) DCA .+1 .-. > >It's in the area of pseudo-ops that odd stuff happens. If it was >just a matter of getting listings right (for example, odd handling >of XLIST, which toggles listing generation), it wouldn't be too bad, >but getting the following wrong can make a good program under one >assembler turn into pure nonsense on another: If XLIST turns off the listing, then it assembles anyway. If multiple statements are on the line, then the first statement can be XLIST and prevent seeing the listing line, but if the statements before XLIST get the line listed out, the XLIST applies to the next line. (And you get to see the "XLIST" itself that way! Additionally, XLIST is a flip-flop initially on. Further, it takes evaluated arguments where 1=turn it off and 0=turn it on. Some of my sources start with: XLIST OFF IFNDEF OFF IFNDEF ON XLIST ON Note that even XLIST 0 doesn't get listed unless there are multiple statements on the line and subsequent statements beyond the XLIST want the output to show. This is the symmettrical opposite of the XLIST 1 situation, etc. > > ENPUNCH -- turn on binary (object file) output > NOPUNCH -- turn off binary output > Do these nest or does the first ENPUNCH > after a sequence of NOPUNCHES undo the > effects of all of them. The correct way is independently, not nested. > > I -- indirect (as in TAD I WHIZZO) > Z -- page zero (as in TAD Z WHIZZO) > Are I and Z just constants? If not, what > special semantics do they have? NO!!!!!!! They are pseudo-ops that modify the parse scan. Once I has been scanned, the rest of the scan is attempting to find an argument to the prevailing MRI operation that has been placed in effect earlier. Were I just another symbol, then they would be affected by this, but rather they just mean that the indirect (or removal of the current page bit in the case of Z) bit is to be OR'ed into the instruction after the generation is resolved. Also, if you find another MRI as part of the operation, you have to push down the state of I as well as all else, so you can then resolve the MRI argument of that MRI which in turn could have its own I. However, if an MRI scan isn't in effect, then I does have the value of 0400 in -8 mode and 0020 in LINC mode. > > IFDEF > IFNDEF > IFZERO > IFNZRO -- conditional assembly. > How do conditional assembly directives nest. > If a closing bracket is found in a comment, > is it ignored or does it close the conditional. This has been a hot issue for years. Clearly conditionals nest. But what abouts comments in the wake of a failing conditional being flushed? True compatibility demands that the comments be scanned! I would like to see an option to make comments be ignored. The issue is that if a conditional fails, what you do is attempt to find ">" and ignore (flush) all input until you find it. However, should you find "<" along the way, you increment the count of ">" you must find. Getting to the end of the file input is a fatal "phase" error during a flush. But as currently implemented, there is no check for whether the ">" and "<" are within a comment. Most of us either avoid brackets in comments, or perversely make them "match"! If you add the feature to totally avoid brackets in a comment field until local end-of-line to end the comment, some existing programs will break! In any case, should a conditional succeed, finding the ">" is ignored in terms of syntax error. The best solution is to do it either PAL8 way or with an option switch to the assembly. > > EXPUNGE -- clear the symbol table of all but pseudooperations > FIXTAB -- mark all symbols as permanent > FIXMRI -- define a new memory reference instruction mnemonic > How do these interact? > How do these interact? EXPUNGE is operational anytime during pass 1 only. Same for FIXTAB. FIXMRI can always work. Additionally, FIXMRI can create indirect-forced MRI's such as: FIXMRI CALL= JMS I 0 This allows such niceties as: CALL [FOO] and FOO, .-. EXIT FOO Where EXIT is defined with FIXMRI as JMP I 0. > > RELOC -- assemble code into one location that will run in another. > There are a multitude of ways to get this wrong, > particularly when it comes to the effects of > consecutive RELOC pseudoops -- is the effect > cumulative? How does it accumulate? > RELOC is cumulative. RELOC with no argument turns off the feature. Assuming a separate binary and source location counter, RELOC calculates the difference between the argument and the current source location counter and adds that difference to the binary location counter. Thus, consider the following code: *200 RELOC 7600 This should be familiar to anyone who ever looked at an OS/8 system handler. The source location counter is now 7600, yet the binary is still at 0200. This is because the difference of 7400 was added to the binary value so when it was changed to 7600, it was set back to 0200. However, it could have been different from the source location counter at the time due to a *prior* RELOC! (In this simple example it doesn't apply.) >Most of these quirks are of no importance at all for the purposes you and >I envision for the kind of cross assembler I wrote -- downloading simple >little test programs rarely involves any of these! On the other hand, >after I get around to getting my RX01 drives working, I'll be looking for >an operating system. If I have to assemble something like OS8, it'll >likely require full compatability with the above. You bet! > >I have full source listings of a number of 1960's vintage paper-tape >tools for the -8, and I'd like to scan them into machine-readable form >and then try assembling them (this is practical! We tried a test scan >of a few pages of the old 4K Fortran system, and Kurzweil Reading Machine >could indeed read the smudgy old line-printer characters). Again, a >fully compatable assembler is what I need for such a job. > > Doug Jones > jones@cs.uiowa.edu Is that the paper-tape 4K fortran, or the DM one? cjl From wilsonj@alum01.its.rpi.edu Tue May 10 05:57:59 EDT 1994 Article: 828 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news-feed-1.peachnet.edu!news.duke.edu!zombie.ncsc.mil!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!noc.near.net!usenet.elf.com!rpi!wilsonj From: wilsonj@alum01.its.rpi.edu (John Wilson) Newsgroups: alt.sys.pdp8 Subject: Where to get RX8E Date: 9 May 1994 23:29:05 GMT Organization: Rensselaer Polytechnic Institute, Troy NY Lines: 14 Message-ID: <2qmh01$6o@usenet.rpi.edu> References: <2q8b86$7de@nexus.uiowa.edu> <2qlgl0$g3t@bigblue.oit.unc.edu> <9MAY199417524974@siva.bris.ac.uk> <2qmden$oad@bigblue.oit.unc.edu> NNTP-Posting-Host: alum01.its.rpi.edu In article <2qmden$oad@bigblue.oit.unc.edu>, Charles Lasner wrote: >Not a problem. There is an RT-11 program that maintains OS/8 RX01 disks. >But you still need a way to read them on the -8 for boot purposes, so you >need the M8357 card :-(. Hey this won't do, let's turn that :-( into a :-) !!! People always seem to be looking for M8357's without luck, but are you aware that DEC still sells them new? I just ordered one from DECdirect, $118 for order # M8357-00. Not exactly small change, but consider it's from DEC you could do worse... Happy hacking, John Wilson From oddjob@cix.compulink.co.uk Tue May 10 05:58:30 EDT 1994 Article: 829 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news-feed-1.peachnet.edu!news-feed-2.peachnet.edu!emory!swrinde!cs.utexas.edu!howland.reston.ans.net!EU.net!uknet!cix.compulink.co.uk!oddjob From: oddjob@cix.compulink.co.uk ("Stephen Walters") Subject: Re: This silly flamewar Message-ID: Organization: Skills Unlimited References: <2qm3ai$2p2@nexus.uiowa.edu> Date: Tue, 10 May 1994 00:23:19 GMT X-News-Software: Ameol Lines: 8 I have a stack of tapes Magnetic and paper which came the 8. The machine originally came from the National Physical Laboratory...and they had a rather extensive software library... I also have an Intersil machine which has the appearance of a miniture 8, switches and all. Even has battery backed RAM! oddjob@cix.compulink.co.uk From jones@pyrite.cs.uiowa.edu Wed May 11 11:14:07 EDT 1994 Article: 830 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!corpgate!news.utdallas.edu!chpc.utexas.edu!cs.utexas.edu!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: Intersil Date: 10 May 1994 15:52:40 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 13 Distribution: world Message-ID: <2qoak8$4vl@nexus.uiowa.edu> References: NNTP-Posting-Host: pyrite.cs.uiowa.edu >From article , by oddjob@cix.compulink.co.uk ("Stephen Walters"): > I also have an Intersil machine which has the appearance of a miniture 8, > switches and all. Even has battery backed RAM! Great! That makes two surviving Intersil machines. The other one I know of is serial number 1, won by a visitor at the trade show where it was first exhibited. It ran DEC's paper-tape 4K FOCAL, obtained by the owner from a PDP-8/S owner, but I know little more about it. Doug Jones jones@cs.uiowa.edu From jones@pyrite.cs.uiowa.edu Wed May 11 11:14:19 EDT 1994 Article: 831 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!corpgate!news.utdallas.edu!chpc.utexas.edu!cs.utexas.edu!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: Re: Intersil Date: 10 May 1994 16:21:13 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 10 Distribution: world Message-ID: <2qoc9p$5jr@nexus.uiowa.edu> References: <2qoak8$4vl@nexus.uiowa.edu> NNTP-Posting-Host: pyrite.cs.uiowa.edu >From article <2qoak8$4vl@nexus.uiowa.edu>, by jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879): > > Great! That makes two surviving Intersil machines. Great! I goofed in that last posting. Please ignore it! I spaced out and confused Intersil with another maker Doug Jones jones@cs.uiowa.edu From ivie@cc.usu.edu Wed May 11 11:28:00 EDT 1994 Article: 832 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!zombie.ncsc.mil!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!spool.mu.edu!agate!dog.ee.lbl.gov!hellgate.utah.edu!cc.usu.edu!ivie From: ivie@cc.usu.edu Newsgroups: alt.sys.pdp8 Subject: Re: PDP-8's in the schools Message-ID: <1994May10.085821.18652@cc.usu.edu> Date: 10 May 94 08:58:21 MDT References: <2q8b86$7de@nexus.uiowa.edu> <2qcsps$9g5@bigblue.oit.unc.edu> <2qlgl0$g3t@bigblue.oit.unc.edu> <9MAY199417524974@siva.bris.ac.uk> <2qmden$oad@bigblue.oit.unc.edu> Organization: Utah State University Lines: 20 In article <2qmden$oad@bigblue.oit.unc.edu>, lasner@sunSITE.unc.edu (Charles Lasner) writes: > It's possible to write a two-page OS/8 system handler that uses the > serial port as a device assuming a support device on the other end. In > essence, what you have to do is get a copy of OS/8 configured for this > system in image form. Then get it to the server machine of your choice > so it translates disk read and write requests into the 8-bit format the > comm board expects. This is how "WPS-11" worked, which was really a > bunch of VT-78's on an -11 server, etc. For what it's worth, there's a publically available TU58 emulator for Unix. I haven't tried it yet, bet I do have a copy. The TU58, as I'm sure we're all aware, is a small (both physically and block-ally) cartridge tape that communicates over RS232. And since no one's tried to soothe tony's jangled nerves: there, there; we're all in this together, some of us are just a bit more excitable than others... -- ----------------+------------------------------------------------------ Roger Ivie | Don't think of it as a 'new' computer, think of it as ivie@cc.usu.edu | 'obsolete-ready' From johnv@dcs.rhbnc.ac.uk Wed May 11 11:28:36 EDT 1994 Article: 833 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!zombie.ncsc.mil!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!pipex!doc.ic.ac.uk!sun.rhbnc.ac.uk!st5.cs.rhbnc.ac.uk!johnv From: johnv@st5.cs.rhbnc.ac.uk (John E. Veness) Newsgroups: alt.sys.pdp8 Subject: Re: Beginners guide to PDP 8 machine code Date: 10 May 1994 20:04:25 GMT Organization: Royal Holloway, Uni of London Lines: 17 Message-ID: <2qopc9$caf@sun.rhbnc.ac.uk> References: Reply-To: johnv@dcs.rhbnc.ac.uk NNTP-Posting-Host: st5.cs.rhbnc.ac.uk X-Newsreader: TIN [version 1.2 PL2] Stephen Walters (oddjob@cix.compulink.co.uk) wrote: > Beginners guide to PDP 8 machine code > Does this exist.....is there a FAQ for this???? The alt.sys.pdp8 FAQ gives quite a lot of info about the machine code, though you'll probably better off getting DEC's Introduction to Programming, if you cab get it (unlikely!) My PDP-8 simulator project has a nice chapter explaining the PDP-8's instruction set, but I'd better wait until it's been examined b4 releasing it. Pel -- _ John Veness |_)_ | _, _, _ johnv@dcs.rhbnc.ac.uk | (_'|(_|(_|(_) (_) From oddjob@cix.compulink.co.uk Wed May 11 11:28:55 EDT 1994 Article: 834 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!zombie.ncsc.mil!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!pipex!uknet!cix.compulink.co.uk!oddjob From: oddjob@cix.compulink.co.uk ("Stephen Walters") Subject: Anbody got a PDP-8s for disposal? Message-ID: Organization: Skills Unlimited Date: Tue, 10 May 1994 18:41:27 GMT X-News-Software: Ameol Lines: 6 Anbody got a PDP-8s for disposal? I would like one of these. Incidentally, I could not tell from the FAQ, but what model was described as a table-top-8? oddjob@cix.compulink.co.uk From jones@pyrite.cs.uiowa.edu Wed May 11 11:35:27 EDT 1994 Article: 835 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!xanth.cs.odu.edu!news.larc.nasa.gov!lerc.nasa.gov!magnus.acs.ohio-state.edu!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: Assemblers (Was: This silly flamewar) Date: 10 May 1994 21:46:50 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 35 Distribution: world Message-ID: <2qovca$eoq@nexus.uiowa.edu> References: <2qmh5i$10ug@bigblue.oit.unc.edu> NNTP-Posting-Host: pyrite.cs.uiowa.edu >From article <2qmh5i$10ug@bigblue.oit.unc.edu>, by lasner@sunSITE.unc.edu (Charles Lasner): >>Quirks rarely center on the basic instructions (ADD, TAD, etc). > Oh yeah? Try assembling ... Here's a current example of the state of affairs with my little toy cross assembler. It illustrates some of the little nasties you've posted, and I should note that your posting prompted me to fix a few bugs and add support for FIXMRI. 1 01000 0602 * TAD I .+2 / a bug, but is it worth fixing? 2 01001 1377 TAD (TAD I FOO) / I don't doubt the use of this! 3 FIXMRI CALL= JMS I 0 4 FIXMRI RETURN= JMP I 0 / This is indeed useful. 5 01002 4577 CALL [FOO] 6 01003 0000 FOO, .-. 7 01004 5603 RETURN FOO 8 01177 1603 $ 00177 1003 Now, some questions. What should the following do? And, are these funny cases worth worrying about? TAD AND 5 TAD (AND [15]) I'm pretty sure that existing DEC versions of PAL are likely to mess up a bit on some simple variants of the latter: TAD (AND [15+1]-1)+3 Doug Jones jones@cs.uiowa.edu From jones@pyrite.cs.uiowa.edu Wed May 11 11:36:11 EDT 1994 Article: 836 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!xanth.cs.odu.edu!news.larc.nasa.gov!lerc.nasa.gov!magnus.acs.ohio-state.edu!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: Re: Anbody got a PDP-8s for disposal? Date: 10 May 1994 21:55:40 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 20 Distribution: world Message-ID: <2qovss$evr@nexus.uiowa.edu> References: NNTP-Posting-Host: pyrite.cs.uiowa.edu >From article , by oddjob@cix.compulink.co.uk ("Stephen Walters"): > Anbody got a PDP-8s for disposal? You don't want to pay shipping from Iowa, and I don't want to part with mine just yet. > but what model was described as a table-top-8? Probably the original PDP-8. The key is not that it was described as a table-top machine, but rather the lack of a qualifier after the 8. Most of the PDP-8 models came in table-top configurations; certainly, the classic 8 did, and so did the 8/S, the 8/L and the 8/E. I think the 8/I may have, too, but I haven't seen one. The only 8/A configurations I know of are rack-mounted, and after that, they were all essentially table-top machines. Doug Jones jones@cs.uiowa.edu From jdc@math.ohio-state.edu Wed May 11 11:37:11 EDT 1994 Article: 837 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!convex!cs.utexas.edu!math.ohio-state.edu!not-for-mail From: jdc@math.ohio-state.edu (Jim Corder) Newsgroups: alt.sys.pdp8 Subject: Re: Yippee! more PDP-8e owners Date: 11 May 1994 09:11:00 -0400 Organization: Department of Mathematics, The Ohio State University Lines: 27 Message-ID: <2qqlh4$j58@zaphod.mps.ohio-state.edu> References: NNTP-Posting-Host: zaphod.mps.ohio-state.edu In article , Stephen Walters wrote: >I Consider myself quit lucky....I have a PDP 8/e Hello: OK, I have been reading this group for a few months now. I have yet to figure out what I want to do with my PDP 8/e. I have had an 8/e in my basement for about 4 years now. I read the manuals, "to start call your dec rep..." My 8/e is in a 6' tall cabinet. I have two "rko5"? drives, and a dec write ][. Each drive has a single platter disk in it. I have several other platters in boxes. The CPU is on the top with the two drives under it. I wanted the cabinet and also got a free 8/e full of cards and stuff. I have never tried to start it, or even plugged it in. I have had a few offers, but have never parted with it: It looks neat:-) There isn't a paper tape just a lot of toggles. Does anyone know how to start this thing so it uses its drives? How do you hook the "mini-loop" dec writer ][ up?... Thank you, James D. Corder jdc@zaphod.mps.ohio-state.edu From tomk@csd.uu.se Wed May 11 11:37:30 EDT 1994 Article: 838 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!zombie.ncsc.mil!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!EU.net!sunic!columba.udac.uu.se!news.uu.se!tomk From: tomk@csd.uu.se (Tom F Karlsson) Newsgroups: alt.sys.pdp8 Subject: Re: Anbody got a PDP-8s for disposal? Date: 11 May 1994 13:37:58 GMT Organization: CS, University of Uppsala, Sweden Lines: 23 Distribution: world Message-ID: References: <2qovss$evr@nexus.uiowa.edu> NNTP-Posting-Host: kobra.csd.uu.se In-reply-to: jones@pyrite.cs.uiowa.edu's message of 10 May 1994 21:55:40 GMT In article <2qovss$evr@nexus.uiowa.edu> jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) writes: >> but what model was described as a table-top-8? > > Probably the original PDP-8. The key is not that it was > described as a table-top machine, but rather the lack of > a qualifier after the 8. Most of the PDP-8 models came in > table-top configurations; certainly, the classic 8 did, and so > did the 8/S, the 8/L and the 8/E. I think the 8/I may have, > too, but I haven't seen one. The only 8/A configurations I > know of are rack-mounted, and after that, they were all > essentially table-top machines. The 8/I machines I have seen, is rack-mounted and rather large (read: not desk top size...) The CPU box itself is something like 60cm high. /Tom -- | Tom Karlsson email: tomk@csd.uu.se phone: +46 18 260097 | | Student of Computer Science @ Uppsala University, Sweden. | | Secretary of Update. email: tomk@Update.UU.SE | | "Intelligence is to do stupid things in a smart way" | From lasner@sunSITE.unc.edu Wed May 11 11:37:45 EDT 1994 Article: 839 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!sunSITE!lasner From: lasner@sunSITE.unc.edu (Charles Lasner) Newsgroups: alt.sys.pdp8 Subject: Re: Intersil Date: 11 May 1994 15:13:26 GMT Organization: University of North Carolina, Chapel Hill Lines: 56 Message-ID: <2qqsmm$m9n@bigblue.oit.unc.edu> References: <2qoak8$4vl@nexus.uiowa.edu> NNTP-Posting-Host: calzone.oit.unc.edu In article <2qoak8$4vl@nexus.uiowa.edu>, Douglas W. Jones,201H MLH,3193350740,3193382879 wrote: >From article , >by oddjob@cix.compulink.co.uk ("Stephen Walters"): > >> I also have an Intersil machine which has the appearance of a miniture 8, >> switches and all. Even has battery backed RAM! > >Great! That makes two surviving Intersil machines. The other one I know >of is serial number 1, won by a visitor at the trade show where it was >first exhibited. It ran DEC's paper-tape 4K FOCAL, obtained by the owner >from a PDP-8/S owner, but I know little more about it. > > Doug Jones > jones@cs.uiowa.edu No, this is an Intercept I. I have one. I also have a PCM-12. (There was a PCM-12A that fixed something, but I don't have info as to what.) These machines are buss compatible. Intersil was proud of the fact that you could remove modules while it was running. The Intercept stuff that I have is: 3 4K CMOS battery-backed memory modules TTY: interface (supports 110 baud TTY: and reader run on an ASR-33 modified according to DEC standards) RX-type interface to DSD-210 dual RX01-compatible drive (that can format!) Extended memory controller. The PCM-12 has 4K (not CMOS) and a similar TTY: interface. It is a more "packaged" machine and likely can support all of the Intercept stuff to make one 16K machine with dual floppy. The Intercept has limited internal space, but this one has the buss expander which has been rack-mounted, etc. Unlike DEC's VT-78, these 6100-based systems run at full speed (4.0 MHz). The front panel is implemented in CP memory using memory-mapped I/O (such as AC -> LED's is implemented as storing into CP 0000 with a DCA instruction. I imagine you can step the LED as a register by using ISZ 100.). The rate of panel update is controllable by a clock interrupt rate potentiometer which can be disabled for maximum throughput without panel update. (Remember, the original intention of CP memory was for a Control Panel!) Full front panel function switches are provided, just like on an -8/e, but all implemented in CP software, etc. A standard RX boot is built-in, etc. On paper at least, PCM and Intersil did offer a large complement of peripherals, generally mimicking DEC's designs of common program transfer peripherals of the Omnibus. cjl From lasner@sunSITE.unc.edu Wed May 11 11:38:02 EDT 1994 Article: 840 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!sunSITE!lasner From: lasner@sunSITE.unc.edu (Charles Lasner) Newsgroups: alt.sys.pdp8 Subject: Re: PDP-8's in the schools Date: 11 May 1994 15:26:49 GMT Organization: University of North Carolina, Chapel Hill Lines: 51 Message-ID: <2qqtfp$77p@bigblue.oit.unc.edu> References: <2q8b86$7de@nexus.uiowa.edu> <9MAY199417524974@siva.bris.ac.uk> <2qmden$oad@bigblue.oit.unc.edu> <1994May10.085821.18652@cc.usu.edu> NNTP-Posting-Host: calzone.oit.unc.edu In article <1994May10.085821.18652@cc.usu.edu>, wrote: >In article <2qmden$oad@bigblue.oit.unc.edu>, lasner@sunSITE.unc.edu (Charles Lasner) writes: >> It's possible to write a two-page OS/8 system handler that uses the >> serial port as a device assuming a support device on the other end. In >> essence, what you have to do is get a copy of OS/8 configured for this >> system in image form. Then get it to the server machine of your choice >> so it translates disk read and write requests into the 8-bit format the >> comm board expects. This is how "WPS-11" worked, which was really a >> bunch of VT-78's on an -11 server, etc. > >For what it's worth, there's a publically available TU58 emulator for Unix. >I haven't tried it yet, bet I do have a copy. The TU58, as I'm sure we're all >aware, is a small (both physically and block-ally) cartridge tape that >communicates over RS232. This could probably help someone get started on the server end, assuming that's the kind of code they want to use, etc. However, there are a few problems with the specifics of the TU58: 1) Only the KL8E was ever able to send a BREAK character which is a necessary portion of the TU58 protocol. This severely limits its applicability. (The break is possible because the KL8E is unbuffered for output; you can jam stuff into the output register while it's already being outputted, so you can extend the character, etc.) 2) A better protocol should be given that allows the -8 to lag being the data being sent to it. (Of course we expect the server to be responsive to the -8 sending data at it!) This could include some form of acknowledge on every character received by the -8. 3) We don't want to live by the small capacity of the TU58. There is no reason why the server can't support a simulated hard disk structure worthy of MENU-8 partitioning it down to nice chunks for P?S/8 and OS/8 to live under, etc. I am assuming that for some people, this would be their only -8 disk. Of course if it's merely a mechanism to transfer an O/S from, then it can be smaller. However, the TU58 is *real* small! > >And since no one's tried to soothe tony's jangled nerves: there, there; we're >all in this together, some of us are just a bit more excitable than others... I suspect that Tony's made of stronger stuff than that! :-) >-- >----------------+------------------------------------------------------ >Roger Ivie | Don't think of it as a 'new' computer, think of it as >ivie@cc.usu.edu | 'obsolete-ready' cjl From lasner@sunSITE.unc.edu Wed May 11 18:14:45 EDT 1994 Article: 841 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!sunSITE!lasner From: lasner@sunSITE.unc.edu (Charles Lasner) Newsgroups: alt.sys.pdp8 Subject: Re: Assemblers (Was: This silly flamewar) Date: 11 May 1994 22:07:49 GMT Organization: University of North Carolina, Chapel Hill Lines: 262 Message-ID: <2qrkvl$11l9@bigblue.oit.unc.edu> References: <2qmh5i$10ug@bigblue.oit.unc.edu> <2qovca$eoq@nexus.uiowa.edu> NNTP-Posting-Host: calzone.oit.unc.edu In article <2qovca$eoq@nexus.uiowa.edu>, Douglas W. Jones,201H MLH,3193350740,3193382879 wrote: >Here's a current example of the state of affairs with my little toy >cross assembler. It illustrates some of the little nasties you've >posted, and I should note that your posting prompted me to fix a few >bugs and add support for FIXMRI. > > 1 01000 0602 * TAD I .+2 / a bug, but is it worth fixing? > 2 01001 1377 TAD (TAD I FOO) / I don't doubt the use of this! > 3 FIXMRI CALL= JMS I 0 > 4 FIXMRI RETURN= JMP I 0 / This is indeed useful. > 5 01002 4577 CALL [FOO] > 6 01003 0000 FOO, .-. > 7 01004 5603 RETURN FOO > 8 01177 1603 $ > 00177 1003 > >Now, some questions. What should the following do? And, are these funny >cases worth worrying about? > > TAD AND 5 > TAD (AND [15]) > >I'm pretty sure that existing DEC versions of PAL are likely to mess up >a bit on some simple variants of the latter: > > TAD (AND [15+1]-1)+3 > > Doug Jones > jones@cs.uiowa.edu > Well, we'll see about that! OK, I took Doug's code and passed it to both PAL8 and P?S/8 PAL. Here are both listings. Note that page breaks are replaced with "" instead of the actual page form-feeds, etc. (In both assemblers, the output uses LF characters to space the paper down on the console, and uses real FF chars on the LPT:. Neither was useful for posting, etc.) First PAL8: / TEST OF SOME OF DOUG'S QUIRKY EX PAL8-VB0 11-MAY-94 PAGE 1 / TEST OF SOME OF DOUG'S QUIRKY EXAMPLES 1602 * TAD I .+2 /HE SAYS THIS IS A BUG! 001602 1377 TAD (TAD I FOO) /HE KNOWS THIS IS USEFUL / SOME FIXMRI'S WITH THE I BIT SET. 4400 FIXMRI CALL= JMS I 0 /DEFINE CALL MRI 5400 FIXMRI RETURN= JMP I 0 /DEFINE RETURN MRI 001603 4577 CALL [FOO] /CALL A SUBROUTINE /WITHOUT USING JMS 001604 0000 FOO, .-. /SUBROUTINE 001605 5604 RETURN FOO /RETURN TO CALLER IC 001606 1000 TAD AND 5 /LET'S SEE 001607 1376 TAD (AND [15]) /LET'S SEE LG 001610 1774' TAD (AND [15+1]-1)+3 /LET'S SEE 001774 2000 001775 0174 001776 0176 001777 1604 $ /END OF ASM 000175 0016 000176 0015 000177 1604 / TEST OF SOME OF DOUG'S QUIRKY EX PAL8-VB0 14-APR-90 PAGE 2 CALL 4400 FOO 1604 RETURN 5400 ERRORS DETECTED: 2 LINKS GENERATED: 1 Now P?S/8 PAL: / TEST OF SOME OF DOUG'S QUIRKY EXAMPLES P?S PAL V08S WED 11-MAY-94 PAGE 1 / TEST OF SOME OF DOUG'S QUIRKY EXAMPLES *1602 * TAD I .+2 /HE SAYS THIS IS A BUG! 001602 1377 TAD (TAD I FOO) /HE KNOWS THIS IS USEFUL / SOME FIXMRI'S WITH THE I BIT SET. 4400 FIXMRI CALL= JMS I 0 /DEFINE CALL MRI 5400 FIXMRI RETURN= JMP I 0 /DEFINE RETURN MRI 001603 4577 CALL [FOO] /CALL A SUBROUTINE /WITHOUT USING JMS 001604 0000 FOO, .-. /SUBROUTINE 001605 5604 RETURN FOO /RETURN TO CALLER 001606 1005 TAD AND 5 /LET'S SEE 001607 1376 TAD (AND [15]) /LET'S SEE LG 001610 1774' TAD (AND [15+1]-1)+3 /LET'S SEE $ /END OF ASM *1774 001774 2000 001775 0174 001776 0176 001777 1604 *0175 000175 0016 000176 0015 000177 1604 / TEST OF SOME OF DOUG'S QUIRKY EXAMPLES P?S PAL V08S WED 11-MAY-94 PAGE S-1 USER SYMBOL TABLE LISTING CALL =4400M FOO 1604 RETURN=5400M / TEST OF SOME OF DOUG'S QUIRKY EXAMPLES P?S PAL V08S WED 11-MAY-94 PAGE S-2 ASSEMBLY STATISTICS 1 ERROR DETECTED 1 LINK GENERATED 5K MEMORY UTILIZED NO FILES CREATED 3 SYMBOLS Some comments on Doug's tests, and differences between the assemblers themselves: 1) Both assemblers were set to generate links, but flag them as errors. In PAL8, links are unavoidable, but considering them as errors is optional. In P?S/8 PAL, links can be prevented altogether, allowed but flagged as errors, or allowed without being considered errors. 2) In PAL8 you can't get a listing without a symbol table, although you can get a symbol table only by asking for the listing to be deleted. In P?S/8 PAL, a symbol table is optional as is the listing. Thus, PAL8 was invoked without deleting the listing. P?S/8 PAL was invoked with both listing and symbol table options set. 3) No binary files were asked for in either case, so none were created. This doesn't change the output anyway (other than the P?S/8 statistics page). 4) PAL8 couldn't handle the double MRI case. P?S/8 PAL did handle it correctly; the first MRI used the results of the second MRI's scan as its argument. Since P?S/8 PAL pushes down its context for each and every MRI encountered, this isn't surprising. (Both assemblers push the context down during a literal scan.) Since PAL8 doesn't give the character code of the Illegal Character it was complaining about (P?S/8 PAL does!) we can only guess as to exactly where the scan was complained about. (P?S/8 PAL IC messages give the ASCII code of the offending character as well as placing it within the assembly, etc.) 5) P?S/8 PAL has some cosmetic advantages over PAL8. There are sub-titles on all assembler-generated output pages. The header line includes more of the first-line comment to make a wider output line. The header line also includes the day of the week; useful when thumbing through a stack of listings of recent assemblies! The symbol table printout indicates the symbol type as well as the value. Additionally, if the symbol is defined by an equate, an "=" is indicated. MRI-type symbols have an "M" suffix. (Note: it is possible to ask for a complete symbol table dump, which includes permanent symbols. In that case, directives such as OCTAL are listed where the value is the internal address within the assembler and a "D" is the suffix.) There are a lot of hacks on the statistics page. PAL8 cops out and puts the item count last on the line after ":". P?S/8 PAL makes the operative word singular if exactly one, and puts out "NO" if the count is zero. Additionally, the reported memory size is the minimum size rounded up to the nearest 1K that the assembler could have used to assemble this program without overflowing the table. In this particular case, the value is "5K" because the assembler was invoked without the "stingy buffer" option which would make it assemble a whole lot slower but saves memory. In that case, the report would indicate that 4K would be required, etc. Also, the count of fixed binary files created is reported, while PAL8 never tells you if binary happened (you have to know from the command line, not the listing). Whenever an origin is generated (whether by user "*" commands or auto-generated by a literal dump or after a field setting if enabled, etc.) P?S/8 PAL shows it preceded by an "*". PAL8 only shows the octal value on a "*"-generated one, and doesn't output the auto-generated ones at all. Thus, in PAL8 you cannot tell if the auto-origin after field setting is enabled from the listing, only the command. (In both assemblers the auto-origin is an option, etc.) A logistic complaint about PAL8 (solved in P?S/8 PAL): When you are first preparing an assembler source, it's likely that there are a few dozen globally referenced symbols you haven't gotten around to editing in yet. There are probably hundreds of references to them as well. In PAL8, if you attempt an assembly, you thus wind up with hundreds of errors of the form "US FOOBAR+3" which means that you are told *where* (relative to a recent label) an undefined symbol is being attempted, without identifying *what* that symbol actually is! Since you are inundated with these messages, you can either write some of them down and then do an edit and yet another series of two-pass assemblies (the messages only come in pass two; pass one is "silent".) until you get it down to a dull roar, or instead get a very deficient listing that is even more wasteful, and then hand-track all of the references to produce an edit/change that involves adding a few dozen lines (mostly on page zero typically). Either way, you are doing a whole lot of assembly over a relatively small matter, etc. The P?S/8 PAL solution is to use a feature that originates in the original PAL III paper-tape assembler. At the end of pass one (P?S/8 PAL can specify a one-pass assembly) there is a summary printout of all symbols still undefined. The octal value of the symbol is printed out; in this case, this value is the address where the earliest encounter with the then (and now-still !) undefined symbol was found. Thus, instead of wasteful second-passes, listings, additional two-pass assemblies, etc., P?S/8 PAL produces a small report where each undefined symbol takes one line! (This can be directed at the LPT: if desired.) Additionally, should a second-pass assembly cough up some Undefined Symbol errors, the messages look like: US BARFOO AT FOOBAR+3 (0203) Thus, the info is the same as PAL8 in the relative-to-recent-symbol sense, but also is given in absolute form as well. But more importantly, the undefined symbol is *named* ! In any case, looking at Doug's assembler output, I would say he still has a little ways to go to match the -8-written ones. cjl From ard@siva.bris.ac.uk Thu May 12 08:49:02 EDT 1994 Article: 842 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!corpgate!news.utdallas.edu!chpc.utexas.edu!cs.utexas.edu!howland.reston.ans.net!pipex!lyra.csx.cam.ac.uk!warwick!bsmail!siva.bris.ac.uk!ard From: ard@siva.bris.ac.uk (PDP11 Hacker .....) Subject: Re: Yippee! more PDP-8e owners Message-ID: <11MAY199418262489@siva.bris.ac.uk> News-Software: VAX/VMS VNEWS 1.41 Sender: usenet@info.bris.ac.uk (Usenet news owner) Nntp-Posting-Host: siva.bris.ac.uk Organization: University of Bristol Physics Department References: <2qqlh4$j58@zaphod.mps.ohio-state.edu> Date: Wed, 11 May 1994 17:26:00 GMT Lines: 103 In article <2qqlh4$j58@zaphod.mps.ohio-state.edu>, jdc@math.ohio-state.edu (Jim Corder) writes... >In article , > >Hello: Greetings from a fellow PDP8/e owner :-) > > OK, I have been reading this group for a few months now. I have >yet to figure out what I want to do with my PDP 8/e. I have had an 8/e >in my basement for about 4 years now. I read the manuals, "to start call >your dec rep..." What manuals do you have? The manuals that came with my 8/e (The 3-volume maintenance manual) say nothing like that. Instead they land you in the middle of the CPU on about page 5. Mind you, I much prefer manuals like that - I don;t mind having to think a bit, but content-free manuals make me want to give up. Anyway, My recomendation is to get the CPU working first, and then to sort out the drives and terminal systems. > > My 8/e is in a 6' tall cabinet. I have two "rko5"? drives, and That's RK05 (Numeric 0). They're about 2.5Mbytes/pack (I'm not sure about the exact capacity - PDP11's fit 12 sectors (16 bit words) on a track, PDP8's fit 16 sectors (12 bit words) in. Each sector is 256 words (?) and there are about 200 tracks on the disk, and 2 heads. >a dec write ][. Each drive has a single platter disk in it. I have several >other platters in boxes. The CPU is on the top with the two drives under it. Make sure you're using 16 sector packs (17 notches in the hub flange), not the more common 12 sector type. > > I wanted the cabinet and also got a free 8/e full of cards and stuff. I had the revers problem. I wanted the PDP8/e CPU, and had to take the rack and drives with it. Still not collected the drives... > > I have never tried to start it, or even plugged it in. I have had >a few offers, but have never parted with it: It looks neat:-) There isn't >a paper tape just a lot of toggles. You don't need paper tape. You can use the toggle switches to load a bootstrap (if you don't have a boot rom), and run quite happily from the drives. > > Does anyone know how to start this thing so it uses its drives? >How do you hook the "mini-loop" dec writer ][ up?... OK. I really suggest you get the CPU working before you go any further. My sequence would be : 1) Open the CPU box, note down the numbers (Mxxxx, Gxxxx, etc) on the handles of the cards, and post it here. Then I'm sure we can tell you exactly what you have (if you have a boot ROM for instance). 2) Unplug the 2 40-way ribbon cables going to the drives. Also unplug the drives from the power distribution box. 3) Turn on the mains to the CPU. If you are careful, like me, you'll unplug the power connectors from the CPU psu (2 white 6-pin plugs) and check the +5V line at the PSU with a voltmeter. Saves wiping out the entire set of chips if something is wrong. 4) Try loading an address (set the address on the switches) and press Load Address. Check the top row of lights shows the address you entered. 5) Try depositing some data (Enter a suitable (low) starting address. 0 will do nicely. Set the switches to a patern, raise and release deposit. Check the address increments each time. Repeat this a few times. 6) Read back what you just deposited. Load the start address again, an then repeat. You have to put the rotary switch in the right postion - but I forget which. Try MD data for a start. 7) Load a little test program. There's a nice 4-instruction one, which I forget, but I'm sure someone else will remind me, that repeated increments the accumulator. Get that running, and you can watch the accumulator incrementing on the front panel lights. Now, the Decwriter 2 plugs into a serial interface card. You'll probably have at least one M8650 or M8655 in the machine. You'll find a cable connected to it that the DECwriter will plug into (I hope - if not, You'll need the pinouts of both, which means I'll have to start digging). If you have several serial cards, you'll need to find out which is the console (by the settings of the address switches or links), and link the terminal to it. > >Thank you, >James D. Corder -tony Bristol University takes no responsibility for the views expressed in this posting. They are the personal views of the user concerned. From jones@pyrite.cs.uiowa.edu Thu May 12 08:52:40 EDT 1994 Article: 843 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!zombie.ncsc.mil!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: Test programs you can toggle in Date: 11 May 1994 19:24:59 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 135 Distribution: world Message-ID: <2qrbeb$frf@nexus.uiowa.edu> NNTP-Posting-Host: pyrite.cs.uiowa.edu There seems to be a demand for test programs you can toggle in from the front panel to test bare machines, so here are a few: 1 / program to blink the lights in a binary counter sequence 2 3 *0000 4 00000 7200 CLA 5 00001 2005 LOOP, ISZ COUNT /delay for 4K iterations 6 00002 5001 JMP LOOP 7 00003 7001 IAC /increment counter visible on lights 8 00004 5001 JMP LOOP 9 00005 0000 COUNT, 0 There is a simpler program: 1 *0000 2 00000 7001 LOOP, IAC 3 00001 5000 JMP LOOP But the simple program counts so fast that all the bits toggle faster than you can see with the human eye. Single stepping the simple version is a good basic test, but the first, and more complex version slows itself down enough that you can watch the show. 1 / program to blink the lights in a chase light sequence 2 / speed can be adjusted with switch register 3 / suggested initial value on switches = 7770 4 5 *0000 6 00000 7301 CLA CLL IAC /load initial shift pattern (0001) 7 00001 3015 LOOP, DCA SHIFT /set aside while delay is read in 8 00002 7404 OSR 9 00003 3016 DCA COUNT /save switch setting 10 00004 1015 TAD SHIFT /get pattern on lights during delay 11 00005 2017 DELLP, ISZ DELAY /inner loop delays 4K cycles 12 00006 5005 JMP DELLP 13 00007 2016 ISZ COUNT /outer loop delays indicated amount 14 00010 5005 JMP DELLP 15 00011 7104 CLL RAL /spin lights one place left 16 00012 7430 SZL 17 00013 7004 RAL /fixup for lit bit falling off edge 18 00014 5001 JMP LOOP 19 20 00015 0000 SHIFT, .-. /pattern to shift 21 00016 0000 COUNT, .-. /outer loop count 22 00017 0000 DELAY, 0 /inner loop count The following program tests the asynch I/O interface. It ought to work with any PDP-8/E I/O interface (but not older interfaces, since it uses the newfangled KCF and TFL instructions. 1 / program to echo TTY keyboard to printer 2 3 / device codes to merge with IOT instructions 4 INDEV= 0030 / input device address 5 OUTDEV= INDEV+10 / output device address 6 7 / iot definitions 8 KCF= 6000+INDEV / keyboard clear flag 9 KSF= 6001+INDEV / keyboard skip if flag 10 KRB= 6006+INDEV / keyboard input 11 TFL= 6000+OUTDEV / teleprinter set flag 12 TSF= 6001+OUTDEV / teleprinter skip if flag 13 TLS= 6006+OUTDEV / teleprinter output 14 15 / code 16 *0000 17 00000 6040 TFL /setup for TTY output 18 00001 6030 KCF /setup for TTY input 19 00002 6031 LOOP, KSF /await input ready 20 00003 5002 JMP .-1 21 00004 6036 KRB /get character 22 00005 6041 TSF /await output ready 23 00006 5005 JMP .-1 24 00007 6046 TLS /output character 25 00010 5002 JMP LOOP /start over The above is perhaps a bit of overkill, but if you have devices other than 03/04 that you want to test, this can be customized to test them. To make the above program run on any old PDP-8, note that the KCS instruction isn't really needed (the master clear button on the front panel does this). The problem is to get the teleprinter to set its flag so that the first attempt to output will be enabled. The conventional fix is to output a null at the start of the program, so you'd replace lines 17 and 18 of the above with: 17 00000 7200 CLA /spit out a null 18 00001 6046 TLS /to the TTY Finally, once you get a console device working, you can load the RIM loader on your console device and then download code from a support computer that can spit RIM code out its serial output port. (But if your normal I/O device is a TTY, you may need to make a BC01V cable to go from your KL8E interface card to an RS232 plug, and then you may need to add a null modem. Info on those bits appears elsewhere!) Here's a TTY version of the RIM loader, easily customized for whatever asynch port you want to load from. Once you get this toggled into memory, you may never have to toggle in any other code because you can download RIM format object code from your support machine, or download the BIN loader in object form and use it to load the software of your choice: 1 / RIM loader for asynch input 2 3 / Input I/O device code 4 INDEV= 0030 5 6 / IOT instructions used 7 KSF= 6001+INDEV / keyboard skip if flag 8 KCC= 6002+INDEV / clear AC and reader flag 9 KRS= 6004+INDEV / or input with AC 10 KRB= KCC KRS / read input to AC 11 12 *7756 13 07756 6032 BEG, KCC / Initialize reader 14 07757 6031 TTYC, KSF / Await input 15 07760 5357 JMP .-1 16 07761 6036 KRB / Get a character 17 07762 7106 CLL RTL 18 07763 7006 RTL 19 07764 7510 SPA / Skip if high bit of char reset 20 07765 5357 JMP TTYC / Else loop (skipping leader) 21 07766 7006 RTL / AC[0-5] is 6 bit, LINK=bit 7 22 07767 6031 KSF / Await input 23 07770 5367 JMP .-1 24 07771 6034 KRS / Or 6 bit char into AC[6-12] 25 07772 7420 SNL / Skip next if bit 7 of first set 26 07773 3776 DCA I TEMP / Store data 27 07774 3376 HSRC, DCA TEMP / Set address of next data word 28 07775 5356 JMP BEG / Get next data word 29 07776 0000 TEMP, .-. / Address of next data word From prp@ssd.intel.com Thu May 12 08:53:16 EDT 1994 Article: 844 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!zombie.ncsc.mil!MathWorks.Com!news.kei.com!ssd.intel.com!prp From: prp@ssd.intel.com (Paul Pierce) Subject: Re: Anbody got a PDP-8s for disposal? Message-ID: Sender: usenet@SSD.intel.com Nntp-Posting-Host: fuji Organization: Intel References: <2qovss$evr@nexus.uiowa.edu> Date: Thu, 12 May 1994 00:05:27 GMT Lines: 29 In article <2qovss$evr@nexus.uiowa.edu>, jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) writes: |> From article , |> by oddjob@cix.compulink.co.uk ("Stephen Walters"): |> > Anbody got a PDP-8s for disposal? |> |> You don't want to pay shipping from Iowa, and I don't want to |> part with mine just yet. Besides, I will outbid you. And pay shipping. (But hang on to yours as long as you like Doug. I know you won't throw it away. Unfortunately, I recently learned of a local PDP-8 collector who got tired of it and did toss most of his collection. A shame.) Someone else posted in these pages last year (I think) about finding an 8s, but I don't think he will give his up either. Very few were made, I only saw one for sale once, 20 years ago. |> |> > but what model was described as a table-top-8? |> ... I think the 8/I may have, |> too, but I haven't seen one. The '68 Small Computer Handbook shows the 8/I in its rack-mount configuration and in a sleek standalone configuration where it _is_ a table. -- Paul Pierce prp@ssd.intel.com Disclaimer: I don't speak for Intel. From oddjob@cix.compulink.co.uk Thu May 12 08:53:39 EDT 1994 Article: 845 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!solaris.cc.vt.edu!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!EU.net!uknet!cix.compulink.co.uk!oddjob From: oddjob@cix.compulink.co.uk ("Stephen Walters") Subject: RE: Test programs you can toggle in Message-ID: Organization: Skills Unlimited References: <2qrbeb$frf@nexus.uiowa.edu> Date: Thu, 12 May 1994 07:08:06 GMT X-News-Software: Ameol Lines: 7 MORE! MORE! Bravo! Can someone take me through the steps of entering these programs? oddjob@cix.compulink.co.uk From jones@pyrite.cs.uiowa.edu Thu May 12 23:51:26 EDT 1994 Article: 846 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!zombie.ncsc.mil!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: Re: RE: Test programs you can toggle in Date: 12 May 1994 14:04:15 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 54 Distribution: world Message-ID: <2qtd0v$dep@nexus.uiowa.edu> References: NNTP-Posting-Host: pyrite.cs.uiowa.edu >From article , by oddjob@cix.compulink.co.uk ("Stephen Walters"): > > Can someone take me through the steps of entering these programs? OK. Here's the core of one little program: 4 00000 7200 CLA 5 00001 2005 LOOP, ISZ COUNT 6 00002 5001 JMP LOOP 7 00003 7001 IAC 8 00004 5001 JMP LOOP 9 00005 0000 COUNT, 0 To load this, do the following: 00000 - put this on the switches, then press LOAD ADDR 7200 - put this on the switches, then lift DEP 2005 - put this on the switches, then lift DEP 5001 - put this on the switches, then lift DEP 7001 - put this on the switches, then lift DEP 5001 - put this on the switches, then lift DEP 0000 - put this on the switches, then lift DEP All numbers are in octal, and you've got to convert them to binary to load them on the switches. Switch handle up means on, down means off. While you are loading, the address lights show the address you are about to load into, and once you've loaded a value, the MEM DATA dislay shows the most recently loaded value (what is displayed is controlled by a rotary switch on the 8/E and 8/F). Now, if you didn't make mistakes, your program is in memory. You can run it as follows: 00000 - put this on the switches, then press LOAD ADDR - make sure the HALT switch is in the up position. - then press CLEAR, then press CONT. The program increments the accumulator, so you'll get your best display of its operation by rotating the data display switch so it displays the accumulator. You can inspect memory by: 00000 - put this on the switches, then press LOAD ADDR - press EXAM Each time you press EXAM, the MEM DATA display shows the most recently examined memory location and the address lights show the next address, the address you can inspect by pressing EXAM again. Hope this helps! Doug Jones jones@cs.uiowa.edu From jones@pyrite.cs.uiowa.edu Thu May 12 23:52:33 EDT 1994 Article: 847 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!inxs.concert.net!taco.cc.ncsu.edu!lll-winken.llnl.gov!koriel!cs.utexas.edu!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: Re: Anbody got a PDP-8s for disposal? Date: 12 May 1994 13:49:37 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 18 Distribution: world Message-ID: <2qtc5h$d3p@nexus.uiowa.edu> References: NNTP-Posting-Host: pyrite.cs.uiowa.edu >From article , by prp@ssd.intel.com (Paul Pierce): > > Someone else posted in these pages last year (I think) about finding an > 8s, but I don't think he will give his up either. Very few were made, I > only saw one for sale once, 20 years ago. The sales figures reported in Computers and Automation give the total production run as 1024 (why an exact power of two?). In comparison, the PDP-8/I run was listed as 3698 and the PDP-8/L run was listed as 3902. That makes 8/S systems rare, but not that rare. There were only 1440 straight 8 systems made, and only 142 LINC-8 systems. The difficulty of finding 8/S systems may be related to the fact that most of them were embedded systems and to the fact that they were inexpensive and slow, and therefore easy to throw out. Doug Jones jones@cs.uiowa.edu From bqt@Krille.Update.UU.SE Fri May 13 00:09:37 EDT 1994 Article: 848 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!corpgate!news.utdallas.edu!chpc.utexas.edu!cs.utexas.edu!howland.reston.ans.net!EU.net!sunic!columba.udac.uu.se!Krille.Update.UU.SE!Krille.Update.UU.SE!not-for-mail From: bqt@Krille.Update.UU.SE (Johnny Billquist) Newsgroups: alt.sys.pdp8 Subject: Re: Test programs you can toggle in Date: 12 May 1994 23:00:59 +0200 Organization: Update Computer Club Lines: 92 Message-ID: <2qu5ep$t50@Krille.Update.UU.SE> References: <2qrbeb$frf@nexus.uiowa.edu> NNTP-Posting-Host: krille.update.uu.se In oddjob@cix.compulink.co.uk ("Stephen Walters") writes: >MORE! MORE! >Bravo! >Can someone take me through the steps of entering these programs? Someone just did, which I noticed. I shall give a few comments here anyway, on the subject of small test programs to fire up your machine. First, don't put your small programs at address 0. Your program very quickly gets to address 10, which sometimes, depending on what your program does, might give you weird results. As a rule, use 200-377 for small programs on the front panel. This means you have page zero if you want to do something special fancy as well, and 200-377 is just as easy as address 0-177. Then, for small test programs: The increment AC test is a very good starter, no comments about that one. The test I usually do after the AC test is TTY output test, and this one can be much shorter than the one posted. 00200 7001 00201 6046 00202 6041 00203 5202 00204 5200 This will output all characters to the console, it's easy to insert from the front panel, and easy to single step, if you want to. The next test after that is just an extension. Read from the console, and echo it. 00200 6031 00201 5200 00202 6036 00203 6046 00204 6041 00205 5204 00206 5200 You can also check the last character entered by looking at the AC on the front. These both programs should work with both modern and older types of interfaces, at all speeds, and at all machines. (cjl will correct me if I'm wrong) While they arguably are not optimal, they are minimal, which I think is of more concern in these cases, and also, they don't do any fancy, hardware dependant stuff at all. For you who don't write pdp8 code from head, and know the whole instruction set by heart, you can disassembly these short programs. I always find it fun to look at binaries... One last program, then... This one shows in the AC the current settings of the switch register... 00200 7604 00201 5200 One more thing about programming from the front panel on the 8/e and alike (this don't apply to the 8/i atleast). If you enter something into memory, and it's wrong, you must reload the address, since the address is always incremented after each deposit. It's also always incremented after each examine, so if you are checking your code, and find an error, you need to backup one address before depositing the correction. If you are familiar with operating an pdp-11 front panel, you will tend to do things wrong. :-) Happy hacking! Johnny -- Johnny Billquist || "I'm on a bus CS student at Uppsala University || on a psychedelic trip email: bqt@minsk.docs.uu.se || Reading murder books pdp is alive! || tryin' to stay hip" - B. Idol From lasner@sunSITE.unc.edu Fri May 13 00:10:04 EDT 1994 Article: 849 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!sunSITE!lasner From: lasner@sunSITE.unc.edu (Charles Lasner) Newsgroups: alt.sys.pdp8 Subject: Re: Test programs you can toggle in Date: 13 May 1994 04:08:53 GMT Organization: University of North Carolina, Chapel Hill Lines: 71 Message-ID: <2quugl$tvl@bigblue.oit.unc.edu> References: <2qrbeb$frf@nexus.uiowa.edu> <2qu5ep$t50@krille.update.uu.se> NNTP-Posting-Host: calzone.oit.unc.edu In article <2qu5ep$t50@krille.update.uu.se>, Johnny Billquist wrote: >The next test after that is just an extension. Read from the >console, and echo it. >00200 6031 >00201 5200 >00202 6036 >00203 6046 >00204 6041 >00205 5204 >00206 5200 >You can also check the last character entered by looking at the AC >on the front. >These both programs should work with both modern and older types >of interfaces, at all speeds, and at all machines. (cjl will >correct me if I'm wrong) No code problems per se. However, if the console is a VT-100 or some other terminal that really needs ^S/^Q support, the output may not really be useful. Also, it will output a strange escape sequence (and also a CSI string) which could screw up some similar consoles, etc. Best to use a slow vanilla terminal so the output makes sense as an ASCII spiral, etc. >One more thing about programming from the front panel on the 8/e >and alike (this don't apply to the 8/i atleast). >If you enter something into memory, and it's wrong, you >must reload the address, since the address is always incremented >after each deposit. It's also always incremented after each examine, >so if you are checking your code, and find an error, you need >to backup one address before depositing the correction. Try a PDP-12 console. You use Fill and Fill Step or Exam and Exam Step to advance through memory perhaps filling. If you want to change a location, just use Fill and keep going with Exam Step. Thus, only if you commit to Fill Step is it advanced. Of course you're right on an -8/e-type panel, where it's also confusing to see the address of anything going through the same lights. Sometimes it's the updated address of the program counter telling you the next location that will be fetched subsequently, and at other times it's the address of the operand data (or pointer if an indirect). At least on the older panels the address displays are separate. Another tip about test programs. Use the MQ if you have one. On the -8/e it's standard. Also, remember that the MQ .OR.'s with the AC when reading it back into the AC with MQA. Since you can pre-clear the AC, it effectively becomes a load, but perhaps the OR is useful. Regardless, it makes a useful set of lights to store data in little programs. And don't forget the MQ debugging null job. In an interrupt-driven system where EAE isn't really used, use the MQ to display the contents of the address specified on the switches: LOOP, LAS /GET THE SWITCHES DCA 0 /STASH AS POINTER TAD I 0 /GET THE CONTENTS MQL /DISPLAY IN MQ LIGHTS JMP LOOP /KEEP GOING And speaking of lights, there is the LINC-8, the best of them all. As long as the LINC or tape isn't running, you can display anything in all of those lights of the LINC A and B registers, program counter, and to a limited extent the C register, not to mention the relays, and a whole lot of loose bits on the simulated LINC front panel. A light-chaser's delight! cjl (in honor of the Stand: M-O-O-N spells PDP-8) From ivie@cc.usu.edu Sat May 14 08:08:00 EDT 1994 Article: 850 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!solaris.cc.vt.edu!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!agate!dog.ee.lbl.gov!hellgate.utah.edu!cc.usu.edu!ivie From: ivie@cc.usu.edu Newsgroups: alt.sys.pdp8 Subject: Re: Test programs you can toggle in Message-ID: <1994May13.134021.19111@cc.usu.edu> Date: 13 May 94 13:40:21 MDT References: <2qrbeb$frf@nexus.uiowa.edu> <2qu5ep$t50@krille.update.uu.se> <2quugl$tvl@bigblue.oit.unc.edu> Organization: Utah State University Lines: 15 In article <2quugl$tvl@bigblue.oit.unc.edu>, lasner@sunSITE.unc.edu (Charles Lasner) writes: > Of course you're right on an -8/e-type panel, where it's also confusing > to see the address of anything going through the same lights. Sometimes > it's the updated address of the program counter telling you the next > location that will be fetched subsequently, and at other times it's the > address of the operand data (or pointer if an indirect). At least on the > older panels the address displays are separate. Could be worse. I imagine the PDP-5 spent about half its time displaying the address of the PC; you know, zeros. Haven't used one, though, so I'm just imagining; I'd appreciate it if any PDP-5 users out there can pipe up. -- ----------------+------------------------------------------------------ Roger Ivie | Don't think of it as a 'new' computer, think of it as ivie@cc.usu.edu | 'obsolete-ready' From bgrant@umcc.umcc.umich.edu Sat May 14 08:08:34 EDT 1994 Article: 851 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news-feed-1.peachnet.edu!emory!swrinde!cs.utexas.edu!howland.reston.ans.net!europa.eng.gtefsd.com!newsxfer.itd.umich.edu!montego!not-for-mail From: bgrant@umcc.umcc.umich.edu (Bruce Grant) Newsgroups: alt.sys.pdp8 Subject: PDP-8 Front Panel Date: 14 May 1994 01:08:37 -0400 Organization: UMCC, Ann Arbor, MI, USA Lines: 29 Distribution: usa Message-ID: <2r1mcl$7l9@umcc.umcc.umich.edu> NNTP-Posting-Host: umcc.umcc.umich.edu I recently saw a (kinda fuzzy) photo of a PDP-8 front panel, where a few of the labels were not readable. I'd appreciate it if someone familiar with the PDP-8 could answer a couple of questions about it: 1) What do the 8 switches in the lower right do? Labels appear to be Start Load ? ? Cont Stop Sing. ? ? Step ? 2) There appears to be a column of lights on the right edge of the panel labeled: FETCH EXECUTE ? BREAK ? PAUSE RUN What are the missing labels? 3) What do the 'Data field' and 'Inst field' lights and switches refer to? Thanks, Bruce Grant (bgrant@umcc.ais.org) From Kevin@kmurrell.demon.co.uk Sun May 15 11:19:40 EDT 1994 Article: 852 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 From: Kevin@kmurrell.demon.co.uk (Kevin Murrell) Path: bigblue.oit.unc.edu!concert!news.duke.edu!convex!cs.utexas.edu!howland.reston.ans.net!pipex!demon!kmurrell.demon.co.uk!Kevin Subject: DECmate III Organization: Home Reply-To: Kevin@kmurrell.demon.co.uk X-Newsreader: Demon Internet Simple News v1.27 Lines: 17 Date: Sun, 15 May 1994 09:53:48 +0000 Message-ID: <768995628snz@kmurrell.demon.co.uk> Sender: usenet@demon.co.uk I have just been given a DECmate III. While I realise what the DECmate is internally, I am not sure if I can make any use of it. On power-on it displays the DECMATE logo. On inserting a blank RX50 disc it displays a disk logo. Does the machine have a basic monitor in firmware? Is there a set of keystroke to access this? Unfortunately the machine didn't arrive with any manuals or discs! I would like to use the machine as a PDP8 development tool. (Bit more convenient than working in the garage on the big one!) ---------------------------------------------------------------------------- Kevin Murrell Sutton Coldfield Birmingham ---------------------------------------------------------------------------- From jcook@epochsys.UUCP Wed May 18 13:23:18 EDT 1994 Article: 853 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news-feed-2.peachnet.edu!gatech!howland.reston.ans.net!spool.mu.edu!cass.ma02.bull.com!think.com!spdcc!merk!epochsys!jcook From: jcook@epochsys.UUCP (Jim Cook) Newsgroups: alt.sys.pdp8 Subject: Re: PDP-8's in the schools Summary: but what high school? Message-ID: <3340@epochsys.UUCP> Date: 15 May 94 17:39:06 GMT References: <2qcsps$9g5@bigblue.oit.unc.edu> <2qdmtm$kqq@nexus.uiowa.edu> Organization: Epoch Systems, Westboro MA Lines: 20 In article , prc@world.std.com (Peter R Cook) writes: > > When I was in high school it was a PDP-8 with the early > version of star trek on it that got me hooked. After that > I took BASIC, then off to college for a BSCS. Tell us where you went to school! I've seen a few of these messages before and they always leave me wondering whether the individuals posting them used the same systems. When I was in high school, I worked at a non-profit org. called "Project Local", located in Westwood High School (Westwood, Mass.). It ran the PDP-8's for a number of towns, including Westwood, Dedham, Needham, Natick, Arlington, Wellesley, Lexington, and maybe Framingham. Some of this was via leased phone lines to a central facility, while others had their own machine. Jim Cook Class of '75 From david.razler@compudata.com Wed May 18 13:24:52 EDT 1994 Article: 854 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Subject: Re: Anbody got a PDP-8s From: david.razler@compudata.com (David Razler) Path: bigblue.oit.unc.edu!concert!news-feed-2.peachnet.edu!gatech!howland.reston.ans.net!pipex!sunic!EU.net!uunet!cmpudata!david.razler Distribution: world Message-ID: <12a.118.2370.0N3E1D68@compudata.com> Date: Sun, 15 May 94 16:30:00 -0500 Organization: -=- Compu-Data * Turnersville, NJ -=- Lines: 34 DW> You don't want to pay shipping from Iowa, and I don't want to DW> part with mine just yet. > but what model was described as a table-top-8? DW> Probably the original PDP-8. The key is not that it was DW> described as a table-top machine, but rather the lack of DW> a qualifier after the 8. Most of the PDP-8 models came in DW> table-top configurations; certainly, the classic 8 did, and so DW> did the 8/S, the 8/L and the 8/E. I think the 8/I may have, DW> too, but I haven't seen one. The only 8/A configurations I DW> know of are rack-mounted, and after that, they were all DW> essentiially desktop machines.... Doug: The 8-I was never offered as a tabletop model because of the way it was housed (see Computer Engineering/ a DEC view of system design) At least when I say tabletop 8 I'm referring to the first 8, the first full-fledged computer that could sit on a desk and supply someone with a relatively decent amount of relatively inexpensive computer power. I'm still hoping to finish getting all the material I need to reconstruct a PDP-8/stroke nought desktop frame. Right now all is rather precariously balanced while I gather prints for the base, walnut panels, and plastic wrap-arounds covering and directing cooling to the modules. dmr [david.razler@compudata.com] [david.razler@compudata.com] --- * WaveRdr 1.0 [NR] * UNREGISTERED EVALUATION COP From :jones@pyrite.cs.uiowa.edu Wed May 18 13:25:38 EDT 1994 Article: 855 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Subject: Intersil From: :jones@pyrite.cs.uiowa.edu Path: bigblue.oit.unc.edu!concert!news-feed-1.peachnet.edu!news.duke.edu!eff!usenet.ins.cwru.edu!agate!doc.ic.ac.uk!uknet!pipex!sunic!EU.net!uunet!cmpudata! :jones Distribution: world Message-ID: <12a.119.2370.0N3E1D69@pyrite.cs.uiowa.edu> Date: Sun, 15 May 94 16:30:00 -0500 Organization: -=- Compu-Data * Turnersville, NJ -=- Lines: 28 DW>DW>Message-ID: <2qoak8$4vl@nexus.uiowa.edu> DW>Newsgroups: alt.sys.pdp8 DW>Organization: University of Iowa, Iowa City, IA, USA DW>From article , DW>by oddjob@cix.compulink.co.uk ("Stephen Walters"): > I also have an Intersil machine which has the appearance of a miniture > switches and all. Even has battery backed RAM! DW>Great! That makes two surviving Intersil machines. The other one I kno DW>of is serial number 1, won by a visitor at the trade show where it was DW>first exhibited. It ran DEC's paper-tape 4K FOCAL, obtained by the owne DW>from a PDP-8/S owner, but I know little more about it. DW> Doug Jones Doug: Never got one, but I DO have a spare 6102 chip, or whatever they called the impossible-to-get EAE/memory chip for their single-chip 8. Will trade to anyone for info on Intersil machine AND a, think it was a 6100, PDP-8 CPU chip. dmr [david.razler@compudata.com] [david.razler@compudata.com] --- * WaveRdr 1.0 [NR] * UNREGISTERED EVALUATION COP From prep@yarrow.wt.uwa.edu.au Wed May 18 13:26:09 EDT 1994 Article: 856 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!convex!cs.utexas.edu!howland.reston.ans.net!agate!msuinfo!harbinger.cc.monash.edu.au!news.uwa.edu.au!news.uwa.edu.au!prep From: prep@yarrow.wt.uwa.edu.au (Paul Repacholi) Newsgroups: alt.sys.pdp8 Subject: Main Menu disks needed for DMIII+ Date: 16 May 1994 14:42:03 GMT Organization: The University of Western Australia Lines: 14 Message-ID: NNTP-Posting-Host: yarrow.wt.uwa.edu.au Ive just got a new disk for a III+, and have formated it and can run off a boot floppy, but I don't have a copy of "Master Menu" to get the toad bootable. Can anyone out there help? -- ~Paul +61 (09) 257-1001 prep@yarrow.wt.uwa.edu.au ( preferred ) 1 Crescent Rd, zrepachol@cc.curtin.edu.au Kalamunda, West Aust 6076 From tomk@csd.uu.se Wed May 18 13:26:57 EDT 1994 Article: 857 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!convex!cnn.exu.ericsson.se!ericom!eua.ericsson.se!sunic!columba.udac.uu.se!news.uu.se!tomk From: tomk@csd.uu.se (Tom F Karlsson) Newsgroups: alt.sys.pdp8 Subject: Re: PDP-8 Front Panel Date: 16 May 1994 10:35:01 GMT Organization: CS, University of Uppsala, Sweden Lines: 56 Distribution: usa Message-ID: References: <2r1mcl$7l9@umcc.umcc.umich.edu> NNTP-Posting-Host: hp13.csd.uu.se In-reply-to: bgrant@umcc.umcc.umich.edu's message of 14 May 1994 01:08:37 -0400 In article <2r1mcl$7l9@umcc.umcc.umich.edu> bgrant@umcc.umcc.umich.edu (Bruce Grant) writes: > 1) What do the 8 switches in the lower right do? Labels appear to be > > Start Load ? ? Cont Stop Sing. ? > ? Step ? Must be the panel of the original PDP-8. (is it a jpg picture, posted a while ago on the net ?) The switches are: Start Load Deposit Examine Continue Stop Single Single Address Step Instruction > 2) There appears to be a column of lights on the right edge of the > panel labeled: FETCH EXECUTE DEFER <- but this one I'm not sure about. BREAK ON PAUSE RUN The only picture I have (besides the small ones in div. user handbooks) is the jpg picture. Even after reanalysing the picture, editing colors and such, it was hard to see.. Hopefully we have someone out there with a real machine who can tell us ? > 3) What do the 'Data field' and 'Inst field' lights and switches refer to? >From the PDP-8/L handbook: DATA FIELD SWITCH The DF switch serves as an extension of the SR to load the DF by means of the LOAD ADDRESS key. The DF determines the core memory field of data storage and retrieval. INST FIELD SWITCH The IF switch serves as an extension of the SR to load the IF by means of the LOAD ADDRESS key. The IF determines the core memory field from which instructions are to be taken. Sounds perhaps a little bit confusing :-) /Tom -- | Tom Karlsson email: tomk@csd.uu.se phone: +46 18 260097 | | Student of Computer Science @ Uppsala University, Sweden. | | Secretary of Update. email: tomk@Update.UU.SE | | "Intelligence is to do stupid things in a smart way" | From :bgrant@umcc.umcc.umich.edu Wed May 18 20:04:42 EDT 1994 Article: 858 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Subject: PDP-8 Front Panel From: :bgrant@umcc.umcc.umich.edu Path: bigblue.oit.unc.edu!concert!news-feed-2.peachnet.edu!emory!swrinde!cs.utexas.edu!howland.reston.ans.net!pipex!uknet!EU.net!uunet!cmpudata! :bgrant Distribution: world Message-ID: <12a.123.2370.0N3E1DBB@umcc.umcc.umich.edu> Date: Tue, 17 May 94 02:51:00 -0500 Organization: -=- Compu-Data * Turnersville, NJ -=- Lines: 58 BG>Message-ID: <2r1mcl$7l9@umcc.umcc.umich.edu> BG>Newsgroups: alt.sys.pdp8 BG>Organization: UMCC, Ann Arbor, MI, USA BG>I recently saw a (kinda fuzzy) photo of a PDP-8 front panel, where a few BG>of the labels were not readable. I'd appreciate it if someone familiar BG>with the PDP-8 could answer a couple of questions about it: ANSWERED! BG> What do the 8 switches in the lower right do? Labels ARE BG> Start Load Deposit Examine Continue Stop Sing(le). BG> | address / \ | Step | | (SR in memory) from stop | | | value add. content Execute 1 instru. (program (in SR to at address Prog. Countr)[Switch Register is 12 swchs to left] in Switch [cheapest way to input one instruct'n] Register) [or datum at a time] BG>2) There appears to be a column of lights on the right edge of the BG> panel labeled:[with the major machine states] BG> / FETCH content of address BG> MAJOR EXECUTE that instruction BG> STATES DEFER to Extended Arith. Element option BG> \ BREAK stop then do it again BG> ION [interrupt enable flip/flop on] BG> PAUSE [temp. delay] BG> RUN [what it should be doing] BG>3) What do the 'Data field' and 'Inst field' lights and switches refer SETS PAGE IN CORE FOR DATA AND INSTRUCTIONS REMEMBER, THE BASIC MACHINE IS 4K IN 1K PAGES! Bruce: I hope this clears things up a little. The idea was you could run the machine entirely from hand-assembled programs inputted to front panel, and when the machine died, go to a specific location in memory (and by looking at the accumulator and instruction register) to try to debug the thing. In fact, until the later 8 machines (and the price of ROM falling) you had to toggle in a short loader program to read the rest of the loader (paper) tape that would then let you run a one-shot app like the MIT chess program which needed every bit of the machine to make it work or a primitive OS that could handle 128K DECTapes, 32K hard disks (18" wide, x 1/2" thick) and later 128K hard drives in the same size factor and weight. dmr [david.razler@compudata.com] 000 001 010 011 100 101 110 111 [david.razler@compudata.com] --- * WaveRdr 1.0 [NR] * UNREGISTERED EVALUATION COP From david.razler@compudata.com Wed May 18 20:07:13 EDT 1994 Article: 859 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Subject: CT:Re: Test programs you can toggle in From: david.razler@compudata.com (David Razler) Path: bigblue.oit.unc.edu!concert!news-feed-2.peachnet.edu!emory!swrinde!cs.utexas.edu!howland.reston.ans.net!pipex!uknet!EU.net!uunet!cmpudata!david.razler Distribution: world Message-ID: <12a.124.2370.0N3E1DBC@compudata.com> Date: Tue, 17 May 94 02:51:00 -0500 Organization: -=- Compu-Data * Turnersville, NJ -=- Lines: 32 i >Message-ID: <1994May13.134021.19111@cc.usu.edu> i >Newsgroups: alt.sys.pdp8 i >Organization: Utah State University i >In article <2quugl$tvl@bigblue.oit.unc.edu>, lasner@sunSITE.unc.edu i >(Charles i >Lasner) writes: > Of course you're right on an -8/e-type panel, where it's also confusin > to see the address of anything going through the same lights. Sometim > it's the updated address of the program counter telling you the next > location that will be fetched subsequently, and at other times it's th > address of the operand data (or pointer if an indirect). At least on > older panels the address displays are separate. i >Could be worse. I imagine the PDP-5 spent about half its time displaying i >address of the PC; you know, zeros. Haven't used one, though, so I'm jus i >imagining; I'd appreciate it if any PDP-5 users out there can pipe up. Never used one - the one I was supposed to get from Brooklyn Poly was gutted a week before I got there. Arithmetic Logic Unit went to the Computer Museum, the 1K core block is sitting next to me right now. The 3 micorsecond core was so slow that the machine had plenty of time to turn the lights on and off. dmr [david.razler@compudata.com] --- * WaveRdr 1.0 [NR] * UNREGISTERED EVALUATION COP From geremin@decus.org.au Thu May 19 11:33:55 EDT 1994 Article: 860 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news-feed-1.peachnet.edu!gatech!howland.reston.ans.net!pipex!uknet!EU.net!uunet!munnari.oz.au!ariel.ucs.unimelb.EDU.AU!ucsvc.ucs.unimelb.edu.au!decus!geremin Newsgroups: decus.nop,alt.sys.pdp8 Subject: Re: Main Menu disks needed for DMIII+ Message-ID: <1994May18.220756.14909@decus.org.au> From: geremin@decus.org.au Date: 18 May 94 22:07:56 AEST References: Organization: DECUS, South Pacific Chapter Lines: 39 In article , prep@yarrow.wt.uwa.edu.au (Paul Repacholi) writes: > > Ive just got a new disk for a III+, and have formated it and > can run off a boot floppy, but I don't have a copy of "Master > Menu" to get the toad bootable. > > Can anyone out there help? > > -- > ~Paul Hello Paul, General reply for all DECUS members. 1. I guess you read in DECUSnews Vol.15, Issue 2 that there is a new Library Program for the DECmate II or III, ie DM0114, WPS v2.3, but from the description it is for the RX50 based systems. 2. The local DECUS Australia NOP SIG runs an extensive Library of mature software for mature hardware. We are trying to gather all of the available software (with all versions) for all the DEC desktop computers. We also need non-DEC software to fill in the gaps in the collection. 3. Now that DECUS SIG Librarians are no longer official positions, I am not sure whether you should approach the DECUS Aust. Library Management Committee or go directly to the SIG concerned, but if all else fails then send some e-mail specifying which version of 'master menu' you need and we should be able to send you replacement floppies for the 'local-copying-fee' of $15 per RX50. Unfortunately I don't know the price of the DM0114 package from the DECUS Library. NB. Proper acknowlegement to appropriate copyright holders. -- Regards, John G. (alias 'megaJOHN') v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v John Geremin, HARDWARE SIG Chairman, DECUS Australia. IN%"geremin@decus.com.au" voice: 61-2- 764 4855 (9am-9pm) -^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^- From lasner@sunSITE.unc.edu Thu May 19 11:34:51 EDT 1994 Article: 861 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!sunSITE!lasner From: lasner@sunSITE.unc.edu (Charles Lasner) Newsgroups: alt.sys.pdp8 Subject: Distribution of RX50 images on sunsite Date: 19 May 1994 15:29:18 GMT Organization: University of North Carolina, Chapel Hill Lines: 71 Message-ID: <2rg0ke$neq@bigblue.oit.unc.edu> NNTP-Posting-Host: calzone.oit.unc.edu In case no one's looked for awhile, the PDP-8/DECmate archive on sunsite is growing. Several categories have been expanded while others have been fleshed out. Of particular interest is the conclusion of archiving the back pages of pdp8-lovers, now available completely from inception in 1989 through the end of last month. File organization is the same as the a.s.p archives, i.e., by month. For example, last month's archive is 9404.lov, etc. By popular demand, I am starting up an RX50 diskette image section in the directory ....../pdp-8/images/rx50. Three different formats are contemplated: 1) ENCODE format images that require OS/278 to be enhanced with the P?S/8 byte-mode RX50 non-system handler. This will be implemented when the handler is completed. Once done, this will allow DECmate users to manage RX50 diskettes without the help of PC's. The current restriction of OS/278 itself causes the ENCODE program to be limited to handling images of the directory and data area of OS/278 diskettes only. The slushware tracks cannot be copied, nor can any part of any other diskette where byte mode copy is required. Using the P?S/8 byte-mode handler, any RX50 diskette can be ENCODEd completely, etc. 2) WIMAGE format images that require a forthcoming modification to the PD program WIMAGE which is in turn distributed with FDFORMAT Version 1.8. The current version can only manage MS-DOS-worthy diskettes. The enhanced version will support command line options to specify the physical format as RX50 regardless of content, etc. Once updated, the WIMAGE program itself will be added to the archive. 3) TELEDISK format images that are compatible with the last shareware version of TELEDISK (Version 2.12). Note that there are some potential problems with TELEDISK although it generally works and is widely available. It is highly recommended that any .TD0 file be validated with the TDCHECK program. I need some feedback regarding the exact format of TELEDISK files. These files come in two distinct flavors: a nearly uncompressed version and a highly compressed version. The compressed version would seem to be the best to use for an archive, but there are problems: 1) Some people have observed bugs in TELEDISK when creating compressed files. TDCHECK confirms that the files are defective. Turning off the compression makes a longer but viable file. The vendor of the program admits to the bug, but newer versions of the program aren't shareware and require a commercial license fee. Moreover, the vendor hasn't even made a committment to fixing the bugs, i.e., there are commercial versions also known to have problems, etc. 2) When using a compressed file, TELEDISK runs a lot slower. It is faster, and perhaps produces a smaller archive file to use something like PKZIP to compress an uncompressed file. In any case, using the uncompressed .TD0 file allows TELEDISK to run much faster. It's not reasonable to archive uncompressed image files on sunsite, thus we have to either use the compressed format where possible, or specify an archive format such as PKZIP to wrap the files in, etc. And in the case of PKZIP we also have to specify which version as some people may not be able to run the latest PKZIP (Version 2.04g a/o this writing). (Note: TELEDISK files are earmarked for PC usage already! Thus, a compelling case can be made for using PKZIP 2.04g anyway!) Once these file format decisions are made, the files themselves will start appearing on sunsite. All categories of systems will be covered, but please note that some software requires optional DECmate hardware. So, please indicate your choice of file format. I will start stuffing files probably within a week. cjl From jones@pyrite.cs.uiowa.edu Fri May 20 10:45:17 EDT 1994 Article: 862 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!xanth.cs.odu.edu!news.larc.nasa.gov!lerc.nasa.gov!magnus.acs.ohio-state.edu!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: DECmates for sale Date: 18 May 1994 14:38:53 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 27 Distribution: world Message-ID: <2rd99t$p6q@nexus.uiowa.edu> References: <2rd1aq$1k8@s.ms.uky.edu> NNTP-Posting-Host: pyrite.cs.uiowa.edu Here's a note I saw posted on alt.folklore.computers that ought to be posted here (I've deleted bits and pieces). Please respond by E-mail to Chris Dotson, not to me! Doug Jones jones@cs.uiowa.edu ---------------------------- cut ---------------------------- >From article <2rd1aq$1k8@s.ms.uky.edu>, by elric@mik.uky.edu (chris dotson): Here's some OLD equipment we gotta get rid of. Everything but the broken PDP works. Make an offer! It WILL go, one way or another. 1 DecMate II System, RDS1 HD, 2 RD50 (5 1/4 inch) drives 1 DecMate III System, 2 RD50 drives 2 VR201 Monitors (goes with most DEC PC's) 1 Intergraph VT-10A terminal (VT100 clone) 1 Intergraph VT-10A sans keyboard (don't know WHERE that went!) 1 Working PDP-11, 2 RD50 drives and HD, loaded with Micro/RSX 1 Broken PDP-11, 2 RD50 drives and HD, console terminal board is bad Make an offer. The only caveat is that YOU pay shipping; some of this stuff is rather bulky. Above and beyond that, highest bid takes it, whatever that might be. E-mail or call (606) 223-2316 and ask for Chris Dotson - elric@mik.uky.edu /NeXTMail welcome. / From oddjob@cix.compulink.co.uk Fri May 20 10:45:50 EDT 1994 Article: 863 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!solaris.cc.vt.edu!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!EU.net!uknet!cix.compulink.co.uk!oddjob From: oddjob@cix.compulink.co.uk ("Stephen Walters") Subject: Re: Test programs you can toggle in - Thank you for your help Message-ID: Organization: Skills Unlimited References: <1994May13.134021.19111@cc.usu.edu> Date: Wed, 18 May 1994 23:17:53 GMT X-News-Software: Ameol Lines: 13 I would like to thank all those people who have given me test prog to toggle in. I have a BBC film crew coming round on thursday evening and .... ...One of the thinks in my vast computer collection they want to see is my PDP8e. So many thanks 73's If anybody is disposing of a PDP8e/s or VT78 please let me know... oddjob@cix.compulink.co.uk From bqt@Krille.Update.UU.SE Fri May 20 10:47:47 EDT 1994 Article: 864 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!inxs.concert.net!taco.cc.ncsu.edu!lll-winken.llnl.gov!sol.ctr.columbia.edu!howland.reston.ans.net!pipex!sunic!columba.udac.uu.se!Krille.Update.UU.SE!Krille.Update.UU.SE!not-for-mail From: bqt@Krille.Update.UU.SE (Johnny Billquist) Newsgroups: alt.sys.pdp8 Subject: Re: PDP-8 Front Panel Date: 19 May 1994 02:51:10 +0200 Organization: Update Computer Club Lines: 67 Message-ID: <2red6c$siv@Krille.Update.UU.SE> References: <12a.123.2370.0N3E1DBB@umcc.umcc.umich.edu> NNTP-Posting-Host: krille.update.uu.se In <12a.123.2370.0N3E1DBB@umcc.umcc.umich.edu> :bgrant@umcc.umcc.umich.edu writes: >BG>I recently saw a (kinda fuzzy) photo of a PDP-8 front panel, where a few >BG>of the labels were not readable. I'd appreciate it if someone familiar >BG>with the PDP-8 could answer a couple of questions about it: ANSWERED! >BG> What do the 8 switches in the lower right do? Labels ARE >BG> Start Load Deposit Examine Continue Stop Sing(le). >BG> | address / \ | Step > | | (SR in memory) from stop | > | | value add. content Execute 1 instru. > (program (in SR to > at address Prog. Countr)[Switch Register is 12 swchs to left] > in Switch [cheapest way to input one instruct'n] > Register) [or datum at a time] ^^^^^^^^^^ Wrong. The program is started at the current address, the switch register is the physical switches, whose value can be loaded into the current address with LOAD ADDR >BG>2) There appears to be a column of lights on the right edge of the >BG> panel labeled:[with the major machine states] >BG> / FETCH content of address >BG> MAJOR EXECUTE that instruction >BG> STATES DEFER to Extended Arith. Element option >BG> \ BREAK stop then do it again > >BG> ION [interrupt enable flip/flop on] >BG> PAUSE [temp. delay] >BG> RUN [what it should be doing] >BG>3) What do the 'Data field' and 'Inst field' lights and switches refer > SETS PAGE IN CORE FOR DATA AND INSTRUCTIONS > REMEMBER, THE BASIC MACHINE IS 4K IN 1K PAGES! No, the basic machine is 4K in 128 word pages, and this has nothing to do with the DF and IF. There is an option whereby you expand the pdp8 to 32K words, separated into 8 4K fields. IF and DF indicates which field is currently selected for instruction and data respectively. >Bruce: I hope this clears things up a little. The idea was you could run the >machine entirely from hand-assembled programs inputted to front panel, and >when the machine died, go to a specific location in memory (and by looking >at the accumulator and instruction register) to try to debug the thing. In >fact, until the later 8 machines (and the price of ROM falling) you had to >toggle in a short loader program to read the rest of the loader (paper) tape >that would then let you run a one-shot app like the MIT chess program which >needed every bit of the machine to make it work or a primitive OS that could >handle 128K DECTapes, 32K hard disks (18" wide, x 1/2" thick) and later 128K >hard drives in the same size factor and weight. The MIT chess program referred to is probably MAC-CHESS (I think it was called, long before apple started to call everything MAC-XXX). This program ran on the pdp6, not the pdp8. -- Johnny Billquist || "I'm on a bus CS student at Uppsala University || on a psychedelic trip email: bqt@minsk.docs.uu.se || Reading murder books pdp is alive! || tryin' to stay hip" - B. Idol From jones@pyrite.cs.uiowa.edu Fri May 20 12:36:54 EDT 1994 Article: 865 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!eff!usenet.ins.cwru.edu!magnus.acs.ohio-state.edu!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8,alt.folklore.computers Subject: TU55 DECtape drives Date: 19 May 1994 14:34:43 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 92 Distribution: world Message-ID: <2rfte3$d4n@nexus.uiowa.edu> NNTP-Posting-Host: pyrite.cs.uiowa.edu Xref: bigblue.oit.unc.edu alt.sys.pdp8:865 alt.folklore.computers:66042 For all those who remember or save pre 1970 DEC hardware, I'm interested in trying to pin down the variations on the TU55 DECtape drive. DECtape was DEC's original answer to the market that was eventually satisfied by the floppy disk. A DECtape reel is 4 inches in diameter by an inch thick, with 3/4 inch wide tape. It is block addressable, bidirectionally readable, and as conventionally formatted for the PDP-8, it had 1474 blocks of 129 words, 12 bits each; that translates to 285219 kilobytes, which is not too different from early floppy disks. Furthermore, DECtapes were well known for their fault tolerance. It was common to be able to recover data from a reel reel of DECtape that had been unrolled, crumpled, and even punched with holes. Back to the story. DEC made two major varieties of DECtape drives, the TU55 (essentially pre 1970) and TU56 (essentially post 1970). Below is a bit of ASCII art showing the basic configuration of a pair of these drives, mounted in an EIA standard 19 inch mounting rack: | |_____________| | || s s s s s s || s = switches || A A || <-- TU56 A = record/playback head ||(O) (O) (O) (O)|| (O)= spindle ||_______________|| || s s s || Note: Drive have no capstain, || A || <-- TU55 no pinch rollers, and only ||(O) (O) || a few switches (load unload, ||_______________|| forward reverse, and unit | | | | number selection). | | | | Now, to my quest! I have 4 TU55 drives in my collection (none yet restored to operating condition). Here are pictures of the two basic varieties I have: ____________________________________ ------------------------------------ | --------------- | Serial number 166 | -------------- | ||| |-| ||| | | looks like this, | | - /\ - | | ||| |-| ||| | | roughly. | | /_||||_\ | | | | | | __ | | | | Aluminum trim along | | _\/_ / \ | |-------------| | the top and bottom | | /\ \__/ | | DECtape55 | | only, and an aluminum | |____________| |-------------| | nameplate on the door | |_____________| | over the wirewrap. |__________________________________| ------------------------------------ ____________________________________ | -------------------------------- | || ---------------|| Serial number 439 || -------------- | ||| |-| ||| ||| is about like this. || | - /\ - | | ||| |-| ||| ||| || | /_||||_\ | | ||| || | __ | | ||| Aluminum trim along || | _\/_ / \ | | ||| the top, bottom and || | /\ \__/ | | ||| sides, and nothing || |____________| | ||| on the door but black || |_____________||| paint. ||________________________________|| ------------------------------------ In both of the above pictures, the ||| symbol represents two adjacent rocker switches. ||| In both of the above pictures, the |-| symbol represents a whopping big thumbwheel unit select switch. |-| My final two drives, serial numbers 2078 and 2104, were made under the Astrotape OEM label. They've got a simplified user interface, with no unit select thumbwheel switch and only three rocker switches, one on each side and one where the unit select is. Other than that, the silkscreened Astrotape logo on the door, the lack of a cooling fan behind the front panel, and differences in the 110 volt wiring, they're identical to number 439. I understand that there was later variant with plastic trim around the front panel. So! If you have some TU55 DECtape drives, could you fill out this little survey for each one you can find? Serial number: Has it got an aluminum nameplate? If not, has it got a painted on logo? If it has a logo (aluminum or painted) what is it? Has it got aluminum rails around the edges? If so, are they just top and bottom? If not, has it got plastic trim around the edges? Has it got a cooling fan over the motors? Is it currently in operational condition? Doug Jones jones@cs.uiowa.edu From jones@pyrite.cs.uiowa.edu Fri May 20 14:43:52 EDT 1994 Article: 866 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!zombie.ncsc.mil!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: Re: Test programs you can toggle in - Thank you for your help Date: 19 May 1994 15:51:10 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 18 Distribution: world Message-ID: <2rg1te$eun@nexus.uiowa.edu> References: NNTP-Posting-Host: pyrite.cs.uiowa.edu >From article , by oddjob@cix.compulink.co.uk ("Stephen Walters"): > I would like to thank all those people who have given me test prog to > toggle in. I have a BBC film crew coming round on thursday evening and > ..... If your machine has core memory, you can preload everything for the visit days in advance, and speed your demo when the film crew is there. Just toggle in the demo (or demos) you want, then halt the machine and power it down. The demo will stay in core. Power the machine up with the halt switch down, then flip halt up, load the starting address, clear the machine, and continue, and your demo will be running. The sequence, from a cold machine to blinking lights, should look good on film, alot better than a frustrated programmer trying to toggle something in and getting it wrong on camera. Doug Jones jones@cs.uiowa.edu From jones@pyrite.cs.uiowa.edu Fri May 20 14:45:37 EDT 1994 Article: 867 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!eff!usenet.ins.cwru.edu!howland.reston.ans.net!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: Canonical Flip-Chip Terminology Date: 19 May 1994 16:23:32 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 44 Distribution: world Message-ID: <2rg3q4$fsv@nexus.uiowa.edu> NNTP-Posting-Host: pyrite.cs.uiowa.edu Charles Lasner and I were hashing over bugs in my FAQ when we noticed that we were using incompatable terms for the dimensions of various size of flip-chips, so last night, I wandered through my collection of DEC Logic Handbooks, and verified the terminology preferred by DEC: <---------------- height ---------------> ___\__/___________ ______ __\__/___ | |____| | | | | |____| | /|\ | _ _ |_| |_| | | | | | | | | | | | | | | | quad height | | | _|_| | | | extended length | | | | | |___\__/______\__/___ ___\__/___| length | |____| |____| | | |____| | | | | | | | | double height | | single | | | | | height | | | standard length | | | | | | | standard | | | | | length | | |_ __ _| __ _| | | | | | | | | | | |______| |______| |______| |______| \|/ The term width is used by DEC to refer to the thickness of the board. Most boards are single-width, but some have big components on them that make them double width. The terms height, width, and length are used uniformly in all board dimensional drawings I've been able to find, from the the 1966-67 logic handbook to the 1978 logic handbook. Having started using DEC equipment in the PDP-11/20 era, it's very tempting for me to think in terms of an OMNIBUS board being quad-wide, extended height, but none of my DEC documentation uses the terms this way, so I guess, since I also deal with older stuff these days, I'll try to stick to the "official" terms from now on. Doug Jones jones@cs.uiowa.edu From cgordon@vpnet.chi.il.us Fri May 20 14:46:34 EDT 1994 Article: 868 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!solaris.cc.vt.edu!spcuna!charon.citicorp.com!uunet!amiserv!vpnet!espada!cgordon From: cgordon@vpnet.chi.il.us (gordon hlavenka) Subject: Re: PDP-8 Front Panel Message-ID: Sender: news@espada.chi.il.us (USENET News) Organization: Vpnet - Your FREE link to the Internet (708)833-8126 References: <2r1mcl$7l9@umcc.umcc.umich.edu> Distribution: usa Date: Thu, 19 May 1994 16:52:43 GMT Lines: 31 Tom F Karlsson wrote: >From the PDP-8/L handbook: > >DATA FIELD SWITCH >The DF switch serves as an extension of the SR to load the DF by means of >the LOAD ADDRESS key. The DF determines the core memory field of data >storage and retrieval. > >INST FIELD SWITCH >The IF switch serves as an extension of the SR to load the IF by means of >the LOAD ADDRESS key. The IF determines the core memory field from which >instructions are to be taken. > >Sounds perhaps a little bit confusing :-) Not _too_ confusing; as a geeky high-school freshman in 1972 even I could figure it out. Now, we have an example in the X86 architecture: The 8 series has a 3-bit CS register (called IF) and a 3-bit DS register (called DF). 12-bit addressing gives you 4K segments, 12 bits wide. The switches described above allow you to load the CS and DS from the front panel. The difference between pdp8 "segments" and X86 segments is that the pdp8 segment registers simply extend the address by three bits. This is actually a lot simpler to understand than the Intel gyrations. -- ---------------------------------------------------- Gordon S. Hlavenka cgordon@vpnet.chi.il.us Proud father of Daniel Scott born August 9, 1993 From ivie@cc.usu.edu Fri May 20 14:48:07 EDT 1994 Article: 869 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news-feed-1.peachnet.edu!emory!swrinde!cs.utexas.edu!howland.reston.ans.net!agate!dog.ee.lbl.gov!hellgate.utah.edu!cc.usu.edu!ivie From: ivie@cc.usu.edu Newsgroups: alt.sys.pdp8,alt.folklore.computers Subject: Re: TU55 DECtape drives Message-ID: <1994May19.221643.19809@cc.usu.edu> Date: 19 May 94 22:16:43 MDT References: <2rfte3$d4n@nexus.uiowa.edu> Distribution: world Organization: Utah State University Lines: 43 Xref: bigblue.oit.unc.edu alt.sys.pdp8:869 alt.folklore.computers:66102 In article <2rfte3$d4n@nexus.uiowa.edu>, jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) writes: > > ____________________________________ > ------------------------------------ > | --------------- | Serial number 166 > | -------------- | ||| |-| ||| | | looks like this, > | | - /\ - | | ||| |-| ||| | | roughly. > | | /_||||_\ | | | | > | | __ | | | | Aluminum trim along > | | _\/_ / \ | |-------------| | the top and bottom > | | /\ \__/ | | DECtape55 | | only, and an aluminum > | |____________| |-------------| | nameplate on the door > | |_____________| | over the wirewrap. > |__________________________________| > ------------------------------------ The piece of TU55 that I have looks similar to this. However, I have aluminum trim on all four sides. I also don't have the star hub; both of my hubs are round. > Is it currently in operational condition? Sadly, no. You see, the guy I got this from collects old stuff as raw materials for his projects. He's interested in motors, switches, etc. The only reason I have the face plate is that he didn't know what to do with it, so he made me a kind of artsy thingy from it. I only have the face plate. Kind of a depressing thing to do to a machine, I know. He's the same guy that I got my PDP-5 front panel from; if I had had any idea what the machine was at the time, I would have held out for the entire thing (it's not like it had PDP-5 written on it or anything; just a collection of assorted logic modules with a brushed stainless front panel. The front panel doesn't even say PDP-5). I also managed to rescue the CPU half of a classic 8 from him; the only motors, etc. were the fans, which he wasn't terribly interested in. I couldn't get the rest of the logic because he was determined to open up the core to see what it looked like inside. Sigh; now I'm all depressed... -- ----------------+------------------------------------------------------ Roger Ivie | Don't think of it as a 'new' computer, think of it as ivie@cc.usu.edu | 'obsolete-ready' From lasner@sunSITE.unc.edu Fri May 20 14:48:19 EDT 1994 Article: 870 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!sunSITE!lasner From: lasner@sunSITE.unc.edu (Charles Lasner) Newsgroups: alt.sys.pdp8 Subject: More DECtape drive info Date: 20 May 1994 18:34:57 GMT Organization: University of North Carolina, Chapel Hill Lines: 296 Message-ID: <2rivsh$p3j@bigblue.oit.unc.edu> NNTP-Posting-Host: calzone.oit.unc.edu Doug's request for DECtape drive info needs to have more stuff explained: The first drive is the LINC drive. This was used in the LINC and LINC-8 and uses relays to implement the functions. However, these relays are an unusual type: they are capable of switching as fast as 60 Hz, and they include a coil driver transistor in the case. They also plug into an unusual socket complete with mini hold-down straps. Additionally, the LINC and LINC-8 support relays as an output device. There are six of them and they use precisely the same relay as in the tape drives. There is a test program to diagnose sticky relay contacts where you plug the affected relay into relay register[0] and hook a voltage and the A-D convertor up to it on two channels. You get a scope display of the dynamics of the contacts as they are switched at high-speed that indicate if they are adjusted well, etc. One particular relay in the tape drive has 110V across the contacts, so if it should accidentally make before break, you have smoke! A common ECO was to replace this particular relay with a triac module whose wiring is fudged into a relay case with a hole drilled on top, etc. The module itself is then velcroed onto the tape chassis in any empty spot, etc. The 555 drive used on the PDP-6 and the PDP-5 552 controller is similar. However, the LINC drive uses R-series compatible logic levels of -3, 0 Volts while the 555 uses so-called "relay logic levels" which are two different negative voltages (don't remember the values). The TU55 includes a jumper module in each drive that can be changed to a level convertor to make it compatible with the 555. Other than the head-select relays, there are no control relays in either a TU55 or TU56 (the TU55 is known as the "Solid State" DECtape). The LINC and 555 drives are belt-driven using a surgical rubber belt with cloth inserts. By now all have worn out. I have a superior replacement belt source where the belts are made of nylon. The replacements show no sign of wear in 12 years, etc. All newer drives use direct drive motors. TU55 motor control is 110V into SCR's. TU56 uses power amplifiers to create 40 Hz power into the motors. DC power is used to hold the motors still; less power is used to provide tape torque to pull against, etc. TU55 uses a shaft-mounted brake mechanism reminiscent of an automotive air-compressor clutch. When a TU55 is stopped, you can hear the brake apply, etc. Apparently all of the drive variations in the TU55 world were instigated by Astrotype. This includes the so-called BE01 which is merely a TC01 with no status panel which not only means no status lights, but also no ability to format tapes. I once upgraded a BE01 to TC01 status by canniballizing another TC01 for the relevant cables, panel, modules, etc. It wouldn't format until we hunted down a small missing wire-wrap. This missing wrap only affected the ability to format and seemed like a sneaky way to disable the function. (Note: all of the rest of the wrap is present to allow the upgrade.) Once we were done, the only pedantic difference between a "real" TC01 and the BE01 is that the nameplate has the serial number and ID of BE01 instead of a serial number saying TC01 from standard production, etc. Also, there is a unique drive known as a BE03. In essence, this is a dual TU55 attempting to be a TU56. No unit select is provided; presumably the drive is just permanently 0 and 1 or some internal jumper can change the drive pair. The relay-logic/jumper modules are not present, so this can only be run on the negative tape buss. No write protect switches are provided. In fact, the only switches are the off-line and motion switches of the TU55 using the same switch mechanisms, etc. Doug has a very early prototype TU55 with the aluminum trimplate on the door. As in the book illustration, it lacks aluminum trim on the sides. Newer drives have 4-sided aluminum trim that screws together. Still newer drives use a casting surround that matches the overall appearance of machines such as the -8/l and -8/e and are painted antique white to match, etc. TU56 comes in a variant of a "half" drive called TU56H. Because of the built-in power supply, it certainly *weighs* more than half! Removing the dummy cover generally reveals an area easily upgraded. I have demised several TU56H drives to upgrade others to dual status. A word about TU55/56 guides: All drives can take the same new ECO guides. The difference is whether to mount with roll pins or pins as well as screws. Most of the TU55's use aluminum guides that cannot be upgraded and which use a flat cover plate on each guide. Very occasionally, the metal will be steel but the same overall shape. The guide plates themselves are made of soft steel and are clearly not reversible. A newer design is always found in a TU56 guide. In this version, the front covers are drilled with various holes to support the guide plates better. Only a small hole is drilled for the older variant spring. The guide plate area is planed out both in the cover and the guide itself in this design. (The older system uses a deeper cut in the guide and a flat cover.) Some TU55's will be found as ECO'd to the same level as these early TU56's. DEC attempted several ECO's to overcome tape problems, especially when the more finicky TD8E came along. The first attempt was to use a reversible ceramic guide plate to replace the soft steel non-reversible type. Field circus liked this, because they could lazily just turn the plates over periodically and claim they were "servicing" the machine! Additionally, newer rear cheek plates were cut to also be reversible. Thus, field circus could dismantle the guides completely and reverse the rear plates as well, etc. However, it was discovered that these reversible front plates actually chewed the tape up! The soft steel plates would develop score lines and dirt that caused friction and jerkiness in the tape motion, but wouldn't materially hurt the media. The ceramic plates are tougher, and tend to kill the tapes themselves! A lot of tapes have either a rough edge or a "cupped" appearance due to these crummy plates! Eventually, a better fix was found: The guides themselves were cut deeper so that the front plate could march to the rear a few more thousandths in case the tape was worn thinner. Thus, older or damaged tapes could still be made to lie flat and be read properly, etc. (This refers to the tape width being less, not the thickness!) Clearly the ceramic guide plates were pushing too much on the tape, thus the cupped appearance, etc. To counteract this, the front covers were redrilled with a larger hole closer to the center of the plate. A larger softer spring was used to allow the tape to lie flatter. Finally, it was revealed that the reversible ceramic plate was too "sharp" for the tape and was a source of wear. A replacement was produced that was exactly the shape of the original one-sided steel plate, but made of the same ceramic material. The only remaining problem was a lot of idiot field circus types still assuming that the plates were reversible! (Reversing the non-reversible plate has an affect on the tape similar to dragging a razor blade on it!) A competent machinist can drill the holes in the front covers, and plane down the guide area. Alternate springs can be acquired. The hardest part to get is the ceramic wear plates. An alternative is to use the older steel plates and clean them often. The reversible plates should be discarded. (Note: perhaps someone can figure out how to modify the plates so they are as good as single sinded! Perhaps some epoxy or other resin applied to one side?) TU56 comes with two series of jumper modules or level convertors. Most PDP-8 applications use a jumper for the relay->negative position, and a negative->positive module in the second position on each half-drive. On a PDP-11 TC11 system, both are jumpered since the -11 uses positive control logic. If there are multiple drives, then a straight-through cable is used to connect them. If the drives are on a TD8E, then only two drives are supported. In a contrived case, it's conceivable that there would be two TU56H drives with the same cable between them! But for all other applications, the drives are setup as negative. If there are multiple TU56's involved, the same cable goes between them, but the first cable is an asymmetric cable that must have one end inserted into the TC01 or TC08 or PDP-12 with the designated other end into the first TU56. The cable is a complicated rainbow cable with no clue as to which end is which. An ECO is to attach labels to it to tell! Should TU55's be involved, they must come first as they use cabling compatible with the controller and are straight-through, etc. Additionally, there are head cables to transport the head buss between chassis. TU56 uses an on-board power supply to create sundry voltages needed within the drive. However, an external supply is still needed to provide -15 and either +10 or +5 volts. One of the TU56 modules includes a +10 -> +5 regulator that will automatically be used if required. However, if the drive is being used for a TD8E, then 5 G888 modules are placed within the (first) drive. (Note: these are the same modules as in the TC08/TC15. The PDP-12 and TC01 use the G882 which is esssentially the same card only with negative logic levels, etc.) In this case, +5 is mandatory since otherwise it overloads the regulator! Thus, most TD8E-era TU56's use an external small -15, +5 supply while older drives use the older negative unregulated power supplies. Additionally, the TC08 supports a +10 -> +5 regulator on its own chassis, known for getting quite hot (and occasionally failing!). TC01 and TU55 use the older supply directly. There is a problem with the built-in power supply: A noise-inducing grounding problem was revealed. Apparently field circus invented its own fix to the problem. Unfortunately, it only made the problem worse! Thus, it is necessary to ensure their fix is removed, and the official one is added. The unacceptable fix is a wire added internally in a roundabout manner. If present, remove it. The proper fix can be done either internally or externally. There are multiple power tabs on the supply and a pair of black ground tabs, one near the top and one near the bottom of a stack of various power tab connectors, etc. Late production supplies do the ECO internally by soldering a wire between these two. An acceptable alternate is to provide those little brass faston expander lugs while the supply is inside of the drive and just jumper the two ground terminals together. (Note: there should also be a ground wire from one of these to the front plate. This prevents problems due to the pivot point not really being a good ground!) Unfortunately, it's necessary to remove the supply, and take it apart to ensure the field circus abortion isn't present! Having both causes a ground loop! The only exception is a new production supply. Most look just like the earlier supplies, so you still have to take them apart. (The field circus method was quite widespread; drives that were reliable for years and then become unreliable are traceable to this mistake!) However, final ECO supplies also include another change obvious from the back side: they include a large diameter fuse holder. This is a fuse for the 110V receptacle against too much equipment being plugged into the power daisy-chain. The fuse holder is designed to be replaced without supply disassembly and is quite obvious if present. I also have a supply that was upgraded to include the fuse holder; it's obviously a refurb job because the silkscreen lines don't match, etc. (And opening that supply revealed no internal ECO, either the field circus or the correct one; so I added the internal soldered one, etc.) Drive hubs: The original drive hub is known as a Hartman hub. On the LINC-8 drive, it's a light mechanism that accepts the reels with a satisfying "snap" as you apply the reel. It's quite easy to remove the reel. The outermost part of the mechanism is a coil spring that gets compressed as you snap the reel over it. The spring is fairly wimpy and has to be "enhanced" by removing it from the hub and adding in rubber bands before replacing the spring. In any case, you can get just enough tension that worn reels won't slip without needing excessive force to take off new reels, etc. Unfortunately, on the TU55, someone overdesigned the Hartman hub into a disaster! The reels go on easily, but come off with great difficulty. Most TU55 drives show signs of scratches from shoehorns, screwdrivers, can-openers, etc. that people have used over the years to remove the reels! Fortunately the back plates are made of aluminum, not plastic! An ECO is to replace the hubs with TU56-type spider hubs. Cheap field circus-maintained sites would only change one hub on the theory that only rarely was the other side needed to be removed. (Note: which side is a take-up reel is determined by whether you use LINCtape or DECtape!) Some unscrupulous field circus idiots have been found to put old Hartman hubs on TU56! This is the worst possible situation because now you are applying screwdrivers to plastic :-(. Needless to say, this is *not* an authorized change! TU56-type spider hubs come in two varieties. In one case, the setscrews are 180 degrees apart. The preferable ones are more like 90 degrees, but actually a bit more. (They break less!) Spider hubs hold the tape well, but not as good as LINC drive Hartman hubs. You have to hand-locate the tape so it doesn't run too much out of round, etc. LINC drives use a one-piece aluminum guide with no moving parts. In spite of the lack of wear plates per se, the gentler drive (it moves at 2/3 the speed!) neither wears nor wears out tapes. Most TU56's have a nice plastic front panel behind the drive hubs. Late production drives have a "manufacturing ECO" that deletes the plastic panel and merely spray paints the bear cast metal! (Ugly!) I have deliberately rebuilt a pair of TU56H that were "new" into an "old" chassis front! There is a curious problem associated with the negative level converter modules for TU56. Attempts to write code on both the TC01/08 and the PDP-12 to handle tape motion have been thwarted by what appears to be an ECO problem with this module. When a too *new* module is used, it interferes with certain programs: The OS/8 REWIND and UNLOAD commands were designed on a machine with 4 pairs of TU56. (It was also used to produce "certified" DECtapes often misformatted!) The rewind command is supposed to initiate a reverse move command and not wait. If no command is given to the tape system, the END error will stop the tape when it's fully rewound, etc. Should another tape operation (such as a read) be started on another drive, the rewinding drive is supposed to stop moving. But on this machine (or similarly afflicted) the tape *continues* to rewind while the other selected drive is accessed normally. (One could call this a "feature" but it's not supposed to happen!) Additionally, the unload code often fails on normal tape systems, functioning only on similarly defective systems. In P?S/8 there are keystroke commands to rewind and unload the tapes as well. However, the unload operation is designed to mimic the TOPS10 equivalent: the tape is rewound into the end zone until the end error occurs. Then, the tape motion is deliberately reversed and then cleared. This has the effect of locking the brakes if on a TU55 and merely stopping on the TU56 (after the tape is already wound off; the difference is that on a TU56 the tape just flaps, while on a TU55 the reel is also stopped). Unfortunately, on a defective machine the rewind works as in OS/8, and the unload merely does a rewind. Additionally, the P?S/8 binary loader program will not properly deselect multiple tapes (again seeming to mimic the rewind phenomena). There is a one-word patch to prevent this, but it degrades performance on normal machines! The only time this situation shows up is if there are multiple TU56's and the ECO level of the negative level converter module is too high! Single drive pairs don't exhibit the problem. cjl From oddjob@cix.compulink.co.uk Mon May 23 12:05:04 EDT 1994 Article: 871 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news-feed-2.peachnet.edu!gatech!howland.reston.ans.net!EU.net!uknet!cix.compulink.co.uk!oddjob From: oddjob@cix.compulink.co.uk ("Stephen Walters") Subject: Missing bits from PDP-8 faq Message-ID: Organization: Skills Unlimited Date: Sun, 22 May 1994 12:56:52 GMT X-News-Software: Ameol Lines: 9 Where is the rest of this? >Subject: Where can I get a PDP-8 today? >The CESI machine may still be on the market, for a high price, but >generally, you can't buy a new PDP-8 anymore. There are q ......and....? oddjob@cix.compulink.co.uk From chris@transdata.co.nz Tue May 24 08:17:33 EDT 1994 Article: 872 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8,alt.folklore.computers Path: bigblue.oit.unc.edu!concert!news-feed-2.peachnet.edu!emory!swrinde!pipex!sunic!EU.net!uunet!comp.vuw.ac.nz!waikato!auckland.ac.nz!kcbbs!transdata!chris From: chris@transdata.co.nz (Chris Grace) Subject: Re: TU55 DECtape drives Message-ID: Followup-To: alt.sys.pdp8,alt.folklore.computers Organization: TransData Corporation Ltd. Auckland, New Zealand. X-Newsreader: TIN [version 1.2 PL2] References: <2rfte3$d4n@nexus.uiowa.edu> Date: Mon, 23 May 1994 06:15:33 GMT Lines: 16 Xref: bigblue.oit.unc.edu alt.sys.pdp8:872 alt.folklore.computers:66297 Douglas W. Jones,201H MLH,3193350740,3193382879 (jones@pyrite.cs.uiowa.edu) unleashed on the world: : For all those who remember or save pre 1970 DEC hardware, I'm interested : in trying to pin down the variations on the TU55 DECtape drive. DECtape : was DEC's original answer to the market that was eventually satisfied : by the floppy disk. A DECtape reel is 4 inches in diameter by an inch : thick, with 3/4 inch wide tape. It is block addressable, bidirectionally : readable, and as conventionally formatted for the PDP-8, it had 1474 : blocks of 129 words, 12 bits each; that translates to 285219 kilobytes, ^^^^^^^??????? : which is not too different from early floppy disks. If early floppies were this big why bother with hard drives? (Obviously a typing error, but couldn't resist it. A 285MB floppy? -- Chris Grace TransData Corporation Ltd Auckland New Zealand chris@transdata.co.nz chris_grace@kcbbs.gen.nz CIS:76616,2042 Bix: cgrace Phone: +64 9 275 3191 Fax:+64 9 256 0088 From keogh@anshar.shadow.net Wed May 25 20:51:06 EDT 1994 Article: 873 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!zombie.ncsc.mil!MathWorks.Com!usenet.fiu.edu!usenet.ufl.edu!usenet.cis.ufl.edu!anshar.shadow.net!anshar.shadow.net!nobody From: keogh@anshar.shadow.net (Matt Keogh) Newsgroups: alt.sys.pdp8 Subject: Skinny Dip Date: 24 May 1994 05:42:44 -0400 Organization: Shadow Information Services, Inc. Lines: 22 Message-ID: <2rsi6k$kd0@anshar.shadow.net> X-Newsreader: TIN [version 1.2 PL2] ÜÛÛÛÛÛÜ ÛÛ ÜÛÛ ÞÛÛÝ ÜÛÛÛÛÛÜ ÜÛÛÛÛÛÜ ÛÛ ÛÛ ÛÛÛÛÛÛÜ ÞÛÛÝ ÛÛÛÛÛÛÜ ÛÛÜÜÜÜ ÛÛÜÛÛß ÛÛ ÛÛ ÛÛ ÛÛ ÛÛ ÛÛÜ ÜÛÛ ÛÛ ÛÛ ÛÛ ÛÛÜÜÜÛÛ ßßßßÛÛ ÛÛßÛÛÜ ÛÛ ÛÛ ÛÛ ÛÛ ÛÛ ßÛÛÛß ÛÛ ÛÛ ÛÛ ÛÛßßßß ßÛÛÛÛÛß ÛÛ ßÛÛ ÞÛÛÝ ÛÛ ÛÛ ÛÛ ÛÛ ÞÛÝ ÛÛÛÛÛÛß ÞÛÛÝ ÛÛ *** THIGH CREAM *** The ORIGINAL thigh cream, as seen on national TV This is the NEW, SUPER STRENGTH formula Accept none of the imitation creams YOU'RE WORTH THE BEST!!! Now only $29.95 per bottle which INCLUDES shipping, handling and tax U.S. orders only, please. Rush check or money order to: U.S. Health Inc. 18524 NW 67th Ave. #311 Miami, Florida 33015 From McCrohan@iol.ie Thu May 26 17:16:54 EDT 1994 Article: 874 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news-feed-1.peachnet.edu!gatech!howland.reston.ans.net!EU.net!ieunet!iol!iol!not-for-mail From: McCrohan@iol.ie (Mike McCrohan) Newsgroups: alt.sys.pdp8 Subject: Re: Canonical Flip-Chip Terminology Date: 26 May 1994 18:36:19 +0100 Organization: Ireland On-Line Lines: 50 Sender: mccrohan@iol.ie Distribution: world Message-ID: References: <2rg3q4$fsv@nexus.uiowa.edu> NNTP-Posting-Host: ulysses.iol.ie In article <2rg3q4$fsv@nexus.uiowa.edu>, Douglas W. Jones,20 wrote: > Charles Lasner and I were hashing over bugs in my FAQ when we noticed that > we were using incompatable terms for the dimensions of various size of > flip-chips, so last night, I wandered through my collection of DEC Logic > Handbooks, and verified the terminology preferred by DEC: > [Neat graphic snipped] > > The term width is used by DEC to refer to the thickness of the board. > Most boards are single-width, but some have big components on them that > make them double width. > > The terms height, width, and length are used uniformly in all board > dimensional drawings I've been able to find, from the the 1966-67 > logic handbook to the 1978 logic handbook. > I almost agree, but for a matter of detail. I spent from 1971 to 1980 as a technician/engineer working in Digital Manufacturing. The Height of the board was the dimension measured from the gold fingers to the plastic handles, and the Width was measured along the fingers. The thickness of the board was always referred to a so many layers. The number in the height dimension is the number of sets of fingers on a board. Original boards had one set of fingers and thus were single height. Quad height appeared around the time of the 11/20 and 8/e, and Hex in the 11/05, 11/40 and most other machines of that era. The width dimension of the original single width boards would have been between 3 and 4 inches. Double width were already well established before the 11/20. The 11/20 was constructed from single, double and quad height boards - all double width. The 8/e is all dual height quads. When the 11/780 was introduced so was the "extended hex" board. Still hex width but about 2-1/2 height. Trivia: (Mention of the fingers reminded me) What letters are missing in the DEC Alphabet? And where is that alphabet used? And why are those letters missing? > Having started using DEC equipment in the PDP-11/20 era, it's very > tempting for me to think in terms of an OMNIBUS board being quad-wide, > extended height, but none of my DEC documentation uses the terms this > way, so I guess, since I also deal with older stuff these days, I'll > try to stick to the "official" terms from now on. > > Doug Jones > jones@cs.uiowa.edu From ard@siva.bris.ac.uk Thu May 26 17:17:54 EDT 1994 Article: 875 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news-feed-1.peachnet.edu!gatech!howland.reston.ans.net!EU.net!uknet!doc.ic.ac.uk!warwick!bsmail!siva.bris.ac.uk!ard From: ard@siva.bris.ac.uk (PDP11 Hacker .....) Subject: Re: Canonical Flip-Chip Terminology Message-ID: <26MAY199421022033@siva.bris.ac.uk> News-Software: VAX/VMS VNEWS 1.41 Sender: usenet@info.bris.ac.uk (Usenet news owner) Nntp-Posting-Host: siva.bris.ac.uk Organization: University of Bristol Physics Department References: <2rg3q4$fsv@nexus.uiowa.edu> Date: Thu, 26 May 1994 20:02:00 GMT Lines: 39 In article , McCrohan@iol.ie (Mike McCrohan) writes... >handles, and the Width was measured along the fingers. The thickness of >the board was always referred to a so many layers. To me, the number of layers of a circuit board refers to the number of copper layers in the PCB - for example, most of the boards in my 11/45 are 4-layer as they have circuit traces on both surfaces, and internal power and ground planes. Are you saying that DEC used the term layers to refer to the number of slots across a backplane that a module would cover? >The 11/20 was constructed from single, double and quad height boards - >all double width. The 8/e is all dual height quads. That's inconsistent, surely. As I understand the terms, the 11/20 was made from single, dual and quad height boards, and the 8/e was all quad _height_ dual length. That's the way the terms are used in my DEC logic handbook. Anyway, if you are having quad height boards in an 11/20, you'd better have them in the 8/e as well... > >Trivia: (Mention of the fingers reminded me) > What letters are missing in the DEC Alphabet? And where is that > alphabet used? And why are those letters missing? A,B,C,D,E,F,H,J,K,L,M,N,P,R,S,T,U,V - the letters of the pins on a standard (flip-chip) board slot. Missing are G (looks like C??) I (confusion with 1) O (confusion with 0) Q (ditto) W,X,Y,Z (too few pins :-)) > -tony Bristol University takes no responsibility for the views expressed in this posting. They are the personal views of the user concerned. From frank@rover.uchicago.edu Fri May 27 09:58:57 EDT 1994 Article: 876 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news-feed-1.peachnet.edu!gatech!howland.reston.ans.net!news.moneng.mei.com!uwm.edu!uwvax!uchinews!rover.uchicago.edu!frank From: frank@rover.uchicago.edu (Frank R. Borger) Subject: Re: Canonical Flip-Chip Terminology Message-ID: Lines: 24 Sender: news@uchinews.uchicago.edu (News System) Organization: Radiation Therapy, Michael Reese Hospital References: <2rg3q4$fsv@nexus.uiowa.edu> Date: Thu, 26 May 1994 22:14:21 GMT In article McCrohan@iol.ie (Mike McCrohan) writes: > What letters are missing in the DEC Alphabet? And where is that > alphabet used? And why are those letters missing? Let's see, the alphabet according to Ken needed only 22 letters, to match the 18 pins... A B C D E F (no G) Can be confused with 6 or C H (no I) J K L M N (no O) P I looks like 1, O looks like 0 (no Q) R S T U V Q easy to mistake for O and no W X Y Z Memory fails me, but wasn't that a standard somewhere before? Anyway I still buggered at times trying to determine whether it was U or V on a blurry print. Frank R. Borger - Physicist ___ What's the best way to tune a Banjo? Michael Reese - U of Chicago |___ With an Axe! - What's the difference Center for Radiation Therapy | |_) _ between a dead skunk and a dead banjo net: Frank@rover.uchicago.edu | \|_) player on the road? The skunk was on ph: 312-791-8075 fa: 791-2517 |_) his way to a gig! From jones@pyrite.cs.uiowa.edu Fri May 27 15:59:56 EDT 1994 Article: 877 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news-feed-1.peachnet.edu!news.duke.edu!zombie.ncsc.mil!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!cs.utexas.edu!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: PDP-8, A High Speed Digital Computer Date: 27 May 1994 14:12:06 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 79 Distribution: world Message-ID: <2s4v3m$j1s@nexus.uiowa.edu> NNTP-Posting-Host: pyrite.cs.uiowa.edu In my continuing search for documentation for PDP-8 serial number 85, I've dredged up a nice little 20 page document from DEC. The document is short enough that a summary of the entire thing is worth posting. This is a great programmer's reference handbook, and a fun snapshot of DEC's PDP-8 product line at close to the very beginning: Here's an ASCII facsimilie of the cover: _________________________________ | F-81 6/65 | | _____________________________ | | | | | Page 1 is the cover. | | PDP-8 | | Page 2 is a good full page | | | | photo of the table-top 8 | | | | with a 1965 copyright. | | ( Rather dark looking | | Page 3 is a general overview. | | photo of a man at a | | Page 4 is a list of features. | | teletype by a table | | Page 5 has diagrams of how | | top model PDP-8 ) | | the -8 pulls out of its | | | | rack and how the table-top | | | | model opens, followed by | | | | a list of PDP-5 applications | | | | and the statement that the | |_____________________________| | PDP-8 is functionally | | equivalent. | A HIGH SPEED DIGITAL COMPUTER | Page 6 describes the processor | | registers. | | Page 7 continues the description | | and ends with core memory and | | the operator console (front | |d|i|g|i|t|a|l| | panel), with a very clear | | 1/3 page photo of the latter. | digital equipment corp | Page 8 has a block diagram of | maynard, maddachusetts | the PDP-8, followed by a |_________________________________| discussion of I/O devices. Page 9 is a 2/3 page photo of the rack-mount model, with gull-wing table, plus two little photos of people at work in front of it. Page 10 is titled STANDARD PDP-8 INSTRUCTIONS and has a small-print summary of the AND, TAD, ISZ, DCA, JMS and JMP instructions. Page 11 continues the instruction set description with IOT instructions, with ION, IOF, the Type 189 ADC interface, the TTY interface, the Type 188 memory parity interface, and the Type 183 Memory Extension Control (CDF, CIF, RDF, RIF, RIB and RMF). Page 12 continues the instruction set description with the Group 1 and Group 2 operate microinstructions. Page 13 continues the instruction set description with the Type 182 EAE instructions, MUL, DIV, etc. Page 14 is titled PROGRAMMING SYSTEM, and discusses the MACRO-8 assembler. Page 15 continues with a discussion of the FORTRAN compiler, DDT-8, the symbolic tape editor, the floating point package, the math function routines, and various utility and maintenance programs. Page 16 is titled OPTIONAL EQUIPMENT and lists the Type 182 Extended Arithmetic Element, the type 183 Memory Extension Control, the Type 184 Memory Module, the type 188 Memory Parity option, the Type 129 Data Channel Multiplexor, the type 750C High Speed Perf Tape Reader and Control, the Type 75E High Speed Perf Tape Punch and Control, the Type 451 Card Reader and Control, the Type 450 Card Punch Control, and the Type 350 Incremental Plotter Control. Page 17 continues the option list with the Type 64 Automatic Line Printer, the Type 34D Oscilliscope Display, the Type 30N Precision CRT Display, the Type 370 Light Pen, the Type 189 Analog to Digital Converter, the Type 138E General Purpose Analog to Digital Converter, the Type 139E General Purpose (analog) Multiplexor and Control, the Type 250 Drum, the Type 552 DECtape Control and Type 555 DECtape Transport, the Type 580 Magnetic Tape System, the Type 57A Magnetic Tape Control, and the Type 50 Magnetic Tape Transport. Page 18 continues the option list with the Type 570 Magnetic Tape Transport, the Type 563 Data Communications System, and the cabinets, tables and chairs available. Following this is a box containing the physical and electrical specs of the classic PDP-8. Page 19 covers user support and DECUS; and it includes a list of other available PDP-8 literature -- the User's Handbook, the Interface Manual, the Software Abstracts, the shirt pocket reference card (I don't have this!), the Flip Chip Modules Catalog, and the Price List (I don't have this either). Page 20 (the back page) is the list of sales and service offices. Doug Jones jones@cs.uiowa.edu From oddjob@cix.compulink.co.uk Tue May 31 23:01:31 EDT 1994 Article: 878 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news-feed-1.peachnet.edu!emory!swrinde!pipex!uknet!cix.compulink.co.uk!oddjob From: oddjob@cix.compulink.co.uk ("Stephen Walters") Subject: simple pdp 'type' computer Message-ID: Organization: Skills Unlimited Date: Mon, 30 May 1994 12:45:20 GMT X-News-Software: Ameol Lines: 12 Does anybody have any article, books, FAQ's, plans for a serial bit computer or similar 'simple' machines that can be construted with only transistors, ttl 74ls chips or 4000 series CMOS? This machine would be made of ??? 100+ gates ??? use cassette or acoustic delay line for storage. And....absolutly NO microprocessors Any suggestions oddjob@cix.compulink.co.uk From wilsonj@alum01.its.rpi.edu Tue May 31 23:06:02 EDT 1994 Article: 879 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news-feed-1.peachnet.edu!darwin.sura.net!howland.reston.ans.net!noc.near.net!usenet.elf.com!rpi!wilsonj From: wilsonj@alum01.its.rpi.edu (John Wilson) Newsgroups: alt.sys.pdp8 Subject: Re: simple pdp 'type' computer Date: 30 May 1994 19:47:22 GMT Organization: Rensselaer Polytechnic Institute, Troy NY Lines: 71 Message-ID: <2sdfsa$1ar@usenet.rpi.edu> References: NNTP-Posting-Host: alum01.its.rpi.edu Someone already told you to look at prints for the '8 etc., and they're right... Not to steal the design (that would be pointless and hellish anyway), but because some of the basic design ideas are cool, they make it a lot easier to think clearly when you're designing the CPU. For example, I've seen the 8/L and the 8/E prints and they're surprisingly similar, the basic idea is to structure your timing a little. You have a little state machine with flip flops for each of the "major states" (on the PDP-8 they're "fetch" (obvious), "defer" (specific to the PDP-8 which is a little strange, it can defer through a memory location yet it has no immediate mode), "execute" (final cycle of a memory-reference instruction where it loads or stores the memory operand), and optionally "break" if a data break cycle is being inserted (which is what DMA was called when dinosaurs roamed the earth). So each of these states lasts an entire memory cycle, and there's a flip-flop for each state which gets a 1 when that state is the current one. Then there are timing pulses within the memory cycle -- on the PDP-8/E these are generated by a huge shift register, which has the timing waveform loaded into it and then clocked through at 20MHz. The memory cycle is arbitrarily divided into four timing states, TS1-TS4 (there's a line for each which gets a 1 during that state). Then there are the timing pulses, TP1-TP4, which are each active from one clock before state transitions to one clock after. I forget exactly what the timing is, but all these signals are used to break up the memory cycles in obvious ways, i.e. data read from core are held valid throughout TS2 (I don't know if that's actually true) and data to be written are latched on the leading edge of TP4, say. That kind of thing. From there on out, everything is done using mostly combinatorial logic which decodes the instruction register (IR), the major states, and the timing signals (obviously the major states state machine uses the IR and the timing signals to decide what state is up next and when to switch into it). In the PDP-8 architecture, the 12-bit adder is the star of the whole show -- almost everything can be aplied to its inputs, including the constant 0 (and constant 0 or 1 on the carry-in input) -- I think there are some cases where they just add 0 to a number to get it to appear on the adder outputs), and then the adder outputs can be latched into almost any register. So the adder is used for the TAD (add) instruction, but also to add 1 to the PC (while fetching and also again for skips), and to add 1 to the core address (CA) and word count (WC) numbers fetched from memory during so-called "3-cycle data break", from back when flip- flops were so expensive that it was worth doing two read-modify-write cycles before each word read or written via DMA, just to save having hardware registers for the CA and WC. One thing that's kind of cute about the PDP-8 is that the "microprogrammable" (i.e. combinable) "operate" instructions, where for example if you OR the opcodes for "complement accumulator" and "increment accumulator" it does both, are defined such that the opcodes are decoded in a certain order so that the order that they take effect is guaranteed (i.e. complement and THEN increment will negate a number but not if you do it the other way around). On all the real PDP-8s the OPR instructions were in fact executed in sequential order, but in fact it could all have done using data paths (i.e., just make sure the adder that does the incrementing (if the IAC bit is set) is downstream of the XOR gates that do the complementing (if the CMA bit is set), which in turn is downstream of the AND gates that do the clearing (if the CLA bit is set), you get the idea (you'd need muxes to sort out which "group" the instruction is in, but that's very PDP8-specific). Now that PALs and FPGAs and so on are cheap you do all of those instructions using only combinatorial logic, which would greatly simplify things and reduce the hardare debugging. Back when the PDP-8s were designed they were really hell-bent on using that one adder, but as I said things were amazingly expensive then so it was worth adding a little sequential logic if it meant you could re-use something. EAE is another story of course, doing DVI with combinatorial logic would require a *big* ROM! John "my code sucks" Wilson N.B. all references to actual PDP-8 hardware implementation details are approximate, it's not like I've ever actually built my own. From jones@pyrite.cs.uiowa.edu Tue May 31 23:08:43 EDT 1994 Article: 880 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news-feed-1.peachnet.edu!news.duke.edu!solaris.cc.vt.edu!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: Re: simple pdp 'type' computer Date: 31 May 1994 02:02:39 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 39 Distribution: world Message-ID: <2se5rv$p52@nexus.uiowa.edu> References: NNTP-Posting-Host: pyrite.cs.uiowa.edu >From article , by oddjob@cix.compulink.co.uk ("Stephen Walters"): > Does anybody have any article, books, FAQ's, plans for a serial bit > computer or similar 'simple' machines that can be construted with only > transistors, ttl 74ls chips or 4000 series CMOS ... absolutly NO > microprocessors I designed two 16 bit minicomputers that required about 50 SSI and MSI TTL chips each to implement. One was an extreme RISC, a move machine, that is, it had only one instruction, move memory to memory. It used memory mapped I/O, and if you wanted to use it to compute anything, you add a memory mapped ALU and accumulator. To allow branching, you need to be able to load the PC with new values, so the PC must also be memory mapped. If you build it with multiple accumulators, you can actually get code densities that approach that of the PDP-11. The other was a CISC, a microprogrammed stack machine. It had only 7 instructions (but if you build it, give it 16, it's more fun to program). All instructions were 3 (or 4) bits long, and only two were even vaguely similar (shift 0 into the stack top and shift 1 into the stack top). Again, I assumed memory mapped I/O, and I didn't count I/O device interface complexity in my chip counts. These processors are documented in: The Ultimate RISC, Computer Architecture News, 16, 3 (June 1988) 48-55, and A Minimal CISC, Computer Architecture News, 16, 3 (June 1988) 56-63. Computer Architecture News is the ACM SIGARCH newsletter. A number of people have built one or another machine based on my Ultimate RISC design, and the paper may be part of the reason behind the resurgence of interest in the computer architecture research community for move machines. Someone at Cambridge built one that ran at 1 MIPS, someone else did a gate array (single chip) implementation running half that speed, and there are others. MIPS (Silicon Graphics) is apparently toying with the architecture for some reason (I know because they asked for a copy of my support package - an assembler and linker). Doug Jones jones@cs.uiowa.edu From wilsonj@alum01.its.rpi.edu Tue May 31 23:09:22 EDT 1994 Article: 881 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news-feed-1.peachnet.edu!news.duke.edu!zombie.ncsc.mil!MathWorks.Com!transfer.stratus.com!noc.near.net!usenet.elf.com!rpi!wilsonj From: wilsonj@alum01.its.rpi.edu (John Wilson) Newsgroups: alt.sys.pdp8 Subject: Re: simple pdp 'type' computer Date: 31 May 1994 03:03:09 GMT Organization: Rensselaer Polytechnic Institute, Troy NY Lines: 12 Message-ID: <2se9dd$ec4@usenet.rpi.edu> References: <2se5rv$p52@nexus.uiowa.edu> NNTP-Posting-Host: alum01.its.rpi.edu In article <2se5rv$p52@nexus.uiowa.edu>, Douglas W. Jones wrote: [description of kinky minimalist machines deleted] >(I know because they asked for a copy of my support >package - an assembler and linker). The MOV machine sounds like a really cute idea but somehow even picturing an assembler for one makes me chuckle... :-) ... parse the mnemonic... look it up on the ST... oh never mind John Wilson From jones@pyrite.cs.uiowa.edu Tue May 31 23:10:05 EDT 1994 Article: 882 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news-feed-1.peachnet.edu!news.duke.edu!convex!cs.utexas.edu!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: Re: simple pdp 'type' computer Date: 31 May 1994 14:49:27 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 13 Distribution: world Message-ID: <2sfipn$c64@nexus.uiowa.edu> References: <2se9dd$ec4@usenet.rpi.edu> NNTP-Posting-Host: pyrite.cs.uiowa.edu >From article <2se9dd$ec4@usenet.rpi.edu>, by wilsonj@alum01.its.rpi.edu (John Wilson): > > The MOV machine sounds like a really cute idea but somehow even > picturing an assembler for one makes me chuckle... :-) I wondered about that too, but I sent MIPS my assembler anyway. It has good macro and conditional facilities, and after defining appropriate macros, you can program the darned move machine as if it was a single accumulator machine (assuming that's how many accumulators you put in your memory mapped ALU). Doug Jones jones@cs.uiowa.edu From frank@rover.uchicago.edu Tue May 31 23:10:45 EDT 1994 Article: 883 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!solaris.cc.vt.edu!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!agate!msuinfo!uchinews!rover.uchicago.edu!frank From: frank@rover.uchicago.edu (Frank R. Borger) Subject: Re: simple pdp 'type' computer Message-ID: Lines: 14 Sender: news@uchinews.uchicago.edu (News System) Organization: Radiation Therapy, Michael Reese Hospital References: <2se5rv$p52@nexus.uiowa.edu> Date: Tue, 31 May 1994 16:14:08 GMT In article <2se5rv$p52@nexus.uiowa.edu> jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) writes: >The other was a CISC, a microprogrammed stack machine. It had only >7 instructions (but if you build it, give it 16, it's more fun to >program). Heck, the PDP-8 only had 8 instructions, and one of those was HCF, (Halt and Catch Fire!) Frank R. Borger - Physicist ___ "I think medical research would show Michael Reese - U of Chicago |___ that being a Cubs fan lengthens Center for Radiation Therapy | |_) _ your life. Or maybe it just _seems_ net: Frank@rover.uchicago.edu | \|_) longer. " - Mike Royko ph: 312-791-8075 fa: 791-2517 |_) From jones@pyrite.cs.uiowa.edu Tue May 31 23:14:36 EDT 1994 Article: 884 of alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!news.duke.edu!solaris.cc.vt.edu!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!math.ohio-state.edu!hobbes.physics.uiowa.edu!news.uiowa.edu!news From: jones@pyrite.cs.uiowa.edu (Douglas W. Jones,201H MLH,3193350740,3193382879) Newsgroups: alt.sys.pdp8 Subject: Re: simple pdp 'type' computer Date: 31 May 1994 18:08:46 GMT Organization: University of Iowa, Iowa City, IA, USA Lines: 61 Distribution: world Message-ID: <2sfufe$grn@nexus.uiowa.edu> References: NNTP-Posting-Host: pyrite.cs.uiowa.edu >From article , by frank@rover.uchicago.edu (Frank R. Borger): >>The other was a CISC, a microprogrammed stack machine. It had only >>7 instructions (but if you build it, give it 16, it's more fun to >>program). > > Heck, the PDP-8 only had 8 instructions, and one of those was > HCF, (Halt and Catch Fire!) No, the PDP-8 microprogrammed instructions gave it quite an advantage over my Minimal CISC. Also, the PDP-8 has operand fields in each instruction. The Minimal CISC has no operand field, only 3 bits of opcode per instruction, 5 instructions packed per 16 bit word. Here are the 8 instructions of the Minimal CISC: 000 - NOP No operation (needed because branches are to a 16 bit word boundary, and 5 instructions are packed per word). 001 - DUP Duplicate the stack top (push a copy of the top word on the stack onto the stack). 010 - ONE Shift the stack top left one bit, shifting a one bit into the least significant bit. 011 - ZERO Shift the stack top left one bit, shifting a zero bit into the least significant bit. 100 - LOAD Replace the top word on the stack with the word in memory to which it points. 101 - POP Store the top word on the stack in the location pointed to by the word immediately below it on the stack, and then pop both words off the stack. 110 - SUB Subtract the top word on the stack from the word below it, pop both words, and push the difference. 111 - JPOS If the word below the stack top is positive, jump to the address pointed to by the top word on the stack. In all cases, pop both words. Typical useful instruction sequences are: DUP DUP SUB -- pushes zero on the stack. DUP DUP SUB ONE -- push the constant one on the stack. DUP DUP SUB ONE ZERO -- push the constant two on the stack. DUP ZERO SUB -- negate the top word on the stack. DUP ZERO SUB SUB -- add the top two words on the stack. This instruction set is a real pain to program with until you build up quite a pile of macros, but then it gets reasonable. Note that only one of the above macros takes a full 16 bit word of instruction space! The microprogram for this instruction set takes 16 words of 21 bit wide ROM, but if you build it, you're likely to make instructions 4 bits wide and use up a bit more ROM to make a far more interesting machine. Doug Jones jones@cs.uiowa.edu From lemay@epx.cis.umn.edu Tue May 31 23:16:07 EDT 1994 Article: 885 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!inxs.concert.net!taco.cc.ncsu.edu!lll-winken.llnl.gov!fastrac.llnl.gov!s1.gov!overload.lbl.gov!dog.ee.lbl.gov!agate!howland.reston.ans.net!europa.eng.gtefsd.com!MathWorks.Com!news.duke.edu!news-feed-1.peachnet.edu!umn.edu!epx.cis.umn.edu!lemay From: lemay@epx.cis.umn.edu (Lawrence LeMay) Subject: 5 1/4" Quad density diskettes Message-ID: Sender: news@news.cis.umn.edu (Usenet News Administration) Nntp-Posting-Host: epx.cis.umn.edu Organization: University of Minnesota Date: Tue, 31 May 1994 19:02:35 GMT Lines: 23 About a year or so ago, I was looking for a placxe to buy Quad density diskettes from... Unfortunately I didnt find a source at that time, so I never got around to 'experimenting' with this DecMate III system I have... Today I recieved a catalog from Inmac (the most expesive place on earth...) and lo and behold, they sell Quad density diskettes under their 'Inmac' label. I thought I'd mention this in case anyone else wants to get genuine Quad density diskettes instead of pretending double density is 'good enough'. The details: $50 minimum purchase, plus $5 shipping. prices are: $1.25 10-40 disks. one free per box of 10. $1.12 50-90 disks. Bulk packaging I think. $1.03 100-190 $0.98 200+ Lifetime warrantee on the disks, if that matters to you. Of course, if someone else had a better source for genuine Quad density diskettes, I'd be very interested in recieving e-mail or a reply to this post. -Lawrence LeMay lemay@epx.cis.umn.edu From oddjob@cix.compulink.co.uk Tue May 31 23:16:35 EDT 1994 Article: 886 of alt.sys.pdp8 Newsgroups: alt.sys.pdp8 Path: bigblue.oit.unc.edu!concert!inxs.concert.net!taco.cc.ncsu.edu!lll-winken.llnl.gov!koriel!cs.utexas.edu!howland.reston.ans.net!EU.net!uknet!cix.compulink.co.uk!oddjob From: oddjob@cix.compulink.co.uk ("Stephen Walters") Subject: Re: simple pdp 'type' computer Message-ID: Organization: Skills Unlimited References: <2sfufe$grn@nexus.uiowa.edu> Date: Tue, 31 May 1994 23:08:34 GMT X-News-Software: Ameol Lines: 3 Would it make it simpler if the machine was a serial bit processor? oddjob@cix.compulink.co.uk