Пример #1
0
unsigned char __fastcall kbashReadByte(unsigned int sekAddress)
{
	switch (sekAddress) {
		case 0x208011:								// Player 1 inputs
			return DrvInput[0];
		case 0x208015:								// Player 2 inputs
			return DrvInput[1];
		case 0x208019:								// Other inputs
			return DrvInput[2];

		case 0x200001:
		 	return ZX80Status();

		case 0x200005:								// Dipswitch 1
			return DrvInput[3];
		case 0x200007:			   					// Dipswitch 2
			return DrvInput[4];
		case 0x200009:								// Dipswitch 3 - Territory
			return DrvInput[5];

		case 0x30000D:								// VBlank
			return ToaVBlankRegister();

//		default:
//			printf("Attempt to read byte value of location %x\n", sekAddress);
	}

	return 0;
}
Пример #2
0
unsigned short __fastcall dogyuunReadWord(unsigned int sekAddress)
{
	switch (sekAddress) {

		case 0x200010:								// Player 1 inputs
			return DrvInput[0];
		case 0x200014:								// Player 2 inputs
			return DrvInput[1];
		case 0x200018:								// Other inputs
			return DrvInput[2];

		case 0x21F004:								// Dipswitch A
			return DrvInput[3];
		case 0x21F006:								// Dipswitch B
			return DrvInput[4];
		case 0x21F008:								// Dipswitch C - Territory
			return DrvInput[5];

 		case 0x21F000:
		 	return ZX80Status();

		case 0x300004:
			return ToaGP9001ReadRAM_Hi(0);
		case 0x300006:
			return ToaGP9001ReadRAM_Lo(0);

		case 0x30000C:
			return ToaVBlankRegister();

		case 0x500004:
			return ToaGP9001ReadRAM_Hi(1);
		case 0x500006:
			return ToaGP9001ReadRAM_Lo(1);

		case 0x700000: {
			static int i;
			unsigned short nStatus;

			i++;
			nStatus = 0xFFFF - (i & 0xFF);
			if (i & 1) {
				nStatus &= 0x00FF;
			}
			return nStatus;

		}

//		default:
//			printf("Attempt to read word value of location %x\n", sekAddress);
	}

	return 0;

}
Пример #3
0
unsigned short __fastcall kbashReadWord(unsigned int sekAddress)
{
	switch (sekAddress) {

		case 0x208010:								// Player 1 inputs
			return DrvInput[0];
		case 0x208014:								// Player 2 inputs
			return DrvInput[1];
		case 0x208018:								// Other inputs
			return DrvInput[2];

		case 0x200000:
		 	return ZX80Status();

		case 0x200004:								// Dipswitch 1
			return DrvInput[3];
		case 0x200006:								// Dipswitch 2
			return DrvInput[4];
		case 0x200008:								// Dipswitch 3 - Territory
			return DrvInput[5];

		case 0x300004:
			return ToaGP9001ReadRAM_Hi(0);
		case 0x300006:
			return ToaGP9001ReadRAM_Lo(0);

		case 0x30000C:
			return ToaVBlankRegister();

		case 0x700000:
			return ToaScanlineRegister();

//		default:
//			printf("Attempt to read word value of location %x\n", sekAddress);
	}

	return 0;
}