With the latest version I have the following problem: if an interrupt is executed (int_pending_s in decoder1.vhd) when a JMP instruction is being fetched I get the following situation: 1) fetch 1st byte of jump ; I see opc_inj_int_s going true 2) refetch 1st byte of jump --> why???? 3) fetch at address 4 BUT IT HAD TO BE THREE!!!! Help me please
Bug report is confirmed: When code is executed from Memory Bank 1, the injected CALL triggered by the interrupt does not always vector to address 3. This happens because of a bus collision between the decoder unit and the db_bus unit. The resulting address can be either:
The problem was introduced in release 0.6 BETA when the glitch on PCH was fixed.
Fixed in: decoder.vhd 1.21 New regression test: int_on_mb1 Fix will be included in next release.