trunk/src/mess/drivers/a2600.c
r18078 | r18079 | |
1501 | 1501 | { |
1502 | 1502 | UINT16 last_address, prev_address; |
1503 | 1503 | UINT8 last_byte, prev_byte; |
| 1504 | address_space& prog_space = machine().device("maincpu")->memory().space(AS_PROGRAM); |
1504 | 1505 | |
1505 | 1506 | last_address = machine().device("maincpu")->safe_pc() - 1; |
1506 | 1507 | if ( ! ( last_address & 0x1080 ) ) |
1507 | 1508 | { |
1508 | 1509 | return offset; |
1509 | 1510 | } |
1510 | | last_byte = space.read_byte(last_address ); |
| 1511 | last_byte = prog_space.read_byte(last_address ); |
1511 | 1512 | if ( last_byte < 0x80 || last_byte == 0xFF ) |
1512 | 1513 | { |
1513 | 1514 | return last_byte; |
r18078 | r18079 | |
1517 | 1518 | { |
1518 | 1519 | return last_byte; |
1519 | 1520 | } |
1520 | | prev_byte = space.read_byte(prev_address ); |
| 1521 | prev_byte = prog_space.read_byte(prev_address ); |
1521 | 1522 | if ( prev_byte == 0xB1 ) |
1522 | 1523 | { /* LDA (XX),Y */ |
1523 | | return space.read_byte(last_byte + 1 ); |
| 1524 | return prog_space.read_byte(last_byte + 1 ); |
1524 | 1525 | } |
1525 | 1526 | return last_byte; |
1526 | 1527 | } |