using BizHawk.Common; namespace BizHawk.Emulation.Cores.Computers.SinclairSpectrum { /// /// Represents a spectrum keyboard /// public interface IKeyboard { /// /// The calling spectrumbase class /// SpectrumBase _machine { get; } /// /// The keyboard matrix for a particular spectrum model /// string[] KeyboardMatrix { get; set; } /// /// For 16/48k models /// bool Issue2 { get; set; } /// /// The current keyboard line status /// //byte[] LineStatus { get; set; } /// /// Sets the spectrum key status /// /// /// void SetKeyStatus(string key, bool isPressed); /// /// Gets the status of a spectrum key /// /// /// bool GetKeyStatus(string key); /// /// Returns the query byte /// /// /// byte GetLineStatus(byte lines); /// /// Reads a keyboard byte /// /// /// byte ReadKeyboardByte(ushort addr); /// /// Looks up a key in the keyboard matrix and returns the relevent byte value /// /// /// byte GetByteFromKeyMatrix(string key); void SyncState(Serializer ser); } }