Author Topic: Huzak - Yet another music driver  (Read 13108 times)

elmer

  • Hero Member
  • *****
  • Posts: 2148
Re: Huzak - Yet another music driver
« Reply #120 on: February 20, 2017, 12:25:23 PM »
Heya, Elmer, does Huzak support the [0C] Note Retrig command yet?

That's one that Huzak will *never* support, unless I'm reading the description wrong.

The Huzak code is only called every 1/60s, so I can't possibly retrigger a note more often than that.

Why would you want to?

Am I reading the description wrong?  :-k



fragmare

  • Hero Member
  • *****
  • Posts: 676
Re: Huzak - Yet another music driver
« Reply #121 on: February 20, 2017, 03:52:40 PM »
Lol, I think you have the wrong idea about it.  It's meant to retrigger a note more than once on a single Deflemask row, so you *CAN* get a note to play every 1/60th (no matter how your song timing is set up)....

Let's say, you have an instrument set up with a pretty sharp decay.  Sounds awesome for most notes, but a few notes you come across have a longer sustain than the others... and to top it off, the sustaining notes have all kinds of different lengths.  What do you do?  You *COULD* set up separate instruments for each different length of note, but that's wasteful and you'd end up with a lot of instruments.  You could try to set up the sustain/decay manually in the pattern through volume commands and note cuts, but that doesn't get you per-tick control (unless you happen to be using 1/1 timing).

You see, if you have an instrument with a really sharp decay, but you need it to sustain for a few ticks WITHOUT the volume decaying, the best way I know of (without running into the aforementioned issues) is to play the note on successive rows in Deflemask... but if the decay is sharp, simply playing the note each row, by itself, will sound jittery and weird if your timing is, say, 3/2, or 3/3 or basically anything other than 1/1.  BUT!  If you force the note the retrigger on each row until the row is done, it plays seamlessly into the next note on the next row without any jitter or decay.  I *just* discovered the usefulness of it, and yea, it's pretty handy.  I wish I had started experimenting with it before.  It's more or less a "force sustain" command for a few ticks.  Or at least, that's how I'm using it.

PS I have a doozy coming up for you guys.  ;)
« Last Edit: February 20, 2017, 04:07:52 PM by fragmare »

elmer

  • Hero Member
  • *****
  • Posts: 2148
Re: Huzak - Yet another music driver
« Reply #122 on: February 20, 2017, 04:25:49 PM »
Lol, I think you have the wrong idea about it.  It's meant to retrigger a note more than once on a single Deflemask row, so you *CAN* get a note to play every 1/60th (no matter how your song timing is set up)....

OK, so it's just poor English in the DefleMask manual.  ](*,)

Now then ... what does the "xx" parameter to the $0Cxx effect mean???  :-k

If you use $0C01, does the note retrigger every-frame (1/60s), or just once on the pattern row (whatever the "speed" setting currently is)?

If you use $0C02, does the note retrigger every-other-frame, or just twice on the pattern row?


Quote
PS I have a doozy coming up for you guys.  ;)

I look forward to hearing it!  :)

Michirin9801

  • Hero Member
  • *****
  • Posts: 589
Re: Huzak - Yet another music driver
« Reply #123 on: February 20, 2017, 04:26:15 PM »
Wow, I didn't even know this effect existed... (Goes to show how much I care about reading manuals >w>)

I don't know if I'll ever use it, but thanks to your explanation I have an idea on how it could be used in case I'd ever need it...
But hey ho, if you find it useful then great!

PS I have a doozy coming up for you guys.  ;)

So do I! Right now in fact!
http://sta.sh/011rbp9iix8n

I hope you like drifting in 16 bits! I think that's hint enough as to what it is ;3

fragmare

  • Hero Member
  • *****
  • Posts: 676
Re: Huzak - Yet another music driver
« Reply #124 on: February 20, 2017, 04:43:47 PM »
Lol, I think you have the wrong idea about it.  It's meant to retrigger a note more than once on a single Deflemask row, so you *CAN* get a note to play every 1/60th (no matter how your song timing is set up)....


OK, so it's just poor English in the DefleMask manual.  ](*,)

Now then ... what does the "xx" parameter to the $0Cxx effect mean???  :-k

If you use $0C01, does the note retrigger every-frame (1/60s), or just once on the pattern row (whatever the "speed" setting currently is)?

If you use $0C02, does the note retrigger every-other-frame, or just twice on the pattern row?


Quote
PS I have a doozy coming up for you guys.  ;)


I look forward to hearing it!  :)



I'm pretty sure that [0Cxx] variable is the number of times/ticks to retrigger a note on a row, and if the total number of note triggers exceeds the number of ticks for that particular row (controlled by your timing), then the 0C command is simply ignored.

I'm still experimenting with it myself and seeing how it behaves in a more exact way...

Wow, I didn't even know this effect existed... (Goes to show how much I care about reading manuals >w>)

I don't know if I'll ever use it, but thanks to your explanation I have an idea on how it could be used in case I'd ever need it...
But hey ho, if you find it useful then great!

PS I have a doozy coming up for you guys.  ;)

