We've just updated MediaWiki and its underlying software. If anything doesn't look or work quite right, please mention it to us. --RanAS

AddMusicM: Difference between revisions

From SnesLab
Jump to: navigation, search
No edit summary
 
(3 intermediate revisions by the same user not shown)
Line 4: Line 4:
* The <code>$ED</code> command can not only set ADSR value for a channel, but also GAIN.
* The <code>$ED</code> command can not only set ADSR value for a channel, but also GAIN.
* Using <code>$F3 $XX $YY</code> instead of <code>$E5 $XX $YY</code> for setting sample of a channel, which avoided the conflict of tremolo command.
* Using <code>$F3 $XX $YY</code> instead of <code>$E5 $XX $YY</code> for setting sample of a channel, which avoided the conflict of tremolo command.
* '''You can insert each BRR sample separately''' without needing sample bank file (.bnk) and Sample Tool.
* '''Super loop command:''' It would helps for decreasing insert size of a song if uses wisely.
* '''Super loop command:''' It would helps for decreasing insert size of a song if uses wisely.
* '''Legato command:''' Finally you can make legato in a song without spamming <code>$DD $00 $01 $XX ^YY</code>.
* '''Legato command:''' Finally you can make legato in a song without spamming <code>$DD $00 $01 $XX ^YY</code>.
Line 22: Line 23:
! Byte 0-1 !! Byte 2+
! Byte 0-1 !! Byte 2+
|-
|-
| Loop point (little endian) || Chunks of BRR sample data
| Loop point (unsigned 16-bit, little endian) || Chunks of BRR sample data
|}
|}


This file format has been supported by the community and various tools, like [[split700]], [[C700]] and [[AddMusicK]].
This file format has been supported by the community and various tools, like [[AddMusicK]], [[split700]], [[C700]].
 
== Backward compatibility from other AddMusic versions ==
[[AddMusicK]] '''natively''' supports most of AddMusicM's features but built-in square wave and direst byte writing to ARAM.
 
[[Category:AddMusic]]
[[Category:AddMusic]]

Latest revision as of 14:10, 15 January 2024

AddMusicM is a version of AddMusic developed by 757 around 2010. It bases on carol's AddMusic and comes with a lot of new features. It also has improved compatibility with the real hardware and accurate emulators, since the SPC700 ARAM usage is heavily remapped, and actually caring about echo buffer.

Notable Features for Porters

  • The $ED command can not only set ADSR value for a channel, but also GAIN.
  • Using $F3 $XX $YY instead of $E5 $XX $YY for setting sample of a channel, which avoided the conflict of tremolo command.
  • You can insert each BRR sample separately without needing sample bank file (.bnk) and Sample Tool.
  • Super loop command: It would helps for decreasing insert size of a song if uses wisely.
  • Legato command: Finally you can make legato in a song without spamming $DD $00 $01 $XX ^YY.
  • Light staccato enabling command: It would decrease the length of minor silence between notes.
  • Square wave command: It comes with built-in square wave sample, and the frequency CAN be changed mid-channel by simply using $FA $XX command.
  • Noise command: You can access to SPC's built-in noise with an single command.
  • You can swap echo enabling mid-channel.
  • You can set your custom FIR filter easily.
  • You can write any values directly into DSP register or ARAM, though only 1 byte can be written at once.

BRR Format

AddMusicM's author (757) designed a file format for interchanging BRR samples, which includes the loop point of a BRR sample in the file.

The file size should always be multiples of 9 plus 2, and the scheme look like this:

Byte 0-1 Byte 2+
Loop point (unsigned 16-bit, little endian) Chunks of BRR sample data

This file format has been supported by the community and various tools, like AddMusicK, split700, C700.

Backward compatibility from other AddMusic versions

AddMusicK natively supports most of AddMusicM's features but built-in square wave and direst byte writing to ARAM.