REM You can generate a Leo III master routine, using genuine Leo III software if you download:
build.bat
       which you can run if you also download the material below.

REM copy-typed original listings: 08000.csv 08004.csv 09001.csv

08000.csv
08004.csv
09001.csv

REM Everything below here has been created in order to run the software listed above.

REM data files: just1.txt just31.txt MRconfig.txt NullAmend.txt routes.txt

just1.txt
just31.txt
MRconfig.txt
NullAmend.txt
routes.txt

REM C programs: newtape.c fudge.c getbin.c it.c leo3.c mkpt.c modernise.c cstrs.c

newtape.c
fudge.c
getbin.c
it.c
leo3.c
mkpt.c
modernise.c
cstrs.c

REM Binary programs for Windows are here

REM The C can be compiled using commands such as:
      gcc -g -o leo3 leo3.c
REM Note cstrs.c is not a free standing programme, but is included in other stuff

Extra thrills

The generation process run by build.bat produces a mag tape for starting a raw machine (called a mag tape start in Leo-speak). This is in the file MT-R02.leo. The last step in build.bat is to rename this MT-start.leo. It can be used to load the master routine. The bits you need to type are in red:
leo3 -b1500 -d -i2 -c MT-start.bin
Indicator now 2000 (hex)
 1000 Set indicator register (currently  2000, mask     7)
m00 MT-start.leo
Mounting MT-start.leo on route 0
Indicator now 207F (hex)
Indicator now 003F (hex)
Indicator now 007F (hex)
Indicator now 1000 (hex)
14323 T/W:
\   ;INTERRUPT PLEASE
14323 T/W:
\   ;INTERRUPT PLEASE
Indicator now 0000 (hex)
Indicator now 0080 (hex)
14323 T/W:

12778 Set indicator register (currently    80, mask     F)
v0
14323 T/W:  57 ;*  77   09001 00401
12778 Set indicator register (currently    80, mask     F)
1
Indicator now 0001 (hex)
Indicator now 0000 (hex)
14323 T/W:  00 ;OPT   1
13892 Unloaded route 0
13582 Set indicator register (currently     0, mask   7FF)
D096
Indicator now 0096 (hex)
Indicator now 0000 (hex)
Indicator now 007F (hex)
Indicator now 0000 (hex)
  719 T/W:
ISSUE 0  GO EVEN FASTER MASTER ROUTINE   09001 00401

  299 Set indicator register (currently     0, mask   77F)
m00 ITi.leo
Mounting hello6.leo on route 0
  299 Set indicator register (currently     0, mask   77F)
pMRdata0i.txt
Paper tape will now be read from MRdata0h.txt
  299 Set indicator register (currently     0, mask   77F)
D412
Indicator now 0412 (hex)
Indicator now 0000 (hex)
Indicator now 007F (hex)
  719 T/W: 51  ;LIP 00;09001;00001 ;10406  ;A6/ 1     08000
Indicator now 0000 (hex)
  719 T/W: 51  ;REJECT    D;08000
  299 Set indicator register (currently     0, mask   77F)
x
299 Illegal: Operator abort after 292437 instructions
Reply x to terminate
x
You will have had to download MRdata0i.txt and MT-start.bin
17th June 2015

This may have worked rather better:

14323 T/W:  23 ;*  77   09001 00401
12778 Set indicator register (currently     0, mask     F)
1
Indicator now 0001 (hex)
Indicator now 0000 (hex)
14323 T/W:  00 ;OPT   1
13892 Unloaded route 0
13582 Set indicator register (currently     0, mask   7FF)
D176
Indicator now 0176 (hex)
Indicator now 0000 (hex)
Indicator now 007F (hex)
Indicator now 0000 (hex)
  719 T/W:
ISSUE 0  GO EVEN FASTER MASTER ROUTINE   09001 00401

  299 Set indicator register (currently     0, mask   77F)
m00 payprog6.leo
Mounting payprog6.leo on route 0
  299 Set indicator register (currently     0, mask   77F)