So do I! Right now in fact!
http://sta.sh/011rbp9iix8n

I hope you like drifting in 16 bits! I think that's hint enough as to what it is ;3


Glad I could help!  :)  I'll check out that DMF here in a bit.  I have unsaved stuff open in Deflemask at this very second

fragmare

  • Hero Member
  • *****
  • Posts: 676
Re: Huzak - Yet another music driver
« Reply #125 on: February 20, 2017, 07:52:12 PM »
Lol, I think you have the wrong idea about it.  It's meant to retrigger a note more than once on a single Deflemask row, so you *CAN* get a note to play every 1/60th (no matter how your song timing is set up)....

OK, so it's just poor English in the DefleMask manual.  ](*,)

Now then ... what does the "xx" parameter to the $0Cxx effect mean???  :-k

If you use $0C01, does the note retrigger every-frame (1/60s), or just once on the pattern row (whatever the "speed" setting currently is)?

If you use $0C02, does the note retrigger every-other-frame, or just twice on the pattern row?


Quote
PS I have a doozy coming up for you guys.  ;)

I look forward to hearing it!  :)


Preliminarily, from what i'm observing, it would appear that the [0C] command is retriggering the note every [xx] ticks until the row ends, ignoring values equal to or larger than the tick value of the row.  So to clarify, let's say, for shits n' giggles, your song timing was 5/2, and you stick a 0C command on the first row (5 ticks long).  If you use [0C01], then that note is going to repeat every 1/60th until the row ends, thus giving you 5 full ticks of sustain.  If you used, say [0C02] instead, it would repeat every OTHER tick until the row ends.  [0C03] would retrigger every THIRD tick, etc. etc.

So you can start to see where if your instrument has a sharp decay that drops off after the first tick or two, but you NEED a few ticks of sustain on some select notes without making all new volume macros for each individual note, then 0C is definitely the command for you.

This command seems to go hand-in-hand with the note cut, and note delay command to give more per-tick control over notes, in general.

elmer

  • Hero Member
  • *****
  • Posts: 2148
Re: Huzak - Yet another music driver
« Reply #126 on: February 21, 2017, 03:33:48 AM »
Preliminarily, from what i'm observing, it would appear that the [0C] command is retriggering the note every [xx] ticks until the row ends, ignoring values equal to or larger than the tick value of the row.  So to clarify, let's say, for shits n' giggles, your song timing was 5/2, and you stick a 0C command on the first row (5 ticks long).  If you use [0C01], then that note is going to repeat every 1/60th until the row ends, thus giving you 5 full ticks of sustain.  If you used, say [0C02] instead, it would repeat every OTHER tick until the row ends.  [0C03] would retrigger every THIRD tick, etc. etc.

OK, if it's really just a case of using a delay-counter to reset the Instrument Macro positions back to the beginning, then yeah, that's easy to implement.

I'll have to run some tests of my own to confirm that from the .hes file contents.

elmer

  • Hero Member
  • *****
  • Posts: 2148
Re: Huzak - Yet another music driver
« Reply #127 on: March 05, 2017, 09:02:17 AM »
I definitely want to add both the Tremolo and Volume Slide effects, they shouldn't be too horrible to add.

But, just like the mess that I'm going through with the Detune and Vibrato ... it's less about implementing the basic effect, and more about implementing it in a way that gives identical, or nearly-identical results to DefleMask so that it *sounds* the same.

As I said earlier ... it's "finicky" work.  ](*,)

So, nearly a month later, those darned effects are finally working "properly" ... which, to me, means outputting the same volume values that DefleMask produces.

After spending weeks of making tests and dissecting .hes files trying to figure out what is going on, I can say that Delek has made a few *really* strange decisions, and that there are some crazy interactions between things, that were not-at-all-fun to figure out.

Working on the ROMs for Michirin9801's recent Album (http://www.pcenginefx.com/forums/index.php?topic=22018.0) showed up a few bugs in the dmf2huz converter, and in Huzak itself.

It looks like those are fixed now!

So, to celebrate, from the DefleMask forums, here's SpoonyBard's PCE cover of Blood-Stained Lake from Elemental Master.

DefleMask original ...
http://www.deflemask.com/forum/show-off-your-work/cover-game-music-on-a-different-system/msg5203/#msg5203

Huzak ROM ...
https://www.dropbox.com/s/hpg2b5wqglcvzdl/Huzak5thWIP-BloodStainedLake.pce?dl=0


And updated versions of Fragmare's Simon Belmont Theme, where the version with Volume Slides and Tremolo now works properly (I think) ...

Thread here ...
http://www.pcenginefx.com/forums/index.php?topic=21963.0

Huzak ROMs ...
https://www.dropbox.com/s/j6tw4l8bxpigd2r/Huzak5thWIP-SimonBelmontTheme-WithSlides.pce?dl=0
https://www.dropbox.com/s/wyogeb3wjizd051/Huzak5thWIP-SimonBelmontTheme-NoSlides.pce?dl=0

DarkKobold

  • Hero Member
  • *****
  • Posts: 1198
