trunk/src/devices/cpu/nec/necinstr.inc
| r250181 | r250182 | |
| 571 | 571 | case 0x6f: CLK(2); if (c) do { i_outsw(); c--; } while (c>0); Wreg(CW)=c; break; |
| 572 | 572 | case 0xa4: CLK(2); if (c) do { i_movsb(); c--; } while (c>0); Wreg(CW)=c; break; |
| 573 | 573 | case 0xa5: CLK(2); if (c) do { i_movsw(); c--; } while (c>0); Wreg(CW)=c; break; |
| 574 | | case 0xa6: CLK(2); if (c) do { i_cmpsb(); c--; } while (c>0 && ZF==0); Wreg(CW)=c; break; |
| 575 | | case 0xa7: CLK(2); if (c) do { i_cmpsw(); c--; } while (c>0 && ZF==0); Wreg(CW)=c; break; |
| 574 | case 0xa6: CLK(2); if (c) do { i_cmpsb(); c--; } while (c>0 && !ZF); Wreg(CW)=c; break; |
| 575 | case 0xa7: CLK(2); if (c) do { i_cmpsw(); c--; } while (c>0 && !ZF); Wreg(CW)=c; break; |
| 576 | 576 | case 0xaa: CLK(2); if (c) do { i_stosb(); c--; } while (c>0); Wreg(CW)=c; break; |
| 577 | 577 | case 0xab: CLK(2); if (c) do { i_stosw(); c--; } while (c>0); Wreg(CW)=c; break; |
| 578 | 578 | case 0xac: CLK(2); if (c) do { i_lodsb(); c--; } while (c>0); Wreg(CW)=c; break; |
| 579 | 579 | case 0xad: CLK(2); if (c) do { i_lodsw(); c--; } while (c>0); Wreg(CW)=c; break; |
| 580 | | case 0xae: CLK(2); if (c) do { i_scasb(); c--; } while (c>0 && ZF==0); Wreg(CW)=c; break; |
| 581 | | case 0xaf: CLK(2); if (c) do { i_scasw(); c--; } while (c>0 && ZF==0); Wreg(CW)=c; break; |
| 580 | case 0xae: CLK(2); if (c) do { i_scasb(); c--; } while (c>0 && !ZF); Wreg(CW)=c; break; |
| 581 | case 0xaf: CLK(2); if (c) do { i_scasw(); c--; } while (c>0 && !ZF); Wreg(CW)=c; break; |
| 582 | 582 | default: logerror("%06x: REPNE invalid\n",PC()); (this->*s_nec_instruction[next])(); |
| 583 | 583 | } |
| 584 | 584 | m_seg_prefix=FALSE; |
| r250181 | r250182 | |
| 598 | 598 | case 0x6f: CLK(2); if (c) do { i_outsw(); c--; } while (c>0); Wreg(CW)=c; break; |
| 599 | 599 | case 0xa4: CLK(2); if (c) do { i_movsb(); c--; } while (c>0); Wreg(CW)=c; break; |
| 600 | 600 | case 0xa5: CLK(2); if (c) do { i_movsw(); c--; } while (c>0); Wreg(CW)=c; break; |
| 601 | | case 0xa6: CLK(2); if (c) do { i_cmpsb(); c--; } while (c>0 && ZF==1); Wreg(CW)=c; break; |
| 602 | | case 0xa7: CLK(2); if (c) do { i_cmpsw(); c--; } while (c>0 && ZF==1); Wreg(CW)=c; break; |
| 601 | case 0xa6: CLK(2); if (c) do { i_cmpsb(); c--; } while (c>0 && ZF); Wreg(CW)=c; break; |
| 602 | case 0xa7: CLK(2); if (c) do { i_cmpsw(); c--; } while (c>0 && ZF); Wreg(CW)=c; break; |
| 603 | 603 | case 0xaa: CLK(2); if (c) do { i_stosb(); c--; } while (c>0); Wreg(CW)=c; break; |
| 604 | 604 | case 0xab: CLK(2); if (c) do { i_stosw(); c--; } while (c>0); Wreg(CW)=c; break; |
| 605 | 605 | case 0xac: CLK(2); if (c) do { i_lodsb(); c--; } while (c>0); Wreg(CW)=c; break; |
| 606 | 606 | case 0xad: CLK(2); if (c) do { i_lodsw(); c--; } while (c>0); Wreg(CW)=c; break; |
| 607 | | case 0xae: CLK(2); if (c) do { i_scasb(); c--; } while (c>0 && ZF==1); Wreg(CW)=c; break; |
| 608 | | case 0xaf: CLK(2); if (c) do { i_scasw(); c--; } while (c>0 && ZF==1); Wreg(CW)=c; break; |
| 607 | case 0xae: CLK(2); if (c) do { i_scasb(); c--; } while (c>0 && ZF); Wreg(CW)=c; break; |
| 608 | case 0xaf: CLK(2); if (c) do { i_scasw(); c--; } while (c>0 && ZF); Wreg(CW)=c; break; |
| 609 | 609 | default: logerror("%06x: REPE invalid\n",PC()); (this->*s_nec_instruction[next])(); |
| 610 | 610 | } |
| 611 | 611 | m_seg_prefix=FALSE; |
trunk/src/devices/sound/tms5110.cpp
| r250181 | r250182 | |
| 393 | 393 | * Old frame was unvoiced, new is voiced |
| 394 | 394 | * Old frame was unvoiced, new frame is silence/zero energy (non-existent on tms51xx rev D and F (present and working on tms52xx, present but buggy on tms51xx rev A and B)) |
| 395 | 395 | */ |
| 396 | | if ( ((OLD_FRAME_UNVOICED_FLAG == 0) && (NEW_FRAME_UNVOICED_FLAG == 1)) |
| 397 | | || ((OLD_FRAME_UNVOICED_FLAG == 1) && (NEW_FRAME_UNVOICED_FLAG == 0)) |
| 398 | | || ((OLD_FRAME_SILENCE_FLAG == 1) && (NEW_FRAME_SILENCE_FLAG == 0)) ) |
| 396 | if ( ((OLD_FRAME_UNVOICED_FLAG == 0) && NEW_FRAME_UNVOICED_FLAG) |
| 397 | || ((OLD_FRAME_UNVOICED_FLAG == 1) && !NEW_FRAME_UNVOICED_FLAG) |
| 398 | || ((OLD_FRAME_SILENCE_FLAG == 1) && !NEW_FRAME_SILENCE_FLAG) ) |
| 399 | 399 | //|| ((m_inhibit == 1) && (OLD_FRAME_UNVOICED_FLAG == 1) && (NEW_FRAME_SILENCE_FLAG == 1)) ) //TMS51xx INTERP BUG1 |
| 400 | 400 | //|| ((OLD_FRAME_UNVOICED_FLAG == 1) && (NEW_FRAME_SILENCE_FLAG == 1)) ) |
| 401 | 401 | m_inhibit = 1; |
trunk/src/devices/sound/tms5220.cpp
| r250181 | r250182 | |
| 788 | 788 | * Old frame was unvoiced, new is voiced |
| 789 | 789 | * Old frame was unvoiced, new frame is silence/zero energy (non-existent on tms51xx rev D and F (present and working on tms52xx, present but buggy on tms51xx rev A and B)) |
| 790 | 790 | */ |
| 791 | | if ( ((OLD_FRAME_UNVOICED_FLAG == 0) && (NEW_FRAME_UNVOICED_FLAG == 1)) |
| 792 | | || ((OLD_FRAME_UNVOICED_FLAG == 1) && (NEW_FRAME_UNVOICED_FLAG == 0)) |
| 793 | | || ((OLD_FRAME_SILENCE_FLAG == 1) && (NEW_FRAME_SILENCE_FLAG == 0)) |
| 791 | if ( ((OLD_FRAME_UNVOICED_FLAG == 0) && NEW_FRAME_UNVOICED_FLAG) |
| 792 | || ((OLD_FRAME_UNVOICED_FLAG == 1) && !NEW_FRAME_UNVOICED_FLAG) |
| 793 | || ((OLD_FRAME_SILENCE_FLAG == 1) && !NEW_FRAME_SILENCE_FLAG) |
| 794 | 794 | //|| ((m_inhibit == 1) && (OLD_FRAME_UNVOICED_FLAG == 1) && (NEW_FRAME_SILENCE_FLAG == 1)) ) //TMS51xx INTERP BUG1 |
| 795 | | || ((OLD_FRAME_UNVOICED_FLAG == 1) && (NEW_FRAME_SILENCE_FLAG == 1)) ) |
| 795 | || ((OLD_FRAME_UNVOICED_FLAG == 1) && NEW_FRAME_SILENCE_FLAG) ) |
| 796 | 796 | m_inhibit = 1; |
| 797 | 797 | else // normal frame, normal interpolation |
| 798 | 798 | m_inhibit = 0; |
trunk/src/mame/machine/namcos2.cpp
| r250181 | r250182 | |
| 674 | 674 | INTERRUPT_GEN_MEMBER(namcos2_shared_state::namcos2_68k_gpu_vblank) |
| 675 | 675 | { |
| 676 | 676 | /* only used by namcos21 */ |
| 677 | | int scanline = get_posirq_scanline(); |
| 678 | | scanline = 0x50+0x89; /* HACK for Winning Run */ |
| 677 | //int scanline = get_posirq_scanline(); |
| 678 | INT32 scanline = 0x50+0x89; /* HACK for Winning Run */ |
| 679 | 679 | |
| 680 | 680 | //printf( "namcos2_68k_gpu_vblank(%d)\n",m_68k_gpu_C148[NAMCOS2_C148_POSIRQ] ); |
| 681 | 681 | adjust_posirq_timer(scanline); |