Sxms V18.104.22.168 (beta) - Audio Dll
Posted 27 August 2006 - 06:24 PM
Posted 21 October 2006 - 12:25 PM
Posted 21 October 2006 - 04:53 PM
Do you have a dummy object called sxms? (all lowercase)
I get an error message that fills the entire screen whenever I run the game, it says that there is something wrong will sxms_internal.
Also, are you correctly entering the directory to the SXMS-3.dll?
Posted 21 October 2006 - 10:05 PM
It basically holds all variables, constants, and runs sub systems for you. Without it, the library will not work as intented. All you need to do is create an object and call it sxms. You don't need to do anything else, sxms_create() will take care of the rest.
No, I don't have a dummy object. What is it for?
Posted 22 October 2006 - 05:33 PM
Does it have to manually be created?
Posted 22 October 2006 - 06:28 PM
It has to be manually created mainly because I need the object name to referrence to. For instance, if I did object_add(), it would return the object's id. I would then have to store this somewhere, like a global variable, which everything references to. However, if this global variable is somehow overwritten, then we run into problems.
Why don't you create that dummy object in the script sxms_create() and store its id?
Does it have to manually be created?
Another reason I perfer the dummy object method is that it gives a user a clear and clean way to reference constants/variables stored inside this object. So instead of doing:
you can just do
This also allows for fully cleaning up after itself without global variables just sitting in memory (Once mark comes up with some way to delete variables on command, I may change back, but until then, making an instance which holds everything is the best idea).
Currently, I do this with all my extentions (SXMS, SIRC, SVC, etc) and have even updated other extentions I use to follow this route (GMsock Threaded, N_Menu, etc).
Maybe when Game Maker 7.0 comes along, this won't be needed anymore or maybe some other method will present itself. But until then, this appears to be the best way to contain everything releated to an extention in a single area. It allows for easy custom constants without having to worry about resource name overlapping and also allows for me to make custom sub systems that automatically run without the user needing to make them. (For example, SIRC (which is an API I made to allow Game Maker to interface with the IRC protocol) has a sub system which automatically keeps track of ping for the user, and seperates/build received and sent messages accordingly without the user needing to understand the raw IRC protocol).
Posted 19 November 2006 - 05:55 PM
It sure has been awhile, hasn't it. Today I decided to update and release another build of SXMS. Nothing huge, mainly just updating to latest version of Fmod Ex (this includes many bugs fixes and a few minor changes).
You can view the change log at the following location: Change Log
I recommend looking over the revisions.txt file (included) to see all the changes Fmod Ex has undergone since version 4.04.14. But here is a highlight of the major changes:
- Fix FSBank and FMOD Designer encoding bad ADPCM files making ADPCM based
banks fail to load.
- Divide by zero fix in FMOD_DSP_PITCHSHIFT filter.
- Fixed memory leak when using a lot of dsp connections.
* Sound::release now blocks if it is non blocking and hasn't finished opening
- Removed blocking critical section call in DSP::setParameter for most filters,
which means performance increase.
- Fixed crash if running out of memory with FSB.
- Fix crash in mod/s3m/xm/it/midi Sound::release.
- Fixed Sound::getSubSound causing 'seeking forever' bug if the function was
called again while previous non blocking getSubSound was still happening.
+ Optimizations for FMOD_DSP_ITLOWPASS, FMOD_DSP_PARAMEQ.
- Fix crash if out of memory when using FMOD_NONBLOCKING.
- Fix possible stutter when starting FSB streams.
- Fix possible glitch on first time playing FSB streams.
- Fix reverb not being active the first time a channel is played.
- Fix crash in ogg codec if running out of memory.
- Fix memory leak with FMOD_ACCURATETIME, mp3 and FMOD_CREATECOMPRESSEDSAMPLE.
- Fixed virtual voices swapping back to real and looping when they were
supposed to be one shot.
- Fixed noise in FSB bank compilation for 8bit wav files compressed
with ADPCM as target format.
- Fixed support for Channel::addDSP with virtual voices. Sounds that go virtual
and come back as real will resume their previously added DSP effects as well
* FMOD_CREATECOMPRESSEDMEMSAMPLE flag changed to a more generic
FMOD_OPENMEMORY_POINT, which supports .WAV and .FSB based PCM data now as well.
To get the same behaviour as FMOD_CREATECOMPRESSEDMEMSAMPLE,
(FMOD_CREATECOMPRESSEDSAMPLE | FMOD_OPENMEMORY_POINT) must be used.
As a final note, this will probably be the last release before Game Maker 7.0. After that, I plan to update SXMS-3 to use the new Extension system. So those sticking with GM 5.x - 6.x in the future, this may be your last compatible build. The reason for this decision is mainly due to the sheer scale of this creation, which has starting to outgrow the old DLL configuration. (I mean, just looking at the amount of scripts this thing takes up alone shows me that this would be better maintained and understood by users using GM's extension system.)
Whether I will maintain the traditional style extension, I don't know yet. But at this current time, there are no plans to do so. However, I will leave this build available for download so those who plan to use older versions of Game Maker have at least something to work with.
The download is available both here: SXMSv22.214.171.124b
And in my signature when updated. Make sure the version number says 126.96.36.199 to get the correct version for this release.
Posted 20 December 2006 - 05:25 AM
Isn't that the same problem as in GM6? Maybe it will provide a little insight to what's causing the problem. It's gotta be something that GM6 and VB2005 have in common...
Edit: version 188.8.131.52 of SXMS dll, and 184.108.40.206, out_ds.dll version 2.46
Edited by ¿°¿, 20 December 2006 - 05:38 AM.
Posted 20 December 2006 - 05:33 AM
Edited by gmjab, 20 December 2006 - 05:33 AM.
Posted 20 December 2006 - 05:41 AM
So you cannot use this for Visual Basic.
Au contraire! But it DOES work, just not with the out_ds plugin.
Edit: it also has some problems with access violations if you call functions of the dll too fast. I had to put a dummy function in just to delay it a few microseconds...
Edited by ¿°¿, 21 December 2006 - 10:18 PM.
Posted 23 December 2006 - 07:50 PM
i'm not quite sure about how to run this script...
Posted 02 January 2007 - 11:37 PM
I placed the dll files in the same file as the example.
The errors contain something like this:
Unknown variable dll_*whatever*_initThere's also a font error for some reason in example 1.
Posted 03 January 2007 - 12:50 AM
Edited by AeroGP, 03 January 2007 - 12:54 AM.
Posted 03 January 2007 - 04:29 AM
0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users