LibXM7
Functions
libXM7 ARM7 functions.

Functions

void XM7_Initialize (void)
 Perform initialization of the library. More...
 
void XM7_PlayModule (XM7_ModuleManager_Type *TheModule)
 This function makes the module start playing. More...
 
void XM7_PlayModuleFromPos (XM7_ModuleManager_Type *TheModule, u8 position)
 This function makes the module start playing from a given position. More...
 
void XM7_StopModule (void)
 This function stops the module. More...
 

Detailed Description

Function Documentation

◆ XM7_Initialize()

void XM7_Initialize ( void  )

Perform initialization of the library.

This function should be called just once, before calling any other function.

◆ XM7_PlayModule()

void XM7_PlayModule ( XM7_ModuleManager_Type *  TheModule)

This function makes the module start playing.

It doesn't turn on the speakers, nor does it set the master volume: all that is up to you. The following parameter should be passed to the function: a pointer to a XM7_ModuleManager_Type structure where an XM module should have already been loaded.

Parameters
TheModuleModule to be played.

◆ XM7_PlayModuleFromPos()

void XM7_PlayModuleFromPos ( XM7_ModuleManager_Type *  TheModule,
u8  position 
)

This function makes the module start playing from a given position.

It works like XM7_PlayModule() but requires one more parameter: the position (in the Pattern Order Table) where the replay should start. Using this function and tracking XMs in 'sections' you can actually pack many tunes sharing the same instruments in a single XM file. When it's required to switch to a different tune you would then simply stop the module and play the same module again just starting from a different position.

Parameters
TheModuleModule to be played.
positionPosition in Pattern Order Table.

◆ XM7_StopModule()

void XM7_StopModule ( void  )

This function stops the module.

It abruptly interrupts every sample of the module being played.