-
Notifications
You must be signed in to change notification settings - Fork 0
/
lsdj-tutorial.tex
367 lines (213 loc) · 20.7 KB
/
lsdj-tutorial.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
\documentclass[]{article}
\usepackage{url}
\usepackage{xspace}
\usepackage{bm}
\usepackage{fancyvrb}
\usepackage{enumitem}
\usepackage[scale=.7]{geometry}
\newcommand{\buttonStyle}[1]{\textsf{#1}\xspace}
\newcommand{\buttonSymbolStyle}[1]{$\bm{#1}$\xspace}
\newcommand{\bA}{\buttonStyle{A}}
\newcommand{\bB}{\buttonStyle{B}}
\newcommand{\bStart}{\buttonStyle{{START}}}
\newcommand{\bSelect}{\buttonStyle{{SELECT}}}
%% To display directional input as arrows
%\newcommand{\bRight}{\buttonSymbolStyle{\Rightarrow}}
%\newcommand{\bLeft}{\buttonSymbolStyle{\Leftarrow}}
%\newcommand{\bUp}{\buttonSymbolStyle{\Uparrow}}
%\newcommand{\bDown}{\buttonSymbolStyle{\Downarrow}}
%% To display directional input as words
\newcommand{\bRight}{\buttonStyle{right}}
\newcommand{\bLeft}{\buttonStyle{left}}
\newcommand{\bUp}{\buttonStyle{up}}
\newcommand{\bDown}{\buttonStyle{down}}
\newcommand{\gbtxt}[1]{\texttt{#1}\xspace}
\newcommand{\lsdj}{\textit{LSDJ}\xspace}
\DefineVerbatimEnvironment%
{notes}{Verbatim}
{frame=lines}
%opening
\title{\lsdj Tutorial}
\author{Sabrepulse}
\date{Original text: before 2009? \\ Edited text: \today}
\begin{document}
\maketitle
\begin{abstract}
This is a tutorial for people who want to learn how to make music using \lsdj and have either very basic or no musical knowledge. I hope this basic guide helps people, as throughout learning the program I trawled the intarnetz for different explanations and tutorials – another one can't be a bad thing!
\end{abstract}
\tableofcontents
\section{Introduction}
I have previous digital musical knowledge of programs such as Ableton Live, Cubase and FL Studio and I also have a working understanding of chords, scales and musical notation. It's not essential that you know any of these things or have previous experience in music (everyone has to start somewhere right?) but it has certainly helped me. My advice would be to give \lsdj a try, and if you find it too difficult try learning the basics on computer software with an easier graphical interface.
This isn't a guide to every nook and cranny the \lsdj has to offer. The manual and wiki on the official website harbor a mass of information that I couldn't possibly hope to include in a 'newbie' guide.
Instead what I'm going to do is run you through how to create a small song---the information and knowledge you take from that should hopefully set you on your way to creating bigger and better things!
\section{Starting Out}
\paragraph{Basic structure of \lsdj}
The first screen you will see after the Nintendo logo passes will be the \textit{Song} screen.
%
In the song screen you place numbered blocks called \textit{Chains}, inside these chain blocks you create numbered blocks called \textit{Phrases}. Inside phrases you place musical notes which tell the program what to play. Inside each phrase you are able to create \textit{Instruments} which tell each of the notes what to sound like.
%\paragraph{First steps in the options menu}
\begin{enumerate}
\item From the song screen hold select and press up. This will navigate to the \textit{options menu}. Here you will be able to change many global parameters which affect your song and even the whole program.
\item Highlight the tempo\footnote{The tempo is the speed at which your entire song is played. It is measured in Beats Per Minutes, or BPM} field with the control pad, hold \bA and press \bUp, \bDown, \bLeft or \bRight to experiment with changing the tempo of the song.
\item Let's change the tempo to 140~BPM. I'm showing you this first to give you a taster of how most parameters/fields in \lsdj are altered, by holding \bA and using the control pad.
\item Once you've changed the tempo, hold \bSelect and push \bDown to return to the Song Screen.
\end{enumerate}
\section{Bass}
First we'll start with a simple bassline, then we'll create a bass instrument.
\subsection{Preparing a simple bass line}
\begin{enumerate}
\item In Channel \gbtxt{PU1}, highlight the first top left cell by using the control pad, then double tap \bA. This creates a new \textit{chain}.
\item You should now see chain \gbtxt{01} in the cell you selected. If you make any mistake an create a chain by mistake (for instance in a wrong location), select the chain and press \bA and \bB at the same time. This deletes the selected element. Note that this also works for deleting other kinds of elements that we will see later (phrases, notes, etc.).
\item Now you want to go to the chain screen: hold \bSelect + press \bRight while selecting your chaine \gbtxt{01}.
\item In the chain screen we want to create a phrase. Do this by double tapping \bA on the first cells at the top. For the sake of this tutorial I will assume you have created the phrase \gbtxt{01}.
\begin{figure}
\begin{notes}
0.
1.
2. C3
3.
4.
5.
6. C3
7.
8.
9.
A. C3
B.
C.
D.
E. C3
F.
\end{notes}
\caption{Initial bass line.}\label{bassline}
\end{figure}
\item Now we need to make the \textit{bassline}. Still in the chain screen, highlight phrase \gbtxt{01} and hold \bSelect + press \bRight, this will take you to the phrase screen for phrase \gbtxt{01}. Enter the notes as shown in Figure \ref{bassline}.
\item If you press play (\bStart) you will hear the Game Boy burst into life. It's not much (and certainly not a bassline) but it's a start.
\end{enumerate}
Ok, we need to go back and create 3 more phrases in chain \gbtxt{01} (if you think about it, most dance/pop music travels in the 4/4 timing. That's what we're aiming for here to get you familiar with the program) %TODO
\begin{enumerate}[resume]
\item To go back to the chain screen press and hold \bSelect and tap \bLeft. You should be back in chain \gbtxt{01}, and phrase \gbtxt{01} will be visible.
\end{enumerate}
Now, instead of having to create 3 new phrases and place the notes for each again, we're going to make it easier and faster for you. We're going to take our existing bassline section (phrase \gbtxt{01}) and \textit{clone} it 3 times, so that we're able to edit each one without it affecting the other.
\begin{enumerate}[resume]
\item In chain \gbtxt{01}, place 3 more times the phrase \gbtxt{01} below the one your already have there, for a total of 4.
\item To \textit{clone}, highlight the second phrase \gbtxt{01}, hold \bSelect, then press \bB, then press \bA. The phrase number will change to one you've previously not used. Do this for the remaining two below.
\end{enumerate}
Now in chain \gbtxt{01} you should see 4 different phrase numbers. If you look in the phrase screens for each you will see that they're exactly the same as each other. They all have the notes you placed inside for the first one. But because they now have different phrase numbers, you are able to edit each one independently of each other. Changing each phrase will not change another. This technique is the backbone of working quickly and efficiently with \lsdj, so it's handy to learn this straight away.
\begin{enumerate}[resume]
\item
Ok the next step is to edit the notes in each new phrase to round off our bassline.
The first one contains all \gbtxt{C} notes. Make the second one contain \gbtxt{E} notes, make the third contain \gbtxt{A} notes and the fourth to contain \gbtxt{B} notes. For the sake of this tutorial we'll keep it as simple as possible.
\item Go back to the chain screen and press \bStart. You will see each of your phrases playing in progression, with a small black arrow pointing to which phrase is currently playing. This will loop until you press start again.
\end{enumerate}
\subsection{Creating a bass instrument}
Ok so you can hear the bassline progressing, and at last you can hear something remotely musical! What we'd really like to do now is give that bassline a little more, well, bass!
\begin{enumerate}
\item Navigate to the phrase screen for your first phrase (should be phrase \gbtxt{01}).
\item Next to each note you will see an instrument number (default is \gbtxt{00}). Highlight this number (any will do) and select the instrument screen using the same method as you did with previous screens (hold \bSelect + \bRight).
\item In the instrument channel, the first thing you should do (to avoid later confusion) is name your instrument. You just highlight the name box and it'll bring up an alphabet for you to choose from. As we're creating a bassline here, let's call it \gbtxt{BASS}.
\item Press \bStart to hear your phrase in the background (or if you wish, hold \bSelect and press \bStart to hear your entire song in the background) while you're editing the sound of the instrument. This is handy as you can hear what you're changing in real-time.
\end{enumerate}
Next we want to edit the \textit{envelope} field. If you have very basic or no understanding of this, it's where you can control the ADSR (attack, decay, sustain, release). There are countless explanations of this on the net.
\begin{enumerate}[resume]
\item By default the envelope is set to \gbtxt{A9}. If you change the \gbtxt{A} up to \gbtxt{F} (hold \bSelect + \bUp) you will hear the instrument getting louder. If you change the \gbtxt{9} down to \gbtxt{1} (hold \bSelect + \bLeft) you will hear the instrument getting shorter. Playing about with these values you should try to make the instrument sound short and punchy. A good one to try is around \gbtxt{D3}.
\end{enumerate}
The next thing we need to edit is the \textit{wave} duty cycle of the instrument. That's the little graphic image of the wave, directly underneath the envelope field. There are only 4 positions it can be changed to: Far left (12.5\%), Left (25\%), Middle (50\%) and Right (75\%).
\begin{enumerate}[resume]
\item Hold \bA on the field and push \bRight or \bLeft to switch between the 4 settings. If your bassline is playing in the background you will be able to hear the cycle being changed. The middle setting (50\%) has a good low bassy sound so choose that for now.
\item Play around with the other fields in the instrument field if you like to hear what different things can affect your pulse instrument.
\item Once you've done this the first bassline section of your track is complete. Navigate back to the song screen (hold \bSelect + keep tapping \bLeft until you arrive there).
\end{enumerate}
Let's just recap on what we've done so far:
\begin{itemize}
\item Now you have 1 Chain (in your song screen)
\item Which contains 4 different Phrases (in your chain screen)
\item Each of which contain musical notes which determine the bassline (in your phrase screens)
\item You have edited 1 Instrument which is assigned to each of the notes in your phrase.
\end{itemize}
\section{Lead Melody}
Now we will first create a simple melody, then we will customize it with some commands.
\subsection{Creating the lead melody}
\begin{enumerate}
\item In Channel \gbtxt{PU2}, create a new chain by double tapping \bA.
\item Navigate to the chain screen and create a new phrase.
\item Inside this phrase enter a note then immediately create a new instrument for it. As the instrument you used before was \gbtxt{00} (by default) and you don't want the lead melody instrument to sound like the bassline instrument---let's make this one instrument \gbtxt{01}.
\begin{figure}
\begin{notes}
0. C6
1.
2. E6
3.
4. C6
5.
6. F6
7.
8. C6
9.
A. D6
B.
C. C6
D.
E. A6
F.
\end{notes}
\caption{Initial lead melody.}\label{melody}%TODO
\end{figure}
\item We still need to enter notes for the lead melody so let's do something simple, as shown in Figure \ref{melody}. Each of these notes should now have instrument \gbtxt{01} in the column next to them.
\item Go inside the instrument screen for instrument \gbtxt{01}, name it \gbtxt{LEAD1} and edit the parameters like before until you hear something you like. I'll choose envelope \gbtxt{C2} and wave duty cycle left (25\%), but it's up to you!
\end{enumerate}
\subsection{Customizing the melody with a few commands}
After you've done this head back to the phrase screen for this melody. The next thing we're going to change is the \textit{command} column on the far right. This is where you start making your melodies really interesting and giving them a bit of depth. Like anything in \lsdj, it's really worth going though the manual thoroughly and doing your homework on what each command can do. For this example we're going to add two different commands to our melody.
\begin{enumerate}
\item Go to row \gbtxt{0} and highlight the first command box that contain \gbtxt{-} (do not select the second command box that contains \gbtxt{00}). Push \bA and it'll give you the command \gbtxt{A} straight away. We don't want this one, so hold \bA and keep pushing right until you get to command \gbtxt{C}. This is the \textit{chord} command.
\item Now highlight the box to the right of it, which contains \gbtxt{00}. This is where you alter what each command does. \gbtxt{00} won't do anything on this command, so let's try \gbtxt{07} instead. Hit \bSelect + \bStart to hear the melody with this new command in place. You'll hear that the first note is now magically transformed into a chord! Try doing this to a couple more notes in your melody.
\end{enumerate}
The second command we're going to try is the \gbtxt{O} command. This can cause the notes in your melody to be played through either the left or right speaker channel, which is called \textit{panning}. There are four states you can assign to the command: \gbtxt{L} (left), \gbtxt{R} (right), \gbtxt{LR} (left \& right) or \gbtxt{\_\_} (which essentially turns both channels off so you get no sound coming through on that command).
\begin{enumerate}[resume]
\item On rows \gbtxt{1}, \gbtxt{5}, \gbtxt{9} and \gbtxt{D} in your phrase, assign the \gbtxt{O} command to \gbtxt{L}. On rows \gbtxt{3}, \gbtxt{7}, \gbtxt{B} and \gbtxt{F} in your phrase, assign the \gbtxt{O} command to \gbtxt{R}.
\item Play your melody and you will hear that after each note, the channel is panned to either left or right. In this example we have panned the melody in the spaces between the notes---I tend to find this gives a better stereo effect than placing the pan on the rows where each note is. Also this gives you room to place commands (the chord command we used for instance) on the rows with the notes themselves.
\end{enumerate}
That's it for the lead melody for now, try experimenting with different commands and their parameters to try and make it sound even more interesting!
\begin{enumerate}[resume]
\item Navigate from the phrase screen back to the chain screen and enter your phrase in the top 4 rows. If you want to change your lead melody even more, remember the cloning feature and use this to create new phrases.
\item When you're done head back to the song screen and press \bStart. The song screen will now play both your chains (bass \& lead melody) together for the first time. The 4 phrases in your bassline and the 4 phrases in your lead melody will play alongside each other and then loop back to the first phrase in each. If something sounds out of tune, go into the phrase where you think the problem is and alter it until it sounds right to you.
\end{enumerate}
\section{Kick Drum}
There are sampled drumkits available in the wave channel for you to use. In my opinion the kick drums on these kits are really weak and not very loud. The first big problem I was confronted with in \lsdj was how to make a really loud kick drum that you hear in a great deal of contemporary chiptune.
%
The answer is to forget about the wave channel for sampled drums and create an analogue kick drum using a pulse channel.
Right now you're probably screaming \textit{"But how!? I'm already using both of those channels for my bassline \& lead melody!"} or \textit{"How the hell do I create a drum from a pulse instrument?!"}. It's really easy.
In your \gbtxt{PU1} channel, your bassline notes in each of the 4 phrases are only assigned to rows \gbtxt{2}, \gbtxt{6}, \gbtxt{A} and \gbtxt{E}. What we're going to do is create a pulse channel instrument that sounds like a kick drum, and we're going to place it in rows \gbtxt{0}, \gbtxt{4}, \gbtxt{8} and \gbtxt{C}. Simply put it'll sound like this: Kick, Bass, Kick, Bass, Kick, Bass, Kick, Bass.
\begin{enumerate}
\item First, go inside the first phrase in your bassline chain. Create a new instrument and place it on rows \gbtxt{0}, \gbtxt{4}, \gbtxt{8} and \gbtxt{C}, making sure that the note you place is always \gbtxt{C5}.
\item Go inside that instrument, make sure it is a pulse instrument and name it \gbtxt{KICK}. Set the envelope to \gbtxt{F1}. Set the wave duty cycle to middle (50\%). Go to the bottom of the screen and set the Table to \gbtxt{00} (just hold \bA and press \bRight).
\item Now navigate to the Table screen as you do with other screens by holding \bSelect and pressing \bRight. As this is a simple tutorial I'm not going to go into any detail with regards to tables right now, but this technique should give you a tiny taster of what tables are able to do.
\item In the table screen you'll see a lot of columns, we're going to go to the top far right cell and use the command column to choose command \gbtxt{PF1}. This is the \textit{pitch} command and what we are doing is pitching the pulse instrument right down to give it a punchy, kick drum sound. If you press start to preview what you've done you'll hear the kick coming right before each of your bass notes.
\item The kick sounds a little unruly at the moment, what we need to do is tame how long it plays for by using the \gbtxt{K} command to \textit{kill} the trail the kick seems to be leaving. Right at the bottom of the command column place command \gbtxt{K00}, you'll probably find it's best to put it at the second to last row on the column to avoid clicking\footnote{\textit{Editor note}: with LSDJ 4.8.9, putting the kill on the last two rows does not seem to have much effect. Line \gbtxt{8} sounds like a good candidate.}. Press play again and you'll hear it's eradicated the noisy trail and you're left with a loud, punchy kick drum and bass combo!
\item Ok so that's your kick drum sorted on that phrase. All you need to do is make sure the kicks are present on each phrase that you're using. Once you've done this head back to the song screen and press \bStart to hear the kick drum, bassline and lead melody all in action.
\end{enumerate}
Please note that this isn't the definitive method of creating a kick drum using the pulse channel. The technique here is a carbon copy of one posted on the \lsdj wiki here where there are other examples you can follow.
\section{Percussion (Snare Drum + Hihats)}
\subsection{Snare}
\begin{enumerate}
\item Create a new chain in the Noise channel (\gbtxt{NOI}). If you've been following up to now it should be chain \gbtxt{03}. If not don't worry. Just double tap \bA to create a virgin chain.
\item Go into your new chain and create a new phrase, go into this phrase and place notes (the default is fine, don't worry about that now) on rows \gbtxt{4} and \gbtxt{C}. This is going to be your \textit{snare} drum so make sure these notes are assigned to a new instrument number, then go into the instrument screen for it.
\item In the instrument screen, we need to make sure that we are using a Noise instrument, so make sure that is selected instead of Pulse, Wave or Kit.
\item Once you've done this name the instrument \gbtxt{SNARE}. Press play to hear what you're altering whilst you edit the envelope to around \gbtxt{C3}, change the length to something that sounds snappy, and finally edit the sweep until the notes playing start to resemble a snare sound. \gbtxt{EF} usually works fine so try that.
\end{enumerate}
\subsection{Hat}
\begin{enumerate}
\item Go back to your phrase screen, create a new instrument, add these notes before and after each of the snares and experiment inside the instrument screen remember to name this instrument \gbtxt{HAT}, and then make these as long or short as you want. \gbtxt{A1} or \gbtxt{A2} is usually a good envelope setting, and to be honest you won't really need to alter the length or sweep parameters but again, it's up to you, experimentation is the key!
\item Try changing a few of the phrases in this chain and adding new percussion patterns. Once you've got it sounding how you want navigate back to the song screen and hit \bStart to hear your kick drum, bassline, lead melody, snare and hi-hat all working in perfect harmony.
\end{enumerate}
By now, you should have enough basic knowledge and understanding to create chains, phrases and instruments in \lsdj and use these to construct a simple song. Again, remember to read the \lsdj manual and check the \lsdj wiki/mailing list for advanced techniques and for anything at all you're not sure of.
\section*{Source and changes}
Source: \url{https://www.douban.com/group/topic/8715664/}
\begin{itemize}
\item Added some section and subsection titles.
\item Created figures.
\item Changed some text to match last \lsdj version (4.8.9).
\item Used formatting for inputs or for displayed game boy text.
\item Added some text to clarify some parts or give some hints.
\end{itemize}
\end{document}