mirror of
https://github.com/holub/mame
synced 2025-10-06 17:08:28 +03:00
6502: update prev commmit (moves P |= F_I; to STATE_RESET instead of device_reset) (nw)
This commit is contained in:
parent
6374f364c2
commit
5af23eec34
@ -9,6 +9,8 @@
|
|||||||
TODO:
|
TODO:
|
||||||
- device_start SP = 0x01bd; can't be right. At power-on, SP = 0(0x100)
|
- device_start SP = 0x01bd; can't be right. At power-on, SP = 0(0x100)
|
||||||
and at RESET, it is decremented 3 times without writing to the stack
|
and at RESET, it is decremented 3 times without writing to the stack
|
||||||
|
see: https://www.pagetable.com/?p=410
|
||||||
|
In other words, the first couple of cycles of STATE_RESET aren't emulated
|
||||||
|
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
@ -116,7 +118,6 @@ void m6502_device::init()
|
|||||||
|
|
||||||
void m6502_device::device_reset()
|
void m6502_device::device_reset()
|
||||||
{
|
{
|
||||||
P |= F_I;
|
|
||||||
inst_state = STATE_RESET;
|
inst_state = STATE_RESET;
|
||||||
inst_substate = 0;
|
inst_substate = 0;
|
||||||
inst_state_base = 0;
|
inst_state_base = 0;
|
||||||
|
@ -97,7 +97,7 @@ vbl_zpg
|
|||||||
|
|
||||||
# exceptions
|
# exceptions
|
||||||
reset_16
|
reset_16
|
||||||
PC = read_arg(0xfff1);
|
P |= F_I; PC = read_arg(0xfff1);
|
||||||
PC = set_h(PC, read_arg(0xfff0));
|
PC = set_h(PC, read_arg(0xfff0));
|
||||||
prefetch();
|
prefetch();
|
||||||
inst_state = -1;
|
inst_state = -1;
|
||||||
|
@ -1218,7 +1218,7 @@ tya_imp
|
|||||||
|
|
||||||
# exceptions
|
# exceptions
|
||||||
reset
|
reset
|
||||||
PC = read_arg(0xfffc);
|
P |= F_I; PC = read_arg(0xfffc);
|
||||||
PC = set_h(PC, read_arg(0xfffd));
|
PC = set_h(PC, read_arg(0xfffd));
|
||||||
prefetch();
|
prefetch();
|
||||||
inst_state = -1;
|
inst_state = -1;
|
||||||
|
@ -114,7 +114,7 @@ jmp_zpi
|
|||||||
prefetch();
|
prefetch();
|
||||||
|
|
||||||
reset740
|
reset740
|
||||||
PC = read_arg(0xfffe);
|
P |= F_I; PC = read_arg(0xfffe);
|
||||||
PC = set_h(PC, read_arg(0xffff));
|
PC = set_h(PC, read_arg(0xffff));
|
||||||
prefetch();
|
prefetch();
|
||||||
inst_state = -1;
|
inst_state = -1;
|
||||||
|
Loading…
Reference in New Issue
Block a user