#pragma once
#include <windef.h>

// this function is really quite stupid, it is because the "int" instruction
// only accepts a constant value.  I.e. "int al" is invalid.
void interrupt(UCHAR i)
{
	switch (i)
	{
		case 0x10:
			__asm int 0x10
			return;
		case 0x11:
			__asm int 0x11
			return;
		case 0x12:
			__asm int 0x12
			return;
		case 0x13:
			__asm int 0x13
			return;
		case 0x14:
			__asm int 0x14
			return;
		case 0x15:
			__asm int 0x15
			return;
		case 0x16:
			__asm int 0x16
			return;
		case 0x17:
			__asm int 0x17
			return;
		case 0x18:
			__asm int 0x18
			return;
		case 0x19:
			__asm int 0x19
			return;
		case 0x1A:
			__asm int 0x1A
			return;
		case 0x1B:
			__asm int 0x1B
			return;
		case 0x1C:
			__asm int 0x1C
			return;
		case 0x1D:
			__asm int 0x1D
			return;
		case 0x1E:
			__asm int 0x1E
			return;
		case 0x1F:
			__asm int 0x1F
			return;
		case 0x20:
			__asm int 0x20
			return;
		case 0x21:
			__asm int 0x21
			return;
		case 0x22:
			__asm int 0x22
			return;
		case 0x23:
			__asm int 0x23
			return;
		case 0x24:
			__asm int 0x24
			return;
		case 0x25:
			__asm int 0x25
			return;
		case 0x26:
			__asm int 0x26
			return;
		case 0x27:
			__asm int 0x27
			return;
		case 0x28:
			__asm int 0x28
			return;
		case 0x29:
			__asm int 0x29
			return;
		case 0x2A:
			__asm int 0x2A
			return;
		case 0x2B:
			__asm int 0x2B
			return;
		case 0x2C:
			__asm int 0x2C
			return;
		case 0x2D:
			__asm int 0x2D
			return;
		case 0x2E:
			__asm int 0x2E
			return;
		case 0x2F:
			__asm int 0x2F
			return;
		case 0x30:
			__asm int 0x30
			return;
		case 0x31:
			__asm int 0x31
			return;
		case 0x32:
			__asm int 0x32
			return;
		case 0x33:
			__asm int 0x33
			return;
		case 0x34:
			__asm int 0x34
			return;
		case 0x35:
			__asm int 0x35
			return;
		case 0x36:
			__asm int 0x36
			return;
		case 0x37:
			__asm int 0x37
			return;
		case 0x38:
			__asm int 0x38
			return;
		case 0x39:
			__asm int 0x39
			return;
		case 0x3A:
			__asm int 0x3A
			return;
		case 0x3B:
			__asm int 0x3B
			return;
		case 0x3C:
			__asm int 0x3C
			return;
		case 0x3D:
			__asm int 0x3D
			return;
		case 0x3E:
			__asm int 0x3E
			return;
		case 0x3F:
			__asm int 0x3F
			return;
		case 0x40:
			__asm int 0x40
			return;
		case 0x41:
			__asm int 0x41
			return;
		case 0x42:
			__asm int 0x42
			return;
		case 0x43:
			__asm int 0x43
			return;
		case 0x44:
			__asm int 0x44
			return;
		case 0x45:
			__asm int 0x45
			return;
		case 0x46:
			__asm int 0x46
			return;
		case 0x47:
			__asm int 0x47
			return;
		case 0x48:
			__asm int 0x48
			return;
		case 0x49:
			__asm int 0x49
			return;
		case 0x4A:
			__asm int 0x4A
			return;
		case 0x4B:
			__asm int 0x4B
			return;
		case 0x4C:
			__asm int 0x4C
			return;
		case 0x4D:
			__asm int 0x4D
			return;
		case 0x4E:
			__asm int 0x4E
			return;
		case 0x4F:
			__asm int 0x4F
			return;
		case 0x50:
			__asm int 0x50
			return;
		case 0x51:
			__asm int 0x51
			return;
		case 0x52:
			__asm int 0x52
			return;
		case 0x53:
			__asm int 0x53
			return;
		case 0x54:
			__asm int 0x54
			return;
		case 0x55:
			__asm int 0x55
			return;
		case 0x56:
			__asm int 0x56
			return;
		case 0x57:
			__asm int 0x57
			return;
		case 0x58:
			__asm int 0x58
			return;
		case 0x59:
			__asm int 0x59
			return;
		case 0x5A:
			__asm int 0x5A
			return;
		case 0x5B:
			__asm int 0x5B
			return;
		case 0x5C:
			__asm int 0x5C
			return;
		case 0x5D:
			__asm int 0x5D
			return;
		case 0x5E:
			__asm int 0x5E
			return;
		case 0x5F:
			__asm int 0x5F
			return;
		case 0x60:
			__asm int 0x60
			return;
		case 0x61:
			__asm int 0x61
			return;
		case 0x62:
			__asm int 0x62
			return;
		case 0x63:
			__asm int 0x63
			return;
		case 0x64:
			__asm int 0x64
			return;
		case 0x65:
			__asm int 0x65
			return;
		case 0x66:
			__asm int 0x66
			return;
		case 0x67:
			__asm int 0x67
			return;
		case 0x68:
			__asm int 0x68
			return;
		case 0x69:
			__asm int 0x69
			return;
		case 0x6A:
			__asm int 0x6A
			return;
		case 0x6B:
			__asm int 0x6B
			return;
		case 0x6C:
			__asm int 0x6C
			return;
		case 0x6D:
			__asm int 0x6D
			return;
		case 0x6E:
			__asm int 0x6E
			return;
		case 0x6F:
			__asm int 0x6F
			return;
		case 0x70:
			__asm int 0x70
			return;
		case 0x71:
			__asm int 0x71
			return;
		case 0x72:
			__asm int 0x72
			return;
		case 0x73:
			__asm int 0x73
			return;
		case 0x74:
			__asm int 0x74
			return;
		case 0x75:
			__asm int 0x75
			return;
		case 0x76:
			__asm int 0x76
			return;
		case 0x77:
			__asm int 0x77
			return;
		case 0x78:
			__asm int 0x78
			return;
		case 0x79:
			__asm int 0x79
			return;
		case 0x7A:
			__asm int 0x7A
			return;
		case 0x7B:
			__asm int 0x7B
			return;
		case 0x7C:
			__asm int 0x7C
			return;
		case 0x7D:
			__asm int 0x7D
			return;
		case 0x7E:
			__asm int 0x7E
			return;
		case 0x7F:
			__asm int 0x7F
			return;
		case 0x80:
			__asm int 0x80
			return;
		case 0x81:
			__asm int 0x81
			return;
		case 0x82:
			__asm int 0x82
			return;
		case 0x83:
			__asm int 0x83
			return;
		case 0x84:
			__asm int 0x84
			return;
		case 0x85:
			__asm int 0x85
			return;
		case 0x86:
			__asm int 0x86
			return;
		case 0x87:
			__asm int 0x87
			return;
		case 0x88:
			__asm int 0x88
			return;
		case 0x89:
			__asm int 0x89
			return;
		case 0x8A:
			__asm int 0x8A
			return;
		case 0x8B:
			__asm int 0x8B
			return;
		case 0x8C:
			__asm int 0x8C
			return;
		case 0x8D:
			__asm int 0x8D
			return;
		case 0x8E:
			__asm int 0x8E
			return;
		case 0x8F:
			__asm int 0x8F
			return;
		case 0x90:
			__asm int 0x90
			return;
		case 0x91:
			__asm int 0x91
			return;
		case 0x92:
			__asm int 0x92
			return;
		case 0x93:
			__asm int 0x93
			return;
		case 0x94:
			__asm int 0x94
			return;
		case 0x95:
			__asm int 0x95
			return;
		case 0x96:
			__asm int 0x96
			return;
		case 0x97:
			__asm int 0x97
			return;
		case 0x98:
			__asm int 0x98
			return;
		case 0x99:
			__asm int 0x99
			return;
		case 0x9A:
			__asm int 0x9A
			return;
		case 0x9B:
			__asm int 0x9B
			return;
		case 0x9C:
			__asm int 0x9C
			return;
		case 0x9D:
			__asm int 0x9D
			return;
		case 0x9E:
			__asm int 0x9E
			return;
		case 0x9F:
			__asm int 0x9F
			return;
		case 0xA0:
			__asm int 0xA0
			return;
		case 0xA1:
			__asm int 0xA1
			return;
		case 0xA2:
			__asm int 0xA2
			return;
		case 0xA3:
			__asm int 0xA3
			return;
		case 0xA4:
			__asm int 0xA4
			return;
		case 0xA5:
			__asm int 0xA5
			return;
		case 0xA6:
			__asm int 0xA6
			return;
		case 0xA7:
			__asm int 0xA7
			return;
		case 0xA8:
			__asm int 0xA8
			return;
		case 0xA9:
			__asm int 0xA9
			return;
		case 0xAA:
			__asm int 0xAA
			return;
		case 0xAB:
			__asm int 0xAB
			return;
		case 0xAC:
			__asm int 0xAC
			return;
		case 0xAD:
			__asm int 0xAD
			return;
		case 0xAE:
			__asm int 0xAE
			return;
		case 0xAF:
			__asm int 0xAF
			return;
		case 0xB0:
			__asm int 0xB0
			return;
		case 0xB1:
			__asm int 0xB1
			return;
		case 0xB2:
			__asm int 0xB2
			return;
		case 0xB3:
			__asm int 0xB3
			return;
		case 0xB4:
			__asm int 0xB4
			return;
		case 0xB5:
			__asm int 0xB5
			return;
		case 0xB6:
			__asm int 0xB6
			return;
		case 0xB7:
			__asm int 0xB7
			return;
		case 0xB8:
			__asm int 0xB8
			return;
		case 0xB9:
			__asm int 0xB9
			return;
		case 0xBA:
			__asm int 0xBA
			return;
		case 0xBB:
			__asm int 0xBB
			return;
		case 0xBC:
			__asm int 0xBC
			return;
		case 0xBD:
			__asm int 0xBD
			return;
		case 0xBE:
			__asm int 0xBE
			return;
		case 0xBF:
			__asm int 0xBF
			return;
		case 0xC0:
			__asm int 0xC0
			return;
		case 0xC1:
			__asm int 0xC1
			return;
		case 0xC2:
			__asm int 0xC2
			return;
		case 0xC3:
			__asm int 0xC3
			return;
		case 0xC4:
			__asm int 0xC4
			return;
		case 0xC5:
			__asm int 0xC5
			return;
		case 0xC6:
			__asm int 0xC6
			return;
		case 0xC7:
			__asm int 0xC7
			return;
		case 0xC8:
			__asm int 0xC8
			return;
		case 0xC9:
			__asm int 0xC9
			return;
		case 0xCA:
			__asm int 0xCA
			return;
		case 0xCB:
			__asm int 0xCB
			return;
		case 0xCC:
			__asm int 0xCC
			return;
		case 0xCD:
			__asm int 0xCD
			return;
		case 0xCE:
			__asm int 0xCE
			return;
		case 0xCF:
			__asm int 0xCF
			return;
		case 0xD0:
			__asm int 0xD0
			return;
		case 0xD1:
			__asm int 0xD1
			return;
		case 0xD2:
			__asm int 0xD2
			return;
		case 0xD3:
			__asm int 0xD3
			return;
		case 0xD4:
			__asm int 0xD4
			return;
		case 0xD5:
			__asm int 0xD5
			return;
		case 0xD6:
			__asm int 0xD6
			return;
		case 0xD7:
			__asm int 0xD7
			return;
		case 0xD8:
			__asm int 0xD8
			return;
		case 0xD9:
			__asm int 0xD9
			return;
		case 0xDA:
			__asm int 0xDA
			return;
		case 0xDB:
			__asm int 0xDB
			return;
		case 0xDC:
			__asm int 0xDC
			return;
		case 0xDD:
			__asm int 0xDD
			return;
		case 0xDE:
			__asm int 0xDE
			return;
		case 0xDF:
			__asm int 0xDF
			return;
		case 0xE0:
			__asm int 0xE0
			return;
		case 0xE1:
			__asm int 0xE1
			return;
		case 0xE2:
			__asm int 0xE2
			return;
		case 0xE3:
			__asm int 0xE3
			return;
		case 0xE4:
			__asm int 0xE4
			return;
		case 0xE5:
			__asm int 0xE5
			return;
		case 0xE6:
			__asm int 0xE6
			return;
		case 0xE7:
			__asm int 0xE7
			return;
		case 0xE8:
			__asm int 0xE8
			return;
		case 0xE9:
			__asm int 0xE9
			return;
		case 0xEA:
			__asm int 0xEA
			return;
		case 0xEB:
			__asm int 0xEB
			return;
		case 0xEC:
			__asm int 0xEC
			return;
		case 0xED:
			__asm int 0xED
			return;
		case 0xEE:
			__asm int 0xEE
			return;
		case 0xEF:
			__asm int 0xEF
			return;
		case 0xF0:
			__asm int 0xF0
			return;
		case 0xF1:
			__asm int 0xF1
			return;
		case 0xF2:
			__asm int 0xF2
			return;
		case 0xF3:
			__asm int 0xF3
			return;
		case 0xF4:
			__asm int 0xF4
			return;
		case 0xF5:
			__asm int 0xF5
			return;
		case 0xF6:
			__asm int 0xF6
			return;
		case 0xF7:
			__asm int 0xF7
			return;
		case 0xF8:
			__asm int 0xF8
			return;
		case 0xF9:
			__asm int 0xF9
			return;
		case 0xFA:
			__asm int 0xFA
			return;
		case 0xFB:
			__asm int 0xFB
			return;
		case 0xFC:
			__asm int 0xFC
			return;
		case 0xFD:
			__asm int 0xFD
			return;
		case 0xFE:
			__asm int 0xFE
			return;
		case 0xFF:
			__asm int 0xFF
			return;
	}
}