Пример #1
0
        public override bool Configure(NES.EDetectionOrigin origin)
        {
            switch (Cart.board_type)
            {
            case "MAPPER019":
                AssertVram(0);
                break;

            case "NAMCOT-129":                     // star wars
            // no known differences between 129 and 163
            case "NAMCOT-163":
                //final lap
                //battle fleet
                //dragon ninja
                //famista '90
                //hydelide 3 - this is a good test of more advanced features
                AssertPrg(128, 256); AssertChr(128, 256); AssertVram(0); AssertWram(0, 8);
                break;

            default:
                return(false);
            }

            if (NES.apu != null)
            {
                audio = new Namco163Audio(NES.apu.ExternalQueue);
            }

            prg_bank_mask_8k = Cart.prg_size / 8 - 1;
            chr_bank_mask_1k = Cart.chr_size / 1 - 1;

            prg_banks_8k[3] = (byte)(0xFF & prg_bank_mask_8k);
            prg_banks_8k[2] = (byte)(0xFF & prg_bank_mask_8k) - 1;
            chr_banks_1k[8] = chr_banks_1k[10] = 0xFE;
            chr_banks_1k[9] = chr_banks_1k[11] = 0xFF;

            vram_enable[2] = true;

            return(true);
        }
Пример #2
0
		public override bool Configure(NES.EDetectionOrigin origin)
		{
			switch (Cart.board_type)
			{
				case "MAPPER019":
					AssertVram(0);
					break;

				case "NAMCOT-129": // star wars
				// no known differences between 129 and 163
				case "NAMCOT-163":
					//final lap
					//battle fleet
					//dragon ninja
					//famista '90
					//hydelide 3 - this is a good test of more advanced features
					AssertPrg(128, 256); AssertChr(128, 256); AssertVram(0); AssertWram(0, 8);
					break;

				default:
					return false;
			}

			if (NES.apu != null)
				audio = new Namco163Audio(NES.apu.ExternalQueue);

			prg_bank_mask_8k = Cart.prg_size / 8 - 1;
			chr_bank_mask_1k = Cart.chr_size / 1 - 1;

			prg_banks_8k[3] = (byte)(0xFF & prg_bank_mask_8k);
			chr_banks_1k[8] = chr_banks_1k[10] = 0xFF;
			chr_banks_1k[9] = chr_banks_1k[11] = 0xFF;

			vram_enable[2] = true;

			return true;
		}