{-# LINE 1 "Sound/MikMod/Errors.hsc" #-}
{-# LANGUAGE ForeignFunctionInterface #-}
{-# LINE 2 "Sound/MikMod/Errors.hsc" #-}
{-# LANGUAGE DeriveDataTypeable #-}
module Sound.MikMod.Errors (
MikModError(..),
getErrno,
isNotAnError,
describeMikModError,
MikModException(..),
MikModErrno(..),
marshalMikModErrno,
unmarshalMikModErrno,
) where
import Foreign.C.Types
import Data.Typeable
import Control.Exception
import System.IO.Unsafe
import Foreign.C.String
{-# LINE 21 "Sound/MikMod/Errors.hsc" #-}
foreign import ccall safe "mikmod.h MikMod_strerror" c_MikMod_strerror :: CInt -> IO CString
data MikModError =
NonCritical MikModErrno |
Critical MikModErrno
deriving (Eq, Show)
getErrno :: MikModError -> MikModErrno
getErrno (Critical e) = e
getErrno (NonCritical e) = e
isNotAnError :: MikModError -> Bool
isNotAnError e = getErrno e == MMErrNoError
data MikModErrno =
MMErrNoError |
MMErrOpeningFile |
MMErrOutOfMemory |
MMErrDynamicLinking |
MMErrSampleTooBig |
MMErrOutOfHandles |
MMErrUnknownWaveType |
MMErrLoadingPattern |
MMErrLoadingTrack |
MMErrLoadingHeader |
MMErrLoadingSampleinfo |
MMErrNotAModule |
MMErrNotAStream |
MMErrMedSynthsamples |
MMErrItpackInvalidData |
MMErrDetectingDevice |
MMErrInvalidDevice |
MMErrInitializingMixer |
MMErrOpeningAudio |
MMErr8bitOnly |
MMErr16bitOnly |
MMErrStereoOnly |
MMErrUlaw |
MMErrNonBlock |
MMErrAfAudioPort |
MMErrAixConfigInit |
MMErrAixConfigControl |
MMErrAixConfigStart |
MMErrGusSettings |
MMErrGusReset |
MMErrGusTimer |
MMErrHpSetsamplesize |
MMErrHpSetspeed |
MMErrHpChannels |
MMErrHpAudioOutput |
MMErrHpAudioDesc |
MMErrHpBuffersize |
MMErrOssSetfragment |
MMErrOssSetsamplesize |
MMErrOssSetstereo |
MMErrOssSetspeed |
MMErrSgiSpeed |
MMErrSgi16bit |
MMErrSgi8bit |
MMErrSgiStereo |
MMErrSgiMono |
MMErrSunInit |
MMErrOs2Mixsetup |
MMErrOs2Semaphore |
MMErrOs2Timer |
MMErrOs2Thread |
MMErrDsPriority |
MMErrDsBuffer |
MMErrDsFormat |
MMErrDsNotify |
MMErrDsEvent |
MMErrDsThread |
MMErrDsUpdate |
MMErrWinmmHandle |
MMErrWinmmAllocated |
MMErrWinmmDeviceid |
MMErrWinmmFormat |
MMErrWinmmUnknown |
MMErrMacSpeed |
MMErrMacStart |
MMErrOsxUnknownDevice |
MMErrOsxBadProperty |
MMErrOsxUnsupportedFormat |
MMErrOsxSetStereo |
MMErrOsxBufferAlloc |
MMErrOsxAddIoProc |
MMErrOsxDeviceStart |
MMErrOsxPthread |
MMErrDoswssStartdma |
MMErrDossbStartdma |
MMErrNoFloat32 |
MMErrOpenalCreatectx |
MMErrOpenalCtxcurrent |
MMErrOpenalGenbuffers |
MMErrOpenalGensources |
MMErrOpenalSource |
MMErrOpenalQueuebuffers |
MMErrOpenalUnqueuebuffers |
MMErrOpenalBufferdata |
MMErrOpenalGetsource |
MMErrOpenalSourceplay |
MMErrOpenalSourcestop |
MMErrAlsaNoconfig |
MMErrAlsaSetparams |
MMErrAlsaSetformat |
MMErrAlsaSetrate |
MMErrAlsaSetchannels |
MMErrAlsaBuffersize |
MMErrAlsaPcmStart |
MMErrAlsaPcmWrite |
MMErrAlsaPcmRecover |
MMErrMax |
MMErrUnknown CInt
deriving (Eq, Ord, Show)
newtype MikModException = MikModException MikModError
deriving (Eq, Typeable)
instance Show MikModException where
show (MikModException e) = "MikModError " ++ describeMikModError e
instance Exception MikModException
describeMikModError :: MikModError -> String
describeMikModError e = unsafePerformIO $ do
let errno = getErrno e
msg <- peekCString =<< c_MikMod_strerror (marshalMikModErrno errno)
case e of
Critical _ -> return $ "*critical* " ++ msg
NonCritical _ -> return msg
marshalMikModErrno :: MikModErrno -> CInt
marshalMikModErrno e = case e of
MMErrNoError -> 0
MMErrOpeningFile -> (1)
{-# LINE 162 "Sound/MikMod/Errors.hsc" #-}
MMErrOutOfMemory -> (2)
{-# LINE 163 "Sound/MikMod/Errors.hsc" #-}
MMErrDynamicLinking -> (3)
{-# LINE 164 "Sound/MikMod/Errors.hsc" #-}
MMErrSampleTooBig -> (4)
{-# LINE 165 "Sound/MikMod/Errors.hsc" #-}
MMErrOutOfHandles -> (5)
{-# LINE 166 "Sound/MikMod/Errors.hsc" #-}
MMErrUnknownWaveType -> (6)
{-# LINE 167 "Sound/MikMod/Errors.hsc" #-}
MMErrLoadingPattern -> (7)
{-# LINE 168 "Sound/MikMod/Errors.hsc" #-}
MMErrLoadingTrack -> (8)
{-# LINE 169 "Sound/MikMod/Errors.hsc" #-}
MMErrLoadingHeader -> (9)
{-# LINE 170 "Sound/MikMod/Errors.hsc" #-}
MMErrLoadingSampleinfo -> (10)
{-# LINE 171 "Sound/MikMod/Errors.hsc" #-}
MMErrNotAModule -> (11)
{-# LINE 172 "Sound/MikMod/Errors.hsc" #-}
MMErrNotAStream -> (12)
{-# LINE 173 "Sound/MikMod/Errors.hsc" #-}
MMErrMedSynthsamples -> (13)
{-# LINE 174 "Sound/MikMod/Errors.hsc" #-}
MMErrItpackInvalidData -> (14)
{-# LINE 175 "Sound/MikMod/Errors.hsc" #-}
MMErrDetectingDevice -> (15)
{-# LINE 176 "Sound/MikMod/Errors.hsc" #-}
MMErrInvalidDevice -> (16)
{-# LINE 177 "Sound/MikMod/Errors.hsc" #-}
MMErrInitializingMixer -> (17)
{-# LINE 178 "Sound/MikMod/Errors.hsc" #-}
MMErrOpeningAudio -> (18)
{-# LINE 179 "Sound/MikMod/Errors.hsc" #-}
MMErr8bitOnly -> (19)
{-# LINE 180 "Sound/MikMod/Errors.hsc" #-}
MMErr16bitOnly -> (20)
{-# LINE 181 "Sound/MikMod/Errors.hsc" #-}
MMErrStereoOnly -> (21)
{-# LINE 182 "Sound/MikMod/Errors.hsc" #-}
MMErrUlaw -> (22)
{-# LINE 183 "Sound/MikMod/Errors.hsc" #-}
MMErrNonBlock -> (23)
{-# LINE 184 "Sound/MikMod/Errors.hsc" #-}
MMErrAfAudioPort -> (24)
{-# LINE 185 "Sound/MikMod/Errors.hsc" #-}
MMErrAixConfigInit -> (25)
{-# LINE 186 "Sound/MikMod/Errors.hsc" #-}
MMErrAixConfigControl -> (26)
{-# LINE 187 "Sound/MikMod/Errors.hsc" #-}
MMErrAixConfigStart -> (27)
{-# LINE 188 "Sound/MikMod/Errors.hsc" #-}
MMErrGusSettings -> (28)
{-# LINE 189 "Sound/MikMod/Errors.hsc" #-}
MMErrGusReset -> (29)
{-# LINE 190 "Sound/MikMod/Errors.hsc" #-}
MMErrGusTimer -> (30)
{-# LINE 191 "Sound/MikMod/Errors.hsc" #-}
MMErrHpSetsamplesize -> (31)
{-# LINE 192 "Sound/MikMod/Errors.hsc" #-}
MMErrHpSetspeed -> (32)
{-# LINE 193 "Sound/MikMod/Errors.hsc" #-}
MMErrHpChannels -> (33)
{-# LINE 194 "Sound/MikMod/Errors.hsc" #-}
MMErrHpAudioOutput -> (34)
{-# LINE 195 "Sound/MikMod/Errors.hsc" #-}
MMErrHpAudioDesc -> (35)
{-# LINE 196 "Sound/MikMod/Errors.hsc" #-}
MMErrHpBuffersize -> (36)
{-# LINE 197 "Sound/MikMod/Errors.hsc" #-}
MMErrOssSetfragment -> (37)
{-# LINE 198 "Sound/MikMod/Errors.hsc" #-}
MMErrOssSetsamplesize -> (38)
{-# LINE 199 "Sound/MikMod/Errors.hsc" #-}
MMErrOssSetstereo -> (39)
{-# LINE 200 "Sound/MikMod/Errors.hsc" #-}
MMErrOssSetspeed -> (40)
{-# LINE 201 "Sound/MikMod/Errors.hsc" #-}
MMErrSgiSpeed -> (41)
{-# LINE 202 "Sound/MikMod/Errors.hsc" #-}
MMErrSgi16bit -> (42)
{-# LINE 203 "Sound/MikMod/Errors.hsc" #-}
MMErrSgi8bit -> (43)
{-# LINE 204 "Sound/MikMod/Errors.hsc" #-}
MMErrSgiStereo -> (44)
{-# LINE 205 "Sound/MikMod/Errors.hsc" #-}
MMErrSgiMono -> (45)
{-# LINE 206 "Sound/MikMod/Errors.hsc" #-}
MMErrSunInit -> (46)
{-# LINE 207 "Sound/MikMod/Errors.hsc" #-}
MMErrOs2Mixsetup -> (47)
{-# LINE 208 "Sound/MikMod/Errors.hsc" #-}
MMErrOs2Semaphore -> (48)
{-# LINE 209 "Sound/MikMod/Errors.hsc" #-}
MMErrOs2Timer -> (49)
{-# LINE 210 "Sound/MikMod/Errors.hsc" #-}
MMErrOs2Thread -> (50)
{-# LINE 211 "Sound/MikMod/Errors.hsc" #-}
MMErrDsPriority -> (51)
{-# LINE 212 "Sound/MikMod/Errors.hsc" #-}
MMErrDsBuffer -> (52)
{-# LINE 213 "Sound/MikMod/Errors.hsc" #-}
MMErrDsFormat -> (53)
{-# LINE 214 "Sound/MikMod/Errors.hsc" #-}
MMErrDsNotify -> (54)
{-# LINE 215 "Sound/MikMod/Errors.hsc" #-}
MMErrDsEvent -> (55)
{-# LINE 216 "Sound/MikMod/Errors.hsc" #-}
MMErrDsThread -> (56)
{-# LINE 217 "Sound/MikMod/Errors.hsc" #-}
MMErrDsUpdate -> (57)
{-# LINE 218 "Sound/MikMod/Errors.hsc" #-}
MMErrWinmmHandle -> (58)
{-# LINE 219 "Sound/MikMod/Errors.hsc" #-}
MMErrWinmmAllocated -> (59)
{-# LINE 220 "Sound/MikMod/Errors.hsc" #-}
MMErrWinmmDeviceid -> (60)
{-# LINE 221 "Sound/MikMod/Errors.hsc" #-}
MMErrWinmmFormat -> (61)
{-# LINE 222 "Sound/MikMod/Errors.hsc" #-}
MMErrWinmmUnknown -> (62)
{-# LINE 223 "Sound/MikMod/Errors.hsc" #-}
MMErrMacSpeed -> (63)
{-# LINE 224 "Sound/MikMod/Errors.hsc" #-}
MMErrMacStart -> (64)
{-# LINE 225 "Sound/MikMod/Errors.hsc" #-}
MMErrOsxUnknownDevice -> (65)
{-# LINE 226 "Sound/MikMod/Errors.hsc" #-}
MMErrOsxBadProperty -> (66)
{-# LINE 227 "Sound/MikMod/Errors.hsc" #-}
MMErrOsxUnsupportedFormat -> (67)
{-# LINE 228 "Sound/MikMod/Errors.hsc" #-}
MMErrOsxSetStereo -> (68)
{-# LINE 229 "Sound/MikMod/Errors.hsc" #-}
MMErrOsxBufferAlloc -> (69)
{-# LINE 230 "Sound/MikMod/Errors.hsc" #-}
MMErrOsxAddIoProc -> (70)
{-# LINE 231 "Sound/MikMod/Errors.hsc" #-}
MMErrOsxDeviceStart -> (71)
{-# LINE 232 "Sound/MikMod/Errors.hsc" #-}
MMErrOsxPthread -> (72)
{-# LINE 233 "Sound/MikMod/Errors.hsc" #-}
MMErrDoswssStartdma -> (73)
{-# LINE 234 "Sound/MikMod/Errors.hsc" #-}
MMErrDossbStartdma -> (74)
{-# LINE 235 "Sound/MikMod/Errors.hsc" #-}
MMErrNoFloat32 -> (75)
{-# LINE 236 "Sound/MikMod/Errors.hsc" #-}
MMErrOpenalCreatectx -> (76)
{-# LINE 237 "Sound/MikMod/Errors.hsc" #-}
MMErrOpenalCtxcurrent -> (77)
{-# LINE 238 "Sound/MikMod/Errors.hsc" #-}
MMErrOpenalGenbuffers -> (78)
{-# LINE 239 "Sound/MikMod/Errors.hsc" #-}
MMErrOpenalGensources -> (79)
{-# LINE 240 "Sound/MikMod/Errors.hsc" #-}
MMErrOpenalSource -> (80)
{-# LINE 241 "Sound/MikMod/Errors.hsc" #-}
MMErrOpenalQueuebuffers -> (81)
{-# LINE 242 "Sound/MikMod/Errors.hsc" #-}
MMErrOpenalUnqueuebuffers -> (82)
{-# LINE 243 "Sound/MikMod/Errors.hsc" #-}
MMErrOpenalBufferdata -> (83)
{-# LINE 244 "Sound/MikMod/Errors.hsc" #-}
MMErrOpenalGetsource -> (84)
{-# LINE 245 "Sound/MikMod/Errors.hsc" #-}
MMErrOpenalSourceplay -> (85)
{-# LINE 246 "Sound/MikMod/Errors.hsc" #-}
MMErrOpenalSourcestop -> (86)
{-# LINE 247 "Sound/MikMod/Errors.hsc" #-}
MMErrAlsaNoconfig -> (87)
{-# LINE 248 "Sound/MikMod/Errors.hsc" #-}
MMErrAlsaSetparams -> (88)
{-# LINE 249 "Sound/MikMod/Errors.hsc" #-}
MMErrAlsaSetformat -> (89)
{-# LINE 250 "Sound/MikMod/Errors.hsc" #-}
MMErrAlsaSetrate -> (90)
{-# LINE 251 "Sound/MikMod/Errors.hsc" #-}
MMErrAlsaSetchannels -> (91)
{-# LINE 252 "Sound/MikMod/Errors.hsc" #-}
MMErrAlsaBuffersize -> (92)
{-# LINE 253 "Sound/MikMod/Errors.hsc" #-}
MMErrAlsaPcmStart -> (93)
{-# LINE 254 "Sound/MikMod/Errors.hsc" #-}
MMErrAlsaPcmWrite -> (94)
{-# LINE 255 "Sound/MikMod/Errors.hsc" #-}
MMErrAlsaPcmRecover -> (95)
{-# LINE 256 "Sound/MikMod/Errors.hsc" #-}
MMErrMax -> (98)
{-# LINE 257 "Sound/MikMod/Errors.hsc" #-}
MMErrUnknown n -> n
unmarshalMikModErrno :: CInt -> MikModErrno
unmarshalMikModErrno code = case code of
0 -> MMErrNoError
(1) -> MMErrOpeningFile
{-# LINE 263 "Sound/MikMod/Errors.hsc" #-}
(2) -> MMErrOutOfMemory
{-# LINE 264 "Sound/MikMod/Errors.hsc" #-}
(3) -> MMErrDynamicLinking
{-# LINE 265 "Sound/MikMod/Errors.hsc" #-}
(4) -> MMErrSampleTooBig
{-# LINE 266 "Sound/MikMod/Errors.hsc" #-}
(5) -> MMErrOutOfHandles
{-# LINE 267 "Sound/MikMod/Errors.hsc" #-}
(6) -> MMErrUnknownWaveType
{-# LINE 268 "Sound/MikMod/Errors.hsc" #-}
(7) -> MMErrLoadingPattern
{-# LINE 269 "Sound/MikMod/Errors.hsc" #-}
(8) -> MMErrLoadingTrack
{-# LINE 270 "Sound/MikMod/Errors.hsc" #-}
(9) -> MMErrLoadingHeader
{-# LINE 271 "Sound/MikMod/Errors.hsc" #-}
(10) -> MMErrLoadingSampleinfo
{-# LINE 272 "Sound/MikMod/Errors.hsc" #-}
(11) -> MMErrNotAModule
{-# LINE 273 "Sound/MikMod/Errors.hsc" #-}
(12) -> MMErrNotAStream
{-# LINE 274 "Sound/MikMod/Errors.hsc" #-}
(13) -> MMErrMedSynthsamples
{-# LINE 275 "Sound/MikMod/Errors.hsc" #-}
(14) -> MMErrItpackInvalidData
{-# LINE 276 "Sound/MikMod/Errors.hsc" #-}
(15) -> MMErrDetectingDevice
{-# LINE 277 "Sound/MikMod/Errors.hsc" #-}
(16) -> MMErrInvalidDevice
{-# LINE 278 "Sound/MikMod/Errors.hsc" #-}
(17) -> MMErrInitializingMixer
{-# LINE 279 "Sound/MikMod/Errors.hsc" #-}
(18) -> MMErrOpeningAudio
{-# LINE 280 "Sound/MikMod/Errors.hsc" #-}
(19) -> MMErr8bitOnly
{-# LINE 281 "Sound/MikMod/Errors.hsc" #-}
(20) -> MMErr16bitOnly
{-# LINE 282 "Sound/MikMod/Errors.hsc" #-}
(21) -> MMErrStereoOnly
{-# LINE 283 "Sound/MikMod/Errors.hsc" #-}
(22) -> MMErrUlaw
{-# LINE 284 "Sound/MikMod/Errors.hsc" #-}
(23) -> MMErrNonBlock
{-# LINE 285 "Sound/MikMod/Errors.hsc" #-}
(24) -> MMErrAfAudioPort
{-# LINE 286 "Sound/MikMod/Errors.hsc" #-}
(25) -> MMErrAixConfigInit
{-# LINE 287 "Sound/MikMod/Errors.hsc" #-}
(26) -> MMErrAixConfigControl
{-# LINE 288 "Sound/MikMod/Errors.hsc" #-}
(27) -> MMErrAixConfigStart
{-# LINE 289 "Sound/MikMod/Errors.hsc" #-}
(28) -> MMErrGusSettings
{-# LINE 290 "Sound/MikMod/Errors.hsc" #-}
(29) -> MMErrGusReset
{-# LINE 291 "Sound/MikMod/Errors.hsc" #-}
(30) -> MMErrGusTimer
{-# LINE 292 "Sound/MikMod/Errors.hsc" #-}
(31) -> MMErrHpSetsamplesize
{-# LINE 293 "Sound/MikMod/Errors.hsc" #-}
(32) -> MMErrHpSetspeed
{-# LINE 294 "Sound/MikMod/Errors.hsc" #-}
(33) -> MMErrHpChannels
{-# LINE 295 "Sound/MikMod/Errors.hsc" #-}
(34) -> MMErrHpAudioOutput
{-# LINE 296 "Sound/MikMod/Errors.hsc" #-}
(35) -> MMErrHpAudioDesc
{-# LINE 297 "Sound/MikMod/Errors.hsc" #-}
(36) -> MMErrHpBuffersize
{-# LINE 298 "Sound/MikMod/Errors.hsc" #-}
(37) -> MMErrOssSetfragment
{-# LINE 299 "Sound/MikMod/Errors.hsc" #-}
(38) -> MMErrOssSetsamplesize
{-# LINE 300 "Sound/MikMod/Errors.hsc" #-}
(39) -> MMErrOssSetstereo
{-# LINE 301 "Sound/MikMod/Errors.hsc" #-}
(40) -> MMErrOssSetspeed
{-# LINE 302 "Sound/MikMod/Errors.hsc" #-}
(41) -> MMErrSgiSpeed
{-# LINE 303 "Sound/MikMod/Errors.hsc" #-}
(42) -> MMErrSgi16bit
{-# LINE 304 "Sound/MikMod/Errors.hsc" #-}
(43) -> MMErrSgi8bit
{-# LINE 305 "Sound/MikMod/Errors.hsc" #-}
(44) -> MMErrSgiStereo
{-# LINE 306 "Sound/MikMod/Errors.hsc" #-}
(45) -> MMErrSgiMono
{-# LINE 307 "Sound/MikMod/Errors.hsc" #-}
(46) -> MMErrSunInit
{-# LINE 308 "Sound/MikMod/Errors.hsc" #-}
(47) -> MMErrOs2Mixsetup
{-# LINE 309 "Sound/MikMod/Errors.hsc" #-}
(48) -> MMErrOs2Semaphore
{-# LINE 310 "Sound/MikMod/Errors.hsc" #-}
(49) -> MMErrOs2Timer
{-# LINE 311 "Sound/MikMod/Errors.hsc" #-}
(50) -> MMErrOs2Thread
{-# LINE 312 "Sound/MikMod/Errors.hsc" #-}
(51) -> MMErrDsPriority
{-# LINE 313 "Sound/MikMod/Errors.hsc" #-}
(52) -> MMErrDsBuffer
{-# LINE 314 "Sound/MikMod/Errors.hsc" #-}
(53) -> MMErrDsFormat
{-# LINE 315 "Sound/MikMod/Errors.hsc" #-}
(54) -> MMErrDsNotify
{-# LINE 316 "Sound/MikMod/Errors.hsc" #-}
(55) -> MMErrDsEvent
{-# LINE 317 "Sound/MikMod/Errors.hsc" #-}
(56) -> MMErrDsThread
{-# LINE 318 "Sound/MikMod/Errors.hsc" #-}
(57) -> MMErrDsUpdate
{-# LINE 319 "Sound/MikMod/Errors.hsc" #-}
(58) -> MMErrWinmmHandle
{-# LINE 320 "Sound/MikMod/Errors.hsc" #-}
(59) -> MMErrWinmmAllocated
{-# LINE 321 "Sound/MikMod/Errors.hsc" #-}
(60) -> MMErrWinmmDeviceid
{-# LINE 322 "Sound/MikMod/Errors.hsc" #-}
(61) -> MMErrWinmmFormat
{-# LINE 323 "Sound/MikMod/Errors.hsc" #-}
(62) -> MMErrWinmmUnknown
{-# LINE 324 "Sound/MikMod/Errors.hsc" #-}
(63) -> MMErrMacSpeed
{-# LINE 325 "Sound/MikMod/Errors.hsc" #-}
(64) -> MMErrMacStart
{-# LINE 326 "Sound/MikMod/Errors.hsc" #-}
(65) -> MMErrOsxUnknownDevice
{-# LINE 327 "Sound/MikMod/Errors.hsc" #-}
(66) -> MMErrOsxBadProperty
{-# LINE 328 "Sound/MikMod/Errors.hsc" #-}
(67) -> MMErrOsxUnsupportedFormat
{-# LINE 329 "Sound/MikMod/Errors.hsc" #-}
(68) -> MMErrOsxSetStereo
{-# LINE 330 "Sound/MikMod/Errors.hsc" #-}
(69) -> MMErrOsxBufferAlloc
{-# LINE 331 "Sound/MikMod/Errors.hsc" #-}
(70) -> MMErrOsxAddIoProc
{-# LINE 332 "Sound/MikMod/Errors.hsc" #-}
(71) -> MMErrOsxDeviceStart
{-# LINE 333 "Sound/MikMod/Errors.hsc" #-}
(72) -> MMErrOsxPthread
{-# LINE 334 "Sound/MikMod/Errors.hsc" #-}
(73) -> MMErrDoswssStartdma
{-# LINE 335 "Sound/MikMod/Errors.hsc" #-}
(74) -> MMErrDossbStartdma
{-# LINE 336 "Sound/MikMod/Errors.hsc" #-}
(75) -> MMErrNoFloat32
{-# LINE 337 "Sound/MikMod/Errors.hsc" #-}
(76) -> MMErrOpenalCreatectx
{-# LINE 338 "Sound/MikMod/Errors.hsc" #-}
(77) -> MMErrOpenalCtxcurrent
{-# LINE 339 "Sound/MikMod/Errors.hsc" #-}
(78) -> MMErrOpenalGenbuffers
{-# LINE 340 "Sound/MikMod/Errors.hsc" #-}
(79) -> MMErrOpenalGensources
{-# LINE 341 "Sound/MikMod/Errors.hsc" #-}
(80) -> MMErrOpenalSource
{-# LINE 342 "Sound/MikMod/Errors.hsc" #-}
(81) -> MMErrOpenalQueuebuffers
{-# LINE 343 "Sound/MikMod/Errors.hsc" #-}
(82) -> MMErrOpenalUnqueuebuffers
{-# LINE 344 "Sound/MikMod/Errors.hsc" #-}
(83) -> MMErrOpenalBufferdata
{-# LINE 345 "Sound/MikMod/Errors.hsc" #-}
(84) -> MMErrOpenalGetsource
{-# LINE 346 "Sound/MikMod/Errors.hsc" #-}
(85) -> MMErrOpenalSourceplay
{-# LINE 347 "Sound/MikMod/Errors.hsc" #-}
(86) -> MMErrOpenalSourcestop
{-# LINE 348 "Sound/MikMod/Errors.hsc" #-}
(87) -> MMErrAlsaNoconfig
{-# LINE 349 "Sound/MikMod/Errors.hsc" #-}
(88) -> MMErrAlsaSetparams
{-# LINE 350 "Sound/MikMod/Errors.hsc" #-}
(89) -> MMErrAlsaSetformat
{-# LINE 351 "Sound/MikMod/Errors.hsc" #-}
(90) -> MMErrAlsaSetrate
{-# LINE 352 "Sound/MikMod/Errors.hsc" #-}
(91) -> MMErrAlsaSetchannels
{-# LINE 353 "Sound/MikMod/Errors.hsc" #-}
(92) -> MMErrAlsaBuffersize
{-# LINE 354 "Sound/MikMod/Errors.hsc" #-}
(93) -> MMErrAlsaPcmStart
{-# LINE 355 "Sound/MikMod/Errors.hsc" #-}
(94) -> MMErrAlsaPcmWrite
{-# LINE 356 "Sound/MikMod/Errors.hsc" #-}
(95) -> MMErrAlsaPcmRecover
{-# LINE 357 "Sound/MikMod/Errors.hsc" #-}
(98) -> MMErrMax
{-# LINE 358 "Sound/MikMod/Errors.hsc" #-}
x -> MMErrUnknown x