Post by John LevineFor very small 360s or I suppose for low level program developmen, IBM
had Basic Programming Support (BPS) all of which loaded from cards. It
had RPG, an assembler, loaders, I/O library, and some I/O utilities to
copy stuff and format disks.
https://bitsavers.org/pdf/ibm/360/bos_bps/
I took two credit hr intro to fortran/computers. Univ had 709/1401 and
IBM pitched 360/67 for tss/360 as replacement. Pending availability of
360/67, the 1401 was replaced with 64k 360/30 (that had 1401 emulation)
to start getting 360 experience. At the end of the intro clss, I was
hired to rewrite 1401 MPIO (card reader->tape, tape->printer/punch, aka
unit record front end for 709 running tape->tape) for 360/30, part of
getting 360 experience. The univ shutdown datacenter over the weekend
and I got the whole place dedicated (but 48hrs w/o sleep made monday
classes hard). They gave me a bunch of hardware and software manuals and
I got to design and implement my own monitor, device drivers, interrupt
handlers, storage management, error recovery, etc and within a few weeks
had 2000 card program that ran stand-alone (IPL'ed with the BPS
loader).
I then modified it with assembler option that generated either the stand
alone version (took 30mins to assemble) or OS/360 with system services
macros (took 60mins to assemble, each DCB macro taking 5-6mins). I
quickly learned 1st thing coming in sat. morning was clean the tape
drives and printers, disassemble the 2540 printer/punch, clean it and
reassemble. Also sometimes sat. morning, production had finished early
and everything was powered off. Sometimes 360/30 wouldn't power on and
reading manuals and trail&error would place all the controllers in CE
mode, power-on the 360/30, individually power-on each controller, then
placing them back in normal mode.
Within a year of the intro class, the 360/67 arrived and I was hired
fulltime responsible for os/360 (TSS/360 never came to production so ran
as 360/65). Then some people from science center came out to install
CP67 (precursor to vm370) ... 3rd after CSC itself and MIT Lincoln labs;
and I mostly played with it in my 48hr weekend window. Initially cp67
kernel was couple dozen assembler source routines originally kept on
os/360 ... individually assembled and txt output placed in card tray in
correct order behind BPS loader to IPL kernel... which writes memory
image to disk. disk then can be IPLed to run CP67. Each module TXT deck
had diagonal stripe and module name across top ... so updating and
replacing individual module (in card tray) can be easily
identify/done. Later CP67 source was moved to CMS and it was possible to
assemble and then virtually punch BPS loader and TXT output that is
transferred to an input reader, (virtually) IPL it and have it written
to disk (potentially even the production system disk) for re-ipl.
One of the things I worked on was a mechanism for paging part of the
CP67 kernel (reducing fixed storage requirement) ... reworking some code
into 4kbyte segments ... which increased the number of ESD entry symbols
... and eventually found I started running into the BPS loader 255 ESD
limit.
--
virtualization experience starting Jan1968, online at home since Mar1970