Lines Matching refs:pData

110 static void PutBackChar (S_IMELODY_DATA *pData)  in PutBackChar()  argument
112 if (pData->index) in PutBackChar()
113 pData->index--; in PutBackChar()
117 EAS_INLINE void PutBackChar (S_IMELODY_DATA *pData) { if (pData->index) pData->index--; } in PutBackChar() argument
133 static EAS_BOOL IMY_PlayNote (S_EAS_DATA *pEASData, S_IMELODY_DATA *pData, EAS_I8 note, EAS_INT par…
134 static EAS_BOOL IMY_PlayRest (S_EAS_DATA *pEASData, S_IMELODY_DATA *pData);
135 static EAS_BOOL IMY_GetDuration (EAS_HW_DATA_HANDLE hwInstData, S_IMELODY_DATA *pData, EAS_I32 *pDu…
136 static EAS_BOOL IMY_GetLEDState (S_EAS_DATA *pEASData, S_IMELODY_DATA *pData);
137 static EAS_BOOL IMY_GetVibeState (S_EAS_DATA *pEASData, S_IMELODY_DATA *pData);
138 static EAS_BOOL IMY_GetBackState (S_EAS_DATA *pEASData, S_IMELODY_DATA *pData);
139 static EAS_BOOL IMY_GetVolume (EAS_HW_DATA_HANDLE hwInstData, S_IMELODY_DATA *pData, EAS_BOOL inHea…
140 static EAS_BOOL IMY_GetNumber (EAS_HW_DATA_HANDLE hwInstData, S_IMELODY_DATA *pData, EAS_INT *temp,…
141 static EAS_RESULT IMY_ParseHeader (S_EAS_DATA *pEASData, S_IMELODY_DATA* pData);
142 static EAS_I8 IMY_GetNextChar (EAS_HW_DATA_HANDLE hwInstData, S_IMELODY_DATA *pData, EAS_BOOL inHea…
190 S_IMELODY_DATA* pData; in IMY_CheckFileType() local
209 pData = EAS_CMEnumData(EAS_CM_IMELODY_DATA); in IMY_CheckFileType()
211 pData = EAS_HWMalloc(pEASData->hwInstData, sizeof(S_IMELODY_DATA)); in IMY_CheckFileType()
212 if (!pData) in IMY_CheckFileType()
214 EAS_HWMemSet(pData, 0, sizeof(S_IMELODY_DATA)); in IMY_CheckFileType()
217 pData->fileHandle = fileHandle; in IMY_CheckFileType()
218 pData->fileOffset = offset; in IMY_CheckFileType()
219 pData->state = EAS_STATE_ERROR; in IMY_CheckFileType()
220 pData->state = EAS_STATE_OPEN; in IMY_CheckFileType()
223 *ppHandle = pData; in IMY_CheckFileType()
249 S_IMELODY_DATA* pData; in IMY_Prepare() local
257 pData = (S_IMELODY_DATA*) pInstData; in IMY_Prepare()
258 if (pData->state != EAS_STATE_OPEN) in IMY_Prepare()
262 if ((result = VMInitMIDI(pEASData, &pData->pSynth)) != EAS_SUCCESS) in IMY_Prepare()
269 if ((result = IMY_ParseHeader(pEASData, pData)) != EAS_SUCCESS) in IMY_Prepare()
276 pData ->state = EAS_STATE_READY; in IMY_Prepare()
301 S_IMELODY_DATA *pData; in IMY_Time() local
303 pData = (S_IMELODY_DATA*) pInstData; in IMY_Time()
307 *pTime = pData->time >> 8; in IMY_Time()
330 S_IMELODY_DATA* pData; in IMY_Event() local
336 pData = (S_IMELODY_DATA*) pInstData; in IMY_Event()
337 if (pData->state >= EAS_STATE_OPEN) in IMY_Event()
340 if (pData->state == EAS_STATE_READY) { in IMY_Event()
341 pData->state = EAS_STATE_PLAY; in IMY_Event()
345 if (pData->time == 0) in IMY_Event()
352 VMProgramChange(pEASData->pVoiceMgr, pData->pSynth, IMELODY_CHANNEL, IMELODY_PROGRAM); in IMY_Event()
355 VMControlChange(pEASData->pVoiceMgr, pData->pSynth, IMELODY_CHANNEL, 7, 127); in IMY_Event()
359 if (pData->note) in IMY_Event()
366 VMStopNote(pEASData->pVoiceMgr, pData->pSynth, IMELODY_CHANNEL, pData->note, 0); in IMY_Event()
367 pData->note = 0; in IMY_Event()
370 if (pData->restTicks) in IMY_Event()
372 pData->time += pData->restTicks; in IMY_Event()
373 pData->restTicks = 0; in IMY_Event()
384 c = IMY_GetNextChar(pEASData->hwInstData, pData, EAS_FALSE); in IMY_Event()
395 if (pData->repeatOffset < 0) in IMY_Event()
397 pData->repeatOffset = pData->startLine + (EAS_I32) pData->index; in IMY_Event()
400 pData->repeatTime = pData->time; in IMY_Event()
417 if (pData->repeatTime == pData->time) { in IMY_Event()
418 pData->repeatCount = -1; in IMY_Event()
419 pData->repeatOffset = -1; in IMY_Event()
420 } else if (pData->repeatCount >= 0) { in IMY_Event()
423 if (pData->repeatCount > 0) in IMY_Event()
425 if (--pData->repeatCount == 0) in IMY_Event()
427 pData->repeatCount = -1; in IMY_Event()
436 if ((parserMode == eParserModePlay) || (pData->repeatCount != 0)) in IMY_Event()
443 …if ((result = EAS_HWFileSeek(pEASData->hwInstData, pData->fileHandle, pData->repeatOffset)) != EAS… in IMY_Event()
445 … IMY_ReadLine(pEASData->hwInstData, pData->fileHandle, pData->buffer, &pData->startLine); in IMY_Event()
446 pData->index = 0; in IMY_Event()
449 if (pData->repeatCount == -1) in IMY_Event()
450 pData->repeatOffset = -1; in IMY_Event()
457 if (!IMY_GetNumber(pEASData->hwInstData, pData, &temp, EAS_FALSE)) in IMY_Event()
459 else if (pData->repeatOffset > 0) in IMY_Event()
465 if (pData->repeatCount < 0) in IMY_Event()
466 pData->repeatCount = (EAS_I16) temp; in IMY_Event()
472 if (!IMY_GetVolume(pEASData->hwInstData, pData, EAS_FALSE)) in IMY_Event()
478 pData->noteModifier = -1; in IMY_Event()
483 pData->noteModifier = +1; in IMY_Event()
488 c = IMY_GetNextChar(pEASData->hwInstData, pData, EAS_FALSE); in IMY_Event()
490 pData->octave = (EAS_U8) ((c - '0' + 1) * 12); in IMY_Event()
497 if (!IMY_GetLEDState(pEASData, pData)) in IMY_Event()
503 if (!IMY_GetVibeState(pEASData, pData)) in IMY_Event()
509 if (IMY_GetNextChar(pEASData->hwInstData, pData, EAS_FALSE) == 'a') in IMY_Event()
511 if (!IMY_GetBackState(pEASData, pData)) in IMY_Event()
516 PutBackChar(pData); in IMY_Event()
517 if (IMY_PlayNote(pEASData, pData, c, parserMode)) in IMY_Event()
526 if (IMY_PlayRest(pEASData, pData)) in IMY_Event()
544 if (IMY_PlayNote(pEASData, pData, c, parserMode)) in IMY_Event()
558 pData->state = EAS_STATE_STOPPING; in IMY_Event()
559 VMReleaseAllVoices(pEASData->pVoiceMgr, pData->pSynth); in IMY_Event()
584 S_IMELODY_DATA* pData; in IMY_State() local
587 pData = (S_IMELODY_DATA*) pInstData; in IMY_State()
590 if (pData->state == EAS_STATE_STOPPING) in IMY_State()
592 if (VMActiveVoices(pData->pSynth) == 0) in IMY_State()
594 pData->state = EAS_STATE_STOPPED; in IMY_State()
601 if (pData->state == EAS_STATE_PAUSING) in IMY_State()
603 if (VMActiveVoices(pData->pSynth) == 0) in IMY_State()
608 pData->state = EAS_STATE_PAUSED; in IMY_State()
613 *pState = pData->state; in IMY_State()
636 S_IMELODY_DATA* pData; in IMY_Close() local
643 pData = (S_IMELODY_DATA*) pInstData; in IMY_Close()
646 if ((result = EAS_HWCloseFile(pEASData->hwInstData, pData->fileHandle)) != EAS_SUCCESS) in IMY_Close()
650 if (pData->pSynth != NULL) in IMY_Close()
651 VMMIDIShutdown(pEASData, pData->pSynth); in IMY_Close()
655 EAS_HWFree(pEASData->hwInstData, pData); in IMY_Close()
679 S_IMELODY_DATA* pData; in IMY_Reset() local
685 pData = (S_IMELODY_DATA*) pInstData; in IMY_Reset()
688 VMReset(pEASData->pVoiceMgr, pData->pSynth, EAS_TRUE); in IMY_Reset()
691 pData->time = 0; in IMY_Reset()
692 pData->note = 0; in IMY_Reset()
695 pData->state = EAS_STATE_ERROR; in IMY_Reset()
696 …if ((result = EAS_HWFileSeek(pEASData->hwInstData, pData->fileHandle, pData->fileOffset)) != EAS_S… in IMY_Reset()
698 if ((result = IMY_ParseHeader (pEASData, pData)) != EAS_SUCCESS) in IMY_Reset()
705 pData->state = EAS_STATE_READY; in IMY_Reset()
728 S_IMELODY_DATA *pData; in IMY_Pause() local
735 pData = (S_IMELODY_DATA*) pInstData; in IMY_Pause()
736 if (pData->state == EAS_STATE_STOPPED) in IMY_Pause()
740 VMMuteAllVoices(pEASData->pVoiceMgr, pData->pSynth); in IMY_Pause()
741 pData->state = EAS_STATE_PAUSING; in IMY_Pause()
765 S_IMELODY_DATA *pData; in IMY_Resume() local
772 pData = (S_IMELODY_DATA*) pInstData; in IMY_Resume()
773 if (pData->state == EAS_STATE_STOPPED) in IMY_Resume()
777 pData->state = EAS_STATE_PLAY; in IMY_Resume()
802 S_IMELODY_DATA *pData; in IMY_SetData() local
804 pData = (S_IMELODY_DATA*) pInstData; in IMY_SetData()
810 EAS_HWMemCpy(&pData->metadata, (void*) value, sizeof(S_METADATA_CB)); in IMY_SetData()
840 S_IMELODY_DATA *pData; in IMY_GetData() local
842 pData = (S_IMELODY_DATA*) pInstData; in IMY_GetData()
852 *pValue = (EAS_I32) pData->pSynth; in IMY_GetData()
882 static EAS_BOOL IMY_PlayNote (S_EAS_DATA *pEASData, S_IMELODY_DATA *pData, EAS_I8 note, EAS_INT par… in IMY_PlayNote() argument
893 if (!IMY_GetDuration(pEASData->hwInstData, pData, &duration)) in IMY_PlayNote()
897 pData->note = (EAS_U8) (pData->octave + noteTable[note - 'a'] + pData->noteModifier); in IMY_PlayNote()
898 velocity = (EAS_U8) (pData->volume ? pData->volume * IMELODY_VEL_MUL + IMELODY_VEL_OFS : 0); in IMY_PlayNote()
902 VMStartNote(pEASData->pVoiceMgr, pData->pSynth, IMELODY_CHANNEL, pData->note, velocity); in IMY_PlayNote()
909 switch (pData->style) in IMY_PlayNote()
913 pData->restTicks = duration >> 4; in IMY_PlayNote()
916 pData->restTicks = 0; in IMY_PlayNote()
920 pData->restTicks = duration >> 1; in IMY_PlayNote()
925 pData->restTicks = duration >> 4; in IMY_PlayNote()
930 pData->time += duration - pData->restTicks; in IMY_PlayNote()
933 pData->noteModifier = 0; in IMY_PlayNote()
954 static EAS_BOOL IMY_PlayRest (S_EAS_DATA *pEASData, S_IMELODY_DATA *pData) in IMY_PlayRest() argument
963 if (!IMY_GetDuration(pEASData->hwInstData, pData, &duration)) in IMY_PlayRest()
971 pData->time += duration; in IMY_PlayRest()
992 static EAS_BOOL IMY_GetDuration (EAS_HW_DATA_HANDLE hwInstData, S_IMELODY_DATA *pData, EAS_I32 *pDu… in IMY_GetDuration() argument
999 c = IMY_GetNextChar(hwInstData, pData, EAS_FALSE); in IMY_GetDuration()
1011 duration = pData->tick * (1 << ('5' - c)); in IMY_GetDuration()
1014 c = IMY_GetNextChar(hwInstData, pData, EAS_FALSE); in IMY_GetDuration()
1027 PutBackChar(pData); in IMY_GetDuration()
1050 static EAS_BOOL IMY_GetLEDState (S_EAS_DATA *pEASData, S_IMELODY_DATA *pData) in IMY_GetLEDState() argument
1061 c = IMY_GetNextChar(pEASData->hwInstData, pData, EAS_FALSE); in IMY_GetLEDState()
1115 static EAS_BOOL IMY_GetVibeState (S_EAS_DATA *pEASData, S_IMELODY_DATA *pData) in IMY_GetVibeState() argument
1126 c = IMY_GetNextChar(pEASData->hwInstData, pData, EAS_FALSE); in IMY_GetVibeState()
1180 static EAS_BOOL IMY_GetBackState (S_EAS_DATA *pEASData, S_IMELODY_DATA *pData) in IMY_GetBackState() argument
1191 c = IMY_GetNextChar(pEASData->hwInstData, pData, EAS_FALSE); in IMY_GetBackState()
1245 static EAS_BOOL IMY_GetVolume (EAS_HW_DATA_HANDLE hwInstData, S_IMELODY_DATA *pData, EAS_BOOL inHea… in IMY_GetVolume() argument
1254 c = IMY_GetNextChar(hwInstData, pData, inHeader); in IMY_GetVolume()
1257 if (pData->volume < 15) in IMY_GetVolume()
1258 pData->volume++; in IMY_GetVolume()
1263 if (pData->volume > 0) in IMY_GetVolume()
1264 pData->volume--; in IMY_GetVolume()
1272 c = IMY_GetNextChar(hwInstData, pData, inHeader); in IMY_GetVolume()
1276 PutBackChar(pData); in IMY_GetVolume()
1282 pData->volume = (EAS_U8) temp; in IMY_GetVolume()
1303 static EAS_BOOL IMY_GetNumber (EAS_HW_DATA_HANDLE hwInstData, S_IMELODY_DATA *pData, EAS_INT *temp,… in IMY_GetNumber() argument
1316 c = IMY_GetNextChar(hwInstData, pData, inHeader); in IMY_GetNumber()
1325 PutBackChar(pData); in IMY_GetNumber()
1352 static EAS_BOOL IMY_GetVersion (S_IMELODY_DATA *pData, EAS_INT *pVersion) in IMY_GetVersion() argument
1361 c = pData->buffer[pData->index++]; in IMY_GetVersion()
1401 static void IMY_MetaData (S_IMELODY_DATA *pData, E_EAS_METADATA_TYPE metaType, EAS_I8 *buffer) in IMY_MetaData() argument
1406 if (!pData->metadata.callback) in IMY_MetaData()
1411 if (len >pData->metadata.bufferSize) in IMY_MetaData()
1412 len = pData->metadata.bufferSize; in IMY_MetaData()
1413 strncpy((char*) pData->metadata.buffer, (char*) buffer, (size_t) len); in IMY_MetaData()
1414 pData->metadata.buffer[len] = 0; in IMY_MetaData()
1417 pData->metadata.callback(metaType, pData->metadata.buffer, pData->metadata.pUserData); in IMY_MetaData()
1438 static EAS_RESULT IMY_ParseHeader (S_EAS_DATA *pEASData, S_IMELODY_DATA* pData) in IMY_ParseHeader() argument
1450 pData->time = 0; in IMY_ParseHeader()
1451 pData->tick = DEFAULT_TICK_CONV; in IMY_ParseHeader()
1452 pData->note = 0; in IMY_ParseHeader()
1453 pData->noteModifier = 0; in IMY_ParseHeader()
1454 pData ->restTicks = 0; in IMY_ParseHeader()
1455 pData->volume = 7; in IMY_ParseHeader()
1456 pData->octave = 60; in IMY_ParseHeader()
1457 pData->repeatOffset = -1; in IMY_ParseHeader()
1458 pData->repeatCount = -1; in IMY_ParseHeader()
1459 pData->style = 0; in IMY_ParseHeader()
1462 pData->index = 1; in IMY_ParseHeader()
1468 if (pData->index != 0) in IMY_ParseHeader()
1470 …if ((result = IMY_ReadLine(pEASData->hwInstData, pData->fileHandle, pData->buffer, &pData->startLi… in IMY_ParseHeader()
1478 token = IMY_ParseLine(pData->buffer, &pData->index); in IMY_ParseHeader()
1487 if (!IMY_GetVersion(pData, &temp)) in IMY_ParseHeader()
1500 if (!IMY_GetVersion(pData, &temp)) in IMY_ParseHeader()
1513 IMY_MetaData(pData, EAS_METADATA_TITLE, pData->buffer + pData->index); in IMY_ParseHeader()
1517 IMY_MetaData(pData, EAS_METADATA_AUTHOR, pData->buffer + pData->index); in IMY_ParseHeader()
1522 IMY_GetNumber(pEASData->hwInstData, pData, &temp, EAS_TRUE); in IMY_ParseHeader()
1524 pData->tick = TICK_CONVERT / temp; in IMY_ParseHeader()
1529 c = IMY_GetNextChar(pEASData->hwInstData, pData, EAS_TRUE); in IMY_ParseHeader()
1531 c = IMY_GetNextChar(pEASData->hwInstData, pData, EAS_TRUE); in IMY_ParseHeader()
1533 pData->style = (EAS_U8) (c - '0'); in IMY_ParseHeader()
1536 PutBackChar(pData); in IMY_ParseHeader()
1543 c = IMY_GetNextChar(pEASData->hwInstData, pData, EAS_TRUE); in IMY_ParseHeader()
1546 PutBackChar(pData); in IMY_ParseHeader()
1553 IMY_GetVolume(pEASData->hwInstData, pData, EAS_TRUE); in IMY_ParseHeader()
1568 pData->index = 1; in IMY_ParseHeader()
1591 static EAS_I8 IMY_GetNextChar (EAS_HW_DATA_HANDLE hwInstData, S_IMELODY_DATA *pData, EAS_BOOL inHea… in IMY_GetNextChar() argument
1599 c = pData->buffer[pData->index++]; in IMY_GetNextChar()
1608 pData->index = 0; in IMY_GetNextChar()
1609 pData->buffer[0] = 0; in IMY_GetNextChar()
1610 … if (IMY_ReadLine(hwInstData, pData->fileHandle, pData->buffer, &pData->startLine) != EAS_SUCCESS) in IMY_GetNextChar()
1619 if (IMY_ParseLine(pData->buffer, &index) == TOKEN_END) in IMY_GetNextChar()
1624 pData->buffer[0] = 0; in IMY_GetNextChar()