- case 02: if(tkcom[0]&0x80)
- setprg8(0x6000,(prgb[3]&0x3F)|bankmode);
- setprg8(0x8000,(prgb[0]&0x3F)|bankmode);
- setprg8(0xa000,(prgb[1]&0x3F)|bankmode);
- setprg8(0xc000,(prgb[2]&0x3F)|bankmode);
- setprg8(0xe000,0x3F|bankmode);
+ case 02:
+ if(tkcom[0]&0x80)
+ setprg8(0x6000,(prgb[3]&0x1F)|((tkcom[3]&7)<<5)); // 45in1 multy has different bits, seems board was hacked to support big data banks
+ setprg8(0x8000,(prgb[0]&0x1F)|((tkcom[3]&7)<<5));
+ setprg8(0xa000,(prgb[1]&0x1F)|((tkcom[3]&7)<<5));
+ setprg8(0xc000,(prgb[2]&0x1F)|((tkcom[3]&7)<<5));
+ setprg8(0xe000,0x1F|((tkcom[3]&7)<<5));
+// setprg8(0xe000,(prgb[3]&0x0F)|((tkcom[3]&6)<<3));
+// setprg32(0x8000,((prgb[0]&0x0F)>>2)|((tkcom[3]&6)<<3));