trunk/src/mame/drivers/tmnt.c
r32770 | r32771 | |
478 | 478 | AM_RANGE(0x0b0400, 0x0b0401) AM_WRITE8(cuebrick_nvbank_w, 0xff00) |
479 | 479 | AM_RANGE(0x0c0000, 0x0c0003) AM_DEVREADWRITE8("ymsnd", ym2151_device, read, write, 0xff00) |
480 | 480 | AM_RANGE(0x100000, 0x107fff) AM_READWRITE(k052109_word_noA12_r, k052109_word_noA12_w) |
481 | | AM_RANGE(0x140000, 0x140007) AM_DEVREADWRITE("k051960", k051960_device, k051937_word_r, k051937_word_w) |
482 | | AM_RANGE(0x140400, 0x1407ff) AM_DEVREADWRITE("k051960", k051960_device, k051960_word_r, k051960_word_w) |
| 481 | AM_RANGE(0x140000, 0x140007) AM_DEVREADWRITE8("k051960", k051960_device, k051937_r, k051937_w, 0xffff) |
| 482 | AM_RANGE(0x140400, 0x1407ff) AM_DEVREADWRITE8("k051960", k051960_device, k051960_r, k051960_w, 0xffff) |
483 | 483 | ADDRESS_MAP_END |
484 | 484 | |
485 | 485 | |
r32770 | r32771 | |
500 | 500 | #endif |
501 | 501 | AM_RANGE(0x100000, 0x107fff) AM_READWRITE(k052109_word_noA12_r, k052109_word_noA12_w) |
502 | 502 | // AM_RANGE(0x10e800, 0x10e801) AM_WRITENOP ??? |
503 | | AM_RANGE(0x140000, 0x140007) AM_DEVREADWRITE("k051960", k051960_device, k051937_word_r, k051937_word_w) |
504 | | AM_RANGE(0x140400, 0x1407ff) AM_DEVREADWRITE("k051960", k051960_device, k051960_word_r, k051960_word_w) |
| 503 | AM_RANGE(0x140000, 0x140007) AM_DEVREADWRITE8("k051960", k051960_device, k051937_r, k051937_w, 0xffff) |
| 504 | AM_RANGE(0x140400, 0x1407ff) AM_DEVREADWRITE8("k051960", k051960_device, k051960_r, k051960_w, 0xffff) |
505 | 505 | ADDRESS_MAP_END |
506 | 506 | |
507 | 507 | |
r32770 | r32771 | |
521 | 521 | AM_RANGE(0x0c0000, 0x0c0001) AM_WRITE(tmnt_priority_w) |
522 | 522 | AM_RANGE(0x100000, 0x107fff) AM_READWRITE(k052109_word_noA12_r, k052109_word_noA12_w) |
523 | 523 | // AM_RANGE(0x10e800, 0x10e801) AM_WRITENOP ??? |
524 | | AM_RANGE(0x140000, 0x140007) AM_DEVREADWRITE("k051960", k051960_device, k051937_word_r, k051937_word_w) |
525 | | AM_RANGE(0x140400, 0x1407ff) AM_DEVREADWRITE("k051960", k051960_device, k051960_word_r, k051960_word_w) |
| 524 | AM_RANGE(0x140000, 0x140007) AM_DEVREADWRITE8("k051960", k051960_device, k051937_r, k051937_w, 0xffff) |
| 525 | AM_RANGE(0x140400, 0x1407ff) AM_DEVREADWRITE8("k051960", k051960_device, k051960_r, k051960_w, 0xffff) |
526 | 526 | ADDRESS_MAP_END |
527 | 527 | |
528 | 528 | |
r32770 | r32771 | |
539 | 539 | AM_RANGE(0x0a0060, 0x0a007f) AM_DEVWRITE("k053251", k053251_device, lsb_w) |
540 | 540 | AM_RANGE(0x0a0080, 0x0a0081) AM_WRITE(watchdog_reset16_w) |
541 | 541 | AM_RANGE(0x100000, 0x107fff) AM_READWRITE(k052109_word_noA12_r, punkshot_k052109_word_noA12_w) |
542 | | AM_RANGE(0x110000, 0x110007) AM_DEVREADWRITE("k051960", k051960_device, k051937_word_r, k051937_word_w) |
543 | | AM_RANGE(0x110400, 0x1107ff) AM_DEVREADWRITE("k051960", k051960_device, k051960_word_r, k051960_word_w) |
| 542 | AM_RANGE(0x110000, 0x110007) AM_DEVREADWRITE8("k051960", k051960_device, k051937_r, k051937_w, 0xffff) |
| 543 | AM_RANGE(0x110400, 0x1107ff) AM_DEVREADWRITE8("k051960", k051960_device, k051960_r, k051960_w, 0xffff) |
544 | 544 | AM_RANGE(0xfffffc, 0xffffff) AM_READ(punkshot_kludge_r) |
545 | 545 | ADDRESS_MAP_END |
546 | 546 | |
r32770 | r32771 | |
985 | 985 | AM_RANGE(0x500202, 0x500203) AM_READ(thndrx2_eeprom_r) |
986 | 986 | AM_RANGE(0x500300, 0x500301) AM_WRITENOP /* watchdog reset? irq enable? */ |
987 | 987 | AM_RANGE(0x600000, 0x607fff) AM_READWRITE(k052109_word_noA12_r, k052109_word_noA12_w) |
988 | | AM_RANGE(0x700000, 0x700007) AM_DEVREADWRITE("k051960", k051960_device, k051937_word_r, k051937_word_w) |
989 | | AM_RANGE(0x700400, 0x7007ff) AM_DEVREADWRITE("k051960", k051960_device, k051960_word_r, k051960_word_w) |
| 988 | AM_RANGE(0x700000, 0x700007) AM_DEVREADWRITE8("k051960", k051960_device, k051937_r, k051937_w, 0xffff) |
| 989 | AM_RANGE(0x700400, 0x7007ff) AM_DEVREADWRITE8("k051960", k051960_device, k051960_r, k051960_w, 0xffff) |
990 | 990 | ADDRESS_MAP_END |
991 | 991 | |
992 | 992 | |
trunk/src/mame/video/k051960.c
r32770 | r32771 | |
250 | 250 | m_ram[offset] = data; |
251 | 251 | } |
252 | 252 | |
253 | | READ16_MEMBER( k051960_device::k051960_word_r ) |
254 | | { |
255 | | return k051960_r(space, offset * 2 + 1) | (k051960_r(space, offset * 2) << 8); |
256 | | } |
257 | 253 | |
258 | | WRITE16_MEMBER( k051960_device::k051960_word_w ) |
259 | | { |
260 | | if (ACCESSING_BITS_8_15) |
261 | | k051960_w(space, offset * 2, (data >> 8) & 0xff); |
262 | | if (ACCESSING_BITS_0_7) |
263 | | k051960_w(space, offset * 2 + 1, data & 0xff); |
264 | | } |
265 | | |
266 | | |
267 | 254 | /* should this be split by k051960? */ |
268 | 255 | READ8_MEMBER( k051960_device::k051937_r ) |
269 | 256 | { |
270 | 257 | if (m_readroms && offset >= 4 && offset < 8) |
271 | 258 | return k051960_fetchromdata(offset & 3); |
272 | | else |
273 | | { |
274 | | if (offset == 0) |
275 | | { |
276 | | /* some games need bit 0 to pulse */ |
277 | | return (m_k051937_counter++) & 1; |
278 | | } |
279 | | //logerror("%04x: read unknown 051937 address %x\n", device->cpu->safe_pc(), offset); |
280 | | return 0; |
281 | | } |
| 259 | else if (offset == 0) |
| 260 | /* some games need bit 0 to pulse */ |
| 261 | return (m_k051937_counter++) & 1; |
| 262 | |
| 263 | //logerror("%04x: read unknown 051937 address %x\n", device->cpu->safe_pc(), offset); |
| 264 | return 0; |
282 | 265 | } |
283 | 266 | |
284 | 267 | WRITE8_MEMBER( k051960_device::k051937_w ) |
r32770 | r32771 | |
331 | 314 | } |
332 | 315 | |
333 | 316 | |
334 | | READ16_MEMBER( k051960_device::k051937_word_r ) |
335 | | { |
336 | | return k051937_r(space, offset * 2 + 1) | (k051937_r(space, offset * 2) << 8); |
337 | | } |
338 | | |
339 | | WRITE16_MEMBER( k051960_device::k051937_word_w ) |
340 | | { |
341 | | if (ACCESSING_BITS_8_15) |
342 | | k051937_w(space, offset * 2,(data >> 8) & 0xff); |
343 | | if (ACCESSING_BITS_0_7) |
344 | | k051937_w(space, offset * 2 + 1,data & 0xff); |
345 | | } |
346 | | |
347 | 317 | /* |
348 | 318 | * Sprite Format |
349 | 319 | * ------------------ |