diff options
author | Phil Bennett <philipjbennett@users.noreply.github.com> | 2009-08-26 23:46:02 +0000 |
---|---|---|
committer | Phil Bennett <philipjbennett@users.noreply.github.com> | 2009-08-26 23:46:02 +0000 |
commit | 1b2f0fc326212933f9313397ea36754b6c246f6d (patch) | |
tree | 396e9162bb2240b7f7636b7d86e385a613684cb1 | |
parent | c4bfc4f5f8e54216edf364dc6690b97da0fee64e (diff) |
This time, it works...
-rw-r--r-- | src/mame/drivers/kaneko16.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/src/mame/drivers/kaneko16.c b/src/mame/drivers/kaneko16.c index 9bfe80fa789..8fe2e5ade09 100644 --- a/src/mame/drivers/kaneko16.c +++ b/src/mame/drivers/kaneko16.c @@ -3667,11 +3667,11 @@ static DRIVER_INIT( brapboys ) OKI 1: Address space 0x00000-0x2ffff is fixed - Address space 0x30000-0x3ffff is banked (16 banks) + Address space 0x30000-0x3ffff is banked (13 banks) OKI 2: Address space 0x00000-0x1ffff is fixed - Address space 0x20000-0x3ffff is banked (16 banks) + Address space 0x20000-0x3ffff is banked (15 banks) The current sound device implementation can't handle the banking dynamically so we have to expand all the bank @@ -3682,18 +3682,23 @@ static DRIVER_INIT( brapboys ) UINT8 *dst1 = memory_region(machine, "oki1"); UINT8 *dst2 = memory_region(machine, "oki2"); - for (bank = 0; bank < 16; ++bank) + /* OKI 1 */ + for (bank = 0; bank < 13; ++bank) { UINT8 *dst; UINT8 *srcn; - /* OKI 1 */ dst = dst1 + 0x40000 * bank; srcn = src + 0x30000 + (0x10000 * bank); memcpy(dst, src, 0x30000); memcpy(dst + 0x30000, srcn, 0x10000); + } - /* OKI 2 */ + /* OKI 2 */ + for (bank = 0; bank < 15; ++bank) + { + UINT8 *dst; + UINT8 *srcn; dst = dst2 + 0x40000 * bank; srcn = src + 0x120000 + (0x20000 * bank); memcpy(dst, src + 0x100000, 0x20000); |