HydrogenAudio

Hosted Forums => foobar2000 => 3rd Party Plugins - (fb2k) => Topic started by: Zulithe on 2005-01-01 21:05:42

Title: Game Emu Player (foo_gep) by kode54
Post by: Zulithe on 2005-01-01 21:05:42
Quote
Author notes:
The latest version of the component is always available from here (http://www.foobar2000.org/components/view/foo_gep).

Component source code repository (https://github.com/kode54/foo_gep) [Change log (https://github.com/kode54/foo_gep/commits/master)]
Game Music Emu library source code repository (https://github.com/kode54/Game_Music_Emu) - [Change log (https://github.com/kode54/Game_Music_Emu/commits/master)]


kode, I like the new Game Emu Player plugin. It uses far less CPU when playing .nsf files than fastalon.

I have a question though, this plugin supports the new .nsfe format but it doesn't support the .rsn extention (which many SPC soundtracks are archived into lately), can this be added? This way a user could playback .rsn files in both winamp and foobar2000 without having to rename or extract the files from the archive. Sites like snesmusic.org distribute all of their soundtracks in .rsn. Its really not much more than a renamed .rar file, I'm sure getting foobar2000 to recognize them would be trivial.

The reason for the extention change is becuase there are some problems getting winamp to play archives without a lot of workarounds, so the author of SNESAmp came up with this simple solution.

Here's the link to SNESAmp if you want to try it out:
http://www.alpha-ii.com/Download/Main.html#SNESAmp (http://www.alpha-ii.com/Download/Main.html#SNESAmp)

.rsn soundtrack archives can be gotten here:
http://www.snesmusic.org/v2/select.php?view=sets (http://www.snesmusic.org/v2/select.php?view=sets)
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2005-01-02 07:25:54
This depeneds entirely on foo_unpack, the archive reader component.
Title: Game Emu Player (foo_gep) by kode54
Post by: _zane on 2005-01-05 20:03:15
While we're on the topic of the Game Emu Player plugin, I thought I might toss in a small feature request of my own: the option to toggle support for each of the formats it plays.

The quality of the emulation is great; I had been hoping for a plugin like this for a while now.  There are some formats it supports that I'd still like to use another plugin for, though, without having to uninstall the Game Emu Player plugin altogether.  :-/

Just a thought, though.  Without seeing the source code, I don't know whether or not this would be feasible.


--
_zane
Title: Game Emu Player (foo_gep) by kode54
Post by: blargg on 2005-01-05 23:24:41
Quote
There are some formats it supports that I'd still like to use another plugin for, though, without having to uninstall the Game Emu Player plugin altogether. :-/


Are there any improvements that the core synthesis library could use? GBS and GYM are the least-polished of the bunch.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2005-01-06 07:10:35
I can add toggles for the other formats, but I'm not sure what you'd want to toggle off, except for SPC. I will add toggles for all formats, but they will be enabled by default.

There is already one glitch from disabling NSF support. It happens to disable the context menu items from being reported to the core, and with the current (0.8.x) menu configuration, you must reset or reconfigure the menu structure manually to readd or remove the exposed NSFE: items. The same will hold true for SPC. Fortunately, the mechanism by which the NSF context menu passes the NSFE playlist to the NSFE input's tag writer is identical in both foo_gep and foo_festalon, so that should not be a problem.

*whew*
Title: Game Emu Player (foo_gep) by kode54
Post by: zidanax on 2005-01-06 07:44:35
This Plugin seems to fix the problems foo_spc had with a few of the Uncharted Waters 2 tracks, thank you very much! 
Title: Game Emu Player (foo_gep) by kode54
Post by: Cutter on 2005-11-18 11:21:14
Hello!

I can't get this plugin to work (the console says "Unable too load foo_gep"). Please can someone tell me if it requires specific DLLs to run? I'm using Windows 98. Thank you.
Title: Game Emu Player (foo_gep) by kode54
Post by: Borisz on 2005-11-21 13:01:23
Speaking of foo_gep, is there any chance for an updated 0.8 version? The 0.9 beta version runs formats like VGM infinitely better.
Title: Game Emu Player (foo_gep) by kode54
Post by: Cutter on 2005-11-23 17:37:56
Please help. :/
Title: Game Emu Player (foo_gep) by kode54
Post by: keyosuke on 2005-12-13 03:51:49
I took the foo_unpack plugin that deals with RAR files and hex edited it.  Replace all instances of the letters rar with rsn and all instances of RAR with RSN.  Be careful not to replace the rar that is in libRARy.  Just go through the file with the FIND function of XVI32 hex editor or the editor of your choice and replace them as you find them ... providing the RAR you find is by itself and not part of the word library.  When you're done, save it as foo_rsn.dll and add to your directory and you now have RSN support as well as rar support.  The two simutaneously installed plugins will work fine together, even though one is a hack of the other.  I hope this makes foobar more enjoyable and that this isn't a bad bug causing menace .

_____________________________

Update:
I just downloaded foo_gym, which allows me to play genesys/mega drive game music files with gym extension, but most of mine were .rgm .  I guessed .RGM was .RAR renamed for the same reason RSN was renamed ... so I made yet another version of foo_unpack with the rar replaced with rgm ... etc.  The results were that I can now play "rgm" (rar) compressed gym files.  Little by little foobar is replacing my KBMedia player (a popular media player among japanese game music enthusiasts).  One thing that bothers me is that people have said Foobar uses unstandard tagging methods for these game music files, and it seems to be true as far as getting KBMedia to see the changes to tags that foobar has made.  As far as I'm concerned I'll keep using other programs to change the tags of these files since those tags show up everywhere. (shrugs)
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2005-12-13 04:21:34
Remind me again why it is necessary to hack the plug-in instead of renaming the archives.
Title: Game Emu Player (foo_gep) by kode54
Post by: keyosuke on 2005-12-13 04:33:19
It's necessary because some people might want to keep the extension of their odd sound format as what the community that supports that format is currently using.  RSN is a very popular extension for RAR compressed SPC files.  People might use other players that expect an RSN extension, so renaming a library of music to suit a single application might not be what everyone would prefer.  It's really a matter of preference, more than a necessity.  Well, I hope people enjoy what I've gotten to work, over here, and if anyone responsible for the plugin or foobar wants it down, I support deleting my post, but otherwise, I hope those migrating from an RSN playing program will enjoy this and those who see no purpose for their own sake, will not mind.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2005-12-13 21:49:36
I can't imagine why anyone would need to use another application for their SPC playback needs. Other than, perhaps, Super Jukebox for its shiny lights and meters, and I don't even think that supports RSN. Even if it did, it could just as easily support RAR.

So far as I know, this RSN extension is only required for dodgy players which do not support archives globally.
Title: Game Emu Player (foo_gep) by kode54
Post by: keyosuke on 2005-12-18 20:50:58
Still, when the .MDZ extension was use for mod files that were zipped, rather than the .ZIP extension, it caught on and served a purpose.  To see a bunch of zip files in a directory tells a lot less than if the extensions depict what is actually compressed within.  Making the argument that everyone should just use .RAR as the extension to contain their .SPC files seems a lot like making the argument that .MDZ, as an extension, was a waste of time and should not have been.  I'm sure some people at the time would have prefered that, but I rather enjoyed giving someone a file they could clearly know was a piece of music in mod format, just upon filename inspection.  Another positive aspect of naming compressed archives, based on the contents of such archives, is that programs that are designed to play what has been compressed in these files can be associated with the extension designed to signify the content of said archive.  If you have more than one player and want to associate compressed mod files to a specific one of those players, you can associate .MDZ extension handling with that file type.  If you were to associate .ZIP with your given player, you would find the inconvenience of having that player attempt opening zip compressed applications and what not.  You're may be thinking "Who still runs individual files and relies on the file association handlers to open them?!?" or  "Couldn't the user just use a library or allow the program in question to read the compressed data from all compressed archives in a given directory and find the music files itself?!" and the answer would be yes, but this is still a matter of preference.  I prefer to open files singularly and rely on the file extension handler to operate on that file.  Once in a while I'm browsing some files and decide I want to run one of them with a double-click, and I like the association to be mapped.  To me, this is a valuable use of the .RSN extension, or new extensions for denoting what's compressed in a rar/zip/whatever.  So, this is my motivation for caring about such.  May not make sense to everyone, and if it doesn't, I appreciate your views on the matter, though, if it does, this little hack seems to help a bit.  What I would really like to see is a place in the settings where the archive plugin lets one map extensions to file formats, similar to how one maps the shortcut keys in foobar2000.  I feel this would be well suited to the foobar way of doing things, where the user is presented with the ability to configure the player to do what he or she wants.  This kind of "empower the user" attitude is what makes me like foobar so much.
Title: Game Emu Player (foo_gep) by kode54
Post by: Cutter on 2005-12-18 22:44:08
Hi kode54. Is my question too stupid for you to consider it? Of course you're not obliged to solve my problem but at least you could tell me that you don't want to bother so I don't wait in vain. But you may simply not have seen my message (despite I PM'ed you about it), in that case I'm sorry and please ignore this message.

Edit: I just found the solution by chance.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2005-12-19 05:35:23
The difference between MDZ and RSN is that MDZ typically contains a single module, whereas RSN contains multiple SPC files. The API provides a means for extracting a single file from a single archive, such as unpacking gzip files, or pulling the first non-text file out of a ZIP/RAR, but indexing archives would be significantly more complicated.

Writing an archive service of my own to support RSN would require me to reimplement the RAR unpacking code. It would not be possible to use a simple service wrapper to present the RSN files to the existing RAR unpacker since it always checks the file paths for the correct extension before opening them.

Oh, and I rarely rely on file associations to open my files, so I guess that kind of explains away the use of generic archive extensions.


Cutter: Yes, by all means, stop waiting, as 0.8.3 support is probably less likely to happen in the immediate future than any of the things I actually want to do. Which is to say, 0.9 will probably be final before I even get started on that next ADPCM format I was going to add to foo_adpcm. You're welcome to use in_vgm instead. I hear the sound quality is almost tolerable.
Title: Game Emu Player (foo_gep) by kode54
Post by: Borisz on 2005-12-19 16:07:50
Quote
You're welcome to use in_vgm instead. I hear the sound quality is almost tolerable.
[a href="index.php?act=findpost&pid=351140"][{POST_SNAPBACK}][/a]

Same as Gens I believe, which is good enough. foo_gep uses the Gens core anyway, and fixes 1 effect that Gens would otherwise play broken. So I guess that both of them are "almost tolerable", especially compared to Kega. Unless you are talking about the SMS/CPS1 sound of course.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2005-12-19 22:33:23
Quote
Quote
You're welcome to use in_vgm instead. I hear the sound quality is almost tolerable.
[{POST_SNAPBACK}][/a] (http://index.php?act=findpost&pid=351140")

Same as Gens I believe, which is good enough. foo_gep uses the Gens core anyway, and fixes 1 effect that Gens would otherwise play broken. So I guess that both of them are "almost tolerable", especially compared to Kega. Unless you are talking about the SMS/CPS1 sound of course.
[a href="index.php?act=findpost&pid=351257"][{POST_SNAPBACK}][/a]

Actually, it currently uses a modified MAME YM2612 core. Although it is something on the order of half as fast as the optimized Gens FM core, it is more accurate. I am also looking forward to some corrections to the SSG-EG implementation, but it looks like I arrived at something pretty close. (Although, without any testing, or any real knowledge of FM synthesis, I can't be too sure. It sounds tolerable on the test case, though.)

Actually, what I was referring to was entirely separate from the FM core. Game_Music_Emu is currently the only player implementation I know of which can emulate the YM2612 at its actual clock rate, generating samples at the correct ratio of 144:1, clock to samples, then downsample the result. in_vgm can do this with the YM2413, but not for 2151 or 2612.

I know of no other implementation using band-limited synthesis or plain supersampling for the PSG unit, either, so in_vgm still has that whole aliasing thing.

The rudeness was unnecessary, though. The [a href="http://www.slack.net/~ant/libs/]library[/url] is available for anyone who wants to duplicate foo_gep in the event that I don't get my ass in gear and update the 0.8.3 version. I may just do that today.

Hmm, updating that may take some more time than I thought. It looks like Visual Studio 2005 doesn't want to open the old workspace that happens to reference (already converted or freshly made) project files without freezing. Maybe I'll have to do that with 2003 or even 98. I know MSVC6 used to dance the Internal Compiler Error mambo on random parts of Game_Music_Emu, general dislike for certain types of template classes I think.
Title: Game Emu Player (foo_gep) by kode54
Post by: Borisz on 2005-12-19 22:59:51
In case you update it, here are some more random ramblings:
- the current 0.83 version of foo_gep has that annoying bug fixed with a certain drum effect, used at many places in Comix Zone and Spiderman Animated series. The 0.9 version however, has not. And it sounds horrible. Anyway to "port" that fix back to the new version? that particular version of foo_gep was the only vgm/gym player that played that effect right.
http://project2612.bandwidthmonkey.net/paf...tion=file&id=12 (http://project2612.bandwidthmonkey.net/pafiledb.php?action=file&id=12) (Episode 1, page 2-2 in that pack for a sample).

Also, in Alisia Dragoon:
http://project2612.bandwidthmonkey.net/paf...ction=file&id=6 (http://project2612.bandwidthmonkey.net/pafiledb.php?action=file&id=6)
Stage 1-1 tune has a horrible noise instead of a soft sound in 0.9b13, at the start.
Options tune has a horrible noise at the start too.
Game Over has a slightly noticable glitch too.

It's cool that foo_gep works better in the insides, but it doesn't sound better then foo_vgm to me at all.

By the way, any chances for adding playback rate, and the looping/fadeout count option instead of the "force playing indefinetaly" option?
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2005-12-20 02:07:32
Cutter: Today is your lucky day, I updated the 0.8.3 component.

Borisz: All part of the problem of not having any one perfect core. Even the Gens core that it was using before had its share of flaws. I will report these to Jarek Burczynski since he maintains the MAME FM core that I am using right now, and is better equipped to deal with hardware vs. emulation issues. I think...

How do the full emulators compare to the hardware? Envelope behavior is also important, as there are a number of examples where slow attacks are incorrect. For instance, Star Light Zone and Scrap Brain Zone (http://project2612.bandwidthmonkey.net/pafiledb.php?action=file&id=36).

Having multiple cores in the same player is not really a solution, either, if none of them are faithful in every department. Addressing flaws to arrive at one correct solution is probably a better plan.

All of the issues with Alisia Dragoon would appear to be a result of improper trimming. The emulated chip is not receiving certain writes which may have occurred as early as power-on. I even tried fading the Options sound out and jumping to #02 (stage 1-1) and logging a few seconds of silence first, and the result still had a minor glitch. Logging from power on removed the glitches from the music, but also introduced a deafening glitch where there should be no sound at all as the options menu opened. Even more food for thought. (And possibly the only way to fix this would be to use full power-on logs of everything, then write a proper trimmer that would condense all of the register writes before the start mark into a single tick, removing writes which are overridden, writes which trigger notes, and writes which do not have an audible effect on anything, such as the timer port.)

Comix Zone is definitely not suffering from trimming errors, though.

I will think about adding relative playback rate and/or looping/fadeout controls for GYM/VGM. Extending those options for emulated formats will not really be possible since looping information isn't tagged precisely enough to extend the playback duration by N loops, and it isn't really possible to change their playback durations without turning them into register logs. (Simply emulating more or less cycles per sample could make SPC blow up, since the playback code can rely on feedback from the DSP. Although the number of soundtracks likely to be affected is minimal, considering how few blow up in ZSNES. )
Title: Game Emu Player (foo_gep) by kode54
Post by: Cutter on 2005-12-20 15:20:01
Quote
Cutter: Today is your lucky day, I updated the 0.8.3 component.

Thank you. I'm happy to see my Master System music finally playing in foobar.
Title: Game Emu Player (foo_gep) by kode54
Post by: uuron on 2008-01-15 02:40:17
I would appreciate the adding of fadeout controls for gym/vgm files. Thanks.
Title: Game Emu Player (foo_gep) by kode54
Post by: Cutter on 2008-01-31 05:01:42
Yes I second that request, plus the long-awaited loop count.
It would also be great if the GEP Controls had incidence on the converter's output.

Thanks in advance.
Title: Game Emu Player (foo_gep) by kode54
Post by: imiganai on 2008-02-07 00:29:02
Hmm, I seem to be having trouble tagging some .spc files.
From snesmusic.org, I have issues tagging Super Mario All-Stars and the two Mario Worlds.  I haven't had (and still don't have) any trouble tagging others, such as EarthBound, but when I try to save the tags on, say, a Super Mario All-Stars track I get the error "Could not update tags (bad allocation) on: ___.spc".
Bad dump?  Or foo_gep issue?  I thought the snesmusic.org tracks were supposed to be of the highest quality, and Super Jukebox seems to be able to tag them...
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2008-02-07 22:46:20
Hmm, I seem to be having trouble tagging some .spc files.
From snesmusic.org, I have issues tagging Super Mario All-Stars and the two Mario Worlds.  I haven't had (and still don't have) any trouble tagging others, such as EarthBound, but when I try to save the tags on, say, a Super Mario All-Stars track I get the error "Could not update tags (bad allocation) on: ___.spc".
Bad dump?  Or foo_gep issue?  I thought the snesmusic.org tracks were supposed to be of the highest quality, and Super Jukebox seems to be able to tag them...

Update the component and try again.
Title: Game Emu Player (foo_gep) by kode54
Post by: imiganai on 2008-02-08 00:28:39

Hmm, I seem to be having trouble tagging some .spc files.
From snesmusic.org, I have issues tagging Super Mario All-Stars and the two Mario Worlds.  I haven't had (and still don't have) any trouble tagging others, such as EarthBound, but when I try to save the tags on, say, a Super Mario All-Stars track I get the error "Could not update tags (bad allocation) on: ___.spc".
Bad dump?  Or foo_gep issue?  I thought the snesmusic.org tracks were supposed to be of the highest quality, and Super Jukebox seems to be able to tag them...

Update the component and try again.

Hmm...just updated, and...same error.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2008-02-08 23:12:19


Hmm, I seem to be having trouble tagging some .spc files.
From snesmusic.org, I have issues tagging Super Mario All-Stars and the two Mario Worlds.  I haven't had (and still don't have) any trouble tagging others, such as EarthBound, but when I try to save the tags on, say, a Super Mario All-Stars track I get the error "Could not update tags (bad allocation) on: ___.spc".
Bad dump?  Or foo_gep issue?  I thought the snesmusic.org tracks were supposed to be of the highest quality, and Super Jukebox seems to be able to tag them...

Update the component and try again.

Hmm...just updated, and...same error.

Oops, now it's fixed.
Title: Game Emu Player (foo_gep) by kode54
Post by: imiganai on 2008-02-09 00:01:04
Oops, now it's fixed.

Yes, it is!  Thank you so much! 
Title: Game Emu Player (foo_gep) by kode54
Post by: imiganai on 2008-02-18 20:37:16
Does GEP support tagging on genesis (GYM) files?  I'm getting a "Could not update tags (Unsupported format or corrupted file) on:" error when I try to.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2008-02-18 22:30:22
The only formats that support tag writing at this time are NSF/E and SPC.
Title: Game Emu Player (foo_gep) by kode54
Post by: imiganai on 2008-02-18 22:36:56
Ah, okay, thanks!  Is support planned?  I'm patient 
Title: Game Emu Player (foo_gep) by kode54
Post by: Pixel on 2008-02-26 02:26:41
Hello kode54.
I recently downloaded a collection of GBS files from the GBS Penultimate Archive (http://snesmusic.org/hoot/gbs/). Some of these GBS files have an 'extended m3u', or something like that, which allows them to have titles and different play times, but only a few of them work. For example, the GBS files for Final Fantasy Legends, Mario Tennis and Tales of Phantasia - Narikiri Dungeon will play, but their titles are mixed up, while other files, such as Donkey Kong Land 1-3 won't play at all. They all work in Winamp using NEZplug. Is there a possibility that you could support these extended m3u files? If not, it's alright, since the GBS files will play as intended, without titles, if I just remove or rename the m3u files. Otherwise, I would like to thank you for a kickass plugin. I don't know what I would do without it.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2008-02-26 03:47:01
Fixed, enjoy.
Title: Game Emu Player (foo_gep) by kode54
Post by: Pixel on 2008-02-27 02:51:21
Wow, thanks for the speedy update. 
But there still seems to be a few issues. Donkey Kong Land 3 JP, Dragon Quest, Duck Tales, Kirby's Dream Land, Super Mario Land 1-2, Tetris and Tetris v1.0 still won't open, while Donkey Kong, Donkey Kong Country and Donkey Kong Land 1-3 will play, but the song titles/play time are only only shown on the foobar Title/Status bars, not the playlist itself. They also don't follow the designated play time, but use the default length instead.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2008-02-27 23:08:12
Wow, thanks for the speedy update. 
But there still seems to be a few issues. Donkey Kong Land 3 JP

Comma in the filename, followed by a date, was tripping up the filename parser. Fixed.

Dragon Quest

GBR, currently unsupported.

Duck Tales, Kirby's Dream Land, Super Mario Land 1-2, Tetris and Tetris v1.0 still won't open

Decimals in the length fields. Handled now.

while Donkey Kong, Donkey Kong Country and Donkey Kong Land 1-3 will play, but the song titles/play time are only only shown on the foobar Title/Status bars, not the playlist itself.

Force info reload, there's no way for the player to know that the metadata has changed since the modification times are the same.

They also don't follow the designated play time, but use the default length instead.

Fixed, this also affected AY, GYM, HES, KSS, and SAP files.
Title: Game Emu Player (foo_gep) by kode54
Post by: Pixel on 2008-02-28 17:55:52
Fantastic, thanks a lot!
Title: Game Emu Player (foo_gep) by kode54
Post by: Borisz on 2008-03-17 17:09:34
With the latest version, GYM files only play PSG and DAC.

Is there a chance that we'll see looping/fadeout for vgm files?
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2008-03-17 22:18:54
With the latest version, GYM files only play PSG and DAC.

Not here.

Is there a chance that we'll see looping/fadeout for vgm files?

I may squeeze that into the preferences somewhere. Soonish, maybe.
Title: Game Emu Player (foo_gep) by kode54
Post by: Borisz on 2008-03-18 04:05:18
Not here.

Strange, it only happens if you set the sampling rate to 53268 or above. Below that number, it plays fine.

Quote
I may squeeze that into the preferences somewhere. Soonish, maybe.

That would ne nice, I know it was asked before... years ago.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2008-03-18 19:27:58

Not here.

Strange, it only happens if you set the sampling rate to 53268 or above. Below that number, it plays fine.

The resampler seems to be having trouble with upsampling the FM. Hmm...

Quote

I may squeeze that into the preferences somewhere. Soonish, maybe.

That would ne nice, I know it was asked before... years ago.

Done.
Title: Game Emu Player (foo_gep) by kode54
Post by: Borisz on 2008-03-19 03:05:48
Nice. A few problems though, song length (as displayed on the playlist) is not updated per the loop info, making it impossible to seek in the subsequent loops. And its not possible to set fadeout lengths, even though there is a default one set. I think this and the lack of extra silence applied after tracks (selectable) is all that the old vgm plugin had to offer over foo_gep.

Also, sampling rate does not display, only when playback is active. This happend in foo_sid and foo_dumb as well.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2008-03-19 18:19:01
Nice. A few problems though, song length (as displayed on the playlist) is not updated per the loop info, making it impossible to seek in the subsequent loops. And its not possible to set fadeout lengths, even though there is a default one set. I think this and the lack of extra silence applied after tracks (selectable) is all that the old vgm plugin had to offer over foo_gep.

Then I would need to make length reporting dynamic, as loop counts can change any time. Note that the default fade setting applies to VGM. Extra silence?

Also, sampling rate does not display, only when playback is active. This happend in foo_sid and foo_dumb as well.

That was suggested since the sample rate is configurable and not a property of the files themselves. The only format in foo_gep which reports the sample rate always is SPC, which is fixed at 32KHz.
Title: Game Emu Player (foo_gep) by kode54
Post by: Borisz on 2008-03-19 23:39:00
I can see why length and samplerate is not displayed per settings, still, doesn't foobar re-read meta info every time the file is played? I know older versions did that. I much prefer exact length being reported, the only reason I can still seek in the vgm files is because I originally had them loaded with in_vgm in foobar 0.8, and still use that playlist.

About the extra silence: a selectable pause after tracks. One of the older versions of foo_vgm had it, I think. its similar to the option in the winamp plugin, cept it actually counts in the track length.
Title: Game Emu Player (foo_gep) by kode54
Post by: Cutter on 2008-04-14 23:34:20
Kode54 can you please make it so that the "Playback override" settings are used by the converter? It would make it possible to rip separate tracks or samples from a tune.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2008-04-15 00:26:31
Kode54 can you please make it so that the "Playback override" settings are used by the converter? It would make it possible to rip separate tracks or samples from a tune.

Since that dialog overrides track play time and silence detection so tracks never end, I don't see how it can work properly with the converter. I will have to work around that.
Title: Game Emu Player (foo_gep) by kode54
Post by: moozooh on 2008-05-14 23:51:18
Hey kode54, I've tried to find your foo_gep for 0.8.3, but failed. If you tell me the link, it will be greatly appreciated.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2008-05-15 01:10:55
Hey kode54, I've tried to find your foo_gep for 0.8.3, but failed. If you tell me the link, it will be greatly appreciated.


Here it is (http://kode54.foobar2000.org/old_carp/foo_gep.zip), but I must warn you, it hasn't been maintained since the end of 2005, so don't expect any of the new features or formats I've added since then.
Title: Game Emu Player (foo_gep) by kode54
Post by: Nahkranoth on 2008-05-15 13:27:26
kode, is it possible to add support for .minisnsf files that can be found at Modland? It is music from SNES, just the format is kinda weird, I mean the layout of files.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2008-05-15 20:02:43
kode, is it possible to add support for .minisnsf files that can be found at Modland? It is music from SNES, just the format is kinda weird, I mean the layout of files.

That would require a more complete SNES emulator than is already required for SPC. So, not at this time.
Title: Game Emu Player (foo_gep) by kode54
Post by: zachastrife on 2008-05-15 21:36:34
I just had to post even though I'm not using GEP ATM (no use for it right now, have used it before).
I'm really amazed at how you are really listening to everybody and the speed of your replies and fixes.
You are truly the way a component dev should be. Kudos to you.
Title: Game Emu Player (foo_gep) by kode54
Post by: moozooh on 2008-05-21 08:25:11
Here it is (http://kode54.foobar2000.org/old_carp/foo_gep.zip), but I must warn you, it hasn't been maintained since the end of 2005, so don't expect any of the new features or formats I've added since then.

Thanks, kode! Works like a charm.
Title: Game Emu Player (foo_gep) by kode54
Post by: Cutter on 2008-08-19 21:38:04
Kode54, thanks a lot for the update but I still look forward to seeing the "Playback override" settings be used by the Converter.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2008-08-20 20:22:05
Kode54, thanks a lot for the update but I still look forward to seeing the "Playback override" settings be used by the Converter.

Done, but don't expect it to play nice with multiple instances. (Playback, conversion, ReplayGain scanning...) The most recent instance to start will always take over the dialog, disconnecting any previous instance and leaving it with whichever settings were last applied. Don't ask why I locked it to a single instance when it was already locked to playback only.
Title: Game Emu Player (foo_gep) by kode54
Post by: Cutter on 2008-08-21 06:52:44
Thank you !

One more suggestion: could you add an horizontal single-bar peak meter for each track in the GEP Control dialog? It would make identifying tracks (channels) easier.
Title: Game Emu Player (foo_gep) by kode54
Post by: imiganai on 2008-09-14 12:51:28
Would it be possible to have an option to enter a default genre that gep reports for formats that don't support the field?  For example, VGM doesn't have a genre field which results in everything showing up under the ? category instead of "game" which I have usf and smc files under.
Thanks!
Title: Game Emu Player (foo_gep) by kode54
Post by: Borisz on 2008-09-15 12:48:54
Would it be possible to have an option to enter a default genre that gep reports for formats that don't support the field?  For example, VGM doesn't have a genre field which results in everything showing up under the ? category instead of "game" which I have usf and smc files under.
Thanks!

Use [%genre%] in your titleformatting.
Title: Game Emu Player (foo_gep) by kode54
Post by: imiganai on 2008-09-15 12:52:00
Use [%genre%] in your titleformatting.

Thanks, but I'd like stuff that legitimately doesn't have genres assigned to show up in the ? group.  Also that would result it just a nameless group instead of ?, which doesn't really change much.
Although this was my bad--I didn't mention that I was talking about the album list, not other places....sorry!
Title: Game Emu Player (foo_gep) by kode54
Post by: Borisz on 2008-09-20 13:47:49
$if2([%genre%],no genre tag present)
?

or maybe,
$if($strcmp(%codec%,VGM),$if2([%genre%],no VGM genre tag present),%genre%)
Title: Game Emu Player (foo_gep) by kode54
Post by: imiganai on 2008-09-20 18:10:54
or maybe,
$if($strcmp(%codec%,VGM),$if2([%genre%],no VGM genre tag present),%genre%)

Haha, yeah, $if($strcmp(%codec%,VGM),'Game',%<genre>%) does what I'd like, although it seems sort of silly to have to have a special case for a codec when the codec doesn't provide a pretty basic piece of information...
Title: Game Emu Player (foo_gep) by kode54
Post by: Borisz on 2008-10-13 14:44:10
I don't think genre shows up as anything but ? if its not included, regardless of format.

Still, it just shows how much you can customize Foobar. There are tons of similar oddities for every format anyway. I have a few XM tunes where the title field is blank - not blank as in empty, but blank as in occupied by 16 or so space characters. Modplug (my former mod player) used to display the filename in these cases, but foobar didnt, so I had to mix in $if($stricmp(%title%,                    ),$upper(%filename_ext%),%title%) to the titleformatting.

I have like, a completely seperate formatting for every format there is. It makes a nice big $if string (about 12k of text only).
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2009-04-19 04:50:56
I've updated the following:

2009-04-19 04:29 UTC - kode54
- Implemented SPC ID666 and xid6 tag writing. Now snesmusic.org can lay off about the non-standard tag writing.
- Version is now 1.63

(omitted: Effects changes that were reverted because they sucked and/or crashed.)

2009-02-01 07:20 UTC - kode54
- Implemented effects control for applicable formats.
- Version is now 1.6


Minor warning about the GEP Control feature: GEP Control always applies to the most recently started instance of the decoder. So, if you start playback in the middle of a conversion job, the control will only affect the playback. Likewise, if you convert something while playing, the control will apply to the conversion, and when the conversion stops, the control will disable instead of reverting to the playback. I didn't like the idea of the control working for anything but playback, but you asked for it, so you got it.
Title: Game Emu Player (foo_gep) by kode54
Post by: Cutter on 2009-04-19 20:05:31
Thanks, kode54.
Title: Game Emu Player (foo_gep) by kode54
Post by: Natsuki on 2009-05-03 15:19:11
GYM playback in foo_gep is noticeably worse than in foo_gym, sometimes even broken. Too bad that foo_gym is not ported to 0.9 foobar. And I'm sure genesis emulators use the same sound engine. What's wrong with foo_gep?
Examples:
1.gym (http://runtime.alfaspace.net/1.gym) foo_gep_1.mpc (http://runtime.alfaspace.net/foo_gep_1.mpc) foo_gym_1.mpc (http://runtime.alfaspace.net/foo_gym_1.mpc)
2.gym (http://runtime.alfaspace.net/2.gym) foo_gep_2.mpc (http://runtime.alfaspace.net/foo_gep_2.mpc) foo_gym_2.mpc (http://runtime.alfaspace.net/foo_gym_2.mpc)
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2009-05-03 19:35:53
Foo_gym does not use the same exact playback core as foo_gep. Foo_gep uses the MAME YM2612 core while foo_gym uses the one from Gens. And while the first file you posted does appear to be a major problem with some assumed startup registers, the latter just seems to be a difference of oversampling. There's not much I can really do other than switch to the Gens core, which has other flaws. Have you tried the VGM rip of that game? I'm surprised more people aren't using the nice VGM rips from Project 2612 (http://project2612.org/), which are properly trimmed, looped, and tagged.
Title: Game Emu Player (foo_gep) by kode54
Post by: Natsuki on 2009-05-05 20:58:48
Project 2612 is pure win. But what's difference between gym and vgm? foo_gym doesn't support it.

edit 1: Compared with winamp's in_vgm, it's like foo_gep cuts some high frequencies, everything else is ok. Also, would it be possible to have both cores and let user switch? (but I guess if it is not planned, no one needs it anyway)

edit 2: And still, foo_gym is a bit better than in_vgm. Am I too addicted to Gens sound?
Title: Game Emu Player (foo_gep) by kode54
Post by: /mnt on 2009-05-06 13:28:03
SCC support on foo_gep is really buggy with some MSX Games such as Snatcher.

Winamp + MSXPlug output (http://www.hydrogenaudio.org/forums/index.php?act=attach&type=post&id=5082)
foobar2000 + foo_gep output (http://www.hydrogenaudio.org/forums/index.php?act=attach&type=post&id=5083)
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2009-05-06 18:36:09
edit 1: Compared with winamp's in_vgm, it's like foo_gep cuts some high frequencies, everything else is ok. Also, would it be possible to have both cores and let user switch? (but I guess if it is not planned, no one needs it anyway)

I think it has more to do with the resampler used to downsample the output of the YM2612 emulator. I can try switching, but I don't think it will make much of a difference.

SCC support on foo_gep is really buggy with some MSX Games such as Snatcher.

I can forward this to blargg, although I'm not sure if/when he'll look into it.
Title: Game Emu Player (foo_gep) by kode54
Post by: Natsuki on 2009-05-06 23:11:26
I think it has more to do with the resampler used to downsample the output of the YM2612 emulator.

Downsampling is used in foo_gep? Isn't it a bad thing?
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2009-05-07 00:41:41
I think it has more to do with the resampler used to downsample the output of the YM2612 emulator.

Downsampling is used in foo_gep? Isn't it a bad thing?

You can avoid it for the most part by setting the output frequency to 53267Hz. At least for the way I configure the GYM/VGM players. With the default class instance settings, they will always render the FM at 1.5x the output frequency and downsample. I turn off the fixed oversampling, so they render at 1/144 the chip clock rate, which is the native sample rate of the FM chip. This is required for accurate playback of some sound effects.
Title: Game Emu Player (foo_gep) by kode54
Post by: Natsuki on 2009-05-07 13:28:32
No difference with 53267Hz. Also, if I set sample rate over 48k (or bit depth over 16), I get about 20% cpu load in Interrupts process (shitty Creative drivers?)

1 foo_gep (http://runtime.alfaspace.net/gep.mpc) in_vgm (http://runtime.alfaspace.net/invgm.mpc)
2 foo_gep (http://runtime.alfaspace.net/1gep.mpc) in_vgm (http://runtime.alfaspace.net/1invgm.mpc)
Now I can't truly say what sounds better. foo_gep has more low freq, in_vgm has more high freq.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2009-07-21 06:35:39
- Implemented RSN support, requires foo_unpack Archive Reader component.
- Version is now 1.66

- Implemented surround removal into the accurate SPC DSP core. I didn't notice it wasn't implemented until now.
- Implemented cubic interpolation into the accurate SPC DSP core. For anyone that wants it.
- Version is now 1.65
Title: Game Emu Player (foo_gep) by kode54
Post by: Kilu on 2009-07-27 19:46:25
Hey hey, I love GEP, but I have a question.

Is it possible to mass edit fade times with SPC files? A lot of the files at snesmusic.org have too short fades for my taste, I'd like to mass edit a bunch of files to say, 12 seconds. If I select all files and select 'edit length', input the fade and press ok, it seems like it's doing something, but none of the fades change. Not possible?
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2009-08-04 09:12:37
- Fixed and improved the NSFE and SPC context menu tagging functions.
- Fixed a bug where newly tagged SPC length and fade would not register on the reread file length after a tag edit operation.
- Version is now 1.67

- Enabled equalizer-only effects control over GYM and VGM inputs.
- Version is now 1.666


Basically, the new tag editor allows you to edit only length or fade by leaving the other field blank. Or do nothing by leaving both blank. You can also mass apply length and/or fade to multiple files this way, defaulting to both fields blank and therefore doing nothing.

Regarding the SPC tagging bug, your fade times were probably writing to the files properly, and probably would have played for the correct fade time, but you would have had to force a manual info reload to see the displayed track duration change.
Title: Game Emu Player (foo_gep) by kode54
Post by: Kilu on 2009-08-04 18:47:09
- Fixed and improved the NSFE and SPC context menu tagging functions.
- Fixed a bug where newly tagged SPC length and fade would not register on the reread file length after a tag edit operation.
- Version is now 1.67

- Enabled equalizer-only effects control over GYM and VGM inputs.
- Version is now 1.666


Basically, the new tag editor allows you to edit only length or fade by leaving the other field blank. Or do nothing by leaving both blank. You can also mass apply length and/or fade to multiple files this way, defaulting to both fields blank and therefore doing nothing.

Regarding the SPC tagging bug, your fade times were probably writing to the files properly, and probably would have played for the correct fade time, but you would have had to force a manual info reload to see the displayed track duration change.

No, I did try to manually reload the info through the properties panel, but nothing had changed. I mean, I only changed the fade field when I tried to massedit, and left the other field blank, and if you just now added that functionality, it's no wonder it did not work.

But yes, just tested this new version, and it works splendidly. Thanks!
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2009-08-05 04:54:02
- Implemented VGM YM2413 support based on MAME's YM2413 emulator.
- Fixed NSFE playlist editor for when user cancels all editor dialogs.
- Implemented missing NSFE playlist loading.
- Version is now 1.68

Boy, it just be raining updates this week.
Title: Game Emu Player (foo_gep) by kode54
Post by: Kilu on 2009-08-15 19:00:28
Hello again. I was wondering if it might be possible to add an option to not auto skip to next track in case of x seconds of silence? At least for tracks that have proper times in the tags. My specific problem is with some SPC files from Equinox, bunch of which contain silence in the middle of track.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2009-08-15 21:02:03
Hello again. I was wondering if it might be possible to add an option to not auto skip to next track in case of x seconds of silence? At least for tracks that have proper times in the tags. My specific problem is with some SPC files from Equinox, bunch of which contain silence in the middle of track.

For now, open the GEP Control dialog and enable the override function to disable all silence skipping. I'll look into increasing the silence threshold for SPC files.
Title: Game Emu Player (foo_gep) by kode54
Post by: Kilu on 2009-08-16 13:11:32
Hello again. I was wondering if it might be possible to add an option to not auto skip to next track in case of x seconds of silence? At least for tracks that have proper times in the tags. My specific problem is with some SPC files from Equinox, bunch of which contain silence in the middle of track.

For now, open the GEP Control dialog and enable the override function to disable all silence skipping. I'll look into increasing the silence threshold for SPC files.

Maybe I'm going blind, but I don't see an option to disable silence skipping.  Maybe I'm looking at the wrong place.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2009-08-17 00:04:48
Maybe I'm going blind, but I don't see an option to disable silence skipping.  Maybe I'm looking at the wrong place.

Open the View menu, select GEP control, check Enable playback override. This disables silence checking, otherwise muting channels could cause tracks to stop automatically.
Title: Game Emu Player (foo_gep) by kode54
Post by: Kilu on 2009-08-17 16:08:35
Ah, there it is. I was looking under the main config, didn't even know about this GEP control panel. This is all I really wanted with the feature request, so this is excellent. Thanks for the help.
Title: Game Emu Player (foo_gep) by kode54
Post by: ManiacDC on 2009-10-17 20:27:16
Hi kode,
I ran into an issue using SPC music with foobar2000 + WASAPI output over s/pdif. I get the following error:
Unrecoverable playback error: Unsupported stream format: 32000 Hz / 24-bit / 2 channels

I'm assuming because my PC doesn't support 32 KHz over S/PDIF. Is there a way to resample the 32 khz to something like 44.1/48/96 khz in GEP? Or am I going to be forced to use DirectSound output over s/pdif?

Thanks
Title: Game Emu Player (foo_gep) by kode54
Post by: Cutter on 2009-10-18 11:47:08
Hi kode,
I ran into an issue using SPC music with foobar2000 + WASAPI output over s/pdif. I get the following error:
Unrecoverable playback error: Unsupported stream format: 32000 Hz / 24-bit / 2 channels

I'm assuming because my PC doesn't support 32 KHz over S/PDIF. Is there a way to resample the 32 khz to something like 44.1/48/96 khz in GEP? Or am I going to be forced to use DirectSound output over s/pdif?

Thanks

Look in Preferences > DSP Settings. Enable the resampler.
Title: Game Emu Player (foo_gep) by kode54
Post by: ManiacDC on 2009-10-18 12:44:54
Hi kode,
I ran into an issue using SPC music with foobar2000 + WASAPI output over s/pdif. I get the following error:
Unrecoverable playback error: Unsupported stream format: 32000 Hz / 24-bit / 2 channels

I'm assuming because my PC doesn't support 32 KHz over S/PDIF. Is there a way to resample the 32 khz to something like 44.1/48/96 khz in GEP? Or am I going to be forced to use DirectSound output over s/pdif?

Thanks

Look in Preferences > DSP Settings. Enable the resampler.

Hmm, while that does resample it before outputting it I was more hoping for a conditional resampler... IE I only want it to resample when the frequency is 32 KHz...
Title: Game Emu Player (foo_gep) by kode54
Post by: Nahkranoth on 2009-10-18 21:31:58
+1
And even more - conditional selection of DSP chain, depending on format (MIDI/MP3/etc...). That would be very helpful.
Title: Game Emu Player (foo_gep) by kode54
Post by: Jezulkim on 2009-11-28 00:56:48
Hi,
I'm having a problem with fading out using m3u files. This used to work before but I can't remember what version I was using then.

Here's an example of the m3u file:
Code: [Select]
Legend of Zelda - Links Awakening DX (1993)(Nintendo).gbs::GBS,0,Title Screen,0:0:35,-,0:0:5
Legend of Zelda - Links Awakening DX (1993)(Nintendo).gbs::GBS,1,Trendy Game!,0:0:32,-,0:0:5
Legend of Zelda - Links Awakening DX (1993)(Nintendo).gbs::GBS,2,Game Over,0:0:41,-,0:0:5

The plugin reads the length correctly, but ignores the fade out (0:0:5).
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2009-11-28 08:37:29
Fixed. The M3U reader was correctly reading the fade time, but the track info interface was not passing this information out.

And before anyone has to ask, Game_Music_Emu has its own M3U parser, and foo_gep transparently loads %filename%.m3u for AY, GBS, HES, KSS, and SAP files. I'm not sure how it handles adding the M3U directly to foobar2000, since foobar's M3U parser doesn't handle all of the extra fields such as subsong and song length, so don't add these M3U files directly.
Title: Game Emu Player (foo_gep) by kode54
Post by: Jezulkim on 2009-11-28 12:00:25
Great! It works now, thanks.
Title: Game Emu Player (foo_gep) by kode54
Post by: gudfooht on 2009-12-17 15:40:07
Hi kode.  Thanks so much for all your work on the component.  I don't think I would have switched from WinAmp without it. I love it! Are you accepting donations?

I have a question about NSFE files.  I'm having trouble getting the track ordering to work via the "Edit playlist" feature. The dialog box is remembering my selected tracks and the ordering, but when I play the NSFE, the entries in the Playlist are still in "raw" order, although the tracks in the Playlist are indeed being limited to the ones I selected.  This also seems to be the case when I do the same thing with a regular NSF file. I'm new to the HA forums, so I'm not sure how to get a test file to you.

I'm on foobar v0.9.6.9 and what I assume to be foo_gep 1.78 (downloaded this morning from http://www.foobar2000.org/components/view/foo_gep) (http://www.foobar2000.org/components/view/foo_gep)). I don't have any other NSF-related components.

Any ideas?

Thanks!
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2009-12-17 17:01:27
Are you accepting donations?

Not at this time, but I may in the future.

when I play the NSFE, the entries in the Playlist are still in "raw" order

Open Preferences, go to Shell Integration, change Sort incoming files by: to %path%. The default, %path_sort%, reorders the tracks added by the NSFE playlist so their subsongs (NSF track numbers) are in numeric order.

I could change it so that subsong numbers are indexes into the NSFE playlists, but then that would invalidate all playlist entries for NSFE files with playlists. In fact, it would also invalidate existing playlist entries if you edit the playlist. It would also make it impossible to play tracks not in the NSFE playlist. (Existing playlist entries from tracks removed from the NSFE playlist, or from files added to foobar2000 before creating the NSFE playlist.)
Title: Game Emu Player (foo_gep) by kode54
Post by: gudfooht on 2009-12-17 22:39:08
Thanks for the quick reply, kode. I appreciate it!

I made the change, and still no luck.  Here's what I did:

I assume this is what you meant by "Shell Integration".

Here's my test file: Shadowgate (http://slickproductions.org/nsfe/Shadowgate.rar)

After extracting it, I right-clicked on Shadowgate.nsfe in my library browser tab (View=by folder structure) > NSFE > Edit playlist.  In the listing of selected subsongs in the dialog box, I see:


But, back in the main window, when I press enter to load the .nsfe to the playlist, the playlist entries are still in raw ordering  :

Also, for clarification, my NSF prefs for GEP are:
"Write to files" checked (in order to get the NSFE context menu option group)
"Convert to NSFE if necessary" checked
"Ignore NSFE playlists" unchecked

Have I done something wrong?  Thanks for your help.

p.s. Please let me know if there's a manual or documentation out there somewhere that I'm missing. I'll gladly RTFM if one exists.  Thanks!
Title: Game Emu Player (foo_gep) by kode54
Post by: gudfooht on 2009-12-18 00:19:55
Also, here are my current components, just in case that helps:

Code: [Select]
foo_abx.dll
foo_albumlist.dll
foo_audioscrobbler.dll
foo_cdda.dll
foo_converter.dll
foo_dsp_bs2b.dll
foo_dsp_delta.dll
foo_dsp_std.dll
foo_fileops.dll
foo_freedb2.dll
foo_gep.dll
foo_input_std.dll
foo_input_vio2sf.dll
foo_input_viogsf.dll
foo_playcount.dll
foo_rgscan.dll
foo_ui_std.dll
foo_unpack.dll
vio2sf.bin
viogsf.bin
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2009-12-18 13:26:38
I don't think there's anything I can do about track order when adding from the Album List, short of reporting the subsong numbers as NSFE playlist entry indexes, and then you'll have to reload the info for all your files to fix them.
Title: Game Emu Player (foo_gep) by kode54
Post by: gudfooht on 2009-12-18 15:26:42
Thanks, kode.  I get the feeling I'm missing something basic, so I apologize if I'm being slow.

So what is the recommended way to go about this? Create a dedicated playlist? 

Thanks again for all your help and patience.
Title: Game Emu Player (foo_gep) by kode54
Post by: gudfooht on 2009-12-18 16:03:00
Okay, after a quick experiment, creating a dedicated playlist over the NSFE did the trick, so I'm happy. 

However, to your point:

I don't think there's anything I can do about track order when adding from the Album List, short of reporting the subsong numbers as NSFE playlist entry indexes, and then you'll have to reload the info for all your files to fix them.


I may not fully understand the dilemma, but I'd still really like to have this option. I'm willing to assume all the consequences of wrecking any pre-existing playlists, if that's what you mean by "reload the info for all your files to fix them". It just seems so intuitive to set the subsongs and their order in the NSFE itself and have the playlist reflect it upon file load.  Otherwise, what's the point of being able to set the order of the subsongs in the NSFE in the first place?  Isn't the NSFE format a "hard-coded" playlist over the raw NSF to begin with?

Again, I could be totally missing the point here because I'm pretty new. By all means, please send any homework my way if I'm unenlightened. 
Title: Game Emu Player (foo_gep) by kode54
Post by: _DA_ on 2010-01-20 01:24:08
Any plans for FC and YM support?

Currently I'm using ST-Sound for these: http://leonard.oxg.free.fr/ (http://leonard.oxg.free.fr/)
Title: Game Emu Player (foo_gep) by kode54
Post by: Sakimori_X on 2010-02-03 07:14:20
I absolutely *love* the GEP plugin and all its features, but I have to second the request for proper NSFE playlist support. It seems perfectly natural to expect that dragging an NSFE from the album list into the playlist window will result in a properly sorted track list, yet that's not what happens. If I want to listen to the subsongs in the correct order, I have to ''autocreate playlist'', which seems like an unnecessary step. That is, unless I'm missing something, which I have to admit is entirely possible. If so: please help?

Also, it seems there's a problem with the NSFE playlist reader/parser in that subsongs that appear on the internal NSFE playlist multiple times (say, if you want the boss music to play after every level bgm, or if a single track is used as the bgm for two different levels so you include it at two separate points on the internal playlist) are only added to the fb2k playlist once.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-02-03 08:43:46
Both of those are limitations of how I represent the internal playlist. I add the files by their internal subsong numbers, rather than using subsong numbers as playlist indexes. I could change that, but it would break all of your existing playlists, and you would have to reload the file info for every NSFE you already have in your playlists or in your media library.
Title: Game Emu Player (foo_gep) by kode54
Post by: mudlord on 2010-02-03 10:51:42
Any plans for FC and YM support?

Currently I'm using ST-Sound for these: http://leonard.oxg.free.fr/ (http://leonard.oxg.free.fr/)


I think thats something best left to blargg (the Game_Music_Emu developer). That way, all plugins that use it (including my Winamp impl.) can benefit from it.
Title: Game Emu Player (foo_gep) by kode54
Post by: gudfooht on 2010-02-03 14:56:00
I could change that, but it would break all of your existing playlists, and you would have to reload the file info for every NSFE you already have in your playlists or in your media library.


Hi kode,

As Sakimori_X said, we all love GEP and I, too, can't thank you enough for it. 

Perhaps some middle ground can be reached in regard to NSFE playback.  Would it be possible for you to add something like an "obey NSFE song order" checkbox in the NSF section of the GEP prefs?  That way, the folks that don't want to break their existing playlists can leave it unchecked, and the rest, like Sakimori_X and me, can check the checkbox, accept the risks, restart fb2k, refresh our media libraries, delete our temp playlists, and sing your praises forever. 
Title: Game Emu Player (foo_gep) by kode54
Post by: rubix on 2010-02-04 00:20:58
i can play spc files fine but when i try to double-click on rsn files with spcs in them nothing happens. they can't even be dragged onto foobar to show up in the playlist. yes, the rsn files are associated to foobar already. output is via directsound. have foo_unpack "installed" too.

foobar2000 1.0 / foo_gep 1.87
Title: Game Emu Player (foo_gep) by kode54
Post by: Pulstar on 2010-02-04 12:46:32
What I do is that I extract compressed chiptune archives when using them with Foobar2000. I'm curious too why can't Foobar handle VGZ and RSN.
Title: Game Emu Player (foo_gep) by kode54
Post by: ManiacDC on 2010-02-04 21:06:19
What I do is that I extract compressed chiptune archives when using them with Foobar2000. I'm curious too why can't Foobar handle VGZ and RSN.

It's possible to hex edit foo_unpack.dll to open RSN files. Just replace all instances of RAR with RSN (watch out you don't replace part of the word "library", iirc that was in there).
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-02-05 07:49:50
foo_gep already supports .RSN as of version 1.66. All it requires is that you also have foo_unpack installed. If it is not working, then I'll be glad to look at whatever .RSN files you're having problems with.

I've already tested adding .RSN files to the playlist using the Open Files dialog, dragging a .RSN file from an Explorer window onto a playlist, and also double-clicking an associated .RSN file. All work fine. Are you sure you have an up-to-date version of foo_gep installed, and also foo_unpack? It does require both to work.

Oh, and modifying foo_unpack by replacing instances of "rar" with "rsn" may even be broken in combination with the .RSN support already implemented in foo_gep, so don't do that.

I may have fixed a problem that would affect anyone saving RSN files with non-lowercase extensions to a case-sensitive file system, or at least if Windows is configured to use case-sensitive paths on such filesystems.
Title: Game Emu Player (foo_gep) by kode54
Post by: ManiacDC on 2010-02-05 10:21:09
foo_gep already supports .RSN as of version 1.66. All it requires is that you also have foo_unpack installed. If it is not working, then I'll be glad to look at whatever .RSN files you're having problems with.

I've already tested adding .RSN files to the playlist using the Open Files dialog, dragging a .RSN file from an Explorer window onto a playlist, and also double-clicking an associated .RSN file. All work fine. Are you sure you have an up-to-date version of foo_gep installed, and also foo_unpack? It does require both to work.

Oh, and modifying foo_unpack by replacing instances of "rar" with "rsn" may even be broken in combination with the .RSN support already implemented in foo_gep, so don't do that.

I may have fixed a problem that would affect anyone saving RSN files with non-lowercase extensions to a case-sensitive file system, or at least if Windows is configured to use case-sensitive paths on such filesystems.

I modified foo_unpack to support RSN a long time ago, before 1.66 was out. I didn't know you added support. Fortunately I haven't had any problems that I'm aware of.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-02-05 11:27:12
Other than losing .RAR support. Oh, and foo_unpack tends to get replaced every time you reinstall foobar2000, unless you specifically tell the installer not to install it. Better to ditch the hacks now, as they're no longer necessary.
Title: Game Emu Player (foo_gep) by kode54
Post by: ManiacDC on 2010-02-05 16:07:13
Other than losing .RAR support. Oh, and foo_unpack tends to get replaced every time you reinstall foobar2000, unless you specifically tell the installer not to install it. Better to ditch the hacks now, as they're no longer necessary.

I did, but to deal with the above said issues you simply can rename foo_unpack.dll to foo_unrsn.dll or the like
Title: Game Emu Player (foo_gep) by kode54
Post by: jarsonic on 2010-02-05 17:08:46
So, essentially, you can either hexedit foo_unpack.dll and rename it to something else to keep it from getting overwritten, in the process losing the ability to open .rar files, or you can simply add foo_gep.dll to your components folder and everything works wonderfully.

Yeah, y'all can choose which one seems easier. 
Title: Game Emu Player (foo_gep) by kode54
Post by: ManiacDC on 2010-02-05 21:25:58
So, essentially, you can either hexedit foo_unpack.dll and rename it to something else to keep it from getting overwritten, in the process losing the ability to open .rar files, or you can simply add foo_gep.dll to your components folder and everything works wonderfully.

Yeah, y'all can choose which one seems easier. 

Like I said, to deal with the above... ie you could (since it's pointless to do this now) open rar, zip, and rsn, all at once 
Title: Game Emu Player (foo_gep) by kode54
Post by: rubix on 2010-02-06 02:06:00
not sure why rsn doesn't work, but here (http://i47.tinypic.com/10ogy7b.png) is my components+versions.

my rsn files are all from snesmusic dot org. not sure if snes music is legal to dl or not. so i will remove this part if so.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-02-06 07:40:52
foo_gep is now v1.9, try that first.
Title: Game Emu Player (foo_gep) by kode54
Post by: Kaminari on 2010-02-06 10:10:19
Hi Kode,

Do you know if Game_Music_Emu supports HES ADPCM? Your plugin is not compatible with some HES rips like Cyber City OEDO 808 featuring ADPCM samples, which I suspect is down to GME not emulating the Oki MSM5205.
Title: Game Emu Player (foo_gep) by kode54
Post by: Pulstar on 2010-02-06 13:16:52
Interesting. i've been using GEP for ripping PCE music for a while now. What games do you know of that use samples?
Title: Game Emu Player (foo_gep) by kode54
Post by: Zilog Jones on 2010-02-06 21:59:01
I've noticed that KSS files from games that use the "SCC+" chip (or "enhanced SCC", there's no official name but it's an SCC with more memory and different addressing) do not play correctly in GEP. I suspect it's trying to play them like standard SCC audio. I used to use MSXplug (http://www.pokipoki.org/dsa/index.php?MSXplug) for Winamp which plays them correctly (it could auto-detect if they were SCC or SCC+); I don't know what else does.

SCC+ games are Snatcher, SD Snatcher and the Konami Games Collection series (IIRC some titles in these support it, like Gradius/Nemesis).
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-02-07 07:40:30
Do you know if Game_Music_Emu supports HES ADPCM?

You are correct, it does not support ADPCM yet. I am working on this, but I need some working rips that use ADPCM. For instance, the rip of Fiend Hunter never clears the interrupt disable flag, so it never plays anything. And even when the interrupt disable flag is cleared manually through debugging, it never writes any sample data to the ADPCM memory, so it produces garbage.

I've noticed that KSS files from games that use the "SCC+" chip (or "enhanced SCC", there's no official name but it's an SCC with more memory and different addressing) do not play correctly in GEP.

Support is largely untested and doesn't work with most rips for some reason.
Title: Game Emu Player (foo_gep) by kode54
Post by: Zilog Jones on 2010-02-07 13:32:07
All the other KSS rips I have seem to work OK now (IIRC support used to be a lot more broken a few years ago) - OPLL (MSX-Music), PSG and standard SCC - only DAC (mostly just used for voice samples) and SCC+ don't.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-02-07 16:03:59
I'm listening to (a) Snatcher KSS file right now. Although I don't have a M3U to go with it, it seems to be a fully functioning rip, if you can get past all the dozens of sound effects.

Okay, I take it back, several of the tracks sound strange and/or broken. I'm not exactly sure what's causing it. Something such as SCC vs SCC+ differences should be causing total failure on improper implementation, not this.
Title: Game Emu Player (foo_gep) by kode54
Post by: Kaminari on 2010-02-07 18:21:24
HES rips which I remember using ADPCM are:

Cyber City OEDO 808
Cychorider
Dragon Slayer (Eiyu Densetsu 1)
Fiend Hunter
Pastel Lime
Star Parodier

You can get them at Kingshriek (http://snesmusic.org/hoot/kingshriek/)'s place. NEZplug++ (http://offgao.no-ip.org/program/nezplug++.html) plays them correctly.

@Pulstar

Which games did you rip? I'd certainly be interested in listening to them.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-02-07 20:33:35
I've implemented ADPCM support, and verified that it works with all of those rips. (I was looking here (http://namida.com/kaminarimon/), which has broken Fiend Hunter and Pastel Lime rips.)
Title: Game Emu Player (foo_gep) by kode54
Post by: Kaminari on 2010-02-07 22:56:09
That's my old site... which I haven't touched for some time. Rips should be identical, but maybe Kingshriek has updated his files in the meantime. I will have to check my archives. Thanks for the heads up.

Just gave a quick try to your latest build before calling it a night. ADPCM sounds great so far :) Thanks for your support.
Title: Game Emu Player (foo_gep) by kode54
Post by: Cutter on 2010-02-08 11:35:50
kode54, this Genesis track is playing weirdly with the latest foo_gep. It was playing nicely with a previous version of the component, but sorry, I don't know which version of your component introduced the change. The "good" track is dated march 2009.
Ref (VGZ) (http://ftp://cutter.hd.free.fr/Red%20Zone%20-%2007%20-%20Night%20Mission.vgz)
Good (http://ftp://cutter.hd.free.fr/old.mp3) Bad (http://ftp://cutter.hd.free.fr/new.mp3)
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-02-08 23:46:47
I think blargg is working on a permanent fix.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-02-09 03:25:50
I uploaded version 1.92, which fixes a problem with LFO handling (something was shifting a table index by 7 bits instead of 8, so something was going twice as fast) and also to the internal timer handling. (Not sure if this had anything to do with it.)

Some SSG-EG VGMs such as Bubba 'n' Stix "The Spaceport" will sound much better now, with envelope repeats no longer running twice as fast as they should.

This also fixes that "Night Mission" track from Red Zone. Yay for Jesper Kyd.
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-02-09 03:46:01
Thank you!  There's an irregularity with Fusion on Toejam and Earl's "Funkotronic Beat."  The last note of the bass riff right at the beginning is detuned or something.

Probably the same issue with Vectorman "Options."
Title: Game Emu Player (foo_gep) by kode54
Post by: Cutter on 2010-02-09 05:06:56
Thank you!
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-02-09 10:36:02
And now, version 1.93, with GYM/VGM DAC panning support.
Title: Game Emu Player (foo_gep) by kode54
Post by: Zilog Jones on 2010-02-09 19:36:43
I'm not exactly sure what's causing it. Something such as SCC vs SCC+ differences should be causing total failure on improper implementation, not this.

Yes I see now. With MSXplug in Winamp, if I force the wrong SCC mode and play a track (the mode selection seems to be the wrong way round in the config menu) it just plays the PSG channels with nothing coming from the SCC channels, not the garbled playback or occasional correct playback I'm getting with GEP.

There's some SCC+ files here (they are labeled "enhanced SCC"): http://home.hccnet.nl/s.v.nimwegen/kss/ (http://home.hccnet.nl/s.v.nimwegen/kss/)
As you can see there are not many, but they are some of the best
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-02-09 21:03:50
Genesis Mortal Kombat II produces clicking in the DAC.

Also Lion King "This Land."
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-02-10 01:18:42
Phantasy Star IV "In the Cave" is another example of DAC clicking (panning as well, which is sweet, by the way.    )
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-02-10 08:15:50
Posted yet another new version which should eliminate this clicking. It was a poor assumption on the behavior of panning a single source between multiple Blip_Buffers.
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-02-10 19:48:59
Thank you for the quick responses. 

Lion King "This Land" has crackly DAC.  Play the FM Phantasy Star (J) set and you'll hear similar artifacts.  Play "This Land" again and there will be loud distortion.
Title: Game Emu Player (foo_gep) by kode54
Post by: Pulstar on 2010-02-10 20:11:47
The enigmas of Sega FM emulation 
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-02-10 20:40:05
Here's a different issue that I previously mentioned:

http://www.sendspace.com/file/l5mgx9 (http://www.sendspace.com/file/l5mgx9)

Layout: GEP -- Fusion -- GEP -- Fusion
The first two are Vectorman "Options."  GEP plays a slightly distorted, "detuned" bass note twice.
The last two are ToeJam and Earl "Funkotronic Beat."  Again, GEP plays an incorrect bass note twice.

Maybe this has to due with the Genesis Plus GX core?
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-02-12 22:17:56
Nope, Genesis Plus GX plays the VGM sources correctly.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-02-13 07:11:36
Meaning it would probably be beneficial to take the Genesis Plus GX core and start over again. To fix a bug I can't even hear in the samples you provided. Maybe I should chop them up into individual files so I can try to ABX them.
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-02-13 21:40:19
GEP is almost there.      Hopefully all it needs is a little tweaking.  I've narrowed the samples down (though "Options" was difficult).  "Funkotronic Beat" was much easier to isolate:

http://www.sendspace.com/file/e63rsl (http://www.sendspace.com/file/e63rsl)

Order is always GEP -- Fusion.  The "Options" problem occurs on measure 1 beat 3 and measure 4 beat 3 (after the intro).  The "Funkotronic Beat" issue is measure 2 beat 1 and measure 4 beat 1.  Of course this then repeats throughout the songs.
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-02-14 21:29:19
Comparing with Fusion and Hoot, I think GEP runs the Genesis sound emulation just a hair faster.
Title: Game Emu Player (foo_gep) by kode54
Post by: Pulstar on 2010-02-15 19:37:29
SmartOne what do you think of R. Belmont's YM2612 code for MAME/M1?
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-02-15 23:35:28
Pretty sure M1 = Hoot = MAME, and I noticed issues with Hoot.  I still need to verify the speed difference, though.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-02-16 01:05:04
It runs it at the clock rate indicated in the VGM header, which was written by whatever emulator it was logged from. It then emulates the FM chip at 1/144 that rate, then resamples the result.
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-02-16 03:22:51
Yeah, I don't hear any speed difference anymore.  It was just me being stupid.  It also may be due to the fact that Hoot runs from the actual roms, not VGM files, etc.  The other issues are real, however. 

1. Lion King/Phantasy Star crackliness to loud distortion
2. Vectorman and ToeJam detuned/wrong notes

Could you hear number 2 with the second sample I provided?
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-02-18 19:48:51
Sorry to post another (likely related) issue, but here you go:

Alisia Dragoon has a lot of wrong notes/stuff going on.  "Stage 1-2" and "Stage 1-3" to name a couple.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-02-18 19:52:45
Some of those may be due to the FM emulator not being reset to the correct initial state, compared to some other emulator. I know at least one broken tune from Alisia Dragoon was fixed by playing a full log from emulator power on state.
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-03-07 00:42:10
VGZ/VGM don't play with foobar2000 1.01.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-03-07 06:20:49
VGZ/VGM don't play with foobar2000 1.01.

They work here, are you sure you have foo_unpack installed?
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-03-08 04:33:00
That'll do it.  Thanks.
Title: Game Emu Player (foo_gep) by kode54
Post by: cwilliams on 2010-03-11 04:35:00
Hey kode54, I just recently switched over to using Foobar. Part of the reason I'm able to use this fantastic player is due to all your excellent emu player plugins. So thanks for your hard work!
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-03-17 14:30:01
I've added a visualization dialog for SPC files. Currently, it's available as a pop-up, listed in the View -> Visualization menu, or a UI Element. I may get around to implementing a Columns UI extension eventually.
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-03-20 04:02:17
Cool.  Thanks a lot!
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-04-20 04:26:38
I hear a tiny crackle when switching between SPC tracks.  It may happen with other formats, but the SPCs are the most obvious.  Also, why exclude SPCs from the sample rate selection?  I know 32000 Hz is native, but so is Gaussian interpolation.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-04-20 18:08:10
I hear a tiny crackle when switching between SPC tracks. It may happen with other formats, but the SPCs are the most obvious.

Doesn't happen here. Maybe it has something to do with your output settings?
Also, why exclude SPCs from the sample rate selection?  I know 32000 Hz is native, but so is Gaussian interpolation.

Game_Music_Emu doesn't actually support mixing SPCs at any other sample rate. It only supports resampling the output of the emulator using a built-in FIR resampler, so you wouldn't be getting any higher frequency content by setting the frequency to 44.1KHz or higher anyway.

Changing the interpolation method is easy. Changing the mixing frequency requires changing the echo buffer size, and since that's normally emulated to the SPC RAM, that would have to be changed to use an external buffer of some sort. Of course, I would still downsample the result and shove it into the SPC RAM anyway, just to mess with anyone who thinks they can store important data in the echo buffer without worrying about it being overwritten. (Oh, and envelope generation has to be interpolated, but that'd probably be easy.)
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-07-18 18:35:38
Sonic the Hedgehog "Invincibility" periodically loses a bass note, just like the issues with other games/tracks.  Pretty easy to spot.  "Labyrinth Zone" as well.  Probably others.  "Staff Roll" is pretty buggy, especially towards the end.
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-07-21 21:57:45
It would be really cool to have configurable channel panning for at least the 8-bit formats.

Is it possible to have FIR filter adjustment as well?
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-07-22 01:09:28
Panning control means more preferences settings to store, since I'll at least need to store panning settings for up to 32 channels, possibly even per format if it's requested.

As for FIR filter adjustment, there's only a few formats that even use FIR resampling, being SPC with Sinc interpolation, which is currently hardcoded to use a Kaiser window function, and the GYM/VGM inputs resampling their FM emulators from their native sample rates down to the output sample rate, and I don't know what window function that resampler uses. Let me know which of these you think needs tweaking, and yet another set of controls in the already crowded preferences dialog.
Title: Game Emu Player (foo_gep) by kode54
Post by: Arthur on 2010-07-22 14:53:02
Me again,
Quick feature request/enhancement, the current kss engine has trouble with most, all? the demo tunes found at kss kingdom, i.e, the ones that use extended msxMusic/moonsound type extentions. Basic psg and/or YM2413 sounds come out fine, though. And, a suggestion for the crowded dialog, tab controls, perhaps?

Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-07-22 19:05:37
Panning would probably go next to each channel in playback override, correct? 

Maybe FIR adjustment isn't necessary.  I thought FIR applied to NES, SMS, etc. as well because those chips don't really have a sample rate.  Maybe a boring old low-pass filter is what I'd really like.  Something to make Genesis and 8-bit formats sound less bright (like the "Filter" option in Kega Fusion).  Or not.

An option to resample SPCs would be good for devices that don't support 32000 Hz.  Unfortunately the foobar2000 resampler handles everything.

What's this "surround effect" on SPCs that I always disable?
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-07-22 20:45:01
Me again,
Quick feature request/enhancement, the current kss engine has trouble with most, all? the demo tunes found at kss kingdom, i.e, the ones that use extended msxMusic/moonsound type extentions. Basic psg and/or YM2413 sounds come out fine, though. And, a suggestion for the crowded dialog, tab controls, perhaps?

Game_Music_Emu supports MSX Audio and MSX Music extensions at the correct register addresses. Perhaps there is something wrong with the emulation besides that? You're welcome to look at it, if you know anything about how it's supposed to work. Source (http://kode54.foobar2000.org/Game_Music_Emu-0.6-pre.tbz) for the current version of Game_Music_Emu which I'm using. Since the only reference I have is Nezplug++, and it doesn't seem to be significantly different from that in the FM emulator department, it must be something else.

Panning would probably go next to each channel in playback override, correct?

Making the dialog twice as wide, and adding twice as many controls to show, hide, update, and handle. Not to mention that I would have to switch from Effects_Buffer_Simple to the full Effects_Buffer, since the former doesn't support manual panning control of every voice.

Maybe FIR adjustment isn't necessary.  I thought FIR applied to NES, SMS, etc. as well because those chips don't really have a sample rate.  Maybe a boring old low-pass filter is what I'd really like.  Something to make Genesis and 8-bit formats sound less bright (like the "Filter" option in Kega Fusion).  Or not.

That is what the Effects control and Bass/Treble sliders are for. If you want it more muffled, turn the Treble control down.

An option to resample SPCs would be good for devices that don't support 32000 Hz.  Unfortunately the foobar2000 resampler handles everything.

If your sound hardware doesn't support multiple sample rates, it's probably better to resample to the highest supported rate anyway.

What's this "surround effect" on SPCs that I always disable?

Prevents certain SPCs from employing per voice or global phase inversion, which is usually achieved by negating either the left or right channel or global volume registers.
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-07-22 21:06:52
Making the dialog twice as wide, and adding twice as many controls to show, hide, update, and handle. Not to mention that I would have to switch from Effects_Buffer_Simple to the full Effects_Buffer, since the former doesn't support manual panning control of every voice.


At least Notso Fatso would finally be rendered obsolete.  Please. 
Title: Game Emu Player (foo_gep) by kode54
Post by: Zetto on 2010-10-18 23:25:45
hey kode,

I get heavy CPU load (up to 50% on an E8400 @ 4GHZ) when playing back SPCs and changing into my "fullscreen" view with my progress bar+counters and some high res images. I think the problem is the "1 second Refresh" and the amount of info + SPC/Your Component. I only notice that heavy CPU usage when playing back SPCs (haven't tried other vgm formats yet). As soon as I get rid of the per-second information, CPU load falls back to normal. Using gep 1.102 + foobar 1.1.

Standard music formats of course work fine.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-10-19 00:25:30
Per-second information? The only live information that SPC reports that no other formats report is the minimal information for the SPC700 status dialog. That is, less than 512 bytes per frame of hexadecimal encoded binary strings. Of course, it would slow down any info display component that follows dynamically updated metadata. I can add an option to disable it, but then the SPC700 status dialog would stop working.

EDIT: I've updated the component so that the SPC input only emits dynamic metadata updates when a SPC700 status visualizer window is open. This should fix any odd components which choke the CPU when there are a lot of metadata updates, unless you open at least one of the requisite visualizer windows.
Title: Game Emu Player (foo_gep) by kode54
Post by: Zetto on 2010-10-19 01:26:03
That fixed it.

superb, thanks for reacting so fast (!) and precise.
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-11-02 19:02:23
Eke released a stable version of Genesis Plus GX that appears to have some improvements in audio emulation. 
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-11-03 00:30:43
Eke released a stable version of Genesis Plus GX that appears to have some improvements in audio emulation. 

I went through every revision of ym2612.c that has been posted since my last update, revision 405, and the only notable changes I see are that it now uses a double instead of a float for the internal clock frequency, which doesn't affect foo_gep because it forces an exact ratio of samples to clocks, and thus would only have a fraction of 1Hz of effect on the pitch, if that, and not any effect on the samples generated. There's also code which I've left out for truncating the least significant bits of the sample data to reduce the output resolution below the actual hardware's 14 bits per sample, although the emulator itself defaults to full precision. All of the code related to that involves truncating the initialization of the total level table (tl_tab) and has no effect when the precision is set to the maximum. In fact, the only change I see that would have any effect is that the channel values are now truncated to +/- 8192 instead of +8191 to -8192, and that shouldn't have an audible effect.

(Another change unrelated to the original code, but my implementation also halves the volume of the output to avoid clipping, since it outputs 16-bit samples, and the total of 6 times +/- 8192 is +/- 49152. The resampler that processes the output ends up doubling the volume anyway, but yeah, that's one bit of precision lost from the total volume level.)

I have changed the clipping range to match the latest, although I have not added the code to reduce the output sample precision.
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-11-03 03:07:13
Cool, thanks for the quick update.  Could some of the botched notes on certain tracks be affected by a difference in the clock to sample ratio?  Maybe an instruction periodically gets "rounded-off?"  I use a VGM-to-ROM builder on the affected tracks and they play perfectly in Genesis Plus GX (and the SDL port, too, for convenience, and Fusion).  I've included a ROM with the builder containing four problem tracks.  The Alisia Dragoon track is probably the most obviously wrong.  The others miss a bass note at regular intervals (maybe a couple times per loop).  Hopefully you hear what I describe.

http://www.sendspace.com/file/2xv9x9 (http://www.sendspace.com/file/2xv9x9)
Title: Game Emu Player (foo_gep) by kode54
Post by: Zetto on 2010-11-07 14:36:38
Hey kode54,

Seems like foo_gep doesn't support fading for kss files or maybe I'm missing something here. Regardless of the value I put in the m3u playlist, it won't fade. I wan't to convert some kss files to wav/mp3 - looping 2 times and fade out at the end.

I need tagging capabilities, that's the only reason I'm converting. Would adding tagging support in foo_gep for formats that don't support them natively be a major pain / would it be possible to begin with?

Oh yeah I also tried foo_customdb, but that's not satisfactory for me.
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2010-11-08 03:21:18
The Genesis PSG is too soft compared to Genesis Plus GX and Fusion.
Title: Game Emu Player (foo_gep) by kode54
Post by: blindpainkiller on 2010-11-09 15:44:17
Great work on this plugin. Was a while since I last went through my VGM collection and I must say the sound of this thing has improved since then. However there are some small things still that does not sound completely right.
1. The SMS PSG noise channel is too loud. I've compared it to in_vgm (without "boost noise") and Fusion. This may affect the Genesis PSG as well.
2. If SmartOne does not have this in his list of problematic VGMs already: Sonic 2, Wing Fortress Zone. First tone is "out of tune" so to speak. Haven't tested it in any emulator but I know for sure this VGM used to sound right in other players.
Then I have a little feature request. The ability to slow down tracks to 50Hz (as most are recorded in 60Hz mode and we european guys used to hear them in their slow versions). This applies to VGM but maybe also to other formats.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-11-10 01:13:17
I already fixed Wing Fortress Zone (http://kode54.foobar2000.org/sonic_2_wing_fortress_zone.zip) rip by redumping it and trimming according to the loop specifications on the original track, and it no longer exhibits the problem. Only Project2612 seemed to ignore my report to the IRC channel in regard to that redump.

As for slowing the tempo down, you can easily do that with the GEP control dialog in the View menu, but it works in percentage instead of Hz, since most of the formats supported by Game_Music_Emu do not operate on exactly 60Hz as a reference timer. Not to mention that slowdown only affects games which were poorly localized and/or on specific hardware, since it's pretty braindead to not adjust the tempo versus video standard for European releases. Then again, plenty of developers were this lazy, so whatever. (This did not affect consoles such as the SNES, where the SPC700 had the same reference timer rates and sample rate output independent of the video hardware. But yes, the tempo setting will slow them down, so you can pretend your SNES music is slowed down in PAL land too.)

I also posted a fix for a bug where seeking backwards in any timed track would cause it to play indefinitely even when it wasn't configured to do so.
Title: Game Emu Player (foo_gep) by kode54
Post by: blindpainkiller on 2010-11-10 06:58:20
I already fixed Wing Fortress Zone (http://kode54.foobar2000.org/sonic_2_wing_fortress_zone.zip) rip by redumping it and trimming according to the loop specifications on the original track, and it no longer exhibits the problem. Only Project2612 seemed to ignore my report to the IRC channel in regard to that redump.

As for slowing the tempo down, you can easily do that with the GEP control dialog in the View menu, but it works in percentage instead of Hz, since most of the formats supported by Game_Music_Emu do not operate on exactly 60Hz as a reference timer. Not to mention that slowdown only affects games which were poorly localized and/or on specific hardware, since it's pretty braindead to not adjust the tempo versus video standard for European releases. Then again, plenty of developers were this lazy, so whatever. (This did not affect consoles such as the SNES, where the SPC700 had the same reference timer rates and sample rate output independent of the video hardware. But yes, the tempo setting will slow them down, so you can pretend your SNES music is slowed down in PAL land too.)

I also posted a fix for a bug where seeking backwards in any timed track would cause it to play indefinitely even when it wasn't configured to do so.

Thanks a lot. Finally Wing Fortress sounds like it should .
I had forgot about that GEP control panel but now that I rediscovered it, I have another bug to report. It is impossible to tab through the controls in this dialog, and for me as a blind person that makes the whole thing unusable.
Also, how about the SMS PSG noise channel? I know this has been discussed before in the Sega community, however, the current setting is inaccurate even though some think it sounds better.
Thanks again for your great work.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-11-10 08:40:54
Fixed keyboard navigation in that dialog. I completely forgot about the modeless_dialog_manager service. (Although if I needed keyboard filtering for more advanced things like ctrl-tab navigation of tab controls, I would have to register a more advanced messagefilter.)

I'm not sure about that PSG loudness issue, since, like most of the sound chip emulators in blargg's Game_Music_Emu library, the PSG is not my code, so I don't know the correct way to adjust the relative volume levels. I could look at other emulators, but that's only what some other emulator author decided, not really a guaranteed accurate volume ratio. Well, unless they measured it.
Title: Game Emu Player (foo_gep) by kode54
Post by: blindpainkiller on 2010-11-10 10:33:33
Fixed keyboard navigation in that dialog. I completely forgot about the modeless_dialog_manager service. (Although if I needed keyboard filtering for more advanced things like ctrl-tab navigation of tab controls, I would have to register a more advanced messagefilter.)

I'm not sure about that PSG loudness issue, since, like most of the sound chip emulators in blargg's Game_Music_Emu library, the PSG is not my code, so I don't know the correct way to adjust the relative volume levels. I could look at other emulators, but that's only what some other emulator author decided, not really a guaranteed accurate volume ratio. Well, unless they measured it.


Thanks again, now it works fine.
About the PSG: Yeah, I thought so. If it is not possible to make Blargg change his stuff (I don't know if he's even active anymore) I think you should try to get permission to use Maxim's PSG (the one used in in_vgm for Winamp). It is very accurate.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2010-11-10 11:18:36
That other PSG may help with adjusting the correct volume levels, assuming it's a proper reference. I'm not even sure if following the other emulators is a good idea unless they're already modeled after the actual hardware. (I can probably adjust the volume levels pretty easily, since each PSG channel also has its own volume control relative to the rest of the PSG channels, and then the GYM and VGM players can control relative volume between the FM chips, the PSG, and the DAC channel. I just don't know if I should.)
Title: Game Emu Player (foo_gep) by kode54
Post by: blindpainkiller on 2010-11-10 12:11:20
That other PSG may help with adjusting the correct volume levels, assuming it's a proper reference. I'm not even sure if following the other emulators is a good idea unless they're already modeled after the actual hardware. (I can probably adjust the volume levels pretty easily, since each PSG channel also has its own volume control relative to the rest of the PSG channels, and then the GYM and VGM players can control relative volume between the FM chips, the PSG, and the DAC channel. I just don't know if I should.)


If you compare the current foo_gep with Kega Fusion, which is a de facto YM2612 and PSG reference, it's obvious that Blargg's PSG is less accurate. Maxim's PSG is almost identical to Fusion's (they might even be completely identical, but I'm not sure) and it has been used in multiple emulators and players. As you say it might be possible to fiddle with that channel's volume in the current implementation, the downside to that is that you'd have to guess how much to lower the volume of the noise channel to get it right and obviously it would be better with a system where the balance is right from the start.
A side note is that most players and emulators of the Master System have an option to boost the PSG noise channel, because it's pretty quiet by default. It seems like Blargg has that from the start, but there might be some switch in his code to turn it off.
I have some samples to compare the two PSGs but I don't know how to attach files here (or even if it is possible) and I have nowhere to upload them to either.
Thanks again for doing all this great work.
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2011-01-03 02:48:57
Is there an internal filter on the SN76489?  It sounds a bit muffled.
Title: Game Emu Player (foo_gep) by kode54
Post by: Vagabond on 2011-01-08 04:06:54
Having some issues with NSFE files—they don't load in the proper order. I compared GEP with NotSo Fatso in Winamp and found that tracks load in the correct order in Fatso. Would I need to alter GEP settings for it to be fixed? I haven't changed any of the default settings.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2011-01-09 14:45:25
Having some issues with NSFE files—they don't load in the proper order. I compared GEP with NotSo Fatso in Winamp and found that tracks load in the correct order in Fatso. Would I need to alter GEP settings for it to be fixed? I haven't changed any of the default settings.


Either change your default incoming file sort option to use %path% instead of %path_sort%, or wait for me to add %tracknumber% enumeration to NSFE files and add %tracknumber% to your default sort field.

The problem is that I enumerate the subsongs in the correct internal playlist order, but I expose the subsong numbers as the internal subsong numbers, rather than indexes into the internal playlist. The reason for this is so that each subsong number relates to the internal title/length/fade information. Otherwise, every time you edit the internal playlist, you would have to delete all the NSFE's tracks from the playlist and readd it.
Title: Game Emu Player (foo_gep) by kode54
Post by: Vagabond on 2011-01-09 21:11:09
Having some issues with NSFE files—they don't load in the proper order. I compared GEP with NotSo Fatso in Winamp and found that tracks load in the correct order in Fatso. Would I need to alter GEP settings for it to be fixed? I haven't changed any of the default settings.


Either change your default incoming file sort option to use %path% instead of %path_sort%, or wait for me to add %tracknumber% enumeration to NSFE files and add %tracknumber% to your default sort field.

The problem is that I enumerate the subsongs in the correct internal playlist order, but I expose the subsong numbers as the internal subsong numbers, rather than indexes into the internal playlist. The reason for this is so that each subsong number relates to the internal title/length/fade information. Otherwise, every time you edit the internal playlist, you would have to delete all the NSFE's tracks from the playlist and readd it.


That worked. Many thanks!
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2011-01-17 05:55:49
I've extended the SPC echo buffer clearing hack. Now it will not only kick in if the echo buffer is enabled on load, but also if the echo buffer is enabled post-load. This fixes pops at the start of some tracks from the snesmusic.org Axelay dump.

The reason this does not affect any other SPC players is because they emulate the echo buffer outside of the SPC-700 memory, and clear their buffers on startup. SPC dumps may have garbage in that memory, since the emulators that are capable of dumping them, excluding Snes9x 1.52 and newer, and my modified versions of bsnes, do not emulate the echo buffer in the SPC-700 memory either, so the range in the dump will often contain garbage.

The public release of Snes_Spc, as well as Game_Music_Emu, is designed to clear the echo buffer upon loading the SPC dump, but only if the echo mute bit is not set. With my change, it will also clear it the first time the echo mute bit is cleared, if it has not already been cleared on load.
Title: Game Emu Player (foo_gep) by kode54
Post by: foodeater on 2011-02-21 11:46:34
First, thanks for this great program.

Second KSS files sound odd. http://anon48.f-m.fm/kss/ (http://anon48.f-m.fm/kss/) I downloaded Snatcher from this site and it seems as if all layers are playing at once a lot of times.

I tried getting MSXplug and Winamp to work to compare, it crashes saying I need MGSDRV.COM even though it's right in the directory. MSXplug was ported to foobar, but I don't think it'll work in version 1.

ETA: I got chipamp working for msx. It plays correctly, but doesn't sound as good as GEP. Not as sharp and clear.  Interestingly it will only open m3u files linked to a kss. Obviously the way GEP works is better since many of the kss files you find are loose.
Title: Game Emu Player (foo_gep) by kode54
Post by: Vagabond on 2011-02-28 17:01:33
Any plans to support .SNDH format?
Title: Game Emu Player (foo_gep) by kode54
Post by: mudlord on 2011-02-28 23:58:10
I was working on SC68 support.

The API I found, was completely and utterly trash.

I might do VTX support next, not sure about sndh.
Title: Game Emu Player (foo_gep) by kode54
Post by: /mnt on 2011-03-01 01:25:38
Second KSS files sound odd. http://anon48.f-m.fm/kss/ (http://anon48.f-m.fm/kss/) I downloaded Snatcher from this site and it seems as if all layers are playing at once a lot of times.

I tried getting MSXplug and Winamp to work to compare, it crashes saying I need MGSDRV.COM even though it's right in the directory. MSXplug was ported to foobar, but I don't think it'll work in version 1.


I tested Snatcher again with the latest version of foo_gep, and the SCC+ problem still exists. At least Metal Gear 2 works, which in my opinion it made better use of the SCC chip then Snatcher ever did.

Nevermind since i got the NEC PC-88 version working with the S98 input plugin and the snatcher .s98 music files; and it sounds miles better then the MSX / SCC+ version.
Title: Game Emu Player (foo_gep) by kode54
Post by: blindpainkiller on 2011-05-18 16:18:55
Any progress on fixing the problem with dropping notes in the YM2612 (in e.g. Sonic The Hedgehog "Invincibility" and "Game Over")?
Title: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2011-08-06 01:22:33
I'm begging for channel panning for 8-bit formats.  Please.
Title: Game Emu Player (foo_gep) by kode54
Post by: 7HFB on 2011-12-06 21:24:03
Hey, Kode54, real nice work with this, but I have a request in case you ever swing back by here.

To my knowledge, when foo_gep grabs an M3u file for use with an HES/GBS/whatever that it's opened, it doesn't read the loop data that comes after the title and song length (when it's in title,length,loop,fade format). I know a lot of M3U files don't bother to include loop data, but I'd appreciate it if foo_gep could read and work with that field like NEZPlug does so that M3Us I create can work with both Winamp and Foobar. You don't necessarily have to put in the actual ability for the user to set the default number of loops, but it'd be nice if the M3Us could be formatted so that NEZPlug users can do so if they want.

Incidentally, I'd appreciate it if you could list out all the fields that foo_gep can read from #commented data in an M3U (like #Ripping: and #Game:).

I also can't seem to figure out if Foobar has an option to reload all of the playlist data whenever I open a file that has an accompanying M3U - I've been going into my Win XP Application Data folder to delete the playlist-related files that Foobar creates in order to refresh the tag information properly. I'm probably missing something somewhere..

Anyway, thanks for the plugin!
Title: Game Emu Player (foo_gep) by kode54
Post by: Vagabond on 2012-01-09 03:52:17
Is it possible to change the playback sample rate for .SPC/.RSN files with foo_gep?
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-01-09 10:35:46
To my knowledge, when foo_gep grabs an M3u file for use with an HES/GBS/whatever that it's opened, it doesn't read the loop data that comes after the title and song length

It attempts to read loop, fade, and repeat lengths. If a hyphen leads the loop field, it sets the loop length to the total length. If a hyphen follows it, it assumes the intro length was specified and that the loop length is the total length minus that. Otherwise, it's just a plain loop length.

I'll need to see your M3U file.

Is it possible to change the playback sample rate for .SPC/.RSN files with foo_gep?

Not without using a resampler DSP, and even if you do that, you won't be adding any information to the track. Snes_spc does not support synthesizing the sound output at anything but the native sample rate of the hardware, and setting any other rate simply passes the pre-mixed output through a general purpose sinc resampler.
Title: Game Emu Player (foo_gep) by kode54
Post by: 7HFB on 2012-02-09 11:36:12
To my knowledge, when foo_gep grabs an M3u file for use with an HES/GBS/whatever that it's opened, it doesn't read the loop data that comes after the title and song length

It attempts to read loop, fade, and repeat lengths. If a hyphen leads the loop field, it sets the loop length to the total length. If a hyphen follows it, it assumes the intro length was specified and that the loop length is the total length minus that. Otherwise, it's just a plain loop length.

I'll need to see your M3U file.


sorry about the month delay, I just recently returned to this and tried to format files for a while (with the latest foo_gep to be sure), but all I did was get even more confused about what I was doing wrong and how to fix it. Rather than explain the errors I made, I'd appreciate it if you could instead show me how to do what I want with an M3U.

For example, here's a GBS+M3U combo (http://www.sendspace.com/file/wup5nn) that I recently saw submitted for someone else to tag (the tagged M3U can be found here (http://pastebin.com/Ut93kVee)). Here's a basic line from that set:

Code: [Select]
DMG-CVJ.gbs::GBS,6,Revenge (Stage 4 BGM),1:01,,10,

which follows the NEZPlug format of:
Code: [Select]
filename.ext::FILETYPE,#,TITLE,LENGTH,LOOP,FADE,REPEAT

with nothing in the LOOP or REPEAT fields due to the confusion between NEZPlug and foo_gep.
This should play the track the same way in both players.

Now, totally aside from whether any of these times are accurate, I can replicate it in NEZPlug with
Code: [Select]
DMG-CVJ.gbs::GBS,6,Revenge (Stage 4 BGM),33,28,10,

with an optional whatever at the end if I want to change the number of times it loops.
However, if I then try to use the playlist in foo_gep, the track plays for 28+10 fade, no matter what I put after the 10. I'm clearly misunderstanding some part of how the line should be written out. Furthermore, no matter how simply you've explained it to me, my attempts to make things work have only confused me further.

So I'd really appreciate it if you could tell me how that line would be handled in foo_gep to get the 1:10 (plus the possibility of more loops if desired), and if there's currently any way to achieve the same result in both players from a single file. If not, that's okay - this is really a matter of resolving a personal irritation due to my own failure to understand what to do.


As an aside, it's been noted elsewhere (and possibly brought to your attention) that a colon in the @TITLE field will produce an error in foo_gep when the playlist data is presented. It's a very minor issue, though.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-02-09 16:32:20
I've corrected some issues as you specified.

The length field, as I understand it from Nezplug++, includes both the intro and the first loop, so you would need to specify 1:01,28,10,. If that works wrong with Nezplug, let me know and I'll change it.
Title: Game Emu Player (foo_gep) by kode54
Post by: exyll on 2012-02-10 10:06:17
Kode54,

You always put the sources online too but do you also put them in a repository like github? This way I could learn from your changes as you perform lots of maintenance on your plugins.
Title: Game Emu Player (foo_gep) by kode54
Post by: mudlord on 2012-02-10 11:07:28
He already haz a repo, except its not public.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-02-10 20:32:53
Then I would need to convert my existing repository into a public repository, and I have some things that I do not wish to make public or open source yet. For instance, Neill Corlett's libraries do not belong to me. Outside of foobar2000 projects, neither does QuickNES. I would have to ask these authors permission before I publish any source code on a public repository.
Title: Game Emu Player (foo_gep) by kode54
Post by: RMoD on 2012-02-22 04:21:07
MAJOR problem with the newest version of foo_gep 1.120.

I'd post a crash dump, but if I start fb2k with the component installed, the program will not start at all, nor does it create a dump.

The previous version worked perfectly fine like...15 minutes beforehand, uninstalled all other optional components, etc, still crashed.  The common denominator is this component.

Please fix somehow?  And/or old-version it so I can listen to all my musics again.

Wish I could be more help...sorry.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-02-22 19:58:11
Kill the version installed, then install the latest version. Completely idiotic error on my part, from committing partial changes into TFS, then pulling out an older version, which doesn't get tracked. I'm not using TFS now, and the import didn't catch those changes either.

This particular issue affected VGM files only, and presumably straight on startup if you have any in your Media Library. Remove the component from outside the player if necessary, then install the newest version.
Title: Game Emu Player (foo_gep) by kode54
Post by: RMoD on 2012-02-22 20:13:44
Well, now the player opens but I can't play VGM files still...

But at least I got a crash dump now.

Code: [Select]
Illegal operation:
Code: C0000005h, flags: 00000000h, address: 6855C40Ch
Access violation, operation: write, address: 00007FFEh

Call path:
threaded_process thread=>playlist_loader::g_process_path=>index_tracks_helper=>hintable=>subsong-loop=>get_info

Code bytes (6855C40Ch):
6855C3CCh:  75 EC 89 4D F4 8B 4B 18 8D 0C 71 89 4D F8 8B 75
6855C3DCh:  F8 8B 4D F4 0F BF 36 03 75 E4 0F BF 09 83 6D F8
6855C3ECh:  02 83 6D F4 02 03 CE FF 4D FC 83 7D FC 00 89 4D
6855C3FCh:  E4 7D DB 8B 73 18 03 7D F0 01 45 EC 8D 74 32 FE
6855C40Ch:  66 29 0E FF 4D E8 03 55 E0 83 7D E8 00 7D 95 5F
6855C41Ch:  5E C9 C3 55 8B EC 83 EC 18 8B 45 08 8B 40 1C 8B
6855C42Ch:  4D 0C 53 56 33 F6 99 49 46 D3 E6 2B C2 D1 F8 57
6855C43Ch:  8B C8 8B F8 81 C6 00 80 00 00 6B FF 7E F7 D9 03

Stack (0460DAF8h):
0460DAD8h:  EA7546E8 3FEFFCC6 6855C205 0460DB18
0460DAE8h:  6855C205 FFFFFFE1 851EB852 BC842108
0460DAF8h:  00000000 FFFFFFE1 00000000 00008000
0460DB08h:  0000001F 00000000 00000000 00000000
0460DB18h:  0460EAE8 FFFFFFFF 0460EAE8 6855C343
0460DB28h:  03106FE8 031077D8 0460EB14 00000000
0460DB38h:  93819000 413DA010 00000000 00000000
0460DB48h:  00000000 00000000 F6AD6378 3FDE5E6E
0460DB58h:  4787074A 4786FE27 4786DFFA 4786C88C
0460DB68h:  478699B1 47865D89 47861420 4785BD89
0460DB78h:  478559DA 4784E92B 4784681B 4783DDC6
0460DB88h:  478346CF 4782A359 4781F38C 47813794
0460DB98h:  47806F9E 477F37B7 477D78FC 477BA37B
0460DBA8h:  4779B7A2 4777B5E8 47759EC9 477372C6
0460DBB8h:  47713260 476EDE22 476C7699 4769FC55
0460DBC8h:  47676FED 4764D1F9 47622314 475F63DC
0460DBD8h:  475C94F7 4759B707 4756CAB5 4753D0AA
0460DBE8h:  4750C995 474DB620 474A96FC 47476CDC
0460DBF8h:  47443873 4740FA72 473DB391 473A6481
0460DC08h:  47370DFB 4733B0B3 47304D5E 472CE4B4

Registers:
EAX: 00000000, EBX: 03107AB8, ECX: 00008000, EDX: 00000000
ESI: 00007FFE, EDI: 00000000, EBP: 0460DB20, ESP: 0460DAF8

Crash location:
Module: foo_gep
Offset: 1C40Ch

Loaded modules:
foobar2000                      loaded at 00C90000h - 00E46000h
ntdll                            loaded at 77C70000h - 77DF0000h
kernel32                        loaded at 75EE0000h - 75FF0000h
KERNELBASE                      loaded at 75E90000h - 75ED6000h
snxhk                            loaded at 748F0000h - 74924000h
COMCTL32                        loaded at 73320000h - 734BE000h
msvcrt                          loaded at 75DE0000h - 75E8C000h
GDI32                            loaded at 76200000h - 76290000h
USER32                          loaded at 75720000h - 75820000h
ADVAPI32                        loaded at 75820000h - 758C0000h
sechost                          loaded at 765A0000h - 765B9000h
RPCRT4                          loaded at 76670000h - 76760000h
SspiCli                          loaded at 75350000h - 753B0000h
CRYPTBASE                        loaded at 75340000h - 7534C000h
LPK                              loaded at 754F0000h - 754FA000h
USP10                            loaded at 75680000h - 7571D000h
SHLWAPI                          loaded at 75990000h - 759E7000h
DSOUND                          loaded at 70950000h - 709C2000h
ole32                            loaded at 759F0000h - 75B4C000h
WINMM                            loaded at 730B0000h - 730E2000h
POWRPROF                        loaded at 6F600000h - 6F625000h
SETUPAPI                        loaded at 76400000h - 7659D000h
CFGMGR32                        loaded at 765C0000h - 765E7000h
OLEAUT32                        loaded at 75D50000h - 75DDF000h
DEVOBJ                          loaded at 75FF0000h - 76002000h
UxTheme                          loaded at 71C90000h - 71D10000h
SHELL32                          loaded at 76760000h - 773AA000h
zlib1                            loaded at 5A4C0000h - 5A4D4000h
shared                          loaded at 6C810000h - 6C83B000h
imagehlp                        loaded at 75D20000h - 75D4A000h
dbghelp                          loaded at 74280000h - 7436B000h
COMDLG32                        loaded at 765F0000h - 7666B000h
gdiplus                          loaded at 71DB0000h - 71F40000h
Secur32                          loaded at 73A70000h - 73A78000h
CRYPT32                          loaded at 75500000h - 7561D000h
MSASN1                          loaded at 761F0000h - 761FC000h
IMM32                            loaded at 75400000h - 75460000h
MSCTF                            loaded at 758C0000h - 7598C000h
dwmapi                          loaded at 71C70000h - 71C83000h
foo_input_usf                    loaded at 6C070000h - 6C0EF000h
MSVCR90                          loaded at 74470000h - 74513000h
foo_freedb2                      loaded at 6C030000h - 6C070000h
foo_unpack                      loaded at 6BF80000h - 6BFAE000h
foo_rgscan                      loaded at 699A0000h - 699EB000h
foo_ui_std                      loaded at 698B0000h - 69995000h
MSIMG32                          loaded at 725B0000h - 725B5000h
foo_input_std                    loaded at 686A0000h - 687FB000h
foo_fileops                      loaded at 68650000h - 68697000h
foo_dsp_std                      loaded at 68600000h - 68648000h
foo_gep                          loaded at 68540000h - 685FD000h
foo_input_vio2sf                loaded at 10000000h - 1003B000h
foo_cdda                        loaded at 684F0000h - 6853E000h
foo_albumlist                    loaded at 68490000h - 684EC000h
foo_converter                    loaded at 68410000h - 6848C000h
CLBCatQ                          loaded at 76010000h - 76093000h
MMDevApi                        loaded at 71C30000h - 71C69000h
PROPSYS                          loaded at 71B30000h - 71C25000h
AUDIOSES                        loaded at 71AF0000h - 71B26000h
sud                              loaded at 68350000h - 6840B000h
ADVPACK                          loaded at 68320000h - 6834E000h
VERSION                          loaded at 74380000h - 74389000h
DUI70                            loaded at 6F1B0000h - 6F262000h

Stack dump analysis:
Address: 6855C343h (foo_gep+1C343h)
Address: 6858EFA2h (foo_gep+4EFA2h), symbol: "foobar2000_get_interface" (+18852h)
Address: 00D9157Ah (foobar2000+10157Ah)
Address: 685487C9h (foo_gep+87C9h)
Address: 00CCBA0Ch (foobar2000+3BA0Ch)
Address: 00CCC641h (foobar2000+3C641h)
Address: 00CCBEF7h (foobar2000+3BEF7h)
Address: 685487C9h (foo_gep+87C9h)
Address: 00DA38A8h (foobar2000+1138A8h)
Address: 68578346h (foo_gep+38346h), symbol: "foobar2000_get_interface" (+1BF6h)
Address: 685A01C4h (foo_gep+601C4h), symbol: "foobar2000_get_interface" (+29A74h)
Address: 6857835Bh (foo_gep+3835Bh), symbol: "foobar2000_get_interface" (+1C0Bh)
Address: 00DF7684h (foobar2000+167684h)
Address: 6858F13Eh (foo_gep+4F13Eh), symbol: "foobar2000_get_interface" (+189EEh)
Address: 6858F1DDh (foo_gep+4F1DDh), symbol: "foobar2000_get_interface" (+18A8Dh)
Address: 68548858h (foo_gep+8858h)
Address: 6858EAB5h (foo_gep+4EAB5h), symbol: "foobar2000_get_interface" (+18365h)
Address: 685487C9h (foo_gep+87C9h)
Address: 6858DFC8h (foo_gep+4DFC8h), symbol: "foobar2000_get_interface" (+17878h)
Address: 6858DFD4h (foo_gep+4DFD4h), symbol: "foobar2000_get_interface" (+17884h)
Address: 685487C9h (foo_gep+87C9h)
Address: 68580110h (foo_gep+40110h), symbol: "foobar2000_get_interface" (+99C0h)
Address: 6858DFD4h (foo_gep+4DFD4h), symbol: "foobar2000_get_interface" (+17884h)
Address: 6858E268h (foo_gep+4E268h), symbol: "foobar2000_get_interface" (+17B18h)
Address: 6858E1E9h (foo_gep+4E1E9h), symbol: "foobar2000_get_interface" (+17A99h)
Address: 685A6D74h (foo_gep+66D74h), symbol: "foobar2000_get_interface" (+30624h)
Address: 685A6D50h (foo_gep+66D50h), symbol: "foobar2000_get_interface" (+30600h)
Address: 6858DF46h (foo_gep+4DF46h), symbol: "foobar2000_get_interface" (+177F6h)
Address: 68548858h (foo_gep+8858h)
Address: 685A6D74h (foo_gep+66D74h), symbol: "foobar2000_get_interface" (+30624h)
Address: 68580110h (foo_gep+40110h), symbol: "foobar2000_get_interface" (+99C0h)
Address: 6858E1E9h (foo_gep+4E1E9h), symbol: "foobar2000_get_interface" (+17A99h)
Address: 6858E4DAh (foo_gep+4E4DAh), symbol: "foobar2000_get_interface" (+17D8Ah)
Address: 685A6D88h (foo_gep+66D88h), symbol: "foobar2000_get_interface" (+30638h)
Address: 685A6D50h (foo_gep+66D50h), symbol: "foobar2000_get_interface" (+30600h)
Address: 6858E4E8h (foo_gep+4E4E8h), symbol: "foobar2000_get_interface" (+17D98h)
Address: 68548858h (foo_gep+8858h)
Address: 6858E865h (foo_gep+4E865h), symbol: "foobar2000_get_interface" (+18115h)
Address: 685A6D88h (foo_gep+66D88h), symbol: "foobar2000_get_interface" (+30638h)
Address: 685A5BE4h (foo_gep+65BE4h), symbol: "foobar2000_get_interface" (+2F494h)
Address: 685A6D74h (foo_gep+66D74h), symbol: "foobar2000_get_interface" (+30624h)
Address: 685A5BE4h (foo_gep+65BE4h), symbol: "foobar2000_get_interface" (+2F494h)
Address: 685A6D84h (foo_gep+66D84h), symbol: "foobar2000_get_interface" (+30634h)
Address: 685A6D50h (foo_gep+66D50h), symbol: "foobar2000_get_interface" (+30600h)
Address: 6858EA5Eh (foo_gep+4EA5Eh), symbol: "foobar2000_get_interface" (+1830Eh)
Address: 685A6D88h (foo_gep+66D88h), symbol: "foobar2000_get_interface" (+30638h)
Address: 6858D798h (foo_gep+4D798h), symbol: "foobar2000_get_interface" (+17048h)
Address: 685A6D88h (foo_gep+66D88h), symbol: "foobar2000_get_interface" (+30638h)
Address: 77CE71D5h (ntdll+771D5h), symbol: "WinSqmSetIfMaxDWORD" (+31h)
Address: 685A6D88h (foo_gep+66D88h), symbol: "foobar2000_get_interface" (+30638h)
Address: 77CCB459h (ntdll+5B459h), symbol: "LdrRemoveLoadAsDataTable" (+D50h)
Address: 77CCB46Dh (ntdll+5B46Dh), symbol: "LdrRemoveLoadAsDataTable" (+D64h)
Address: 77CCB42Bh (ntdll+5B42Bh), symbol: "LdrRemoveLoadAsDataTable" (+D22h)
Address: 6858F456h (foo_gep+4F456h), symbol: "foobar2000_get_interface" (+18D06h)
Address: 77CCB3CEh (ntdll+5B3CEh), symbol: "LdrRemoveLoadAsDataTable" (+CC5h)
Address: 6858F456h (foo_gep+4F456h), symbol: "foobar2000_get_interface" (+18D06h)
Address: 685A62F8h (foo_gep+662F8h), symbol: "foobar2000_get_interface" (+2FBA8h)
Address: 6BF848B2h (foo_unpack+48B2h)
Address: 6BFA4178h (foo_unpack+24178h), symbol: "foobar2000_get_interface" (+155F8h)
Address: 6BFA11C0h (foo_unpack+211C0h), symbol: "foobar2000_get_interface" (+12640h)
Address: 6BFA073Bh (foo_unpack+2073Bh), symbol: "foobar2000_get_interface" (+11BBBh)
Address: 6BF817F2h (foo_unpack+17F2h)
Address: 6BFA30F5h (foo_unpack+230F5h), symbol: "foobar2000_get_interface" (+14575h)
Address: 6BF83573h (foo_unpack+3573h)
Address: 77C80133h (ntdll+10133h), symbol: "KiUserExceptionDispatcher" (+Fh)
Address: 75E9B9BCh (KERNELBASE+B9BCh), symbol: "RaiseException" (+58h)
Address: 685A5C10h (foo_gep+65C10h), symbol: "foobar2000_get_interface" (+2F4C0h)
Address: 6BF93EFAh (foo_unpack+13EFAh), symbol: "foobar2000_get_interface" (+537Ah)
Address: 6BFA0D8Bh (foo_unpack+20D8Bh), symbol: "foobar2000_get_interface" (+1220Bh)
Address: 685A62F8h (foo_gep+662F8h), symbol: "foobar2000_get_interface" (+2FBA8h)
Address: 75E9B9BCh (KERNELBASE+B9BCh), symbol: "RaiseException" (+58h)
Address: 77CA3C94h (ntdll+33C94h), symbol: "RtlImageNtHeader" (+B10h)
Address: 77CA3CC3h (ntdll+33CC3h), symbol: "RtlImageNtHeader" (+B3Fh)
Address: 75ED012Ch (KERNELBASE+4012Ch), symbol: "WaitForThreadpoolWorkCallbacks" (+5B6h)
Address: 77CE71D5h (ntdll+771D5h), symbol: "WinSqmSetIfMaxDWORD" (+31h)
Address: 77CA3CC3h (ntdll+33CC3h), symbol: "RtlImageNtHeader" (+B3Fh)
Address: 77CA3CEEh (ntdll+33CEEh), symbol: "RtlImageNtHeader" (+B6Ah)
Address: 77CE71D5h (ntdll+771D5h), symbol: "WinSqmSetIfMaxDWORD" (+31h)
Address: 77C9E023h (ntdll+2E023h), symbol: "RtlFreeHeap" (+7Eh)
Address: 77CB26A4h (ntdll+426A4h), symbol: "RtlReAllocateHeap" (+1B3h)
Address: 77CB26B8h (ntdll+426B8h), symbol: "RtlReAllocateHeap" (+1C7h)
Address: 77C9E023h (ntdll+2E023h), symbol: "RtlFreeHeap" (+7Eh)
Address: 77C9E38Ch (ntdll+2E38Ch), symbol: "RtlInitUnicodeString" (+164h)
Address: 00D81C00h (foobar2000+F1C00h)
Address: 77C9E38Ch (ntdll+2E38Ch), symbol: "RtlInitUnicodeString" (+164h)
Address: 77C9E0F2h (ntdll+2E0F2h), symbol: "RtlAllocateHeap" (+ACh)
Address: 77CA3C94h (ntdll+33C94h), symbol: "RtlImageNtHeader" (+B10h)
Address: 77CA3CC3h (ntdll+33CC3h), symbol: "RtlImageNtHeader" (+B3Fh)
Address: 77C9E38Ch (ntdll+2E38Ch), symbol: "RtlInitUnicodeString" (+164h)
Address: 00D9157Ah (foobar2000+10157Ah)
Address: 00C9DF1Fh (foobar2000+DF1Fh)
Address: 77CE71D5h (ntdll+771D5h), symbol: "WinSqmSetIfMaxDWORD" (+31h)
Address: 77CA3CC3h (ntdll+33CC3h), symbol: "RtlImageNtHeader" (+B3Fh)
Address: 77CA3CEEh (ntdll+33CEEh), symbol: "RtlImageNtHeader" (+B6Ah)
Address: 6859C698h (foo_gep+5C698h), symbol: "foobar2000_get_interface" (+25F48h)
Address: 6855C580h (foo_gep+1C580h)
Address: 6855B459h (foo_gep+1B459h)
Address: 685578ECh (foo_gep+178ECh)

Environment:
App: foobar2000 v1.1.11
UI: Default User Interface 0.9.5

Components:
Core (2012-02-04 13:05:48 UTC)
    foobar2000 core 1.1.11
foo_albumlist.dll (2012-02-04 13:04:12 UTC)
    Album List 4.5
foo_cdda.dll (2012-02-04 13:03:52 UTC)
    CD Audio Decoder 3.0
foo_converter.dll (2012-02-04 13:04:00 UTC)
    Converter 1.5
foo_dsp_std.dll (2012-02-04 13:04:14 UTC)
    Standard DSP Array 1.0
foo_fileops.dll (2012-02-04 13:03:02 UTC)
    File Operations 2.1.3
foo_freedb2.dll (2012-02-04 13:03:02 UTC)
    freedb Tagger 0.6.4
foo_gep.dll (2012-02-22 20:11:01 UTC)
    Game Emu Player 1.121
foo_input_std.dll (2012-02-04 13:05:10 UTC)
    Standard Input Array 1.0
foo_input_usf.dll (2012-02-22 04:10:34 UTC)
    LazyUSF 2.1 (Build Jun 26 2011)
foo_input_vio2sf.dll (2010-01-20 04:32:42 UTC)
    2SF decoder / DeSmuME v0.8.0 0.22
foo_rgscan.dll (2012-02-04 13:03:48 UTC)
    ReplayGain Scanner 2.1.2
foo_ui_std.dll (2012-02-04 13:04:08 UTC)
    Default User Interface 0.9.5
foo_unpack.dll (2012-02-04 13:03:26 UTC)
    ZIP/GZIP/RAR Reader 1.6

Recent events:
Album List refreshed in: 0:00.000310
Startup time : 0:00.212398


Machine specifications:
OS: Windows 6.1.7601 Service Pack 1 x64
CPU: Intel® Core™ i7-2630QM CPU @ 2.00GHz, features: MMX SSE SSE2 SSE3 SSE4.1 SSE4.2
Audio: Headset Earphone (3- Microsoft LifeChat LX-3000 ); Speakers (Realtek High Definition Audio); Realtek Digital Output (Realtek High Definition Audio)

Here's the dump file as well:  http://dl.dropbox.com/u/7951825/failure_00000004.dmp (http://dl.dropbox.com/u/7951825/failure_00000004.dmp)
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-02-23 00:11:41
Uh, yeah. When I copied the correct file over from my previous source tree, it still had an older modification time than the file it replaced, so Visual Studio didn't actually recompile it. I had to recompile it manually, heh.
Title: Game Emu Player (foo_gep) by kode54
Post by: RMoD on 2012-02-23 00:29:47
Thanks, working just fine now ^^
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-02-23 16:51:44
Yeah, it would have been working in the first place if I had actually tested my changes before uploading.
Title: Game Emu Player (foo_gep) by kode54
Post by: 7HFB on 2012-02-24 18:53:33
I've corrected some issues as you specified.

The length field, as I understand it from Nezplug++, includes both the intro and the first loop, so you would need to specify 1:01,28,10,. If that works wrong with Nezplug, let me know and I'll change it.


Thanks for the work on this, but while I thought it was working fine when I first tried it out shortly after you updated, I recently returned to this when I had a bigger block of free time and realized things weren't quite right. I feel like I messed something up somewhere, but I'm sure I'm using the latest foo_gep (and Foobar v.1.1.11)

Going back to the line I posted before:
Code: [Select]
DMG-CVJ.gbs::GBS,6,Revenge (Stage 4 BGM),33,28,10,

As already established, the four trailing numbers are initial loop (including intro) length, additional loop length, fade length, number of loops desired.
I probably mis-communicated something, but the initial loop plus intro for this song is ~33, with the ~28 being the second loop achieved if loops are set to 2 (or not specified in NEZPlug).

foo_gep at first seems to be correctly reading everything, showing a length of 1:11 like Winamp+NEZPlug does when I have:
Code: [Select]
DMG-CVJ.gbs::GBS,6,Revenge (Stage 4 BGM),33,28,10,2

However, while Winamp plays both the initial intro+loop, second loop and fade, Foobar only plays the first loop (33), then does the 10 second fade, despite showing half the song still to go. After it finishes fading it jumps to the next song in the playlist, even though it shouldn't have finished the song it was playing.
Foobar will adjust the supposed playing time based on the number of loops specified, but it always fades out after the initial intro+loop length and jumps to the next song after the fade.

I may be overlooking something already discussed, but I think there is still an error somewhere.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-02-24 21:36:04
Both problems should be fixed now.
Title: Game Emu Player (foo_gep) by kode54
Post by: Moguta on 2012-04-28 03:37:02
Regarding the SPC option "Remove surround effect", is that an effect native to SNES SPC processing or is it an effect that GEP adds?

Awesome work, BTW.  Foobar converts all my VGM to portable formats beautifully. 
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-04-28 04:38:09
It is an effect that GEP adds, similar to the other interpolation methods.
Title: Game Emu Player (foo_gep) by kode54
Post by: bennetng on 2012-05-05 19:16:00
Does anyone notice that when playing HES files, left and right channels are swapped? I noticed that when I play my favorite R-TYPE music.
I have foobar2000 0.9.5.1 + gep 1.5 and foobar2000 1.1.7 + gep 1.123, the one for 0.9.5.1 plays the files correctly.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-05-06 00:25:00
Fixed that now.
Title: Game Emu Player (foo_gep) by kode54
Post by: bennetng on 2012-05-06 20:03:55
Thanks for the update!
Title: Game Emu Player (foo_gep) by kode54
Post by: jaja2939 on 2012-05-12 11:44:44
Does Anyone notice that when playing the Magical Chase GB,Melody isn't Working Like NEZ I Have Foobar2000 1.1.1 and The GEP 1.124 play the file correctly
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-05-12 17:13:45
Um, what? So you're saying the latest version of foo_gep (that is, 1.124) works properly with foobar2000 1.1.1? Well, that's not my problem.
Title: Game Emu Player (foo_gep) by kode54
Post by: Kilu on 2012-05-16 00:20:07
Hi.

I'm not sure when this changed, but I noticed today that some nsf music has a really poppy drum on them (Batman, TMNT2: Arcade Game).
I googled around and found out that it has something to do with "$4011 register" or something like that. Any chance you might implement an option to disable that? I think NSFPlay and NotSoFatSo both have it as well.


Still love the plugin though.
Title: Game Emu Player (foo_gep) by kode54
Post by: Kilu on 2012-06-16 01:57:36
Hi.

I'm not sure when this changed, but I noticed today that some nsf music has a really poppy drum on them (Batman, TMNT2: Arcade Game).
I googled around and found out that it has something to do with "$4011 register" or something like that. Any chance you might implement an option to disable that? I think NSFPlay and NotSoFatSo both have it as well.


Still love the plugin though.

Any chance for this?
I've been using the standalone NSFplay in the meantime, but I miss my NSFe playlists and times.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-06-16 04:34:40
I could do that, but there may be rips that may actually use it properly. Of course, for it to even be useful from a NSF file, the NSF has to employ hacks from either its init or play routines to never return, so it can execute cycle timed PCM playback code.
Title: Game Emu Player (foo_gep) by kode54
Post by: Kilu on 2012-06-16 16:09:12
Wouldn't a toggle make sense then? If there are rips out there that need it, it shouldn't be too hard for a user to turn it back on (or leave it always on if they want). Is it possible to use custom keyboard shortcuts with components, that would be a fast way to toggle it. Plop it in the GEP Control window?

I obviously have no idea what would actually be the best approach, all I know is that for me it makes some full soundtracks completely unlistenable.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-06-17 00:30:27
I made it a configuration option, default enabled. There's probably not any NSF files that even use that register properly. Even, for instance, if there were an NSF of the Battletoads PCM sounds, they would need to employ hacks to never return from either one of the play or init functions, to facilitate cycle timed code that runs throughout sound generation, instead of just 60 times per second.
Title: Game Emu Player (foo_gep) by kode54
Post by: Kilu on 2012-06-17 22:44:22
Thanks man, everything sounds great again.
Title: Game Emu Player (foo_gep) by kode54
Post by: Kilu on 2012-06-18 03:35:55
Hate to bug you again already, but I noticed couple of things that may or may not worth a mention.

Firstly, it doesn't seem like the NSFe playlist option works. Regardless of the checkbox, the playlists seem to be always ignored. The playlist shows up in the playlist editor just fine, but doesn't seem to be used when the file is loaded.

Another thing which I found a little strange is that if the playback override is unchecked from GEP control, a lot of tracks in this Kirby's Adventure NSFe (http://slickproductions.org/nsfe/KirbyAdventure.rar) start with a pop (Green Greens, Boss, The Moon, Nightmare etc).
If I check playback override, but leave channels and tempo to their defaults, the starting pop goes away from every song.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-06-18 04:12:03
NSFE playlists only affect which subsong tracks appear when you first add the NSFE to a playlist. It doesn't control the order they appear in, as they tend to get sorted by the resulting subsong numbers by the player itself. Doing it any other way would fix the playlist orders, but would result in invalid subsongs in a playlist if you ever toggle the option, as I have no way to force playlists to replace the entire batch of tracks added by the NSFE with the newly modified list of tracks.

As for GEP control adding or removing a pop sound, besides allowing for channel muting, it also disables silence detection, which normally removes any leading silence from a track, and also ends playback if so many seconds worth of silence are detected.
Title: Game Emu Player (foo_gep) by kode54
Post by: Kilu on 2012-06-18 20:38:00
Alright, that makes sense.
Title: Game Emu Player (foo_gep) by kode54
Post by: zinob on 2012-07-05 22:34:21
I just re-installed foobar 2000 to listen to some old music but it does not quite sound like i remembered it. I managed to find an old MP3 from 2006-ish of two of the tunes and upon listening to them both i DO find that the older version has more headroom and "bounce". So i did a quick rip of the output to mp3 to ask, is it just me or has something changed drastically to make the sound more flat? I haven't played the game in 15 years or so and that TV had downright horrible speakers (and i lost the cartridge) , so i wont even pretend that i can say which is the most accurate.
These links will be availible for a month or so STRICTLY FOR COMPARSION OF AUDIO QUALLITY, they will then be deleted, please dont murder me copyright holders!
http://zxz.se/q/Fora/Seiken%20Densetsu%202...Taught%20Me.mp3 (http://zxz.se/q/Fora/Seiken%20Densetsu%202%20-%20What%20the%20Forest%20Taught%20Me.mp3)
http://zxz.se/q/Fora/NEW.%20Hiroki%20Kikut...Taught%20Me.mp3 (http://zxz.se/q/Fora/NEW.%20Hiroki%20Kikuta%20-%20What%20the%20Forest%20Taught%20Me.mp3)

http://zxz.se/q/Fora/NEW.%20Hiroki%20Kikut...%20Together.mp3 (http://zxz.se/q/Fora/NEW.%20Hiroki%20Kikuta%20-%20Always%20Together.mp3)
http://zxz.se/q/Fora/Seiken%20Densetsu%202...%20Together.mp3 (http://zxz.se/q/Fora/Seiken%20Densetsu%202%20-%20Always%20Together.mp3)

Didn't GEP use some SPC playback called NoEcho or something like that waaaay back?
Title: Game Emu Player (foo_gep) by kode54
Post by: ExUser on 2012-07-06 01:00:35
The ones you prefer are both significantly (7dB and 3dB, respectively, for each pair) louder than the ones you don't.

However, after adjusting for that, I can ABX a difference, and I agree, I prefer the old version. I hear more reverb and more top-end.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-07-06 05:02:08
foo_gep never produced a signal that loud, or at that frequency. Are you sure you didn't use foo_snesapu or something similar to that?
Title: Game Emu Player (foo_gep) by kode54
Post by: zinob on 2012-07-06 09:39:44
foo_gep never produced a signal that loud, or at that frequency. Are you sure you didn't use foo_snesapu or something similar to that?


Sadly I must admit that i am not sure which player was used, i think it was foo2k but since I am pretty sure the spc engine inside the plugin was called NoEcho i conclude that my memory is probably failing me. The harddrive i used back then and the backup both failed shortly after one another (the backup was one of the venerable Seagate 7200.11, Google it...) so i can not check. I thank you for your time though and for a very handy plugin.
Title: Game Emu Player (foo_gep) by kode54
Post by: reinhart on 2012-07-10 04:27:56
Hello, I tried to play Master System VGM file (FM version, not PSG). But it failed, it just produce strange sound.
Title: Game Emu Player (foo_gep) by kode54
Post by: reinhart on 2012-08-02 03:13:48
Hello, I tried to play Master System VGM file (FM version, not PSG). But it failed, it just produce strange sound.


the example: http://www.smspower.org/Music/AfterBurner-SMS-FM (http://www.smspower.org/Music/AfterBurner-SMS-FM)
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-02 06:47:44
Yeah, wow, that was totally broken. Fixed by the application of a single memset. Enjoy.
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2012-08-06 05:05:39
Yeah, wow, that was totally broken. Fixed by the application of a single memset. Enjoy.


Eyy Kode54  TY so much for your work, updates, bug fixing
I am able to Enjoy the Video Game Music I love so much  ;;^_^;;
Title: Game Emu Player (foo_gep) by kode54
Post by: thals1992 on 2012-08-10 23:49:22
The most recent update for foo_gep adding support for the vgm v1.61? spec and the RF5C164 chip from the Sega CD has update finally gave me ability to ditch Winamp/in_vgm.

I hate to make a request and to repert a new issue, but I would think I wouldn't need to see updates for this plugin if it added support for the Sega PWM (from the 32X). Afaik all it was used as a percussion channel.

The new issue I have found I don't know how to describe, but the dump of the Sega CD BIOS from Project 2612, has numerous audio glitches. I'll update my post in a bit when I can describe the issues better.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-11 01:23:36
It does support the PWM, but only through the PWM register. Compacted PWM VGMs don't actually use PWM emulation. Instead, they use a high level DAC control interface that supports writing buffered commands to many of the supported chip types.

Fixed the BIOS glitch and also implemented DAC streaming control support for those PWM rips.
Title: Game Emu Player (foo_gep) by kode54
Post by: thals1992 on 2012-08-11 03:02:19
It does support the PWM, but only through the PWM register. Compacted PWM VGMs don't actually use PWM emulation. Instead, they use a high level DAC control interface that supports writing buffered commands to many of the supported chip types.

Oh, I was under the impression that it was a direct/raw instruction format. I was thinking that, because the level of portablility of the format according to sms power, as well as the krizz cart being able to play vgm tunes. But, I haven't studied programming enough (Reading and Writing are two different things.)

Edit: Just read the specification....
Quote
VGM (Video Game Music) is a sample-accurate sound logging format for the Sega
Master System, the Sega Game Gear and possibly many other machines (e.g. Sega
Genesis).
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-11 06:06:51
It does use accurate register logging. Only, for the PWM in those dumps, it banks up the streams of PWM register writes into timed streams, so it can repeat them easily, to make the files more compressible. Similar to the previous extension to allow banking up YM2612 PCM writes to allow for easier compression.

Anyway, enjoy.
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2012-08-11 08:06:26
It does use accurate register logging. Only, for the PWM in those dumps, it banks up the streams of PWM register writes into timed streams, so it can repeat them easily, to make the files more compressible. Similar to the previous extension to allow banking up YM2612 PCM writes to allow for easier compression.

Anyway, enjoy.


Sweet Updates

ie SNES's spc format all files are a mear 64KB loi
Title: Game Emu Player (foo_gep) by kode54
Post by: thals1992 on 2012-08-11 14:02:53
Hate to bug you again (no pun intended), but playing S&K3 or just Sonic3's Title crashes fb2k. the sk title plays a half a sec audio then crashes, while the s3 title gets nothing out. Do you need the dump file from fb2k as well?

Btw, though the last update also fixed the intro track to Knuckles Chaotix's Overture.

Thanks for the update!

P.S. Don't feel obliged to jump on this one. Its not a track I listen to frequently.
Code: [Select]
Illegal operation:
Code: C0000005h, flags: 00000000h, address: 64279870h
Access violation, operation: read, address: 00000000h

Call path not available.

Code bytes (64279870h):
64279830h:  FF 8B C7 25 F0 00 00 00 83 E8 50 0F 84 38 02 00
64279840h:  00 83 E8 20 74 49 83 E8 10 74 1F C1 FF 04 0F B6
64279850h:  87 14 3B 2C 64 8D 44 03 FF 89 45 F8 C7 46 14 58
64279860h:  5C 2C 64 8B D8 E9 12 02 00 00 8B 96 90 14 00 00
64279870h:  0F B6 0A FF 75 FC 42 8B C6 89 96 90 14 00 00 E8
64279880h:  E6 F6 FF FF 83 E7 0F 01 7D FC E9 ED 01 00 00 8B
64279890h:  45 FC 83 E7 0F 8D 44 38 01 89 45 FC E9 DB 01 00
642798A0h:  00 0F B6 03 0F B6 4B 01 C1 E0 08 0B C1 0F B6 4B

Stack (0F65EFD0h):
0F65EFB0h:  00000000 FFFFFD34 000002E4 FFFFFD34
0F65EFC0h:  000002CC 00000019 00000000 64279168
0F65EFD0h:  069F5B08 069B4C18 000006DE 009B4CB8
0F65EFE0h:  05600000 00000002 FFFFFFFF 00001B70
0F65EFF0h:  069C652C 00000518 0F65F01C 64279C17
0F65F000h:  069B4C18 000005AF 069B4528 069B46E8
0F65F010h:  069B46C0 000006DE 000005AF 0F65F058
0F65F020h:  6427A570 0001CD90 069B4C30 069B46E8
0F65F030h:  64283BC2 069B4528 0001CD90 00000DBC
0F65F040h:  069F5B08 069FA044 000002F6 069B4CB8
0F65F050h:  069F9E30 0001CD90 0F65F074 64283CA6
0F65F060h:  069B4C30 069F3E50 069F9E30 069B45CC
0F65F070h:  00000400 0F65F0A8 6427A5C4 000002F6
0F65F080h:  069B4C30 069B45DC 6427D458 00000400
0F65F090h:  069F9E30 6427D5CB 069F9E30 01387038
0F65F0A0h:  00000400 069F9E30 0F65F0E8 6426C816
0F65F0B0h:  069F9E30 04E88F40 0F65F400 05600000
0F65F0C0h:  0F65F0E0 60982E41 04EC93E4 00000001
0F65F0D0h:  00000000 04E88F40 6426C7B5 0F65F660
0F65F0E0h:  642B501F FFFFFFFF 0F65F130 642657B8

Registers:
EAX: 00000000, EBX: 069C652C, ECX: 00000090, EDX: 00000000
ESI: 069B4C18, EDI: 00000081, EBP: 0F65EFF8, ESP: 0F65EFD0

Crash location:
Module: foo_gep
Offset: 19870h

Loaded modules:
foobar2000   loaded at 013A0000h - 01559000h
ntdll loaded at 77050000h - 771D0000h
kernel32 loaded at 74EF0000h - 75000000h
KERNELBASE   loaded at 75000000h - 75046000h
COMCTL32 loaded at 72F90000h - 7312E000h
msvcrt   loaded at 74940000h - 749EC000h
GDI32 loaded at 748B0000h - 74940000h
USER32   loaded at 75520000h - 75620000h
ADVAPI32 loaded at 753C0000h - 75460000h
sechost   loaded at 75500000h - 75519000h
RPCRT4   loaded at 74DF0000h - 74EE0000h
SspiCli   loaded at 746B0000h - 74710000h
CRYPTBASE loaded at 746A0000h - 746AC000h
LPK   loaded at 75320000h - 7532A000h
USP10 loaded at 74A20000h - 74ABD000h
SHLWAPI   loaded at 75170000h - 751C7000h
DSOUND   loaded at 65F70000h - 65FE2000h
ole32 loaded at 74C90000h - 74DEC000h
WINMM loaded at 73A80000h - 73AB2000h
POWRPROF loaded at 67D40000h - 67D65000h
SETUPAPI loaded at 74AC0000h - 74C5D000h
CFGMGR32 loaded at 74880000h - 748A7000h
OLEAUT32 loaded at 75870000h - 758FF000h
DEVOBJ   loaded at 74C60000h - 74C72000h
UxTheme   loaded at 732F0000h - 73370000h
SHELL32   loaded at 75AC0000h - 7670A000h
zlib1 loaded at 5A4C0000h - 5A4D4000h
shared   loaded at 73CC0000h - 73CEB000h
imagehlp loaded at 751D0000h - 751FA000h
dbghelp   loaded at 68490000h - 6857B000h
COMDLG32 loaded at 75340000h - 753BB000h
gdiplus   loaded at 677A0000h - 67930000h
Secur32   loaded at 73C60000h - 73C68000h
CRYPT32   loaded at 75200000h - 7531E000h
MSASN1   loaded at 77020000h - 7702C000h
WINHTTP   loaded at 743C0000h - 74418000h
webio loaded at 74260000h - 742AF000h
IMM32 loaded at 75810000h - 75870000h
MSCTF loaded at 756B0000h - 7577C000h
dwmapi   loaded at 73210000h - 73223000h
CLBCatQ   loaded at 75620000h - 756A3000h
BtMmHook loaded at 10000000h - 10038000h
PSAPI loaded at 74C80000h - 74C85000h
uiautomationcore loaded at 67E80000h - 67F0C000h
OLEACC   loaded at 72D60000h - 72D9C000h
foo_vst   loaded at 6F290000h - 6F2E4000h
foo_podcatcher   loaded at 011C0000h - 01296000h
foo_vis_shpeck   loaded at 6F240000h - 6F281000h
MSIMG32   loaded at 67D30000h - 67D35000h
foo_dsp_effect   loaded at 003E0000h - 00417000h
foo_uie_vis_channel_spectrum loaded at 00E90000h - 00ECD000h
foo_r128norm loaded at 6F110000h - 6F136000h
foo_hdcd loaded at 6F0C0000h - 6F101000h
foo_adpcm loaded at 6F060000h - 6F0B5000h
foo_uie_esplaylist   loaded at 6CA60000h - 6CACA000h
foo_softplaylists loaded at 6C320000h - 6C388000h
foo_dsp_fsurround_beta   loaded at 03D40000h - 03E14000h
WINSPOOL loaded at 739D0000h - 73A21000h
foo_psf   loaded at 65850000h - 6591F000h
foo_input_vio2sf loaded at 010B0000h - 010EB000h
foo_input_ym loaded at 012A0000h - 012CA000h
foo_lnk   loaded at 73CA0000h - 73CBA000h
foo_gep   loaded at 64260000h - 6436C000h
foo_input_qsf loaded at 6C2D0000h - 6C31B000h
foo_uie_elplaylist   loaded at 69C20000h - 69C93000h
foo_dsp_std   loaded at 697D0000h - 69818000h
foo_infospect loaded at 03970000h - 039A7000h
foo_input_std loaded at 64100000h - 6425F000h
foo_input_dts loaded at 657E0000h - 65843000h
foo_ui_columns   loaded at 04680000h - 0480B000h
foo_out_asio loaded at 039B0000h - 039E2000h
foo_ui_std   loaded at 64010000h - 640F5000h
foo_playcount loaded at 66D10000h - 66D4E000h
foo_input_adplug loaded at 61F50000h - 61FD0000h
foo_rgscan   loaded at 61F00000h - 61F4B000h
foo_xm   loaded at 61EA0000h - 61EF4000h
WININET   loaded at 74710000h - 7482B000h
Normaliz loaded at 74EE0000h - 74EE3000h
iertutil loaded at 75900000h - 75AB8000h
urlmon   loaded at 75050000h - 75161000h
foo_input_vgmstream   loaded at 61E00000h - 61E99000h
libvorbis loaded at 65E40000h - 65E7E000h
libmpg123-0   loaded at 61DB0000h - 61DF1000h
libg7221_decode   loaded at 6D940000h - 6D965000h
foo_input_tfmx   loaded at 657B0000h - 657D7000h
foo_input_dvda   loaded at 61D50000h - 61DAB000h
foo_converter loaded at 61CD0000h - 61D4C000h
foo_joystick_control loaded at 03E20000h - 03E76000h
DINPUT8   loaded at 63FE0000h - 64010000h
foo_out_wasapi   loaded at 03C70000h - 03C96000h
foo_uie_panel_splitter   loaded at 04000000h - 04059000h
foo_input_viogsf loaded at 60CC0000h - 60CF4000h
foo_dop   loaded at 04FE0000h - 0519F000h
WS2_32   loaded at 754C0000h - 754F5000h
NSI   loaded at 75330000h - 75336000h
QUARTZ   loaded at 60B40000h - 60CB7000h
foo_unpack_unix   loaded at 60B10000h - 60B31000h
foo_playlisthistory   loaded at 03D00000h - 03D2F000h
foo_wave_seekbar loaded at 60980000h - 60B0C000h
foo_unpack_7z loaded at 60950000h - 6097D000h
foo_uie_wsh_panel_mod loaded at 608A0000h - 6094C000h
foo_dsp_dolbyhp   loaded at 60870000h - 60894000h
VERSION   loaded at 73AF0000h - 73AF9000h
foo_dsp_tube loaded at 040D0000h - 040F6000h
foo_midi loaded at 60790000h - 6086F000h
BASS loaded at 11000000h - 11063000h
MSACM32   loaded at 66E00000h - 66E14000h
BASSMIDI loaded at 10600000h - 1061B000h
foo_channel_mixer loaded at 60750000h - 6078F000h
foo_dumb loaded at 5F900000h - 5F96F000h
foo_albumlist loaded at 5CC60000h - 5CCBC000h
foo_benchmark loaded at 04100000h - 0412D000h
foo_cdda loaded at 60700000h - 6074E000h
foo_freedb2   loaded at 5E320000h - 5E360000h
foo_vorbisstream loaded at 5C9B0000h - 5CB80000h
foo_fileops   loaded at 5CC10000h - 5CC57000h
foo_unpack   loaded at 5C980000h - 5C9AF000h
foo_dsp_crossfeed loaded at 5C950000h - 5C974000h
foo_uie_biography loaded at 5C8F0000h - 5C946000h
foo_upnp loaded at 5AFD0000h - 5B188000h
IPHLPAPI loaded at 743A0000h - 743BC000h
WINNSI   loaded at 74340000h - 74347000h
foo_input_usf loaded at 5C870000h - 5C8EF000h
MSVCR90   loaded at 745A0000h - 74643000h
foo_uie_lyrics2   loaded at 04DA0000h - 04E16000h
foo_bluetooth_ctrl   loaded at 044C0000h - 044EA000h
foo_AdvancedControls loaded at 5C810000h - 5C864000h
foo_game loaded at 6C810000h - 6C842000h
MSVCP90   loaded at 6CB30000h - 6CBBE000h
foo_sid   loaded at 5C790000h - 5C80B000h
foo_dsp_prvb loaded at 04910000h - 0493B000h
MMDevApi loaded at 6B7C0000h - 6B7F9000h
PROPSYS   loaded at 6B6C0000h - 6B7B5000h
AUDIOSES loaded at 6B680000h - 6B6B6000h
frontend_direct2d loaded at 5AD90000h - 5ADE6000h
d2d1 loaded at 68250000h - 6830A000h
frontend_direct3d9   loaded at 5AD20000h - 5AD82000h
d3d9 loaded at 5A230000h - 5A3F3000h
d3d8thk   loaded at 72DC0000h - 72DC6000h
d3dx9_42 loaded at 5A040000h - 5A225000h
mswsock   loaded at 738B0000h - 738EC000h
wshtcpip loaded at 73850000h - 73855000h
dhcpcsvc loaded at 73920000h - 73932000h
HID   loaded at 72DB0000h - 72DB9000h
WINTRUST loaded at 749F0000h - 74A1D000h
WindowsCodecs loaded at 6C050000h - 6C14B000h
CRYPTSP   loaded at 73FD0000h - 73FE6000h
rsaenh   loaded at 74360000h - 7439B000h
RpcRtRemote   loaded at 74350000h - 7435E000h
msiltcfg loaded at 67E20000h - 67E27000h
msi   loaded at 67A40000h - 67C80000h
SXS   loaded at 67D70000h - 67DCF000h
avrt loaded at 67DF0000h - 67DF7000h

Stack dump analysis:
Address: 64279C17h (foo_gep+19C17h)
Address: 6427A570h (foo_gep+1A570h)
Address: 64283BC2h (foo_gep+23BC2h)
Address: 64283CA6h (foo_gep+23CA6h)
Address: 6427A5C4h (foo_gep+1A5C4h)
Address: 6427D458h (foo_gep+1D458h)
Address: 6427D5CBh (foo_gep+1D5CBh)
Address: 6426C816h (foo_gep+C816h)
Address: 60982E41h (foo_wave_seekbar+2E41h)
Address: 6426C7B5h (foo_gep+C7B5h)
Address: 642B501Fh (foo_gep+5501Fh), symbol: "foobar2000_get_interface" (+18FAFh)
Address: 642657B8h (foo_gep+57B8h)
Address: 609BDD2Dh (foo_wave_seekbar+3DD2Dh)
Address: 60AF0410h (foo_wave_seekbar+170410h), symbol: "g_gdi_entrypoint" (+5A8B0h)
Address: 60AC2B08h (foo_wave_seekbar+142B08h), symbol: "g_gdi_entrypoint" (+2CFA8h)
Address: 60A844BCh (foo_wave_seekbar+1044BCh), symbol: "foobar2000_get_interface" (+64FCCh)
Address: 60AA1856h (foo_wave_seekbar+121856h), symbol: "g_gdi_entrypoint" (+BCF6h)
Address: 60A85234h (foo_wave_seekbar+105234h), symbol: "foobar2000_get_interface" (+65D44h)
Address: 60AC3A18h (foo_wave_seekbar+143A18h), symbol: "g_gdi_entrypoint" (+2DEB8h)
Address: 74F03EF7h (kernel32+13EF7h), symbol: "ReadFile" (+54h)
Address: 60AF1CB0h (foo_wave_seekbar+171CB0h), symbol: "g_gdi_entrypoint" (+5C150h)
Address: 60A33D40h (foo_wave_seekbar+B3D40h), symbol: "foobar2000_get_interface" (+14850h)
Address: 60A35A20h (foo_wave_seekbar+B5A20h), symbol: "foobar2000_get_interface" (+16530h)
Address: 60A3792Dh (foo_wave_seekbar+B792Dh), symbol: "foobar2000_get_interface" (+1843Dh)
Address: 60A4DE36h (foo_wave_seekbar+CDE36h), symbol: "foobar2000_get_interface" (+2E946h)
Address: 60A4E52Ch (foo_wave_seekbar+CE52Ch), symbol: "foobar2000_get_interface" (+2F03Ch)
Address: 60A50E7Eh (foo_wave_seekbar+D0E7Eh), symbol: "foobar2000_get_interface" (+3198Eh)
Address: 60AC07B8h (foo_wave_seekbar+1407B8h), symbol: "g_gdi_entrypoint" (+2AC58h)
Address: 60AF0410h (foo_wave_seekbar+170410h), symbol: "g_gdi_entrypoint" (+5A8B0h)
Address: 60AC2AFCh (foo_wave_seekbar+142AFCh), symbol: "g_gdi_entrypoint" (+2CF9Ch)
Address: 60AC2AFCh (foo_wave_seekbar+142AFCh), symbol: "g_gdi_entrypoint" (+2CF9Ch)
Address: 60AC2AFCh (foo_wave_seekbar+142AFCh), symbol: "g_gdi_entrypoint" (+2CF9Ch)
Address: 60AC04A8h (foo_wave_seekbar+1404A8h), symbol: "g_gdi_entrypoint" (+2A948h)
Address: 60AC04A8h (foo_wave_seekbar+1404A8h), symbol: "g_gdi_entrypoint" (+2A948h)
Address: 60AC04A8h (foo_wave_seekbar+1404A8h), symbol: "g_gdi_entrypoint" (+2A948h)
Address: 770C71D5h (ntdll+771D5h), symbol: "WinSqmSetIfMaxDWORD" (+31h)
Address: 77083CC3h (ntdll+33CC3h), symbol: "RtlImageNtHeader" (+B3Fh)
Address: 77083CEEh (ntdll+33CEEh), symbol: "RtlImageNtHeader" (+B6Ah)
Address: 00400017h (foo_dsp_effect+20017h), symbol: "foobar2000_get_interface" (+13BA7h)
Address: 60AC04D4h (foo_wave_seekbar+1404D4h), symbol: "g_gdi_entrypoint" (+2A974h)
Address: 60AC04D4h (foo_wave_seekbar+1404D4h), symbol: "g_gdi_entrypoint" (+2A974h)
Address: 60AC04D4h (foo_wave_seekbar+1404D4h), symbol: "g_gdi_entrypoint" (+2A974h)
Address: 60AF03D8h (foo_wave_seekbar+1703D8h), symbol: "g_gdi_entrypoint" (+5A878h)
Address: 60A864CCh (foo_wave_seekbar+1064CCh), symbol: "foobar2000_get_interface" (+66FDCh)
Address: 60AF03ACh (foo_wave_seekbar+1703ACh), symbol: "g_gdi_entrypoint" (+5A84Ch)
Address: 60AF0410h (foo_wave_seekbar+170410h), symbol: "g_gdi_entrypoint" (+5A8B0h)
Address: 6098A9BBh (foo_wave_seekbar+A9BBh)
Address: 60AA0C7Dh (foo_wave_seekbar+120C7Dh), symbol: "g_gdi_entrypoint" (+B11Dh)
Address: 609B05F6h (foo_wave_seekbar+305F6h)
Address: 60AC0730h (foo_wave_seekbar+140730h), symbol: "g_gdi_entrypoint" (+2ABD0h)
Address: 60AC0730h (foo_wave_seekbar+140730h), symbol: "g_gdi_entrypoint" (+2ABD0h)
Address: 60AA5BD3h (foo_wave_seekbar+125BD3h), symbol: "g_gdi_entrypoint" (+10073h)
Address: 609B6FD7h (foo_wave_seekbar+36FD7h)
Address: 60AA5BEAh (foo_wave_seekbar+125BEAh), symbol: "g_gdi_entrypoint" (+1008Ah)
Address: 609B412Ah (foo_wave_seekbar+3412Ah)
Address: 60AF03ACh (foo_wave_seekbar+1703ACh), symbol: "g_gdi_entrypoint" (+5A84Ch)
Address: 60AF03ACh (foo_wave_seekbar+1703ACh), symbol: "g_gdi_entrypoint" (+5A84Ch)
Address: 60AA5C1Ah (foo_wave_seekbar+125C1Ah), symbol: "g_gdi_entrypoint" (+100BAh)
Address: 609B9639h (foo_wave_seekbar+39639h)
Address: 60AA4A78h (foo_wave_seekbar+124A78h), symbol: "g_gdi_entrypoint" (+EF18h)
Address: 609B97A0h (foo_wave_seekbar+397A0h)
Address: 60AF03ACh (foo_wave_seekbar+1703ACh), symbol: "g_gdi_entrypoint" (+5A84Ch)
Address: 60AA4E08h (foo_wave_seekbar+124E08h), symbol: "g_gdi_entrypoint" (+F2A8h)
Address: 609B03F8h (foo_wave_seekbar+303F8h)
Address: 60AF09ACh (foo_wave_seekbar+1709ACh), symbol: "g_gdi_entrypoint" (+5AE4Ch)
Address: 770C71D5h (ntdll+771D5h), symbol: "WinSqmSetIfMaxDWORD" (+31h)
Address: 7708E901h (ntdll+3E901h), symbol: "RtlFindClearBits" (+D2h)
Address: 77087F8Fh (ntdll+37F8Fh), symbol: "RtlReleasePebLock" (+11h)
Address: 77152100h (ntdll+102100h), symbol: "NlsAnsiCodePage" (+20F0h)
Address: 60AC060Ch (foo_wave_seekbar+14060Ch), symbol: "g_gdi_entrypoint" (+2AAACh)
Address: 7500BA00h (KERNELBASE+BA00h), symbol: "CloseHandle" (+3Bh)
Address: 60AA51E8h (foo_wave_seekbar+1251E8h), symbol: "g_gdi_entrypoint" (+F688h)
Address: 609B02E3h (foo_wave_seekbar+302E3h)
Address: 60AA2CF8h (foo_wave_seekbar+122CF8h), symbol: "g_gdi_entrypoint" (+D198h)
Address: 609E8A58h (foo_wave_seekbar+68A58h)
Address: 7707E023h (ntdll+2E023h), symbol: "RtlFreeHeap" (+7Eh)
Address: 74F014DDh (kernel32+114DDh), symbol: "HeapFree" (+14h)
Address: 609F2DABh (foo_wave_seekbar+72DABh)
Address: 60A9E028h (foo_wave_seekbar+11E028h), symbol: "g_gdi_entrypoint" (+84C8h)
Address: 609EA8CAh (foo_wave_seekbar+6A8CAh)
Address: 609F35D0h (foo_wave_seekbar+735D0h)
Address: 609EA954h (foo_wave_seekbar+6A954h)
Address: 74F0339Ah (kernel32+1339Ah), symbol: "BaseThreadInitThunk" (+12h)
Address: 77089EF2h (ntdll+39EF2h), symbol: "RtlInitializeExceptionChain" (+63h)
Address: 74F276F7h (kernel32+376F7h), symbol: "UnhandledExceptionFilter" (+0h)
Address: 74F276F7h (kernel32+376F7h), symbol: "UnhandledExceptionFilter" (+0h)
Address: 770C71D5h (ntdll+771D5h), symbol: "WinSqmSetIfMaxDWORD" (+31h)
Address: 77089EC5h (ntdll+39EC5h), symbol: "RtlInitializeExceptionChain" (+36h)
Address: 609EA8F0h (foo_wave_seekbar+6A8F0h)
Address: 609EA8F0h (foo_wave_seekbar+6A8F0h)

Environment:
App: foobar2000 v1.1.13
UI: Default User Interface 0.9.5

Components:
Core (2012-06-07 18:37:46 UTC)
foobar2000 core 1.1.13
foo_adpcm.dll (2012-02-22 19:13:48 UTC)
kode's ADPCM decoders 1.10
foo_AdvancedControls.dll (2011-11-18 15:42:28 UTC)
Foobar2000 Advanced Controls 0.6.7.4
foo_albumlist.dll (2012-06-07 18:36:18 UTC)
Album List 4.5
foo_benchmark.dll (2011-05-01 03:24:04 UTC)
Decoding Speed Test 1.1
foo_bluetooth_ctrl.dll (2012-04-03 02:53:54 UTC)
Bluetooth Remote Control 1.1
foo_cdda.dll (2012-06-07 18:36:12 UTC)
CD Audio Decoder 3.0
foo_channel_mixer.dll (2011-06-01 17:18:00 UTC)
Channel Mixer 0.9.6.7
foo_converter.dll (2012-06-07 18:35:52 UTC)
Converter 1.5
foo_dop.dll (2010-11-24 18:50:46 UTC)
iPod manager 0.6.8.6
foo_dsp_crossfeed.dll (2012-04-03 02:41:23 UTC)
Crossfeed 1.1.1
foo_dsp_dolbyhp.dll (2011-05-01 03:22:42 UTC)
Dolby Headphone Wrapper 1.4.1
foo_dsp_effect.dll (2012-06-28 13:30:29 UTC)
Effect DSP 0.11
foo_dsp_fsurround_beta.dll (2012-04-03 02:33:51 UTC)
FreeSurround 0.8.1
foo_dsp_prvb.dll (2011-05-01 03:22:24 UTC)
Programmable reverb DSP 1.2
foo_dsp_std.dll (2012-06-07 18:36:20 UTC)
Standard DSP Array 1.0
foo_dsp_tube.dll (2007-02-06 23:17:55 UTC)
Tube Sound 0.8
foo_dumb.dll (2012-08-10 20:36:04 UTC)
DUMB module decoder 0.9.9.56
foo_fileops.dll (2012-06-07 18:35:14 UTC)
File Operations 2.1.3
foo_freedb2.dll (2012-06-07 18:36:30 UTC)
freedb Tagger 0.6.4
foo_game.dll (2011-05-11 01:35:24 UTC)
Game Audio Decoder 1.10
foo_gep.dll (2012-08-11 12:49:54 UTC)
Game Emu Player 1.129
foo_hdcd.dll (2012-07-20 01:50:53 UTC)
HDCD decoder 1.15
foo_infospect.dll (2011-05-01 03:24:22 UTC)
Infospect 1.0.3
foo_input_adplug.dll (2012-02-22 19:13:47 UTC)
AdPlug 1.40
foo_input_dts.dll (2011-05-01 03:21:49 UTC)
DTS decoder 0.3.0
foo_input_dvda.dll (2012-04-03 01:21:33 UTC)
DVD-Audio Decoder and Watermark Detector 0.4.11
foo_input_qsf.dll (2012-02-22 19:13:48 UTC)
Highly Quixotic 2.0.20
foo_input_std.dll (2012-06-07 18:35:58 UTC)
Standard Input Array 1.0
foo_input_tfmx.dll (2012-02-22 19:13:48 UTC)
TFMX decoder 0.9
foo_input_usf.dll (2012-02-22 19:13:48 UTC)
LazyUSF 2.1 (Build Jun 26 2011)
foo_input_vgmstream.dll (2012-08-10 20:36:06 UTC)
vgmstream plugin r982
foo_input_vio2sf.dll (2010-12-18 23:13:13 UTC)
2SF decoder / DeSmuME v0.8.0 0.22
foo_input_viogsf.dll (2011-05-01 03:00:03 UTC)
GSF decoder / VBA-M r956 0.08
foo_input_ym.dll (2011-05-01 03:10:27 UTC)
YM Decoder 0.3
foo_joystick_control.dll (2012-04-03 23:03:32 UTC)
Joystick Control 0.2.0 beta-1
foo_lnk.dll (2010-12-18 23:25:24 UTC)
Shell Link Resolver 1.3.1
foo_midi.dll (2012-08-10 20:36:06 UTC)
MIDI synthesizer host 1.167
foo_out_asio.dll (2012-06-28 13:30:29 UTC)
ASIO support 2.1.2
foo_out_wasapi.dll (2011-05-01 03:07:42 UTC)
WASAPI output support 2.1
foo_playcount.dll (2012-02-22 19:13:48 UTC)
Playback Statistics 3.0.2
foo_playlisthistory.dll (2012-02-22 19:13:48 UTC)
Playlist History 0.1.6
foo_podcatcher.dll (2011-05-01 03:25:42 UTC)
Podcatcher 0.2.5 (beta, Mar 12 2011)
foo_psf.dll (2012-02-22 19:13:48 UTC)
Highly Experimental 2.0.26
foo_r128norm.dll (2012-02-22 19:13:48 UTC)
EBU R128 Normalizer 1.11
foo_rgscan.dll (2012-06-07 18:35:56 UTC)
ReplayGain Scanner 2.1.2
foo_sid.dll (2012-02-22 19:13:48 UTC)
sidplay2 1.27
foo_softplaylists.dll (2011-05-01 03:19:16 UTC)
Soft Playlists 2011-02-05
foo_ui_columns.dll (2010-03-20 23:43:13 UTC)
Columns UI 0.3.8.5
foo_ui_std.dll (2012-06-07 18:36:16 UTC)
Default User Interface 0.9.5
foo_uie_biography.dll (2010-04-30 15:49:24 UTC)
Biography View 0.4.2.0
foo_uie_elplaylist.dll (2012-04-03 23:10:16 UTC)
ELPlaylist 0.6.9.1.2(beta)
foo_uie_esplaylist.dll (2012-04-03 23:12:39 UTC)
EsPlaylist 0.1.3.9
foo_uie_lyrics2.dll (2009-12-22 17:12:56 UTC)
Lyric Show Panel 2 0.4.4
foo_uie_panel_splitter.dll (2009-12-09 16:16:12 UTC)
Panel Stack Splitter 0.3.8.3(alpha)
foo_uie_vis_channel_spectrum.dll (2008-05-17 19:02:12 UTC)
Channel Spectrum panel 0.17.2
foo_uie_wsh_panel_mod.dll (2010-02-28 02:59:14 UTC)
WSH Panel Mod 1.3.2
foo_unpack.dll (2012-06-07 18:35:28 UTC)
ZIP/GZIP/RAR Reader 1.6
foo_unpack_7z.dll (2012-02-22 19:13:47 UTC)
7-Zip reader 1.8
foo_unpack_unix.dll (2012-02-22 19:13:49 UTC)
Unix archive reader 1.8
foo_upnp.dll (2012-06-28 13:30:30 UTC)
UPnP/DLNA Renderer, Server, Control Point 0.99.40
foo_vis_shpeck.dll (2012-04-03 23:02:52 UTC)
Shpeck - Winamp vis plugins wrapper 0.3.7
foo_vorbisstream.dll (2011-05-01 03:23:43 UTC)
Vorbis Streamer 1.1
foo_vst.dll (2011-05-01 05:34:43 UTC)
VST 2.4 adapter 0.9.0.3
foo_wave_seekbar.dll (2012-07-20 01:55:20 UTC)
Waveform seekbar 0.2.27
foo_xm.dll (2012-04-03 02:35:12 UTC)
XM Radio Online Player 1.3.0b2

Recent events:
foo_upnp: 20.20105: NPT_BsdSocketFd::WaitForCondition(688)/6856: FINER: waiting for condition (read write)
foo_upnp: 25.25087: NPT_BsdSocketFd::WaitForCondition(693)/2740: FINER: select returned 0
foo_upnp: 25.25088: NPT_BsdSocketFd::WaitForCondition(753)/2740: FINER: select result = -20014
foo_upnp: 25.25088: NPT_BsdTcpServerSocket::WaitForNewClient(1989)/2740: FINER: waiting until socket is readable or writeable
foo_upnp: 25.25088: NPT_BsdSocketFd::WaitForCondition(688)/2740: FINER: waiting for condition (read write)
foo_upnp: 25.25105: NPT_BsdSocketFd::WaitForCondition(693)/6856: FINER: select returned 0
foo_upnp: 25.25105: NPT_BsdSocketFd::WaitForCondition(753)/6856: FINER: select result = -20014
foo_upnp: 25.25105: NPT_BsdTcpServerSocket::WaitForNewClient(1989)/6856: FINER: waiting until socket is readable or writeable
foo_upnp: 25.25105: NPT_BsdSocketFd::WaitForCondition(688)/6856: FINER: waiting for condition (read write)
Opening track for playback: "C:\Users\Trevor\Music\Music\foobar2000\CHIPTUNES\GENESIS\sk3\01a Title Screen.vgm"


Machine specifications:
OS: Windows 6.1.7601 Service Pack 1 x64
CPU: AMD Turion™ X2 Dual-Core Mobile RM-72, features: 3DNow!ex MMX SSE SSE2 SSE3
Audio: Speakers (Conexant High Definition Audio); Speakers (PlayOn Virtual Audio Device)
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2012-08-11 15:26:51
I saw your post and tried out that track (LOL yes I have all the Sonic Tracks )
it crashed for em too... weird... it didn't do that before,

but I am running the latest Game Emu Player(v1.129)(DATED_08-11-2012)

like I search for updates to most things on a multi-daily basis   

Code: [Select]
Illegal operation:
Code: C0000005h, flags: 00000000h, address: 01549870h
Access violation, operation: read, address: 00000000h

Call path:
playback_process entry=>input/open=>input_decoder::initialize


Opening track for playback: "C:\JoeMusic\mSegaGenesisGYM\Sonic the Hedgehog 3 & Knuckles (1994)(Sonic Team, Sega Technical Institute)(Sega)\01 Title Screen.vgm"


Machine specifications:
OS: Windows 5.1.2600 Service Pack 3 x86
CPU: Intel® Pentium® D CPU 3.40GHz, features: MMX SSE SSE2 SSE3
Audio: SoundMAX HD Audio O


Whoo

I tried a hand full of other Genesis music files all crashed Foobar2000
I sent in via the crash reporter ( Gota love a Debugger )



some started playing fine  more or less then Foobar200 crashed
seems to playing ok...played fine:
Code: [Select]
Opening track for playback: 
".\Wonder Boy in Monster World [Wonder Boy V - Monster World III] (1991)(Westone)(Sega)\23 Village Theme 3.vgm"
".\Wonder Boy in Monster World [Wonder Boy V - Monster World III] (1991)(Westone)(Sega)\23 Village Theme 3.vgm"
".\Wonder Boy in Monster World [Wonder Boy V - Monster World III] (1991)(Westone)(Sega)\03 Islands.vgm"
".\Wonder Boy in Monster World [Wonder Boy V - Monster World III] (1991)(Westone)(Sega)\08 Ocarina.vgm"
".\Wonder Boy in Monster World [Wonder Boy V - Monster World III] (1991)(Westone)(Sega)\09 Ocarina Melody 1.vgm"
".\Wonder Boy in Monster World [Wonder Boy V - Monster World III] (1991)(Westone)(Sega)\10 Ocarina Melody 2.vgm"
".\Wonder Boy in Monster World [Wonder Boy V - Monster World III] (1991)(Westone)(Sega)\10 Ocarina Melody 2.vgm"
".\Wonder Boy in Monster World [Wonder Boy V - Monster World III] (1991)(Westone)(Sega)\11 Ocarina Melody 3.vgm"
".\Wonder Boy in Monster World [Wonder Boy V - Monster World III] (1991)(Westone)(Sega)\17 Woods 1.vgm"
".\Wonder Boy in Monster World [Wonder Boy V - Monster World III] (1991)(Westone)(Sega)\15 Cave 2.vgm"
".\Wonder Boy in Monster World [Wonder Boy V - Monster World III] (1991)(Westone)(Sega)\26 Sky.vgm"
".\Wonder Boy in Monster World [Wonder Boy V - Monster World III] (1991)(Westone)(Sega)\27 Sky Castle.vgm"
".\Wonder Boy in Monster World [Wonder Boy V - Monster World III] (1991)(Westone)(Sega)\15 Cave 2.vgm"
".\Wonder Boy in Monster World [Wonder Boy V - Monster World III] (1991)(Westone)(Sega)\26 Sky.vgm"
".\Wonder Boy in Monster World [Wonder Boy V - Monster World III] (1991)(Westone)(Sega)\27 Sky Castle.vgm"



crashed on load:
Opening track for playback: ".\Ys III - Wanderers From Ys [Wanderers from Ys] (1991)(Falcom)(Riot)(Riot)\06 Prologue to the Adventure.vgm"
most of them are crashing



These GYM's played fine
Code: [Select]
Opening track for playback: 
".\Shining Force 2_GYM\SFORCE2_003 - Town.gym"
".\Shining Force 2_GYM\SFORCE2_018 - Field Theme 2.gym"
".\Shining Force 2_GYM\SFORCE2_007 - Dungeon Theme.gym"
".\Shining Force 2_GYM\SFORCE2_010 - Field Theme 1.gym"
".\Shining Force 2_GYM\SFORCE2_017 - Headquarters.gym"
".\Shining Force 2_GYM\SFORCE2_018 - Field Theme 2.gym"
".\Shining Force 2_GYM\SFORCE2_027 - Goddess Mitula.gym"
".\Shining Force 2_GYM\SFORCE2_029 - Awaken the Princess.gym"
".\Shining Force 2_GYM\SFORCE2_013 - Evil Brews.gym"
".\Shining Force 2_GYM\SFORCE2_002 - Opening Title.gym"
".\Shining Force 2_GYM\SFORCE2_003 - Town.gym"
Title: Game Emu Player (foo_gep) by kode54
Post by: thals1992 on 2012-08-11 18:00:16
Yeah, I noticed that. I don't know whats the deal, but it seems to only to affect the vgm files. About half of the tracks seemed to just crash, including the Zero Wing All Your Base intro. With the last update 1.128, I also noticed that the Sonic CD Beta Loops (I don't know why everything is tending to revolve around Sonic or even intros in general) that the reported times were wrong.

I'll look through the source and try to find somthing.
Title: Game Emu Player (foo_gep) by kode54
Post by: blindpainkiller on 2012-08-11 20:54:34
While the topic is on VGM, I wonder if there has been any progress on the bug that some notes drop out in some VGM files, e.g. "Invincibility" and "Game Over" in Sonic The Hedgehog and also at the beginning of "Fin To Feather" from Ecco 2? I haven't found this bug in any other player.
Thanks for an otherwise great plugin.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-12 03:39:53
I fixed the crash bug, sorry about that.

I don't know about the note dropping issue, probably a bug with the YM2612 emulator, you should report it to the MAME team or Genesis Plus GX developer, as I lifted the code from them.
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2012-08-12 05:02:07
I fixed the crash bug, sorry about that.

I don't know about the note dropping issue, probably a bug with the YM2612 emulator, you should report it to the MAME team or Genesis Plus GX developer, as I lifted the code from them.

Sweet Thx for save Kode54.

no worries Glad a I and others could help a bit (bug reporting an all)

Title: Game Emu Player (foo_gep) by kode54
Post by: blindpainkiller on 2012-08-12 10:19:28
I fixed the crash bug, sorry about that.

I don't know about the note dropping issue, probably a bug with the YM2612 emulator, you should report it to the MAME team or Genesis Plus GX developer, as I lifted the code from them.


Thanks for the quick fix to the crashing issue.
I don't think the note-dropping issue is in the core, because there are other players, like this one (http://vgm.mdscene.net/forum/viewtopic.php?t=112) that (to my knowledge) uses the same core and do not have this problem. It might of course be that they're using another version or that they have fixed the problem themselves.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-13 01:54:55
I discovered the source of the problem. The MAME core needs a 0 length update call before each register write, or else notes will randomly be dropped in random VGM logs. Right, that's all sorted now.
Title: Game Emu Player (foo_gep) by kode54
Post by: reinhart on 2012-08-13 02:40:34
I fixed the crash bug, sorry about that.

I don't know about the note dropping issue, probably a bug with the YM2612 emulator, you should report it to the MAME team or Genesis Plus GX developer, as I lifted the code from them.


Thanks for the quick fix to the crashing issue.
I don't think the note-dropping issue is in the core, because there are other players, like this one (http://vgm.mdscene.net/forum/viewtopic.php?t=112) that (to my knowledge) uses the same core and do not have this problem. It might of course be that they're using another version or that they have fixed the problem themselves.



I notice this note-dropping issue too, you can hear easily in "Game Over" Sonic The Hedgehog at position 0:06 - 0:07

Edit: Ah.... thanks .... fixed now  ... 
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2012-08-13 09:42:31
I discovered the source of the problem. The MAME core needs a 0 length update call before each register write, or else notes will randomly be dropped in random VGM logs. Right, that's all sorted now.


Sweet so I'm upgrading from v1.132 to -->> v1.135, done
I don't I can request the change log for versions   
v1.133,
v1.134
at all thx
I love change logs
I love to see how soo much better something is getting  TY so Much  Kode54



ps:

I don't suppose you know of a good
freedb.freedb.org
like server for getting tagging(s) for all this Awesome Video Game Music ;^_^;
SNES, Genesis, etc (ie anything that doesn't have

thx
Title: Game Emu Player (foo_gep) by kode54
Post by: blindpainkiller on 2012-08-13 15:12:25
I discovered the source of the problem. The MAME core needs a 0 length update call before each register write, or else notes will randomly be dropped in random VGM logs. Right, that's all sorted now.


Great, now it sounds like it should. Thanks a lot.
Title: Game Emu Player (foo_gep) by kode54
Post by: reinhart on 2012-08-14 01:28:47
Can you add support for dual YM3438/YM2612? It is required for playing music from Sega System 32 (e.g. SegaSonic The Hedgehog Arcade) and Sega System 18.

Thanks
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2012-08-14 03:15:47
Quote
Implemented secondary resampler for VGM chips so all chips are rendered at their native sample rate. Reset YM2413 volume level to triple. Implemented VGM support for OKIM6258, OKIM6295, K051649, K053260, K054539, YM2203, YM3812, and YMF262. Corrected VGM volume level adjustment calculation.

Cool 

Quote
OKIM6258, OKIM6295, K051649, K053260, K054539, YM2203, YM3812, and YMF262

o_O What systems are these??
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-14 03:18:07
Lots of arcade machines. I've added links to change logs to the component information page, and to the first post of the topic. Change information will usually be split to where it actually occurred.
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2012-08-14 05:21:10
Lots of arcade machines. I've added links to change logs to the component information page, and to the first post of the topic. Change information will usually be split to where it actually occurred.

ohh so Arcade Machines Audio Formats? Cool

o_O  thx

ps: should I go from now on to the GitHub page for all further change log info? ie saving you update time on the foo_gep component page?
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-15 01:36:37
Seems like a good idea, anyway. And the GitHub pages will always have full change history.
Title: Game Emu Player (foo_gep) by kode54
Post by: reinhart on 2012-08-15 01:37:51
foobar crashed when I tried to play file "10 Dark Alley.vgz" from Alien Storm (Sega System 18).

I retrieved some errors log:
Code: [Select]
Illegal operation:
Code: C0000005h, flags: 00000000h, address: 028A4551h
Access violation, operation: read, address: 00000084h

Call path:
threaded_process thread=>playlist_loader::g_process_path=>index_tracks_helper=>hintable=>subsong-loop=>get_info

Code bytes (028A4551h):
028A4511h:  86 90 00 00 00 3B C8 73 2F 2B C1 50 8B 86 98 00
028A4521h:  00 00 2B 86 8C 00 00 00 03 C1 50 8B 86 88 00 00
028A4531h:  00 03 C1 50 E8 26 82 00 00 8B 86 90 00 00 00 83
028A4541h:  C4 0C 89 86 94 00 00 00 C3 53 56 8B F2 57 8B D8
028A4551h:  8B 86 84 00 00 00 8B F9 3B F8 73 7E 8D 0C 1F 3B
028A4561h:  C8 76 04 2B C7 8B D8 E8 9D FF FF FF 0F B6 86 81
028A4571h:  00 00 00 C1 E0 0C 0B C7 8D 0C 03 8B 5C 24 10 89
028A4581h:  8E 90 00 00 00 8B C8 8D 79 0C 6A 0C 89 86 8C 00

Stack (03CAF240h):
03CAF220h:  0012ED64 00000000 0012EDF4 7E44048F
03CAF230h:  7E418830 FFFFFFFF 7E41882A 7E428EA0
03CAF240h:  0410E3DC 00000100 04100738 0287AB00
03CAF250h:  00000000 000005AC 04100738 0418A490
03CAF260h:  FFFFFFFF 00001F00 0410E3DC 000000AA
03CAF270h:  03CAF294 0287B622 04100738 000005AB
03CAF280h:  04100048 04100208 041001E0 000005AC
03CAF290h:  000005AB 03CAF2D0 0287DA18 0001CD53
03CAF2A0h:  04100750 04100208 028856DB 04100048
03CAF2B0h:  0001CD53 00000B58 0418A490 0410DC50
03CAF2C0h:  000003A0 041007D8 0410D390 0001CD53
03CAF2D0h:  03CAF2EC 028857BF 04100750 04188550
03CAF2E0h:  00000800 041000EC 00000000 03CAF344
03CAF2F0h:  0287DA6C 000003A0 04100750 041000FC
03CAF300h:  028808FE 00000800 0410D390 02880963
03CAF310h:  0410D390 0410010C 041000FC 028807EB
03CAF320h:  04100048 028730FE 029C537C 04100048
03CAF330h:  00017700 0008CA00 00000001 041000FC
03CAF340h:  00000000 03CAF42C 02868DCA 00000000
03CAF350h:  100027ED 10002826 004695AD 00000000

Registers:
EAX: 00000100, EBX: 00000100, ECX: 00001F00, EDX: 00000000
ESI: 00000000, EDI: 0410E3DC, EBP: 03CAF270, ESP: 03CAF240

Crash location:
Module: foo_gep
Offset: 44551h

Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-15 07:35:57
Fixed. I missed a guard around some chip memory access functions that were triggered by a RF5C68 RAM dump command in the log, when the RF5C68's clock was set to 0, indicating there was to be no such chip in use.
Title: Game Emu Player (foo_gep) by kode54
Post by: Kilu on 2012-08-18 02:52:50
Another thing which I found a little strange is that if the playback override is unchecked from GEP control, a lot of tracks in this Kirby's Adventure NSFe (http://slickproductions.org/nsfe/KirbyAdventure.rar) start with a pop (Green Greens, Boss, The Moon, Nightmare etc).
If I check playback override, but leave channels and tempo to their defaults, the starting pop goes away from every song.
As for GEP control adding or removing a pop sound, besides allowing for channel muting, it also disables silence detection, which normally removes any leading silence from a track, and also ends playback if so many seconds worth of silence are detected.


Hey man. Just bringing this up again in a slightly different context. I noticed that even though I have playback override checked and as such don't hear the pop when I play the affected nsf files, if I convert them to wav or mp3 or whatever, the pop will be there regardless of my settings. Any advice?
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-18 04:01:25
Fixed. It had to do with (unsuccessfully) blocking $4011 register writes on track start when silence detection was enabled.
Title: Game Emu Player (foo_gep) by kode54
Post by: Kilu on 2012-08-18 04:18:18
Excellent, that did it. Thanks man.
Title: Game Emu Player (foo_gep) by kode54
Post by: netbsd on 2012-08-18 10:40:52
There are strange noises in 'The Adventures of Batman and Robin' VGM, especially in 'Extreme Boss' track at 1.20-1.40, it was ok in version 1.128.
Also it would be great if foo_gep sopported SSF (Sega Saturn Sound Format), it can use 'Audio Overload SDK'.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-18 15:56:40
I will look into that album rip set.

There is already a SSF component, foo_input_aossf, on this uploads site for a Japanese wiki (http://foobar2000.xrea.jp/up/). Along with a DSF player.

I already have a SSF/DSF player library that is reentrant, but it's not perfect, so it doesn't play all rips properly.
Title: Game Emu Player (foo_gep) by kode54
Post by: db1989 on 2012-08-18 20:11:57
There is already a SSF component, foo_input_aossf, on this uploads site for a Japanese wiki (http://foobar2000.xrea.jp/up/). Along with a DSF player.

Direct links:

aossf 1.21 = http://foobar2000.xrea.jp/up/files/up1112.zip (http://foobar2000.xrea.jp/up/files/up1112.zip)
aoqsf 0.07 = http://foobar2000.xrea.jp/up/files/up1104.zip (http://foobar2000.xrea.jp/up/files/up1104.zip)
aodsf 0.10 = http://foobar2000.xrea.jp/up/files/up1173.zip (http://foobar2000.xrea.jp/up/files/up1173.zip)

At the time of writing this, they are on page 6.

Despite the linked site being in Japanese, the author of these plugins appears to speak English, as witness the documentation/changelogs. Also important to note is the fact that the archives contain plugins not only for foobar2000 v0.9+ but also for fb2k 0.8.x, Winamp 2, Winamp 5, and KbMedia Player. Finally, the archives contain sources.

I mention all of this just so that anyone who might have been discouraged by their location will be re-encouraged.

Quote
I already have a SSF/DSF player library that is reentrant, but it's not perfect, so it doesn't play all rips properly.

Out of interest, do you plan to work on it any more? For the few Saturn soundtracks I’d want to listen to, I’m happy to use the OST version or Audio Overload (which presumably means aossf would work fine), but this is interesting anyhow, seeing as it’d be just one more to add to the many things foo_gep can do.

Edit: Found it. (http://www.hydrogenaudio.org/forums/index.php?showtopic=73786) I see that you disabled SSF support due to problems emulating the relevant DSP processing, and it looks like you eventually removed the component altogether. Disregard if nothing has happened since then! I did see, however, that – conversely – aodsf apparently had (has?) problems with DSP emulation, whereas HT and thus your component didn’t.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-18 20:19:43
I updated the list of plugins you mentioned. aoqsf is also kind of terrible, prefer foo_input_qsf instead.

I'll ask Neill about it, then consider publishing the source to Highly Theoretical under GPLv3 or LGPL, so I can try to get community support in updating it to a proper state. It supports playback of both SSF and DSF files, but seems to glitch at the DSP filtering on SSF files, and I don't know why. I'll have to debug it.
Title: Game Emu Player (foo_gep) by kode54
Post by: db1989 on 2012-08-18 20:22:29
Ah – I’ve been ninja’d.
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2012-08-19 05:21:11
Sega Saturn Sound Support sounds really Cool  ^+^ there are a few games I loved on the Sega Saturn including
- Shining Force 3   
- Mystaria the realms of lore (aka Blazing Heroes)
and probably;y a few others i can't seem recall at this point....
finding the relevant sound files at some point would be the next thing to do
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-20 14:02:28
I tried building a DSF only version of Highly Theoretical, but it glitched out on the first modland rip I downloaded, Guilty Gear X. Looks like AOSSF and AODSF are still the safe bet for now.

At least the current AODSF is easy enough to install with that .fb2k-component file included in the archive. Installing AOSSF (or AOQSF, if you want to mess with that) is easy enough, all you have to do is repack foo_input_aossf.dll (or foo_input_aoqsf.dll) and the accompanying .bin file into a .zip or .fb2k-component and install that.
Title: Game Emu Player (foo_gep) by kode54
Post by: ExUser on 2012-08-20 15:50:59
and probably;y a few others i can't seem recall at this point....
NiGHTS.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-20 16:47:09
I've uploaded the Highly Theoretical DSF component (SSF support left out) here (http://www.foobar2000.org/components/view/foo_input_ht). Beware of bugs.
Title: Game Emu Player (foo_gep) by kode54
Post by: db1989 on 2012-08-20 16:56:54
panzerdragoonpanzerdragoonpanzerdragoonpanzerdragoonzweipanzerdragoonsaga
Panzer Dragoon Zwei and Saga
Phenomenal soundtracks, whose relative complexity and futuristic–exotic nature could make for quite good tests of emulation accuracy, I imagine. Having said that, I think Audio Overload handles them fairly well. I’d be more inclined to try it in any depth if I didn’t have the original CDs
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2012-08-21 00:13:56
Ohh    A new Game Music Plugin   

U Da Best Kode54 


one thing i  noticed with
DSF Decoder 2.0.21 (http://www.foobar2000.org/components/view/foo_input_ht)
is that it hasn't been addedto the
Game Music  and
decoder tags like the others yet o-O

"Tags: decoder, game music"
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-21 02:32:29
Tagged and bagged. Oh, and I enabled SSF support, since I got FM support and Scorcher's DSP effects working. Of course, the dynamic recompiling DSP kind of breaks some of Scorcher, even if it is quite a lot faster than the interpreter.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-21 17:02:18
Bumping to report that I fixed a pretty serious crash in foo_gep when loading info from VGM files.
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2012-08-21 17:09:59
TY Kode54 for all the effort and work you put into Game Emu Plugins 
it means so much to me to be able to listen to all of the great Game Music
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-21 19:50:27
And now I've fixed the recompiling DSP issues in foo_input_ht. Rejoice, Scorcher plays correctly now.
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2012-08-22 00:13:46
S.W.E.E.T. more updates
now i just wonder where I could find the Saturn Music files?

if nothing else could I ask do you know of some good search terms for Google?
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-22 01:15:49
There's a large collection of both SSF and DSF files in the Saturn Sound Format and Dreamcast Sound Format directories at modland, if you can stand the slow download speeds. That's 563.2MB worth of MINI/SSF files and 1.59GB worth of MINI/DSF files.
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2012-08-22 01:32:47
There's a large collection of both SSF and DSF files in the Saturn Sound Format and Dreamcast Sound Format directories at modland, if you can stand the slow download speeds. That's 563.2MB worth of MINI/SSF files and 1.59GB worth of MINI/DSF files.


WoW Cool Thx I'll check it out 

Saturn game Music here I come   
Shining Force 3 was my Favorite for the Sega Saturn

I've never heard of Modland before is this what you are talking about?
http://www.exotica.org.uk/wiki/Modland (http://www.exotica.org.uk/wiki/Modland)
Title: Game Emu Player (foo_gep) by kode54
Post by: mudlord on 2012-08-22 02:20:00
Tagged and bagged. Oh, and I enabled SSF support, since I got FM support and Scorcher's DSP effects working. Of course, the dynamic recompiling DSP kind of breaks some of Scorcher, even if it is quite a lot faster than the interpreter.


Tried looking at Musashi for interpreter?

Also, RAZE for QSF.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-22 05:14:19
It already has an interpreter that works, and now the recompiler works correctly as well.
Title: Game Emu Player (foo_gep) by kode54
Post by: mudlord on 2012-08-22 06:03:14
Main reason I ask is: Musashi seems to be heavily roadtested in tons of emulators including Genesis Plus GX, so apparently its a fast interpreter....

But then again, if the dynamic recompiler is super accurate, meh to that I guess.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-22 13:36:41
It's not a dynamic recompiling CPU. It's a dynamic recompiling DSP, for reverb and such. It's as accurate as the included interpreter.

As for the CPUs, it uses Starscream for the SSF playback, which is a static assembly language interpreter. For DSF files, it uses a C based ARM core that Neill also wrote.
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2012-08-22 14:58:45
I found this place that has Sega Saturn Music in Archive file  (and files hosted at modland too )

http://snesmusic.org/hoot/kingshriek/ssf/ (http://snesmusic.org/hoot/kingshriek/ssf/)

I wanted to share my Enthusiasm
Title: Game Emu Player (foo_gep) by kode54
Post by: thals1992 on 2012-08-23 14:53:36
Wow, just rechecked my plugin for updates. I just noticed that I'm 9 updates behind! I went to try to convert some of my vgms to mp3 with lame 3.98.4 and foobar crashes. I have dsp enabled if that is relevant.

Thanks for updating the plugin so often and adding so many more chips in the last two months.

Code: [Select]
Illegal operation:
Code: C0000005h, flags: 00000000h, address: 680B9605h
Access violation, operation: read, address: 00000000h

Call path:
converter_process::threadfunc=>input_decoder::[u]initialize[/u]

Code bytes (680B9605h):
680B95C5h:  E8 83 65 FC 00 85 C0 74 0C E8 67 4C 01 00 8B F0
680B95D5h:  89 45 E8 EB 05 33 F6 89 75 E8 83 4D FC FF 89 37
680B95E5h:  6A 00 89 75 EC C6 86 90 01 00 00 01 E8 D6 31 00
680B95F5h:  00 FF 75 10 C7 45 FC 01 00 00 00 8D 5F 3C 8B 0B
680B9605h:  8B 01 6A 00 6A 00 FF 50 18 8B 4D 10 53 8D 45 B8
680B9615h:  50 E8 42 59 00 00 C6 45 FC 02 DD 47 60 DD 9E 60
680B9625h:  01 00 00 FF 77 08 8B DE E8 95 99 00 00 8B D8 85
680B9635h:  DB 74 2B 53 E8 72 20 04 00 59 8D 45 0C 50 8D 4D

Stack (0BA6F528h):
0BA6F508h:  00000000 00000004 FFFFFD34 000002E4
0BA6F518h:  FFFFFD34 000002CC 00000018 00000000
0BA6F528h:  029A93D4 0BA6FBF8 00000000 00000000
0BA6F538h:  0BA6F5B4 6C3F9917 029A0000 00000000
0BA6F548h:  00000055 00000000 0BA6FC00 00000055
0BA6F558h:  0BA6F578 091A0048 091A0048 00C0F5D8
0BA6F568h:  091A0048 091A0048 0BA6F52C 0BA6F5A8
0BA6F578h:  68113AAC 00000001 0BA6F5B4 680BA07E
0BA6F588h:  03DE7098 00000003 029A93D4 6C3EE7CC
0BA6F598h:  00000000 00000003 029A93D4 0000001D
0BA6F5A8h:  0BA6FDF0 6C40E589 00000000 0BA6F5D8
0BA6F5B8h:  6C3C2632 0BA6FBF8 00000000 00000003
0BA6F5C8h:  029A93D4 029A92A0 029ADB4C 0BA6F5C8
0BA6F5D8h:  0BA6FDFC 6C3C557C 00000000 00000001
0BA6F5E8h:  0BA6F8D4 029A93D4 00000000 029A92A0
0BA6F5F8h:  029A9B70 00B60000 00000000 00000000
0BA6F608h:  0BA6F948 00000018 77C543F7 0BA6F7B0
0BA6F618h:  00C544C4 00000000 00B619F8 00B61A98
0BA6F628h:  00200000 0BA6F7DC 0BA6F7E0 0BA6F7BC
0BA6F638h:  00000020 00000020 00B619F8 00000000

Registers:
EAX: 0BA6F574, EBX: 03DE70D4, ECX: 00000000, EDX: 00000000
ESI: 091A0048, EDI: 03DE7098, EBP: 0BA6F580, ESP: 0BA6F528

Crash location:
Module: foo_gep
Offset: 9605h

Loaded modules:
foobar2000                      loaded at 01090000h - 01249000h
ntdll                            loaded at 77C30000h - 77D97000h
KERNEL32                        loaded at 75ED0000h - 75FC8000h
KERNELBASE                      loaded at 75560000h - 7561D000h
COMCTL32                        loaded at 73AE0000h - 73CD7000h
DSOUND                          loaded at 6F6B0000h - 6F734000h
SHLWAPI                          loaded at 77BF0000h - 77C30000h
UxTheme                          loaded at 74460000h - 74507000h
USER32                          loaded at 75880000h - 759A1000h
GDI32                            loaded at 75C70000h - 75D7A000h
ADVAPI32                        loaded at 76840000h - 768EE000h
SHELL32                          loaded at 76B20000h - 77BE5000h
ole32                            loaded at 75B50000h - 75C69000h
zlib1                            loaded at 5A4C0000h - 5A4D4000h
shared                          loaded at 72EA0000h - 72ECB000h
gdiplus                          loaded at 760D0000h - 76233000h
Secur32                          loaded at 6EC10000h - 6EC19000h
CRYPT32                          loaded at 75340000h - 754C8000h
WINHTTP                          loaded at 6E930000h - 6E9B3000h
msvcrt                          loaded at 75D80000h - 75E31000h
WINMM                            loaded at 71430000h - 71451000h
POWRPROF                        loaded at 75230000h - 7526F000h
sechost                          loaded at 765D0000h - 76604000h
RPCRT4                          loaded at 75FD0000h - 760A2000h
combase                          loaded at 759B0000h - 75AE6000h
imagehlp                        loaded at 760B0000h - 760C2000h
dbghelp                          loaded at 71460000h - 71589000h
COMDLG32                        loaded at 75E40000h - 75EC9000h
MSASN1                          loaded at 75300000h - 75312000h
WINMMBASE                        loaded at 71400000h - 7142A000h
SHCORE                          loaded at 768F0000h - 76965000h
SSPICLI                          loaded at 75080000h - 750A3000h
IMM32                            loaded at 76470000h - 7649B000h
MSCTF                            loaded at 764A0000h - 7657C000h
CRYPTBASE                        loaded at 75110000h - 75119000h
bcryptPrimitives                loaded at 750B0000h - 75101000h
dwmapi                          loaded at 73CE0000h - 73CF9000h
foo_channel_mixer                loaded at 6DCA0000h - 6DCDF000h
foo_input_viogsf                loaded at 6D950000h - 6D984000h
foo_dsp_std                      loaded at 6D900000h - 6D948000h
foo_xm                          loaded at 6D8A0000h - 6D8F4000h
WININET                          loaded at 76250000h - 76409000h
iertutil                        loaded at 76610000h - 767AB000h
foo_fileops                      loaded at 6D850000h - 6D897000h
foo_input_vgmstream              loaded at 6D7B0000h - 6D849000h
libvorbis                        loaded at 6D770000h - 6D7AE000h
libmpg123-0                      loaded at 6D720000h - 6D761000h
libg7221_decode                  loaded at 70030000h - 70055000h
foo_input_ym                    loaded at 10000000h - 1002A000h
foo_dsp_dolbyhp                  loaded at 6F8B0000h - 6F8D4000h
VERSION                          loaded at 72A30000h - 72A38000h
foo_converter                    loaded at 6C3C0000h - 6C43C000h
foo_uie_wsh_panel_mod            loaded at 6BD40000h - 6BDEC000h
OLEAUT32                        loaded at 767B0000h - 7683B000h
Msimg32                          loaded at 737B0000h - 737B6000h
foo_input_vio2sf                loaded at 01E50000h - 01E8B000h
foo_rgscan                      loaded at 6CC30000h - 6CC7B000h
foo_out_asio                    loaded at 01EF0000h - 01F22000h
foo_infospect                    loaded at 01F60000h - 01F97000h
foo_ui_std                      loaded at 6BC50000h - 6BD35000h
foo_game                        loaded at 6C810000h - 6C842000h
MSVCP90                          loaded at 6AF50000h - 6AFDE000h
MSVCR90                          loaded at 69840000h - 698E3000h
foo_dsp_tube                    loaded at 01FB0000h - 01FD6000h
foo_input_tfmx                  loaded at 6DE80000h - 6DEA7000h
foo_out_wasapi                  loaded at 02230000h - 02256000h
foo_playlisthistory              loaded at 02270000h - 0229F000h
foo_psf                          loaded at 6AE80000h - 6AF4B000h
foo_midi                        loaded at 6A560000h - 6A63F000h
BASS                            loaded at 11000000h - 11063000h
BASSMIDI                        loaded at 10600000h - 1061B000h
MSACM32                          loaded at 6E1A0000h - 6E1B4000h
foo_freedb2                      loaded at 6C470000h - 6C4B0000h
foo_lnk                          loaded at 728A0000h - 728BA000h
foo_benchmark                    loaded at 02330000h - 0235D000h
foo_httpcontrol                  loaded at 6BEA0000h - 6BF0D000h
WS2_32                          loaded at 76580000h - 765D0000h
WSOCK32                          loaded at 713B0000h - 713B8000h
MPR                              loaded at 715B0000h - 715C3000h
NSI                              loaded at 76240000h - 76248000h
foo_unpack                      loaded at 6DC70000h - 6DC9F000h
foo_uie_lyrics2                  loaded at 02840000h - 028B6000h
foo_r128norm                    loaded at 6CFA0000h - 6CFC6000h
foo_uie_vis_channel_spectrum    loaded at 02910000h - 0294D000h
foo_dsp_prvb                    loaded at 028D0000h - 028FB000h
foo_dop                          loaded at 030C0000h - 0327F000h
SETUPAPI                        loaded at 76970000h - 76B1F000h
QUARTZ                          loaded at 69050000h - 691D2000h
USP10                            loaded at 71310000h - 71324000h
CFGMGR32                        loaded at 75670000h - 756B6000h
DEVOBJ                          loaded at 75320000h - 7533E000h
foo_bluetooth_ctrl              loaded at 029B0000h - 029DA000h
foo_uie_esplaylist              loaded at 6B500000h - 6B56A000h
foo_vis_shpeck                  loaded at 6BF70000h - 6BFB1000h
foo_upnp                        loaded at 684E0000h - 68698000h
IPHLPAPI                        loaded at 71930000h - 71952000h
WINNSI                          loaded at 72D60000h - 72D68000h
foo_playcount                    loaded at 6BC10000h - 6BC4E000h
foo_podcatcher                  loaded at 02BA0000h - 02C76000h
foo_input_qsf                    loaded at 6B7F0000h - 6B83B000h
foo_hdcd                        loaded at 6B460000h - 6B4A1000h
foo_unpack_unix                  loaded at 6B770000h - 6B791000h
foo_cdda                        loaded at 6AE30000h - 6AE7E000h
foo_AdvancedControls            loaded at 6ADD0000h - 6AE24000h
foo_uie_biography                loaded at 6AB40000h - 6AB96000h
foo_joystick_control            loaded at 02D50000h - 02DA6000h
DINPUT8                          loaded at 6ABC0000h - 6ABF0000h
foo_dsp_effect                  loaded at 02DB0000h - 02DE7000h
foo_softplaylists                loaded at 6A4F0000h - 6A558000h
foo_unpack_7z                    loaded at 6AB10000h - 6AB3D000h
foo_dsp_crossfeed                loaded at 6A4C0000h - 6A4E4000h
foo_dumb                        loaded at 6A030000h - 6A0A6000h
foo_uie_panel_splitter          loaded at 02F40000h - 02F99000h
foo_input_dvda                  loaded at 69DD0000h - 69E2B000h
foo_sid                          loaded at 69900000h - 6997B000h
foo_input_usf                    loaded at 68460000h - 684DF000h
foo_ui_columns                  loaded at 03A80000h - 03C0B000h
foo_vst                          loaded at 68FF0000h - 69044000h
foo_input_adplug                loaded at 683E0000h - 68460000h
foo_albumlist                    loaded at 68380000h - 683DC000h
foo_adpcm                        loaded at 68200000h - 68255000h
foo_gep                          loaded at 680B0000h - 681F8000h
foo_input_dts                    loaded at 67180000h - 671E3000h
foo_vorbisstream                loaded at 66EA0000h - 67070000h
WINSPOOL                        loaded at 6EC20000h - 6EC80000h
foo_input_std                    loaded at 66D40000h - 66E9F000h
foo_wave_seekbar                loaded at 66BB0000h - 66D3C000h
foo_uie_elplaylist              loaded at 66A80000h - 66AF3000h
foo_dsp_fsurround_beta          loaded at 03990000h - 03A64000h
clbcatq                          loaded at 756C0000h - 75734000h
MMDevApi                        loaded at 739C0000h - 73A0D000h
AUDIOSES                        loaded at 6EA10000h - 6EA64000h
frontend_direct2d                loaded at 67120000h - 67176000h
d2d1                            loaded at 6B8C0000h - 6BBE7000h
mswsock                          loaded at 74C30000h - 74C7A000h
WINTRUST                        loaded at 75620000h - 75663000h
HID                              loaded at 74770000h - 7477A000h
dhcpcsvc                        loaded at 70380000h - 70392000h
WindowsCodecs                    loaded at 71DD0000h - 71F16000h
avrt                            loaded at 72D90000h - 72D98000h
propsys                          loaded at 71B30000h - 71C49000h
apphelp                          loaded at 6FCD0000h - 6FD77000h
dlnashext                        loaded at 68260000h - 682C5000h
Windows.Media.Streaming          loaded at 60370000h - 60468000h
XmlLite                          loaded at 71C50000h - 71C85000h
CRYPTSP                          loaded at 74C80000h - 74C9A000h
rsaenh                          loaded at 749A0000h - 749DE000h
DevDispItemProvider              loaded at 73940000h - 7394C000h
dhcpcsvc6                        loaded at 6FFF0000h - 70000000h
actxprxy                        loaded at 70090000h - 7014C000h
profapi                          loaded at 75280000h - 75291000h
netprofm                        loaded at 71650000h - 7166F000h
npmproxy                        loaded at 6E5C0000h - 6E5C9000h
wpdshext                        loaded at 66830000h - 66A0C000h
shdocvw                          loaded at 73030000h - 73063000h
explorerframe                    loaded at 69510000h - 69778000h
DUser                            loaded at 73A50000h - 73ADF000h
DUI70                            loaded at 73D30000h - 73E8C000h
Windows.Globalization            loaded at 6C4B0000h - 6C547000h
Bcp47Langs                      loaded at 73970000h - 739BF000h
tiptsf                          loaded at 6DEB0000h - 6DF19000h
StructuredQuery                  loaded at 5FBF0000h - 5FC5A000h
thumbcache                      loaded at 72F70000h - 72F9A000h
oleacc                          loaded at 73440000h - 73490000h
NetworkExplorer                  loaded at 6A310000h - 6A4A8000h
drprov                          loaded at 6A300000h - 6A308000h
WINSTA                          loaded at 751D0000h - 7520E000h
ntlanman                        loaded at 6A2F0000h - 6A2FF000h
davclnt                          loaded at 6A2D0000h - 6A2E9000h
DAVHLPR                          loaded at 6A2C0000h - 6A2C9000h
wkscli                          loaded at 72CC0000h - 72CD0000h
cscapi                          loaded at 6DE30000h - 6DE3E000h
netutils                        loaded at 747F0000h - 747FB000h
LINKINFO                        loaded at 6A4B0000h - 6A4B9000h
twinapi                          loaded at 70FF0000h - 71071000h
EhStorShell                      loaded at 707C0000h - 707F1000h
cscui                            loaded at 6FAF0000h - 6FB75000h
CSCDLL                          loaded at 723A0000h - 723A9000h
PortableDeviceApi                loaded at 6E0F0000h - 6E16A000h
EhStorAPI                        loaded at 68080000h - 680A1000h
WTSAPI32                        loaded at 751C0000h - 751CE000h
ntshrui                          loaded at 6A210000h - 6A2BB000h
srvcli                          loaded at 75010000h - 7502C000h
urlmon                          loaded at 75750000h - 7586E000h

Stack dump analysis:
Address: 6C3F9917h (foo_converter+39917h), symbol: "foobar2000_get_interface" (+B5E7h)
Address: 68113AACh (foo_gep+63AACh), symbol: "foobar2000_get_interface" (+197FCh)
Address: 680BA07Eh (foo_gep+A07Eh)
Address: 6C3EE7CCh (foo_converter+2E7CCh), symbol: "foobar2000_get_interface" (+49Ch)
Address: 6C40E589h (foo_converter+4E589h), symbol: "foobar2000_get_interface" (+20259h)
Address: 6C3C2632h (foo_converter+2632h)
Address: 6C3C557Ch (foo_converter+557Ch)
Address: 77C543F7h (ntdll+243F7h), symbol: "LdrGetDllHandleEx" (+3C5h)
Address: 77C5358Bh (ntdll+2358Bh), symbol: "RtlHashUnicodeString" (+1A3h)
Address: 77C535A8h (ntdll+235A8h), symbol: "RtlHashUnicodeString" (+1C0h)
Address: 77C300D8h (ntdll+D8h)
Address: 77C300D8h (ntdll+D8h)
Address: 77C492F8h (ntdll+192F8h), symbol: "RtlImageDirectoryEntryToData" (+1Bh)
Address: 77C30000h (ntdll+0h)
Address: 77C54241h (ntdll+24241h), symbol: "LdrGetDllHandleEx" (+20Fh)
Address: 77C54270h (ntdll+24270h), symbol: "LdrGetDllHandleEx" (+23Eh)
Address: 6715C170h (frontend_direct2d+3C170h), symbol: "g_seekbar_frontend_entrypoint" (+7490h)
Address: 6715C170h (frontend_direct2d+3C170h), symbol: "g_seekbar_frontend_entrypoint" (+7490h)
Address: 75FA9AB6h (KERNEL32+D9AB6h), symbol: "DecodePointer" (+6h)
Address: 77C6865Ch (ntdll+3865Ch), symbol: "RtlGetCurrentPeb" (+11FBh)
Address: 77D2EB18h (ntdll+FEB18h), symbol: "RtlpFreezeTimeBias" (+30h)
Address: 039FB2A4h (foo_dsp_fsurround_beta+6B2A4h), symbol: "boost::serialization::singleton<std::set<boost::serialization::void_cast_detail::void_caster const *,boost:" (+223F4h)
Address: 77C52C7Ch (ntdll+22C7Ch), symbol: "LdrGetProcedureAddressForCaller" (+3D8h)
Address: 039FB2A4h (foo_dsp_fsurround_beta+6B2A4h), symbol: "boost::serialization::singleton<std::set<boost::serialization::void_cast_detail::void_caster const *,boost:" (+223F4h)
Address: 77C48369h (ntdll+18369h), symbol: "RtlGetNtGlobalFlags" (+6Ch)
Address: 75F9F720h (KERNEL32+CF720h), symbol: "SetStateVersion" (+126D9h)
Address: 039BA83Ah (foo_dsp_fsurround_beta+2A83Ah), symbol: "foobar2000_get_interface" (+1217Ah)
Address: 75FA0FACh (KERNEL32+D0FACh), symbol: "SetStateVersion" (+13F65h)
Address: 75FA9AB0h (KERNEL32+D9AB0h), symbol: "DecodePointer" (+0h)
Address: 75F9DE6Ch (KERNEL32+CDE6Ch), symbol: "SetStateVersion" (+10E25h)
Address: 6C41EF98h (foo_converter+5EF98h), symbol: "foobar2000_get_interface" (+30C68h)
Address: 75751E81h (urlmon+1E81h), symbol: "Ordinal317" (+1E81h)
Address: 77C6683Fh (ntdll+3683Fh), symbol: "LdrInitializeThunk" (+F1h)
Address: 77C66A24h (ntdll+36A24h), symbol: "RtlInitializeExceptionChain" (+10Bh)
Address: 77D2D34Ch (ntdll+FD34Ch), symbol: "RtlAllocateMemoryZone" (+528Eh)
Address: 77D05BB9h (ntdll+D5BB9h), symbol: "wcstombs" (+85h)
Address: 77C444AAh (ntdll+144AAh), symbol: "ZwTestAlert" (+Ah)
Address: 77C30000h (ntdll+0h)
Address: 77C30000h (ntdll+0h)
Address: 77D05BB9h (ntdll+D5BB9h), symbol: "wcstombs" (+85h)
Address: 77C66790h (ntdll+36790h), symbol: "LdrInitializeThunk" (+42h)
Address: 77C45E36h (ntdll+15E36h), symbol: "ZwContinue" (+Ah)
Address: 77C66768h (ntdll+36768h), symbol: "LdrInitializeThunk" (+1Ah)
Address: 6C41A87Ch (foo_converter+5A87Ch), symbol: "foobar2000_get_interface" (+2C54Ch)
Address: 6C3FB4C0h (foo_converter+3B4C0h), symbol: "foobar2000_get_interface" (+D190h)
Address: 77C46938h (ntdll+16938h), symbol: "RtlUserThreadStart" (+0h)
Address: 77C48311h (ntdll+18311h), symbol: "RtlGetNtGlobalFlags" (+14h)
Address: 77C47367h (ntdll+17367h), symbol: "alloca_probe" (+4FFh)
Address: 77C33C18h (ntdll+3C18h), symbol: "RtlFreeHeap" (+306h)
Address: 01200380h (foobar2000+170380h)
Address: 77D05BB9h (ntdll+D5BB9h), symbol: "wcstombs" (+85h)
Address: 77C33C18h (ntdll+3C18h), symbol: "RtlFreeHeap" (+306h)
Address: 77C339ABh (ntdll+39ABh), symbol: "RtlFreeHeap" (+99h)
Address: 01200380h (foobar2000+170380h)
Address: 6C41170Fh (foo_converter+5170Fh), symbol: "foobar2000_get_interface" (+233DFh)
Address: 6C3C3945h (foo_converter+3945h)
Address: 0109001Fh (foobar2000+1Fh)
Address: 6C4117ACh (foo_converter+517ACh), symbol: "foobar2000_get_interface" (+2347Ch)
Address: 6C3FB49Ah (foo_converter+3B49Ah), symbol: "foobar2000_get_interface" (+D16Ah)
Address: 6C3FE8B0h (foo_converter+3E8B0h), symbol: "foobar2000_get_interface" (+10580h)
Address: 6C3FB524h (foo_converter+3B524h), symbol: "foobar2000_get_interface" (+D1F4h)
Address: 75ED1866h (KERNEL32+1866h), symbol: "BaseThreadInitThunk" (+12h)
Address: 77C668F1h (ntdll+368F1h), symbol: "LdrInitializeThunk" (+1A3h)
Address: 755F1B96h (KERNELBASE+91B96h), symbol: "UnhandledExceptionFilter" (+0h)
Address: 77D05BB9h (ntdll+D5BB9h), symbol: "wcstombs" (+85h)
Address: 77C6689Dh (ntdll+3689Dh), symbol: "LdrInitializeThunk" (+14Fh)
Address: 77CF5AE2h (ntdll+C5AE2h), symbol: "RtlInitializeContext" (+120h)
Address: 6C3FB4C0h (foo_converter+3B4C0h), symbol: "foobar2000_get_interface" (+D190h)

Environment:
App: foobar2000 v1.1.13
UI: Default User Interface 0.9.5

Components:
Core (2012-06-07 18:37:46 UTC)
    foobar2000 core 1.1.13
foo_adpcm.dll (2012-02-22 19:13:48 UTC)
    kode's ADPCM decoders 1.10
foo_AdvancedControls.dll (2011-11-18 15:42:28 UTC)
    Foobar2000 Advanced Controls 0.6.7.4
foo_albumlist.dll (2012-06-07 18:36:18 UTC)
    Album List 4.5
foo_benchmark.dll (2011-05-01 03:24:04 UTC)
    Decoding Speed Test 1.1
foo_bluetooth_ctrl.dll (2012-04-03 02:53:54 UTC)
    Bluetooth Remote Control 1.1
foo_cdda.dll (2012-06-07 18:36:12 UTC)
    CD Audio Decoder 3.0
foo_channel_mixer.dll (2011-06-01 17:18:00 UTC)
    Channel Mixer 0.9.6.7
foo_converter.dll (2012-06-07 18:35:52 UTC)
    Converter 1.5
foo_dop.dll (2010-11-24 18:50:46 UTC)
    iPod manager 0.6.8.6
foo_dsp_crossfeed.dll (2012-04-03 02:41:23 UTC)
    Crossfeed 1.1.1
foo_dsp_dolbyhp.dll (2011-05-01 03:22:42 UTC)
    Dolby Headphone Wrapper 1.4.1
foo_dsp_effect.dll (2012-06-28 13:30:29 UTC)
    Effect DSP 0.11
foo_dsp_fsurround_beta.dll (2012-04-03 02:33:51 UTC)
    FreeSurround 0.8.1
foo_dsp_prvb.dll (2011-05-01 03:22:24 UTC)
    Programmable reverb DSP 1.2
foo_dsp_std.dll (2012-06-07 18:36:20 UTC)
    Standard DSP Array 1.0
foo_dsp_tube.dll (2007-02-06 23:17:55 UTC)
    Tube Sound 0.8
foo_dumb.dll (2012-08-19 03:41:03 UTC)
    DUMB module decoder 0.9.9.57
foo_fileops.dll (2012-06-07 18:35:14 UTC)
    File Operations 2.1.3
foo_freedb2.dll (2012-06-07 18:36:30 UTC)
    freedb Tagger 0.6.4
foo_game.dll (2011-05-11 01:35:24 UTC)
    Game Audio Decoder 1.10
foo_gep.dll (2012-08-23 13:31:18 UTC)
    Game Emu Player 1.146
foo_hdcd.dll (2012-07-20 01:50:53 UTC)
    HDCD decoder 1.15
foo_httpcontrol.dll (2011-08-15 01:01:08 UTC)
    HTTP Control 0.97.12
foo_infospect.dll (2011-05-01 03:24:22 UTC)
    Infospect 1.0.3
foo_input_adplug.dll (2012-02-22 19:13:47 UTC)
    AdPlug 1.40
foo_input_dts.dll (2011-05-01 03:21:49 UTC)
    DTS decoder 0.3.0
foo_input_dvda.dll (2012-04-03 01:21:33 UTC)
    DVD-Audio Decoder and Watermark Detector 0.4.11
foo_input_qsf.dll (2012-02-22 19:13:48 UTC)
    Highly Quixotic 2.0.20
foo_input_std.dll (2012-06-07 18:35:58 UTC)
    Standard Input Array 1.0
foo_input_tfmx.dll (2012-02-22 19:13:48 UTC)
    TFMX decoder 0.9
foo_input_usf.dll (2012-02-22 19:13:48 UTC)
    LazyUSF 2.1 (Build Jun 26 2011)
foo_input_vgmstream.dll (2012-08-10 20:36:06 UTC)
    vgmstream plugin r982
foo_input_vio2sf.dll (2010-12-18 23:13:13 UTC)
    2SF decoder / DeSmuME v0.8.0 0.22
foo_input_viogsf.dll (2011-05-01 03:00:03 UTC)
    GSF decoder / VBA-M r956 0.08
foo_input_ym.dll (2011-05-01 03:10:27 UTC)
    YM Decoder 0.3
foo_joystick_control.dll (2012-04-03 23:03:32 UTC)
    Joystick Control 0.2.0 beta-1
foo_lnk.dll (2010-12-18 23:25:24 UTC)
    Shell Link Resolver 1.3.1
foo_midi.dll (2012-08-10 20:36:06 UTC)
    MIDI synthesizer host 1.167
foo_out_asio.dll (2012-06-28 13:30:29 UTC)
    ASIO support 2.1.2
foo_out_wasapi.dll (2011-05-01 03:07:42 UTC)
    WASAPI output support 2.1
foo_playcount.dll (2012-02-22 19:13:48 UTC)
    Playback Statistics 3.0.2
foo_playlisthistory.dll (2012-02-22 19:13:48 UTC)
    Playlist History 0.1.6
foo_podcatcher.dll (2011-05-01 03:25:42 UTC)
    Podcatcher 0.2.5 (beta, Mar 12 2011)
foo_psf.dll (2012-08-16 07:01:11 UTC)
    Highly Experimental 2.0.27
foo_r128norm.dll (2012-02-22 19:13:48 UTC)
    EBU R128 Normalizer 1.11
foo_rgscan.dll (2012-06-07 18:35:56 UTC)
    ReplayGain Scanner 2.1.2
foo_sid.dll (2012-02-22 19:13:48 UTC)
    sidplay2 1.27
foo_softplaylists.dll (2011-05-01 03:19:16 UTC)
    Soft Playlists 2011-02-05
foo_ui_columns.dll (2010-03-20 23:43:13 UTC)
    Columns UI 0.3.8.5
foo_ui_std.dll (2012-06-07 18:36:16 UTC)
    Default User Interface 0.9.5
foo_uie_biography.dll (2010-04-30 15:49:24 UTC)
    Biography View 0.4.2.0
foo_uie_elplaylist.dll (2012-04-03 23:10:16 UTC)
    ELPlaylist 0.6.9.1.2(beta)
foo_uie_esplaylist.dll (2012-04-03 23:12:39 UTC)
    EsPlaylist 0.1.3.9
foo_uie_lyrics2.dll (2009-12-22 17:12:56 UTC)
    Lyric Show Panel 2 0.4.4
foo_uie_panel_splitter.dll (2009-12-09 16:16:12 UTC)
    Panel Stack Splitter 0.3.8.3(alpha)
foo_uie_vis_channel_spectrum.dll (2008-05-17 19:02:12 UTC)
    Channel Spectrum panel 0.17.2
foo_uie_wsh_panel_mod.dll (2010-02-28 02:59:14 UTC)
    WSH Panel Mod 1.3.2
foo_unpack.dll (2012-06-07 18:35:28 UTC)
    ZIP/GZIP/RAR Reader 1.6
foo_unpack_7z.dll (2012-02-22 19:13:47 UTC)
    7-Zip reader 1.8
foo_unpack_unix.dll (2012-02-22 19:13:49 UTC)
    Unix archive reader 1.8
foo_upnp.dll (2012-06-28 13:30:30 UTC)
    UPnP/DLNA Renderer, Server, Control Point 0.99.40
foo_vis_shpeck.dll (2012-04-03 23:02:52 UTC)
    Shpeck - Winamp vis plugins wrapper 0.3.7
foo_vorbisstream.dll (2011-05-01 03:23:43 UTC)
    Vorbis Streamer 1.1
foo_vst.dll (2011-05-01 05:34:43 UTC)
    VST 2.4 adapter 0.9.0.3
foo_wave_seekbar.dll (2012-07-20 01:55:20 UTC)
    Waveform seekbar 0.2.27
foo_xm.dll (2012-04-03 02:35:12 UTC)
    XM Radio Online Player 1.3.0b2

Recent events:
Connecting to serial port COM4
ERROR : Could not connect!
Deactivated
foo_upnp: succesfully loaded file D:\Users\Trevor\Music\Music\foobar2000\foo_upnp.xml
foo_upnp: initialized in 0.047s
Startup time : 0:01.170300
foo_upnp: created 12013 path registry entries in 0.530s
Opening track for playback: "D:\Users\Trevor\Music\Music\foobar2000\CHIPTUNES\remix\22.vgz"
foo_upnp: loaded Media Library tree in 5.413s
Disconnecting from server...


Machine specifications:
OS: Windows 6.2.9200 x86 (Yes, I'm running Windows 8 RTM....)
CPU: AMD Turion™ X2 Dual-Core Mobile RM-72, features: 3DNow!ex MMX SSE SSE2 SSE3
Audio: Speakers (High Definition Audio Device)
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-23 21:30:19
Fixed, sorry about that.
Title: Game Emu Player (foo_gep) by kode54
Post by: Pulstar on 2012-08-27 15:28:11
http://www.emuparadise.me/music/dsf/1 (http://www.emuparadise.me/music/dsf/1)
http://ssf.joshw.info (http://ssf.joshw.info)
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2012-08-27 18:14:27
http://www.emuparadise.me/music/dsf/1 (http://www.emuparadise.me/music/dsf/1)
http://ssf.joshw.info (http://ssf.joshw.info)


Ohhh  o_O what have we here...
Title: Game Emu Player (foo_gep) by kode54
Post by: ExUser on 2012-08-27 18:46:12
I'm still waiting for a nice Virtual On SSF set. x.x
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-08-27 20:44:32
An awful lot of those are streams.
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2012-08-31 23:03:37
Kode  I wanted to ask if you could insert click-able url links for the change log links instead of text it would make it easier and faster to follow the links when there is an update  so anyone can check the change logs  thx
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-09-01 10:10:24
There already are clickable links in the first post of this topic. I can't make the links on the component page clickable, since the page script escapes any HTML elements and does not feature any form of BBCode. You could click the discussion link to get back to the topic first, though.
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2012-09-01 10:55:56
There already are clickable links in the first post of this topic. I can't make the links on the component page clickable, since the page script escapes any HTML elements and does not feature any form of BBCode. You could click the discussion link to get back to the topic first, though.



that's too bad oh well... thx for the info none the less... could u talk to the web admin at some point about that? that is if the website could ever be updated to make it functional o_O

I usually don't come here to the forums when there is an update its usually straight to the component pages to grab
I just thought it would be faster while I was one the component to to make two very quick middle mouse clicks opening two tabs in the back ground loi
no worries I have all the pages bookmarked it just having to go dig for the links each time.. loi


Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-09-01 11:09:28
It's not so much talking to the admin, as he doesn't have time to implement anything like that now. I could implement it myself, though, as I do have server access.
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2012-09-01 16:09:36
It's not so much talking to the admin, as he doesn't have time to implement anything like that now. I could implement it myself, though, as I do have server access.

You could  loi only if u can find the time, as you do so much already ;^_^;
Thank you so very much for all your work emulator, Foobar200 plugins, etc 
Title: Game Emu Player (foo_gep) by kode54
Post by: liHard on 2012-09-20 18:46:33
Any change in getting a tag database feature like you implemented on foo_dumb?

Chip-tunes on the web tend to have a wide volume range and replay gain would be nice to use with them. Good thing I haven't used headphones or else I would be deaf
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-09-21 05:38:23
Done for all formats except for SPC.
Title: Game Emu Player (foo_gep) by kode54
Post by: liHard on 2012-09-24 17:55:19
Done for all formats except for SPC.


Wow! That was super fast. Thank you! 

This helps a lot already.
Title: Game Emu Player (foo_gep) by kode54
Post by: MasaMuneCyrus on 2012-09-25 05:41:22
Hey Kode54, firstly I wanted to say thanks for all the work you put in. I doubt that's said enough to you.

Secondly (and why I'm popping in), I have a bug with foo_gep to report. I am just now building a new computer and notice that .HES and .KSS files do not work properly in the latest foo_gep (1.148). Specifically, .KSS files will load the first track but not show any of the other tracks. Attempting to load a .HES track into the playlist crashes foobar2000. Both of these music files function properly when using foo_gep v1.115.

I am running Windows 7 64-bit with foobar2000 v1.115. I removed all other components except for foo_gep to confirm that v1.115 is working and v1.148 is not. I couldn't find any other versions to test my files with, but if you could refer me to where I can find all the versions in between, I'd be more than happy to narrow down the specific version that breaks it for you.

I have uploaded the offending .HES and .KSS files, and I have uploaded both v1.115 and v1.148 foo_gep to my dropbox:
https://dl.dropbox.com/u/56840675/foo_gep/foo_gep.7z (https://dl.dropbox.com/u/56840675/foo_gep/foo_gep.7z)
Title: Game Emu Player (foo_gep) by kode54
Post by: mudlord on 2012-09-26 00:25:17
more offending files:
http://tails.bloodheaven.net/VGMPP/_etc/VG...p/ChattyOPNA.7z (http://tails.bloodheaven.net/VGMPP/_etc/VGMTools/_tmp/ChattyOPNA.7z)

distortion apparently. bug in gme, not the component itself.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-09-26 01:15:25
Fixed both bugs. The HES bug was with reading the ROM region that is optionally used for metadata, returning a null pointer that caused a hashing function to crash. The other was from forgetting to remove an ampersand and thus passing a pointer to a pointer to the KSS header checker, so it was checking the wrong address for the signature. Luckily, that one didn't crash since it didn't modify anything, but still prevented KSS files from being added to the playlist properly.

I don't know about that distortion thing, I'll look into that later.
Title: Game Emu Player (foo_gep) by kode54
Post by: liHard on 2012-10-04 16:53:20
It seems that writing nsf files is broken now after the tag database addition. If i try to edit the length of a track in a nsf file foobar crashes.

Though, the nsf file is correctly converted into a nsfe one and the length is the new one which was written before crash.

Do you need a crash report for this?
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-10-04 23:26:18
No, I can probably reproduce it on my own, but I will ask for a crash report if I cannot reproduce it.

EDIT: Fixed.
Title: Game Emu Player (foo_gep) by kode54
Post by: liHard on 2012-10-05 18:33:56
Thanks for the fix!   
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-10-21 16:31:39
Cool, I found an NSF that breaks with "Ignore 4011 writes" enabled. Not sure if it counts if it's a Famicompo entry. Famicompo Mini vol. 8, Cover entry #63, Doggtales - The Moon.
Title: Game Emu Player (foo_gep) by kode54
Post by: Missingno_force on 2012-10-26 19:29:31
hi kode,
since two updates of GEP the length tag in SAPs doesnt show up anymore (therefore seeking isnt enabled). also since the last update SAP subsongs are not displayed anymore. this should be the case with all SAPs (at least for me). could you check (and probably fix) this?
Title: Game Emu Player (foo_gep) by kode54
Post by: Borisz on 2012-12-06 19:33:29
While on the topic of SSF playback, I checked the new plugin, and found a problem: Lei-lei (Hsien-ko) winning theme in Vampire Savior doesn't work right, it gradually drops out all instruments. The AOSSF plugins also had this exact same issue, but it was fixed somewhere along the updates.

http://ssf.joshw.info (http://ssf.joshw.info)

My first thought was "whoa, they managed to rip the Virtua Fighter 2 and VF Kids demo tune into SSF!", and then it turned out to be a bunch of lousy cd audio MP3s.
(note: VF2 and VF Kids use an alternate driver so they cannot be ripped with existing tools.)
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-12-06 20:20:26
It would save me some time if you managed to track down the exact version that fixed it. Either way, someone needs to find out where it was fixed so I have something to go on. It could be me, but I'm not sure how long I need to play files to force the issue.
Title: Game Emu Player (foo_gep) by kode54
Post by: Borisz on 2012-12-07 21:28:40
It was fixed with the aossf.bin included with the last version of foo_input_aossf (1.21). It reproduces 100% of the time on older versions of that one file (even if the foobar input dll is newer), and it's just a 20 second jingle so you don't need to listen to it very long. The file in question should be SWIN0D.ssf here: ftp://modland.com/pub/modules/Saturn%20So...mpire%20Savior/ (http://ftp://modland.com/pub/modules/Saturn%20Sound%20Format/Takayuki%20Iwai/Vampire%20Savior/)
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-12-10 08:50:11
Wow, fixing that was easier than I thought. I just had to replicate some minor changes to a single status register. I also updated a couple of the AICA's status registers to match the latest aodsf as well, who knows if that will fix anything that may have been broken?
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2012-12-23 22:23:23
Oops, I somehow lost this change and had to redo it.
Title: Game Emu Player (foo_gep) by kode54
Post by: agustin9 on 2013-01-16 05:06:22
Hi! I have a problem with the kss from snatcher, all the music sounds off, like mistimed.

This is the file:
https://www.dropbox.com/s/pu909ck050t1sle/snatcher.zip (https://www.dropbox.com/s/pu909ck050t1sle/snatcher.zip)

Thanks!!!!!!
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-01-16 23:58:36
Snatcher is known to be broken, anyone is welcome to try to fix it. I certainly have no idea what's wrong.
Title: Game Emu Player (foo_gep) by kode54
Post by: agustin9 on 2013-01-19 01:20:50
Oh that's too bad, it's one of my favourites soundtracks! Thanks
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-01-19 16:34:39
Maybe it's an issue with the bundled M3U playlist as well? Have you tried playing it without the playlist to see if there are any playable tracks somewhere in there?

[a href='index.php?showtopic=98966']foo_input_vgmstream discussion split[/a]
Title: Game Emu Player (foo_gep) by kode54
Post by: friguron on 2013-01-22 12:46:06
Hi, GEP Plugin has started to play .ay files (I would say not all of them, but now I'm not really sure) with the pitch raised exactly one octave.
I can't say which version started showing this behavior, but it was some weeks ago (maybe 2-3 months?) Right now I'm using version 1.160 (under OSX with "wine" at work, "pure" version under windows xp at home, etc...)
My foobar version is 1.2.1 All other pitches under foobar with other plugins and audio files are 100% correct... But not .ay files with GEP.
Known fact? Is there some extra setting somewhere to fix it manually?

Greetings!

Title: Game Emu Player (foo_gep) by kode54
Post by: friguron on 2013-01-22 16:24:29
Hi, some more investigation with Vortex Player II has lead me to (I don't know if correct) conclusions. Apparently, VT-II has some internal emulation parameters which lead me to the correct pitch. Look:

http://friguron.dyndns.org/misc/vt_II_params.png (http://friguron.dyndns.org/misc/vt_II_params.png)

-Many .ay files I was correctly playing with GEP some months/versions ago, were spectrum/pentagon .ay files (if such distinction can be made for .ay files).
-These .ay files are the ones which have started to sound wrongly pitched inside GEP.
-If I change VT-II chip frequency from 1.7 to 3.5 Mhz, then pitch from .stc files (the ones VT-II play) sounds doubled (like in GEP !)

So is it ok to think that the internal frequency of the emulated AY-3-8910 chip controls the pitch??

Is pitch for .ay files inside GEP controlled by the "AY-3-8910" emulated chip frequency? If so, is it locked on 3.5 Mhz ?

Am I completely wrong?
Title: Game Emu Player (foo_gep) by kode54
Post by: Rollin on 2013-02-02 09:50:53
When playing rip from "3 Ninjas Kick Back" ( http://snesmusic.org/v2/profile.php?profil...&selected=5 (http://snesmusic.org/v2/profile.php?profile=set&selected=5) ), there are audible clicks (especially noticeable on tracks "Secret Cave" and "The Hospital"). Can this be foo_gep fault or this is just bad rip?
When playing with foo_snesapu these clicks are not present (or at least not audible).
Title: Game Emu Player (foo_gep) by kode54
Post by: CaptainZana on 2013-02-06 20:10:53
Been using this since April 2012 (probably before) and i have been using it to work and toy with songs a lot (you may have heard anything of mine, under the name ZanaGB or MacWii at YT) Anyway. I found this player perfect for 2 essential features. Channel Muting, and Playback Speed alteration.

Those 2 features broke on the first 2013 update... For the VGM playback, at least. Please. Revert the VGM playback system to however it was before the January update.

You know, when you could change between songs without crashing, or slowing down the playback speed withoug the music getting horridly wrong, before crashing as well. and when you could also SIMPLY export any VGM into a wav and it would sound NICE, not like if it came from hell.

SPC playback seems to work fine. so you somehow screwed it up with VGM.

I hope this gets fixed soon.

Attently. a quite enraged user that considered GEP perfect for 10 months until you somehow went backwards with this update.

I hope a crash dump can somewhat be useful:

Code: [Select]
 Illegal operation:
Code: C0000005h, flags: 00000000h, address: 76FCE41Bh
Access violation, operation: write, address: 00300030h

Call path:
playback_process entry

Code bytes (76FCE41Bh):
76FCE3DBh:  83 D1 01 81 E3 FF 7F 00 00 66 3B 5E 14 0F 84 D3
76FCE3EBh:  5E 00 00 8B 45 E0 8B 55 E4 0F AC D0 10 66 89 47
76FCE3FBh:  08 2B 7D F4 33 C0 C1 EF 03 0F A4 F8 10 C1 E7 10
76FCE40Bh:  C1 EA 10 0B DF 0B C8 8B 06 C7 45 F8 01 00 00 00
76FCE41Bh:  89 30 8B 45 E0 8B 55 E4 8D 7E 08 F0 0F C7 0F 3B
76FCE42Bh:  45 E0 0F 85 48 6D 03 00 3B 55 E4 0F 85 3F 6D 03
76FCE43Bh:  00 66 83 7D E0 00 0F 84 0E 4A 00 00 83 7D F8 03
76FCE44Bh:  0F 84 5C 8F 00 00 5F 5E B0 01 5B C9 C3 8B DF E9

Stack (05B9E888h):
05B9E868h:  00000000 FFFFFD34 000002E4 FFFFFD34
05B9E878h:  000002CC 00000019 00000000 0000009D
05B9E888h:  00000000 03F70000 045E36C8 000000E8
05B9E898h:  01010000 00340030 00390030 05B9E944
05B9E8A8h:  05B9E944 770171D5 00300030 00000001
05B9E8B8h:  045E36C0 05B9E8D4 76FCE023 045A9940
05B9E8C8h:  045A99AC 00000001 045E36C0 05B9E8E8
05B9E8D8h:  759E14DD 03F70000 00000000 045E36C8
05B9E8E8h:  05B9E8FC 6B423805 03F70000 00000000
05B9E8F8h:  045E36C8 05B9E950 6B3F9CB3 045E36C8
05B9E908h:  045A9928 045A9940 00000000 6B3EB5A5
05B9E918h:  04570BD8 045A9238 6B3F141F 00000000
05B9E928h:  04570BD8 04570BE0 6B3DDC1F 00000001
05B9E938h:  00000000 04570BD8 0088F875 05B9E9A4
05B9E948h:  6B437974 00000003 05B9FA64 6B3DB2C5
05B9E958h:  04570BE0 05B9FA58 0018E378 0088E3C3
05B9E968h:  05B9FA58 0018E2F0 0088F883 009271A7
05B9E978h:  05B9FA58 05B9EC14 05B9E990 05B9FA58
05B9E988h:  0088F875 05B9FA64 05B9E9BC 00925FC5
05B9E998h:  0088F875 05B9FA58 00000100 05B9EA14

Registers:
EAX: 00300030, EBX: C6D20031, ECX: 003900B5, EDX: 00000039
ESI: 0012E766, EDI: C6D20000, EBP: 05B9E8BC, ESP: 05B9E888

Crash location:
Module: ntdll
Offset: 2E41Bh
Symbol: "RtlInitUnicodeString" (+1F3h)

Loaded modules:
foobar2000   loaded at 00810000h - 009CC000h
ntdll loaded at 76FA0000h - 77120000h
kernel32 loaded at 759D0000h - 75AE0000h
KERNELBASE   loaded at 76690000h - 766D7000h
COMCTL32 loaded at 71FD0000h - 7216E000h
msvcrt   loaded at 764C0000h - 7656C000h
GDI32 loaded at 75710000h - 757A0000h
USER32   loaded at 75870000h - 75970000h
ADVAPI32 loaded at 75E60000h - 75F00000h
sechost   loaded at 75450000h - 75469000h
RPCRT4   loaded at 76220000h - 76310000h
SspiCli   loaded at 74680000h - 746E0000h
CRYPTBASE loaded at 74670000h - 7467C000h
LPK   loaded at 76060000h - 7606A000h
USP10 loaded at 75670000h - 7570D000h
SHLWAPI   loaded at 76310000h - 76367000h
DSOUND   loaded at 72230000h - 722A2000h
ole32 loaded at 75F00000h - 7605C000h
WINMM loaded at 73CB0000h - 73CE2000h
POWRPROF loaded at 72200000h - 72225000h
SETUPAPI loaded at 76070000h - 7620D000h
CFGMGR32 loaded at 757A0000h - 757C7000h
OLEAUT32 loaded at 75AE0000h - 75B6F000h
DEVOBJ   loaded at 75BD0000h - 75BE2000h
UxTheme   loaded at 73C30000h - 73CB0000h
SHELL32   loaded at 74800000h - 7544A000h
zlib1 loaded at 62E80000h - 62E9E000h
shared   loaded at 6B5A0000h - 6B5CB000h
imagehlp loaded at 75E30000h - 75E5A000h
dbghelp   loaded at 73FD0000h - 740BB000h
COMDLG32 loaded at 75D10000h - 75D8B000h
CRYPT32   loaded at 763A0000h - 764BE000h
MSASN1   loaded at 76210000h - 7621C000h
Secur32   loaded at 72320000h - 72328000h
gdiplus   loaded at 72FF0000h - 73180000h
WINHTTP   loaded at 6D740000h - 6D798000h
webio loaded at 6D6F0000h - 6D73F000h
IMM32 loaded at 75B70000h - 75BD0000h
MSCTF loaded at 75BF0000h - 75CBC000h
ingame   loaded at 10000000h - 1018D000h
foo_sid   loaded at 6B530000h - 6B594000h
foo_gep   loaded at 6B3D0000h - 6B528000h
MSIMG32   loaded at 73D80000h - 73D85000h
foo_dsp_eq   loaded at 6B390000h - 6B3C6000h
foo_dumb loaded at 6B2F0000h - 6B389000h
foo_dsp_std   loaded at 6B2B0000h - 6B2E5000h
foo_rgscan   loaded at 6B260000h - 6B2AC000h
foo_cdda loaded at 6B210000h - 6B25F000h
foo_input_std loaded at 6AED0000h - 6B03D000h
MSACM32   loaded at 724E0000h - 724F4000h
avcodec-54   loaded at 6A0C0000h - 6A394000h
avutil-51 loaded at 68B80000h - 68BB8000h
foo_converter loaded at 6B190000h - 6B20E000h
foo_input_usf loaded at 6AE50000h - 6AECF000h
MSVCR90   loaded at 73D90000h - 73E33000h
foo_ui_std   loaded at 6ACA0000h - 6AD89000h
foo_albumlist loaded at 6ADF0000h - 6AE4C000h
CLBCatQ   loaded at 75D90000h - 75E13000h
MMDevApi loaded at 71DC0000h - 71DF9000h
PROPSYS   loaded at 73410000h - 73505000h
AUDIOSES loaded at 70E80000h - 70EB6000h
sud   loaded at 6ABE0000h - 6AC9B000h
ADVPACK   loaded at 6B5D0000h - 6B5FE000h
VERSION   loaded at 72410000h - 72419000h
DUI70 loaded at 73840000h - 738F2000h
CRYPTSP   loaded at 72490000h - 724A6000h
rsaenh   loaded at 72450000h - 7248B000h
RpcRtRemote   loaded at 74320000h - 7432E000h
avrt loaded at 71DB0000h - 71DB7000h
ntmarta   loaded at 71D50000h - 71D71000h
WLDAP32   loaded at 75CC0000h - 75D05000h
explorerframe loaded at 73930000h - 73A9F000h
DUser loaded at 73900000h - 7392F000h
WindowsCodecs loaded at 623C0000h - 624BB000h
apphelp   loaded at 71C10000h - 71C5C000h
EhStorShell   loaded at 63290000h - 632C1000h
ntshrui   loaded at 72570000h - 725E0000h
srvcli   loaded at 72180000h - 72199000h
cscapi   loaded at 71D80000h - 71D8B000h
slc   loaded at 72560000h - 7256A000h
dwmapi   loaded at 73C10000h - 73C23000h
msls31   loaded at 6C0B0000h - 6C0DB000h
tiptsf   loaded at 6AB80000h - 6ABD8000h
profapi   loaded at 72420000h - 7242B000h
xmllite   loaded at 72FC0000h - 72FEF000h
StructuredQuery   loaded at 6B0A0000h - 6B0FC000h
actxprxy loaded at 63A90000h - 63ADE000h
ieproxy   loaded at 6B060000h - 6B093000h
thumbcache   loaded at 6B170000h - 6B186000h
PSAPI loaded at 75E20000h - 75E25000h
SHDOCVW   loaded at 70FA0000h - 70FCE000h
ieframe   loaded at 6C0E0000h - 6CA2D000h
OLEACC   loaded at 71000000h - 7103C000h
iertutil loaded at 754B0000h - 75668000h
SearchFolder loaded at 6AAE0000h - 6AB80000h
NetworkExplorer   loaded at 6A7A0000h - 6A938000h
samcli   loaded at 70E50000h - 70E5F000h
SAMLIB   loaded at 740C0000h - 740D2000h
netutils loaded at 73F70000h - 73F79000h
LINKINFO loaded at 73400000h - 73409000h
MPR   loaded at 70E10000h - 70E22000h
drprov   loaded at 741B0000h - 741B8000h
WINSTA   loaded at 721A0000h - 721C9000h
ntlanman loaded at 6B130000h - 6B144000h
davclnt   loaded at 6B110000h - 6B127000h
DAVHLPR   loaded at 6B160000h - 6B168000h
wkscli   loaded at 6AD90000h - 6AD9F000h
PortableDeviceApi loaded at 6AA50000h - 6AAD9000h
WINTRUST loaded at 76370000h - 7639D000h
PortableDeviceTypes   loaded at 6ADC0000h - 6ADEB000h
EhStorAPI loaded at 6A9A0000h - 6A9C2000h
urlmon   loaded at 746E0000h - 747F1000h
WININET   loaded at 76570000h - 7668B000h
Normaliz loaded at 76F70000h - 76F73000h
asycfilt loaded at 6ADA0000h - 6ADB4000h

Stack dump analysis:
Address: 770171D5h (ntdll+771D5h), symbol: "WinSqmSetIfMaxDWORD" (+31h)
Address: 76FCE023h (ntdll+2E023h), symbol: "RtlFreeHeap" (+7Eh)
Address: 759E14DDh (kernel32+114DDh), symbol: "HeapFree" (+14h)
Address: 6B423805h (foo_gep+53805h), symbol: "foobar2000_get_interface" (+5745h)
Address: 6B3F9CB3h (foo_gep+29CB3h)
Address: 6B3EB5A5h (foo_gep+1B5A5h)
Address: 6B3F141Fh (foo_gep+2141Fh)
Address: 6B3DDC1Fh (foo_gep+DC1Fh)
Address: 0088F875h (foobar2000+7F875h)
Address: 6B437974h (foo_gep+67974h), symbol: "foobar2000_get_interface" (+198B4h)
Address: 6B3DB2C5h (foo_gep+B2C5h)
Address: 0088E3C3h (foobar2000+7E3C3h)
Address: 0088F883h (foobar2000+7F883h)
Address: 009271A7h (foobar2000+1171A7h)
Address: 0088F875h (foobar2000+7F875h)
Address: 00925FC5h (foobar2000+115FC5h)
Address: 0088F875h (foobar2000+7F875h)
Address: 00925CB3h (foobar2000+115CB3h)
Address: 009761CCh (foobar2000+1661CCh)
Address: 00926864h (foobar2000+116864h)
Address: 009761CCh (foobar2000+1661CCh)
Address: 0088F875h (foobar2000+7F875h)
Address: 00976190h (foobar2000+166190h)
Address: 00976130h (foobar2000+166130h)
Address: 00926657h (foobar2000+116657h)
Address: 0088F875h (foobar2000+7F875h)
Address: 00919F00h (foobar2000+109F00h)
Address: 00926BEBh (foobar2000+116BEBh)
Address: 009761CCh (foobar2000+1661CCh)
Address: 009761CCh (foobar2000+1661CCh)
Address: 00926F76h (foobar2000+116F76h)
Address: 009761CCh (foobar2000+1661CCh)
Address: 0095B93Ch (foobar2000+14B93Ch)
Address: 00976190h (foobar2000+166190h)
Address: 0095B93Ch (foobar2000+14B93Ch)
Address: 009761A0h (foobar2000+1661A0h)
Address: 00976130h (foobar2000+166130h)
Address: 0092716Fh (foobar2000+11716Fh)
Address: 009761CCh (foobar2000+1661CCh)
Address: 00925CA3h (foobar2000+115CA3h)
Address: 009761CCh (foobar2000+1661CCh)
Address: 770171D5h (ntdll+771D5h), symbol: "WinSqmSetIfMaxDWORD" (+31h)
Address: 009761CCh (foobar2000+1661CCh)
Address: 76FFB459h (ntdll+5B459h), symbol: "LdrRemoveLoadAsDataTable" (+D50h)
Address: 76FFB46Dh (ntdll+5B46Dh), symbol: "LdrRemoveLoadAsDataTable" (+D64h)
Address: 76FFB42Bh (ntdll+5B42Bh), symbol: "LdrRemoveLoadAsDataTable" (+D22h)
Address: 0093540Dh (foobar2000+12540Dh)
Address: 76FFB3CEh (ntdll+5B3CEh), symbol: "LdrRemoveLoadAsDataTable" (+CC5h)
Address: 0093540Dh (foobar2000+12540Dh)
Address: 759E11A9h (kernel32+111A9h), symbol: "SetLastError" (+0h)
Address: 6B3DE53Eh (foo_gep+E53Eh)
Address: 6B3DE559h (foo_gep+E559h)
Address: 0097D708h (foobar2000+16D708h)
Address: 7314C4AEh (gdiplus+15C4AEh), symbol: "GdipCreateSolidFill" (+11542Fh)
Address: 76FB0133h (ntdll+10133h), symbol: "KiUserExceptionDispatcher" (+Fh)
Address: 7669C41Fh (KERNELBASE+C41Fh), symbol: "RaiseException" (+58h)
Address: 0095B964h (foobar2000+14B964h)
Address: 75890873h (USER32+20873h), symbol: "PeekMessageW" (+2B9h)
Address: 759E11A9h (kernel32+111A9h), symbol: "SetLastError" (+0h)
Address: 75890B4Ah (USER32+20B4Ah), symbol: "MsgWaitForMultipleObjects" (+0h)
Address: 0092767Dh (foobar2000+11767Dh)
Address: 0088DEAEh (foobar2000+7DEAEh)
Address: 0088E4CCh (foobar2000+7E4CCh)
Address: 759E11A9h (kernel32+111A9h), symbol: "SetLastError" (+0h)
Address: 75890B4Ah (USER32+20B4Ah), symbol: "MsgWaitForMultipleObjects" (+0h)
Address: 7669C41Fh (KERNELBASE+C41Fh), symbol: "RaiseException" (+58h)
Address: 0088E4CCh (foobar2000+7E4CCh)
Address: 7669C41Fh (KERNELBASE+C41Fh), symbol: "RaiseException" (+58h)
Address: 0095B964h (foobar2000+14B964h)
Address: 75890873h (USER32+20873h), symbol: "PeekMessageW" (+2B9h)
Address: 759E11A9h (kernel32+111A9h), symbol: "SetLastError" (+0h)
Address: 75890B4Ah (USER32+20B4Ah), symbol: "MsgWaitForMultipleObjects" (+0h)
Address: 0092767Dh (foobar2000+11767Dh)
Address: 0088DEAEh (foobar2000+7DEAEh)
Address: 00919762h (foobar2000+109762h)
Address: 0095B964h (foobar2000+14B964h)
Address: 00891332h (foobar2000+81332h)
Address: 0095B964h (foobar2000+14B964h)
Address: 00953520h (foobar2000+143520h)
Address: 009493D0h (foobar2000+1393D0h)
Address: 008905F0h (foobar2000+805F0h)
Address: 009493D0h (foobar2000+1393D0h)
Address: 6AE32028h (foo_albumlist+42028h), symbol: "foobar2000_get_interface" (+1B168h)
Address: 6AE32028h (foo_albumlist+42028h), symbol: "foobar2000_get_interface" (+1B168h)
Address: 76FD0093h (ntdll+30093h), symbol: "LdrGetDllHandleEx" (+35Bh)
Address: 76FCE1B2h (ntdll+2E1B2h), symbol: "RtlFreeAnsiString" (+6Ch)
Address: 76FD0078h (ntdll+30078h), symbol: "LdrGetDllHandleEx" (+340h)
Address: 76FCFD17h (ntdll+2FD17h), symbol: "LdrGetDllHandle" (+0h)
Address: 73D91900h (MSVCR90+1900h)
Address: 770A01A0h (ntdll+1001A0h), symbol: "NlsAnsiCodePage" (+190h)
Address: 6AE32028h (foo_albumlist+42028h), symbol: "foobar2000_get_interface" (+1B168h)
Address: 76FD0000h (ntdll+30000h), symbol: "LdrGetDllHandleEx" (+2C8h)
Address: 770A01A0h (ntdll+1001A0h), symbol: "NlsAnsiCodePage" (+190h)
Address: 73D919C4h (MSVCR90+19C4h)
Address: 770A01A0h (ntdll+1001A0h), symbol: "NlsAnsiCodePage" (+190h)
Address: 73D919C4h (MSVCR90+19C4h)
Address: 770171D5h (ntdll+771D5h), symbol: "WinSqmSetIfMaxDWORD" (+31h)
Address: 76FD0078h (ntdll+30078h), symbol: "LdrGetDllHandleEx" (+340h)
Address: 76FCFD2Fh (ntdll+2FD2Fh), symbol: "LdrGetDllHandle" (+18h)
Address: 766A1A35h (KERNELBASE+11A35h), symbol: "GetModuleFileNameW" (+1A9h)
Address: 766A1AC0h (KERNELBASE+11AC0h), symbol: "GetModuleFileNameW" (+234h)
Address: 6AE32028h (foo_albumlist+42028h), symbol: "foobar2000_get_interface" (+1B168h)
Address: 759D0000h (kernel32+0h)
Address: 766C6FD0h (KERNELBASE+36FD0h), symbol: "IsNLSDefinedString" (+4D4h)
Address: 766A1AC0h (KERNELBASE+11AC0h), symbol: "GetModuleFileNameW" (+234h)
Address: 766C737Eh (KERNELBASE+3737Eh), symbol: "IsNLSDefinedString" (+882h)
Address: 766A1CFBh (KERNELBASE+11CFBh), symbol: "GetModuleFileNameW" (+46Fh)
Address: 6ADF0000h (foo_albumlist+0h)
Address: 6AE32028h (foo_albumlist+42028h), symbol: "foobar2000_get_interface" (+1B168h)
Address: 759D0000h (kernel32+0h)
Address: 73D919C4h (MSVCR90+19C4h)
Address: 759D0000h (kernel32+0h)
Address: 759D0000h (kernel32+0h)
Address: 74672B46h (CRYPTBASE+2B46h), symbol: "SystemFunction036" (+1856h)
Address: 74672B80h (CRYPTBASE+2B80h), symbol: "SystemFunction036" (+1890h)
Address: 759D0000h (kernel32+0h)
Address: 00959160h (foobar2000+149160h)
Address: 00959160h (foobar2000+149160h)
Address: 00959160h (foobar2000+149160h)

Environment:
App: foobar2000 v1.2.2
UI: Default User Interface 0.9.5

Components:
Core (2013-01-18 15:31:20 UTC)
foobar2000 core 1.2.2
foo_albumlist.dll (2013-01-18 15:30:04 UTC)
Album List 4.5
foo_cdda.dll (2013-01-18 15:29:30 UTC)
CD Audio Decoder 3.0
foo_converter.dll (2013-01-18 15:29:34 UTC)
Converter 1.5
foo_dsp_eq.dll (2013-01-18 15:30:04 UTC)
Equalizer 1.0
foo_dsp_std.dll (2013-01-18 15:29:58 UTC)
Standard DSP Array 1.2
foo_dumb.dll (2013-01-24 22:08:09 UTC)
DUMB module decoder 1.0.5
foo_gep.dll (2013-02-06 19:55:20 UTC)
Game Emu Player 1.160
foo_input_std.dll (2013-01-18 15:29:10 UTC)
Standard Input Array 1.0
foo_input_usf.dll (2012-12-28 18:53:34 UTC)
LazyUSF 2.1 (Build Jun 26 2011)
foo_rgscan.dll (2013-01-18 15:29:44 UTC)
ReplayGain Scanner 2.1.2
foo_sid.dll (2013-01-18 20:34:41 UTC)
sidplay2 1.29
foo_ui_std.dll (2013-01-18 15:29:12 UTC)
Default User Interface 0.9.5

Recent events:
Opening track for playback: "H:\ZanaGB\VGM\Combat Cars\Combat Cars - 02 - Main Menu.vgz"
Opening track for playback: "H:\ZanaGB\VGM\Combat Cars\Combat Cars - 03 - Character Select.vgz"
Opening track for playback: "H:\ZanaGB\VGM\Combat Cars\Combat Cars - 03 - Character Select.vgz"
Opening track for playback: "H:\ZanaGB\VGM\Combat Cars\Combat Cars - 03 - Character Select.vgz"
Track converted successfully.
Total encoding time: 0:00.967, 23.98x realtime
Opening track for playback: "H:\ZanaGB\VGM\Combat Cars\Combat Cars - 03 - Character Select.vgz"
Opening track for playback: "H:\ZanaGB\VGM\Combat Cars\Combat Cars - 04 - Beach Track.vgz"
Opening track for playback: "H:\ZanaGB\VGM\Combat Cars\Combat Cars - 03 - Character Select.vgz"
Opening track for playback: "H:\ZanaGB\VGM\Combat Cars\Combat Cars - 03 - Character Select.vgz"


Machine specifications:
OS: Windows 6.1.7601 Service Pack 1 x64
CPU: Intel® Pentium® Dual  CPU  E2220  @ 2.40GHz, features: MMX SSE SSE2 SSE3
Audio: Altavoces (VIA High Definition Audio); SPDIF Interface (TX0) (VIA High Definition Audio)
That game uses VGM 1.50. but the error seems to affect even the earliest games.
Title: Game Emu Player (foo_gep) by kode54
Post by: db1989 on 2013-02-06 20:54:48
Post large items within codeboxes, not between code tags. And ask yourself whether it is a good tactic to rant insultingly at the developer from whom you are requesting something as if he implemented a regression not only on purpose but also to annoy you personally.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-02-07 03:28:25
Sounds fine to me. Can you confirm in bsnes or on actual hardware?

EDIT: VGM tempo "fix" disabled, until I can do something better instead.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-02-07 03:41:15
Am I completely wrong?

Please forward any AY files which were affected incorrectly by this change, and try to confirm with another AY player. The changes I made corrected the pitch of several VGM rips, and appeared to have no effect on the few AY files I tested and had some frame of reference of how they sounded before the change.
Title: Game Emu Player (foo_gep) by kode54
Post by: mudlord on 2013-02-07 04:03:42
Post large items within codeboxes, not between code tags. And ask yourself whether it is a good tactic to rant insultingly at the developer from whom you are requesting something as if he implemented a regression not only on purpose but also to annoy you personally.


Depends on the developer. I for one, work much better on hostility.
Title: Game Emu Player (foo_gep) by kode54
Post by: CaptainZana on 2013-02-07 17:57:24
Well, Today's fix seems to work fine. Exports fine, and playback seems to be flawless again (not experienced that it crashes anymore when switching between songs on a playlist)

And. I was trully annoyed, for having updated, and finding that some things that worked fine. did not work anymore.

Thankfully, this was a quite quick fix. to be honest.

I am sorry for being quite harsh. but, well... yeah, it was an angering regression
Title: Game Emu Player (foo_gep) by kode54
Post by: db1989 on 2013-02-07 18:22:00
Great! As you can see, kode54 is a very fast developer and always pays attention to requests! I’m definitely glad that you reported it and that doing so paid off, and I understand that you were annoyed, but it’s best to understand that mistakes can happen unnoticed even to the best developers and consider your posts accordingly.

Of course, maybe be a bit more aggressive if you ever talk to mudlord, apparently.
Title: Game Emu Player (foo_gep) by kode54
Post by: friguron on 2013-02-07 21:06:18
Am I completely wrong?

Please forward any AY files which were affected incorrectly by this change, and try to confirm with another AY player. The changes I made corrected the pitch of several VGM rips, and appeared to have no effect on the few AY files I tested and had some frame of reference of how they sounded before the change.


In fact, I've tried to narrow down my .ay files to see what happens, and the only ones keeping their pitch intact are "monochannel/beeper" ones. The big majority, (several hundreds), all being "melodic"-AY files (3 channels square waves), sound exactly one octave up with GEP. I don't know if you want me to send any of them to you... I suppose not. BTW:
ZX Spectrum Sound Chip Emulator plays all of them correctly. As well as old versions of GEP (as far as I remember, it's only been 2 months or so the moment I noticed the change in GEP...)

Maybe I missconfigured something inside GEP? I can't remember having done it... There aren't many internal parameters to mess around...

Greetings...
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-02-08 00:55:27
I definitely broke it in the process of fixing something else. I'll just have to fix it a different way.

EDIT: Fixed, I think.
Title: Game Emu Player (foo_gep) by kode54
Post by: friguron on 2013-02-08 02:09:42
I definitely broke it in the process of fixing something else. I'll just have to fix it a different way.

EDIT: Fixed, I think.


Yes you did! Version 1.162 plays perfectly pitched .ay files again!!
Title: Game Emu Player (foo_gep) by kode54
Post by: Samus Aran on 2013-02-08 20:42:45
(I have not read the entire thread, so if this problem has been solved on one of the past pages, forgive me for not reading the solution)
For some reason, playback of supported files is slowed by about 50%. Here's one of the files I've been trying to play: http://www.shauninman.com/noisees/albums/A...20Densetsu.nsfe (http://www.shauninman.com/noisees/albums/Akumajou%20Densetsu.nsfe)
Of course, foobar's conversion feature is affected as well, here's how it sounds on my computer: http://i.peterwunder.de/vampirekiller.mp3 (http://i.peterwunder.de/vampirekiller.mp3)
Is that a bug in GEP or something I may accidentally have set somewhere?

Edit: I've had this problem in a past version of GEP (though I forgot which one exactly), but it persisted after updating to yesterday's latest version. No idea whether that bit of info helps.
Edit²: And also, I'm on Windows 8 Pro x64, using foobar 1.1.16.

Never mind, appearently I set the Tempo slider in the View > GEP control window to 75% some time ago. Shame on me. :<
Title: Game Emu Player (foo_gep) by kode54
Post by: friguron on 2013-02-15 20:50:27
I definitely broke it in the process of fixing something else. I'll just have to fix it a different way.

EDIT: Fixed, I think.


Yes you did! Version 1.162 plays perfectly pitched .ay files again!!


Mmpf... I would say it's not working 100%. Or maybe GEP never did... As far as I can remember, there were some .ay files sounding OK in the past, which sound strage now (1.162).
For example this file I'm attaching here, sounds 100% ok with ZX Spectrum Sound Chip Emulator: http://friguron.dyndns.org/misc/gep/Plotting.ay (http://friguron.dyndns.org/misc/gep/Plotting.ay)

With GEP, it sounds "muffed", with every noted played with a quick attack, and then a still quicker decay...
Title: Game Emu Player (foo_gep) by kode54
Post by: Vagabond on 2013-04-09 01:55:18
Anyone else having issues opening RSN files from the snesmusic.org collection?

Unable to open item for playback (Unsupported file format):
"M:\Music\VGM\Super Nintendo Entertainment System\Waterworld [wawo].rsn"
Title: Game Emu Player (foo_gep) by kode54
Post by: Vagabond on 2013-04-09 23:01:45
^^^

Never mind. A simple reinstall and deletion of configuration files fixed it.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-04-10 00:01:44
RSN files require the normal Archive Reader component, or foo_unpack, in addition to foo_gep.
Title: Game Emu Player (foo_gep) by kode54
Post by: friguron on 2013-04-30 23:25:50
I definitely broke it in the process of fixing something else. I'll just have to fix it a different way.

EDIT: Fixed, I think.


Yes you did! Version 1.162 plays perfectly pitched .ay files again!!


Mmpf... I would say it's not working 100%. Or maybe GEP never did... As far as I can remember, there were some .ay files sounding OK in the past, which sound strage now (1.162).
For example this file I'm attaching here, sounds 100% ok with ZX Spectrum Sound Chip Emulator: http://friguron.dyndns.org/misc/gep/Plotting.ay (http://friguron.dyndns.org/misc/gep/Plotting.ay)

With GEP, it sounds "muffed", with every noted played with a quick attack, and then a still quicker decay...


Plotting.ay still plays wrongly with GEP version 1.163... Known fact?
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-04-30 23:50:26
Oops, missed that post. I don't know if any version played that correctly, actually.
Title: Game Emu Player (foo_gep) by kode54
Post by: Samus Aran on 2013-06-18 21:51:58
When opening the Fortress of Fear GBS, only the first subsong(?) is played, even though there are several others in the file.
I used this one (http://www.zophar.net/music/gbs/fortress-of-fear.html). Is there a way to fix that?


SIGH, disregard this. I don't know how, but after restarting foobar and opening the file again, it worked. Stupid me.
Title: Game Emu Player (foo_gep) by kode54
Post by: blm07 on 2013-08-08 18:56:07
Hey, I'm really digging this plugin, but I'm wondering if I'm the only one out there who likes how NotSoFatso played nsf / nsfe files in stereo. I know that is not how the original NES was, but I still like the idea and got hooked on it. I'm not sure, but I think it just separated the channels of the NSF so that some went to left and some went to right. Is there any way that that feature could be added to this plugin? Basically, it's the only thing that I use Winamp for anymore, which is sad cause I love Winamp, but it's almost time for me to let it go 

You can get the source here if that helps:
http://slickproductions.org/notsofatso.php (http://slickproductions.org/notsofatso.php)
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-08-09 01:35:57
Simple auto panning will be used if you enable Effects and set the Echo Depth to something other than 0.
Title: Game Emu Player (foo_gep) by kode54
Post by: blm07 on 2013-08-09 07:52:09
Simple auto panning will be used if you enable Effects and set the Echo Depth to something other than 0.

But will that affect tracks that are already in stereo?
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-08-09 07:58:03
It may add some echo, but it shouldn't change the panning in a very noticeable way.
Title: Game Emu Player (foo_gep) by kode54
Post by: blm07 on 2013-08-10 06:31:57
It may add some echo, but it shouldn't change the panning in a very noticeable way.

Is there any way to make it so the echo only affects certain systems? I really only want it for NES games.
Title: Game Emu Player (foo_gep) by kode54
Post by: Bratman on 2013-08-10 20:44:56
What's the quality like on this component? Some video game albums sound quieter than ones I've downloaded. A link to the past sounds naff using GEP. Is that to do with the spc file or GEP? Some albums sound better like ghouls and ghosts and zombies ate my neighbors. Donkey kong country 2 sounds louder with the gamerip i downloaded, the bass has more thump.
Title: Game Emu Player (foo_gep) by kode54
Post by: StrawHat on 2013-08-13 08:12:15
Pardon my rather noob comment (I'm new here & I couldn't find if what I'm about to ask has already been previously answered) - Would it be at all possible for SPC files to have an option for the sample rate to be upped from 32k to (at least) 44100 in GEP? (preferably 48k would be ideal) Not having this option is the only thing keeping me from un-installing WinAmp & it's plugin. Your efforts are greatly appreciated Kode. Thank you very much.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-08-14 04:32:38
What's the quality like on this component? Some video game albums sound quieter than ones I've downloaded. A link to the past sounds naff using GEP. Is that to do with the spc file or GEP? Some albums sound better like ghouls and ghosts and zombies ate my neighbors. Donkey kong country 2 sounds louder with the gamerip i downloaded, the bass has more thump.


The SPC player used by this component is designed to be binary accurate to the DSP synthesizer component in the actual system. If you want equal volume, ReplayGain scan your albums and they will be retagged with volume correction data.


Pardon my rather noob comment (I'm new here & I couldn't find if what I'm about to ask has already been previously answered) - Would it be at all possible for SPC files to have an option for the sample rate to be upped from 32k to (at least) 44100 in GEP? (preferably 48k would be ideal) Not having this option is the only thing keeping me from un-installing WinAmp & it's plugin. Your efforts are greatly appreciated Kode. Thank you very much.


And again, calling to the hardware accuracy, this emulator is only capable of producing a 32KHz signal. I could employ the resampler already integrated into the component to upsample to whatever sample rate you have configured, but that would not add any tonal information to the signal.

I could also go to great lengths to change the emulator to be a high level synthesizer, similar to SNESAPU or ZSNES, interpolating envelope transitions and resampling to a higher output rate, but then it would no longer be an accurate representation of the original hardware.

Besides, why go to that length, when I can merely point you to [a href='index.php?showtopic=82298']this component[/a], which uses SNESAPU in foobar2000, including a DLL copying hack to support multiple instances of the docoder. Then you merely untick the SPC checkbox in foo_gep's preferences.

Or, if tonal content is not your problem, you could simply add a resampler to your DSP chain and set it to 48KHz.
Title: Game Emu Player (foo_gep) by kode54
Post by: Nahkranoth on 2013-08-23 16:31:22
Hi kode!

Thought I'd report on this issue:

GYM files should be played without problems with foo_gep, but for some reason it won't even add them to playlist.

Here's the whole bunch for reference:

ftp://modland.ziphoid.com/pub/modules/Megadrive (http://ftp://modland.ziphoid.com/pub/modules/Megadrive) GYM/

Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-08-24 01:07:01
GYM files which contain packed data are currently unsupported. You could try locating VGM versions of those soundtracks on Project 2612 in the mean time. You could also save me some time in implementing that feature by pointing me to some documentation and/or open source software which implements it.

(This is not to be confused with the form of compression which is supported by foo_gep, namely if the entire files are compressed using gzip, but otherwise contain uncompressed data. Also supported are renamed 7-zip archives with a .vgm7z extension.)
Title: Game Emu Player (foo_gep) by kode54
Post by: Nahkranoth on 2013-08-24 22:15:22
GYM files which contain packed data are currently unsupported. You could try locating VGM versions of those soundtracks on Project 2612 in the mean time. You could also save me some time in implementing that feature by pointing me to some documentation and/or open source software which implements it.


Those are Genecyst Sega Genesis audio log files. That emulator is long dead, but there is source code for Winamp in-gym plugin here (http://code.google.com/p/in-gym/source/checkout).

Hope it helps.

Title: Game Emu Player (foo_gep) by kode54
Post by: Pulstar on 2013-09-09 09:10:02
Some VGMs definitely are messed up now.

http://www55.zippyshare.com/v/87153604/file.html (http://www55.zippyshare.com/v/87153604/file.html)
https://www.youtube.com/watch?v=AGIkRS6TF-4 (https://www.youtube.com/watch?v=AGIkRS6TF-4)
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-09-09 20:43:22
Why is that M4A in mono? And what exactly is messed up?

I guess I'll just roll back the last series of changes.

I can probably implement the same functionality into the existing FIR resampler in a much smarter way. Namely, adjusting its sinc pulse generator to use a Lanczos windowing function instead of the Kaiser or whatever it uses now.
Title: Game Emu Player (foo_gep) by kode54
Post by: Pulstar on 2013-09-10 13:08:32
Apologies, and I appreciate your effort over the years. The timing was messed up but now it's fixed. I guess with this format we'll never attain perfection.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-09-10 15:15:23
It's not the format but the player.
Title: Game Emu Player (foo_gep) by kode54
Post by: koishi on 2013-09-11 02:22:51
kode! thanks for being the reason to stop using winamp.

i'm sure you're gonna say no forever, but can i get an interpolation:none option for spc? i legitimately prefer the lack of interpolation (usually), and i think that the inclusion of other interpolation schemes should justify one that simply has no interpolation.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-09-11 03:54:27
I'll add it as soon as I get back from my little vacation.
Title: Game Emu Player (foo_gep) by kode54
Post by: koishi on 2013-09-11 17:40:01
what?! thank you so much! that right there is probably going to keep me away from winamp entirely, other than... chronotron.

oh wait... does foobar support .rar (.rsn) support? i couldn't find it anywhere.
Title: Game Emu Player (foo_gep) by kode54
Post by: db1989 on 2013-09-11 17:43:41
oh wait... does foobar support .rar (.rsn) support? i couldn't find it anywhere.
First result on Google for foobar2000 rar:
http://www.hydrogenaudio.org/forums/index....showtopic=93213 (http://www.hydrogenaudio.org/forums/index.php?showtopic=93213)
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-09-11 23:22:49
And foo_gep supports RSN and VGM7Z archives independent of any other archive reading components.
Title: Game Emu Player (foo_gep) by kode54
Post by: koishi on 2013-09-11 23:56:58
yeah i don't know what i was thinking, sorry. i just want to be free of winamp (even though i really like its style) and am rushing through everything for some reason
Title: Game Emu Player (foo_gep) by kode54
Post by: koishi on 2013-09-12 07:36:55
sorry for the dp, and really dumb, but can you add the "linear" interpolation scheme too, just to complete the set or whatever? i dunno, just one of those "if you're going to do all this..." type things

sorry for bugging the shit out of you guys lol
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-09-14 22:34:05
Done with the linear and nearest interpolation modes, enjoy your pain.
Title: Game Emu Player (foo_gep) by kode54
Post by: Googer on 2013-09-16 14:38:03
GYM files which contain packed data are currently unsupported. You could try locating VGM versions of those soundtracks on Project 2612 in the mean time. You could also save me some time in implementing that feature by pointing me to some documentation and/or open source software which implements it.

(This is not to be confused with the form of compression which is supported by foo_gep, namely if the entire files are compressed using gzip, but otherwise contain uncompressed data. Also supported are renamed 7-zip archives with a .vgm7z extension.)
Way back when I had written foo_gym (this of course predating foo_gep by several years and before VGM had taken over as the format of-choice for Genesis music rips - otherwise I wouldn't have bothered ), I found an implementation of support for compressed GYM's in kpigym (and its associated tool, gym_ezpk, which as I recall generates them from non-packed GYM files).  I'm not sure what license it's released under and I didn't feel like digging too deeply just now to figure it out but here (http://www.purose.net/befis/download/kmp/kpigym-1.0r10s.7z) you go.  IIRC (I didn't bother to browse the source just now), the GYM stream in compressed GYM's is compressed with zlib, and compressed DAC data in GYM's that have that compressed as well is bzlib2 compression.
Title: Game Emu Player (foo_gep) by kode54
Post by: Electric Keet on 2013-10-17 05:52:21
This has been plaguing me for quite some time, so let me finally overcome procrastination and ask here:

Am I the only one for whom NSF+M3U acts precisely like NSF alone?

GBS, KSS, and all other such formats seem to have no trouble finding their accompanying M3U playlists, and they come up with proper track names and lengths and orders and all that. Any proper NSFe will come up with the correct sequence of tracks and all data intact. It's only NSF that seems to suffer here, doubly frustrating because it's looking like NSF+M3U is becoming the choice for common use despite the existence of NSFe.

Any recommendations? Have I misconfigured something? Have I stumbled into a known issue? Or – best of all, in my humble opinion – would anyone know of an automated method of merging the relevant M3U data into an NSF to make an NSFe? (I'd rather not do it all by hand, certainly....)
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2013-10-17 18:29:01
Eyy Kode  =D
thx for all the yummy updates yesterday 
I LOVE updates(seeing all the amazing ways programs change and get better =D) it makes my day  ;^_^;

the code you shared with me on my zsnes topic(zsnes forum)..
work  out with the latest MinGW (well the latest update from the other day probably works I haven't tested it yet ) thx =D
Title: Game Emu Player (foo_gep) by kode54
Post by: pochaboo on 2013-10-25 09:41:27
Hello, I like your Game Emu Player plugin.
I have a bug report and a question though.

I use foobar2000 ver.1.2.9 and foo_gep ver.1.169.

Bug report:
When I play SPC soundtracks by foo_gep, almost 0.5 second introduction of some specific tracks is missing.
Their tracks are Great Battle 5 SPC set's track 15 Hotel Dada and track 18 Caverns & Mines.
I got the SPC set from http://snesmusic.org/v2/profile.php?profil...;selected=14359 (http://snesmusic.org/v2/profile.php?profile=set&selected=14359).

When I play them by foo_snesapu, there is no problem.


Question:
Playing SPC by Sinc Interpolation, is low-pass filter used?

I think foo_gep's sound isn't as "bright" as foo_snesapu when setting is Sinc Interpolation.
But, boosting +2~3dB around 4kHz~12kHz by my favorite equalizer, the sound becomes as "bright" as foo_snesapu.

The above experience lead to my stupid question (^^).
If my guess is right, could you add an option of low-pass filter OFF?

I'm sorry for my poor English.
Thanks!
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-10-25 22:46:20
There is a problem, because I cannot even get foo_snesapu to work without crashing on playback.

As for the resampler sounding different, there's nothing I can really do about that. It should sound similar to using 32KHz with SNESAPU.

If you don't like it, stop complaining and just use foo_snesapu.
Title: Game Emu Player (foo_gep) by kode54
Post by: pochaboo on 2013-10-26 04:34:26
Thank you for your quick reply!!

Sorry for not explaining enough.
I use TWO foobar2000, one is installer version and the other is portable version(both are ver.1.2.9).
I only add foo_snesapu to installer version, and only add foo_gep to portable version.
I got foo_snesapu from http://foobar2000.xrea.jp/up/ (http://foobar2000.xrea.jp/up/). I downloaded up1189.7z.
I got snesapu.dll from http://dgrfactory.jp/spcplay/index.html (http://dgrfactory.jp/spcplay/index.html). I downloaded 2013/07/14 - v2.16.3.

Also, playing the above tracks(track 15 Hotel Dada and track 18 Caverns & Mines) by Alpha-II SPC Player in Winamp,  the intro is NOT missing.

As for the resampler sounding different, there's nothing I can really do about that. It should sound similar to using 32KHz with SNESAPU.

If you don't like it, stop complaining and just use foo_snesapu.

Thank you for your definite answer!
Because I like foo_gep's accurate sound, I will use both foo_gep and foo_snesapu for different purposes(^^).

Thanks!!
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-10-26 11:38:19
I updated the emulator core with the latest version of the accuracy SMP core and alt/blargg DSP core from higan, the multi-system emulator. It cannot get much more accurate than this. And they're still broken. So I suggest you take it up with snesmusic.org and tell them their rips aren't likely to play back properly on actual hardware, either.

As for the sinc mode not sounding as sharp as SNESAmp, it is likely because of two reasons. For one, I don't use the same sinc table as them. And for two, I'm locked to 32000Hz, and nothing is going to change that.
Title: Game Emu Player (foo_gep) by kode54
Post by: pochaboo on 2013-10-27 03:13:38
I updated the emulator core with the latest version of the accuracy SMP core and alt/blargg DSP core from higan, the multi-system emulator. It cannot get much more accurate than this. And they're still broken. So I suggest you take it up with snesmusic.org and tell them their rips aren't likely to play back properly on actual hardware, either.

Oh, now I see!
Thank you very much for all your hard work.

Yes, anything you say.
Sadly, it seems that some spc tracks in snesmusic.org are broken...

As for the sinc mode not sounding as sharp as SNESAmp, it is likely because of two reasons. For one, I don't use the same sinc table as them. And for two, I'm locked to 32000Hz, and nothing is going to change that.

Thank you for the detailed explanation!
Personally, playing a spc track with foo_gep's sinc mode, I'm comfortable because I feel hi-hat is natural.

I like your other plugins(e.q. foo_input_vgmstream, foo_hdcd, foo_unpack_7z and so on).
I appreciate your effort(^^).

Thanks!!
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-10-27 07:18:35
I've uploaded a newer foo_snesapu, bundled with the latest modified snesapu.dll, to the component repository. foobar2000 will offer to update your existing version with this version instead.

Title: Game Emu Player (foo_gep) by kode54
Post by: pochaboo on 2013-10-28 06:38:47
Oh, great job 

I've updated to your newer foo_snesapu.
I'm very happy that DSP Options work properly 

Thanks!!
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2013-10-28 17:46:42
Well its possible your latest version v1.174 might have fixed it I won't be able to check until I get home from the library.. so I will post my bug report..
and if you need copies of the spc files for testing let me know via pm and I will email(works best for me) them to you. =D
____________

Some of my SNES SPC sets that were playing fine up to the last GEP v.1.169...

ARE failing to play  now ;O_O;


Doing just a quick random test of my SNES spc collection I found these game's sound tracks fail to play:

- Illusion of Gaia
- Earthbound (ALL tracks fail to play except for "winters")


Further explained... it will play maybe the first few milliseconds of the track...


___________________
ps:
do to time constants at the Library (1.5 hrs per day)
I am doing a quicky note here...

the download link for MIDI decoder is failing... instead its returning me to the Foobar2000 home page.
http://www.foobar2000.org/getcomponent/0ab....fb2k-component (http://www.foobar2000.org/getcomponent/0abc338795a3dadd51f05e01d22b80e4/ede2abfe1f8e23b185456a3c37e0fe11/foo_midi.fb2k-component)
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-10-28 18:28:46
SPC should be fixed, and you must fully refresh a download page before you click any download links.
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2013-10-29 18:01:22
SPC should be fixed, and you must fully refresh a download page before you click any download links.


I confirm they are working again on v1.172  =D

_______________________________________
ps:
I did a [CTRL]+F5 cache refresh...
the link is working fine today

diagnostic statement loi =3
what I do usual works out like this..
1)  I follow a saved link, Foobar2000: Comp.Rep (Sort:Date)(Tag: ALL) (http://www.foobar2000.org/components/by+date)

2)  I will then middle mouse click any links for addons that have been updated since last I was on.

3)  I will [CTRL]+w , close that page.

4) I will proceed to each opened page  and click the download links one at a time...
    I never have any issues but once in a blue moon the like as down that maybe once or twice before in the past years....


________________________________________
EDIT:
SFM?  never heard of that format before... what system is it for?
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-10-30 00:42:32
SFM is SPC700 state plus register log. I've uploaded an SFM conversion of the Blackthorne SNSF soundtrack here (http://cl.ly/3T1Z3Z1L4131) for example. It still needs length tagging, though.
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2013-10-30 18:57:22
SFM is SPC700 state plus register log. I've uploaded an SFM conversion of the Blackthorne SNSF soundtrack here (http://cl.ly/3T1Z3Z1L4131) for example. It still needs length tagging, though.


ooohh =D nice....

What is:
- The register log?
- What does it do?
- Benefits?

thx
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-10-30 19:06:20
Ripping previously unrippable soundtracks.
Title: Game Emu Player (foo_gep) by kode54
Post by: Kilu on 2013-10-30 19:17:07
Is SFM the sound format byuu was briefly working on (and I guess abandoned) or is this another thing? Googling for SFM is pretty useless, turns out it stands for many things and most of all Source FilmMaker is super popular apparently.
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2013-10-30 20:12:47
Ripping previously unrippable soundtracks.



certain games were unrippable? ?_? @_@


ps:
I am out of net time at the library so back again tomorrow
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-10-31 00:19:01
Yeah, all of these games (http://www.vgmpf.com/Wiki/index.php?title=SPC#Unsupported_Games).
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2013-10-31 19:47:56
Yeah, all of these games (http://www.vgmpf.com/Wiki/index.php?title=SPC#Unsupported_Games).


oooh O_o most of those games odd never heard of... (ack I can't think of the word I am looking for....)
Title: Game Emu Player (foo_gep) by kode54
Post by: ManiacDC on 2013-10-31 21:15:10
oooh O_o most of those games odd never heard of... (ack I can't think of the word I am looking for....)

Obscure? but a lot of those games seem pretty common to me.
Title: Game Emu Player (foo_gep) by kode54
Post by: StrawHat on 2013-11-01 04:34:01
Just wanted to stop by and give my eternal thanks for your efforts, kode54... have just installed & updated SNESAPU along with the recent GEP updates. I finally can get rid of winamp. (another piece of unnecessary ware on my system)

I feel somewhat guilty I haven't paid a cent for FB2K and it's plugins. Just a dream player for me. If you are, or ever in need of donations - just drop a paypal link. I'd more than gladly contribute what I can. Thanks again, mate. Hugely appreciated. 
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2013-11-01 17:31:03
oooh O_o most of those games odd never heard of... (ack I can't think of the word I am looking for....)

Obscure? but a lot of those games seem pretty common to me.

ahh sounds about right loi...........

for me its primary RPGs like Final Fantasy(s), Earthbound, Chrono Trigger, etc
Title: Game Emu Player (foo_gep) by kode54
Post by: alo on 2013-11-24 17:34:07
Apologies if there's an obvious answer to this, but I've had a good google around and couldn't find anything. Foo_gep seems to have no option to default to "loop twice and fade", instead each track lasts for 3 mins. This is fine for many tracks but 10-second loops get obnoxiously overplayed. Is there something I'm missing?
Title: Game Emu Player (foo_gep) by kode54
Post by: alo on 2013-12-01 16:36:47
Apologies if there's an obvious answer to this, but I've had a good google around and couldn't find anything. Foo_gep seems to have no option to default to "loop twice and fade", instead each track lasts for 3 mins. This is fine for many tracks but 10-second loops get obnoxiously overplayed. Is there something I'm missing?
Anyone?
Title: Game Emu Player (foo_gep) by kode54
Post by: db1989 on 2013-12-01 19:02:00
Presumably you are referring to some format other than VGM. Specifying that format might help other members to suggest solutions or kode54 to consider your request.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2013-12-02 00:37:23
If it is a format other than VGM or GYM, then it is entirely up to the file's tags to regulate its playback length, otherwise the default length is used. None of the other formats allow me to easily determine the length, other than performing somewhat expensive sound matching on the rendered output, as they are emulated and there is no easy way to determine if the music has looped. Short of per-game hacks or signal matching algorithms.
Title: Game Emu Player (foo_gep) by kode54
Post by: alo on 2013-12-02 15:52:34
None of the other formats allow me to easily determine the length, other than performing somewhat expensive sound matching on the rendered output, as they are emulated and there is no easy way to determine if the music has looped.
I suspected it might be something like this. Shame - thanks anyway.
Title: Game Emu Player (foo_gep) by kode54
Post by: TheAlmightyGuru on 2013-12-11 20:38:29
I found a minor bug in version 1.177 of Game Emu Player when you load a KSS file with an M3U playlist. The first open inserts all the tracks into the display playlist, but subsequent reopens of the KSS file load the playlist from memory rather than from the disk again. This creates an inconsistency when you modify the M3U playlist, and reopen the KSS file--it still uses the playlist from the first time with the original tags, even if you remove them first.

Note, only the display is wrong, the underlying timing is correct. For example. If you have a 3 minute song, change the M3U playlist to 1 minute, and reopen the KSS file, the display will still read 3 minutes, and the progress bar will appear like a 3 minute song, but the song will only play for the 1 minute.

Thankfully, there is a simple work around. Just clear the playlist, close foobar2000, reopen it, and open the KSS file again, but you have to do this every time you modify the M3U playlist.
Title: Game Emu Player (foo_gep) by kode54
Post by: Zageron on 2014-01-19 07:07:44
This may or may not be an error with this component, I thought that I would report the issue here before reporting it to the actual replay-gain scanner though.

System Overview: http://www.zageron.com/img/20140119070353704.png (http://www.zageron.com/img/20140119070353704.png)
Foobar version: 1.3.1 beta (error occurs in non beta as well)
Detailed System Specs: http://pastebin.com/GuVSGZY5 (http://pastebin.com/GuVSGZY5)


Here is a screenshot of the problem. (Error scanning replay gain in synthesized files. out of memory)
http://www.zageron.com/img/20140119065345475.png (http://www.zageron.com/img/20140119065345475.png)
I'm definitely not out of memory.


Here is the file format for one of the files. (The files which are effected are random) (Format: .vgm)
http://www.zageron.com/img/20140119065420564.png (http://www.zageron.com/img/20140119065420564.png)

[Note: .minipsf, .minigsf, .spc, and .xm seem to scan for replay just fine. I tried to scan a lot, and it seemed to work well.]


This is the component I am using for decryption: (Game Emu Player) [no kidding]
http://www.zageron.com/img/20140119065541689.png (http://www.zageron.com/img/20140119065541689.png)
Title: Game Emu Player (foo_gep) by kode54
Post by: bennetng on 2014-02-02 06:16:23
When playing spc files, change the pitch higher in View>GEP control will crash foobar2000, tried in foobar2000 1.3.0 and 1.31 even in a fresh minimal portable install with all settings in default. Can anyone confirm this?

Code: [Select]
Illegal operation:
Code: C0000005h, flags: 00000000h, address: 6FC2A4C6h
Access violation, operation: read, address: 0074B002h

Call path:
playback_process entry=>input_decoder::run

Code bytes (6FC2A4C6h):
6FC2A486h:  57 8D 4B 0C 1B F2 E8 8F E4 FA FF 6A 00 68 00 80
6FC2A496h:  01 00 56 57 E8 11 7C FC FF 01 03 8B 73 08 11 53
6FC2A4A6h:  04 8B AB 04 06 00 00 2B AB 0C 06 00 00 D1 FD 3B
6FC2A4B6h:  EE 76 47 3B F5 73 2B 8D BB 74 06 00 00 8D 3C 77
6FC2A4C6h:  0F B7 47 02 8B 8B 70 06 00 00 50 0F B7 07 50 E8
6FC2A4D6h:  CD 2F 01 00 84 C0 74 27 83 C6 02 83 C7 04 3B F5
6FC2A4E6h:  72 DE 68 00 20 00 00 8D 83 74 06 00 00 50 8D 4B
6FC2A4F6h:  0C E8 09 99 FA FF 83 63 08 00 5F 5E 5D 5B C3 89

Stack (053AF16Ch):
053AF14Ch:  00000000 FFFFFD34 000002E4 FFFFFD34
053AF15Ch:  000002CC 00000019 00000000 00000000
053AF16Ch:  FFFE8000 007111D8 00721248 000004F0
053AF17Ch:  6FC6841F 007111D8 007111D8 053AF1DC
053AF18Ch:  00000400 0117B9A0 00000164 007111D8
053AF19Ch:  00000BFF 6FBD6982 00736B38 6FBD5755
053AF1ACh:  006D09A4 006D0900 00000400 6FBD570D
053AF1BCh:  00736B38 00000400 006D09B4 6FC27051
053AF1CCh:  00000400 00736B38 00736B38 006D09A4
053AF1DCh:  00736B38 6FBD56B6 00000400 00736B38
053AF1ECh:  006D09B4 6FBD5445 00736B38 00000400
053AF1FCh:  053AFAE4 053AF25C 006D05A8 00736B38
053AF20Ch:  6FBD537D 006D0900 00736B38 053AFAE4
053AF21Ch:  053AFAE4 03153370 0117BA30 0779F8DF
053AF22Ch:  00000008 00007D00 3FE00000 0000012A
053AF23Ch:  015249C0 006C4AD0 00000012 053AF264
053AF24Ch:  053AF288 6FC650E4 FFFFFFFF 00000012
053AF25Ch:  053AF294 6FC0493F 053AFAE4 03153330
053AF26Ch:  03153330 03153370 014A0F68 053AFAE4
053AF27Ch:  03153330 03153370 00000016 053AFB60

Registers:
EAX: 00000001, EBX: 00721248, ECX: 0073727A, EDX: 007111D8
ESI: 00014BA2, EDI: 0074B000, EBP: FFFFFFCE, ESP: 053AF16C

Crash location:
Module: foo_gep
Offset: 5A4C6h
Symbol: "foobar2000_get_interface" (+4A9C6h)

Loaded modules:
foobar2000   loaded at 013A0000h - 0156E000h
ntdll loaded at 77550000h - 776D0000h
kernel32 loaded at 74E00000h - 74F10000h
KERNELBASE   loaded at 75100000h - 75147000h
COMCTL32 loaded at 73A20000h - 73BBE000h
msvcrt   loaded at 76BE0000h - 76C8C000h
GDI32 loaded at 75560000h - 755F0000h
USER32   loaded at 75690000h - 75790000h
ADVAPI32 loaded at 74F50000h - 74FF0000h
sechost   loaded at 76940000h - 76959000h
RPCRT4   loaded at 75A10000h - 75B00000h
SspiCli   loaded at 74C30000h - 74C90000h
CRYPTBASE loaded at 74C20000h - 74C2C000h
LPK   loaded at 750D0000h - 750DA000h
USP10 loaded at 755F0000h - 7568D000h
SHLWAPI   loaded at 74D90000h - 74DE7000h
DSOUND   loaded at 72A50000h - 72AC2000h
ole32 loaded at 75400000h - 7555C000h
WINMM loaded at 74720000h - 74752000h
POWRPROF loaded at 72280000h - 722A5000h
SETUPAPI loaded at 75790000h - 7592D000h
CFGMGR32 loaded at 74C90000h - 74CB7000h
OLEAUT32 loaded at 76B50000h - 76BDF000h
DEVOBJ   loaded at 750E0000h - 750F2000h
UxTheme   loaded at 74260000h - 742E0000h
SHELL32   loaded at 75BD0000h - 7681A000h
zlib1 loaded at 62E80000h - 62E9F000h
shared   loaded at 70DE0000h - 70E0B000h
imagehlp loaded at 76B20000h - 76B4B000h
dbghelp   loaded at 73BC0000h - 73CAB000h
COMDLG32 loaded at 75930000h - 759AB000h
CRYPT32   loaded at 76820000h - 76940000h
MSASN1   loaded at 74DF0000h - 74DFC000h
Secur32   loaded at 746A0000h - 746A8000h
gdiplus   loaded at 70F30000h - 710C0000h
WINHTTP   loaded at 72AF0000h - 72B48000h
webio loaded at 729A0000h - 729EF000h
IMM32 loaded at 759B0000h - 75A10000h
MSCTF loaded at 74CC0000h - 74D8C000h
guard32   loaded at 10000000h - 1005A000h
VERSION   loaded at 74C00000h - 74C09000h
fltlib   loaded at 749C0000h - 749C7000h
foo_gep   loaded at 6FBD0000h - 6FD69000h
MSIMG32   loaded at 74970000h - 74975000h
foo_input_std loaded at 6FA70000h - 6FBC8000h
MSACM32   loaded at 74030000h - 74044000h
avcodec-fb2k-55   loaded at 6F890000h - 6FA63000h
avutil-fb2k-52   loaded at 6F820000h - 6F887000h
foo_ui_std   loaded at 6F730000h - 6F81B000h
CLBCatQ   loaded at 74FF0000h - 75073000h
MMDevApi loaded at 74780000h - 747B9000h
PROPSYS   loaded at 747C0000h - 748B5000h
AUDIOSES loaded at 74340000h - 74376000h
CRYPTSP   loaded at 73900000h - 73916000h
rsaenh   loaded at 738C0000h - 738FB000h
RpcRtRemote   loaded at 74020000h - 7402E000h
explorerframe loaded at 05010000h - 0517F000h
DUser loaded at 73CC0000h - 73CEF000h
DUI70 loaded at 04AE0000h - 04B92000h
avrt loaded at 74310000h - 74317000h

Stack dump analysis:
Address: 6FC6841Fh (foo_gep+9841Fh), symbol: "foobar2000_get_interface" (+8891Fh)
Address: 6FBD6982h (foo_gep+6982h)
Address: 6FBD5755h (foo_gep+5755h)
Address: 6FBD570Dh (foo_gep+570Dh)
Address: 6FC27051h (foo_gep+57051h), symbol: "foobar2000_get_interface" (+47551h)
Address: 6FBD56B6h (foo_gep+56B6h)
Address: 6FBD5445h (foo_gep+5445h)
Address: 6FBD537Dh (foo_gep+537Dh)
Address: 015249C0h (foobar2000+1849C0h)
Address: 6FC650E4h (foo_gep+950E4h), symbol: "foobar2000_get_interface" (+855E4h)
Address: 6FC0493Fh (foo_gep+3493Fh), symbol: "foobar2000_get_interface" (+24E3Fh)
Address: 014A0F68h (foobar2000+100F68h)
Address: 014C2FFFh (foobar2000+122FFFh)
Address: 014257C1h (foobar2000+857C1h)
Address: 0142773Dh (foobar2000+8773Dh)
Address: 775C71F5h (ntdll+771F5h), symbol: "WinSqmSetIfMaxDWORD" (+31h)
Address: 77580098h (ntdll+30098h), symbol: "LdrGetDllHandleEx" (+340h)
Address: 7757FD4Fh (ntdll+2FD4Fh), symbol: "LdrGetDllHandle" (+18h)
Address: 75111A35h (KERNELBASE+11A35h), symbol: "GetModuleFileNameW" (+1A9h)
Address: 75111AC0h (KERNELBASE+11AC0h), symbol: "GetModuleFileNameW" (+234h)
Address: 6F7D15A0h (foo_ui_std+A15A0h), symbol: "foobar2000_get_interface" (+21A20h)
Address: 75111AC0h (KERNELBASE+11AC0h), symbol: "GetModuleFileNameW" (+234h)
Address: 74E00000h (kernel32+0h)
Address: 75136FF0h (KERNELBASE+36FF0h), symbol: "IsNLSDefinedString" (+4DAh)
Address: 75111AC0h (KERNELBASE+11AC0h), symbol: "GetModuleFileNameW" (+234h)
Address: 7513739Eh (KERNELBASE+3739Eh), symbol: "IsNLSDefinedString" (+888h)
Address: 75111CFBh (KERNELBASE+11CFBh), symbol: "GetModuleFileNameW" (+46Fh)
Address: 6F730000h (foo_ui_std+0h)
Address: 6F7D15A0h (foo_ui_std+A15A0h), symbol: "foobar2000_get_interface" (+21A20h)
Address: 74E00000h (kernel32+0h)
Address: 74E00000h (kernel32+0h)
Address: 74E00000h (kernel32+0h)
Address: 74C22B46h (CRYPTBASE+2B46h), symbol: "SystemFunction036" (+1856h)
Address: 74C22B80h (CRYPTBASE+2B80h), symbol: "SystemFunction036" (+1890h)
Address: 74E00000h (kernel32+0h)
Address: 775601E8h (ntdll+101E8h), symbol: "KiIntSystemCall" (+8h)
Address: 775621D4h (ntdll+121D4h), symbol: "KiIntSystemCall" (+1FF4h)
Address: 77564178h (ntdll+14178h), symbol: "KiIntSystemCall" (+3F98h)
Address: 77580199h (ntdll+30199h), symbol: "LdrGetDllHandleEx" (+441h)
Address: 77550000h (ntdll+0h)
Address: 775621D4h (ntdll+121D4h), symbol: "KiIntSystemCall" (+1FF4h)
Address: 775801DBh (ntdll+301DBh), symbol: "LdrGetDllHandleEx" (+483h)
Address: 77550000h (ntdll+0h)
Address: 775801DBh (ntdll+301DBh), symbol: "LdrGetDllHandleEx" (+483h)
Address: 775500D8h (ntdll+D8h)
Address: 775C71F5h (ntdll+771F5h), symbol: "WinSqmSetIfMaxDWORD" (+31h)
Address: 77550000h (ntdll+0h)
Address: 77550000h (ntdll+0h)
Address: 775500D8h (ntdll+D8h)
Address: 775C71F5h (ntdll+771F5h), symbol: "WinSqmSetIfMaxDWORD" (+31h)
Address: 014F6E58h (foobar2000+156E58h)
Address: 775801DBh (ntdll+301DBh), symbol: "LdrGetDllHandleEx" (+483h)
Address: 7758032Ah (ntdll+3032Ah), symbol: "LdrGetProcedureAddressEx" (+11Fh)
Address: 775803A2h (ntdll+303A2h), symbol: "LdrGetProcedureAddressEx" (+197h)
Address: 7757E1B2h (ntdll+2E1B2h), symbol: "RtlFreeUnicodeString" (+6Ch)
Address: 77580378h (ntdll+30378h), symbol: "LdrGetProcedureAddressEx" (+16Dh)
Address: 77550000h (ntdll+0h)
Address: 7757E1B2h (ntdll+2E1B2h), symbol: "RtlFreeUnicodeString" (+6Ch)
Address: 77589DD5h (ntdll+39DD5h), symbol: "RtlDecodePointer" (+0h)
Address: 74C22BC2h (CRYPTBASE+2BC2h), symbol: "SystemFunction036" (+18D2h)
Address: 74C22B46h (CRYPTBASE+2B46h), symbol: "SystemFunction036" (+1856h)
Address: 74C22A6Eh (CRYPTBASE+2A6Eh), symbol: "SystemFunction036" (+177Eh)
Address: 74C22AD1h (CRYPTBASE+2AD1h), symbol: "SystemFunction036" (+17E1h)
Address: 014F6E58h (foobar2000+156E58h)
Address: 014F6E58h (foobar2000+156E58h)
Address: 756A9E92h (USER32+19E92h), symbol: "ClientThreadSetup" (+EFh)
Address: 756A9E3Ah (USER32+19E3Ah), symbol: "ClientThreadSetup" (+97h)
Address: 7759F240h (ntdll+4F240h), symbol: "RtlRetrieveNtUserPfn" (+37h)
Address: 7759F2F8h (ntdll+4F2F8h), symbol: "RtlRetrieveNtUserPfn" (+EFh)
Address: 7759F3B0h (ntdll+4F3B0h), symbol: "RtlRetrieveNtUserPfn" (+1A7h)
Address: 75690000h (USER32+0h), symbol: "Ordinal2457" (+0h)
Address: 74C212E7h (CRYPTBASE+12E7h)
Address: 74C21489h (CRYPTBASE+1489h), symbol: "SystemFunction036" (+199h)
Address: 74C21454h (CRYPTBASE+1454h), symbol: "SystemFunction036" (+164h)
Address: 74C21464h (CRYPTBASE+1464h), symbol: "SystemFunction036" (+174h)
Address: 74C21376h (CRYPTBASE+1376h), symbol: "SystemFunction036" (+86h)
Address: 74C21343h (CRYPTBASE+1343h), symbol: "SystemFunction036" (+53h)
Address: 75A2F66Ch (RPCRT4+1F66Ch), symbol: "UuidCreate" (+F1h)
Address: 75A2F61Dh (RPCRT4+1F61Dh), symbol: "UuidCreate" (+A2h)
Address: 755476C0h (ole32+1476C0h), symbol: "WdtpInterfacePointer_UserFree" (+2B8Fh)
Address: 75A2F62Bh (RPCRT4+1F62Bh), symbol: "UuidCreate" (+B0h)
Address: 747A83A8h (MMDevApi+283A8h), symbol: "Ordinal13" (+180Eh)
Address: 7757015Dh (ntdll+2015Dh), symbol: "ZwWaitForMultipleObjects" (+15h)
Address: 751115E9h (KERNELBASE+115E9h), symbol: "WaitForMultipleObjectsEx" (+100h)
Address: 014EDFE0h (foobar2000+14DFE0h)
Address: 74E92A32h (kernel32+92A32h), symbol: "PowerCreateRequest" (+0h)
Address: 74E92AD4h (kernel32+92AD4h), symbol: "PowerSetRequest" (+0h)
Address: 74E92A90h (kernel32+92A90h), symbol: "PowerClearRequest" (+0h)
Address: 7500086Ah (CLBCatQ+1086Ah), symbol: "GetCatalogObject2" (+D1B4h)
Address: 014D1515h (foobar2000+131515h)
Address: 01426BFBh (foobar2000+86BFBh)
Address: 756B0B69h (USER32+20B69h), symbol: "MsgWaitForMultipleObjects" (+1Fh)
Address: 014D152Fh (foobar2000+13152Fh)
Address: 01426BB3h (foobar2000+86BB3h)
Address: 01426B24h (foobar2000+86B24h)
Address: 014D153Eh (foobar2000+13153Eh)
Address: 01426AFCh (foobar2000+86AFCh)
Address: 014C2FFFh (foobar2000+122FFFh)
Address: 014B198Bh (foobar2000+11198Bh)
Address: 014B5880h (foobar2000+115880h)
Address: 014B1A15h (foobar2000+111A15h)
Address: 74E1336Ah (kernel32+1336Ah), symbol: "BaseThreadInitThunk" (+12h)
Address: 77589F72h (ntdll+39F72h), symbol: "RtlInitializeExceptionChain" (+63h)
Address: 74E376C7h (kernel32+376C7h), symbol: "UnhandledExceptionFilter" (+0h)
Address: 74E376C7h (kernel32+376C7h), symbol: "UnhandledExceptionFilter" (+0h)
Address: 775C71F5h (ntdll+771F5h), symbol: "WinSqmSetIfMaxDWORD" (+31h)
Address: 77589F45h (ntdll+39F45h), symbol: "RtlInitializeExceptionChain" (+36h)
Address: 014B19B1h (foobar2000+1119B1h)
Address: 014B19B1h (foobar2000+1119B1h)

Environment:
App: foobar2000 v1.3.1
UI: Default User Interface 0.9.5

Components:
Core (2014-01-23 14:34:22 UTC)
foobar2000 core 1.3.1
foo_gep.dll (2014-02-02 05:56:16 UTC)
Game Emu Player 1.177
foo_input_std.dll (2014-01-23 14:34:22 UTC)
Standard Input Array 1.0
foo_ui_std.dll (2014-01-23 14:34:22 UTC)
Default User Interface 0.9.5

Recent events:
Performing early media library init
Pre component load
Loading DLL: C:\Users\Bennet Ng\Desktop\foobar2000\user-components\foo_gep\foo_gep.dll
Loading DLL: C:\Users\Bennet Ng\Desktop\foobar2000\components\foo_input_std.dll
Loading DLL: C:\Users\Bennet Ng\Desktop\foobar2000\components\foo_ui_std.dll
Components loaded in: 0:00.073606
Pre config read
Configuration read in: 0:00.001314
Starting playlist loading
User Interface initialized in: 0:00.016363
Processing commandline
initquit::init entry
initquit::init exit
Startup time : 0:00.109916
Opening track for playback: "C:\Users\BENNET~1\AppData\Local\Temp\7zE6D16.tmp\rtype3 - boss.spc"


Machine specifications:
OS: Windows 6.1.7601 Service Pack 1 x64
CPU: Intel® Core™ i3 CPU 540  @ 3.07GHz, features: MMX SSE SSE2 SSE3 SSE4.1 SSE4.2
Audio: Speakers (2- Creative SB X-Fi); SPDIF Out (2- Creative SB X-Fi)
Title: Game Emu Player (foo_gep) by kode54
Post by: lostkingclark on 2014-02-10 09:20:50
Use FOOBAR2000 version is 131
Plug-in version 1.177 is foo_gep

Play the file is downloaded from the Internet Super Nintendo game music files

But when I tried to change the playback speed

Certainly plugin error resulting FOOBAR2000

Please improve

Above GOOGLE translation

P.S.. English forum bully foreigners?
I do not Engrave it

Just complain about a problem with the plug-D Man can not figure out why. "
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2014-02-10 20:50:47
Hi Kode54(how ya doing =D),

This is the first time is a long o' while that Foobar2000 has crashed for me,
I was clicking changing which game music track I was playing and crash.


Code: [Select]
Illegal operation:
Code: C0000005h, flags: 00000000h, address: 0258017Eh
Access violation, operation: read, address: 03D28000h
Last win32 error: 38

Call path:
playback_process entry=>input/open=>input_decoder::initialize

Code bytes (0258017Eh):
0258013Eh:  8B 06 83 E9 04 8D 76 04 89 07 8D 7F 04 0F BA E1
0258014Eh:  03 73 11 F3 0F 7E 0E 83 E9 08 8D 76 08 66 0F D6
0258015Eh:  0F 8D 7F 08 8B 04 8D 98 02 58 02 FF E0 F7 C7 03
0258016Eh:  00 00 00 75 15 C1 E9 02 83 E2 03 83 F9 08 72 2A
0258017Eh:  F3 A5 FF 24 95 98 02 58 02 90 8B C7 BA 03 00 00
0258018Eh:  00 83 E9 04 72 0C 83 E0 03 03 C8 FF 24 85 AC 01
0258019Eh:  58 02 FF 24 8D A8 02 58 02 90 FF 24 8D 2C 02 58
025801AEh:  02 90 BC 01 58 02 E8 01 58 02 0C 02 58 02 23 D1

Stack (03CCF320h):
03CCF300h:  0013F968 01AC5800 0013F8BC 0231306A
03CCF310h:  023B9DAC 00000000 00000011 0013F968
03CCF320h:  0000053C 001C1080 025D04AE 03D27A98
03CCF330h:  03D27FD4 006AD2A4 001D4568 03D27A98
03CCF340h:  0000053C 00000000 001BD700 03CCF380
03CCF350h:  00000034 0000014F 001C1080 025D0A96
03CCF360h:  0000014F 025CB5AD 00000000 0000014F
03CCF370h:  001BD700 03CD1389 0000014F 001BD700
03CCF380h:  00000000 025CDE88 0000014F 00000002
03CCF390h:  00000000 00000000 00000034 00000070
03CCF3A0h:  000005C1 000005C1 001D4568 001BD700
03CCF3B0h:  000016FC 001D4568 001BD700 FFFFFFFF
03CCF3C0h:  001D4568 025CD724 000005C1 001BD700
03CCF3D0h:  001BD008 001BD718 001BD1A8 025D26D0
03CCF3E0h:  0001CD90 000005C1 001D4568 0001CD90
03CCF3F0h:  00000B82 025D26F8 0001CD90 00000B82
03CCF400h:  001D4568 025DB558 001BD008 0001CD90
03CCF410h:  00000B82 001D4568 00000800 00200008
03CCF420h:  00000000 001BD1A8 000005AF 001BD1D0
03CCF430h:  00000000 001BD1A8 001BD7A0 025DAFE5

Registers:
EAX: 0000054C, EBX: 0000014F, ECX: 001AB49E, EDX: 00000000
ESI: 03D28000, EDI: 03D27AC4, EBP: 0000014F, ESP: 03CCF320

Crash location:
Module: foo_gep
Offset: 1017Eh

Loaded modules:
foobar2000                      loaded at 00400000h - 005CE000h
ntdll                            loaded at 7C900000h - 7C9B2000h
kernel32                        loaded at 7C800000h - 7C8F6000h
COMCTL32                        loaded at 773D0000h - 774D3000h
msvcrt                          loaded at 77C10000h - 77C68000h
ADVAPI32                        loaded at 77DD0000h - 77E6B000h
RPCRT4                          loaded at 77E70000h - 77F03000h
Secur32                          loaded at 77FE0000h - 77FF1000h
GDI32                            loaded at 77F10000h - 77F59000h
USER32                          loaded at 7E410000h - 7E4A1000h
SHLWAPI                          loaded at 77F60000h - 77FD6000h
DSOUND                          loaded at 73F10000h - 73F6C000h
ole32                            loaded at 774E0000h - 7761E000h
VERSION                          loaded at 77C00000h - 77C08000h
WINMM                            loaded at 76B40000h - 76B6D000h
UxTheme                          loaded at 5AD70000h - 5ADA8000h
SHELL32                          loaded at 7C9C0000h - 7D1D7000h
zlib1                            loaded at 62E80000h - 62E9F000h
shared                          loaded at 10000000h - 1002B000h
imagehlp                        loaded at 76C90000h - 76CB9000h
dbghelp                          loaded at 59A60000h - 59B01000h
COMDLG32                        loaded at 763B0000h - 763F9000h
CRYPT32                          loaded at 77A80000h - 77B17000h
MSASN1                          loaded at 77B20000h - 77B32000h
gdiplus                          loaded at 4EC50000h - 4EDFB000h
WINHTTP                          loaded at 4D4F0000h - 4D549000h
IMM32                            loaded at 76390000h - 763AD000h
LPK                              loaded at 629C0000h - 629C9000h
USP10                            loaded at 74D90000h - 74DFB000h
apphelp                          loaded at 77B40000h - 77B62000h
msctfime                        loaded at 755C0000h - 755EE000h
foo_input_ht                    loaded at 011E0000h - 01470000h
foo_masstag                      loaded at 01490000h - 014E4000h
foo_rgscan                      loaded at 01510000h - 0156A000h
foo_abx                          loaded at 01590000h - 015C2000h
foo_dumb                        loaded at 015F0000h - 016EF000h
foo_dsp_std                      loaded at 01700000h - 01736000h
foo_input_usf                    loaded at 01760000h - 017DF000h
MSVCR90                          loaded at 78520000h - 785C3000h
foo_input_std                    loaded at 01F20000h - 02078000h
MSACM32                          loaded at 77BE0000h - 77BF5000h
avcodec-fb2k-55                  loaded at 643C0000h - 64593000h
avutil-fb2k-52                  loaded at 635C0000h - 63627000h
foo_input_gsf                    loaded at 019F0000h - 01A85000h
foo_midi                        loaded at 02090000h - 0230D000h
BASS                            loaded at 11000000h - 1104D000h
BASSMIDI                        loaded at 10600000h - 10633000h
foo_ui_std                      loaded at 02310000h - 023FB000h
MSIMG32                          loaded at 76380000h - 76385000h
foo_fileops                      loaded at 02400000h - 0244B000h
foo_input_qsf                    loaded at 02450000h - 0249E000h
foo_unpack_7z                    loaded at 024B0000h - 024E4000h
foo_adpcm                        loaded at 02500000h - 0255B000h
foo_gep                          loaded at 02570000h - 02709000h
OLEAUT32                        loaded at 77120000h - 771AB000h
foo_psf                          loaded at 02720000h - 02798000h
foo_unpack                      loaded at 027B0000h - 027DF000h
foo_cdda                        loaded at 02800000h - 0284F000h
foo_converter                    loaded at 02870000h - 028F0000h
foo_freedb2                      loaded at 02910000h - 0295E000h
foo_albumlist                    loaded at 02980000h - 029DA000h
foo_dsp_eq                      loaded at 02A00000h - 02A36000h
CLBCATQ                          loaded at 76FD0000h - 7704F000h
COMRes                          loaded at 77050000h - 77115000h
xpsp2res                        loaded at 02CE0000h - 02FA5000h
WINTRUST                        loaded at 76C30000h - 76C5E000h
wdmaud                          loaded at 72D20000h - 72D29000h
msacm32                          loaded at 72D10000h - 72D18000h
midimap                          loaded at 77BD0000h - 77BD7000h
KsUser                          loaded at 5EF80000h - 5EF84000h

Stack dump analysis:
Address: 025D04AEh (foo_gep+604AEh)
Address: 025D0A96h (foo_gep+60A96h)
Address: 025CB5ADh (foo_gep+5B5ADh)
Address: 025CDE88h (foo_gep+5DE88h)
Address: 025CD724h (foo_gep+5D724h)
Address: 025D26D0h (foo_gep+626D0h)
Address: 025D26F8h (foo_gep+626F8h)
Address: 025DB558h (foo_gep+6B558h)
Address: 025DAFE5h (foo_gep+6AFE5h)
Address: 025D2697h (foo_gep+62697h)
Address: 025756B6h (foo_gep+56B6h)
Address: 02574E38h (foo_gep+4E38h)
Address: 02573997h (foo_gep+3997h)
Address: 02571389h (foo_gep+1389h)
Address: 025A7A19h (foo_gep+37A19h)
Address: 0261D708h (foo_gep+AD708h)
Address: 10002836h (shared+2836h), symbol: "uPrintCrashInfo_OnEvent" (+B1h)
Address: 02604F1Bh (foo_gep+94F1Bh)
Address: 00500ECAh (foobar2000+100ECAh)
Address: 0043DCC4h (foobar2000+3DCC4h)
Address: 005270F0h (foobar2000+1270F0h)
Address: 004851BBh (foobar2000+851BBh)
Address: 0052E1E8h (foobar2000+12E1E8h)
Address: 00484F47h (foobar2000+84F47h)
Address: 00527944h (foobar2000+127944h)
Address: 004856FFh (foobar2000+856FFh)
Address: 00546CA8h (foobar2000+146CA8h)
Address: 00485670h (foobar2000+85670h)
Address: 00529BB9h (foobar2000+129BB9h)
Address: 0048750Ah (foobar2000+8750Ah)
Address: 7C90E920h (ntdll+E920h), symbol: "strchr" (+113h)
Address: 7C916B50h (ntdll+16B50h), symbol: "LdrGetDllHandleEx" (+12Dh)
Address: 7C916C3Eh (ntdll+16C3Eh), symbol: "LdrGetDllHandleEx" (+21Bh)
Address: 7C916A1Ah (ntdll+16A1Ah), symbol: "LdrGetDllHandle" (+18h)
Address: 7C80E534h (kernel32+E534h), symbol: "GetModuleHandleW" (+57h)
Address: 7C80E544h (kernel32+E544h), symbol: "GetModuleHandleW" (+67h)
Address: 02A23DE0h (foo_dsp_eq+23DE0h)
Address: 7C800000h (kernel32+0h)
Address: 7C839AB0h (kernel32+39AB0h), symbol: "ValidateLocale" (+2B0h)
Address: 7C80E548h (kernel32+E548h), symbol: "GetModuleHandleW" (+6Bh)
Address: 7C80E544h (kernel32+E544h), symbol: "GetModuleHandleW" (+67h)
Address: 7C80E64Bh (kernel32+E64Bh), symbol: "GetModuleHandleW" (+16Eh)
Address: 7C80E6CBh (kernel32+E6CBh), symbol: "GetModuleHandleW" (+1EEh)
Address: 02A00000h (foo_dsp_eq+0h)
Address: 7C800000h (kernel32+0h)
Address: 02A23DE0h (foo_dsp_eq+23DE0h)
Address: 7C800000h (kernel32+0h)
Address: 785219C4h (MSVCR90+19C4h)
Address: 7C800000h (kernel32+0h)
Address: 785219C4h (MSVCR90+19C4h)
Address: 7C800000h (kernel32+0h)
Address: 00556E58h (foobar2000+156E58h)
Address: 7C90CF7Ah (ntdll+CF7Ah),    symbol: "ZwAllocateVirtualMemory" (+Ch)
Address: 7C918B7Bh (ntdll+18B7Bh),  symbol: "RtlReAllocateHeap" (+704h)
Address: 7C912416h (ntdll+12416h),  symbol: "stricmp" (+102h)
Address: 7C90CF7Ah (ntdll+CF7Ah),    symbol: "ZwAllocateVirtualMemory" (+Ch)
Address: 7C918B7Bh (ntdll+18B7Bh),  symbol: "RtlReAllocateHeap" (+704h)
Address: 7C912416h (ntdll+12416h),  symbol: "stricmp" (+102h)
Address: 00556E58h (foobar2000+156E58h)
Address: 00556E58h (foobar2000+156E58h)
Address: 00556E58h (foobar2000+156E58h)
Address: 7C800000h (kernel32+0h)
Address: 0054DFE0h (foobar2000+14DFE0h)
Address: 774FD1E2h (ole32+1D1E2h),  symbol: "CoTaskMemAlloc" (+1C2h)
Address: 7C809680h (kernel32+9680h), symbol: "WaitForMultipleObjectsEx" (+A8h)
Address: 00531515h (foobar2000+131515h)
Address: 00486BFBh (foobar2000+86BFBh)
Address: 7E4196A8h (USER32+96A8h),  symbol: "MsgWaitForMultipleObjects" (+1Fh)
Address: 0053152Fh (foobar2000+13152Fh)
Address: 00486BB3h (foobar2000+86BB3h)
Address: 00486B24h (foobar2000+86B24h)
Address: 0053153Eh (foobar2000+13153Eh)
Address: 00486AFCh (foobar2000+86AFCh)
Address: 00522FFFh (foobar2000+122FFFh)
Address: 0051198Bh (foobar2000+11198Bh)
Address: 00515880h (foobar2000+115880h)
Address: 00511A15h (foobar2000+111A15h)
Address: 7C80B729h (kernel32+B729h), symbol: "GetModuleFileNameA" (+1BAh)
Address: 7C839AB0h (kernel32+39AB0h),symbol: "ValidateLocale" (+2B0h)
Address: 7C80B730h (kernel32+B730h), symbol: "GetModuleFileNameA" (+1C1h)
Address: 005119B1h (foobar2000+1119B1h)
Address: 0260FCF0h (foo_gep+9FCF0h)
Address: 0262E690h (foo_gep+BE690h)
Address: 0262EA20h (foo_gep+BEA20h)
Address: 00430000h (foobar2000+30000h)

Environment:
App: foobar2000 v1.3.1
UI: Default User Interface 0.9.5

Components:
Core (2014-01-23 14:34:22 UTC)
    foobar2000 core 1.3.1
foo_abx.dll (2011-11-12 02:33:38 UTC)
    ABX Comparator 1.3.4
foo_adpcm.dll (2013-08-14 00:53:03 UTC)
    kode's ADPCM decoders 1.11
foo_albumlist.dll (2014-01-23 14:31:16 UTC)
    Album List 4.5
foo_cdda.dll (2014-01-23 14:31:12 UTC)
    CD Audio Decoder 3.0
foo_converter.dll (2014-01-23 14:31:12 UTC)
    Converter 1.5
foo_dsp_eq.dll (2014-01-23 14:31:26 UTC)
    Equalizer 1.0
foo_dsp_std.dll (2014-01-23 14:31:20 UTC)
    Standard DSP Array 1.3
foo_dumb.dll (2014-01-06 17:58:28 UTC)
    DUMB module decoder 1.0.71
foo_fileops.dll (2014-01-23 14:30:54 UTC)
    File Operations 2.2
foo_freedb2.dll (2014-01-23 14:31:32 UTC)
    Online Tagger 0.7
foo_gep.dll (2013-11-02 01:07:01 UTC)
    Game Emu Player 1.177
foo_input_gsf.dll (2013-12-12 02:04:45 UTC)
    Highly Advanced 2.0.4
foo_input_ht.dll (2013-01-23 00:25:34 UTC)
    Highly Theoretical 2.0.37
foo_input_qsf.dll (2013-01-23 00:25:34 UTC)
    Highly Quixotic 2.0.25
foo_input_std.dll (2014-01-23 14:34:22 UTC)
    Standard Input Array 1.0
foo_input_usf.dll (2011-09-27 11:07:38 UTC)
    LazyUSF 2.1 (Build Jun 26 2011)
foo_masstag.dll (2011-11-12 02:33:38 UTC)
    Masstagger 1.8.4
foo_midi.dll (2013-12-15 08:10:38 UTC)
    MIDI synthesizer host 1.229
foo_psf.dll (2013-09-17 02:09:08 UTC)
    Highly Experimental 2.0.36
foo_rgscan.dll (2014-01-23 14:31:30 UTC)
    ReplayGain Scanner 2.2
foo_ui_std.dll (2014-01-23 14:34:22 UTC)
    Default User Interface 0.9.5
foo_unpack.dll (2014-01-23 14:30:40 UTC)
    ZIP/GZIP/RAR Reader 1.6
foo_unpack_7z.dll (2013-10-17 04:27:58 UTC)
    7-Zip reader 1.10

Recent events:
Opening track for playback: "C:\JoeMusic\mSNESspc\TerraNigma\13 - Life Sprouts.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\TerraNigma\06 - Resurrection.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\TerraNigma\04 - The Underworld.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\TerraNigma\03 - Sealed.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\TerraNigma\02 - Crysta.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\TerraNigma\01 - Opening.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\TerraNigma\02 - Crysta.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\TerraNigma\03 - Sealed.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\TerraNigma\04 - The Underworld.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\TerraNigma\06 - Resurrection.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\TerraNigma\07 - Birth of a Continent.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\TwinBee - Rainbow Bell Adventure -- Continue Screen.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\TwinBee - Rainbow Bell Adventure  -- 2nd Area.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\SuperMarioRPG\The Road is Full of Dangers.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\SuperMarioRPG\Fight against a Stronger Monster.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\SuperMarioRPG\Grandpa and the Delightful Tadpoles.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\SuperMarioRPG\Barrel Volcano.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\SuperMarioRPG\The Starlights Flower.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\SuperMarioRPG\Barrel Volcano.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\SuperMarioRPG\The End!.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\SuperMarioRPG\Slope.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\SuperMarioRPG\Fight against Kajidoh.spc"
Opening track for playback: "C:\JoeMusic\mSNESspc\SuperMarioRPG\Fight against an Armed Boss.spc"
Opening track for playback: "C:\JoeMusic\mSegaGenesisGYM\Twin Cobra (Kyuukyoku Tiger)\Twin Cobra - 01 - Challenge (Opening Theme) ~ Break a Leg! (BGM 1, 6).vgz"
Opening track for playback: "C:\JoeMusic\mSegaGenesisGYM\Twin Cobra (Kyuukyoku Tiger)\Twin Cobra - 10 - Break a Leg! (BGM 1, 6).vgz"
Opening track for playback: "C:\JoeMusic\mSegaGenesisGYM\Wonder Boy in Monster World [Wonder Boy V - Monster World III] (1991)(Westone)(Sega)\01 Title Theme.vgm"
Opening track for playback: "C:\JoeMusic\mSegaGenesisGYM\Wonder Boy in Monster World [Wonder Boy V - Monster World III] (1991)(Westone)(Sega)\02 Beginning.vgm"
Opening track for playback: "C:\JoeMusic\mSegaGenesisGYM\Wonder Boy in Monster World [Wonder Boy V - Monster World III] (1991)(Westone)(Sega)\03 Islands.vgm"
Opening track for playback: "C:\JoeMusic\mSegaGenesisGYM\Wonder Boy in Monster World [Wonder Boy V - Monster World III] (1991)(Westone)(Sega)\27 Sky Castle.vgm"
Opening track for playback: "C:\JoeMusic\mSegaGenesisGYM\Ys III - Wanderers From Ys [Wanderers from Ys] (1991)(Falcom)(Riot)(Riot)\01 Premonition ~Styx~.vgm"


Machine specifications:
OS: Windows 5.1.2600 Service Pack 3 x86
CPU: Intel® Pentium® D CPU 3.40GHz, features: MMX SSE SSE2 SSE3
Audio: SoundMAX HD Audio O

the contents of the dump file.... linking to download sites is such a bother...
its a encoding is ANSI
Foobar2000_GEP(v1.177)__Crash.dmp (http://www.tempfiles.net/download/201402/336423/Foobar2000_GEP%28v1.html)
-- on some temp file hosting site... sry don't know if the site is anygood
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2014-02-11 01:10:50
SPC tempo control is fixed. I still don't feel like doing much of anything useful lately, though. I feel ever more that I've started to outlive my usefulness.
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2014-02-11 18:34:43
SPC tempo control is fixed. I still don't feel like doing much of anything useful lately, though. I feel ever more that I've started to outlive my usefulness.

That's  NOT true, you are an excellent programmer Kode54 ;^_^ TY so much for your amazing Fb2k Game Music Plugins ;^_^; your awesomeness brightens my day ;^_^;
Title: Game Emu Player (foo_gep) by kode54
Post by: lostkingclark on 2014-02-13 23:30:31
SPC tempo control is fixed. I still don't feel like doing much of anything useful lately, though. I feel ever more that I've started to outlive my usefulness.

Thank you for paying
Let me sing in the game to achieve musical accompaniment

But I still have a suggestion
If the Super Nintendo SPC SPC700 STATUS music player interface can add more cultural or effect that the more good
Thank
This file is translated by GOOGLE
Title: Game Emu Player (foo_gep) by kode54
Post by: bennetng on 2014-02-14 16:15:42
Thank you very much! Your plugins are the main reason that I use foobar2000
Title: Game Emu Player (foo_gep) by kode54
Post by: plonk420 on 2014-02-25 09:37:09
yeah, thanks for the hard work (and even implementing Higan to handle SPCs)! i re-rediscovered them again after seeing the Reddit AMA with the Secret of Mana and SD3 composer (http://www.reddit.com/r/gamemusic/comments/1yr673/). happy times and memories :D
Title: Game Emu Player (foo_gep) by kode54
Post by: hybrid.divide on 2014-03-06 19:44:57
Hi.  Really nice work with GEP.  I was drawn to it after SNESamp no longer seemed to work right on tracks from "Earthworm Jim", etc.

I'd really like to switch away from Winamp completely.  But there's only one feature of the NSF plugin I use that keeps me tied to Winamp.

Channel mixing.

I apologize if this isn't the right forum for a feature request, but I couldn't find an email address to send a request directly.

Though NSF files aren't meant to be played in stereo, they sound AMAZING that way!  Is there any way to assign stereo values to NSF channels in GEP, or could be an easily implementable feature?  I'm sure I'm not the only one who would really appreciate it.

Thanks!
Title: Game Emu Player (foo_gep) by kode54
Post by: mzso on 2014-04-17 15:15:51
Can Anyone tell me why is this snafu with default length and NSF files?
The files show up as 5:05 length and appear as such with the seekbar. Yet when I play them they get the default length. So if I seek past it the playback ends abruptly or it continues when the seekbar reaches it' end.
Title: Game Emu Player (foo_gep) by kode54
Post by: jrlepage on 2014-05-01 17:11:18
Hi kode54. I came here to report a bug regarding KSS playback. It seems like the player chokes on a couple of files I tried to play. The actual behaviour is erratic at best. Some tracks play the first note and then nothing, some tracks just hang on the first note, some tracks only have one channel playing, some play garbage and some do not play at all.

Snatcher and SD Snatcher (which you can download here (http://anon48.f-m.fm/kss/)) seem to be the principal subjects of this strange issue. I used NEZPlug to compare results, and that one seems to play most of these fine.

I apologise if this bug has been reported already, and I hope this can be fixed without too much trouble.

Many thanks for doing what you do!
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2014-05-02 01:25:47
That is a known issue, and there is nothing I can really do about it, as I don't know what's wrong with the emulator enough to audit and rewrite it. Short of porting another KSS player over, I don't really see how to fix that.
Title: Game Emu Player (foo_gep) by kode54
Post by: jrlepage on 2014-05-02 04:43:27
Ah, okay, I understand.

Thank you for your response!
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2014-05-02 05:58:20
I will look over it eventually.
Title: Game Emu Player (foo_gep) by kode54
Post by: TheAlmightyGuru on 2014-10-27 21:34:53
I've noticed that, while Game Boy GBS files play just fine, Game Boy VGM files do not play at all. Is this by design? If it would help to look at source code, the open source VGM plugin for Winamp has working Game Boy VGM code (http://www.smspower.org/Music/InVgm), but I prefer to use foobar2000. :-)
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2014-10-30 02:04:37
Game_Music_Emu mostly uses a completely different VGM code base. For proper Game Boy support in VGM, I have to import the existing GME Game Boy sound emulator, then connect it to a Blep Synthesizer and Blip Buffer. I really only like to borrow FM chips. Simple PSG type chips are best rewritten for Blip_Buffer at the very least, for the best speed, or at least best quality.

I have asked numerous times if anyone related to in_vgm wanted to help maintain Game_Music_Emu and/or add the remaining chips in, and nobody has stepped forward. It usually falls to me to add things to it, which is a few hours of work for one or two devices at a time, when they're FM chips or existing PSG chips. Luckily, I think all of the PSG chips it needs are already supported by GME for other formats.
Title: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2014-10-31 14:11:12
Thx again Kode54 for all of the effort/work you put into maintaining the Game Music Plugins.


I would like to mention it is a bit laggy when skipping forward and backwards if I go far enough... that is for spc tracks as far as I recall...

I have the [right arrow key] set to skip forward by 10 seconds and the [left arrow key] set to go back 5 seconds
and I keep a sound output buffer of 8600 ms on the laptop...  I guess I upped it from 8000 ms....
Title: Game Emu Player (foo_gep) by kode54
Post by: BlackGuyRX on 2014-11-23 18:57:24
First off, thanks for creating this great plugin, though I have a complaint and some questions-

The GameBoy's audio sounds a bit off after the October update, mainly the noise(?) channel's a tad too loud. Also, do you plan on adding GBR support? There's quite a few tunes stuck in that format and it seems no one has any interest in ripping GBS music anymore or converting formats.

And last, would you ever consider adding the X68000's MDX format? There's an old plugin (either Foobar or Winamp) where playing MDX files with a particular plugin causes the program to crash out and I was kinda surprised to see your plugin not supporting it.
Title: Game Emu Player (foo_gep) by kode54
Post by: pochaboo on 2014-11-24 03:25:17
And last, would you ever consider adding the X68000's MDX format? There's an old plugin (either Foobar or Winamp) where playing MDX files with a particular plugin causes the program to crash out and I was kinda surprised to see your plugin not supporting it.

There is MDX / MDC input plugin by RuRuRu. 
ttp://www.vesta.dti.ne.jp/tsato/soft_fb2k.html
Please press "binary" if you want to download.

Title: Game Emu Player (foo_gep) by kode54
Post by: Zilog Jones on 2015-01-14 20:20:45
Hi Kode54,

Does the plugin currently support MSX rips in VGM format? I was hoping this would be a solution to the KSS playback problem as described by jrlepage (and also with the other benefits of VGM), however unfortunately when playing any SCC (K051649) tracks it doesn't seem to play any of the PSG channels. Some examples of SCC games would be F-1 Spirit, Nemesis 3, Parodius and Salamander. The SCC channels seem to play fine though, which is what was going wrong with KSS playback.

Also, I am having a problem with Neo Turf Masters (Neo-Geo), again in VGM format. I get these errors while trying to play any tracks from this game (using the rip from vgmrips.net):

"Unable to open item for playback (Unsupported format or corrupted file)"

The tracks play fine with VGMPlay. I haven't had any trouble with any other Neo-Geo games yet with foo_gep. Let me know if you need any more info.

Thanks for your many years working on this plugin!
Title: Game Emu Player (foo_gep) by kode54
Post by: ClockworkBastard on 2015-02-18 23:11:26
I always considered foo_gep as The One in chiptune plugins\players... Looks like everyone is imperfect, especially when it comes to combining the work of plenty programmers.

Thanks for foo_gep kode54, it's definitelly the best

The problem that poked out with other plugin pack - the one for DeaDBeeF player (Android, Linux)

SAP files has times and loop are carefully listed as a plain text at the very beginning, and plugins didn't care at all.

I'm seriously astonished that not a one listener found and make a notice about that. SAP is quite an.. ook format, yep, but how could that happen.
I also made a GitHub issue report
Title: Game Emu Player (foo_gep) by kode54
Post by: ClockworkBastard on 2015-03-01 11:55:14
Me again! 

Is there ways\plans to implement the gorgeous Atari ST player to GEP? It will be the breakthrough

I found the iOs player for Atari ST chiptunes... with the sources!
http://www.peylow.se/sc68player.html (http://www.peylow.se/sc68player.html)
Title: Game Emu Player (foo_gep) by kode54
Post by: monkeysafari on 2015-03-16 13:26:54
cheers kode54, something went wrong on last build, nsf functionality is broken (edit length+playlist). 
aloha
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2015-03-17 22:42:01
NSFE functionality has been disabled, you'll have to hand edit paired M3U files, since this seems to be what another user was requesting to use instead. I hear there's a nice resource for NSF+M3U files somewhere, I just don't know where.
Title: Game Emu Player (foo_gep) by kode54
Post by: monkeysafari on 2015-03-18 10:44:00
oh, k thanks for the info.
gonna grab last backed up version, as i really use this function.
Title: Game Emu Player (foo_gep) by kode54
Post by: chevbe2403 on 2015-03-21 00:55:41
Hi. I recently updated to version 1.183 and all KSS files [with timed playlists] will now only play for one loop with a brief fade. I created playlists for all the sets I have and timed therein for each track to play through completely twice then fade out for N seconds. I never actually set a loop count value because I never had to, it just worked that way (until the update that is). Anyway I read in the change log something about changes to generic format length handling and thought this may be the cause? 

Besides reverting to 1.182 is there any change I can make in the settings or in my playlists to get these files to play the way they did before? Will it solve things to set a loop count value in the playlists? I tried changing the loop count in the settings but noticed this setting only affects VGM files and nothing else.

Sorry for the long post. I will include one of my playlists for reference. No loop count is specified but they always played as mentioned before. Thanks in advance for assisting.

Code: [Select]
# @TITLE D.A.S.S.
# @ARTIST MSX-Engine
# @COMPOSER Loek van Kooten
# @DATE 1993
# @RIPPER unspecified
# @TAGGER chevbe2403

D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$00,BGM 00 (FM Sound),16,0-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$01,BGM 01 (FM Sound),9,1-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$02,BGM 02 (FM Sound),51,0-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$03,BGM 03 (FM Sound),51,0-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$04,BGM 04 (FM Sound),62,0-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$05,BGM 05 (FM Sound),175,0-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$06,BGM 06 (FM Sound),88,0-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$07,BGM 07 (FM Sound),84,0-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$08,BGM 08 (FM Sound),125,0-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$09,BGM 09 (FM Sound),92,0-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$0A,BGM 0A (FM Sound),15,0-,3
#D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$0B,BGM 01 (FM Sound),9,1-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$0C,BGM 0C (FM Sound),60,0-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$0D,BGM 0D (FM Sound),238,0-,3

D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$8E,BGM 00 (PSG),16,0-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$8B,BGM 01 (PSG),9,1-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$82,BGM 02 (PSG),51,0-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$83,BGM 03 (PSG),51,0-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$84,BGM 04 (PSG),62,0-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$85,BGM 05 (PSG),175,0-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$86,BGM 06 (PSG),88,0-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$87,BGM 07 (PSG),84,0-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$88,BGM 08 (PSG),125,0-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$89,BGM 09 (PSG),92,0-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$8A,BGM 0A (PSG),15,0-,3
#D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$8B,BGM 01 (PSG),9,1-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$8C,BGM 0C (PSG),60,0-,3
D.A.S.S. (MSX)(1993)(MSX-Engine).kss::KSS,$8D,BGM 0D (PSG),238,0-,3

FWIW if loop specification is what is needed, I think I'll stick to 1.182 until the guys working on Portable/Console Music History do KSS, assuming they do at some point. After spending a lot of time timing and tagging playlists (250 give or take), I can't even look at another one just yet haha. 

EDIT: Oops, I was also meaning to ask if reading of playlist files for .nsf files was implemented in the latest update? Thanks again
Title: Game Emu Player (foo_gep) by kode54
Post by: Kilu on 2015-03-28 22:58:33
NSFE functionality has been disabled, you'll have to hand edit paired M3U files, since this seems to be what another user was requesting to use instead. I hear there's a nice resource for NSF+M3U files somewhere, I just don't know where.

Couldn't you have made it an option instead of disabling NSFE functionality entirely? Or M3U for NSF, but leave NSFE alone? Seems nuts to not be able to use the nsfe info when it's there, and a damn shame to essentially throw away all the data I've tagged.

Also, did this change also disable the other NSF settings, they are all greyed out for me in the GEP settings panel.
I was wondering what happened since register $4011 was suddenly super poppy again.
Title: Game Emu Player (foo_gep) by kode54
Post by: Tagrineth on 2015-04-05 07:15:23
Why disable NSFE support entirely?  I am sad now.  Registered here and everything to find out why the NSFE stuff is grayed out only to find it's deliberate and not a bug. 

Also, hi kode54, it's been a lifetime
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2015-04-05 07:17:59
NSFE format is still supported. Tag editing them is not. I'll probably revert that change anyway, since there's only one person who's actually producing or using NSF/M3U sets.
Title: Game Emu Player (foo_gep) by kode54
Post by: Tagrineth on 2015-04-06 01:06:35
Oh okay, that makes sense... when will an update be up?
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2015-04-06 02:43:37
Updated just now. The M3U/generic mode is now disabled by default, enabled by an advanced preferences setting.
Title: Game Emu Player (foo_gep) by kode54
Post by: Kilu on 2015-04-06 14:44:02
Updated just now. The M3U/generic mode is now disabled by default, enabled by an advanced preferences setting.

Thanks!
Title: Game Emu Player (foo_gep) by kode54
Post by: Tagrineth on 2015-04-10 04:33:19
Who's awesome?  You're awesome. 
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2015-04-10 06:29:26
Who's awesome?  You're awesome. 

Thanks, and good to see you're still around places.
Title: Game Emu Player (foo_gep) by kode54
Post by: Teppic on 2015-06-29 07:27:29
Hi! I'm having some trouble with tagging while creating MP3 files from nsf/nsfe files. There's no track numbers present after loading the NSFE files so the MP3 files I create will be in alphabetical order instead of track order, which means I will have to manually add track numbers and change the order of the MP3 files and also in the ID3 tags. It's kind of too much work to do this for the 70 or so games I was planning to convert. Is there some way I can make this easier?

Can't get M3U files to work with or without the setting in the advanced preferences. Ironically (or maybe it's working as intended), having the setting enabled breaks the track order of some NSFE files, like FF3, Kirby's Adventure & Mega Man 6. Setting it to off fixes it.

Using NSF+M3U from here:
http://nsf.joshw.info/ (http://nsf.joshw.info/)
Title: Game Emu Player (foo_gep) by kode54
Post by: Teppic on 2015-06-30 04:42:59
Figured out how to make track numbers. Just select all items in the playlist > right click and select properties  > right click on track number and select auto track number.
Title: Game Emu Player (foo_gep) by kode54
Post by: Teppic on 2015-07-02 21:02:47
Okay, new problem. If i set "NSF/NSFE - use original file handeler" to off the playlist for NSFE files will have the correct track order, but fade out will not work. If I set it to on NSFE files will have wrong track order for many NSFE files, but fadeout will work.
Title: Game Emu Player (foo_gep) by kode54
Post by: EpicForever on 2015-08-23 10:07:23
Hi,
Can we expect channels disabling/enabling functionality in foo_gep or in foo_snesapu?
Can we expect support for ID666 and xid6 RIFF chunk support for possibility of setting default chanel disabling in SPC files?
I have one weird SPC file that I ripped myself via ZSNES - Sand Ocean from F-Zero. On 8 channel there is constant "engine" noise... I would like to set bit for disabling channel 8 in this file or at least have possibility to disable it in player, just for the moment of playback of this file.
Title: Game Emu Player (foo_gep) by kode54
Post by: mudlord on 2015-08-26 12:01:45
View -> GEP control for foo_gep.
Title: Game Emu Player (foo_gep) by kode54
Post by: EpicForever on 2015-08-26 16:27:03
Good point mudlord!! It seems that I don't know GEP as I should
Still ID666 will be a nice addition into GEP and/or SNESAPU.

Additionally, thanks to your advice I have found that for some reason I have twice "DSP" added in my menu... and both contacin the same sub-menus... suspicious.
Title: Game Emu Player (foo_gep) by kode54
Post by: w00w000 on 2015-09-01 18:36:59
hi, where to get previous version? bloody updater just vanish all folder, though excluding config..

1.187 on 1.2.9:

Quote
Failed to load DLL: foo_gep.dll
Reason: Wrong version number; this component appears to have been built with a newer version of the foobar2000 SDK, please download latest version of foobar2000 in order to use it.
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2015-09-02 01:21:43
Sorry, my fault for not marking the components update page to indicate 1.3 as the minimum required version. Otherwise, you simply would have stopped receiving updates.
Title: Game Emu Player (foo_gep) by kode54
Post by: Supermansaga on 2015-09-14 01:10:19
Sorry, my fault for not marking the components update page to indicate 1.3 as the minimum required version. Otherwise, you simply would have stopped receiving updates.


Hi Kode54, just upgraded to 1.189. Thanks for the great plugin. Is it possible for u to take a crack at making the plugin to support music format from the PC9801 era in Japan? Some Japanese once had created a plug and a standalone player at http://www.vesta.dti.ne.jp/~tsato/soft_fb2k.html (http://www.vesta.dti.ne.jp/~tsato/soft_fb2k.html) but his DLLs don't work in the new foobar.

You could also download here
https://www.dropbox.com/s/td6y1e2vx0xudct/p...ayback.zip?dl=0 (https://www.dropbox.com/s/td6y1e2vx0xudct/pc9801%20opi-ovi-m%20playback.zip?dl=0)
Title: Game Emu Player (foo_gep) by kode54
Post by: Supermansaga on 2015-09-17 21:38:58
See previous discussion at https://www.hydrogenaud.io/forums/index.php?showtopic=109451 (https://www.hydrogenaud.io/forums/index.php?showtopic=109451)

Thanks!!!
Title: Game Emu Player (foo_gep) by kode54
Post by: pochaboo on 2015-09-19 08:16:15
@Supermansaga
There is the plugin for pmd/fmp.(Not my release. By the anonymous Japanese user)
Please click "ダウンロード" button.
http://ux.getuploader.com/foobar2000/downl...d_v0.8.0.15.zip (http://ux.getuploader.com/foobar2000/download/31/foo_input_fmpmd_v0.8.0.15.zip)
Title: Game Emu Player (foo_gep) by kode54
Post by: Supermansaga on 2015-09-19 16:04:43
@Supermansaga
There is the plugin for pmd/fmp.(Not my release. By the anonymous Japanese user)
Please click "??????" button.
http://ux.getuploader.com/foobar2000/downl...d_v0.8.0.15.zip (http://ux.getuploader.com/foobar2000/download/31/foo_input_fmpmd_v0.8.0.15.zip)


Hi there, this plugin no longer works in foobar v.1.3.8. Maybe it works in earlier version. Don't know what happen in between since I am not a programmer. Do you know Japanese? Could you reach out to the author so that he could revisit the plug-in and maintain the update on foobar's site? I think the author's site is at http://c60.la.coocan.jp/ (http://c60.la.coocan.jp/), but he has never responded to my request.
Title: Game Emu Player (foo_gep) by kode54
Post by: lvqcl on 2015-09-19 16:24:37
Open console and you'll see
Code: [Select]
Warning: [PMDWin] Driver module load failed.
Warning: [WinFMP] Driver module load failed.

Apparently foo_input_fmpmd also requires PMDWin.dll/WinFMP.dll
Title: Game Emu Player (foo_gep) by kode54
Post by: pochaboo on 2015-09-20 03:51:34
Hi there, this plugin no longer works in foobar v.1.3.8. Maybe it works in earlier version.

It appears to be working in my environment(foobar2000 v1.3.8 Windows7).
You need to put PMDWin.dll and WinFMP.dll into the directory same as foo_input_fmpmd.dll.

Do you know Japanese? Could you reach out to the author so that he could revisit the plug-in and maintain the update on foobar's site? I think the author's site is at http://c60.la.coocan.jp/ (http://c60.la.coocan.jp/), but he has never responded to my request.

Yes, I know Japanese.
However, I can't reach out to the author because I don't know who he/she is.
I DON'T think "http://c60.la.coocan.jp/" is his/her site. It is the site of the author who made PMDWin.dll and WinFMP.dll.
Title: Game Emu Player (foo_gep) by kode54
Post by: Supermansaga on 2015-09-20 06:49:31
Hi there, this plugin no longer works in foobar v.1.3.8. Maybe it works in earlier version.

It appears to be working in my environment(foobar2000 v1.3.8 Windows7).
You need to put PMDWin.dll and WinFMP.dll into the directory same as foo_input_fmpmd.dll.

Do you know Japanese? Could you reach out to the author so that he could revisit the plug-in and maintain the update on foobar's site? I think the author's site is at http://c60.la.coocan.jp/ (http://c60.la.coocan.jp/), but he has never responded to my request.

Yes, I know Japanese.
However, I can't reach out to the author because I don't know who he/she is.
I DON'T think "http://c60.la.coocan.jp/" is his/her site. It is the site of the author who made PMDWin.dll and WinFMP.dll.


You are totally right. Thanks for pointing the above out. I could play the music files I uploaded now. It even displays the Japanese characters!!! This is so awesome. Thank you so much. It is weird though that the readme file in foo_input_fmpmd_v0.8.0.15.zip pointed out PMDWin.dll and WinFMP.dll are from C60 without providing the actual downloading URL.

Would you be able to tell who the author is to foo_input_fmpmd_v0.8.0.15.zip? The Japanese does not display correctly in my windows 10. Not sure if I have to switch to Non-Unicode Japanese in regions first. I was hoping you could reach out to them and ask them to update their site to show this interaction among the three DLL files.

Thank you so much again.
Title: Game Emu Player (foo_gep) by kode54
Post by: Supermansaga on 2015-09-20 07:09:56
Open console and you'll see
Code: [Select]
Warning: [PMDWin] Driver module load failed.
Warning: [WinFMP] Driver module load failed.

Apparently foo_input_fmpmd also requires PMDWin.dll/WinFMP.dll


I am sharing the existing music files I have from this console

https://www.dropbox.com/s/7nwh8mng7ol5cu2/P...0Files.zip?dl=0 (https://www.dropbox.com/s/7nwh8mng7ol5cu2/PC9801%20OPI-OVI-M%20Music%20Files.zip?dl=0)

All could be played back and even Japanese are displayed in the tags, except for files from "Dragon Knight 4 - PC98". Not that I need to solve this DK4 mystery because I have the music in SPC format as well, but it would be nice to figure out why the three DLLs can't play back the DK4 files.
Title: Game Emu Player (foo_gep) by kode54
Post by: fastfourier on 2015-10-10 18:10:29
First time poster, but I just wanted to run by an issue I've had with the plugin.

From what I can tell, the SPC format seems to override whatever is set for fade-out in the plugin settings, using the file's fade-out instead. Would it be possible to get an override switch of some sort to ignore tagged fades? I'd hate to need to retag my entire library whenever I want to change the fade-out.

Edit: almost forgot, thanks a lot for your hard work! I've been very impressed with the stability of your plugins.
Title: Game Emu Player (foo_gep) by kode54
Post by: EpicForever on 2015-10-13 20:28:32
Fastfourier - don't you use other SPC aware plugin, like foo_zxtune or foo_snesapu? Or foo_game ? It may be caused by the fact that foobar may use the other plugin for processing data.
Title: Game Emu Player (foo_gep) by kode54
Post by: fastfourier on 2015-10-13 23:58:12
Fastfourier - don't you use other SPC aware plugin, like foo_zxtune or foo_snesapu? Or foo_game ? It may be caused by the fact that foobar may use the other plugin for processing data.


No, I don't have those installed, only Kode54's plugins (foo_gep, foo_input_gsf, foo_input_usf). Kode54's plugin is definitely reading the SPC files for their tagged fadeouts, which isn't really a bug (the Winamp plugins do as well), but it would be very desirable to override that.
Title: Game Emu Player (foo_gep) by kode54
Post by: ratatax on 2015-11-01 19:45:36
Hello,

Why did you removed the ability to mute individual channels in the latest version of GEP ? That sucks, i had to download some 2014 version to get back the channel muting function for VGM musics
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2015-11-01 23:32:22
Supporting mute for the latest VGM player will be quite an effort, since the VGM player supports a veritable wealth of chips, all at once, and muting would require stepping through all the chips that are present.

It will require enumerating which chips are enabled in the file, how many channels each has, etc. I will only support muting the first 32 channels, though.
Title: Game Emu Player (foo_gep) by kode54
Post by: TheAlmightyGuru on 2015-11-16 20:00:07
Hello kode54,

Seems like every time I update the Game Emu Player something newer and better has been added. I'm very thankful that you've put in so much time and effort to consolidate so many plugins into one for foobar2000. How may I send you a donation?
Title: Game Emu Player (foo_gep) by kode54
Post by: lvqcl on 2015-11-16 21:40:51
There's a link to Flattr on the component page (http://www.foobar2000.org/components/view/foo_gep)
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2015-11-19 09:16:07
I also accept Square Cash $kode54 (https://cash.me/$kode54), which may work for you since I see you're in the US. So glad I could please you with this software.
Title: Game Emu Player (foo_gep) by kode54
Post by: Googer on 2015-11-24 00:49:22
Hi,

This plugin seems to have a memory leak. Anytime I start playing a VGM or GBS file (these are the two formats where I've noticed this thus far anyway), foobar2000's memory usage increases and never drops back down.  If you keep on replaying the same file over and over memory usage will climb a bit more each time upon restarting the track. 

I actually first noticed this when I added a full mirror of the joshw rips (i.e., vgm.joshw.info, etc.) to my media library - foobar actually eventually fails to allocate memory and crashes as it approaches 4 GB of memory in use (!).  In trying to figure out the faulty plugin (since I assumed this was a memory leak of some sort), I also extracted all the rips into their own folders, so I knew the 7-zip unpack plugin wasn't to blame.  So then I started experimenting with playing all the different sound formats and have definitely found these two so far that cause memory to climb and never be released.  I'll also keep looking since I'm not yet sure that this leak would be enough for usage to get so insanely high even with a large library of said files. 
Title: Game Emu Player (foo_gep) by kode54
Post by: Googer on 2015-11-24 04:57:24
In monitoring memory usage and the media library as it was being populated, the culprit of the memory leak is definitely the VGM support in GEP.  GBS is very minor in comparison and definitely not enough to cause foobar2000 to exhaust addressable memory, whereas memory usage is steadily climbing at a pretty rapid pace (5-10 MB/sec) as it indexes VGM's.
Title: Game Emu Player (foo_gep) by kode54
Post by: Googer on 2015-11-24 15:07:57
Taking a quick look through the foo_gep and Game_Emu_Player source, it looks like you never call unload in several of the emu cores' destructors (Gbs_Emu, Hes_Emu, Nsfe_Emu, Sgc_Emu, and Vgm_Emu - that I spotted), which it appears you are doing in the other core types.  I don't have a development environment set up so I can't easily test but this may essentially be a simple one-line fix for each affected file type.
Title: Game Emu Player (foo_gep) by kode54
Post by: YobaHere on 2015-11-25 07:23:03
Seems to be problems with playback and rendering .VGM with YM2151 chip. Noticeable click in rendered .WAV http://puu.sh/lxY2F.mp3 (http://puu.sh/lxY2F.mp3)
And FM channels problem, though PCM samples is ok. http://puu.sh/lxYoc.mp3 (http://puu.sh/lxYoc.mp3) It's triggered on other tune, but this problem stay over other tracks.
Title: Game Emu Player (foo_gep) by kode54
Post by: Xkeeper on 2015-11-28 19:04:26
Confirming the memory leak issue with VGM files -- I recently got a full archive of the set off project2612 and foobar2000 will crash with an out-of-memory error when adding it to the library (it only gets to about 100-200 soundtracks before failing).

Title: Game Emu Player (foo_gep) by kode54
Post by: TheAlmightyGuru on 2015-11-30 17:51:10
Thank Kode54, I sent you some cash to say thank you for all your great work!

Btw, do you plan on ever adding SNDH (Atari ST) format support to the Game Emu Player. There are a lot of SNDH players (http://sndh.atari.org/players.php (http://sndh.atari.org/players.php)), but so far nobody has made a foobar2000 plugin, and it seems fitting to be added to this plugin.

Cheers!
Title: Game Emu Player (foo_gep) by kode54
Post by: Googer on 2015-12-01 21:02:18
I see the new version should fix the VGM memory leak - I'll check this tonight when I get home and verify it.  Thanks for the quick turnaround!
Title: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2015-12-02 08:48:24
Incidentally, it had nothing to do with the use of unload() functions, or the lack thereof. It had more to do with not calling the correct libvgmplay function to release the actual VGM file data. All chip emulators, and the final container were released, but the file data call was not called.

Then I had to go in and undo a bunch of C99 and C++11 isms that were broken by my step back to MSVC 2010. Alas, maybe for a future version, if and when it comes time to drop Windows XP support.

@TheAlmightyGuru: Thank you for your contribution! I'll look into those formats, but I don't know if there's already a multi-threading safe library for that format. If there's at least a single thread safe library, I can probably spend a few hours converting it to a full state machine emulator with instance structure passed around everywhere, like I've done for numerous other libraries, such as lazyusf (Project 64) and lazyusf2. (mupen64plus)

As for that YM2151 chip, the issue may be with the MAME or whatever emulator library is in use by the libvgmplay code I forked and converted. If it is fixed in the original VGMPlay, I will look into integrating their latest changes into my fork, which won't be an automatic code merge, since I made major changes all around to make it possible to use as a thread safe library.
Title: Game Emu Player (foo_gep) by kode54
Post by: Googer on 2015-12-02 15:14:43
Confirmed fixed, thanks again!  I just Flattr'd you given how much use I get out of this and your other plugins for streaming game music rips to devices that have no way of playing them (via foo_upnp and BubbleUPnP for DLNA and internet support).
Title: Game Emu Player (foo_gep) by kode54
Post by: JeanGibon on 2015-12-02 16:27:41
Thank you kode54 for your work
sc68, sndh support in foo_gep would be nice
sc68 component for fb2k already plays those formats
http://sourceforge.net/p/sc68/code/HEAD/tree/sc68-fb2k/ (http://sourceforge.net/p/sc68/code/HEAD/tree/sc68-fb2k/)

@TheAlmightyGuru. meanwhile try this
https://www.dropbox.com/s/mji9qoyb50xff2c/foo_sc68.zip (https://www.dropbox.com/s/mji9qoyb50xff2c/foo_sc68.zip)
Title: Game Emu Player (foo_gep) by kode54
Post by: chevbe2403 on 2015-12-31 03:48:43
Hi. I updated foo_gep from 1.184 to version 1.193 and now foobar2000 crashes when playing certain KSS sets. Sometimes the crash happens on playback, sometimes when stopping/seeking/changing tracks. None of these crashes happened using v1.184 this I can confirm. I couldn't find a proper crash report anywhere so I'll post what I can.

Here's a few post crash messages
Code: [Select]
Problem signature:
  Problem Event Name: APPCRASH
  Application Name: foobar2000.exe
  Application Version: 1.3.9.0
  Application Timestamp: 563765ca
  Fault Module Name: StackHash_8f78
  Fault Module Version: 6.1.7601.19045
  Fault Module Timestamp: 56258e62
  Exception Code: c0000374
  Exception Offset: 000ced0b
  OS Version: 6.1.7601.2.1.0.256.1
  Locale ID: 1033
  Additional Information 1: 8f78
  Additional Information 2: 8f78655a26133635ff6e15e5efa43ae5
  Additional Information 3: 7cd2
  Additional Information 4: 7cd20a739c8b4a3b479d2e83df278959

Read our privacy statement online:
  [url=http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0409]http://go.microsoft.com/fwlink/?linkid=104...mp;clcid=0x0409[/url]

If the online privacy statement is not available, please read our privacy statement offline:
  C:\Windows\system32\en-US\erofflps.txt
Code: [Select]
Problem signature:
  Problem Event Name: APPCRASH
  Application Name: foobar2000.exe
  Application Version: 1.3.9.0
  Application Timestamp: 563765ca
  Fault Module Name: StackHash_5076
  Fault Module Version: 6.1.7601.19045
  Fault Module Timestamp: 56258e62
  Exception Code: c0000374
  Exception Offset: 000ced0b
  OS Version: 6.1.7601.2.1.0.256.1
  Locale ID: 1033
  Additional Information 1: 5076
  Additional Information 2: 50768a3b7c841346e6a9298d1c310e79
  Additional Information 3: 7736
  Additional Information 4: 77361e96f9313fd3c0cd5ff680890b52

Read our privacy statement online:
  [url=http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0409]http://go.microsoft.com/fwlink/?linkid=104...mp;clcid=0x0409[/url]

If the online privacy statement is not available, please read our privacy statement offline:
  C:\Windows\system32\en-US\erofflps.txt
Code: [Select]
Problem signature:
  Problem Event Name: APPCRASH
  Application Name: foobar2000.exe
  Application Version: 1.3.9.0
  Application Timestamp: 563765ca
  Fault Module Name: StackHash_9828
  Fault Module Version: 6.1.7601.19045
  Fault Module Timestamp: 56258e62
  Exception Code: c0000374
  Exception Offset: 000ced0b
  OS Version: 6.1.7601.2.1.0.256.1
  Locale ID: 1033
  Additional Information 1: 9828
  Additional Information 2: 9828f4805fe0d32ecece1866b624ed97
  Additional Information 3: 6593
  Additional Information 4: 6593841ea98f47d2a36ad7e96398c081

Read our privacy statement online:
  [url=http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0409]http://go.microsoft.com/fwlink/?linkid=104...mp;clcid=0x0409[/url]

If the online privacy statement is not available, please read our privacy statement offline:
  C:\Windows\system32\en-US\erofflps.txt
Here is a list of components I have installed
Code: [Select]
Core (2015-11-02 13:34:32 UTC)
    foobar2000 core 1.3.9
foo_albumlist.dll (2015-11-02 13:31:02 UTC)
    Album List 4.5
foo_cdda.dll (2015-11-02 13:30:24 UTC)
    CD Audio Decoder 3.0
foo_converter.dll (2015-11-02 13:30:32 UTC)
    Converter 1.5
foo_dsp_crossfeed.dll (2012-10-08 23:56:20 UTC)
    Crossfeed 1.1.1
foo_dsp_eq.dll (2015-11-02 13:30:52 UTC)
    Equalizer 1.0
foo_dsp_std.dll (2015-11-02 13:30:38 UTC)
    Standard DSP Array 1.3.1
foo_dumb.dll (2015-11-21 23:18:33 UTC)
    DUMB module decoder 1.0.158
foo_fileops.dll (2015-11-02 13:30:04 UTC)
    File Operations 2.2.1
foo_freedb2.dll (2015-11-02 13:30:14 UTC)
    Online Tagger 0.7
foo_gep.dll (2015-12-31 02:29:35 UTC)
    Game Emu Player 1.193
foo_input_adplug.dll (2014-10-29 22:36:49 UTC)
    AdPlug 1.46
foo_input_gsf.dll (2015-03-11 20:27:51 UTC)
    Highly Advanced 2.0.8
foo_input_ht.dll (2015-06-02 22:55:32 UTC)
    Highly Theoretical 2.0.41
foo_input_hvl.dll (2015-02-27 02:39:58 UTC)
    Hively Tracker decoder 1.17
foo_input_mdx.dll (2015-03-14 09:57:51 UTC)
    MDC input 1.1.1
    MDX input 1.3.2
foo_input_s98.dll (2009-04-18 16:37:45 UTC)
    S98 input 1.11
foo_input_std.dll (2015-11-02 13:34:32 UTC)
    Standard Input Array 1.0
foo_input_usf.dll (2015-05-18 03:20:27 UTC)
    LazyUSF 2.2.39
foo_input_vio2sf.dll (2015-03-16 02:16:08 UTC)
    2SF Decoder 0.24.12
foo_midi.dll (2015-11-09 23:15:14 UTC)
    MIDI synthesizer host 1.247
foo_qpsf.dll (2015-11-09 23:11:58 UTC)
    Highly Experimental 2.1
foo_r128norm.dll (2014-10-18 03:20:23 UTC)
    EBU R128 Normalizer 1.11
foo_rgscan.dll (2015-11-02 13:31:02 UTC)
    ReplayGain Scanner 2.2.2
foo_sc68.dll (2015-12-07 04:05:51 UTC)
    sc68 for foobar2000 0.7.0
foo_sid.dll (2015-11-09 23:15:14 UTC)
    sidplay2 1.34
foo_ui_std.dll (2015-11-02 13:34:32 UTC)
    Default User Interface 0.9.5
foo_unpack.dll (2015-11-02 13:30:38 UTC)
    ZIP/GZIP/RAR Reader 1.7.1
foo_unpack_7z.dll (2013-10-22 18:02:22 UTC)
    7-Zip reader 1.10
And here is a list of the sets that crash for what it's worth
Code: [Select]
ASO [Arcade] (1985)(SNK)
Athena [Arcade] (1986)(SNK)
Basugo (MSX)(19xx)(Momonoki House)
Blaster Burn - Budruga Episode 3 (MSX)(1990)(Compile)
D.A.S.S. (MSX)(1993)(MSX-Engine)
Family Stadium (MSX)(1989)(Namco)
Ikari Warriors [Arcade] (1986)(SNK)
Labyrinth - Maou no Meikyuu (MSX)(1987)(Pack-In-Video)
Madou Monogatari (MSX)(1990)(Compile)
Madou Monogatari 1-2-3 (MSX)(1990)(Compile)
Megaz Monkey Do (MSX)(1989)(Compile)
Psycho Soldier [Arcade] (1987)(SNK)
Psycho Soldier JP [Arcade] (1987)(SNK)
Puyo Puyo (MSX)(1991)(Compile)
Randar II - Revenge of Death (MSX)(1989)(Compile)
Randar III - The Adventure of Randar (MSX)(1990)(Compile)
Runemaster 2 (MSX)(1990)(Compile)
Runemaster 3 (MSX)(1991)(Compile)
T.A.N.K [Arcade] (1985)(SNK)
Terra Cresta [Arcade] (YM3526) (1985)(Nichibutsu)
Xevious - Fardraut Saga (MSX)(1992)(Compile, Namco)
Zero Wing [Arcade] (1989)(Toaplan)
Thank you in advance for any help. Happy holidays 
 P.S. Also would you please consider putting up older versions of GEP too (e.g. on kode54.foobar2000.org or someplace handy) along with the newest version in case one wishes to roll back for some reason? Thanks.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: chevbe2403 on 2016-01-15 21:33:03
Hi. I updated foo_gep from 1.184 to version 1.193 and now foobar2000 crashes when playing certain KSS sets. Sometimes the crash happens on playback, sometimes when stopping/seeking/changing tracks. None of these crashes happened using v1.184 this I can confirm. I couldn't find a proper crash report anywhere so I'll post what I can.

[...]

Disregard this post. The problem was on my end with my laptop. It is resolved now.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2016-01-15 21:55:01
Thx Kode54 as always for my favorite Foobar 2000 plugins ^_^
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: TombiLite on 2016-01-28 14:09:21
Hi. I updated foo_gep from 1.184 to version 1.193 and now foobar2000 crashes when playing certain KSS sets. Sometimes the crash happens on playback, sometimes when stopping/seeking/changing tracks. None of these crashes happened using v1.184 this I can confirm. I couldn't find a proper crash report anywhere so I'll post what I can.

[...]

Disregard this post. The problem was on my end with my laptop. It is resolved now.
Could you elaborate on this? I'm on a brand new computer and getting the same crash with .kss sets. The sets that don't crash play completely wrong or don't play at all, though otherwise gep works great as usual.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Enverex on 2016-04-17 16:37:26
Looks like somewhere between the version I was using mid-last-year and now, Interpolation broke, it's now stuck on for SPC tracks. Doesn't matter what I set it to (e.g. "None"), it's clearly always on (not sure what it's stuck on to, just that it's clearly on).
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-04-17 19:35:35
Works for me. Are you sure you don't also have some other SPC plug-in installed, such as foo_snesapu? If foo_gep's SPC input is enabled, they will fight each other, depending on a random load order on player startup.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Enverex on 2016-04-17 19:49:57
I'm not aware of any of the modules I have installed having support for SPC files (as I'm aware of conflicts so I've deliberately made sure nothing overlaps). Well, not unless DUMB added SPC support at some point.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-04-17 22:09:40
Try unchecking the SPC checkbox in preferences and report if the file still plays.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Enverex on 2016-04-17 22:32:28
Looks like it was ZXTune hijacking it. Thanks.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: w00w000 on 2016-05-10 23:29:59
Sorry, my fault for not marking the components update page to indicate 1.3 as the minimum required version. Otherwise, you simply would have stopped receiving updates.
hi,
great to know you can accept $quare Cash, but could u finally post 1.186 dll that
was vanished and overwritten (can't undelete) from _my_ folder by yourmistake?!


PS. nice hydrogenaudio design, more ugly then before, and finally ssl support? with 0wn3d COMODO certs..
bump
PSS. blocking all connections from tor. Serious guys..
Invalid address
You tried to access the address https://hydrogenaud.io/, which is currently unavailable.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-05-11 23:04:48
Here you go. http://cl.ly/2J3s3x3W0r1m

The source code is in Github if you ever need to compile any newer versions or fixes, but don't expect it to work out of the box with the older SDK.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: w00w000 on 2016-05-12 21:29:58
Here you go. http://cl.ly/2J3s3x3W0r1m
hi, that is not the same 1.186 file that was distributed before.
1.2.9:
Failed to load DLL: foo_gep.dll
Reason: Wrong version number; this component appears to have been built with a newer version of the foobar2000 SDK
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Thundik81 on 2016-05-12 22:50:26
Here you go. http://cl.ly/2J3s3x3W0r1m
hi, that is not the same 1.186 file that was distributed before.
1.2.9:
Failed to load DLL: foo_gep.dll
Reason: Wrong version number; this component appears to have been built with a newer version of the foobar2000 SDK


Here it goes:
http://rgho.st/6CwM9Fs2H

BTW 1.187 released 3 hours later...
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: lvqcl on 2016-05-12 23:08:05
At least one can use 1.179 from ftp://ftp.rave.ca/pub/software/players/Windows/Foobar2000%20v1.0/input%20plugins/
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-05-13 03:57:14
Or update the player itself. I hear it still works on Windows XP. Or if you're certifiably insane, it works on Windows 2000.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Thundik81 on 2016-05-13 18:05:54
At least one can use 1.179 from ftp://ftp.rave.ca/pub/software/players/Windows/Foobar2000%20v1.0/input%20plugins/

Few old versions since v1.150: http://rgho.st/8rTkdshvl
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: mrbrax on 2016-05-25 08:38:09
I love the "Interpolation: None" on SPC.

However, the volume is sometimes really low on tracks supported, and especially SPC. Is this known or is it something with the files i have? As far as i can see, there's no normalization setting, and the ReplayGain function does not work on these files. Sorry if i missed some setting!

Mario Paint - Creative Exercise (http://rp.braxnet.org/scr/1464161672531.png) vs LoZ - Main theme (http://rp.braxnet.org/scr/1464161701068.png) vs Daft Punk - Something About Us (http://rp.braxnet.org/scr/1464161849266.png)
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-05-25 21:26:41
Go into Advanced Preferences and locate the option to turn on a volume boost, but know that some loud files can actually exceed ±1.0 volume level. You can also ReplayGain scan your collection, but if you already did this, then that setting can make or break existing tags.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: mrbrax on 2016-05-26 10:02:31
Go into Advanced Preferences and locate the option to turn on a volume boost, but know that some loud files can actually exceed ±1.0 volume level. You can also ReplayGain scan your collection, but if you already did this, then that setting can make or break existing tags.

Exactly, so the normal volume files will be clipping. this is what i meant by replaygain not working (http://rp.braxnet.org/scr/1464253371107.png), and i'm assuming because these files don't support the replaygain tags
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-05-27 05:46:45
The files support ReplayGain tags, but they are inside of archives, and I cannot modify archives.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Supermansaga on 2016-05-30 23:16:49
Hi @kode54, Have you come up with a new plug-in to support game music files at https://dl.dropboxusercontent.com/u/4824376/PC9801%20OPI-OVI-M%20Music%20Files.zip? Just want to make sure the Japanese don't have a monopoly here. Separate discussion at https://hydrogenaud.io/index.php/topic,109451.msg900979.html#msg900979. Kudos to @pochaboo again.

I also realized Foobar2000 is now available on iOS, Android, Windows Phone. Hopefully, your plugin could be adapted in the next version so that it could play back at least AY, GBS, GYM, HES, KSS, NSF, SAP, SGC, SPC, and VGM as well. And when the smartphone app is ready for your plugin, we can play all sorts of game music files. Thanks,



Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-05-31 02:57:37
It already is integrated on iOS and Android.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2016-05-31 03:29:05
It already is integrated on iOS and Android.
Cool ^_^
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Supermansaga on 2016-05-31 03:43:55
It already is integrated on iOS and Android.

Supporting SPC files! This is amazing!!! The app seems to have issues with non-unicode characters though. It doesn't display Chinese/Japanese properly.

Have you taken a look at the fmpmd formats mentioned earlier? Thanks
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-05-31 05:59:21
I'll have to import iconv or similar for codepage conversion, since we don't get Windows' handy "ANSI" codepage conversion tools on the mobile devices. It'll also have to try to detect code pages and pick the correct one.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: mrbrax on 2016-05-31 09:36:05
The files support ReplayGain tags, but they are inside of archives, and I cannot modify archives.
Alright, thanks. Would be neat if it was possible for FB to have some kind of database that didn't write to files for that but eh..

But for the volume issues, couldn't there be some kind of amplifier just for the affected sound emulators, as the others work fine?
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-05-31 20:31:21
Loudness varies between games. There is no amplifier that would work correctly in all situations.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: fastfourier on 2016-06-13 07:56:22
Hey Kode54, I wanted to ask if there's a way to do something that some Winamp plugins have had for a while:

The option to loop a song until a certain desired length is reached. Once the cutoff is reached, it finishes the last loop and moves on. This would ideally be applicable across all supported formats. The obvious benefit of this option is it ensures that an enjoyable length of playtime is achieved for every song, while not dramatically lengthening songs that do not require it.

An additional option could also set a cap for maximum loops (to handle extremely short songs), although I would consider this less important.

I'd even be willing to toss some cash at the development of such an option if it's possible. Let me know what you think. Thanks for your hard work!
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-06-14 06:17:27
The thing is, VGM is the only format this component supports where loop length is known. Every other format, the tags only specify length and fade. And none of the emulated formats have any mechanism to signal that a loop has occurred, short of attaching a loop detector that watches the decoded PCM data for the obvious repeat. And I don't think a loop detector is really feasible for real time playback, since for instance the SID lengths database is based on pre-scanning the entire collection release with a brute force scanner, and I've never heard of any emulated formats using such a scanner in real time.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Googer on 2016-07-06 14:53:29
I'm finding that any VGM file crashes foobar2000 when loading it with foo_gep 1.197.  I could send a crash dump if needed but this probably isn't necessary since any of the rips from, say, Project2612, trigger this and I doubt any other components I have installed are the cause of this based on my look at the stack trace and it was fine until I updated foo_gep. :P
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: orbbu on 2016-07-06 16:14:16
Same problem here, playing any MegaDrive VGMs results in a crash using version 1.197.

I've downgraded to version 1.191 and no more crashes, though I have glitches on some Arcade VGMs such as Outrun ect. Also, when parsing the library with lots of new VGMs, it seems there is a memory leak on the VGMs and RAM usage goes up until it crash when reaching around 3 to 4 GBs, probably because Foobar2000 is 32 Bits.

Is there any alternative VGM plugin in Foobar2000?
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-07-07 00:17:44
Yeah, sorry about that, I made a mistake when introducing a new aspect of the file reader API used by VGMPlay, which only affected reading Gd3 tags. It's fixed now.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2016-07-07 01:22:12
I'm finding that any VGM file crashes foobar2000 when loading it with foo_gep 1.197.  I could send a crash dump if needed but this probably isn't necessary since any of the rips from, say, Project2612, trigger this and I doubt any other components I have installed are the cause of this based on my look at the stack trace and it was fine until I updated foo_gep. :P
I tried it out and get crashes too on Sega Genesis vgm files. crash report sent.
ohh there's an update to v1.198 I'll try that one out.

ok vgm files are playing again
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Googer on 2016-07-07 02:31:48
Yes, 1.198 plays VGM files fine once again.  Thanks! :)

On another note, something I noticed quite some time ago but have kept on forgetting to report on (until now ;)) is an odd bit of behavior with foo_gep and foo_upnp working in conjunction with one another.  The oddity is when foo_gep is transcoding Sega CD VGM files (such as SIlpheed) for a client that can't natively decode VGM files.  What happens is only the Genesis voices from the VGM play - the additional Sega CD samples, voices, etc., don't play.  I've looked into all the various settings in both foo_gep and foo_upnp but haven't figured out anything that could be causing this.  Any ideas? :P
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-07-07 04:08:49
Are you sure you don't have multiple VGM handling components installed? What about GEP control, are any channels muted?
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Googer on 2016-07-07 06:38:13
A bit more (ok, actually quite a lot :P) testing and I figured out what's going on (though I haven't fixed it just yet) - it's not foo_gep that's at fault - it's the integrated Game Music Emu codec in ffmpeg.  See, on the devices I was testing with it wasn't connecting to foobar2000 directly but rather was going through BubbleUPnP Server and it's proxying its requests to foo_upnp through ffmpeg, and that's what's got the faulty transcoding on Sega CD VGM files.  I tried using my Xbox 360 on the same LAN as my computer with fb2k to talk directly to the foo_upnp server and when I played some Sega CD VGM's through it, all channels played correctly. :D

I thought I'd just be able to play with my streaming profiles in foo_upnp to force it to decode such codecs when it detects ffmpeg connecting to it but thus far that hasn't worked even though I have it detecting that just fine (using User-Agent Lvaf for that)...  In any case this discussion is probably more appropriate to continue in foo_upnp / BubbleUPnP Server areas. :)
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: orbbu on 2016-07-07 16:41:03
@koe54: Thanks for the update! Now the MegaDrive VGMs don't crash anymore.

I still have random sound glitch issues with some VGZs file, mostly X68000 files, for instance Valis2 that you can download here:
https://vgmrips.net/files/Other/Mugen_Senshi_Valis_II_(Sharp_X68000).zip

The glitch is random, sometimes the songs play just fine, but when browsing other songs the glitch starts and don't stop until I restart Foobar2000.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: orbbu on 2016-07-07 22:22:40
Following my previous message, I've noticed that I also have a sound glitch with the SSF plugin, but disabling the dynarec DSP fixes the issue.

Might be the same problem with the VGM plugin, but there's no option for disabling the dynarec DSP. Can you please add it?
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-07-07 23:32:54
It is hard coded disabled in foo_gep, and there are no SCSP rips available anywhere yet, for that matter.

Please report any SSF rips that glitch out with the dynamic recompiler.

E: My bad, I seem to have broken it myself. Will fix.

E2: Fixed. And fixed another dumb bug in the ADPCM decoder.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2016-07-08 03:39:53
Thx Kode54 for your fixing ^_^
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: orbbu on 2016-07-08 14:43:04
Thanks for the updates! The dynarec DSP works now for the SSF format.

Unfortunately, opening any X68000 VGM results in a crash. For instance "06 Pinch Zone (Pinch).vgz" from the Valis2 download I mentioned. I've attached the log.

EDIT: The crash also happen with Arcade VGMs, such as Outrun.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-07-09 01:22:10
Fixed. Another memory access bug due to uninitialized null pointer, uncaught in Wine because apparently Wine lets programs write to random addresses around zero.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: orbbu on 2016-07-09 14:11:19
Awesome! I confirm everything works fine now.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: XavierTeodonius on 2016-07-18 14:48:05
Hello!

I have a problem with Game Emu Player 1.200 and NSFE files (Foobar 1.3.8). In Game Emu Player NSF section I unchecked "Ignore NSFE playlists", but they are ignored anyway. I tried to check/uncheck it with no success. I tried a dozen of NSFE files with same result everywhere. I also checked those NSFE files in NotSoFatso Winamp plugin, everything working fine, songs are sorted according to playlist.

Please help me with this problem, maybe I'm doing something wrong or maybe this option is broken.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Kilu on 2016-07-18 16:13:17
That option basically determines whether to load all tracks from the nsfe (including sound effects and such if the rip has them) vs just the tracks from the playlist. I don't know if it's by design or not. As far as I recall gep has never used the sorting from the playlist.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: XavierTeodonius on 2016-07-18 16:46:49
Any chance tracks order from NSFE playlist feature will be implemented? That is a real deal breaker for me. I like to listen whole NSFE playlist and right now I get horrible results like:
- track 01 - Ending
- track 02 - battle music
- track 03 - Stage 4
- track 04 - Alternate Ending
And so on. As you can see it's a mess.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: SunClonus on 2016-07-20 20:23:19
Thanks for the plugins, Kode54. I have a question:

Zan Gear is playable? Because the kss file don't work.
In Golden Sun: The Lost Age to repeating or change the track it has a click sound at the beginning.

(Sorry for my english)
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: orbbu on 2016-08-01 22:50:08
@kode54: Hello,

I have issues with the PSF plugin, Foobar2000 crash when reading some files, in both PSF1 and PSF2 formats, for instance track 001 from Growlanser 5 on PS2:
http://psf2.joshw.info/g/Growlanser%20-%20Heritage%20of%20War%20%5bGrowlanser%20V%20-%20Generations%5d%20(2006-08-03)(CareerSoft)(Atlus).7z

Any chance for a fix? Thanks!
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-08-02 01:12:29
Please read the big fat warning on the foo_psf component page, directing you to the foo_qpsf component page, which has no trouble playing most if not all rips.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2016-08-02 01:59:49
I noticed two things about the PSF plugin I have attached two screen sots detailing my findings

1) Emulation mode non-selectable
2) Component name/label abbreviate not right
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: orbbu on 2016-08-02 15:43:15
@kode54: It seems I was using an old version on which the update feature wasn't working. I've reinstalled the plugin and it is now working fine. Thanks!

@Melchior: I think you have the same issue I had. Just remove the plugin and install this one:
http://www.foobar2000.org/components/view/foo_psf
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2016-08-02 17:56:21
@kode54: It seems I was using an old version on which the update feature wasn't working. I've reinstalled the plugin and it is now working fine. Thanks!

@Melchior: I think you have the same issue I had. Just remove the plugin and install this one:
http://www.foobar2000.org/components/view/foo_psf
Thx that fixed it for me playing FF10 PSF2 files...

I wonder how the foo_input_psf got installed in the first place as I only use the upgrade feature mainly...
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Kilu on 2016-08-02 20:06:13
Seems like kode54 did some background changes and foo_psf is using Highly Experimental again. It was using AOPSF for a while.


Hey kode54, aside from compatibility, how do the cores compare in other ways? I'm just curious if I should keep an eye on AOPSF.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-08-02 21:11:47
Dubious legality. The Highly Experimental core has required, since its creation, a block of ~100KB of MIPS code derived from the PS2 firmware and also from custom compiled and patched code pieces. Included with the library is the minimal code necessary to take a US or European firmware image and turn it into the 100KB data (padded to 512KB) necessary to play anything. Included in the plugin repository is a copy of the existing pre-generated blob, which is included with the plug-in.

If anyone wants to make HE work without that blob, or make AOPSF work with all rips and stop crashing, or port PSF Player from the Play! emulator, which is a mess of advanced C++ stuff, feel free to help out.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Kilu on 2016-08-03 12:05:03
Dubious legality. The Highly Experimental core has required, since its creation, a block of ~100KB of MIPS code derived from the PS2 firmware and also from custom compiled and patched code pieces. Included with the library is the minimal code necessary to take a US or European firmware image and turn it into the 100KB data (padded to 512KB) necessary to play anything. Included in the plugin repository is a copy of the existing pre-generated blob, which is included with the plug-in.

If anyone wants to make HE work without that blob, or make AOPSF work with all rips and stop crashing, or port PSF Player from the Play! emulator, which is a mess of advanced C++ stuff, feel free to help out.
Oh, that's interesting. Thanks for the reply.
And thanks for your hard work too of course, I wish I could help.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: TheAlmightyGuru on 2016-09-01 21:52:42
I've noticed that NEZ Plug style M3U playlists are not working for GBS and NSF formats, but they do work for KSS and HES. Is this by design?
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: 2DKnights on 2016-10-07 20:50:50
Firstly, I love the component. I wanted to ask if it might be possible to add channel level pitch shifting and / or volume controls?
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: pooiyx on 2016-10-09 09:42:18
Hi. I have a question regarding the foo_gep plugin for foobar.

How do I loop .nsf files (or any file format for that matter) to play indefinitely?

I can do this in winamp when I listen to chiptune formats, but I don't know how to do this in footbar.
Thanks.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-10-10 01:49:31
Open Preferences, locate Playback -> Input -> Game Emu Player, and configure it there.

In a future version of all of my components, I will try making this configured by observing whether the current playback order mode is set to Repeat (track).
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: JonTrovage Gives Damn Shi on 2016-11-11 08:20:33
Can you update the foobar gep component? I want to use gep control for psf and psf2. And is there another way to split psf's and seperate save it?  If it is, let me know.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-11-12 02:54:14
Splitting most xSF formats is not logical or useful:

PSF/PSF2/SSF/DSF/QSF/NCSF: All of these formats use hardware sound chips simulated by their plugins, but all of the games' sound libraries use dynamic channel allocation. You'll find individual instruments almost randomly hopping their way repeatedly through all 24 or 32 channels of a given chip, and you would have to merge and split those all by hand.

USF/GSF: These formats use pure software mixing, so muting individual instruments and channels would require per-album hacks to the sound code within the dumps.

Not to mention that none of these formats are covered by foo_gep.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Nahkranoth on 2016-11-17 23:27:09
Hi, kode54!
foo_gep unfortunately produces no sound when playing VGM tunes from the following collections:
Sonyc_MS.zip (https://vgmrips.net/files/Sonyc_MS.zip) and Mario_Bros_(Atari_5200).zip (https://vgmrips.net/files/Other/Mario_Bros_(Atari_5200).zip) (and basically all VGM files using Pokey chip.
foo_input_vgm plays these tunes fine though.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-11-18 07:03:13
Sonyc_MS.zip - YMF-278B ... Oh, there's a ROM I wasn't bundling or asking people to acquire...

Mario Bros (Atari 5200) and other Pokey titles - Looks like my resampler wasn't tuned for ratios greater than 34:1. Now it'll handle over 60:1.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Nahkranoth on 2016-11-18 11:13:00
Sonyc_MS.zip - YMF-278B ... Oh, there's a ROM I wasn't bundling or asking people to acquire...

Mario Bros (Atari 5200) and other Pokey titles - Looks like my resampler wasn't tuned for ratios greater than 34:1. Now it'll handle over 60:1.
Thanks, works like a charm!

If there was an alley of foobar2k stars, you'd be there.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: CaptainZana on 2016-11-29 13:17:41
Hello there, i have just came from a fresh installation, and i did not bring the plugins onto it, now i have found that GEP ( and vgmstream, highly advanced, and so on ) is missing. Does anyone have a mirror for version 1.207 of the 18th of November of 2016 As listed by the component page? (https://www.foobar2000.org/components/view/foo_gep)

In fact, what happened for all of Kode54's plugins to go missing?
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: deus-ex on 2016-11-29 16:02:40
In fact, what happened for all of Kode54's plugins to go missing?
Refer to this (https://hydrogenaud.io/index.php/topic,98907.msg931338.html#msg931338) thread to find some answers and a glimps of a silver lining at its current end.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Shinsekai on 2016-11-29 16:16:02
Does anyone have a mirror for version 1.207 of the 18th of November of 2016
Send a PM to kode. See here: https://hydrogenaud.io/index.php/topic,113130.html
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: CaptainZana on 2016-11-29 19:24:44
Refer to this (https://hydrogenaud.io/index.php/topic,98907.msg931338.html#msg931338) thread to find some answers and a glimps of a silver lining at its current end.

Send a PM to kode. See here: https://hydrogenaud.io/index.php/topic,113130.html

Welp. Guess i will have to do so, and wait patiently for them to get published again. ( also to remember to do backups more frequently )
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: CoRoNe on 2016-12-22 22:40:49
I believe there's a bug in foo_gep while loading/playing the soundtrack of Super Marion Land 2 (http://www.zophar.net/music/gameboy-gbs/super-mario-land-2-6-golden-coins).
When you visit that url you can see that you can also download all the individual tracks as mp3, and that track 24 - the reason for my post - is supposed to be 29 seconds. There's a good chance that guy has used foo_gep for the conversion then, because in reality track 24 loops infinitely. When you manually time-seek beyond 0:29 you'll understand why.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-12-23 05:58:17
Not a bug in the player. If you turn on the tempo/mute override in the GEP Control, and enable playing forever, you'll note that it plays through the silence.

Silence detection is set to 10 seconds. Perhaps I should increase it to a full 30 seconds for GBS?
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: CoRoNe on 2016-12-23 10:17:50
Hah! I never knew about the existence of "GEP Control" in the "View"-menu. First time I've used it now. :-[
"Force all songs to play indefinitely" under "Global settings" wasn't needed to play through the silence.
Is it save to have "Enable playback override" permanently enabled, or does it cause problems with other things?
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-12-23 20:44:21
It's safe to leave enabled, but know that now very short tracks without timing information will now play for the full 3 minutes, or whatever you've configured your default duration to be.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: CoRoNe on 2016-12-23 21:27:58
That's where DSP "Skip silence" comes in handy. ;)
No, but seriously,...

Silence detection is set to 10 seconds. Perhaps I should increase it to a full 30 seconds for GBS?
...perhaps that would be the best solution.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: 322 on 2016-12-31 11:05:14
Hello!

The latest version appears to be broken, many songs play like this: The Alps - Stage 1.ogg - 109 KB (http://uptobox.com/yt66avfzeb80)

The game in question is "Marsupilami" for Sega Mega Drive in VGZ format.

I can’t find the older version for the plugin, please help!
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-12-31 18:47:03
It's a bug in the current VGMPlay code, you'll have to wait for someone to either fix VGMPlay, or fix the rip. I'll keep this topic up to date if I hear anything new.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: 322 on 2016-12-31 21:50:06
Never mind. I’ve found a very old version (v1.177) in my very old computer I no longer use. I’ll stick to that until the newer version is fixed.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2016-12-31 22:16:16
Note that this bug also occurs with the official VGM player software, VGMPlay. The author, ValleyBell, said they would be back some time in the new year. I will bug them about it then. I don't really know what's causing the issue, so I can't really identify it.

This switch to VGMPlay was supposed to make it easier to maintain the overly complex VGM format support, as well as fix lots of odd chips I didn't support before. Unfortunately, it introduces its own bugs that need to be fixed.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Corak on 2017-03-18 15:56:15
@kode54 currently there is a problem with reading data "20 Desert.vgm" from "Jill of the Jungle" PC-DOS rip by @NewRisingSun, using YM3812 chip emulation.. The current foo_gap just hangs for 30 secs, then refreshes and loads it into list. But conversion to audiofile totally hangs.
file: http://coraksoft1.narod.ru/temp/vgm/Jill_20_Desert.vgm
http://vgmrips.net/forum/viewtopic.php?f=12&t=2612

Update: Found core of problem - strangely, but this file has some conflicts with foo_unpack_lha plugin. If this plugin removed - then file works normally with foobar2k and foo_gap plugin.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Corak on 2017-03-21 23:14:10
@kode54 Additionally found best GBS (Gameboy music rips) plugin/player ever.
It has much better sound solution . It's "Bleep!".
Listened to the differences between any other plugins, and gep for foobar2000, you developed - still it's better
Latest Bleep: http://web.archive.org/web/20140330134651/http://www.neillcorlett.com/bleep/
 https://www.zophar.net/utilities/audio-multi/bleep-.html
Info from author: https://www.zophar.net/forums/showthread.php?t=15236
Source code: http://web.archive.org/web/20130616060313/http://www.neillcorlett.com/downloads/Bleep-1.09-source.zip

Example, where any other player/plugin simply will suck:
https://www.zophar.net/music/gameboy-gbs/gargoyles-quest
 Just listen the first song with any plugin (for winamp or foobar), and with bleep winamp plugin.
All of them will sound abruptly, like it's some process cpu time breaking... But with Bleep - it sounds like it was designed for - continuously and without some linear filteris.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: jeremynsl on 2017-03-29 22:20:22
How do you access the advanced options?  I remember messing with them in the past but have completely forgotten how to get them.  Sorry for such a simple question but can't find an answer on Google either.

edit: figured it out...  For some reason I thought it was accessed by clicking the graphic in foo_gep standard options.  Duh, you just go to the main Foobar advanced options (preferences > advanced > playback).
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: ethernest on 2017-08-16 10:48:26
hi all, know this is kinda inactive. I don't even use windows but I still use foobar pretty much on account of this and other game related plugins. one thing I remember though was that gep used to have more advanced controls? like you used to be able to mute specific tracks in the song emulation. is that no longer a feature?

it's be really handy for recording specific elements...


anyway, it's still great, so thanks kode54 for your hard work!
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Kilu on 2017-08-16 11:23:43
hi all, know this is kinda inactive. I don't even use windows but I still use foobar pretty much on account of this and other game related plugins. one thing I remember though was that gep used to have more advanced controls? like you used to be able to mute specific tracks in the song emulation. is that no longer a feature?

it's be really handy for recording specific elements...


anyway, it's still great, so thanks kode54 for your hard work!
In foobar menu, check View->GEP control. If the emulation format supports channel muting and stuff, that's where the controls are going to be.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: PureRok on 2017-08-25 13:18:08
I'm having an issue regarding GBS and m3u. The GBS file runs fine with all of the tracks playing, but when I select the m3u nothing happens. It blanks out my playlist, but that's it. As far as I can tell the m3u is properly set up, so I don't know what's going on.

Anyone have any idea what could be going on?

I tried it with an m3u like this:
Code: [Select]
DMG-ADQJ-JPN.gbs::GBS,0,Overture - Koichi Sugiyama - Dragon Warrior Monsters - ©1998-09-25 Tose\, Enix,1:29,,1

and another like this (generated using VGMToolbox):
Code: [Select]
#######################################################
#
# Game: Dragon Warrior Monsters
# Artist: Koichi Sugiyama
# Copyright: 1998 Enix
#
#######################################################

DMG-ADQJ-JPN.gbs::GBS,0,Koichi Sugiyama - Dragon Warrior Monsters - Track 00,,,,
DMG-ADQJ-JPN.gbs::GBS,1,Koichi Sugiyama - Dragon Warrior Monsters - Track 01,,,,
DMG-ADQJ-JPN.gbs::GBS,2,Koichi Sugiyama - Dragon Warrior Monsters - Track 02,,,,
DMG-ADQJ-JPN.gbs::GBS,3,Koichi Sugiyama - Dragon Warrior Monsters - Track 03,,,,
DMG-ADQJ-JPN.gbs::GBS,4,Koichi Sugiyama - Dragon Warrior Monsters - Track 04,,,,
DMG-ADQJ-JPN.gbs::GBS,5,Koichi Sugiyama - Dragon Warrior Monsters - Track 05,,,,
DMG-ADQJ-JPN.gbs::GBS,6,Koichi Sugiyama - Dragon Warrior Monsters - Track 06,,,,
DMG-ADQJ-JPN.gbs::GBS,7,Koichi Sugiyama - Dragon Warrior Monsters - Track 07,,,,
DMG-ADQJ-JPN.gbs::GBS,8,Koichi Sugiyama - Dragon Warrior Monsters - Track 08,,,,
DMG-ADQJ-JPN.gbs::GBS,9,Koichi Sugiyama - Dragon Warrior Monsters - Track 09,,,,
DMG-ADQJ-JPN.gbs::GBS,10,Koichi Sugiyama - Dragon Warrior Monsters - Track 10,,,,
DMG-ADQJ-JPN.gbs::GBS,11,Koichi Sugiyama - Dragon Warrior Monsters - Track 11,,,,
DMG-ADQJ-JPN.gbs::GBS,12,Koichi Sugiyama - Dragon Warrior Monsters - Track 12,,,,
DMG-ADQJ-JPN.gbs::GBS,13,Koichi Sugiyama - Dragon Warrior Monsters - Track 13,,,,
DMG-ADQJ-JPN.gbs::GBS,14,Koichi Sugiyama - Dragon Warrior Monsters - Track 14,,,,
DMG-ADQJ-JPN.gbs::GBS,15,Koichi Sugiyama - Dragon Warrior Monsters - Track 15,,,,
DMG-ADQJ-JPN.gbs::GBS,16,Koichi Sugiyama - Dragon Warrior Monsters - Track 16,,,,
DMG-ADQJ-JPN.gbs::GBS,17,Koichi Sugiyama - Dragon Warrior Monsters - Track 17,,,,
DMG-ADQJ-JPN.gbs::GBS,18,Koichi Sugiyama - Dragon Warrior Monsters - Track 18,,,,
DMG-ADQJ-JPN.gbs::GBS,19,Koichi Sugiyama - Dragon Warrior Monsters - Track 19,,,,
DMG-ADQJ-JPN.gbs::GBS,20,Koichi Sugiyama - Dragon Warrior Monsters - Track 20,,,,
DMG-ADQJ-JPN.gbs::GBS,21,Koichi Sugiyama - Dragon Warrior Monsters - Track 21,,,,
DMG-ADQJ-JPN.gbs::GBS,22,Koichi Sugiyama - Dragon Warrior Monsters - Track 22,,,,
DMG-ADQJ-JPN.gbs::GBS,23,Koichi Sugiyama - Dragon Warrior Monsters - Track 23,,,,
DMG-ADQJ-JPN.gbs::GBS,24,Koichi Sugiyama - Dragon Warrior Monsters - Track 24,,,,
DMG-ADQJ-JPN.gbs::GBS,25,Koichi Sugiyama - Dragon Warrior Monsters - Track 25,,,,
DMG-ADQJ-JPN.gbs::GBS,26,Koichi Sugiyama - Dragon Warrior Monsters - Track 26,,,,
DMG-ADQJ-JPN.gbs::GBS,27,Koichi Sugiyama - Dragon Warrior Monsters - Track 27,,,,

Neither works.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2017-08-26 00:33:50
You can't add custom M3U files to the playlist. They will be used automatically if you name them the same as the song file, and add the song file to the playlist. This will not change, as adding extended M3U support to the player is beyond my capability as a component author.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: PureRok on 2017-08-26 02:20:02
Ah, I see. That definitely works. Thanks. Not knowing that kind of explains why I couldn't find anyone else with this problem via googling.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: keyglyph on 2017-09-08 05:21:45
I've been using Game Emu Player for years and years and am very grateful to kode54. So, thank you!

Recently I've been having troubles with SPCs, though.  I've had Emu set to successfully export my tracks as 15:00 long .wavs forever, but in the last few months SPCs have either been 1) randomly exporting via Emu with two loops and a fade or 2) not with Emu at all.

I also use SNESAPU input, which works fine -- but SPCs are now exporting with SNESAPU's settings exclusively regardless of whether the SPC box in Emu is checked (notwithstanding the occasional and mysterious switch to two loops +fade).  SNESAPU is either overwhelming Emu or stepping in for it when it fails. Reinstalling Emu doesn't change anything.

GBS files are still correctly exporting at Emu's 15:00 length, however, so this appears to be an isolated problem with SPCs.

Has anyone else experienced this? I'm using foo_gep 1.211. Maybe I have an old version?

Thank you for any and all help.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2017-09-09 01:10:55
Having two inputs handle the same format is not that useful, since most inputs can't be configured to prioritize over another input, and even if they could, the player itself randomizes their order on every startup.

Pick a single input, stick with it. If you can't turn the other input off, don't expect priority controls in plugins themselves to work over what the core has in mind. Just because foo_gep can be enabled, doesn't mean it will take priority over anything else installed, it may or may not, depending on that service list randomization that happens on every program startup.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Rollin on 2017-09-09 11:06:04
most inputs can't be configured to prioritize over another input, and even if they could, the player itself randomizes their order on every startup.
If BOTH plugins for the same format have option do enable/disable this format support, then they CAN be configured to prioritize one over another. Tested with foo_gep and foo_input_zxtune.
But of course foo_gep cannot  be configured to prioritize over snesapu, because only foo_gep has option to enable/disable spc support and snesapu have no such option.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: keyglyph on 2017-09-15 05:47:00
Just because foo_gep can be enabled, doesn't mean it will take priority over anything else installed, it may or may not, depending on that service list randomization that happens on every program startup.
This makes sense, but I wanted to check if there was a solution here because for the past four years I've been able to easily and immediately switch control between the two plugins by checking or unchecking that box.  It only became an issue within the last few months, possibly after a plugin update.  It also doesn't explain why when Emu takes control it applies unique settings to the SPCs that are not set anywhere, so I wasn't sure if this behavior was indicative of a different problem.

I wish I could just stick to one plugin or the other, but I have to match my exports as closely as I possibly can to someone else's rips for podcast work, and neither plugin matches in all cases.  I'd love to just use the same program my podcast friends do and avoid the problem altogether, but they use a Mac-only application and I'm a PC user.

Anyway, thanks for the responses.  I appreciate your hard work, I understand the solution I'm looking for doesn't exist, and I will have to adapt.

EDIT: Looks like my solution is just be to relaunch foobar until Emu wins the plugin faceoff, haha.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: ClockworkBastard on 2017-11-01 21:00:57
First of all, thanks kode54, I really respect your work, and even when I noticed the latest bug, I stood still for about half a year, thinking "ahh, someone will point onto this, why should I double?" But ouch! I feel myself as I'm the only person in the world who listens to the SMD VGM's.
Now It passed 3 subversions, and the problem remains. I should speak of it.
The entire original
Code: [Select]
Based on Game_Music_Emu vX.X.X
Originally by Shay Green
http://www.slack.net/~ant/
has a flaw. Looks like it's not really obvious, and it make me anxious for a freaking decade LOL!
Something's wrong with the idea of looping VGMs.
The defaulest behaviour say it should play two time in a row, just because.. well, all the sega tunes are too short, right? Yep?
Not really.
And the funniest part came when that code lives on.
As it seems to me - the code don't really understand itself, what to call loop.
Now foo_gep entirely ignore any loopcount, and play it double.
Android version of comrade player DDB2 suppose that loopcount=1 means - "ok, play one time" while loopcount=0 goes "screw you entire timing, I'll play default length considered". As a couple of previous ones took zero as no looping. My gosh..
Looks like he initial code gets patch a bit by other developers in their product, where 0=1 1=0 2=default, and then they take the initial code once again and eventually we can has 0=-1 looping cycles.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2017-11-01 22:41:35
Loop count is how many times it repeats the loop before fading. If you want two loops, you set it to one, and it repeats the loop once. I don't know why I made it that way.

None means play the file for its full length, then fade/stop.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: ClockworkBastard on 2017-11-01 23:27:06
Thanks for an instant answer!
But no, I mean it. Loopcount setting does not make anything for a quite versions already. Please, take a look at screenshots.
Spoiler (click to show/hide)

Also, I think it's the right way to measure the looping times!
So we have 0 as not to loop, and 1, to loop once and have tune played for two times...
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2017-11-03 00:46:00
They will cut off automatically at the correct length. The playlist will not magically update to show the correct length, you must reload info for the new times to show up.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: ClockworkBastard on 2017-11-03 02:04:45
Thanks for an answer, but I'm not an idiot, that the modern people got used to. I know how to test software, and I'd check myself and options that I have, before bugreporting.
All of my 2 post before said that I have this problems throughout time and certain changes.
I cleared the playlist, played different track from other playlist (in mp3), closed the fb2k, then reopened it and add the files to playlist and see no change.
PS May be the newer fb2k is the problem!? I'll check it out before your new message...
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2017-11-03 03:48:33
Link me to your files, then. If changing the loop count doesn't make the "reload info" show a different length, then the files in question do not have loop start points defined.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: ClockworkBastard on 2017-11-03 06:52:01
 ::) Something is very wrong with VGZ emulation

I've got the same packege, looks like updated.
There is 1x correct time and at first - give me the loopcount change made in options. While the old one remained the 2x at all time
Here is two files
https://www.dropbox.com/s/ad1k9s7h0tnk7hi/AdvBats.zip?dl=0
At the same time, after restarting fb2k the time sticks to it's defaults,  matter what put to loopcount.
Two files - old and new is in the archive.
I can make further testing in 10 hours from now
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: ClockworkBastard on 2017-11-03 09:14:23
Screw dayjob, we're talkin' precious Sega Mega Drive Genesis music!
The freshest install of Foobar2000, with up to date GEP plugin.
Being Loopcount: 1 make "old" and "new" files loop once (and played two times).
Set to none did the job... man.
I'll do further testing on the home PC to catch that conficting something.
As for now, let's consider the bug very specific and forget for now, 'till I return with information after deeper digging the problem.
Anyway, sorry for bothering

(https://preview.ibb.co/j3nuoG/Screenshot_3.jpg) (https://ibb.co/emQQvw)

Title: Re: Game Emu Player (foo_gep) by kode54
Post by: ClockworkBastard on 2017-11-03 19:58:46
That was... interesting. But I got it, and fixed.
The wrong, doubled time of the exact VGMs was stored in the library by it's paths. Renaming a directory and adding it to a playlist - already showed the correct time. But I want to keep the names.
Only when I remove the chiptunes' directory from the library — make it finally solved.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2017-11-03 23:34:39
Oh, heck. I store tags in a database by hash or path, and length of non-SPC files should not be affected by this database entry.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: ClockworkBastard on 2017-11-04 21:44:10
Heh, I'm glad that inconvenience I found is real and maybe ought to be fixed someday.
Here I'd show last screenshot I made. Any instance of the file obey the loopcount setting, except of one that stored in the library by the exact path.
Spoiler (click to show/hide)
Thanks again for the work you do, kode54. If you need some testing — I'm here, now signed to the thread. and also I've got a chiptune dream feature request, that will make it's author legendary! ;)
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Rfi on 2018-01-08 14:35:56
In the newer versions something seems to be broken with a GBS set I am using: http://www.snesmusic.org/hoot/gbs/Super%20Mario%20Land%202%20-%206%20Golden%20Coins%20(1992)(Nintendo).zip

Basically, the track names do not correspond to the track being played on newer versions. Where on 1.186 for me the track names and output correspond fine.

During my searches concerning this issue I came upon a Reddit post where another Reddit user appeared to have had the same problem and suggested version 1.210 is where the change occured that caused this. He also seemed to suggest that GBS playback worked fine in  1.203. I myself can only confirm that version 1.186 works because it was the only old version I could find.

Reddit post: https://www.reddit.com/r/foobar2000/comments/6s15r4/game_emu_player_playing_wrong_track/

Reproduction steps using the latest version published on Foobar2000's components repository at the time of this post (1.212):
Drag and drop 'Super Mario Land 2 - 6 Golden Coins (1992)(Nintendo).gbs' from the above linked archive into a newly created playlist

Play 'Super Mario Land 2 - Macro Zone' and notice that the output is actually the Invincibility music and not the Macro Zone music.

For reference: Macro Zone music: https://www.youtube.com/watch?v=_5P-BhwP7dM
And Invincibility music: https://www.youtube.com/watch?v=OQCUoyNwaco
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2018-01-09 00:13:39
Ask them to fix their stupid M3U playlists. Nobody can seem to agree on the correct format for those. The track numbers are either wrong in one rip, or wrong in another. People frequently mix up whether to make the subsong indexes 1-based, or 0-based, and forget whether the format they're applying them to is already 1-based or 0-based. It doesn't seem to matter if the numbers are hexadecimal or decimal based, nobody can agree on the correct standard. I'll welcome a pull request to "fix" it without breaking the same M3U playlists that I fixed with 1.210.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: ClockworkBastard on 2018-01-09 10:07:22
Ask them to fix their stupid M3U playlists. Nobody can seem to agree on the correct format for those.
Mister kode54
Isn't it a great time already to suggest your own container similar to NSFe?
They did it with NotSoFatso and seriously the exact plugin was not perfect.
But NSFe lives on and it's quite great IMHO

I downloaded the OST from well known Zophar's Domain, and none of my everyday music players can handle that M3Us adequately!
(Foobar2000, DDB2, ZXTune)
I've got couple of Winamps at home but... do we really should use such?

As for complete different solution:
The most annoying thing in dozens of original chipmusic formats for me is the good-old endless looping, that can be controlled forcing the playtime, but will occur some ugly endings and the worse — cutting the longer tracks. As I mentioned before
... and also I've got a chiptune dream feature request, that will make it's author legendary! ;)
That dream chiptune plugin is one that detects loops, solving that one-for-all chiptune problem.

As I see it - the control on sound processing level, comparing the output waveform. Plus to have a bit of a settings. Like "detect silence" and a few more.
Shortest track preferred after loop (like when there is some 2 second jingle looped to make it 4 times loop) and the longer preferred (If the chorus is 25-40 seconds, to loop it until 1m 20s)
That would become a milestone for chiptune players and if would be open sourced — will be added everywhere ever after

Title: Re: Game Emu Player (foo_gep) by kode54
Post by: LongevityLord on 2018-02-17 08:34:00
Exporting (as FLAC, and with no DSPs) and examining the output of GEP (also foo_input_usf) reveals clipping on some tracks. (If you need proof, I can provide screenshots.)

I'll accept clipping that would have occurred on the original consoles, but do GEP and foo_input_usf (and any other related plug-ins) amplify the generated sound? (I know the SPC part of GEP is about 6dB louder than foo_snesapu.) If they do, then please add the option to disable the boost (or better yet, adjust the gain).
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2018-02-17 10:09:59
The boost in foo_gep for SPC is disabled by default, as is the analog filter simulation, which is an integer scale effect. GEP SPC should be the same volume as foo_snesapu in the default configuration.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: LongevityLord on 2018-02-17 10:37:27
Right, I was running an old version of GEP; after updating it, the levels match.

The situation with the other formats hasn't changed, though.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2018-02-17 10:49:50
USF is software rendered by the emulated game code. No level adjustment is applied to it.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: jeremynsl on 2018-03-04 18:31:51
Hi @kode54

I use foo_gep to listen to Sega Genesis music.  Lately the emulator Genesis Plus GX has added some useful features to produce more accurate music, in particular a lowpass filter.  I'm wondering if any of this code might ever find it's way into foo_gep?

https://forums.libretro.com/t/genesis-plus-gx-where-is-the-audio-lowpass-filter/12169/12
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2018-03-10 03:42:00
nuked!

On a related note, what's with the Genesis Plus GX eternal Release Candidate version from 2015?  New release is overdue, perhaps?
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2018-03-10 04:55:06
That's quite amusing, since people spent the better part of previous years complaining that my plugin didn't produce nearly enough treble for their tastes.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2018-03-11 05:38:56
The "nuked" 100% accuracy core makes the intro of Phantasy Star II not sound awful by making the SSG-EG (or whatever) work.  For example.

I'm hoping our 44100 Hz VGM logs would also benefit from the accurate core.  And then there could be an option to turn off the DAC decimation/quantization, as an enhancement to make it sound better than the real thing.

Valleybell hasn't updated "in_vgm" to use the "nuked" core, so we're also behind the times there.  Almost accurate Genesis music playback.  Almost!

To me, the analog hardware-like filter option would just be icing on the cake.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: CBTurtle on 2018-03-29 12:08:44
Ask them to fix their stupid M3U playlists. Nobody can seem to agree on the correct format for those.
You can't add custom M3U files to the playlist. They will be used automatically if you name them the same as the song file, and add the song file to the playlist. This will not change, as adding extended M3U support to the player is beyond my capability as a component author.
Can you (or anyone) provide a sample of an m3u that works with foo_gep? I have a few gbs/m3u rips which have a separate m3u for each track. This means I can't use them, since they're all in the same folder and I can't give all of them the same name as the gbs (I guess I could get around this making a bunch of hardlinks to the gbs within the folder so I can give it a bunch of different names, but hopefully the following will be a bit less messy). I think the easiest way to handle these would be simply to open the m3us in a text editor and combine them into a single m3u, but to do that I need to know how foo_gep expects them to be formatted.

If it matters, the ones I have now follow the format:
Code: [Select]
DMG-ADQJ-JPN.gbs::GBS,0,Overture - Koichi Sugiyama - Dragon Warrior Monsters - ©1998-09-25 Tose\, Enix,1:29,,1
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2018-03-30 02:50:16
Yes, that's the expected format, more or less. It just needs the filename, the song number, and some basic metadata about the track, such as name, length, optional fade time.

Separate files cannot work with this player, as it handles all playlist formats internally, and doesn't support this extended crap in M3U format.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: toadhjo on 2018-04-07 02:29:00
Can you (or anyone) provide a sample of an m3u that works with foo_gep? I have a few gbs/m3u rips which have a separate m3u for each track. This means I can't use them, since they're all in the same folder and I can't give all of them the same name as the gbs (I guess I could get around this making a bunch of hardlinks to the gbs within the folder so I can give it a bunch of different names, but hopefully the following will be a bit less messy). I think the easiest way to handle these would be simply to open the m3us in a text editor and combine them into a single m3u, but to do that I need to know how foo_gep expects them to be formatted.

If it matters, the ones I have now follow the format:
Code: [Select]
DMG-ADQJ-JPN.gbs::GBS,0,Overture - Koichi Sugiyama - Dragon Warrior Monsters - ©1998-09-25 Tose\, Enix,1:29,,1

In this case, try:

Code: [Select]
DMG-ADQJ-JPN.gbs::GBS,1,Overture,1:29,,1

Note that you need to change the track number from 0 to 1. You'll probably have to add 1 to all of the track numbers.

Also, MS Word has an "import text from file" option. It's a handy way to compile all of the m3u text into a single file.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: CBTurtle on 2018-04-09 05:38:45
Note that you need to change the track number from 0 to 1. You'll probably have to add 1 to all of the track numbers.

Also, MS Word has an "import text from file" option. It's a handy way to compile all of the m3u text into a single file.
That's very helpful, thank you.

Ask them to fix their stupid M3U playlists. Nobody can seem to agree on the correct format for those. The track numbers are either wrong in one rip, or wrong in another. People frequently mix up whether to make the subsong indexes 1-based, or 0-based, and forget whether the format they're applying them to is already 1-based or 0-based. It doesn't seem to matter if the numbers are hexadecimal or decimal based, nobody can agree on the correct standard. I'll welcome a pull request to "fix" it without breaking the same M3U playlists that I fixed with 1.210.
Apologies if it's against the rules to ask this, but given the links throughout this thread I'm assuming it's ok: can you tell me where you found the GBS/M3U rips you configured foo_gep to support? I've checked several sites, but none of them seem to host files that follow the format the component prefers.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2018-04-10 04:43:09
The truth is, I was yelled at on the hcs64.com forum, and I don't even remember where they got their M3U files from. Next time the M3U code is touched will be by someone competent enough to fix it themselves, maybe someone from that forum knows how to send pull requests. I obviously don't know enough to fix it myself.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: SmartOne on 2018-04-29 21:28:09
My mistake, the latest releases of Genesis Plus GX are here: https://github.com/ekeeke/Genesis-Plus-GX/tree/master/builds

Not here: https://bitbucket.org/eke/genesis-plus-gx/downloads/

Confusing.com (http://Confusing.com)
MisuseOfSourceControl.com (http://MisuseOfSourceControl.com)
CompletelyRelevantToTheCurrentConversation.com (http://CompletelyRelevantToTheCurrentConversation.com)
camalCaseIsGreaterThanTitleCase.com (http://camalCaseIsGreaterThanTitleCase.com)

It's goofy that Valleybell hasn't released "in_vgm" with the "nuked" core.  A shame, really.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2018-05-09 00:59:41
He's too busy working on libvgm, which still isn't capable of playing back VGM files.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: TheVirtualSoundSource on 2018-06-04 04:18:39
Hi.

@kode54, Any plan to support waveforms that uses more than 32-samples on the N163?
Some soundtracks do not play correctly, for example Final Lap, Rolling Thunder etc., due to this limitation.
Also, I noticed that the FDS channel do not play the waveform correctly in "Vs. Excitebike" soundtrack. I tested it using NSFPlay. The difference with this plugin is that with NSFPlay it plays the waveform correctly but with this plugin plays the waveform one octave higher than in NSFPlay. Maybe, maybe I'm wrong.


BTW if would be great if this plugin adds support for MGSDRV's format, MGS. I do not know if anyone has heard of that sound driver. Maybe MSX users around here know about it.

There's a plugin for Winamp called in_msx, but I do not want to install Winamp for just that format support.

Anyway, thanks for your hard work!
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: GeneralFailer on 2018-11-24 15:32:38
He's too busy working on libvgm, which still isn't capable of playing back VGM files.
Sorry if I'm being a jerk, but I don't think you are the one to criticize their project management considering this plugin still adds NSFe files with incorrect track order just because you didn't want to break the existing playlists 8 years ago. IMO for non-commercial software that was a completely reasonable trade-off as compared to just ignoring a subtle issue. I'm not a fan of the current issue with most GBS/M3U rips either, but at least it's a more apparent problem with a more niche format.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2018-11-24 21:03:33
They have NSFe tracks in the wrong order because foobar2000 defaults to sorting tracks on load, including by the track number field, which is the song number in foo_gep. Apparently, this was the trade off to expect when dealing with file add dialogs that can't produce consistent file ordering. I don't care enough to fix it any more, so anyone else who is willing is more than welcome to take it over if they think they can produce more timely updates of things that clearly matter. The source code has always been available.

So far, VGMStream is the only project I help manage that anyone has bothered to take up any invitation to contribute to.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: GeneralFailer on 2018-11-26 15:02:32
Dammit, just realized that I didn't google the issue properly. It's still weird that similarly to the original reporter's case (https://hydrogenaud.io/index.php/topic,30322.msg674036.html#msg674036) even the workaround doesn't work for me. The file just gets added in a different incorrect order.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2018-11-27 23:58:40
I think the order is wrong regardless, because if you reduce the sorting pattern complexity, you just get them wrongly sorted into a different order, due to how the employed Quick Sort algorithm works against the input data. *Maybe* you can find an item index variable that will sort them into the order they were input in?
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Xunkar on 2018-12-25 17:55:11
I'm sorry to ask but I've searched everywhere for a way to make NSF+M3U work with GEP and it seems it used to work at some point, but the feature was taken down? Is it possible to grab an older version of GEP for this purpose? I don't really care if it breaks M3U elsewhere to be honest.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2018-12-25 20:12:55
Advanced preferences has an option to enable what you want.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Xunkar on 2018-12-25 21:05:30
No wonder I couldn't find it... thank you!
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: ralves on 2019-01-06 18:36:10
Is there a way to disable the noise filter when playing VRC7 Lagrange Point to make it more "clear"?
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2019-01-07 23:56:07
No. And it's not a noise filter, it's passing the FM chip through a nearest neighbor resampler with bandwidth limiting, really the only easy way to add extra chips in Nes_Emu. Pull requests which implement it differently are not entirely unwelcome.

E: I found the real reason it's "noisy". The chip emulator's decibel to linear sample table is calculated with 8 bit precision, like the actual YM2413 chip would use in ROM form. So basically, you're hearing the hiss of genuine 8 bit sound. And don't think the chip ever used higher precision than this for mixing. As a cost cutting measure, this chip actually multiplexed the 6 channels, rather than summing them.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Dr. Cox on 2019-03-15 02:22:09
How do you audio disable channels like here: https://youtu.be/lk1-p2MDjgo
PS; That SPC700 status thing doesn't do shit, thanks.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Slender on 2019-03-15 20:43:15
View>GEP control may be what you're looking for.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: PikpikTurnip on 2019-11-23 12:19:21
Hello. I'm having a problem with this component. Whenever I use it to try and play .gbs files, at least with Pokemon Gold/Crystal, everything is all mixed up. For instance, the first track that plays is the "Pokemon March", but the length and tags are those of "Pokemon GS Intro 1". What might be causing this problem?
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2019-11-23 23:46:11
Sounds like the M3U files are messed up. I can never get that feature right, because nobody has settled on a common behavior for even the subsong numbers.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: PikpikTurnip on 2019-11-24 05:03:51
...nobody has settled on a common behavior for even the subsong numbers.

Well that's inconvenient. Is it something I could fix by messing with the m3u file myself? Or is that more complicated than not?
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2019-11-24 05:23:44
My code can be changed to deal with the off by one error, assuming you’re running the latest version. The thing is, if it’s correct for your files, it may be off for others.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: RustyRetro on 2020-03-16 03:28:37
I think there was some kind of regression in NSF playback in version 1.214. The attached NSF sounds crunchy and horrible in 1.214, but was fine in 1.213 (I just rolled back to the old version and checked). Seems to be a problem with N163 specifically?
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2020-03-16 07:28:05
Cool. I get nagged to implement features that developers newly discover (N163 supporting waveforms up to 256 samples long), and then they break a bazillion fan made NSF files that were made without understanding that knowledge.

Note that these files will be just as broken on actual hardware.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: RustyRetro on 2020-03-16 07:47:09
Ouch, that's unfortunate.

Would it be possible to add a checkbox to the configuration page to enable/disable the correct behavior? I'm not aware of any other NSF players for foobar2000 and I'd hate to be stuck with an old version of foo_gep just to play back these old NSFs. I totally understand if you'd rather not, though.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2020-03-16 07:48:44
Bam, I'm bringing it back, because this is awesome:

https://www.youtube.com/watch?v=oVAfOoiKids

And all those broken NSFs can be fixed with some work. They already don't work on actual hardware, except for flawed implementations.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2020-03-24 23:31:29
I've forced the issue. The new waveforms are enabled now. There is also a context menu item under Utilities, which will permanently patch one or more N163 NSF files, or at least attempt to patch them. Only attempt patching on files which sound broken.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2020-03-25 00:18:48
hey Kode54,
what format is NSF for?
I know that Game Emu Player component does SNES and Genesis at the least... but... more...? or at least that is all I use it for...
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2020-03-25 01:07:39
NES.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2020-03-25 01:08:32
NES.
ooh ok.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: memyselfandfred on 2020-11-07 23:31:50
Replying here to not derail the other thread

The issues I have with Game Emu Player is it doesn't seem to read NSFE files properly. Most of the time, it shows the incorrect title. At least, where it matters. It shows the right title next to the control buttons, but not at the top or in the list. It also doesn't give it the right title in the file name in converts.

(https://i.imgur.com/889CJoC.png)

This seems to happen when tracks are under "Singles" like in the picture below. When they're under the game's title, it shows the right title everywhere. Another bug I see is the progress bar at the bottom will often go off screen for these tracks.

(https://i.imgur.com/BTNuwlu.png)

I've tested some older versions and every one I found had the same issue
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2020-11-08 07:59:19
That does not even look like a standard foobar2000 user interface, and all of the problems appear to be with the user interface, rather than the files or whatever is reading their info.

In the top screen shot, it appears to be showing track titles and the album artist field, which are the only ones supported for the most part anyway. Oh, and did I mention that NSFE, even being a complex file format compared to NSF, still does not support Unicode text? That's a limitation of the format, not my plugin.

I have no idea what idiot would have tagged an NSFE with "??? Sound Team", but that's probably to be expected anyway.

Maybe actually post some files, and explain why they're broken?
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Supermansaga on 2022-01-05 05:00:58
Hi there, this plugin no longer works in foobar v.1.3.8. Maybe it works in earlier version.
It appears to be working in my environment(foobar2000 v1.3.8 Windows7).
You need to put PMDWin.dll and WinFMP.dll into the directory same as foo_input_fmpmd.dll.

Do you know Japanese? Could you reach out to the author so that he could revisit the plug-in and maintain the update on foobar's site? I think the author's site is at http://c60.la.coocan.jp/ (http://c60.la.coocan.jp/), but he has never responded to my request.
Yes, I know Japanese.
However, I can't reach out to the author because I don't know who he/she is.
I DON'T think "http://c60.la.coocan.jp/" is his/her site. It is the site of the author who made PMDWin.dll and WinFMP.dll.

Happy new year and hope you have been well. How time flies. Glad the author at http://c60.la.coocan.jp/download.html has updated WinFMP and PMDWin as of Dec 2021, although I don't fully appreciate what was updated: speed vs sound quality? The old version were believed to work with Foobar2000 v1.6.9 beta anyways. By reaching out to the author, I meant the author at http://c60.la.coocan.jp/download.html. Not sure if they are aware of the foo_input_fmpmd_v0.8.0.15. It's time they really should collaborate so that the author at http://c60.la.coocan.jp/download.html knows foobar2000 can now handle his plugins. Thanks.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2022-09-01 03:59:26
hey Kode54,
I don't suppose you can update your video game music plugins for the
Foobar2000 v2 x64 builds?
please and thx.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: sveakul on 2022-09-01 04:32:39
https://kode54.net/fb2k?v (https://kode54.net/fb2k?v)
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Melchior on 2022-09-01 04:47:26
https://kode54.net/fb2k?v (https://kode54.net/fb2k?v)
:'(  :'(
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: marc2k3 on 2022-09-01 04:55:06
I have no idea what the background to that is but I'm going to assume chumps and their virus total drivel didn't help.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: kode54 on 2022-09-01 06:22:38
I have been told several times that "what happens on IRC, stays on IRC", and that sort of attitude is quite annoying to deal with, because then people can be jackasses on IRC and mostly put on a facade of acceptable behavior on web forums and web sites.

I already left the private alpha foobar2000 chat because Peter thought it was appropriate to refer to a telemarketer who rang him up at 5:30am as the n-word.

I was contacted by an old acquaintance recently about getting up to speed on foobar2000 components and rejoining the community, and was fed a lengthy diatribe about how great a developer I am, and how someone of lower stance as him is able to develop an app that runs on millions of computers, so I should be destined for greatness too.

Then I was told that he heard from the foobar community that I "went LGBTQ+ on them", implying that this was a sudden "change" in my behavior and dismissing the whole point of it. Then he said "just be you, you don't need a movement". That dismissal disappointed me greatly. I terminated the conversation right there, and decided I would not be installing a Windows VM to proceed with Visual Studio projects.

I will, however, look into extending the Strawberry audio player in the future, if it is indeed feasible to do so, especially for all platforms it supports.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: anamorphic on 2022-09-02 02:04:24
^ Well that is certainly discouraging. People can be shitty. :(

I don't know what else to say but wanted to say something, since apparently I missed your post a few months ago - @kode54 - Thank you for all the work you've done on these forums and developing components over the years, which I'm quite sure a lot of people have enjoyed using. I shall wish you the best going forward.

Cheers
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Supermansaga on 2022-10-01 17:55:44
I have been told several times that "what happens on IRC, stays on IRC", and that sort of attitude is quite annoying to deal with, because then people can be jackasses on IRC and mostly put on a facade of acceptable behavior on web forums and web sites.

I already left the private alpha foobar2000 chat because Peter thought it was appropriate to refer to a telemarketer who rang him up at 5:30am as the n-word.

I was contacted by an old acquaintance recently about getting up to speed on foobar2000 components and rejoining the community, and was fed a lengthy diatribe about how great a developer I am, and how someone of lower stance as him is able to develop an app that runs on millions of computers, so I should be destined for greatness too.

Then I was told that he heard from the foobar community that I "went LGBTQ+ on them", implying that this was a sudden "change" in my behavior and dismissing the whole point of it. Then he said "just be you, you don't need a movement". That dismissal disappointed me greatly. I terminated the conversation right there, and decided I would not be installing a Windows VM to proceed with Visual Studio projects.

I will, however, look into extending the Strawberry audio player in the future, if it is indeed feasible to do so, especially for all platforms it supports.

Don't listen to the republicans! You obviously need a movement to not feel lonely. We appreciate you!
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Supermansaga on 2023-03-29 20:24:21
Hi there, this plugin no longer works in foobar v.1.3.8. Maybe it works in earlier version.
It appears to be working in my environment(foobar2000 v1.3.8 Windows7).
You need to put PMDWin.dll and WinFMP.dll into the directory same as foo_input_fmpmd.dll.

Do you know Japanese? Could you reach out to the author so that he could revisit the plug-in and maintain the update on foobar's site? I think the author's site is at http://c60.la.coocan.jp/ (http://c60.la.coocan.jp/), but he has never responded to my request.
Yes, I know Japanese.
However, I can't reach out to the author because I don't know who he/she is.
I DON'T think "http://c60.la.coocan.jp/" is his/her site. It is the site of the author who made PMDWin.dll and WinFMP.dll.

PMDWin and WINFmp have all been updated in 2023 to support x64, but somehow there is no sign of foo_input_fmpmd being updated to accompany them. Bing AI can't seem to figure out how to revise foo_input_fmpmd's x86 dll to x64 even with the help of Visual Studio 2022 Community Edition. Could Github Copilot help instead? I can try, but I don't want to go down the rabbit hole. Thanks.
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: mudlord on 2023-03-29 21:37:31
O_O?
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: iGom on 2023-06-03 23:02:53
hey Kode54,
I don't suppose you can update your video game music plugins for the
Foobar2000 v2 x64 builds?
please and thx.

https://foobar2000.xrea.jp/?Input+64bit#fda85f32

Quote
Based on sources of foo_gep v1.218 by kode54(https://gitlab.com/kode54/foo_gep/-/commits/vgmplay)
Works with foobar2000 v1.5 or later and Windows 7 or later

* NOTE
- The current SPC xid666 tag writer seems to erase loop length and end length
- If you have installed other components for retro chiptunes format, please check the supported formats setting on the preferences page

* TODO
- Implement the remove_tags function
- Enable unpacker to get file creation time

[2022-11-13 v1.219]
- Updated to 2022-10-20 SDK
- Added support for foobar2000 x64
- Added dark mode support for foobar2000 v2.0 to the preferences page, monitor and dialog for editing NSFE playlists
- The monitor and the dialog for editing song length now open in the same position as when they were last closed
- Fixed default fade length being applied when fade length in (x)id666 tag of SPC is 0
- Stopped writing APEv2 tags in SPC because it creates SPC that cannot be played by other players - Instead we should use foo_external_tags by Case
- Fixed a bug that was getting wrong song number from M3U playlists
- To prevent the CHECKBOX for Effects from disappearing, WS_CLIPSIBLINGS was specified for GROUPBOX
- The about message of the component was changed
Title: Re: Game Emu Player (foo_gep) by kode54
Post by: Supermansaga on 2023-08-18 03:21:16
There is also Game Music Emu Decoder 0.4 or ZXTune Player v0.0.9 (for SPC and Nintendo NSF) that supports v2.1 and x64.