ATT has gone wierded out on attachments for the moment, so I'm dumping all this 
into a long text ramble

Jim:

Please forward these observations to the appropriate parties, copying me.  I am 
having trouble sorting out who started the thread and who is receiving replies.

I will respond directly to anyone w/ questions, to the best of my ability and 
experience.  I believe that I see some discrepancies, as I think others are 
also questioning some assumptions.

To: group

I own and did operate a PDP-12; having written unique PDP-12 code, I disagree: 
the 2 modes "ping-ponged".  I think some of the thoughts here are based on 
reading the books and thinking in "hardware mode" and not considering actual 
operation or the software implementations.

I have done the full experience: ownership, hardware integration,  
commissioning, running and developing custom code of both PDP-12's and PDP-8's. 
 I still own 1 PDP-12 and 4+ PDP-8's.

Re: the 12, you were either in LINC mode or PDP mode at any given time.  These 
were NOT "parallel processors".  You called the LINC IOT instruction to switch 
from PDP mode to LINC mode; then you "returned" to PDP mode by making the PDP 
call in LINC code.  Usually, you briefly switched to LINC mode to run the 
peripherals.  Most of the code that you ran was PDP code.  The TU-55/6's needed 
LINC code and so did the VR-12, for instance.

It is possible that something written for the LINC would be run in LINC mode 
for high percentages of the time.  That code might have some "patches" that ran 
in PDP mode after review and revision.

It could be that such code was modified from LINC code to a PDP-12 routine 
using the 12 as a "development system" to test and implement such patches.

The PDP-12 switch selected which mode you STARTED FROM, IIRC.  Once you had 
launched and were running code, you had to switch via code calls in the 
routines.

I can't vouch for this on a LINC-8 machine, but I thought it was similar.

I wrote my own "Mag Tape Boot Loader" in my trials and tribulations while my 12 
was running.  The following is an excerpt from my account of that experience.  
Note the PDP versus LINC calls inline in the code.

<quote>
My Boot loader [MTBL] code used the followings syntax. It resided at the high 
end address of a page, was toggled in via Front Panel and a Front Panel "Start 
Switch" launched the code. It called the Mag Tape and rewrote itself over the 
corrupted memory. I think I had another routine to update the Mag Tape 
locations periodically, after rewrites.

I can't remember the LINC syntax and would have to look those up in the 
reference manuals. (Don't leave the launch address without them.)

Comments are posted after the code [in this case], to allow for inevitable 
corruption by non column friendly text machinery.

************************
* MAG TAPE BOOT LOADER *
************************
CLA
LINC
LIF 0
LDF 0
AXO
RCG
DATA
PDP
JMP I+1
DATA

Comments, added here due to not being in "column mode"
/MAG TAPE BOOT ROUTINE;
/MUST BE PRESENT IN TAPE
/BLOCK 273; WILL BE OVER-
/WRITTEN ON USE.
/WHEN CALLED THIS CODE READS
/TAPE BLOCKS 270-273 TO
/MEMORY BLOCKS 0-3.
/TO USE:
/ 1) LEFT SW TO 1760
/ 2) START LEFT SW
/RESTART ADDRESS

Sherman, 12 owner
sherman...@att.net
<endquote>


The longer narrative in a Word doc is attached.

A PDP-8 WILL NOT run LINC code: that is also by ownership & experience & 
hardware troubleshooting-debug & handwriting machine code.  I did ALL of that 
in one session of working on a design flaw in the 8-E [also F & M] machines.

Again, the PDP-12 does not run the two modes CONCURRENTLY, rather they run 
CONSECUTIVELY.  I am borrowing the legalese for terms of sentencing, as it 
lends itself well to this description.  

And again, I am doing this from actual ownership and experience of getting 
hardware running, hand-coding and debugging custom routines.  Of course, I did 
this after researching and reading instruction sets from the programming 
manuals and poring through sample code listings.

Further, as I previously mentioned, I cannot vouch these thoughts and 
descriptions for the LINC-8.  If I understand this correctly, the "straight 
LINC" would also share the use of LINC only code characteristic w/ the PDP-8's 
use of the PDP only code characteristic.

My 12 is in storage and would be a "year out" to operation at any given time.  
That assumes that it has not suffered deterioration from its "put in storage 
running" status.  It has always been stored in dry storage.  Another major 
obstacle is simply finding the proper floorspace to mount its large footprint 
environmentally.  

