Nice work as always mate!

The winamp plugin trickery I used in my
Amiga music playback thingy does the magic an replays your file. I quickly hacked together an example, how to use it:
; compiled with PB 5.31 (x86)
;don't compile this as an unicode exe as it won't work! you have been warned ^^
Structure Winamp
DllPtr.l
InitWinamp.l
SetWinampPlugin.l
PlayWinamp.l
StopWinamp.l
CloseWinamp.l
EndStructure
Global Winamp.Winamp
Procedure InitWinampReplay()
With Winamp
\DllPtr=LoadLibraryM(?PLAY)
\InitWinamp=GetProcAddressM(\DllPtr,"InitWinamp")
\SetWinampPlugin=GetProcAddressM(\DLLPtr,"SetWinampPlugin")
\PlayWinamp=GetProcAddressM(\DLLPtr,"PlayWinamp")
\StopWinamp=GetProcAddressM(\DLLPtr,"StopWinamp")
\CloseWinamp=GetProcAddressM(\DLLPtr,"CloseWinamp")
EndWith
EndProcedure
InitWinampReplay()
CallFunctionFast(Winamp\InitWinamp)
CallFunctionFast(Winamp\SetWinampPlugin,?dll,?enddll-?dll)
CallFunctionFast(Winamp\PlayWinamp,?song,?songend-?song)
MessageRequester("Info","Playing the Bittner Rap...",0)
CallFunctionFast(winamp\StopWinamp)
CallFunctionFast(winamp\CloseWinamp)
End
DataSection
dll:
IncludeBinary "in_sk00l.dll" ;winamp plugin by surfsmurf
enddll:
play:
IncludeBinary "wplay.dll" ;winamp routines from testaware's old'fun_extension" userlib
song:
IncludeBinary "bittner_rap.mod"
songend:
EndDataSection It makes use of a(ny) winamp plugin to replay the music. In this case the in_sk00l.dll (can be found
here ) This is achieved by using the functions in wplay.dll. I created this dll using a userlib by
Peace^Testaware, which he created for PB 4.x a long time ago. This way I can still use the functions with PB 5.x.
Both dlls are packed with UPX. All in all it should add an extra 100kb to your exe. Hope that is small enough. It might be a good idea to unpack the dlls though and pack the whole exe. Otherwise modern AV will go bananas... Oh and it uses the PBOSL_LoadDllMemory userlib to load the dlls from memory. But I guess you've got that installed already.
Happy shoehorning it in!
ZIP with source+exe attached
Pad
