Skip to content

Commit

Permalink
I650: Update IBM 650 simulator to Release 4
Browse files Browse the repository at this point in the history
- Integration with updated sim_card API
- Addition of MT (Mag Tape) device
- Addition of DSK (Disk) device
- Build time simulator test
  • Loading branch information
Roberto Sancho Villa authored and markpizz committed May 15, 2020
1 parent 275cc41 commit 0802716
Show file tree
Hide file tree
Showing 69 changed files with 22,547 additions and 439 deletions.
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,6 @@
*.tap binary
*.dsk binary
*.vhd binary
*.crd binary
sim_rev.h export-subst

2 changes: 1 addition & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ env:
- SIM="microvax3100m80 vaxstation4000vlc infoserver1000 nova eclipse hp2100 hp3000 i1401 i1620 s3 altair altairz80 gri i7094 ibm1130"
- SIM="id16 id32 sds lgp h316 cdc1700 swtp6800mp-a swtp6800mp-a2 tx-0 ssem b5500 isys8010 isys8020 isys8030 isys8024"
- SIM="besm6 imds-210 imds-220 imds-225 imds-230 imds-800 imds-810"
- SIM="scelbi 3b2 i701 i704 i7010 i7070 i7080 i7090 sigma uc15"
- SIM="scelbi 3b2 i701 i704 i7010 i7070 i7080 i7090 sigma uc15 i650"
sudo: required
install: sh -ex .travis/deps.sh
script: make $SIM
Expand Down
207 changes: 207 additions & 0 deletions I650/650_demo_all.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,207 @@

; demo all .ini scripts

cd sw

set console -n log=console.txt
set debug -q stdout
set debug -q -n debug.txt
set cpu debug=cmd;data;detail
set mt debug=cmd;data;detail;exp
set dsk debug=cmd;data;detail;exp

; uncomment any of them to simulate ibm 650 real speed
; set throttle 11k
; set throttle 55/5

echo
echo ===========================================================
echo test build_soap_from_source.ini
echo ===========================================================
echo generates soap assembly listing
echo ===========================================================
echo

do build_soap_from_source.ini
set env -P "Press Enter to continue . . . " dummy=cont

echo
echo ===========================================================
echo test run_soap.ini
echo ===========================================================
echo example from manual
echo should print 0100 lines
echo ===========================================================
echo

do run_soap.ini soap/soap_example_1_src.txt 1000
set env -P "Press Enter to continue . . . " dummy=cont

echo
echo ===========================================================
echo test build_soap4_tap_lib.ini
echo ===========================================================
echo generate a library tape, assemble and run a prog that calls it
echo should display 38 0100 up to 38 6600
echo then assemble example
echo ===========================================================
echo

; build_soap4_tap_lib.ini calls run_soap4.ini, so no need to test it again
do build_soap4_tap_lib.ini
set env -P "Press Enter to continue . . . " dummy=cont

echo
echo ===========================================================
echo test build_ssoap_ramac_from_decks.ini
echo ===========================================================
echo builds supersoap on ramac disk, then assemble example prog
echo ===========================================================
echo

do build_ssoap_ramac_from_decks.ini
set env -P "Press Enter to continue . . . " dummy=cont

echo
echo ===========================================================
echo test assemble ssoap from source
echo ===========================================================
echo assemble original supersoap source
echo ===========================================================
echo

do run_supersoap_ramac.ini supersoap/ssoap_main_core_src.txt
set env -P "Press Enter to continue . . . " dummy=cont

echo
echo ===========================================================
echo test run_fds.ini
echo ===========================================================
echo generates 9 lines (numberes 1-9) with 3 colums of numbers
echo integer (1..9), float (1..9), sqrt (1..9)
echo last line is: 00 0000 0009 50 9000 0000 50 3000 0000
echo ===========================================================
echo

do run_fds.ini fds\example.txt
set env -P "Press Enter to continue . . . " dummy=cont

echo
echo ===========================================================
echo test run_ra.ini
echo ===========================================================
echo regional assembler assembles and run aprog to list on one column 5-word cards
echo listing is one column, words from 0900-0925, some 1960, 0990,
echo more 1960s, 0401-0411. echo last line is: 0411 00 0000 0900
echo ===========================================================
echo

do run_ra.ini regional\print_five_field_ctrl_cards.txt regional\print_five_field_src.txt 0900 deck_in.dck
set env -P "Press Enter to continue . . . " dummy=cont

echo
echo ===========================================================
echo build_is_from_decks.ini
echo ===========================================================
echo build is from source deck
echo ===========================================================
echo

do build_is_from_decks.ini ntr lbox
set env -P "Press Enter to continue . . . " dummy=cont

echo
echo ===========================================================
echo test run_is.ini
echo ===========================================================
echo sieve of eratosthenes - print prime numbers < 50 (last one is 47)
echo ===========================================================
echo

do run_is.ini bell/is_example_1_src.txt
set env -P "Press Enter to continue . . . " dummy=cont

echo
echo ===========================================================
echo test run_it.ini
echo ===========================================================
echo example from manual
echo should print one line: 200020005 6400000051 100050005 11
echo ===========================================================
echo

do run_it.ini it/it_example_1_src.txt it/it_example_1_data.txt
set env -P "Press Enter to continue . . . " dummy=cont

echo
echo ===========================================================
echo test run_it.ini
echo ===========================================================
echo sieve of eratosthenes - print prime numbers < 50 (last one is 47)
echo ===========================================================
echo


do run_it.ini it/it_example_2_src.txt nul
set env -P "Press Enter to continue . . . " dummy=cont

echo
echo ===========================================================
echo test build_fortransit_pack.ini
echo ===========================================================
echo build fortransit funcion packs
echo ===========================================================
echo

do build_fortransit_pack.ini
set env -P "Press Enter to continue . . . " dummy=cont

echo
echo ===========================================================
echo test run_fortransit.ini
echo ===========================================================
echo example from manual - matrix multiplication
echo ===========================================================
echo

do run_fortransit.ini fortransit/fortransit_example_2_src.txt fortransit/fortransit_example_2_data.txt
set env -P "Press Enter to continue . . . " dummy=cont

echo
echo ===========================================================
echo test run_fortransit.ini
echo ===========================================================
echo sieve of eratosthenes - print prime numbers < 50 (last one is 47)
echo ===========================================================
echo

do run_fortransit.ini fortransit/fortransit_example_1_src.txt nul
set env -P "Press Enter to continue . . . " dummy=cont

echo
echo ===========================================================
echo test run_fortransit.ini
echo ===========================================================
echo test fortran functions (each one identified by a 1111 to 9999)
echo ===========================================================
echo

do run_fortransit.ini fortransit/fortransit_example_4_src.txt
set env -P "Press Enter to continue . . . " dummy=cont

echo
echo ===========================================================
echo test run_fortransit.ini
echo ===========================================================
echo list a fortran graphic!
echo ===========================================================
echo

do run_fortransit.ini fortransit/fortransit_example_5_src.txt
set env -P "Press Enter to continue . . . " dummy=cont

quit

goto end

:end
48 changes: 0 additions & 48 deletions I650/650_test.ini

This file was deleted.

Loading

0 comments on commit 0802716

Please sign in to comment.