+ rom_ram_nxt <= rom_ram;
+
+-- if (s_reset = RESET_VALUE) then
+-- rom_ram_nxt <= RAM_USE;
+-- instr_r_addr_nxt <= (others => '0');
+-- end if;
+
+ case rom_ram is
+ when ROM_USE =>
+ instruction <= instr_rd_data_rom;
+ when RAM_USE =>
+ instruction <= instr_rd_data;
+ when others =>
+ instruction <= x"F0000000";
+ end case;
+ instr_pc := std_logic_vector(unsigned(instr_r_addr) + 1);
+ instr_r_addr_nxt <= instr_pc;
+
+ if (instr_pc = x"0000007f" and rom_ram = ROM_USE) then
+ rom_ram_nxt <= RAM_USE;
+ -- TODO: wenn genau auf adresse 0 im RAM ein br steht kracht es... :/
+ instr_r_addr_nxt <= x"00000000";
+ end if;