pMRdata0p.txt
Paper tape will now be read from MRdata0p.txt
  299 Set indicator register (currently     0, mask   77F)
D412
Indicator now 0412 (hex)
Indicator now 0000 (hex)
Indicator now 007F (hex)
  719 T/W: DATE 17 06 01  AT 1723
Indicator now 0000 (hex)
  299 Set indicator register (currently     0, mask   77F)


Here is some more recent evidence in which we successfully load (i.e. allocate in Leo-speak) two programmmes into the machine simultaneously.

  299 Set indicator register (currently     0, mask   77F) === 2424755 2424754
D10e
Indicator now 010B (hex)
Indicator now 0000 (hex)
Indicator now 007F (hex)
Indicator now 0000 (hex)
  719 T/W: 33  ;PREFER SP
  299 Set indicator register (currently     0, mask   77F) === 2426134 2426133
pMRdata0i.txt
Disconnecting PTR file grot.txt
Paper tape will now be read from MRdata0i.txt
  299 Set indicator register (currently     0, mask   77F) === 2426146 2426145
m00 ITi.leo
Unloaded route 0
Mounting ITi.leo on route 0
  299 Set indicator register (currently     0, mask   77F) === 2426158 2426157
D412
Indicator now 0412 (hex)
Indicator now 0000 (hex)
Indicator now 007F (hex)
  719 T/W: \33 ;RC  31 ;09001
  299 Set indicator register (currently    7F, mask   77F) === 2428264 2428263
pgrot.txt
Disconnecting PTR file MRdata0i.txt
Paper tape will now be read from grot.txt
  299 Set indicator register (currently    7F, mask   77F) === 2428482 2428481
z99999
  719 T/W: 33  ;LIP 00;09001;00001 ;10816  ;A6/ 1     08000
  719 T/W: DATE 24 06 01  AT 0833
Indicator now 0000 (hex)
  719 T/W: 33  ;ALLOC   08000 00801 00100 1 M1    N
;    2 0000    1 0000    0 7200
; D1  41 N  B1  34 N  A1  01 N  A2  13 N  A6  02 N

\33 ;RC  34 ;08000
  299 Set indicator register (currently     0, mask   77F) === 2653916 2653915
z9999
  299 Set indicator register (currently     0, mask   77F) === 2823899 2823898
D103
Indicator now 0103 (hex)
Indicator now 0000 (hex)
Indicator now 007F (hex)
Indicator now 0000 (hex)
  719 T/W: 33  ;P Q     3 08000
  299 Set indicator register (currently     0, mask   77F) === 2825650 2825649
m00 bindec6.leo
Unloaded route 0
Mounting bindec6.leo on route 0
  299 Set indicator register (currently     0, mask   77F) === 2825667 2825666
pprog.txt
Disconnecting PTR file grot.txt
Paper tape will now be read from prog.txt
  299 Set indicator register (currently     0, mask   77F) === 2825684 2825683
D412
Indicator now 0412 (hex)
Indicator now 0000 (hex)
Indicator now 007F (hex)
  719 T/W: DATE 24 06 01  AT 0833
Indicator now 0000 (hex)
  719 T/W: 33  ;ALLOC   08006 00000 00000 2       N
;    1 7646    0 6304
; D3  42 N

\33 ;RC  42 ;08006
  299 Set indicator register (currently     0, mask   77F) === 2931276 2931275
D103
Indicator now 0103 (hex)
Indicator now 0000 (hex)
Indicator now 007F (hex)
Indicator now 0000 (hex)
  719 T/W: 33  ;P Q     3 08000   3 08006
  299 Set indicator register (currently     0, mask   77F) === 2933684 2933683
z99
  299 Set indicator register (currently     0, mask   77F) === 2935862 2935861
Things grind to a halt, probably because interrupts are not being processed correctly.

This is under investigation.

The z command specifies a number of read indicators that are not to result in an invitation to type.

The tape bindec6.leo is the result of translation of bindec.txt which came from a genuine paper tape discovered in a garage. When this programme is loaded as soon as the master is loaded it runs successfully and produces over 8000 lines of printer output.