Banner
Views: 854,136,833
Time:
21 users online: 47110, Adam, Based Seraph, Counterfeit, Darolac, Denicentek, Dippy, Ezek.The Square Remixer, Jead, Minish Yoshi, monkey03297, MrDeePay, Para_0,  patcdr, RamyMintos, RaymanFan1995, TDWarrior, TheInsanity115, Von Fahrenheit, WhiteYoshiEgg,  xHF01x - Guests: 41 - Bots: 69 Users: 47,132 (2,481 active)
Latest: Based Seraph
Tip: Check this thread to find extremely useful diagrams and data.Not logged in.
nobody1089's Music Help Thread
Forum Index - SMW Hacking - SMW Hacking Help - Custom Music - nobody1089's Music Help Thread
Pages: « 1 »
4. How is the amplitude of the vibrato command calculated?

(OLD)
3.
What is the formula used to convert v## to SPC700player's LEVEL number?
Is the relationship between LEVEL and actual volume linear, as SPC700player makes it?

2.
What is the "minimal" #samples section that will work properly with SFX but uses the minimal space? (Note that for the tiny 65 byte samples, I would like to use #original for increased quality with a negligible increase in file size.)

1.
Solved. I have a large piece of notes which I ripped from a MIDI. I'm trying to loop it to decrease file size (very successful). However, I have run into a likely AddMusicK bug.

http://pastebay.com/1440609

The commented code is the correct one. The uncommented one royally screws up octaves about halfway through.

SOLUTION: The first time a label loop is run, it acts exactly like normal. Every time it is called afterwards, it starts at the current octave, acts normally, and restores the original octave when it finishes. I chose to pick a standard octave that was restored to before calling each loop, and at the end of each loop. Then I switched around octaves so it worked.

--------------------
nyanpasu~
Fanatical like a Demon
I am 99.99% certain that the problem that you're not declaring the octave in your labeled loops. For instance, instead of:

(100)[< blah blah blah]

have something like:

(100)[o3 blah blah blah]

I think that's where your problem is bc if your loop happens to come after a section that had an octave of 6, then the loop's octave will change depending whether it's > or <. So big tip: When labeling and looping, DECLARE THE OCTAVE IN THE LOOP. That's just my tip from personal experience.
Major thanks to Suika Ibuki for layout!
SMAS Soundtrack Status: 100% finished
YI Soundtrack Status: 100%
YI Unsampled Soundtrack Status: 100%
NSMB Soundtrack Status: 7.89%
Killer Instinct Soundtrack Status: 14.63%
SPC Thread
From our family to you, keep your pants dry, your dreams wet, and remember, hugs not drugs.
Octaves are something AddMusic handles, it's not actual note data.
Code
o3(1)[c8d8e8>c8]5
(1)3

Is the exact same thing as this:
Code
(1)[o3c8d8e8>c8]5
(1)3

It's whatever you find the least messy when organizing your text, octaves don't increase the insert size.

--------------------
2. What is the minimal set of samples necessary for working sound effects, etc while minimizing ARAM?

--------------------
nyanpasu~
I'd say all the samples that are used be sfx are:
00
01
02
03
04
06
08
0B
0E
12
13

So that leaves:
05
07
09
0A (Used in death music)
0C
0D
0F
10 (Used in P Switch music though)
11
Free from sfx.

--------------------
________________________________________________________
Mario the Gaul
07 is used in the goal tape music
09 is used in the bonus complete music
0C is used in the game over theme
You can't really replace these either.

--------------------
f, right

--------------------
________________________________________________________
Mario the Gaul
Do I need to load those samples in the #samples area for the effects to work?

--------------------
nyanpasu~
megabump

What is the default "q" command settings?
When you reduce the length, are all note lengths multiplied by a fraction?
When you reduce the volume, is it an extra multiplier on top of the "v" command?

--------------------
nyanpasu~
Originally posted by nobody1089
What is the default "q" command settings?

q7F

Quote
When you reduce the length, are all note lengths multiplied by a fraction?

Yes. This is the table that contains the numerators ($100 is the denominator), from q0X to q7X:

Code
NoteDurations:
	db $33, $66, $80, $99, $B3, $CC, $E6, $FF


(taken from AddmusicK, see main.asm)

Quote
When you reduce the volume, is it an extra multiplier on top of the "v" command?

Indeed.
What is the formula used to convert v## to SPC700player's LEVEL number?

Is the relationship between LEVEL and actual volume linear, as SPC700player makes it?

--------------------
nyanpasu~
For future reference:

When I refer to quadratic, I mean out volume = nominal squared. All units are absolute, not in decibels. Amplitude is equivalent to out volume.

General MIDI guidelines: Volume quartic, velocity "sound canvas"
BASSMIDI: Volume 10^(volume/100), Velocity quadratic.
SSEQ DS: (Volume * Velocity) quadratic.
N-SPC: Volume quadratic with round-off error, velocity (qxx) = lookup-table (I don't use).

Porting DS songs: Just multiply volume and velocity, then multiply by 2 if you want (or really any constant). The volumes will be scaled correctly because both curves are quadratic.

4. How is the amplitude of the vibrato command calculated?

--------------------
nyanpasu~
Pages: « 1 »
Forum Index - SMW Hacking - SMW Hacking Help - Custom Music - nobody1089's Music Help Thread

The purpose of this site is not to distribute copyrighted material, but to honor one of our favourite games.

Copyright © 2005 - 2020 - SMW Central
Legal Information - Privacy Policy - Link To Us


Menu

Follow Us On

  • YouTube
  • Twitch
  • Twitter

Affiliates

  • Super Mario Bros. X Community
  • ROMhacking.net
  • Mario Fan Games Galaxy