First off, sorry for being MIA for about a week; I've been busy with school-related stuff (by which I mean final exams). I don't want to show up empty-handed, however, so there's a minor update: I've fixed a bug that could crash the SPC engine if you put @20 on a SFX channel, a few bugs related to sound effect parsing (specifically, #ifdefs and such will now work properly with sound effects as they do in music, and comments are now possible), and (hopefully) the minor jump sound effect bug. Also, after wasting a few hours trying to decipher a programming language I don't understand, I figured out how to "fix" AddmusicM hacks. Hopefully that'll be in the next update.
Originally posted by imameliaSome things about the new readme:
- It says that valid values of the @ command are 0-18, 20, 29, and 30+...shouldn't that be 0-18, 21-29, and 30+? (I still say @19 and @20 should do something...)
Thank you; that's been fixed.
Originally posted by imamelia- What happened to the $F7 command?
I'm planning on removing it. Basically, if you're creating a song and need to write to some arbitrary location in ARAM, chances are you're doing something wrong (we can create custom commands for that). But if people disagree, I'll keep it.
Originally posted by imamelia- The ADSR generator is cool, but you forgot to multiply S by 2. (Is that the minor fix you mentioned?)
Yeah, that's the fix.
Originally posted by imamelia- It doesn't seem to mention anywhere that just storing to $1DFB will automatically upload a new track, nor does it delve into the technical stuff (how to modify the engine, upload your own music, rearrange things in ARAM, etc.). The latter might be more work than it's worth, but it seems that the former should at least be mentioned in a short note.
I've added brief notes related to those; thank you.
Originally posted by imamelia- It also doesn't mention the "noise instrument" anywhere. Or haven't you added that yet?
Still haven't implemented the syntax for it. Probably next update.
Originally posted by imameliaAlso, perhaps $F4 $04 should be repurposed or something?
Most likely not. We don't gain anything from replacing its spot in the table (since we can just append to it), but we lose potential compatibility if a song is ever discovered that uses it.
Originally posted by Vitor VilelaSo... We can say that AddmusicK is finished in next release? I guess all bugs was been fixed and almost all features that all porters want is there.
There are still a few features that need added and bugs that need fixed, but my current plans are to get this finally finished before Jan 1. We'll see how well that goes.
Originally posted by BBS750I'd like to note that comment labels (semicolons) are ignored in sound effects.
As mentioned, that's been fixed; thank you for pointing that out.
Originally posted by imameliaNow that I think about it, what commands are safe to use in misc. music? Custom instruments? Certain hex commands but not others?
Everything that can be used is mentioned in the sound effect portion of the readme, though I've added information about $DD and $EB. Those two commands, along with $FF and $FE, are the only safe commands to use.
Originally posted by imameliaOne would think that at least certain ones shouldn't be used; for example, the echo command could be problematic if the echo buffer for the misc. music ended up being larger than that of the level music.
That's the almost the exact reason why there are only four hex commands available for sound effects; sound effects shouldn't interfere with the currently playing music, so if a sound effect used, say, the tuning command, while it would (in theory, if it were implemented for sound effects) change the tuning of the current sound effect, it would also change the tuning for the current song after the sound effect stopped. The reason sound effects can get away with having their own instruments and such is that they just write directly to the DSP (pitch slides are a special case). Changing things like tuning would require writes to RAM, which would modify the music.
Incidentally, pitch modulation and even echo (echo enable, not delay or anything)
can be used for sound effects with no adverse affect on the music, though there's no standardized way to access them.
Originally posted by imamelia
Possibly. 6 and 8 MB ROMs might be a bit tricky, but does anything besides what's currently implemented need to be done for 4 MB ROMs?
Originally posted by imameliaAnd is there any feasible way to stream sound effect samples (and make them play properly) in AddmusicK?
In theory, but you'd need to do it yourself. Just reserve some space in ARAM somewhere for the largest sample * the number of consecutive sound effects that can play, and then upload to those spots whenever a sound effect plays. I can't promise it'd be seamless, though.
Originally posted by zack30I Just now saw this, And I was like
"Wow. . . I Might actually start doing music ports now!!".
I See there's A LOT Of features in it, But my question,
Just like Imamelia asked if there will be SA-1 mapping support for 4MB or larger ROMs, What I wanna know is,
Will AddmusicK support ROMs with the SuperFX chip installed (VIA DiscoMan's SuperFX patch) at all?
With version 1.1 of the SuperFX patch being made,
I'm soon expecting plenty of SuperFX compatible tools and ASM patches and sprites and stuff to be made,
Even expecting Lunar Magic to fully work with SuperFX-patched ROMs without any bugs in the future,
So simply put, Will AddmusicK support ROMs with the SuperFX chip installed?
(As well as ROMs with the SA-1 chip installed?)
That basically depends on what needs to be done to implement. If I have to recode my entire patch to do it, then probably not (unless someone else is willing to do it or the SuperFX patch becomes extremely popular). But if it's simple to do, like with the SA-1 patch, then probably.
Originally posted by MasterlinkAlso, just another thing. I was going to use a japanese port (made by gocha) and the addmusic threw a lots of errors because it's not compatible with names in labels, for example:
Originally posted by txt(LBL_KICK_SNARE_1)[*notes that also labeled (with macro labels, not label loop of course)*]1
*Other stuff*
(LBL_KICK_SNARE_1)1
That works with addmusicM and carol's addmusic just perfect.
... though, it's not that useful to add since only his (?) ports have lots of labels with names but just wanted to note that.
I'm not getting any errors just based off of the example you gave me. Could you give me the full song?
Originally posted by imameliaI think I may have found a bug, or at least never thought of bringing it up until now. When you set the echo delay to 00, the buffer starts at $6000 instead of $FF00 like it should.
Just to be sure, does that also happen if echo is actually enabled (i.e. you're not just using $EF but also $F1)? Because if not then it's not an issue; echo is disabled until $F1 is used.
Originally posted by MooseMinor oddities regarding the readme.
Apparently, the ADSR modifiable graph seems to think that f,7,0,10 means the same thing as f,7,1,00 ($ed $7f $10).
That's been fixed; it's the same issue imamelia mentioned.
Originally posted by MooseAlso:
Originally posted by the readme$FA $01: Gnables GAIN on the current channel
Do something about that and stuff.
What, isn't that how gvgrybody spglls that?
By which I mgan fixed.
Quote*many many things about rests and GAIN*
I'm still planning to implement what Moose mentioned, but it's probably going to have to be next update.
Originally posted by mario90I just switched up to the latest version here and all the SFX I have set to use @20+ don't even work anymore. Instead they play a random instrument.
Only instruments from @0 to @18 are defined. If you want more, you need to define them yourself. Unless I'm misunderstanding you, of course.
Originally posted by mario90Edit: Is it also possible to have a sound effect's length exceed 1 second? It always cuts off at that length. Is it just another limitation?
Could you give me an example? I've never noticed this.
Originally posted by X-cniSHow exactly does one call a sample from a custom sample group? It doesn't seem to be mentioned in the readme (or anywhere, for that matter).
It is mentioned in the readme, actually, but not under hex commands. See "Sample load".
Also, thank you; you unintentionally notified me that I accidentally referred to custom instruments as custom sound effects in that command's description.