If I am encouraged and/or flogged, I may bring the 12 machine out of 
retirement.  I expect that my path will be to launch a PDP-8M [perhaps a 
PDP-8E] first and then bring the PDP-12's VR-12 out and try to interface it w/ 
an IBM PC.  There is a local "moral imperative" to resurrect SpaceWars :)

I also intend to try to make a TU-56HM STANDALONE Mag tape talk to the PC 
machine.  The TU-56 Standalone mode is a rare beast and can be found in the 
FOOTNOTES on the TU-56 drawings.  I do not believe there was a complete 
document for the Standalone machine. I seem to have the requisite TU-56 
hardware, but I am not sure of the interfacing and cabling.  Code would likely 
be written in C from a DOS environment on the PC.

This would, likely be analogous to some of the TU-58 modes of operation, which 
were based on serial ports.  I also have several pieces of TU-58, including a 
VT-103 machine.

These projects could be described as ambitious.  We need some more SoCal 
DECnutz.


<quote>

Then I discussed my 12 running time:

The "12 monster" had Core Memory, which, like an elephant, doesn't forget. It 
had about 100 pounds of Sola Constant Voltage Transformer. These combos are 
good for brownouts.

It had a Power Fail Auto Restart Option [PFAR, my acronym]. I learned the hard 
way on a PDP-11/44: don't screw with it and it will restore itself when the 
power come back.

Also, the power supply had three gigantic electrolytics, about the size of 
thermos bottles. These guys were significant fractions of a Farad 40 YEARS 
BEFORE SUPERCAPS. The decay rate of the power supply was fantastic. This 
provided major "headroom" on the RC time constant that the PFAR used. One thing 
done with this was to turnoff the Write Amps for the Core Memory on Power Fail 
detection.

All in all, blackout/brownout, the 12 was ready. I had a block level blackout 
happen and when the power came back on, restarted in "mid sentence" of the code 
I was bumming.

I wrote my own version of a "Monitor", that I called MON-12. It was based on 
ODT-8. I originally keyed it in from the front panel, hundreds of lines. I 
wrote the documentation as I went. I stripped out the Paper Tape stuff, since 
the 12 didn't have one and I would have to add an extra cabinet; later???

The 12 had two TU-55's. Tape-tape copy was an obvious feature. But I always 
wondered why they didn't use a TU-56 Dual Transport and put a Paper Tape in the 
main cabinet. I have two TU-56's and a stack of PC-0X's patiently waiting in 
the warehouse.

Somewhere along the way, I got to where I could edit from the keyboard. I also 
started work on an ambitious "block mode copy" function.

If you can see this coming, I developed code that would "eat itself". After 
toggling this in from the Front Panel three times, I decided to take a cue from 
the Paper Tape stuff I had removed from ODT. I wrote a Mag Tape Boot Loader 
[MTBL, my acronym]. The 12 implementation for the Mag Tape used LINC code, not 
a TU-55 IOT set of calls.

My Boot loader [MTBL] code used the followings syntax. It resided at the high 
end address of a page, was toggled in via Front Panel and a Front Panel "Start 
Switch" launched the code. It called the Mag Tape and rewrote itself over the 
corrupted memory. I think I had another routine to update the Mag Tape 
locations periodically, after rewrites.

I can't remember the LINC syntax and would have to look those up in the 
reference manuals. (Don't leave the launch address without them.)

Comments are posted after the code [in this case], to allow for inevitable 
corruption by non column friendly text machinery.

************************
* MAG TAPE BOOT LOADER *
************************
CLA
LINC
LIF 0
LDF 0
AXO
RCG
DATA
PDP
JMP I+1
DATA

/MAG TAPE BOOT ROUTINE;
/MUST BE PRESENT IN TAPE
/BLOCK 273; WILL BE OVER-
/WRITTEN ON USE.
/WHEN CALLED THIS CODE READS
/TAPE BLOCKS 270-273 TO
/MEMORY BLOCKS 0-3.
/TO USE:
/ 1) LEFT SW TO 1760
/ 2) START LEFT SW
/RESTART ADDRESS

Sherman, 12 owner
sherman...@att.net


<endquote>


Reply via email to