]> 4ch.mooo.com Git - 16.git/blobdiff - src/lib/vgmsnd/vgmSnd.c
16_ca needs huge amounts of work and I should remember what needs to be done soon...
[16.git] / src / lib / vgmsnd / vgmSnd.c
index 1bd719f8c0a26f470d4379c6766816a206623748..2cfd8690c36a008a07cdd7df39d383de07a833f9 100755 (executable)
@@ -137,7 +137,7 @@ static const UINT8 CHN_OPMASK_REV[0x20] =
        0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};\r
 \r
 \r
-UINT8 OpenVGMFile(const char* FileName, VGM_FILE* vgmFile)\r
+UINT8 OpenVGMFile(const char* FileName, VGM_FILE* vgmFile, global_game_variables_t *gvar)\r
 {\r
        size_t hdrSize;\r
        size_t readEl;  // 'elements' read from file\r
@@ -171,7 +171,9 @@ UINT8 OpenVGMFile(const char* FileName, VGM_FILE* vgmFile)
        }\r
 \r
        vgmFile->dataLen = vgmBaseHdr.lngEOFOffset + 0x04;\r
-       vgmFile->data = (UINT8*)malloc(vgmFile->dataLen);\r
+       //vgmFile->data = (UINT8*)malloc(vgmFile->dataLen);\r
+       MM_GetPtr(MEMPTRCONV gvar->ca.audiosegs[0], vgmFile->dataLen, gvar);\r
+       vgmFile->data = (UINT8*)gvar->ca.audiosegs[0];\r
        if (vgmFile->data == NULL)\r
        {\r
                fclose(hFile);\r
@@ -212,12 +214,14 @@ UINT8 OpenVGMFile(const char* FileName, VGM_FILE* vgmFile)
        return 0x00;\r
 }\r
 \r
-void FreeVGMFile(VGM_FILE* vgmFile)\r
+void FreeVGMFile(VGM_FILE* vgmFile, global_game_variables_t *gvar)\r
 {\r
-       free(vgmFile->data);    vgmFile->data = NULL;\r
+       //if(vgmFile->data){ free(vgmFile->data);       vgmFile->data = NULL; }\r
+       MM_FreePtr(MEMPTRCONV gvar->ca.audiosegs[0], gvar);\r
+       if(vgmFile->data) free(vgmFile->data);\r
        vgmFile->dataLen = 0;\r
 \r
-       return;\r
+//     return;\r
 }\r
 \r
 \r