Какой-нибудь ZXKeyboardState, несущий все те же функции, что и DirectInput.KeyboardState, но напрямую от него не зависящий. Просто чтоб DirectX-рефренсы не тянуть из ZXMAK2.MDX.* в основной код. Пусть их использование так и будет ограничено вершиной айсберга. Я же все мечтаю о портируемости на mono