Now that we understand how to access a file on a disk volume we can look at how to IPL from disk.  Our goal is to write a bootstrap loader that will then load a standard load module from a PDS.

The bootstrap loader will reside on cylinder zero, track zero of our IPL volume.  The initial IPL record is on record 1 and will consist of a PSW and two CCW’s (read data and TIC).  Record two will contain additional CCW’s to read in a block of executable code that will be contained in record 4.  Record 3 is skipped and is reserved for use as the Volume Label (VOL1) record.

Our bootstrap program will relocate itself to high memory then it will search the VTOC for the PDS containing our initial load module.  We will use the name “TXXOS.NUCLEUS” as our data set name.  The initial load module will be named “TXXNUC01”

Once the nucleus is loaded into memory the bootstrap program will transfer control.

We will start by working on the bootstrap loader but will use our Absolute Card Loader.  Once we get the bootstrap loader working properly we will tackle how to set up the IPL records on the disk volume.

[Next – Determine Memory Size]