B flag: fixed elsewhere
Information:
Type :: BUG
Status :: OPENED
Assigned to ::
nobody
Description:
It would be great if you could update this repository with fixes made by the FPGAArcade and PaceDev projects.
The most recent version I'm aware of is Mark McDougall's fix to the B flag handling: his version is found at https://svn.pacedev.net/repos/pace/sw/src/component/cpu/t65/
(ignore the invalid certificate) and incorporates other fixes from FPGAArcade.
Two 'if' clauses from line 374 in T65.vhd are replaced with
{{{
-- B=1 always on the 6502
P(Flag_B) <= '1';
if IR = "00000000" and RstCycle = '0' and (NMICycle = '1' or IRQCycle = '1') then
if MCycle = "011" then
-- B=0 in *copy* of P pushed onto the stack
P(Flag_B) <= '0';
elsif MCycle = "100" then
P(Flag_I) <= '1';
end if;
end if;
}}}
Thanks!
Comments:
No comments yet...
Post a comment:
Login to post comments!
