summaryrefslogtreecommitdiff
path: root/blog/post/2021-10-10.html
diff options
context:
space:
mode:
Diffstat (limited to 'blog/post/2021-10-10.html')
-rw-r--r--blog/post/2021-10-10.html972
1 files changed, 0 insertions, 972 deletions
diff --git a/blog/post/2021-10-10.html b/blog/post/2021-10-10.html
deleted file mode 100644
index f18b75a..0000000
--- a/blog/post/2021-10-10.html
+++ /dev/null
@@ -1,972 +0,0 @@
-<!DOCTYPE html><html><head>
-<meta charset="utf-8">
-<meta name="viewport" content="width=device-width,initial-scale=1">
-<meta name="theme-color" content="#000000">
-<title>Chrisoft::Blog(r#"EDIROL SD-20: the Crumbling of the Canvas?")</title>
-<meta name="description" content="«EDIROL SD-20: the Crumbling of the Canvas?» de spelunca ursae">
-<meta name="author" content="Chris Xiong">
-<script type="text/javascript" src="/panel.js"></script>
-<script type="text/javascript" src="/themer.js"></script>
-<script type="text/javascript" src="/blog/footnoter.js"></script>
-<script type="text/javascript" src="/blog/aes-js.js"></script>
-<script type="text/javascript" src="/blog/scrypt.js"></script>
-<script type="text/javascript" src="/blog/sha256.js"></script>
-<script type="text/javascript" src="/blog/decryptor.js"></script>
-<link rel="stylesheet" type="text/css" href="/common.css">
-<link rel="stylesheet" type="text/css" href="/panel.css">
-<link rel="stylesheet" type="text/css" href="/theme0a.css" id="theme0a">
-<link rel="stylesheet" type="text/css" href="/theme0b.css" id="theme0b">
-<link rel="stylesheet" type="text/css" href="/theme1a.css" id="theme1a">
-<link rel="stylesheet" type="text/css" href="/theme1b.css" id="theme1b">
-<link rel="stylesheet" type="text/css" href="/theme2a.css" id="theme2a">
-<link rel="stylesheet" type="text/css" href="/theme2b.css" id="theme2b">
-<link rel="stylesheet" type="text/css" href="/theme3a.css" id="theme3a">
-<link rel="stylesheet" type="text/css" href="/theme3b.css" id="theme3b">
-<link rel="stylesheet" type="text/css" href="/blog/blogext.css">
-<script>
-function ol()
-{
- window.onresize=function()
- {
- if(window.innerWidth<768)
- setupevents();
- else unsetevents();
- }
- window.onresize();
- loadTheme();
- _decryptonload();
-}
-</script>
-</head>
-<body onload="ol()" style="overflow-x:hidden;">
- <div id="panel" class="TText">
- <ul id="panellist">
- <li><a href="/"><h1>Chrisoft</h1></a></li>
- <li><a href="/blog"><h2>Blog</h2></a></li>
- <li><a href="#"><h3 id="title">EDIROL SD-20: the Crumbling of the Canvas?</h3></a></li>
- <li><span>Tags</span>
- <ul id="tagslist">
- <li><a href="/blog/list/device-review/">device-review</a></li><li><a href="/blog/list/midi/">midi</a></li><li><a href="/blog/list/music/">music</a></li></ul>
- </li>
- <li id="tocouter">
- <span>Table of Contents</span>
- <ul id="tocroot">
- <li><a class="toctarg" href="#tocanch0">The Encounter</a></li><li><a class="toctarg" href="#tocanch1">The Module</a></li><li><a class="toctarg" href="#tocanch2">The Setup</a></li><li><a class="toctarg" href="#tocanch3">The Sounds</a></li><li><a class="toctarg" href="#tocanch4">The Editability</a></li><li><ul class="tocnode"><li><a class="toctarg" href="#tocanch5">The Quirks</a></li></ul></li><li><a class="toctarg" href="#tocanch6">The Manual</a></li><li><a class="toctarg" href="#tocanch7">The Insides</a></li><li><a class="toctarg" href="#tocanch8">The Secrets</a></li><li><ul class="tocnode"><li><a class="toctarg" href="#tocanch9">Test mode</a></li><li><a class="toctarg" href="#tocanch10">unknown (likely firmware
-update) mode</a></li></ul></li><li><a class="toctarg" href="#tocanch11">The Conclusion</a></li><li><a class="toctarg" href="#tocanch12">The … Death?</a></li></ul>
- </li>
- <li style="margin-left:-0.5em"><a id="prevp" href="2021-06-03.html">Prev post</a></li>
- <li style="margin-left:-0.5em"><a id="nextp" href="2022-07-23.html">Next post</a></li>
- </ul>
- </div>
- <div id="content">
- <h2 id="titleh" class="TText" style="font-wight:normal;">EDIROL SD-20: the Crumbling of the Canvas?</h2>
- <div id="datetags" class="TText" style="margin-bottom:1em;">2021-10-10<br>#device-review #midi #music</div>
- <hr><div id="article" class="TText"><script>
-window.addEventListener("DOMContentLoaded",function(){
-const cl=document.querySelectorAll('div.collapse');
-let n=0;
-for(let x of cl)
-{
- const d=document.createElement('blockquote');
- const dd=x.cloneNode(true);
- x.parentNode.insertBefore(d,x);
- x.parentNode.removeChild(x);
- dd.id=`cc${n++}`;
- dd.style.display='none';
- const s=document.createElement('span');
- const b=document.createElement('b');
- const a=document.createElement('a');
- a.classList.add('ca');
- a.setAttribute('x',n-1);
- a.innerHTML='show';
- a.href='javascript:void(0)';
- if (dd.hasAttribute('caption'))
- b.innerHTML=dd.getAttribute('caption');
- else
- b.innerHTML=dd.getAttribute('data-caption');
- s.appendChild(b);
- s.appendChild(document.createTextNode(' ['));
- s.appendChild(a);
- s.appendChild(document.createTextNode(']'));
- d.appendChild(s);
- d.appendChild(dd);
- a.onclick=function()
- {
- let x='none';
- if(a.innerHTML=='show')
- {
- a.innerHTML='hide';
- x='block';
- }
- else
- {
- a.innerHTML='show'
- }
- document.getElementById(`cc${a.getAttribute('x')}`).style.display=x;
- }
-}
-const al=document.querySelectorAll('audio');
-n=0;
-for(let x of al)
-{
- x.id=`a${n++}`;
- x.onplay=function()
- {
- for(let x of al)
- {
- if(x.id!=this.id)x.pause();
- }
- }
-}
-});
-</script>
-<article>
-<p>I was intrigued by the insides of EDIROL’s SD-20. How on earth did
-Roland squeeze half of SD-80’s content in to a package that’s smaller
-than SD-80’s main board? Turns out it was by crippling the product…</p>
-<h2 id="tocanch0" class="tvis">The Encounter</h2>
-<p>I didn’t get my SD-20 for $50 as promised in my SD-80 article. The
-lowest price I found when I started watching for spares again was $75.
-It stayed there for over half a year. But just weeks before I got into
-the States, it was gone. All the rest of the listings asked for
-ridiculous prices ranging from $150 to $250. There’s no way I will pay
-over $100 for a SD-20. So I waited and waited…</p>
-<p>Until one day a new listing popped up. It was exactly $100 (with free
-shipping). “Well,” I thought, “this is it.” It accepts best offer, but
-nobody else offered to buy it until the listing ended. That’s the
-bizarre story of me getting my SD-20 at my max acceptable price…</p>
-<h2 id="tocanch1" class="tvis">The Module</h2>
-<p>I felt the cheapness inside instantly when I picked up the package:
-the SD-20 (with the included, somewhat dodgy aftermarket power adapter)
-weights absolutely nothing! It’s even lighter than the ThinkPad mouse I
-occasionally use. That doesn’t inspire much faith on its insides.</p>
-<p>The exterior of the module is made of plastic exclusively. No metal
-whatsoever (except on the connectors). SD-80’s metal front cover weights
-more than this entire thing…</p>
-<p>Flipping the module around reveals the dreaded three word phrase:
-“Made in China”. I wonder how many products that are never available in
-China at all are assembled in China.</p>
-<p>There’s only one button and one knob on the front panel of the SD-20.
-This is even more cut down than the SC-8820, which also has only one
-button and one knob, but the volume knob doubles as a preview
-button.</p>
-<p>Roland clearly made SD-20 the intended successor of SC-8820. Just
-look at the pictures in the manuals. They have nearly identical form
-factors. Let’s see how their sounds will compare.</p>
-<p>The choice of ports is kind of weird on the SD-20. It’s almost
-identical to the ports on the back of the SC-8820, except the audio
-input being replaced by a 3.5mm combo jack, addition of an optical
-S/PDIF TOSLINK port, and omission of the DIN MIDI out port. The serial
-port (mini DIN 8-pin) featured on all older SC models made its only
-reappearance in the SD series. Despite having an audio input port, the
-SD-20, just like its predecessors in the SC family, doesn’t have any
-digital audio interface functionality. The audio input is merely passed
-through to the analog output.</p>
-<table>
-<tbody><tr>
-<td>
-<div style="text-align:center;max-width:98%;">
-<a href="//filestorage.chrisoft.org/blog/img/sd20_module.jpg"><img style="width: 48%;" src="//filestorage.chrisoft.org/blog/img/ssbsthumb_1536x1536_sd20_module.jpg"></a> <br>SD-20 on top of
-the SD-80
-</div>
-</td>
-<td>
-<div style="text-align:center;max-width:98%;">
-<a href="//filestorage.chrisoft.org/blog/img/sd20_bottom.jpg"><img style="width: 48%;" src="//filestorage.chrisoft.org/blog/img/ssbsthumb_1536x1536_sd20_bottom.jpg"></a> <br>Bottom with
-serial number censored
-</div>
-</td>
-</tr>
-</tbody></table>
-<h2 id="tocanch2" class="tvis">The Setup</h2>
-<p>Like the SD-80, Roland has discontinued driver support for the SD-20.
-The SD-20 will not even appear powered on if you choose to power the
-unit through USB bus power and have no driver installed. The same trick
-to make SD-80’s driver work on Windows 10 also works for the SD-20. You
-can search the Internet for the trick, or check out my first post on the
-SD-80 for the directions.</p>
-<p>The module works out of the box on Linux as long as you have proper
-kernel support (that is, you shouldn’t have to worry about this unless
-you build the kernel yourself). Required kernel modules are identical to
-those of the SD-80.</p>
-<p>The use of RCA jacks for analog audio output means that I don’t have
-the suitable cable to connect them to my audio interfaces at the moment.
-Fortunately I can still make digital recordings thanks to the inclusion
-of the S/PDIF output. The digital signal has a sample rate of 44100 Hz,
-the same as SD-80.</p>
-<h2 id="tocanch3" class="tvis">The Sounds</h2>
-<p>(Unless otherwise stated, all hardware demos in this section are
-recorded through the digital S/PDIF interface with EDIROL UA-25. All
-files are level normalized to -1 dB. Excerpts are not normalized after
-being extracted from the normalized original.)</p>
-<p>It’s the same StudioCanvas sound, but …</p>
-<p>With a few exceptions, preset instruments shared by the SD-20 and the
-SD-80 sound roughly identical. However, note the different mix levels on
-each model.</p>
-<div>
-<table style="position:relative;left:50%;transform:translate(-50%,0);text-align:center">
-<tbody><tr>
-<th>
-SD-20
-</th>
-<th>
-SD-20 Converter
-</th>
-<th>
-SD-80
-</th>
-</tr>
-<tr>
-<td>
-<audio controls="" preload="none" src="//filestorage.chrisoft.org/blog/data/SD-20/AMEDLEY.SD20.NCREX.OGG">
-</audio>
-</td>
-<td>
-<audio controls="" preload="none" src="//filestorage.chrisoft.org/blog/data/SD-20/AMEDLEY.SD20C.NCREX.OGG">
-</audio>
-</td>
-<td>
-<audio controls="" preload="none" src="//filestorage.chrisoft.org/blog/data/SD-20/AMEDLEY.SD80.NCREX.OGG">
-</audio>
-</td>
-</tr>
-<tr>
-</tr><tr>
-<td colspan="3">
-Excerpt from AMEDLEY.MID by Earl Gray Fowler from Voyetra Technologies,
-arranged for SD-80 (Native Mode)
-</td>
-</tr>
-</tbody></table>
-</div>
-<p>However significant differences show up as soon as you start tuning
-any non-GM1 controls (this includes new controls defined by GM2, e.g.&nbsp;cc
-74).</p>
-<div>
-<table style="position:relative;left:50%;transform:translate(-50%,0);text-align:center">
-<tbody><tr>
-<th>
-SD-20
-</th>
-<th>
-SD-20 Converter
-</th>
-<th>
-SD-80
-</th>
-</tr>
-<tr>
-<td>
-<audio controls="" preload="none" src="//filestorage.chrisoft.org/blog/data/SD-20/th06_13.sd20.ncrex.ogg">
-</audio>
-</td>
-<td>
-<audio controls="" preload="none" src="//filestorage.chrisoft.org/blog/data/SD-20/th06_13.sd20c.ncrex.ogg">
-</audio>
-</td>
-<td>
-<audio controls="" preload="none" src="//filestorage.chrisoft.org/blog/data/SD-20/th06_13.sd80.ncrex.ogg">
-</audio>
-</td>
-</tr>
-<tr>
-</tr><tr>
-<td colspan="3">
-Excerpt from th06_13.mid
-</td>
-</tr>
-</tbody></table>
-</div>
-<p>Note the very different filter characteristics on the piano.</p>
-<p>What make this module nearly unusable is its 64 voices polyphony.
-Roland has been using this “voice” concept for polyphony since the very
-beginning of their PCM based synths. An instrument can have up to four
-“layers” (or “WGs”, wave generators in Roland’s terms) in these Roland
-PCM synthesizers. Each layer can consist of up to two channels (for
-stereo samples). Each one of these channels takes up a “voice” when
-played. The contemporary set and solo set of the StudioCanvas make heavy
-use of layering, as well as stereo samples. Some of these patches
-casually use up to 4 voices per note, with a (theoretical) maximum of 8.
-Unlike the SC-8850 vs SC-8820, when Roland stripped down the polyphony
-of the SD-20, they did not create simplified patches that use fewer
-voices like they did for the SC-8820. This immediately brings down the
-actual note polyphony of the SD-20 down to the same (or even lower)
-level of SC-55, and is no where near usable. Hence in terms of
-polyphony, the SD-20 is a downgrade compared to its predecessor SC-8820:
-Even you have Roland’s (then) latest studio sounds inside a tiny box,
-you have to take great precaution while using them, as they deplete your
-available polyphony <em>very</em> fast. Both tracks below demonstrate
-how 64 voices is nowhere close to enough for the SD-20.</p>
-<div>
-<table style="position:relative;left:50%;transform:translate(-50%,0);text-align:center">
-<tbody><tr>
-<th>
-SD-20
-</th>
-<th>
-SD-20 Converter
-</th>
-<th>
-SD-80
-</th>
-</tr>
-<tr>
-<td>
-<audio controls="" preload="none" src="//filestorage.chrisoft.org/blog/data/SD-20/th06_13.sd20.ncr.ogg">
-</audio>
-</td>
-<td>
-<audio controls="" preload="none" src="//filestorage.chrisoft.org/blog/data/SD-20/th06_13.sd20c.ncr.ogg">
-</audio>
-</td>
-<td>
-<audio controls="" preload="none" src="//filestorage.chrisoft.org/blog/data/SD-20/th06_13.sd80.ncr.ogg">
-</audio>
-</td>
-</tr>
-<tr>
-</tr><tr>
-<td colspan="3">
-“Crude” replica of Septette for a Dead Princess by ZUN. The original
-tuning was not replicated.
-</td>
-</tr>
-</tbody></table>
-</div>
-<p>The SD-20 drops notes like crazy in the final section. The SD-20 MIDI
-Converter drops percussion notes instead.</p>
-<p>Unlike my SD-80, which sometimes messes up timing a bit and slows
-down when the load is high, the SD-20 simply cut off existing notes
-instantly without causing timing errors.</p>
-<div>
-<table style="position:relative;left:50%;transform:translate(-50%,0);text-align:center">
-<tbody><tr>
-<th>
-SD-20
-</th>
-<th>
-SD-20 Converter
-</th>
-<th>
-SD-80
-</th>
-</tr>
-<tr>
-<td>
-<audio controls="" preload="none" src="//filestorage.chrisoft.org/blog/data/SD-20/kog_09.sd20.ncr.ogg">
-</audio>
-</td>
-<td>
-<audio controls="" preload="none" src="//filestorage.chrisoft.org/blog/data/SD-20/kog_09.sd20c.ncr.ogg">
-</audio>
-</td>
-<td>
-<audio controls="" preload="none" src="//filestorage.chrisoft.org/blog/data/SD-20/kog_09.sd80.ncr.ogg">
-</audio>
-</td>
-</tr>
-<tr>
-</tr><tr>
-<td colspan="3">
-“Crude” replica of Enigmatic Doll from KiohGyoku by ZUN.
-</td>
-</tr>
-</tbody></table>
-</div>
-<p>Besides the obvious fact that Loose Lips is missing, pay attention to
-the way the piano notes are cut short. Also note each model has its own
-filter response for the synth bass.</p>
-<p>Finally, a GM-ish track for comparing vanilla GM2 patches without any
-tweaking. Reed Romance and SH-2 Lead from the SD special set are used in
-this adaptation.</p>
-<div>
-<table style="position:relative;left:50%;transform:translate(-50%,0);text-align:center">
-<tbody><tr>
-<th>
-SD-20
-</th>
-<th>
-SD-20 Converter
-</th>
-<th>
-SD-80
-</th>
-</tr>
-<tr>
-<td>
-<audio controls="" preload="none" src="//filestorage.chrisoft.org/blog/data/SD-20/AMEDLEY.SD20.NCR.OGG">
-</audio>
-</td>
-<td>
-<audio controls="" preload="none" src="//filestorage.chrisoft.org/blog/data/SD-20/AMEDLEY.SD20C.NCR.OGG">
-</audio>
-</td>
-<td>
-<audio controls="" preload="none" src="//filestorage.chrisoft.org/blog/data/SD-20/AMEDLEY.SD80.NCR.OGG">
-</audio>
-</td>
-</tr>
-<tr>
-</tr><tr>
-<td colspan="3">
-AMEDLEY.MID by Earl Gray Fowler from Voyetra Technologies, arranged for
-SD-80 (Native Mode)
-</td>
-</tr>
-</tbody></table>
-</div>
-<p>Patches in SD-80’s special set are substituted with patches in the
-solo set when played with the SD-20 Converter. However hardware SD-20
-doesn’t do this substitution and doesn’t produce any sound if a patch
-from SD-80’s special set is selected, making the last two segments sound
-like a backing track on the SD-20. The choir in the ballad segment also
-has a notably shorter release on the hardware SD-20, possibly to
-mitigate the impact of a reduced polyphony.</p>
-<p>The SD-20 MIDI Converter is actually a reasonably good recreation of
-the SD-20 sounds. That is not saying so much, as the hardware of SD-20
-itself is simply not capable of recreate the StudioCanvas sounds very
-well if the MIDI sequence you feed to it has any complexity to it at
-all. Sometimes the output from converter is actually closer to the SD-80
-than the SD-20, especially if you take parameter response curves into
-consideration.</p>
-<h2 id="tocanch4" class="tvis">The Editability</h2>
-<p>It’s virtually nothing compared to the SD-80.</p>
-<p>The official SD-20 editor can only tune GM2 parameters. The available
-parameters are even fewer than the HyperCanvas (HQ-GM2) or TTS-1, mostly
-because the SD-20 doesn’t expose those parameters at all. As mentioned
-in my first post on the SD-80, the SD-20 editor is essentially the SD-90
-editor with the audio / AFX section removed.</p>
-<table>
-<tbody><tr>
-<td>
-<div style="text-align:center;max-width:98%;">
-<a href="//filestorage.chrisoft.org/blog/img/sd20_editor_main.png"><img style="width: 48%;" src="//filestorage.chrisoft.org/blog/img/ssbsthumb_600x600_sd20_editor_main.png"></a> <br>SD-20
-editor. SD-90 GM2 editor on the right for comparison.
-</div>
-</td>
-<td>
-<div style="text-align:center;max-width:98%;">
-<a href="//filestorage.chrisoft.org/blog/img/sd20_editor_mixer.png"><img style="width: 48%;" src="//filestorage.chrisoft.org/blog/img/ssbsthumb_600x600_sd20_editor_mixer.png"></a> <br>The mixer.
-It has a very similar layout to the main page of HyperCanvas / TTS-1.
-</div>
-</td>
-</tr>
-<tr>
-<td>
-<div style="text-align:center;max-width:98%;">
-<a href="//filestorage.chrisoft.org/blog/img/sd20_editor_synth.png"><img style="width: 48%;" src="//filestorage.chrisoft.org/blog/img/ssbsthumb_600x600_sd20_editor_synth.png"></a> <br>The
-instrument editor. Only GM2 parameters are exposed.
-</div>
-</td>
-<td>
-<div style="text-align:center;max-width:98%;">
-<a href="//filestorage.chrisoft.org/blog/img/sd20_editor_instp.png"><img style="width: 48%;" src="//filestorage.chrisoft.org/blog/img/ssbsthumb_600x600_sd20_editor_instp.png"></a> <br>The
-instrument picker. The instrument picker of the SD-90 GM2 editor is on
-the right.
-</div>
-</td>
-</tr>
-</tbody></table>
-<p>The SD-80 editor doesn’t work on the SD-20. Nor does the XV-2020
-(which uses the same synth engine as the SD-20) editor. This makes the
-SD-20 far less editable than the SD-80. Forget about manually piecing
-together presets on the SD-20 to mimic the SD-80. I don’t even know how
-to change the samples used by a part on the SD-20 or is it even possible
-(the MIDI implementation doesn’t mention it).</p>
-<h3 id="tocanch5" class="tvis">The Quirks</h3>
-<p>The address mapping used by SD-20’s DT1 system exclusive messages is
-similar to that employed by GS-based Sound Canvas models. Therefore the
-SD-20 is still somewhat editable, but nowhere close to the level offered
-by the SD-80. GSAE (GS Advanced Editor) may work with the SD-20, but
-there could be major compatibility issues.</p>
-<p>The SD-20 still responds to GS NRPN messages in native and GM2 mode.
-SD-90 and SD-80 doesn’t have such behavior.</p>
-<p>SD-20 has a special NRPN for selecting sound sets (MSB:
-<code>0x41</code> LSB: <code>0x00</code>, send set # to value MSB) in
-GM2 mode. On the SD-90 and SD-80, only system exclusive messages can be
-used to select sound sets in GM2 mode. The manual mentioned this
-feature, however it doesn’t tell you which NRPN to use.</p>
-<h2 id="tocanch6" class="tvis">The Manual</h2>
-<p>This really doesn’t deserve its own paragraph, but here it is. Unless
-otherwise noted, this is referring to the English manual, not the
-Japanese version (which is somewhat better, but still horrible).</p>
-<p>The user manual of Roland products has been criticized for being
-convoluted, unclear and difficult to navigate through for a long time.
-The user manual for SD-20 is on a whole new level. It’s an absolute
-abomination.</p>
-<p>To be fair, it’s not like one can write a lot about a product that
-only have one button and one knob on the front panel. Someone in Roland
-must have been forced through this …</p>
-<p>Content wise, it’s an amalgamation of SD-80’s “owner’s manual” and
-“quick start guide”. This make the entire thing even more confusing. You
-can find traces of SD-80’s manual everywhere. Just take a look at the
-huge gaps in the instrument list and drum set list. That sad drum set
-table even has a missing border. There’s also the sentence that goes
-something like this “you can’t edit the sounds in GS mode using the
-front panel” <a id="n1" href="#note1" class="note">[1]</a>, which is copied
-straight from SD-80’s manual. Well, duh … you can’t do much editing with
-one button (which instantly erases all changed parameters when pressed)
-and one knob in any mode!</p>
-<p>Since the SD-20 can only be controlled through MIDI, there would be
-plenty of information on how to operate the module using MIDI messages
-in the manual, right? Here Roland took the worst move imaginable and
-included ZERO information on that in the English manual, not even the
-system exclusive messages to switch between sound generator modes (the
-Japanese manual does include this), nor does it include a list of
-parameters that can be controlled by MIDI. It’s almost like Roland
-doesn’t want you to learn about the parameters it has at all, unless you
-read the ultra technical MIDI implementation (which, to make it even
-better, only has a download for the Japanese version left on the
-official website. Screw everyone who can’t read Japanese I guess).</p>
-<h2 id="tocanch7" class="tvis">The Insides</h2>
-<p>I spent $100 on this thing mostly because I’m curious about its
-insides. After testing it out, I don’t have any hope that there’s a
-chance this thing could have an XV chip inside. Having no screwdrivers
-did not hinder me even a little bit. I used the scissors in my nail care
-kit to remove the only 4 screws in the bottom of the module, and one
-screw holding the board. The board came out without any resistance.</p>
-<div style="text-align:center;max-width:90%;">
-<a href="//filestorage.chrisoft.org/blog/img/sd20_board_bottom.jpg"><img style="width: 50%;" src="//filestorage.chrisoft.org/blog/img/ssbsthumb_1536x1536_sd20_board_bottom.jpg"></a> <br>No ICs on
-the bottom side of the board. The scissor used to undo the screws is
-visible.
-</div>
-<table>
-<tbody><tr>
-<td>
-<div style="text-align:center;max-width:98%;">
-<p><a href="//filestorage.chrisoft.org/blog/img/sd20_icmap.jpg"><img style="width: 80%;" src="//filestorage.chrisoft.org/blog/img/ssbsthumb_1536x1536_sd20_icmap.jpg"></a></p>
-</div>
-</td>
-<td>
-<div>
-<div>
-<p><x style="display:inline-block;width:0.9em;height:0.9em;border:solid 2px #888;background-color:#ff0000;margin-right:0.5em;transform: translateY(0.2em);"></x>
-<a href="//filestorage.chrisoft.org/blog/img/sd20_cpu.jpg">CPU
-(SH7016)</a></p>
-</div>
-<div>
-<p><x style="display:inline-block;width:0.9em;height:0.9em;border:solid 2px #888;background-color:#ffa000;margin-right:0.5em;transform: translateY(0.2em);"></x>
-<a href="//filestorage.chrisoft.org/blog/img/sd20_io.jpg">8bit MCU, I/O
-Controller</a></p>
-</div>
-<div>
-<p><x style="display:inline-block;width:0.9em;height:0.9em;border:solid 2px #888;background-color:#fff300;margin-right:0.5em;transform: translateY(0.2em);"></x>
-<a href="//filestorage.chrisoft.org/blog/img/sd20_cpu.jpg">4 Mb System
-DRAM</a></p>
-</div>
-<div>
-<p><x style="display:inline-block;width:0.9em;height:0.9em;border:solid 2px #888;background-color:#00f300;margin-right:0.5em;transform: translateY(0.2em);"></x>
-<a href="//filestorage.chrisoft.org/blog/img/sd20_cpu.jpg">16 Mb
-Flash</a></p>
-</div>
-<div>
-<p><x style="display:inline-block;width:0.9em;height:0.9em;border:solid 2px #888;background-color:#00ffff;margin-right:0.5em;transform: translateY(0.2em);"></x>
-<a href="//filestorage.chrisoft.org/blog/img/sd20_io.jpg">RS-232
-driver</a></p>
-</div>
-<div>
-<p><x style="display:inline-block;width:0.9em;height:0.9em;border:solid 2px #888;background-color:#00a0ff;margin-right:0.5em;transform: translateY(0.2em);"></x>
-<a href="//filestorage.chrisoft.org/blog/img/sd20_xp.jpg">Synth DSP
-(RA0C-003, “XP7”)</a></p>
-</div>
-<div>
-<p><x style="display:inline-block;width:0.9em;height:0.9em;border:solid 2px #888;background-color:#00c060;margin-right:0.5em;transform: translateY(0.2em);"></x>
-<a href="//filestorage.chrisoft.org/blog/img/sd20_audioio.jpg">4Mb
-Effects DRAM</a></p>
-</div>
-<div>
-<p><x style="display:inline-block;width:0.9em;height:0.9em;border:solid 2px #888;background-color:#0000ff;margin-right:0.5em;transform: translateY(0.2em);"></x>
-<a href="//filestorage.chrisoft.org/blog/img/sd20_wrom.jpg">2 * 128 Mb
-Wave ROM</a></p>
-</div>
-<div>
-<p><x style="display:inline-block;width:0.9em;height:0.9em;border:solid 2px #888;background-color:#a000ff;margin-right:0.5em;transform: translateY(0.2em);"></x>
-<a href="//filestorage.chrisoft.org/blog/img/sd20_audioio.jpg">Digital
-Audio Modulator, S/PDIF interface</a></p>
-</div>
-<div>
-<p><x style="display:inline-block;width:0.9em;height:0.9em;border:solid 2px #888;background-color:#ff60ff;margin-right:0.5em;transform: translateY(0.2em);"></x>
-<a href="//filestorage.chrisoft.org/blog/img/sd20_audioio.jpg">DAC
-(AK4382A)</a></p>
-</div>
-</div>
-Click any IC above for a detailed shot of components around that
-chip.<br>
-<a href="//filestorage.chrisoft.org/blog/img/sd20_board_top.jpg">Click
-here for the whole board shot without the IC markings.</a>
-</td>
-</tr>
-</tbody></table>
-<p>No, it isn’t an XV chip. It’s an XP7 (RA0C-003) chip. This chip is
-also used by the bottom-of-the-barrel model in the XV line-up, the
-XV-2020. This is likely the final iteration of the codename XP. The CPU
-is a SH7016, same as SC-8850 and SC-D70. Other major chips include two
-4Mbit EDO DRAM chips (one for CPU and one for XP7), a 16Mbit flash
-memory for system and parameters, and two 128Mbit Wave ROM chips. The
-part number and mask ID of the wave ROMs are different from those used
-by the SD-80 (either in the service manual or my particular module),
-suggesting they may contain different data.</p>
-<p>This is a major let down, sort of speak. The hardware is almost as
-capable as the XV-2020 (which has a larger CPU RAM and flash memory
-chip, 16Mbit and 32Mbit respectively). The XP7 is even capable of using
-40 types of classical JV/XP insertion effects (MFX), which is not used
-at all by the SD-20. Maybe the reduced system resources prevented Roland
-to squeeze the XV-level editability inside.</p>
-<p>The XP7 chip runs much hotter compared to the XV chip in the SD-80.
-It’s almost too hot to touch when the synthesizer load is high. The XP7
-chip in the SD-20 is clock much higher than any previous XP chips
-(33.868 MHz vs 24.576 MHz) to achieve the 44.1 kHz digital output, which
-is probably the cause of the excessive heat. For a more detailed
-technical assessment of the chip (and other Roland PCM synth chips), see
-<a href="https://chrisoft.org/blog/post/2020-11-20.html#tocanch16">my
-second post on SD-80</a>.</p>
-<p>There are 4 unpopulated switch headers on the board. Two are DPDT
-switches (SW4 and SW2), two seem to be buttons (SW3 and SW5). SW4 and
-SW5 seem to be electrically connected to the peripherals of the USB
-controller, SW2 and SW3 seem to be connected to the CPU. One side of SW4
-seems to short the USB power. SW2 resets the unit. SW3 puts the unit
-into an inoperable state (USB indicator turns off, SPIDF output shuts
-down, does not respond to any key press / MIDI input). SW2 is weird. One
-side of the upper pole shorts the power to ground. The same side of the
-lower pole puts the unit into another inoperable state (just like frozen
-in place). The other side doesn’t do anything consistent. Sometimes the
-upper pole acts like a perpetual sustain pedal if engaged (no notes are
-released even after letting the connection go). All of these switches
-behave the same in test mode and doesn’t seem to affect boot mode
-selection.</p>
-<div class="collapse" data-caption="Incomplete list of integrated circuit chips in the SD-20">
-<table>
-<colgroup>
-<col style="width: 9%">
-<col style="width: 30%">
-<col style="width: 59%">
-</colgroup>
-<thead>
-<tr class="header">
-<th style="text-align: center;">Label</th>
-<th style="text-align: center;">Engravement</th>
-<th style="text-align: center;">Description</th>
-</tr>
-</thead>
-<tbody>
-<tr class="odd">
-<td style="text-align: center;">IC 1</td>
-<td style="text-align: center;">2360 6061B JRC</td>
-<td style="text-align: center;">DC to DC converter</td>
-</tr>
-<tr class="even">
-<td style="text-align: center;">IC 2,5</td>
-<td style="text-align: center;">4570 652</td>
-<td style="text-align: center;">?</td>
-</tr>
-<tr class="odd">
-<td style="text-align: center;">IC 3</td>
-<td style="text-align: center;">4556A G034F JRC</td>
-<td style="text-align: center;">OpAmp</td>
-</tr>
-<tr class="even">
-<td style="text-align: center;">IC 4</td>
-<td style="text-align: center;">AKM 4382AT 4N647</td>
-<td style="text-align: center;">DAC</td>
-</tr>
-<tr class="odd">
-<td style="text-align: center;">IC 6</td>
-<td style="text-align: center;">ROHM BP5220A 0707S</td>
-<td style="text-align: center;">Regulator</td>
-</tr>
-<tr class="even">
-<td style="text-align: center;">IC 7</td>
-<td style="text-align: center;">PC401L SOK V2</td>
-<td style="text-align: center;">Optocoupler</td>
-</tr>
-<tr class="odd">
-<td style="text-align: center;">IC 8,18,12,15</td>
-<td style="text-align: center;">VHC 245 G43</td>
-<td style="text-align: center;">74xx245 Transceiver / Buffer</td>
-</tr>
-<tr class="even">
-<td style="text-align: center;">IC 9</td>
-<td style="text-align: center;">E 6</td>
-<td style="text-align: center;">?</td>
-</tr>
-<tr class="odd">
-<td style="text-align: center;">IC 10,13</td>
-<td style="text-align: center;">0634H LVX4245 404495</td>
-<td style="text-align: center;">74xx245 Transceiver / Buffer</td>
-</tr>
-<tr class="even">
-<td style="text-align: center;">IC 11</td>
-<td style="text-align: center;">Roland R03017389 HD6437016E29FV 6J1</td>
-<td style="text-align: center;">CPU (SH7016), SH2</td>
-</tr>
-<tr class="odd">
-<td style="text-align: center;">IC 14</td>
-<td style="text-align: center;">E ? (covered)</td>
-<td style="text-align: center;">?</td>
-</tr>
-<tr class="even">
-<td style="text-align: center;">IC 16</td>
-<td style="text-align: center;">H 4</td>
-<td style="text-align: center;">?</td>
-</tr>
-<tr class="odd">
-<td style="text-align: center;">IC 17,25</td>
-<td style="text-align: center;">7WU04F 6X</td>
-<td style="text-align: center;">74xx04 Inverter</td>
-</tr>
-<tr class="even">
-<td style="text-align: center;">IC 19</td>
-<td style="text-align: center;">0625H VHC04 301303</td>
-<td style="text-align: center;">74xx04 Inverter</td>
-</tr>
-<tr class="odd">
-<td style="text-align: center;">IC 20</td>
-<td style="text-align: center;">953B 69B</td>
-<td style="text-align: center;">?</td>
-</tr>
-<tr class="even">
-<td style="text-align: center;">IC 21</td>
-<td style="text-align: center;">2933 G2 5L</td>
-<td style="text-align: center;">?</td>
-</tr>
-<tr class="odd">
-<td style="text-align: center;">IC 22</td>
-<td style="text-align: center;">0626H TC9271FSG</td>
-<td style="text-align: center;">Digital Audio Modulator</td>
-</tr>
-<tr class="even">
-<td style="text-align: center;">IC 23</td>
-<td style="text-align: center;">7W14F 6W</td>
-<td style="text-align: center;">74xx14 Schmitt-Trigger Inverter</td>
-</tr>
-<tr class="odd">
-<td style="text-align: center;">IC 24</td>
-<td style="text-align: center;">Roland R02677490 RA0C-003 JAPAN 0645EGI
-B0106ZAC</td>
-<td style="text-align: center;">ASIC DSP, “XP7” Synth Engine</td>
-</tr>
-<tr class="even">
-<td style="text-align: center;">IC 26</td>
-<td style="text-align: center;">Roland R03010612 23C128BL832J
-0620K7002</td>
-<td style="text-align: center;">128 Mbit Mask ROM, Wave ROM</td>
-</tr>
-<tr class="odd">
-<td style="text-align: center;">IC 27</td>
-<td style="text-align: center;">Roland R03010623 23C128BL833K
-0620K7005</td>
-<td style="text-align: center;">128 Mbit Mask ROM, Wave ROM</td>
-</tr>
-<tr class="even">
-<td style="text-align: center;">IC 28</td>
-<td style="text-align: center;">VHC T245A F5 51</td>
-<td style="text-align: center;">74xx245 Transceiver / Buffer</td>
-</tr>
-<tr class="odd">
-<td style="text-align: center;">IC 29</td>
-<td style="text-align: center;">EliteMT M11L416256SA- 35T SZV2C51GR
-0627</td>
-<td style="text-align: center;">EDO DRAM 4 Mbit, XP Effects RAM</td>
-</tr>
-<tr class="even">
-<td style="text-align: center;">IC 30</td>
-<td style="text-align: center;">LH28F160BJE-BTL80 SHARP JAPAN 0631 5
-XN</td>
-<td style="text-align: center;">Flash Memory, 16 Mbit, System /
-Parameters</td>
-</tr>
-<tr class="odd">
-<td style="text-align: center;">IC 31</td>
-<td style="text-align: center;">ti 71CN1RKG4 75C1168</td>
-<td style="text-align: center;">RS-232 driver</td>
-</tr>
-<tr class="even">
-<td style="text-align: center;">IC 32</td>
-<td style="text-align: center;">EliteMT M11L416256SA- 35T SZV2C51GR
-0627</td>
-<td style="text-align: center;">EDO DRAM 4 Mbit, System RAM</td>
-</tr>
-<tr class="odd">
-<td style="text-align: center;">IC 33</td>
-<td style="text-align: center;">Roland R03011089 138 620B100</td>
-<td style="text-align: center;">USB Controller, 8-bit MCU</td>
-</tr>
-<tr class="even">
-<td style="text-align: center;">IC 34</td>
-<td style="text-align: center;">2008 680</td>
-<td style="text-align: center;">?</td>
-</tr>
-<tr class="odd">
-<td style="text-align: center;">IC 35</td>
-<td style="text-align: center;">7W04F 6V</td>
-<td style="text-align: center;">74xx04 Inverter</td>
-</tr>
-<tr class="even">
-<td style="text-align: center;">IC 36</td>
-<td style="text-align: center;">E 1</td>
-<td style="text-align: center;">?</td>
-</tr>
-<tr class="odd">
-<td style="text-align: center;">IC 37</td>
-<td style="text-align: center;">7W139F 61</td>
-<td style="text-align: center;">74xx139 Decoder</td>
-</tr>
-</tbody>
-</table>
-</div>
-<h2 id="tocanch8" class="tvis">The Secrets</h2>
-<p>It seems dead easy to enter the secret test mode on the SD-20 –
-there’s only one button. Hold the button and turn the power on, the USB
-indicator will light up. This is the boot mode selection prompt. Release
-the button. Now you have around 4 seconds to do one of the
-following:</p>
-<ul>
-<li>Pressing the button twice. The unit will boot into test mode.</li>
-<li>Pressing the button three times. The unit will boot into an unknown
-mode (likely firmware update).</li>
-</ul>
-<p>If your action matches none of these, the unit will boot into normal
-mode.</p>
-<p>This section will employ the following notation for the status of the
-indicator LEDs.</p>
-<pre><code> PWR USB OUTPUT o o o o
- o o MODE o o o o
- GM2 G X
- S G
-o=on
--=off
-*=faint</code></pre>
-<h3 id="tocanch9" class="tvis">Test mode</h3>
-<p>The test mode is far less interesting than that of the SD-80 because
-I don’t necessarily understand what does every indicators pattern
-mean.</p>
-<div class="collapse" data-caption="SD-20 Tests">
-<pre><code> test 1 (some sort of version?)
- PWR USB OUTPUT - - - o
- o - MODE - - - o
-
-Mode key pressed = next
-
- test 2 (some other sort of version? self test? serial port test? midi test?)
- PWR USB OUTPUT - - - o
- o o MODE - - o o
-
-Mode key pressed = next
-
- test 3 (same as 2)
- PWR USB OUTPUT - - - o
- - o MODE - - - -
-
-Mode key pressed = power LED flashes once, enters next test
-
- test 4 (LED test)
- LEDs lights up in sequence, one by one:
- output 1, 2, 3, 4, mode 1, 2, 3, 4 (GM2 L, GM2 R, GS, XG),
- all lights off, power, usb
-
-Mode key pressed = next
-
- test 5a (Sound test 1)
- PWR USB OUTPUT - o o -
- o - MODE - - o -
-Resets synthesizer to native mode.
-MIDI Channel 1 is set to play a sine waveform.
-Plays sine wave on both channels.
-
-Mode key pressed = next
-
- test 5b (Sound test 2)
- PWR USB OUTPUT o - - -
- o - MODE - - o -
-Plays sine wave on left channel.
-
-Mode key pressed = next
-
- test 5c (Sound test 3)
- PWR USB OUTPUT - - - o
- o - MODE - - o -
-Plays sine wave on right channel.
-
-Mode key pressed = next
-
- test 5d (Effects test)
- PWR USB OUTPUT o o o o
- o - MODE - - - o
-Resets synthesizer to native mode.
-MIDI Channel 1 is set to play a melodic tom sound.
-Plays a tom sound with loud reverb periodically.
-
-Mode key pressed = next
-
- test 6 (probably hardware check)
- PWR USB OUTPUT - - o -
- o - MODE - - - -
-
-Synthesizer resets again.
-The module no longer respond to any key presses from this point.</code></pre>
-</div>
-<h3 id="tocanch10" class="tvis">unknown (likely firmware
-update) mode</h3>
-<pre><code> PWR USB OUTPUT o o o o
- o - MODE o o o *
- Doesn't respond to any key presses. (long, short, multiple presses)
- Shows up as a USB device with normal ID (0582:0027).
- Does not function as synthesizer.</code></pre>
-<h2 id="tocanch11" class="tvis">The Conclusion</h2>
-<p>For a low, low price of $300 in 2002, you get 3 set of mediocre (with
-a few exceptions) GM2 patches. The sounds themselves are reasonably new
-and refreshing back then, but the higher average voice-per-note of the
-new StudioCanvas sounds make the SD-20 a less desirable choice than
-previous 64-polyphony models. The lack of advanced editing of any sort
-removes all possibility to explore custom sound design with the module.
-It’s a cheaply built unit that Roland asked for too much. Even for a
-Touhou music fanatic today, there are much cheaper ways to get access to
-the most sought-after instruments.</p>
-<h2 id="tocanch12" class="tvis">The … Death?</h2>
-<p>My SD-20 is in temporary coma right now, as it’s receiving a brain
-surgery …</p>
-<p>I will give updates in a separate post when it’s complete.</p>
-<table>
-<tbody><tr>
-<td>
-<div style="text-align:center;max-width:98%;">
-<a href="//filestorage.chrisoft.org/blog/img/sd20_wromds.jpg"><img style="width: 48%;" src="//filestorage.chrisoft.org/blog/img/ssbsthumb_1536x1536_sd20_wromds.jpg"></a> <br>I don’t know
-what I’m doing …
-</div>
-</td>
-<td>
-<div style="text-align:center;max-width:98%;">
-<a href="//filestorage.chrisoft.org/blog/img/sd20_wromdmp.jpg"><img style="width: 48%;" src="//filestorage.chrisoft.org/blog/img/ssbsthumb_1536x1536_sd20_wromdmp.jpg"></a> <br>… or do I?
-</div>
-</td>
-</tr>
-</tbody></table>
-</article>
-</div><br><hr>
- <div class="TText" id="notediv" style="font-size:80%;"><span class="TText"><a id="note1" href="#n1">[1]</a>: Had to paraphrase this, because Roland prohibits
-reproducing contents from their manuals…<br></span></div>
- <div id="insanch" style="height:3em;"></div>
- <div id="footer" style="">
- <div id="pagesw" class="TText" style="width:100%;height:0.5em;"></div>
- <div style="text-align:center;" class="TText">
- Proudly powered by SSBS <reduced style="font-size:70%;">(the static stupid blogging system)</reduced> 2.5
- <br>
- Content licensed under CC BY-SA 4.0. <span id="purgep" style="display:none;font-size:70%;">This page has passphrase(s) stored. Click <a href="javascript:_purgep()">here</a> to purge.</span>
- </div>
- </div>
- <div id="cmdbuf" class="TText" style="transition:500ms;padding:1em;font-size:2em;color:white;position:absolute;background-color:rgba(0,0,0,0.6);left:50%;top:50%;transform:translate(-50%,-50%);pointer-events:none;opacity:0;">
- </div>
- </div>
- <div id="decryptui" style="display:none;opacity:0;color:white;z-index:1000;position:fixed;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,0.4);transition:opacity 0.5s;">
- <div id="decryptdlg" class="TText" style="padding:10px 20px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background-color:rgba(0,0,0,0.6);">
- <div id="keyhint" style="margin-bottom:8px;"></div>
- <div style="margin-bottom:8px;">Key: <input id="keyinp" type="text" style="color:#fff;"></div>
- <div style="height:2.25em;">
- <button id="btndecrypt" onclick="decryptor(decid,document.getElementById('keyinp').value);" style="position:absolute;left:20px;">Decrypt</button>
- <button onclick="hidedecryptui();" style="position:absolute;right:20px;">Cancel</button>
- </div>
-
- </div>
-
-
-</div></body></html> \ No newline at end of file