trunk/src/emu/sound/l7a1045_l6028_dsp_a.c
| r245472 | r245473 | |
| 165 | 165 | } |
| 166 | 166 | } |
| 167 | 167 | |
| 168 | | |
| 168 | // TODO: needs proper memory map |
| 169 | 169 | WRITE16_MEMBER( l7a1045_sound_device::l7a1045_sound_w ) |
| 170 | 170 | { |
| 171 | 171 | m_stream->update(); // TODO |
| r245472 | r245473 | |
| 222 | 222 | |
| 223 | 223 | WRITE16_MEMBER(l7a1045_sound_device::sound_data_w) |
| 224 | 224 | { |
| 225 | | // if(m_audioregister == 0) |
| 226 | | // printf("%04x %04x (%04x|%04x %04x)\n",offset,data,offset ^ 2,m_audioregister,m_audiochannel); |
| 225 | if(m_audioregister != 0) |
| 226 | printf("%04x %04x (%04x|%04x %04x)\n",offset,data,offset ^ 2,m_audioregister,m_audiochannel); |
| 227 | 227 | |
| 228 | 228 | m_audiodat[m_audioregister][m_audiochannel].dat[offset] = data; |
| 229 | 229 | |
trunk/src/mame/video/hng64.c
| r245472 | r245473 | |
| 4 | 4 | |
| 5 | 5 | #define BLEND_TEST 0 |
| 6 | 6 | |
| 7 | #define HNG64_VIDEO_DEBUG 0 |
| 7 | 8 | |
| 8 | 9 | |
| 9 | 10 | |
| 10 | 11 | |
| 11 | | |
| 12 | 12 | /* Transition Control Video Registers |
| 13 | 13 | * ---------------------------------- |
| 14 | 14 | * |
| r245472 | r245473 | |
| 623 | 623 | if ( (m_additive_tilemap_debug&(1 << tm))) |
| 624 | 624 | debug_blend_enabled = 1; |
| 625 | 625 | |
| 626 | #if HNG64_VIDEO_DEBUG |
| 626 | 627 | if ((global_dimensions != 0) && (global_dimensions != 3)) |
| 627 | 628 | popmessage("unsupported global_dimensions on tilemaps"); |
| 629 | #endif |
| 628 | 630 | |
| 629 | 631 | if (tm==0) |
| 630 | 632 | { |
| r245472 | r245473 | |
| 708 | 710 | |
| 709 | 711 | */ |
| 710 | 712 | |
| 713 | #if HNG64_VIDEO_DEBUG |
| 711 | 714 | popmessage("Unhandled rowscroll %02x", tileregs>>12); |
| 715 | #endif |
| 712 | 716 | } |
| 713 | 717 | else // 'simple' mode with linescroll, used in some ss64_2 levels (assumed to be correct, but doesn't do much with it.. so could be wrong) |
| 714 | 718 | { |
| r245472 | r245473 | |
| 751 | 755 | } |
| 752 | 756 | else |
| 753 | 757 | { |
| 758 | #if HNG64_VIDEO_DEBUG |
| 754 | 759 | if ((tileregs&0xf000)) |
| 755 | 760 | popmessage("Tilemap Mosaic? %02x", tileregs>>12); |
| 761 | #endif |
| 756 | 762 | // 0x1000 is set up the buriki 2nd title screen with rotating logo and in fatal fury at various times? |
| 757 | 763 | |
| 758 | 764 | if (global_tileregs&0x04000000) // globally selects alt scroll register layout??? |
| r245472 | r245473 | |
| 775 | 781 | INT32 ytopleft,ymiddle, yalt; |
| 776 | 782 | int xinc, xinc2, yinc, yinc2; |
| 777 | 783 | |
| 784 | #if HNG64_VIDEO_DEBUG |
| 778 | 785 | if (0) |
| 779 | 786 | if (tm==2) |
| 780 | 787 | popmessage("X %08x X %08x X %08x Y %08x Y %08x Y %08x", |
| r245472 | r245473 | |
| 787 | 794 | hng64_videoram[(0x40018+(scrollbase<<4))/4], |
| 788 | 795 | hng64_videoram[(0x4000c+(scrollbase<<4))/4]); |
| 789 | 796 | /*hng64_videoram[(0x4001c+(scrollbase<<4))/4]);*/ // unused? (dupe value on fatfurwa, 00 on rest) |
| 797 | #endif |
| 790 | 798 | |
| 791 | 799 | |
| 792 | | |
| 793 | 800 | xtopleft = (hng64_videoram[(0x40000+(scrollbase<<4))/4]); |
| 794 | 801 | xalt = (hng64_videoram[(0x40004+(scrollbase<<4))/4]); // middle screen point |
| 795 | 802 | xmiddle = (hng64_videoram[(0x40010+(scrollbase<<4))/4]); |
| r245472 | r245473 | |
| 868 | 875 | INT32 ytopleft,ymiddle; |
| 869 | 876 | int xinc,yinc; |
| 870 | 877 | |
| 878 | #if HNG64_VIDEO_DEBUG |
| 871 | 879 | if (0) |
| 872 | 880 | if (tm==2) |
| 873 | 881 | popmessage("%08x %08x %08x %08x", |
| r245472 | r245473 | |
| 875 | 883 | hng64_videoram[(0x40014+(scrollbase<<4))/4], |
| 876 | 884 | hng64_videoram[(0x40018+(scrollbase<<4))/4], |
| 877 | 885 | hng64_videoram[(0x4001c+(scrollbase<<4))/4]); |
| 886 | #endif |
| 878 | 887 | |
| 879 | 888 | if (hng64_videoregs[0x00]&0x00010000) // disable all scrolling / zoom (test screen) (maybe) |
| 880 | 889 | { |
| r245472 | r245473 | |
| 1031 | 1040 | if (!strcmp(machine().system().name, "sams64_2")) |
| 1032 | 1041 | { |
| 1033 | 1042 | space.write_byte(0x2f27c8, 0x2); |
| 1034 | | } |
| 1043 | } |
| 1035 | 1044 | else if (!strcmp(machine().system().name, "roadedge")) // hack to get test mode (useful for sound test) |
| 1036 | 1045 | { |
| 1037 | 1046 | space.write_byte(0xcfb53, 0x1); |
| r245472 | r245473 | |
| 1045 | 1054 | #endif |
| 1046 | 1055 | |
| 1047 | 1056 | |
| 1048 | | |
| 1049 | 1057 | |
| 1050 | 1058 | |
| 1059 | |
| 1051 | 1060 | bitmap.fill(hng64_tcram[0x50/4] & 0x10000 ? m_palette->black_pen() : m_palette->pen(0), cliprect); //FIXME: Is the register correct? check with HW tests |
| 1052 | 1061 | screen.priority().fill(0x00, cliprect); |
| 1053 | 1062 | |
| r245472 | r245473 | |
| 1132 | 1141 | if(0) |
| 1133 | 1142 | transition_control(bitmap, cliprect); |
| 1134 | 1143 | |
| 1144 | #if HNG64_VIDEO_DEBUG |
| 1135 | 1145 | if (0) |
| 1136 | 1146 | popmessage("%08x %08x %08x %08x %08x", m_spriteregs[0], m_spriteregs[1], m_spriteregs[2], m_spriteregs[3], m_spriteregs[4]); |
| 1137 | 1147 | |
| r245472 | r245473 | |
| 1209 | 1219 | m_additive_tilemap_debug ^= 8; |
| 1210 | 1220 | popmessage("blend changed %02x", m_additive_tilemap_debug); |
| 1211 | 1221 | } |
| 1222 | #endif |
| 1212 | 1223 | |
| 1213 | 1224 | return 0; |
| 1214 | 1225 | } |