diff options
Diffstat (limited to 'blog/post/2021-10-10.html')
-rw-r--r-- | blog/post/2021-10-10.html | 972 |
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. 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 |