Hartran and Fortran on Atlas

Jump To Main Content

Jump Over Banner

Home

ACLApplicationsHartran

Jump Over Left Menu

BAS Binary Card

An example of a BAS Binary Card is shown below:

+ + - - 0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 ATLAS COMPUTER LABORATORY BAS C O U N T REL CKS LOC 00 01 02 03 04 05 06 07 10 11 12 13 14 15 16 17 LABEL B O S S 1 3

Following the *BAS card will be one or more binary cards similar to this one. These cards all have punchings in rows 7 and 9 of column 1 and all but the last have additionally a punch in the + row of column 1. They will have been serially numbered in columns 79 and 80. Each binary card carries a checksum of all internal information. The use of this checksum may be suppressed by punching row 0 in column 1.

The binary cards contain information which can be loaded into any part of memory in such a way that the routine may operate there. The information found in rows 2 to 6 of column 1 is a binary count with the units position in row 6, and is a count of the number of words of information on the card. The other columns of binary cards are used as follows:

Columns 2,3,4
contains the relocation bits to indicate whether a particular 24 bit halfword is to be incremented by the value of the initial loading address of the routine. The punching is described below.
Columns 5,6
contain a 24 bit checksum of all the information on the card. The checksum is such that the logical sum (with end-around-carry) of the information in column 1 to 8 and of the information words contained in column 9 onwards is 77777777 octal
Columns 7,8
contains the loading address relative to the start of the routine of the first information word to be loaded.
Column 9 onwards
Each word of information occupies four columns, the first in column 9 to 12, the second in columns 13 to 16 and so on. From a group of columns the lower numbered columns represent the most significant binary digits of a word. Each word is treated for relocation as two separate 24 bit halfwords. The relocation bits in column 2 refer to the words contained in columns 9 to 32, the bits in column 3 to the words in columns 33 to 56 and those in column 4 to the words of columns 57 to 72. The relocation bits of a column are taken in turn from the + row down to the 9 row. A punch indicates that the 24 bit halfword is to be incremented by the initial loading address of the routine and the + row refers to the first pair of columns, the - row to the second and so on.

The information on the card shown can be decoded as follows:

Column 1
The columns punched are:
+    Not the last card
2    16 words on the card
7    BAS Card
9    BAS Card
So this is one card of a set for a subroutine and it is not the last and contains the full complement of 16 48-bit words.
Relocation: Columns 2 to 4
The punched holes indicate that:
Column 2
-    Word 00 address is relocatable
3    Word 02 address is relocatable
7    Word 04 address is relocatable
Column 3
-    Word 06 address is relocatable
1    Word 07 address is relocatable
9    Word 13 address is relocatable
Column 4
1    Word 15 address is relocatable
3    Word 16 address is relocatable
Base Address of Card (Columns 7,8)
these two columns indicate that the base address in octal is 0000304.0
The Instructions
The layout of the 4 columns is on the assumption that it is an instruction so the shaded area is the first modifier and the next 7 bits is the second modifier. The last two columns of the four give the address. This gives the following instructions
00   0121   127    0   0000040.0  Transfer
01   0334     0    0   0000001.0  Load Acc
02   0330     0    0   0000436.0  Add
03   0356     0    0   0000001.0  Store Acc
04   0121     1    0   0000314.0  B1=204
05   0121   127    0   0000000.0  Transfer
06            00001140 6000026.0
07                           2.0
10   0101     2    0   0000001.4  Load B2
11   0334     0    0   0000000.0  Load Acc
12   0356     0    2   0000117.0  Store Acc
13   0101     2    0   0000001.4  Load B2
14   0334     0    2   0000047.0  Load Acc
15   0356     0    0   0000003.0  Store
16   0101     2    0   0000003.4  Load B2
17   0334     0    2   0000156.0  Load Acc
Instructions 06 and 07 octal look as though they are data not instructions.
Columns 73-80
Gives the name of the routine as BOSS and it is the 13th card of the binary deck.