trunk/src/mame/drivers/namcos10.c
| r21630 | r21631 | |
| 345 | 345 | WRITE32_MEMBER(namcos10_state::key_w ) |
| 346 | 346 | { |
| 347 | 347 | key = (data >> 15) | (data << 1); |
| 348 | logerror("key_w %04x\n", key); |
| 348 | 349 | cnt = 0; |
| 349 | 350 | } |
| 350 | 351 | |
| r21630 | r21631 | |
| 427 | 428 | WRITE32_MEMBER(namcos10_state::nand_address2_w ) |
| 428 | 429 | { |
| 429 | 430 | logerror("nand_a2_w %08x (%08x)\n", data, space.device().safe_pc()); |
| 430 | | nand_address = ( nand_address & 0xfffffe01 ) | ( ( data & 0xff ) << 1 ); |
| 431 | nand_address = ( nand_address & 0xffffff00 ) | ( ( data & 0xff ) << 0 ); |
| 431 | 432 | } |
| 432 | 433 | |
| 433 | 434 | WRITE32_MEMBER(namcos10_state::nand_address3_w ) |
| 434 | 435 | { |
| 435 | 436 | logerror("nand_a3_w %08x (%08x)\n", data, space.device().safe_pc()); |
| 436 | | nand_address = ( nand_address & 0xfffe01ff ) | ( ( data & 0xff ) << 9 ); |
| 437 | nand_address = ( nand_address & 0xffff00ff ) | ( ( data & 0xff ) << 8 ); |
| 437 | 438 | } |
| 438 | 439 | |
| 439 | 440 | WRITE32_MEMBER(namcos10_state::nand_address4_w ) |
| 440 | 441 | { |
| 441 | | logerror("nand_a4_w %08x (%08x)\n", data, space.device().safe_pc()); |
| 442 | | nand_address = ( nand_address & 0xfe01ffff ) | ( ( data & 0xff ) << 17 ); |
| 442 | nand_address = ( nand_address & 0xff00ffff ) | ( ( data & 0xff ) << 16 ); |
| 443 | logerror("nand_a4_w %08x (%08x) -> %08x\n", data, space.device().safe_pc(), nand_address*2); |
| 443 | 444 | } |
| 444 | 445 | |
| 445 | 446 | UINT16 namcos10_state::nand_read( UINT32 address ) |
| r21630 | r21631 | |
| 458 | 459 | { |
| 459 | 460 | UINT32 data = nand_read2( nand_address * 2 ); |
| 460 | 461 | |
| 461 | | logerror("read %08x = %04x\n", nand_address*2, data); |
| 462 | // logerror("read %08x = %04x\n", nand_address*2, data); |
| 462 | 463 | |
| 463 | 464 | /* printf( "data<-%08x (%08x)\n", data, nand_address ); */ |
| 464 | 465 | nand_address++; |
| r21630 | r21631 | |
| 491 | 492 | } |
| 492 | 493 | |
| 493 | 494 | static ADDRESS_MAP_START( namcos10_memn_map, AS_PROGRAM, 32, namcos10_state ) |
| 495 | AM_RANGE(0x1f300000, 0x1f300003) AM_WRITE(key_w) |
| 496 | |
| 494 | 497 | AM_RANGE(0x1f400000, 0x1f400003) AM_READ (nand_status_r) |
| 495 | 498 | AM_RANGE(0x1f410000, 0x1f410003) AM_WRITE(nand_address1_w) |
| 496 | 499 | AM_RANGE(0x1f420000, 0x1f420003) AM_WRITE(nand_address2_w) |