Fixed the accumulator update logic in all the PDP-10 half-word self-mode instructions, and started work on EXCH, BLT, and MOVE instructions (the BLT is a real odd-ball, and SIMH does some very strange things with the accumulator used by BLT, which we do NOT attempt to replicate; the strangeness is most noticeable when the accumulator is part of the range being transferred)

This commit is contained in:
Jeff 2017-03-01 16:00:48 -08:00 committed by Jeff Parsons
commit e870fd6eec
6 changed files with 373 additions and 279 deletions

View file

@ -2,15 +2,30 @@
"load": 0o100,
"exec": 0o100,
"data": [
0o505040111111, // HRLI 1,111111
0o541040444444, // HRRI 1,444444
0o544100000001, // HLR 2,1
0o504100000001, // HRL 2,1
0o570140000001, // HRRE 3,1
0o530200000002, // HLLE 4,2
0o544240000003, // HLR 5,3
0o504300000004, // HRL 6,4
0o573000000005, // HRRES 0,5
0o533000000006, // HLLES 0,6
0o505040111111, // 000100: HRLI 1,111111
0o541040444444, // 000101: HRRI 1,444444
0o544100000001, // 000102: HLR 2,1
0o504100000001, // 000103: HRL 2,1
0o570140000001, // 000104: HRRE 3,1
0o530200000002, // 000105: HLLE 4,2
0o544240000003, // 000106: HLR 5,3
0o504300000004, // 000107: HRL 6,4
0o573000000005, // 000110: HRRES 0,5
0o533000000006, // 000111: HLLES 0,6
0o541000000010, // 000112: HRRI 0,10
0o251000000017, // 000113: BLT 0,17
//
// 00=000000000010 01=111111444444 02=444444111111 03=777777444444
// 04=444444777777 05=777777777777 06=777777777777 07=000000000000
// 10=000000000010 11=111111444444 12=444444111111 13=777777444444
// 14=444444777777 15=777777777777 16=777777777777 17=000000000000
//
0o577040000002, // 000114: HLRES 1,2
//
// 00=000000000010 01=000000111111 02=777777444444 03=777777444444
// 04=444444777777 05=777777777777 06=777777777777 07=000000000000
// 10=000000000010 11=111111444444 12=444444111111 13=777777444444
// 14=444444777777 15=777777777777 16=777777777777 17=000000000000
//
]
}

View file

@ -8,6 +8,34 @@ dep 106 544240000003
dep 107 504300000004
dep 110 573000000005
dep 111 533000000006
ex -m 100-111
dep 112 541000000010
dep 113 251000000017
dep 114 577040000002
ex -m 100-114
dep pc 100
step 10
step 11
ex 0-17
;
echo Execute the BLT 8 times...
;
step
ex 0-17
step
ex 0-17
step
ex 0-17
step
ex 0-17
step
ex 0-17
step
ex 0-17
step
ex 0-17
step
ex 0-17
;
echo next up: HLRES 1,2
;
step 1
ex 0-17