
; set console -n log=log.txt 
; set debug -n debug.txt
; set debug stdout
; set cpu debug=cmd;data;detail


; Load soap deck into drum (1 word per card format), but does not execute it

set cpu 2k

att cdr1 -q soap/soapII.dck

echo *** 
echo *** Load soap deck into drum
echo *** 

d csw 7019519999
d ar 8000
go

; create the function load deck with
; - program to load function title cards
; - standard fortransit functions definitions for translator

carddeck -q join fortransit/fortransit_addfn_src.txt as deck_soap.dck 

echo *** 
echo *** Run SOAP assembler
echo *** 

att cdr1 deck_soap.dck
set cdr1 wiring=soap

att cdp1 -n -q fortransit/fortransit_addfn.dck
set cdp1 echo, print, wiring=soap

d ar 1000
go

; check if programed stop because an error is detected
if not prop=01 goto assemble_ok0

echo 
echo *** (assembling error code in AR)
echo

ex ar
goto end

:assemble_ok0

; create the pack source deck with
; - entry point cards 
; - reservation cards 
; - subroutines in symbolic SOAP format

carddeck -q join fortransit/pack_entry_src.txt fortransit/pack_res1.txt fortransit/pack_src.txt as deck_soap.dck 

echo *** 
echo *** Run SOAP assembler
echo *** 

att cdr1 deck_soap.dck
set cdr1 wiring=soap

att cdp1 -n -q fortransit/pack.dck
set cdp1 echo, print, wiring=soap

d ar 1000
go

; check if programed stop because an error is detected
if not prop=01 goto assemble_ok1

echo 
echo *** (assembling error code in AR)
echo

ex ar
goto end

:assemble_ok1

; check if programed stop because normal termination 
if prop=70 if ar=1951 goto assemble_ok2
goto end

:assemble_ok2

; punch availability table to check 
; address that are free

det cdr1
det cdp1

; attach dummy file so puch will not fail 
att cdp1 nul

d ar 1900
go



:end

