
IBM System/360 Principles of Operation (1964) [pdf] - segfaultbuserr
http://bitsavers.org/pdf/ibm/360/princOps/A22-6821-0_360PrincOps.pdf
======
dbcurtis
I did a tour of duty as a CPU logic designer at Amdahl. The POO was my bible,
although it was the 370 version in those days. The thing to remember about ISA
specs like this is that they are works of fiction. The contract goes: “If you
programmers are willing to pretend this is how the machines work, we will
build a machine that pretends to work that way.” That concept is the key
innovation of the 360 system architecture, attributed to Gene Amdahl.

After leaving Amdahl I worked for a while in Electronic Design Automation. One
year at the IEEE Design Automation Conference I met a random person at a happy
hour who was an ex-IBM OS programmer. He said that he once spent a year
rewriting a part of the OS to use a particular instruction entirely because
“Amdahl didn’t have it yet.” Says I: “When was this?” ... “Ah, at that time
part of my job was adding that instruction to the Amdahl CPU.”

The conversation felt like an old Mad Magazine “Spy vs. Spy” cartoon. We were
both bemused.

~~~
cptnapalm
By pure random luck and if you know, has Amdahl's UTS survived anywhere?
Mainframe software seems to simply disappear into the void after its useful
life is over.

~~~
dbcurtis
Sorry, I have no idea.

~~~
cptnapalm
Had to ask. It's disheartening how much stuff that was so important to a lot
of people just disappears.

------
GnarfGnarf
In 1970, I actually got paid a salary to write applications in this Assembler
language. Abjectly inefficient, but what a blast!

~~~
throwawayForMe2
I did about 5 years of assembler in the late 80’s for a major bank (IMS and
CICS systems). A set of structured macros supposedly from NASA, made it quite
readable. These added if/else, case, loop constructs, etc.

Around 2012(?), working for another major bank, I was asked to make an
enhancement to a funds transfer system written in assembler, as no one else
left in the pool of programmers had any experience. I had to dig out my old
text book which I luckily found, and my old yellow card, and relearned enough
to make the change.

------
michaelwilson
When IBM introduced the AP (attached processor) and MP (multi-processor)
systems, they had to add instructions that were guaranteed to be atomic since
both processors had uniform access to main memory. Interestingly enough, they
only added two instructions (compare and swap, compare double and swap) to
support these configurations.

(I think there might have been one or two other supervisor mode-instructions,
but there were weirdos like "stop the other processor", for example).

------
RickJWagner
I remember reading a similar document for my shop's IBM 4381.

When I started mainframe programming, I was given a pocket-sized 'yellow card'
that listed all the machine instructions and arguments. It was invaluable for
dump-reading.

My co-workers (who were all older when I started) had similar cards, except in
different colors. There were white, pink and green cards, too. You could tell
when somebody started programming by the color of their card.

I kept mine, still have it.

~~~
BXLE_1-1-BitIs1
The card is now a 116 page booklet aka Reference Summary

------
cptnapalm
Coincidentally, I finished reading "IBM's 360 and Early 370 Systems" earlier
today. I highly recommend it and its predecessor, "IBM's Early Computers" from
the MIT press. The business aspect is there, of course, but it's really about
the development of the machines themselves, down to how they developed the
transistors they used along with who did it.

------
DonHopkins
The Adolescence of P-1 was set on IBM System/360 mainframes.

[https://en.wikipedia.org/wiki/The_Adolescence_of_P-1](https://en.wikipedia.org/wiki/The_Adolescence_of_P-1)

>Reception

>BYTE criticized The Adolescence of P-1 for what it stated were unrealistic
expectations for an artificial intelligence running on 1970s IBM mainframes.
It suggested that the author could have set the novel in the 1990s and use
fictional future IBM computers to make the plot more plausible.

[https://archive.org/stream/byte-
magazine-1981-09/BYTE_Vol_06...](https://archive.org/stream/byte-
magazine-1981-09/BYTE_Vol_06-09_1981-09_Artifical_Intelligence#page/n201/mode/2up)

------
MarkMMullin
Heh - had to go look up storage protect, aka 'red light errors' . Kept getting
in trouble in the beginning of my career when I didn't realize snooping about
lit up lights on the front panel . :-)

------
BXLE_1-1-BitIs1
That's the easy one. z/Arch is way more intricate. As noted in my moniker, you
can do fun stuff with BXLE,as described in the "Difficult Code" section on
FINCH (aka program fetching) in an OS/360 PLM (Program Logic Manual).

------
kpgraham
This was my bible for many years. We called it POOP (Principles Of OPeration.
I loved assembler on the 360 and the 370. I learned Assembly Language by cross
listing my COBOL programs and using POOP to find out what the op codes meant.

~~~
jackfoxy
System 370 assembler was the first language I worked in professionally. We
called it the POPS manual. As I recall it was a paragon of technical writing.
I learned how to read technical documentation on this manual.

------
Cuckoo123
I dare say these boys will find the manual rather handy.

[https://ibms360.co.uk/](https://ibms360.co.uk/)

------
rbanffy
Fair warning: this is not an introduction.

~~~
TheOtherHobbes
It's a typical programmer's hardware manual for the period.

More or less until the IBM PC, it was normal for computer vendors to supply a
detailed bit-level breakdown of instructions, memory operation, data formats,
interrupt structure, and so on.

~~~
PhantomGremlin
Things were different in the early days. In the 1970's I worked at a company
that had an IBM S/370 and a clone, an Itel AS/5.

IBM supplied hardware schematics and microcode listings for their S/370
hardware. They were in the machine room and freely available for perusal by
us.

In a bit of irony, they also supplied schematics and microcode for the Itel
clone. That's because the Itel was a true clone. It was designed by copying
IBM's circuitry, but implemented in Motorola 10K series ECL instead of IBM's
proprietary technology.

You read that right. In order to debug a problem with the Itel, the Itel field
service engineers used IBM's schematics.

I think a lot of this free availability was because IBM was facing antitrust
pressure from the US government. I don't know all the details.

Here's more history about the clone:
[http://www.silogic.com/NAS/NAS.html](http://www.silogic.com/NAS/NAS.html)

------
dang
Anybody got a year for this?

~~~
grzm
IBM System/360 Principles of Operation, 1964.

[https://books.google.com/books?id=OjUyDwAAQBAJ&pg=PA1028&lpg...](https://books.google.com/books?id=OjUyDwAAQBAJ&pg=PA1028&lpg=PA1028&dq=File+No.+S360-01+ibm+360&source=bl&ots=VLzlgPhVgC&sig=ACfU3U1EeYlMCF0Uind-L4qf7KT_vWeQhw&hl=en&ppis=_c&sa=X&ved=2ahUKEwjXwIqPht7lAhUX7J4KHY0TAg8Q6AEwCnoECAkQAQ#v=onepage)

~~~
dang
Added. Thanks!