Re: Huzak - Yet another music driver
« Reply #128 on: June 07, 2017, 06:37:20 AM »
Hey, so has there been any chance of implementing a beta of this? I'd also love to see/help get some early sample-based sfx going!
Hey, you.

elmer

  • Hero Member
  • *****
  • Posts: 2148
Re: Huzak - Yet another music driver
« Reply #129 on: June 08, 2017, 09:40:18 AM »
Sorry, I've be snowed-under with the whole LoX Dub process.

I didn't think that my help would be needed on that, but with the massive turnout, it has been.


Michirin9801 has a sort-of-beta that she can use to test tunes ... but there is still no sample support built in, yet.

Do you already have your Deflemask background tune(s)? Have you left channels unused or with minimal-use so that sound-effects can override them?

Do you have your samples done? Each sound effect will need to be its own Deflemask file, with 1:1 row timing.

Gredler

  • Guest
Re: Huzak - Yet another music driver
« Reply #130 on: June 08, 2017, 10:20:23 AM »
Do you already have your Deflemask background tune(s)? Have you left channels unused or with minimal-use so that sound-effects can override them?

Do you have your samples done? Each sound effect will need to be its own Deflemask file, with 1:1 row timing.

I don't want to speak for DK but I do not believe we have anything prepped. but this bit if info gives us the foundation we need to start planning and trying to lock in some potentially useable assets :) Thanks, and good luck with that beast of a dub!

Michirin9801

  • Hero Member
  • *****
  • Posts: 589
Re: Huzak - Yet another music driver
« Reply #131 on: June 09, 2017, 03:25:26 PM »
Do you already have your Deflemask background tune(s)? Have you left channels unused or with minimal-use so that sound-effects can override them?

Do you have your samples done? Each sound effect will need to be its own Deflemask file, with 1:1 row timing.

I don't want to speak for DK but I do not believe we have anything prepped. but this bit if info gives us the foundation we need to start planning and trying to lock in some potentially useable assets :) Thanks, and good luck with that beast of a dub!
I'm kinda busy AF at the moment, but if you need any help with PSG SFX and Drums I'll be glad to help!
(So long as you're okay with waiting a little bit for an answer, you know, college and stuff)
Also, if elmer wouldn't mind, or hasn't already sent it to you, I can send you the beta he's given me...

elmer

  • Hero Member
  • *****
  • Posts: 2148
Re: Huzak - Yet another music driver
« Reply #132 on: June 10, 2017, 09:07:17 AM »
I'm kinda busy AF at the moment, but if you need any help with PSG SFX and Drums I'll be glad to help!
(So long as you're okay with waiting a little bit for an answer, you know, college and stuff)
Also, if elmer wouldn't mind, or hasn't already sent it to you, I can send you the beta he's given me...

I absolutely don't mind you sending the beta to them ... but they'll probably want some of the build settings changed.

Your version is customized for the 240Hz bass/drum updates, and the proper noise channel settings (i.e. no correction for DefleMask's bug).

If somebody other than you is composing the Catastrophy music in DefleMask, then those should be switched back to their "compatibility-mode" settings.

Michirin9801

  • Hero Member
  • *****
  • Posts: 589
Re: Huzak - Yet another music driver
« Reply #133 on: June 11, 2017, 12:53:25 PM »
I'm kinda busy AF at the moment, but if you need any help with PSG SFX and Drums I'll be glad to help!
(So long as you're okay with waiting a little bit for an answer, you know, college and stuff)
Also, if elmer wouldn't mind, or hasn't already sent it to you, I can send you the beta he's given me...

I absolutely don't mind you sending the beta to them ... but they'll probably want some of the build settings changed.

Your version is customized for the 240Hz bass/drum updates, and the proper noise channel settings (i.e. no correction for DefleMask's bug).

If somebody other than you is composing the Catastrophy music in DefleMask, then those should be switched back to their "compatibility-mode" settings.
Yeah you're right, but they'd probably be fine if they just didn't use the very first instrument...
At this point I'm just waiting for their answer before I decide on sending it or not, or maybe you could just restore the "compatibility settings" and send it to them if they want... I'd still be fine with sharing my drum instruments though!

Gredler

  • Guest
Re: Huzak - Yet another music driver
« Reply #134 on: June 12, 2017, 12:47:13 PM »
I'm kinda busy AF at the moment, but if you need any help with PSG SFX and Drums I'll be glad to help!
(So long as you're okay with waiting a little bit for an answer, you know, college and stuff)
Also, if elmer wouldn't mind, or hasn't already sent it to you, I can send you the beta he's given me...

Thank you that's really appreciated!

I think DK is just looking to plug in some temp music and sound effects to test with to plan how hte code will work, but we don't currently have a musician/sound person, so having access to instruments/tools is not really useful for us.

Like I said earlier, we are thankful for Elmer's work on the tool, and the musicians out there working with him to make it flexable and useable, but unless someone wants to give us music to use as a placeholder there's not a lot we can do with the tools even if Elmer gave them to us.

I have offered to try to learn this stuff, but barely have/take the time to work on the art so adding music and sound to my plate would only further slow things down :P

I should change my username to "bottleneck" hahaha