diff --git a/lib/CPUs/MIPS/src/core/mips_types.vhd b/lib/CPUs/MIPS/src/core/mips_types.vhd index d861c41..9f6edb8 100644 --- a/lib/CPUs/MIPS/src/core/mips_types.vhd +++ b/lib/CPUs/MIPS/src/core/mips_types.vhd @@ -585,6 +585,9 @@ package body mips_types is elsif word2_en = '1' then sign := signed and x(15); result := (31 downto 16 => sign) & x(15 downto 0); + elsif word4_en = '1' then + sign := signed and x(7); + result := (31 downto 8 => sign) & x(7 downto 0); else sign := signed and x(7); result := (31 downto 8 => sign) & x(7 downto 0);