trunk/src/mame/drivers/megadrvb.c
| r18669 | r18670 | |
| 738 | 738 | { |
| 739 | 739 | UINT8* rom = machine().root_device().memregion("maincpu")->base(); |
| 740 | 740 | |
| 741 | | /* todo, reduce bitswaps to single swap */ |
| 742 | 741 | for (int x = 0x00001; x < 0x40000; x += 2) |
| 743 | 742 | { |
| 744 | | rom[x] = rom[x] ^ 0xff; |
| 745 | | rom[x] = BITSWAP8(rom[x], 7,6,5,4,3,2,1,0); |
| 746 | | rom[x] = BITSWAP8(rom[x], 1,6,5,4,3,2,7,0); |
| 747 | | rom[x] = BITSWAP8(rom[x], 7,6,5,3,4,2,1,0); |
| 748 | | rom[x] = BITSWAP8(rom[x], 7,6,5,2,3,4,1,0); |
| 749 | | rom[x] = BITSWAP8(rom[x], 5,6,7,4,3,2,1,0); |
| 750 | | rom[x] = BITSWAP8(rom[x], 7,5,6,4,3,2,1,0); |
| 743 | rom[x] = BITSWAP8(rom[x] ^ 0xff, 5,1,6,2,4,3,7,0); |
| 751 | 744 | } |
| 752 | 745 | |
| 753 | 746 | for (int x = 0x40001; x < 0x80000; x += 2) |
| 754 | 747 | { |
| 755 | | rom[x] = BITSWAP8(rom[x], 7,6,5,4,3,2,1,0); |
| 756 | | rom[x] = BITSWAP8(rom[x], 7,6,1,4,3,2,5,0); |
| 757 | | rom[x] = BITSWAP8(rom[x], 7,6,5,4,0,2,1,3); |
| 758 | | rom[x] = BITSWAP8(rom[x], 2,6,5,4,3,7,1,0); |
| 759 | | rom[x] = BITSWAP8(rom[x], 7,6,5,0,3,2,1,4); |
| 760 | | rom[x] = BITSWAP8(rom[x], 7,6,5,1,3,2,4,0); |
| 761 | | |
| 748 | rom[x] = BITSWAP8(rom[x] ^ 0x00, 2,6,1,5,0,7,3,4); |
| 762 | 749 | } |
| 763 | 750 | |
| 764 | 751 | // boot vectors don't seem to be valid, so they are patched... |