trunk/src/emu/cpu/upd7810/upd7810.c
| r241719 | r241720 | |
| 709 | 709 | return; |
| 710 | 710 | |
| 711 | 711 | /* check the interrupts in priority sequence */ |
| 712 | if (IRR & INTNMI) |
| 713 | { |
| 714 | /* Nonmaskable interrupt */ |
| 715 | irqline = INPUT_LINE_NMI; |
| 716 | vector = 0x0004; |
| 717 | IRR &= ~INTNMI; |
| 718 | } |
| 719 | else |
| 712 | 720 | if ((IRR & INTFT0) && 0 == (MKL & 0x02)) |
| 713 | 721 | { |
| 714 | 722 | vector = 0x0008; |
| r241719 | r241720 | |
| 1968 | 1976 | { |
| 1969 | 1977 | /* no nested NMIs ? */ |
| 1970 | 1978 | // if (0 == (IRR & INTNMI)) |
| 1971 | | { |
| 1972 | | IRR |= INTNMI; |
| 1973 | | SP--; |
| 1974 | | WM( SP, PSW ); |
| 1975 | | SP--; |
| 1976 | | WM( SP, PCH ); |
| 1977 | | SP--; |
| 1978 | | WM( SP, PCL ); |
| 1979 | | IFF = 0; |
| 1980 | | PSW &= ~(SK|L0|L1); |
| 1981 | | PC = 0x0004; |
| 1982 | | } |
| 1979 | IRR |= INTNMI; |
| 1983 | 1980 | } |
| 1984 | 1981 | else |
| 1985 | 1982 | if (irqline == UPD7810_INTF1) |