"""
Collected SysEx constants
"""
from enum import IntEnum, unique
"""Miscellaneous"""
[docs]
SUB_ID_2_IDENTITY_REQUEST = 0x01
[docs]
SUB_ID_2_IDENTITY_REPLY = 0x02
[docs]
LOW_1_BIT_MASK = 0x01 # Mask for only the lowest (1st) bit
[docs]
LOW_2_BITS_MASK = 0x03 # Mask for lowest 2 bits (0b00000011)
[docs]
LOW_4_BITS_MASK = 0x0F # Mask for lowest 4 bits (a nibble)
[docs]
LOW_7_BITS_MASK = 0x7F # MIDI data byte mask (7-bit, valid for MIDI)
[docs]
FULL_BYTE_MASK = 0xFF # Full 8 bits — masks a whole byte
[docs]
HIGH_4_BITS_MASK = 0xF0 # High nibble mask
[docs]
WORD_MASK = 0xFFFF # Word mask (16 bits, 2 bytes)
[docs]
MAX_EIGHT_BIT_VALUE = 255 # maximum values held by eight bits
@unique
[docs]
class RolandID(IntEnum):
"""Roland IDs"""
@unique
[docs]
class ResponseID(IntEnum):
"""Midi responses"""
[docs]
ACK = 0x4F # Acknowledge