Цитата Сообщение от Hunta Посмотреть сообщение
Можно поподробней?
Потому как сильные сомнения. Я на PDP-2011 запустил и RT-11 и RSX-11, причём с генерацией систем - вряд это это дело было возможным, если бы такое количество и таких серьёзных ошибок было.

- - - Добавлено - - -

Вот кусок кода
Код:
   alu_output_signext <= alu_output(7) & alu_output(7) & alu_output(7) & alu_output(7) & alu_output(7) & alu_output(7) & alu_output(7) & alu_output(7) & alu_output(7 downto 0);
...
if ir(15 downto 12) = "1001" then                             -- movb? movb needs to sign extend if the result is moved to a register
   rbus_d <= alu_output_signext;
elsif have_mtps = 1 and ir_mfps = '1' then                    -- mfps needs sign extend if the result is moved to a register
  rbus_d <= alu_output_signext;
- - - Добавлено - - -

Причём этот кусок кода есть во всех четырёх версиях кода, которые у меня есть, начиная с самого раннего - от 13.09.2014 года.
Согласен, накосячил при исправлении байтовых команд.
Сделал по другому. Во всех выражениях state_mtpa, state_dstХ и state_srcХ изменил следующим образом:
Код:
                  when state_dst1 =>
                     dest_addr <= addr;
--- Ynicky ---				alu_input <= datain;
					 if ir_byte = '1' then
						if addr(0) = '1' then
							alu_input <= datain(15 downto 8) & datain(15 downto 8);
						else
							alu_input <= datain;
						end if;
					 else alu_input <= datain;
					 end if;
-----------------------------------------------------
                     state <= pdststate;

                  when state_src1 =>
--- Ynicky ---             alus_input <= datain;
					 if ir_byte = '1' then
					 	if addr(0) = '1' then
							alus_input <= datain(15) & datain(15) & datain(15) & datain(15) & datain(15) & datain(15) & datain(15) & datain(15) & datain(15 downto 8);
					 	else alus_input <= datain(7) & datain(7) & datain(7) & datain(7) & datain(7) & datain(7) & datain(7) & datain(7) & datain(7 downto 0);
						end if;
					 else alus_input <= datain;
					 end if;
-----------------------------------------------------
                     state <= psrcstate;
                     rbus_ix <= ir(2 downto 0);