md2.pl.txt
require "replace.pl";
binmode STDIN;
%programs = ( 0,"Standard 1", 1,"Standard 2#", 2,"Standard 3",
8,"Room#", 9,"Hip-Hop", 10,"Jungle", 11,"Techno",
16,"Power",
24,"Electronic#", 25,"TR-808", 26,"Dance",
27,"CR-78", 28,"TR-606", 29,"TR-707",
30,"TR-909",
32,"Jazz",
40,"Brush",
48,"Orchestra#", 49,"Ethnic#", 50,"Kick &\; Snare#",
52,"Asia", 53,"Cymbal & amp\; Claps",
56,"Sfx", 57,"Rhythm FX#", 58,"Rhythm FX2"
);
@p0 = (0,1,2,8,9,10,11,16,24,25,26,27,28,29,30,32,40,48,52,56);
@p1 = (0,1,2,16,25,25,26,32,40,48,49,50,56,57);
@p2 = (0,1,8,16,24,25,32,40,48,56); #,127
&makefile;
#############################
sub makefile
{
local ($p, $p2, $pmax, $pmax_);
print << "HEADER";
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML lang="ja">
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=Shift_JIS">
<META NAME="keywords" CONTENT="SC-88 Pro, rhythm name list">
<META NAME="description" CONTENT="SC-88 Pro rhythm name list">
<LINK rel="stylesheet" href="../standard.css" type="text/css">
<TITLE LANG="ja">SC-88Pro Rhythm tone names list</TITLE>
<STYLE TYPE="text/css">
<!--
.WKEY {
/* border-width:0 1 0 1;
*/ border-style:none;
padding:0 4ex 0 0;
background-color: #FFFFFF;
color: #000000;
}
.BKEY {
border-width:0 1 0 1;
border-style:none;
padding:0 2ex 0 0;
background-color: #000000;
color: #F0F0F0;
}
-->
</STYLE>
</HEAD>
<BODY LANG="ja">
<H3>SC-88 Pro rhythm tone names list</H3>
HEADER
undef $/;
$buf = <>;
$pmax = length($buf);
print "<TABLE BORDER=\"1\">\n";
print "<CAPTION>88Pro Standard 1</CAPTION>\n";
$p = 0;
$p2 = 0;
for ($i = 0; $i < 2; $i++) {
print "<TD VALIGN=\"TOP\">\n<TABLE BORDER=\"1\">\n";
$pmax_ = ($i == 0)? 70 * 16 : $pmax;
for (; $p < $pmax_; $p += 16) {
($map,$pc,$key,$name) = unpack("xCCCA12",substr($buf,$p,16));
for (; $p2 < $key; $p2++) {
&putkey(-$p2);
print "<TD><BR></TD></TR>\n";
}
&putkey($key);
$name = &replaceRhythmName($name);
print "<TD>$name</TD></TR>\n";
$p2++;
}
print "</TABLE>\n</TD>";
}
print "</TR>\n</TABLE>\n";
print << "FOOTER";
</BODY>
</HTML>
FOOTER
}
#############################
sub putkey
{
local($key) = @_;
local($f);
if ($key < 0) {
$f = 1;
$key = -$key;
$key2 = "<BR>";
} else {
$key2 = $key;
}
$_ = $key;
$_ %= 12;
print "<TR>\n";
if ($_ == 1 || $_ == 3 || $_ == 6 || $_ == 8 || $_ == 10) { # black
print "<TD CLASS=\"WKEY\"></TD>\n";
print "<TD CLASS=\"BKEY\" ALIGN=\"LEFT\">$key2</TD>\n";
} else { # white
if ($_ == 0) {
$oct = int ($key / 12) - 1;
print "<TH ROWSPAN=\"12\">C$oct</TH>\n";
}
print "<TD COLSPAN=\"2\" ALIGN=\"LEFT\" CLASS=\"WKEY\">$key2</TD>\n";
}
}