trunk/src/emu/machine/mcf5206e.c
| r22712 | r22713 | |
| 405 | 405 | invalidlog("%s: invalid PPDDR_r %d\n", this->machine().describe_context(), offset); |
| 406 | 406 | return 0; |
| 407 | 407 | case 1: // '$1C5' |
| 408 | | debuglog("%s: PPDDR_r\n", this->machine().describe_context()); |
| 408 | debuglog("%s: (Port A Data Direction Register) PPDDR_r\n", this->machine().describe_context()); |
| 409 | 409 | return m_PPDDR; |
| 410 | 410 | } |
| 411 | 411 | |
| r22712 | r22713 | |
| 423 | 423 | break; |
| 424 | 424 | case 1: // '$1C5' |
| 425 | 425 | m_PPDDR = data; |
| 426 | | debuglog("%s: PPDDR_w %02x\n", this->machine().describe_context(), data); |
| 426 | debuglog("%s: (Port A Data Direction Register) PPDDR_w %02x\n", this->machine().describe_context(), data); |
| 427 | 427 | break; |
| 428 | 428 | } |
| 429 | 429 | } |
| r22712 | r22713 | |
| 438 | 438 | invalidlog("%s: invalid PPDAT_r %d\n", this->machine().describe_context(), offset); |
| 439 | 439 | return 0; |
| 440 | 440 | case 1: // '$1C9' |
| 441 | | debuglog("%s: PPDAT_r\n", this->machine().describe_context()); |
| 441 | debuglog("%s: (Port A Data Register) PPDAT_r\n", this->machine().describe_context()); |
| 442 | 442 | return m_PPDAT; // should use a callback. |
| 443 | 443 | } |
| 444 | 444 | |
| r22712 | r22713 | |
| 456 | 456 | break; |
| 457 | 457 | case 1: // '$1C9' |
| 458 | 458 | m_PPDAT = data; // should use a callback. |
| 459 | | debuglog("%s: PPDAT_w %02x\n", this->machine().describe_context(), data); |
| 459 | debuglog("%s: (Port A Data Register) PPDAT_w %02x\n", this->machine().describe_context(), data); |
| 460 | 460 | break; |
| 461 | 461 | } |
| 462 | 462 | |
| r22712 | r22713 | |
| 468 | 468 | switch (offset) |
| 469 | 469 | { |
| 470 | 470 | case 0: |
| 471 | | debuglog("%s: MBCR_r\n", this->machine().describe_context()); |
| 471 | debuglog("%s: (M-Bus Control Register) MBCR_r\n", this->machine().describe_context()); |
| 472 | 472 | return m_MBCR; |
| 473 | 473 | case 1: |
| 474 | 474 | case 2: |
| r22712 | r22713 | |
| 486 | 486 | { |
| 487 | 487 | case 0: |
| 488 | 488 | m_MBCR = data; |
| 489 | | debuglog("%s: MBCR_w %02x\n", this->machine().describe_context(), data); |
| 489 | debuglog("%s: (M-Bus Control Register) MBCR_w %02x\n", this->machine().describe_context(), data); |
| 490 | 490 | break; |
| 491 | 491 | case 1: |
| 492 | 492 | case 2: |
| r22712 | r22713 | |
| 502 | 502 | switch (offset) |
| 503 | 503 | { |
| 504 | 504 | case 0: |
| 505 | | debuglog("%s: MFDR_r\n", this->machine().describe_context()); |
| 505 | debuglog("%s: (M-Bus Frequency Divider Register) MFDR_r\n", this->machine().describe_context()); |
| 506 | 506 | return m_MFDR; |
| 507 | 507 | case 1: |
| 508 | 508 | case 2: |
| r22712 | r22713 | |
| 520 | 520 | { |
| 521 | 521 | case 0: |
| 522 | 522 | m_MFDR = data; |
| 523 | | debuglog("%s: MFDR_w %02x\n", this->machine().describe_context(), data); |
| 523 | debuglog("%s: (M-Bus Frequency Divider Register) MFDR_w %02x\n", this->machine().describe_context(), data); |
| 524 | 524 | break; |
| 525 | 525 | case 1: |
| 526 | 526 | case 2: |
| r22712 | r22713 | |
| 545 | 545 | case 0: |
| 546 | 546 | { |
| 547 | 547 | hack ^= (machine().rand()&0xff); |
| 548 | | debuglog("%s: MBSR_r\n", this->machine().describe_context()); |
| 548 | debuglog("%s: (M-Bus Status Register) MBSR_r\n", this->machine().describe_context()); |
| 549 | 549 | return m_MBSR ^ hack; // will loop on this after a while |
| 550 | 550 | } |
| 551 | 551 | case 1: |
| r22712 | r22713 | |
| 564 | 564 | { |
| 565 | 565 | case 0: |
| 566 | 566 | m_MBSR = data; |
| 567 | | debuglog("%s: MBSR_w %02x\n", this->machine().describe_context(), data); |
| 567 | debuglog("%s: (M-Bus Status Register) MBSR_w %02x\n", this->machine().describe_context(), data); |
| 568 | 568 | break; |
| 569 | 569 | case 1: |
| 570 | 570 | case 2: |
| r22712 | r22713 | |
| 587 | 587 | case 0: |
| 588 | 588 | { |
| 589 | 589 | hack ^= (machine().rand()&0xff); |
| 590 | | debuglog("%s: MBDR_r\n", this->machine().describe_context()); |
| 590 | debuglog("%s: (M-Bus Data I/O Register) MBDR_r\n", this->machine().describe_context()); |
| 591 | 591 | return m_MBDR ^ hack; |
| 592 | 592 | } |
| 593 | 593 | case 1: |
| r22712 | r22713 | |
| 606 | 606 | { |
| 607 | 607 | case 0: |
| 608 | 608 | m_MBDR = data; |
| 609 | | debuglog("%s: MBDR_w %02x\n", this->machine().describe_context(), data); |
| 609 | debuglog("%s: (M-Bus Data I/O Register) MBDR_w %02x\n", this->machine().describe_context(), data); |
| 610 | 610 | break; |
| 611 | 611 | case 1: |
| 612 | 612 | case 2: |
| r22712 | r22713 | |
| 624 | 624 | switch (offset) |
| 625 | 625 | { |
| 626 | 626 | case 1: |
| 627 | | debuglog("%s: IMR_r %04x\n", this->machine().describe_context(), mem_mask); |
| 627 | debuglog("%s: (Interrupt Mask Register) IMR_r %04x\n", this->machine().describe_context(), mem_mask); |
| 628 | 628 | return m_IMR; |
| 629 | 629 | case 0: |
| 630 | 630 | invalidlog("%s: invalid IMR_r %d %04x\n", this->machine().describe_context(), offset, mem_mask); |
| r22712 | r22713 | |
| 640 | 640 | { |
| 641 | 641 | case 1: |
| 642 | 642 | COMBINE_DATA(&m_IMR); |
| 643 | | debuglog("%s: IMR_w %04x %04x\n", this->machine().describe_context(), data, mem_mask); |
| 643 | debuglog("%s: (Interrupt Mask Register) IMR_w %04x %04x\n", this->machine().describe_context(), data, mem_mask); |
| 644 | 644 | break; |
| 645 | 645 | case 0: |
| 646 | 646 | invalidlog("%s: invalid IMR_w %d, %04x %04x\n", this->machine().describe_context(), offset, data, mem_mask); |
| r22712 | r22713 | |
| 681 | 681 | switch (offset) |
| 682 | 682 | { |
| 683 | 683 | case 0: |
| 684 | | debuglogtimer("%s: TMR1_r %04x\n", this->machine().describe_context(), mem_mask); |
| 684 | debuglogtimer("%s: (Timer 1 Mode Register) TMR1_r %04x\n", this->machine().describe_context(), mem_mask); |
| 685 | 685 | return m_TMR1; |
| 686 | 686 | case 1: |
| 687 | 687 | invalidlog("%s: invalid TMR1_r %d %04x\n", this->machine().describe_context(), offset, mem_mask); |
| r22712 | r22713 | |
| 697 | 697 | { |
| 698 | 698 | case 0: |
| 699 | 699 | COMBINE_DATA(&m_TMR1); |
| 700 | | debuglogtimer("%s: TMR1_w %04x %04x\n", this->machine().describe_context(), data, mem_mask); |
| 700 | debuglogtimer("%s: (Timer 1 Mode Register) TMR1_w %04x %04x\n", this->machine().describe_context(), data, mem_mask); |
| 701 | 701 | |
| 702 | 702 | debuglogtimer(" (Prescale) PS : %02x (Capture Edge/Interrupt) CE : %01x (Output Mode) OM : %01x (Output Reference Interrupt En) ORI : %01x Free Run (FRR) : %01x Input Clock Source (ICLK) : %01x (Reset Timer) RST : %01x \n", (m_TMR1 & 0xff00)>>8, (m_TMR1 & 0x00c0)>>6, (m_TMR1 & 0x0020)>>5, (m_TMR1 & 0x0010)>>4, (m_TMR1 & 0x0008)>>3, (m_TMR1 & 0x0006)>>1, (m_TMR1 & 0x0001)>>0); |
| 703 | 703 | |
| r22712 | r22713 | |
| 724 | 724 | switch (offset) |
| 725 | 725 | { |
| 726 | 726 | case 0: |
| 727 | | debuglogtimer("%s: TRR1_r %04x\n", this->machine().describe_context(), mem_mask); |
| 727 | debuglogtimer("%s: (Timer 1 Reference Register) TRR1_r %04x\n", this->machine().describe_context(), mem_mask); |
| 728 | 728 | return m_TRR1; |
| 729 | 729 | case 1: |
| 730 | 730 | invalidlog("%s: invalid TRR1_r %d %04x\n", this->machine().describe_context(), offset, mem_mask); |
| r22712 | r22713 | |
| 740 | 740 | { |
| 741 | 741 | case 0: |
| 742 | 742 | COMBINE_DATA(&m_TRR1); |
| 743 | | debuglogtimer("%s: TRR1_w %04x %04x\n", this->machine().describe_context(), data, mem_mask); |
| 743 | debuglogtimer("%s: (Timer 1 Reference Register) TRR1_w %04x %04x\n", this->machine().describe_context(), data, mem_mask); |
| 744 | 744 | break; |
| 745 | 745 | case 1: |
| 746 | 746 | debuglog("%s: invalid TRR1_w %d, %04x %04x\n", this->machine().describe_context(), offset, data, mem_mask); |
| r22712 | r22713 | |
| 790 | 790 | switch (offset) |
| 791 | 791 | { |
| 792 | 792 | case 0: |
| 793 | | debuglogtimer("%s: TCN1_r %04x\n", this->machine().describe_context(), mem_mask); |
| 793 | debuglogtimer("%s: (Timer 1 Counter) TCN1_r %04x\n", this->machine().describe_context(), mem_mask); |
| 794 | 794 | // return 0x9c40; |
| 795 | 795 | return 0x8ca0 -1;// m_TCN1; // this should be the counter, code has a hardcoded >= check against 8ca0. |
| 796 | 796 | case 1: |
| r22712 | r22713 | |
| 807 | 807 | { |
| 808 | 808 | case 0: |
| 809 | 809 | COMBINE_DATA(&m_TCN1); |
| 810 | | debuglogtimer("%s: TCN1_w %04x %04x\n", this->machine().describe_context(), data, mem_mask); |
| 810 | debuglogtimer("%s: (Timer 1 Counter) TCN1_w %04x %04x\n", this->machine().describe_context(), data, mem_mask); |
| 811 | 811 | break; |
| 812 | 812 | case 1: |
| 813 | 813 | invalidlog("%s: invalid TCN1_w %d, %04x %04x\n", this->machine().describe_context(), offset, data, mem_mask); |