diff --git a/doc/2-interface/asset-list.md b/doc/2-interface/asset-list.md index 7e8dc9a6..44c3fefa 100644 --- a/doc/2-interface/asset-list.md +++ b/doc/2-interface/asset-list.md @@ -1,11 +1,38 @@ # instrument list -image +![instruments window](instruments.png) + +Buttons from left to right: +- **Add:** Creates a new, default instrument. +- **Duplicate:** Duplicates the currently selected instrument. +- **Open:** Brings up a file dialog to load a file as a new instrument at the end of the list. +- **Save:** Brings up a file dialog to save the currently selected instrument. +- **Toggle folders/standard view:** Enables (and disables) folder view, explained below. +- **Move up:** Moves the currently selected instrument up in the list. Pattern data will automatically be adjusted to match. +- **Move down:** Same, but downward. +- **Delete:** Deletes the currently selected instrument. Pattern data will be adjusted to use the next available instrument in the list. + +## folder view + +![instruments window in folder view](instruments-folder.png) + +In folder view, the "Move up" and "Move down buttons disappear and a new one appears: +- **New Folder:** Creates a new folder. + +Instruments may be dragged from folder to folder and even rearranged within folders without changing their associated numbers. + +Right-clicking on a folder allows one to rename or delete it. Deleting a folder does not remove the instruments in it. # wavetable list -image +![wavetables window](wavetables.png) + +Everything from the instrument list applies here also, with one major difference: Moving waves around with the buttons will change their associated numbers in the list but _not_ in pattern or instrument data. Be careful! # sample list -image +![samples window](samples.png) + +Everything from the wavetables list applies here also, with the addition of two buttons: +- **Preview:** Plays the selected sample at its default note. +- **Stop preview:** Stops the sample playback. diff --git a/doc/2-interface/control-edit.png b/doc/2-interface/control-edit.png new file mode 100644 index 00000000..35fce78c Binary files /dev/null and b/doc/2-interface/control-edit.png differ diff --git a/doc/2-interface/control-metronome.png b/doc/2-interface/control-metronome.png new file mode 100644 index 00000000..0c667256 Binary files /dev/null and b/doc/2-interface/control-metronome.png differ diff --git a/doc/2-interface/control-play-pattern.png b/doc/2-interface/control-play-pattern.png new file mode 100644 index 00000000..a6eb5d01 Binary files /dev/null and b/doc/2-interface/control-play-pattern.png differ diff --git a/doc/2-interface/control-play-repeat.png b/doc/2-interface/control-play-repeat.png new file mode 100644 index 00000000..853cdcff Binary files /dev/null and b/doc/2-interface/control-play-repeat.png differ diff --git a/doc/2-interface/control-play.png b/doc/2-interface/control-play.png new file mode 100644 index 00000000..feafe168 Binary files /dev/null and b/doc/2-interface/control-play.png differ diff --git a/doc/2-interface/control-repeat.png b/doc/2-interface/control-repeat.png new file mode 100644 index 00000000..c905e64a Binary files /dev/null and b/doc/2-interface/control-repeat.png differ diff --git a/doc/2-interface/control-step.png b/doc/2-interface/control-step.png new file mode 100644 index 00000000..fd6262da Binary files /dev/null and b/doc/2-interface/control-step.png differ diff --git a/doc/2-interface/control-stop.png b/doc/2-interface/control-stop.png new file mode 100644 index 00000000..f1fc9e4a Binary files /dev/null and b/doc/2-interface/control-stop.png differ diff --git a/doc/2-interface/controls-classic.png b/doc/2-interface/controls-classic.png new file mode 100644 index 00000000..a8a093fa Binary files /dev/null and b/doc/2-interface/controls-classic.png differ diff --git a/doc/2-interface/controls-compact.png b/doc/2-interface/controls-compact.png new file mode 100644 index 00000000..b0d1b0d4 Binary files /dev/null and b/doc/2-interface/controls-compact.png differ diff --git a/doc/2-interface/controls-split.png b/doc/2-interface/controls-split.png new file mode 100644 index 00000000..235ea2ce Binary files /dev/null and b/doc/2-interface/controls-split.png differ diff --git a/doc/2-interface/controls-vertical.png b/doc/2-interface/controls-vertical.png new file mode 100644 index 00000000..98a89cc4 Binary files /dev/null and b/doc/2-interface/controls-vertical.png differ diff --git a/doc/2-interface/instruments-folder.png b/doc/2-interface/instruments-folder.png new file mode 100644 index 00000000..18e4ae63 Binary files /dev/null and b/doc/2-interface/instruments-folder.png differ diff --git a/doc/2-interface/instruments.png b/doc/2-interface/instruments.png new file mode 100644 index 00000000..33487de6 Binary files /dev/null and b/doc/2-interface/instruments.png differ diff --git a/doc/2-interface/play-edit-controls.md b/doc/2-interface/play-edit-controls.md index db159cc2..0645f6d1 100644 --- a/doc/2-interface/play-edit-controls.md +++ b/doc/2-interface/play-edit-controls.md @@ -1,23 +1,37 @@ # play/edit controls -image +The "Play/Edit Controls" are used to control playback and change parameters of the pattern view. -these are used to control playback and change parameters of the pattern view. +- ![](control-play.png) **Play:** Plays from cursor position. +- ![](control-stop.png) **Stop:** Stops all playback. +- ![](control-play-pattern.png) **Play from the beginning of this pattern:** Plays from the start of current pattern. +- ![](control-play-repeat.png) **Repeat from the beginning of this pattern:** Repeats current pattern from its start. +- ![](control-step.png) **Step one row:** Plays only the row at cursor position and moves down one. +- ![](control-edit.png) **Edit:** Toggles edit mode. If off, nothing can be edited in the pattern window. (Great for playing around on the keyboard!) +- ![](control-metronome.png) **Metronome:** Toggles the metronome, which only sounds during playback. +- ![](control-repeat.png) **Repeat pattern:** Toggles pattern repeat. During playback while this is on, the current pattern will play over and over instead of following the order list. +- **Poly:** Turns on polyphony for previewing notes. Toggles to **Mono** for monophony (one note at a time only). +- **Octave:** Sets current input octave. +- **Step:** Sets edit step. If this is 1, entering a note or effect will move to the next row. If this is a larger number, rows will be skipped. If this is 0, the cursor will stay in place. +- **Follow orders:** If on, the selected order in the orders window will follow the song during playback. +- **Follow pattern:** If on, the cursor will follow playback and the song will scroll by as it plays. -TODO: explain +## layouts -## other layouts - -the layout can be changed in Settings > Appearance to one of these: +The layout can be changed in Settings > Appearance to one of these: ### classic -image +![classic play/edit controls](controls-classic.png) ### compact -image +![compact play/edit controls](controls-compact.png) ### compact (vertical) -image +![compact vertical play/edit controls](controls-vertical.png) + +### split + +![split play and edit controls](controls-split.png) diff --git a/doc/2-interface/samples.png b/doc/2-interface/samples.png new file mode 100644 index 00000000..816512fb Binary files /dev/null and b/doc/2-interface/samples.png differ diff --git a/doc/2-interface/song-info.md b/doc/2-interface/song-info.md index e2aa806f..1a4cd03e 100644 --- a/doc/2-interface/song-info.md +++ b/doc/2-interface/song-info.md @@ -1,5 +1,49 @@ # song info -# sub-songs +- "Name" is for the track's title. +- "Author" is used to list the contributors to a song. If the song is a cover of someone else's track, it's customary to list their name first, followed by `[cv. YourName]`. +- "Album" can be used to store the associated album name, the name of the game the song is from, or whatever. +- "System" is for the game or computer the track is designed for. This is automatically set when creating a new tune, but it can be changed to anything one wants. The "Auto" button will provide a guess based on the chips in use. + +All of this metadata will be included in a VGM export. This isn't the case for a WAV export, however. + +"Tuning (A-4)" allows one to set tuning based on the note A-4, which should be 440 in most cases. Opening an Amiga MOD will set it to 436 for hardware compatibility. + +# subsongs + +This window allows one to create **subsongs** – multiple individual songs within a single file. Each song has its own order list and patterns, but all songs within a file share the same chips, samples, and so forth. + +- The drop-down box selects the current subsong. +- The `+` button adds a new subsong. +- The `−` button permanently deletes the current subsong (unless it's the only one). +- "Name" sets the title of the current subsong. +- The box at the bottom can store any arbitrary text, like a separate "Comments" box for the current subsong. # speed + +There are multiple ways to set the tempo of a song. + +**Tick Rate** sets the frequency of ticks per second, the rate at which notes and effects are processed. +- All values are allowed for all chips, but most chips have hardware limitations that mean they should stay at either 60 (approximately NTSC) or 50 (exactly PAL). +- Clicking the Tick Rate button switches to a more traditional **Base Tempo** BPM setting. + +**Speed** sets the number of ticks per row. +- Clicking the "Speed" button changes to more complex modes covered in the [grooves] page. + +**Virtual Tempo** simulates any arbitrary tempo without altering the tick rate. It does this by adding or skipping ticks to approximate the tempo. The two numbers represent a ratio applied to the actual tick rate. Example: +- Set tick rate to 150 BPM (60 Hz) and speed to 6. +- Set the first virtual tempo number (numerator) to 200. +- Set the second virtual tempo number (denominator) to 150. +- The track will play at 200 BPM. +- The ratio doesn't have to match BPM numbers. Set the numerator to 4 and the denominator to 5, and the virtual BPM becomes 150 × 4/5 = 120. + +**Divider** changes the effective tick rate. A tick rate of 60Hz and a divisor of 6 will result in ticks lasting a tenth of a second each! + +**Highlight** sets the pattern row highlights: +- The first value represents the number of rows per beat. +- The second value represents the number of rows per measure. +- These don't have to line up with the music's actual beats and measures. Set them as preferred for tracking. _Note:_ These values are used for the metronome and calculating BPM. + +**Pattern Length** is the length of each pattern in rows. This affects all patterns in the song, and every pattern must be the same length. (Individual patterns can be cut short by `0Bxx`, `0Dxx`, and `FFxx` commands.) + +**Song Length** shows how many orders are in the order list. Decreasing it will hide the orders at the bottom. Increasing it will restore those orders; increasing it further will add new orders of all `00` patterns. diff --git a/doc/2-interface/wavetables.png b/doc/2-interface/wavetables.png new file mode 100644 index 00000000..ad7ea880 Binary files /dev/null and b/doc/2-interface/wavetables.png differ