-switch(A)
- {
- case 0x8000:
- if(V&0x80)
- {
- ROM_BANK8(0x8000,(V<<1)+1);
- ROM_BANK8(0xA000,(V<<1));
- ROM_BANK8(0xC000,(V<<1)+2);
- ROM_BANK8(0xE000,(V<<1)+1);
- }
- else
- {
- ROM_BANK16(0x8000,V);
- ROM_BANK16(0xC000,V+1);
- }
- MIRROR_SET((V>>6)&1);
- break;
- case 0x8001:
- MIRROR_SET(0);
- ROM_BANK16(0x8000,V);
- ROM_BANK16(0xc000,~0);
- break;
- case 0x8002:
- if(V&0x80)
- {
- ROM_BANK8(0x8000,((V<<1)+1));
- ROM_BANK8(0xA000,((V<<1)+1));
- ROM_BANK8(0xC000,((V<<1)+1));
- ROM_BANK8(0xE000,((V<<1)+1));
- }
- else
- {
- ROM_BANK8(0x8000,(V<<1));
- ROM_BANK8(0xA000,(V<<1));
- ROM_BANK8(0xC000,(V<<1));
- ROM_BANK8(0xE000,(V<<1));
- }
- break;
- case 0x8003:
- MIRROR_SET((V>>6)&1);
- if(V&0x80)
- {
- ROM_BANK8(0xC000,(V<<1)+1);
- ROM_BANK8(0xE000,(V<<1));
- }
- else
- {
- ROM_BANK16(0xC000,V);
- }
- break;
- }