simh-testsetgenerator/I650/sw/build_fortransit_pack.ini
Roberto Sancho Villa 08027162ca I650: Update IBM 650 simulator to Release 4
- Integration with updated sim_card API
- Addition of MT (Mag Tape) device
- Addition of DSK (Disk) device
- Build time simulator test
2020-05-15 05:57:01 -07:00

107 lines
1.9 KiB
INI

; 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
set cdr1 wiring=8word
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 -q 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 -q 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) && (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