mirror of
https://github.com/hoglet67/AtomBusMon.git
synced 2024-09-27 18:56:28 +00:00
65C02: Implement single cycle NOPs
Change-Id: I9e37b42dcce4ee57359e5d3298f38f2eb70663af
This commit is contained in:
parent
0aa58bb25c
commit
340f7e33f9
@ -979,12 +979,17 @@ calcTheOpcode: process(clk)
|
|||||||
|
|
||||||
-- Determine the next cpu cycle. After the last cycle we always
|
-- Determine the next cpu cycle. After the last cycle we always
|
||||||
-- go to opcodeFetch to get the next opcode.
|
-- go to opcodeFetch to get the next opcode.
|
||||||
calcNextCpuCycle: process(theCpuCycle, opcInfo, theOpcode, indexOut, T, N, V, C, Z)
|
calcNextCpuCycle: process(theCpuCycle, opcInfo, theOpcode, nextOpcode, indexOut, T, N, V, C, Z)
|
||||||
begin
|
begin
|
||||||
nextCpuCycle <= opcodeFetch;
|
nextCpuCycle <= opcodeFetch;
|
||||||
|
|
||||||
case theCpuCycle is
|
case theCpuCycle is
|
||||||
when opcodeFetch => nextCpuCycle <= cycle2;
|
when opcodeFetch =>
|
||||||
|
if nextOpcode(1 downto 0) = "11" then
|
||||||
|
nextCpuCycle <= opcodeFetch;
|
||||||
|
else
|
||||||
|
nextCpuCycle <= cycle2;
|
||||||
|
end if;
|
||||||
when cycle2 => if opcInfo(opcBranch) = '1' then
|
when cycle2 => if opcInfo(opcBranch) = '1' then
|
||||||
if (N = theOpcode(5) and theOpcode(7 downto 6) = "00")
|
if (N = theOpcode(5) and theOpcode(7 downto 6) = "00")
|
||||||
or (V = theOpcode(5) and theOpcode(7 downto 6) = "01")
|
or (V = theOpcode(5) and theOpcode(7 downto 6) = "01")
|
||||||
|
Loading…
Reference in New Issue
Block a user