register :: Parser Expr
register = do
    reg <- parseMaybe readMaybeUpper
    return $ if regIs8Bit reg then Reg8 reg
        else case reg of
            IX -> Reg16Index IX
            IY -> Reg16Index IY
            _ -> Reg16 reg
register :: Parser Expr
register = do
    reg <- parseMaybe readMaybeUpper
    return $ if regIs8Bit reg then Reg8 reg
        else case reg of
            IX -> Reg16Index IX
            IY -> Reg16Index IY
            _ -> Reg16 reg
register = do
    reg <- parseMaybe readMaybeUpper
    return $ if regIs8Bit reg then Reg8 reg
        else case reg of
            IX -> Reg16Index IX
            IY -> Reg16Index IY
            _ -> Reg16 reg