Win32 Port by Tony Million This is a `Quick'n'Dirty` hack to make things work on Win32 platforms... I've #ifndef'd out all the code which didn't compile, and in certain cases (httpget.c and xfermem.c) I've added 'empty' functions to make it link, without modifying the main code too much... I will write a replacement httpget.c for win32 if there is enough demand. I have also written a `real` windows (with GUI etc..) version of this program. However I have significantly modified all of the code (and converted it to C++ classes etc.) so it doesn't infact have any simmilarity to Mpg-123. Except this code is where I got my 'Ideas' from :) .. Thanks Michael! There isn't much else to say except how to compile it: you NEED to make sure _WIN32 is defined (the compiler should take care of this, but just in case .......). I've added a #ifndef to make sure that `WIN32` (note the lack of _ ) gets defined. Then include all of the rest of the files. You can leave out decode.c and dct64.c (the _i386.c versions compile better...) however you can include them because I've #ifndef'd then out to make sure the objects dont conflict in the final link. The MAJOR work was done in Audio.C. Here I have totally written a buffered windows MultiMedia system output using a function callback system. I've tested it successfully under 95 and NT. you can change the MAX_BUFFERS = 6 to whatever you want... this is 6 * 16k buffers (about 96k = enough for half a second of sound. (which is ok on anything over a p90). you'l want to bump this up if you're using a 486.... Also you can add a SetPriorityClass(GetCurrentProcess(), HIGH_PRIORITY_CLASS); to somewhere in the beginning of main() function!. Thats all for the moment folks - Enjoy you're Mpeg 1,2,3 decoding :)! --- note: for VC++ 4.0 you can build the binary using 'Makefile.win32' call 'msdev/bin/vcvers32.bat' once and then 'nmake -f Makefile.win32'