trunk/src/mame/machine/pgmprot_igs027a_type1.c
r24601 | r24602 | |
648 | 648 | |
649 | 649 | |
650 | 650 | |
651 | | |
| 651 | // I think the values returned here must be connected to the values written to command 31 on startup |
652 | 652 | // 63/67 are used on startup to get the z80 music at least |
653 | 653 | case 0x63: // used as a read address by the 68k code (related to previous uploaded values like cave?) should point at a table of ~0x80 in size? seems to use values as further pointers? |
654 | 654 | if (m_value0==0x0000) |
r24601 | r24602 | |
667 | 667 | { |
668 | 668 | m_valueresponse = 0x0016faa8; |
669 | 669 | } |
| 670 | else if (m_value0==0x0004) // 2 player demo |
| 671 | { |
| 672 | m_valueresponse = 0x00174416; |
| 673 | } |
670 | 674 | else |
671 | 675 | { |
672 | 676 | printf("unk case x63\n"); |
r24601 | r24602 | |
680 | 684 | { |
681 | 685 | m_valueresponse = 0x00166178; // right for puzzli2 , wrong for puzzli2s, probably calculated from the writes then? |
682 | 686 | } |
| 687 | else if ( (m_value0==0x0004) ) // 2 player demo |
| 688 | { |
| 689 | m_valueresponse = 0x00166e72; |
| 690 | } |
683 | 691 | else |
684 | 692 | { |
685 | 693 | printf("unk case x67\n"); |