Subversion Repositories NedoOS

Rev

Blame | Last modification | View Log | Download

  1. yrw800_i_map_start:
  2. /*
  3.  * Information about the Yamaha YRW801 wavetable ROM chip
  4.  
  5.  * The instrument definitions are stored statically because, in practice, the
  6.  * OPL4 is always coupled with a YRW801. Dynamic instrument loading would be
  7.  * required if downloading sample data to external SRAM was actually supported
  8.  * by this driver.
  9.  
  10.  
  11.  
  12.  
  13. struct opl4_sound {
  14.         u16 tone;
  15.         s16 pitch_offset;
  16.  
  17.         u8 key_scaling;
  18.         s8 panpot;
  19.         u8 vibrato;
  20.  
  21.         u8 tone_attenuate;
  22.         u8 volume_factor;
  23.  
  24.         u8 reg_lfo_vibrato;
  25.         u8 reg_attack_decay1;
  26.         u8 reg_level_decay2;
  27.  
  28.         u8 reg_release_correction;
  29.         u8 reg_tremolo;
  30. };
  31. struct opl4_region {
  32.         u8 key_min, key_max;
  33.         struct opl4_sound sound;
  34. };
  35.  */
  36.         align 256
  37. ;static const struct opl4_region regions_00[] = { /* Acoustic Grand Piano */
  38. regions_00:
  39.         DB 0x00, 0x27 : DW 0x12c,7474 : DB 100, 0,0,0x00,0xc8, 0x20,0xf2,0x13, 0x08,0x0
  40.         DB 0x28, 0x2d : DW 0x12d,6816 : DB 100, 0,0,0x00,0xc8,0x20,0xf2,0x14,0x08,0x0
  41.         DB 0x2e, 0x33 : DW 0x12e,5899 : DB 100, 0,0,0x00,0xc8,0x20,0xf2,0x14,0x08,0x0
  42.         DB 0x34, 0x39 : DW 0x12f,5290 : DB 100, 0,0,0x00,0xc8,0x20,0xf2,0x14,0x08,0x0
  43.         DB 0x3a, 0x3f : DW 0x130,4260 : DB 100, 0,0,0x0a,0xc8,0x20,0xf2,0x14,0x08,0x0
  44.         DB 0x40, 0x45 : DW 0x131,3625 : DB 100, 0,0,0x0a,0xc8,0x20,0xf2,0x14,0x08,0x0
  45.         DB 0x46, 0x4b : DW 0x132,3116 : DB 100, 0,0,0x04,0xc8,0x20,0xf2,0x14,0x08,0x0
  46.         DB 0x4c, 0x52 : DW 0x133,2081 : DB 100, 0,0,0x03,0xc8,0x20,0xf2,0x14,0x18,0x0
  47.         DB 0x53, 0x58 : DW 0x134,1444 : DB 100, 0,0,0x07,0xc8,0x20,0xf3,0x14,0x18,0x0
  48.         DB 0x59, 0x7F : DW 0x135,1915 : DB 100, 0,0,0x00,0xc8,0x20,0xf4,0x15,0x08,0x0
  49.  
  50.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  51.  
  52.  
  53. ;static const struct opl4_region regions_01[] = { /* Bright Acoustic Piano */
  54. regions_01:
  55.         DB 0x00, 0x2d : DW 0x12c,7474 : DB 100, 0,0,0x00,0xc8,0x20,0xf2,0x13,0x08,0x0
  56.         DB 0x2e, 0x33 : DW 0x12d,6816 : DB 100, 0,0,0x00,0xc8,0x20,0xf2,0x14,0x08,0x0
  57.         DB 0x34, 0x39 : DW 0x12e,5899 : DB 100, 0,0,0x00,0xc8,0x20,0xf2,0x14,0x08,0x0
  58.         DB 0x3a, 0x3f : DW 0x12f,5290 : DB 100, 0,0,0x00,0xc8,0x20,0xf2,0x14,0x08,0x0
  59.         DB 0x40, 0x45 : DW 0x130,4260 : DB 100, 0,0,0x0a,0xc8,0x20,0xf2,0x14,0x08,0x0
  60.         DB 0x46, 0x4b : DW 0x131,3625 : DB 100, 0,0,0x0a,0xc8,0x20,0xf2,0x14,0x08,0x0
  61.         DB 0x4c, 0x52 : DW 0x132,3116 : DB 100, 0,0,0x04,0xc8,0x20,0xf2,0x14,0x08,0x0
  62.         DB 0x53, 0x58 : DW 0x133,2081 : DB 100, 0,0,0x07,0xc8,0x20,0xf2,0x14,0x18,0x0
  63.         DB 0x59, 0x5e : DW 0x134,1444 : DB 100, 0,0,0x0a,0xc8,0x20,0xf3,0x14,0x18,0x0
  64.         DB 0x5f, 0x7F : DW 0x135,1915 : DB 100, 0,0,0x00,0xc8,0x20,0xf4,0x15,0x08,0x0
  65.  
  66.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  67.  
  68. ;static const struct opl4_region regions_02[] = { /* Electric Grand Piano */
  69. regions_02:
  70.         DB 0x14, 0x2d : DW 0x12c,7476 : DB 100, 1,0,0x00,0xae,0x20,0xf2,0x13,0x07,0x0
  71.         DB 0x2e, 0x33 : DW 0x12d,6818 : DB 100, 1,0,0x00,0xae,0x20,0xf2,0x14,0x07,0x0
  72.         DB 0x34, 0x39 : DW 0x12e,5901 : DB 100, 1,0,0x00,0xae,0x20,0xf2,0x14,0x07,0x0
  73.         DB 0x3a, 0x3f : DW 0x12f,5292 : DB 100, 1,0,0x00,0xae,0x20,0xf2,0x14,0x07,0x0
  74.         DB 0x40, 0x45 : DW 0x130,4262 : DB 100, 1,0,0x00,0xae,0x20,0xf2,0x14,0x07,0x0
  75.         DB 0x46, 0x4b : DW 0x131,3627 : DB 100, 1,0,0x00,0xae,0x20,0xf2,0x14,0x07,0x0
  76.         DB 0x4c, 0x52 : DW 0x132,3118 : DB 100, 1,0,0x00,0xae,0x20,0xf2,0x14,0x07,0x0
  77.         DB 0x53, 0x58 : DW 0x133,2083 : DB 100, 1,0,0x00,0xae,0x20,0xf2,0x14,0x17,0x0
  78.         DB 0x59, 0x5e : DW 0x134,1446 : DB 100, 1,0,0x00,0xae,0x20,0xf3,0x14,0x17,0x0
  79.         DB 0x5f, 0x6d : DW 0x135,1917 : DB 100, 1,0,0x00,0xae,0x20,0xf4,0x15,0x07,0x0
  80.  
  81.         DB 0x00, 0x7f : DW 0x06c,6375 : DB 100,-1,0,0x00,0xc2,0x28,0xf4,0x23,0x18,0x0
  82.  
  83.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  84.  
  85. ;static const struct opl4_region regions_03[] = { /* Honky-Tonk Piano */
  86. regions_03:
  87.         DB 0x00, 0x27 : DW 0x12c,7474 : DB 100, 0,0,0x00,0xb4,0x20,0xf2,0x13,0x08,0x0
  88.         DB 0x28, 0x2d : DW 0x12d,6816 : DB 100, 0,0,0x00,0xb4,0x20,0xf2,0x14,0x08,0x0
  89.         DB 0x2e, 0x33 : DW 0x12e,5899 : DB 100, 0,0,0x00,0xb4,0x20,0xf2,0x14,0x08,0x0
  90.         DB 0x34, 0x39 : DW 0x12f,5290 : DB 100, 0,0,0x00,0xb4,0x20,0xf2,0x14,0x08,0x0
  91.         DB 0x3a, 0x3f : DW 0x130,4260 : DB 100, 0,0,0x0a,0xb4,0x20,0xf2,0x14,0x08,0x0
  92.         DB 0x40, 0x45 : DW 0x131,3625 : DB 100, 0,0,0x0a,0xb4,0x20,0xf2,0x14,0x08,0x0
  93.         DB 0x46, 0x4b : DW 0x132,3116 : DB 100, 0,0,0x04,0xb4,0x20,0xf2,0x14,0x08,0x0
  94.         DB 0x4c, 0x52 : DW 0x133,2081 : DB 100, 0,0,0x03,0xb4,0x20,0xf2,0x14,0x18,0x0
  95.         DB 0x53, 0x58 : DW 0x134,1444 : DB 100, 0,0,0x07,0xb4,0x20,0xf3,0x14,0x18,0x0
  96.         DB 0x59, 0x7F : DW 0x135,1915 : DB 100, 0,0,0x00,0xb4,0x20,0xf4,0x15,0x08,0x0
  97.  
  98.         DB 0x00, 0x27 : DW 0x12c,7486 : DB 100, 0,0,0x00,0xb4,0x20,0xf2,0x13,0x08,0x0
  99.         DB 0x28, 0x2d : DW 0x12d,6803 : DB 100, 0,0,0x00,0xb4,0x20,0xf2,0x14,0x08,0x0
  100.         DB 0x2e, 0x33 : DW 0x12e,5912 : DB 100, 0,0,0x00,0xb4,0x20,0xf2,0x14,0x08,0x0
  101.         DB 0x34, 0x39 : DW 0x12f,5275 : DB 100, 0,0,0x00,0xb4,0x20,0xf2,0x14,0x08,0x0
  102.         DB 0x3a, 0x3f : DW 0x130,4274 : DB 100, 0,0,0x0a,0xb4,0x20,0xf2,0x14,0x08,0x0
  103.         DB 0x40, 0x45 : DW 0x131,3611 : DB 100, 0,0,0x0a,0xb4,0x20,0xf2,0x14,0x08,0x0
  104.         DB 0x46, 0x4b : DW 0x132,3129 : DB 100, 0,0,0x04,0xb4,0x20,0xf2,0x14,0x08,0x0
  105.         DB 0x4c, 0x52 : DW 0x133,2074 : DB 100, 0,0,0x07,0xb4,0x20,0xf2,0x14,0x18,0x0
  106.         DB 0x53, 0x58 : DW 0x134,1457 : DB 100, 0,0,0x01,0xb4,0x20,0xf3,0x14,0x18,0x0
  107.         DB 0x59, 0x7F : DW 0x135,1903 : DB 100, 0,0,0x00,0xb4,0x20,0xf4,0x15,0x08,0x0
  108.  
  109.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  110.  
  111. ;static const struct opl4_region regions_04[] = { /* Electric Piano 1 */
  112. regions_04:
  113.         DB 0x15, 0x6c : DW 0x00b,6570 : DB 100, 0,0,0x00,0x28,0x38,0xf0,0x00,0x0c,0x0
  114.  
  115.         DB 0x00, 0x7f : DW 0x06c,6375 : DB 100, 0,2,0x00,0xb0,0x22,0xf4,0x23,0x19,0x0
  116.  
  117.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  118.  
  119. ;static const struct opl4_region regions_05[] = { /* Electric Piano 2 */
  120. regions_05:
  121. /*
  122.         DB 0x00, 0x27 : DW 0x12c,7476 : DB 100, 0,3,0x00,0xa2,0x1b,0xf2,0x13,0x08,0x0
  123.         DB 0x28, 0x2d : DW 0x12d,6818 : DB 100, 0,3,0x00,0xa2,0x1b,0xf2,0x14,0x08,0x0
  124.         DB 0x2e, 0x33 : DW 0x12e,5901 : DB 100, 0,3,0x00,0xa2,0x1b,0xf2,0x14,0x08,0x0
  125.         DB 0x34, 0x39 : DW 0x12f,5292 : DB 100, 0,3,0x00,0xa2,0x1b,0xf2,0x14,0x08,0x0
  126.         DB 0x3a, 0x3f : DW 0x130,4262 : DB 100, 0,3,0x0a,0xa2,0x1b,0xf2,0x14,0x08,0x0
  127.         DB 0x40, 0x45 : DW 0x131,3627 : DB 100, 0,3,0x0a,0xa2,0x1b,0xf2,0x14,0x08,0x0
  128.         DB 0x46, 0x4b : DW 0x132,3118 : DB 100, 0,3,0x04,0xa2,0x1b,0xf2,0x14,0x08,0x0
  129.         DB 0x4c, 0x52 : DW 0x133,2083 : DB 100, 0,3,0x03,0xa2,0x1b,0xf2,0x14,0x18,0x0
  130.         DB 0x53, 0x58 : DW 0x134,1446 : DB 100, 0,3,0x07,0xa2,0x1b,0xf3,0x14,0x18,0x0
  131.         DB 0x59, 0x7F : DW 0x135,1917 : DB 100, 0,3,0x00,0xa2,0x1b,0xf4,0x15,0x08,0x0
  132.  
  133.         DB 0x00, 0x2d : DW 0x12c,7472 : DB 100, 0,0,0x00,0xa2,0x18,0xf2,0x13,0x08,0x0
  134.         DB 0x2e, 0x33 : DW 0x12d,6814 : DB 100, 0,0,0x00,0xa2,0x18,0xf2,0x14,0x08,0x0
  135.         DB 0x34, 0x39 : DW 0x12e,5897 : DB 100, 0,0,0x00,0xa2,0x18,0xf2,0x14,0x08,0x0
  136.         DB 0x3a, 0x3f : DW 0x12f,5288 : DB 100, 0,0,0x00,0xa2,0x18,0xf2,0x14,0x08,0x0
  137.         DB 0x40, 0x45 : DW 0x130,4258 : DB 100, 0,0,0x0a,0xa2,0x18,0xf2,0x14,0x08,0x0
  138.         DB 0x46, 0x4b : DW 0x131,3623 : DB 100, 0,0,0x0a,0xa2,0x18,0xf2,0x14,0x08,0x0
  139.         DB 0x4c, 0x52 : DW 0x132,3114 : DB 100, 0,0,0x04,0xa2,0x18,0xf2,0x14,0x08,0x0
  140.         DB 0x53, 0x58 : DW 0x133,2079 : DB 100, 0,0,0x07,0xa2,0x18,0xf2,0x14,0x18,0x0
  141.         DB 0x59, 0x5e : DW 0x134,1442 : DB 100, 0,0,0x0a,0xa2,0x18,0xf3,0x14,0x18,0x0
  142.         DB 0x5f, 0x7F : DW 0x135,1913 : DB 100, 0,0,0x00,0xa2,0x18,0xf4,0x15,0x08,0x0
  143.  
  144. */
  145.  
  146.  
  147. ;       DB 0x00, 0x7f : DW 0x06c,6495 : DB 100, 0,2,0x00,0xb0,0x22,0xf4,0x23,0x19,0x0
  148.  
  149.  
  150.         DB 0x00, 0x7f : DW 0x00b,6375 : DB 100, 0,0,0x00,0x80,0x22,0xf4,0x14,0x08,0x0
  151.         DB 0x00, 0x7f : DW 0x06c,6375 : DB 100, 0,3,0x00,0x92,0x28,0xf4,0x23,0x18,0x0
  152.  
  153.  
  154.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  155.  
  156. ;static const struct opl4_region regions_06[] = { /* Harpsichord */
  157. regions_06:
  158.         DB 0x00, 0x39 : DW 0x080,5158 : DB 100, 0,0,0x00,0xb2,0x20,0xf5,0x24,0x19,0x0
  159.         DB 0x3a, 0x3f : DW 0x081,4408 : DB 100, 0,0,0x00,0xb2,0x20,0xf5,0x25,0x09,0x0
  160.         DB 0x40, 0x45 : DW 0x082,3622 : DB 100, 0,0,0x00,0xb2,0x20,0xf5,0x25,0x09,0x0
  161.         DB 0x46, 0x4d : DW 0x083,2843 : DB 100, 0,0,0x00,0xb2,0x20,0xf5,0x25,0x19,0x0
  162.         DB 0x4e, 0x7F : DW 0x084,1307 : DB 100, 0,0,0x00,0xb2,0x20,0xf5,0x25,0x29,0x0
  163.    
  164.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  165.  
  166. ;static const struct opl4_region regions_07[] = { /* Clavinet */
  167. regions_07:
  168.         DB 0x00, 0x51 : DW 0x027,5009 : DB 100, 0,0,0x00,0xd2,0x28,0xf5,0x13,0x2b,0x0
  169.         DB 0x52, 0x7F : DW 0x028,3495 : DB 100, 0,0,0x00,0xd2,0x28,0xf5,0x13,0x3b,0x0
  170.  
  171.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  172.  
  173. ;static const struct opl4_region regions_08[] = { /* Celesta */
  174. regions_08:
  175.         DB 0x00, 0x7F : DW 0x02b,3267 : DB 100, 0,0,0x00,0xdc,0x20,0xf4,0x15,0x07,0x3
  176.  
  177.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  178.  
  179. ;static const struct opl4_region regions_09[] = { /* Glockenspiel */
  180. regions_09:
  181.         DB 0x00, 0x7F : DW 0x0f3, 285 : DB 100, 0,0,0x00,0xc2,0x28,0xf6,0x25,0x25,0x0
  182.  
  183.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  184.  
  185. ;static const struct opl4_region regions_0a[] = { /* Music Box */
  186. regions_0a:
  187.         DB 0x00, 0x7F : DW 0x0f3,3362 : DB 100, 0,0,0x00,0xb6,0x20,0xa6,0x25,0x25,0x0
  188.        
  189.         DB 0x00, 0x7F : DW 0x101,4773 : DB 100, 0,0,0x00,0xaa,0x20,0xd4,0x14,0x16,0x0
  190.  
  191.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  192.  
  193. ;static const struct opl4_region regions_0b[] = { /* Vibraphone */
  194. regions_0b:
  195.         DB 0x00, 0x7F : DW 0x101,4778 : DB 100, 0,0,0x00,0xc0,0x28,0xf4,0x14,0x16,0x4
  196.  
  197.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  198.  
  199. ;static const struct opl4_region regions_0c[] = { /* Marimba */
  200. regions_0c:
  201.         DB 0x00, 0x3f : DW 0x0f4,4778 : DB 100, 0,0,0x00,0xc4,0x38,0xf7,0x47,0x08,0x0
  202.         DB 0x40, 0x4c : DW 0x0f5,3217 : DB 100, 0,0,0x00,0xc4,0x38,0xf7,0x47,0x08,0x0
  203.         DB 0x4d, 0x5a : DW 0x0f5,3217 : DB 100, 0,0,0x00,0xc4,0x38,0xf7,0x48,0x08,0x0
  204.         DB 0x5b, 0x7f : DW 0x0f5,3218 : DB 100, 0,0,0x00,0xc4,0x38,0xf7,0x48,0x18,0x0
  205.  
  206.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  207.  
  208. ;static const struct opl4_region regions_0d[] = { /* Xylophone */
  209. regions_0d:
  210.         DB 0x00, 0x7f : DW 0x136,1729 : DB 100, 0,0,0x00,0xd2,0x38,0xf0,0x06,0x36,0x0
  211.  
  212.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  213.  
  214. ;static const struct opl4_region regions_0e[] = { /* Tubular Bell */
  215. regions_0e:
  216.         DB 0x00, 0x7f : DW 0x0ff,3999 : DB 100, 0,1,0x00,0x90,0x21,0xf4,0xa3,0x25,0x1
  217.  
  218.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  219.  
  220. ;static const struct opl4_region regions_0f[] = { /* Dulcimer */
  221. regions_0f:
  222.         DB 0x00, 0x7f : DW 0x03f,4236 : DB 100, 0,1,0x00,0xbc,0x29,0xf5,0x16,0x07,0x0
  223.  
  224.         DB 0x00, 0x7f : DW 0x040,4236 : DB 100, 0,2,0x0e,0x94,0x2a,0xf5,0x16,0x07,0x0
  225.  
  226.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  227.  
  228. ;static const struct opl4_region regions_10[] = { /* Drawbar Organ */
  229. regions_10:
  230.         DB 0x00, 0x7f : DW 0x08e,4394 : DB 100, 0,2,0x14,0xc2,0x3a,0xf0,0x00,0x0a,0x0
  231.  
  232.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  233.  
  234. ;static const struct opl4_region regions_11[] = { /* Percussive Organ */
  235. regions_11:
  236.         DB 0x00, 0x3b : DW 0x08c,6062 : DB 100, 0,3,0x00,0xbe,0x3b,0xf0,0x00,0x09,0x0
  237.         DB 0x3c, 0x7F : DW 0x08d,2984 : DB 100, 0,3,0x00,0xbe,0x3b,0xf0,0x00,0x09,0x0
  238.  
  239.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  240.  
  241. ;static const struct opl4_region regions_12[] = { /* Rock Organ */
  242. regions_12:
  243.         DB 0x00, 0x30 : DW 0x128,6574 : DB 100, 0,1,0x00,0xcc,0x39,0xf0,0x00,0x0a,0x0
  244.         DB 0x31, 0x3c : DW 0x129,5040 : DB 100, 0,1,0x00,0xcc,0x39,0xf0,0x00,0x0a,0x0
  245.         DB 0x3d, 0x48 : DW 0x12a,3498 : DB 100, 0,1,0x00,0xcc,0x39,0xf0,0x00,0x0a,0x0
  246.         DB 0x49, 0x54 : DW 0x12b,1957 : DB 100, 0,1,0x00,0xcc,0x39,0xf0,0x00,0x0a,0x0
  247.         DB 0x55, 0x7F : DW 0x127, 423 : DB 100, 0,1,0x00,0xcc,0x39,0xf0,0x00,0x0a,0x0
  248.  
  249.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  250.  
  251. ;static const struct opl4_region regions_13[] = { /* Church Organ */
  252. regions_13:
  253.         DB 0x00, 0x29 : DW 0x087,7466 : DB 100, 0,1,0x00,0xc4,0x11,0xf0,0x00,0x09,0x0
  254.         DB 0x2a, 0x30 : DW 0x088,6456 : DB 100, 0,1,0x00,0xc4,0x11,0xf0,0x00,0x09,0x0
  255.         DB 0x31, 0x38 : DW 0x089,5428 : DB 100, 0,1,0x00,0xc4,0x11,0xf0,0x00,0x09,0x0
  256.         DB 0x39, 0x41 : DW 0x08a,4408 : DB 100, 0,1,0x00,0xc4,0x11,0xf0,0x00,0x09,0x0
  257.         DB 0x42, 0x7F : DW 0x08b,3406 : DB 100, 0,1,0x00,0xc4,0x11,0xf0,0x00,0x09,0x0
  258.  
  259.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  260.  
  261. ;static const struct opl4_region regions_14[] = { /* Reed Organ */
  262. regions_14:
  263.         DB 0x00, 0x53 : DW 0x0ac,5570 : DB 100, 0,0,0x06,0xc0,0x38,0xf0,0x00,0x09,0x1
  264.         DB 0x54, 0x7f : DW 0x0ad,2497 : DB 100, 0,0,0x00,0xc0,0x38,0xf0,0x00,0x09,0x1
  265.  
  266.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  267.  
  268. ;static const struct opl4_region regions_15[] = { /* Accordion */
  269. regions_15:
  270.         DB 0x00, 0x4c : DW 0x006,4261 : DB 100, 0,2,0x00,0xa4,0x22,0x90,0x00,0x09,0x0
  271.         DB 0x4d, 0x7F : DW 0x007,1530 : DB 100, 0,2,0x00,0xa4,0x22,0x90,0x00,0x09,0x0
  272.        
  273.         DB 0x00, 0x7F : DW 0x070,4391 : DB 100, 0,3,0x00,0x8a,0x23,0xa0,0x00,0x09,0x0
  274.  
  275.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  276.  
  277. ;static const struct opl4_region regions_16[] = { /* Harmonica */
  278. regions_16:
  279.         DB 0x00, 0x7F : DW 0x070,4408 : DB 100, 0,0,0x00,0xae,0x30,0xa0,0x00,0x09,0x2
  280.  
  281.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  282.  
  283. ;static const struct opl4_region regions_17[] = { /* Tango Accordion */
  284. regions_17:
  285.         DB 0x00, 0x53 : DW 0x0ac,5573 : DB 100, 0,0,0x00,0xae,0x38,0xf0,0x00,0x09,0x0
  286.         DB 0x54, 0x7f : DW 0x0ad,2500 : DB 100, 0,0,0x00,0xae,0x38,0xf0,0x00,0x09,0x0
  287.        
  288.         DB 0x15, 0x6c : DW 0x041,8479 : DB 100, 0,2,0x00,0x6a,0x3a,0x75,0x20,0x0a,0x0
  289.  
  290.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  291.  
  292. ;static const struct opl4_region regions_18[] = { /* Nylon Guitar */
  293. regions_18:
  294.         DB 0x00, 0x2f : DW 0x0b3,6964 : DB 100, 0,0,0x05,0xca,0x28,0xf5,0x34,0x09,0x0
  295.         DB 0x30, 0x36 : DW 0x0b7,5567 : DB 100, 0,0,0x0c,0xca,0x28,0xf5,0x34,0x09,0x0
  296.         DB 0x37, 0x3c : DW 0x0b5,4653 : DB 100, 0,0,0x00,0xca,0x28,0xf6,0x34,0x09,0x0
  297.         DB 0x3d, 0x43 : DW 0x0b4,3892 : DB 100, 0,0,0x00,0xca,0x28,0xf6,0x35,0x09,0x0
  298.         DB 0x44, 0x7F : DW 0x0b6,2723 : DB 100, 0,0,0x00,0xca,0x28,0xf6,0x35,0x19,0x0
  299.  
  300.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  301.  
  302. ;static const struct opl4_region regions_19[] = { /* Steel Guitar */
  303. regions_19:
  304.         DB 0x00, 0x31 : DW 0x00c,6937 : DB 100, 0,0,0x00,0xbc,0x28,0xf0,0x04,0x19,0x0
  305.         DB 0x32, 0x38 : DW 0x00d,5410 : DB 100, 0,0,0x00,0xbc,0x28,0xf0,0x05,0x09,0x0
  306.         DB 0x39, 0x47 : DW 0x00e,4379 : DB 100, 0,0,0x00,0xbc,0x28,0xf5,0x94,0x09,0x0
  307.         DB 0x48, 0x7F : DW 0x00f,2843 : DB 100, 0,0,0x00,0xbc,0x28,0xf6,0x95,0x09,0x0
  308.  
  309.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  310.  
  311. ;static const struct opl4_region regions_1a[] = { /* Jazz Guitar */
  312. regions_1a:
  313.         DB 0x00, 0x31 : DW 0x05a,6832 : DB 100, 0,0,0x00,0xca,0x28,0xf6,0x34,0x09,0x0
  314.         DB 0x32, 0x3f : DW 0x05b,4897 : DB 100, 0,0,0x00,0xca,0x28,0xf6,0x34,0x09,0x0
  315.         DB 0x40, 0x7F : DW 0x05c,3218 : DB 100, 0,0,0x00,0xca,0x28,0xf6,0x34,0x09,0x0
  316.  
  317.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  318.  
  319. ;static const struct opl4_region regions_1b[] = { /* Clean Guitar */
  320. regions_1b:
  321.         DB 0x00, 0x2c : DW 0x061,7053 : DB 100, 0,1,0x00,0xb4,0x29,0xf5,0x54,0x0a,0x0
  322.         DB 0x2d, 0x31 : DW 0x060,6434 : DB 100, 0,1,0x00,0xb4,0x29,0xf5,0x54,0x0a,0x0
  323.         DB 0x32, 0x38 : DW 0x063,5764 : DB 100, 0,1,0x00,0xbe,0x29,0xf5,0x55,0x0a,0x0
  324.         DB 0x39, 0x3f : DW 0x062,4627 : DB 100, 0,1,0x00,0xb4,0x29,0xf5,0x55,0x0a,0x0
  325.         DB 0x40, 0x44 : DW 0x065,3963 : DB 100, 0,1,0x00,0xb4,0x29,0xf5,0x55,0x1a,0x0
  326.         DB 0x45, 0x4b : DW 0x064,3313 : DB 100, 0,1,0x00,0xb4,0x29,0xf5,0x55,0x1a,0x0
  327.         DB 0x4c, 0x54 : DW 0x066,2462 : DB 100, 0,1,0x00,0xb4,0x29,0xf5,0x55,0x2a,0x0
  328.         DB 0x55, 0x7F : DW 0x067,1307 : DB 100, 0,1,0x00,0xb4,0x29,0xf6,0x56,0x0a,0x0
  329.  
  330.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  331.  
  332. ;static const struct opl4_region regions_1c[] = { /* Muted Guitar */
  333. regions_1c:
  334.         DB 0x00, 0x7f : DW 0x068,4408 : DB 100, 0,0,0x00,0xcc,0x28,0xf6,0x15,0x09,0x0
  335.  
  336.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  337.  
  338. ;static const struct opl4_region regions_1d[] = { /* Overdriven Guitar */
  339. regions_1d:
  340.         DB 0x00, 0x40 : DW 0x0a5,6589 : DB 100, 0,1,0x00,0xc0,0x29,0xf2,0x11,0x09,0x0
  341.         DB 0x41, 0x7f : DW 0x0a6,5428 : DB 100, 0,1,0x00,0xc0,0x29,0xf2,0x11,0x09,0x0
  342.  
  343.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  344.  
  345. ;static const struct opl4_region regions_1e[] = { /* Distortion Guitar */
  346. regions_1e:
  347.         DB 0x00, 0x2a : DW 0x051,6928 : DB 100, 0,1,0x00,0xbc,0x21,0xa2,0x12,0x0a,0x0
  348.         DB 0x2b, 0x2e : DW 0x052,6433 : DB 100, 0,1,0x00,0xbc,0x21,0xa2,0x12,0x0a,0x0
  349.         DB 0x2f, 0x32 : DW 0x053,5944 : DB 100, 0,1,0x00,0xbc,0x21,0xa2,0x12,0x0a,0x0
  350.         DB 0x33, 0x36 : DW 0x054,5391 : DB 100, 0,1,0x00,0xbc,0x21,0xa2,0x12,0x0a,0x0
  351.         DB 0x37, 0x3a : DW 0x055,4897 : DB 100, 0,1,0x00,0xbc,0x21,0xa2,0x12,0x0a,0x0
  352.         DB 0x3b, 0x3e : DW 0x056,4408 : DB 100, 0,1,0x00,0xbc,0x21,0xa2,0x12,0x0a,0x0
  353.         DB 0x3f, 0x42 : DW 0x057,3892 : DB 100, 0,1,0x00,0xbc,0x21,0xa2,0x12,0x0a,0x0
  354.         DB 0x43, 0x46 : DW 0x058,3361 : DB 100, 0,1,0x00,0xbc,0x21,0xa2,0x12,0x0a,0x0
  355.         DB 0x47, 0x7F : DW 0x059,2784 : DB 100, 0,1,0x00,0xbc,0x21,0xa2,0x12,0x0a,0x0
  356.  
  357.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  358.  
  359. ;static const struct opl4_region regions_1f[] = { /* Guitar Harmonics */
  360. regions_1f:
  361.         DB 0x00, 0x44 : DW 0x05e,5499 : DB 100, 0,0,0x00,0xce,0x28,0xf4,0x24,0x09,0x0
  362.         DB 0x45, 0x49 : DW 0x05d,4850 : DB 100, 0,0,0x00,0xe2,0x28,0xf4,0x24,0x09,0x0
  363.         DB 0x4a, 0x7F : DW 0x05f,4259 : DB 100, 0,0,0x00,0xce,0x28,0xf4,0x24,0x09,0x0
  364.  
  365.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  366.  
  367. /*
  368. struct opl4_sound {
  369.         u16 tone;
  370.         s16 pitch_offset;
  371.  
  372.         u8 key_scaling;
  373.         s8 panpot;
  374.         u8 vibrato;
  375.  
  376.         u8 tone_attenuate;
  377.         u8 volume_factor;
  378.  
  379.         u8 reg_lfo_vibrato;
  380.         u8 reg_attack_decay1;
  381.         u8 reg_level_decay2;
  382.  
  383.         u8 reg_release_correction;
  384.         u8 reg_tremolo;
  385. };
  386. struct opl4_region {
  387.         u8 key_min, key_max;
  388.         struct opl4_sound sound;
  389. };
  390.  */
  391.  
  392. ;static const struct opl4_region regions_20[] = { /* Acoustic Bass */
  393. regions_20:
  394.         DB 0x00, 0x30 : DW 0x004,8053 : DB 100, 0,0, 0x00,0xe2,  0x18,0xf5,0x15  ,0x09,0x0
  395.         DB 0x31, 0x7F : DW 0x005,4754 : DB 100, 0,0, 0x00,0xe2,  0x18,0xf5,0x15,  0x09,0x0
  396.  
  397.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  398.  
  399. ;static const struct opl4_region regions_21[] = { /* Fingered Bass */
  400. regions_21:
  401.         DB 0x00, 0x20 : DW 0x04a,8762 : DB 100, 0,0,0x00,0xae,0x18,0xf6,0x14,0x09,0x0
  402.         DB 0x21, 0x25 : DW 0x04b,8114 : DB 100, 0,0,0x00,0xae,0x18,0xf6,0x14,0x09,0x0
  403.         DB 0x26, 0x2a : DW 0x04c,7475 : DB 100, 0,0,0x00,0xae,0x18,0xf6,0x14,0x09,0x0
  404.         DB 0x2b, 0x7f : DW 0x04d,6841 : DB 100, 0,0,0x00,0xae,0x18,0xf6,0x14,0x09,0x0
  405.  
  406. ;       DB 0x00, 0x20 : DW 0x04a,8762 : DB 100, 0,0,0x00,0xde,0x18,0xf6,0x14,0x09,0x0
  407. ;       DB 0x21, 0x25 : DW 0x04b,8114 : DB 100, 0,0,0x00,0xde,0x18,0xf6,0x14,0x09,0x0
  408. ;       DB 0x26, 0x2a : DW 0x04c,7475 : DB 100, 0,0,0x00,0xde,0x18,0xf6,0x14,0x09,0x0
  409. ;       DB 0x2b, 0x7f : DW 0x04d,6841 : DB 100, 0,0,0x00,0xde,0x18,0xf6,0x14,0x09,0x0
  410.  
  411.  
  412.  
  413.         DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  414.  
  415. ;static const struct opl4_region regions_22[] = { /* Picked Bass */
  416. regions_22:
  417.         DB 0x00, 0x23 : DW 0x04f,7954 : DB 100, 0,0,0x00,0xcc,0x18,0xf3,0x90,0x0a,0x0
  418.         DB 0x24, 0x2a : DW 0x050,7318 : DB 100, 0,0,0x05,0xcc,0x18,0xf3,0x90,0x1a,0x0
  419.         DB 0x2b, 0x2f : DW 0x06b,6654 : DB 100, 0,0,0x00,0xcc,0x18,0xf3,0x90,0x2a,0x0
  420.         DB 0x30, 0x47 : DW 0x069,6031 : DB 100, 0,0,0x00,0xcc,0x18,0xf5,0xb0,0x0a,0x0
  421.         DB 0x48, 0x7F : DW 0x06a,5393 : DB 100, 0,0,0x00,0xcc,0x18,0xf5,0xb0,0x0a,0x0
  422.  
  423.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  424.  
  425. ;static const struct opl4_region regions_23[] = { /* Fretless Bass */
  426. regions_23:
  427.         DB 0x00, 0x7f : DW 0x04e,5297 : DB 100, 0,0,0x00,0xd2,0x10,0xf3,0x63,0x19,0x0
  428.  
  429.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  430.  
  431. ;static const struct opl4_region regions_24[] = { /* Slap Bass 1 */
  432. regions_24:
  433.         DB 0x00, 0x7F : DW 0x0a3,7606 : DB 100, 0,1,0x00,0xde,0x19,0xf5,0x32,0x1a,0x0
  434.  
  435.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  436.  
  437. ;static const struct opl4_region regions_25[] = { /* Slap Bass 2 */
  438. regions_25:
  439.         DB 0x00, 0x7f : DW 0x0a2,6694 : DB 100, 0,0,0x00,0xda,0x20,0xb0,0x02,0x09,0x0
  440.  
  441.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  442.  
  443. ;static const struct opl4_region regions_26[] = { /* Synth Bass 1 */
  444. regions_26:
  445.         DB 0x00, 0x7F : DW 0x0be,7466 : DB 100, 0,1,0x00,0xb8,0x39,0xf4,0x14,0x09,0x0
  446.  
  447.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  448.  
  449. ;static const struct opl4_region regions_27[] = { /* Synth Bass 2 */
  450. regions_27:
  451.         DB 0x00, 0x7f : DW 0x117,8103 : DB 100, 0,1,0x00,0xca,0x39,0xf3,0x50,0x08,0x0
  452.  
  453.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  454.  
  455. ;static const struct opl4_region regions_28[] = { /* Violin */
  456. regions_28:
  457.         DB 0x00, 0x3a : DW 0x105,5158 : DB 100, 0,3,0x00,0xcc,0x3b,0xf3,0x20,0x09,0x0
  458.         DB 0x3b, 0x3f : DW 0x102,4754 : DB 100, 0,3,0x00,0xcc,0x3b,0xf3,0x20,0x09,0x0
  459.         DB 0x40, 0x41 : DW 0x106,4132 : DB 100, 0,3,0x00,0xcc,0x3b,0xf3,0x20,0x09,0x0
  460.         DB 0x42, 0x44 : DW 0x107,4033 : DB 100, 0,3,0x00,0xcc,0x3b,0xf3,0x20,0x09,0x0
  461.         DB 0x45, 0x47 : DW 0x108,3580 : DB 100, 0,3,0x00,0xcc,0x3b,0xf3,0x20,0x09,0x0
  462.         DB 0x48, 0x4a : DW 0x10a,2957 : DB 100, 0,3,0x00,0xcc,0x3b,0xf3,0x20,0x09,0x0
  463.         DB 0x4b, 0x4c : DW 0x10b,2724 : DB 100, 0,3,0x00,0xcc,0x3b,0xf3,0x20,0x09,0x0
  464.         DB 0x4d, 0x4e : DW 0x10c,2530 : DB 100, 0,3,0x00,0xcc,0x3b,0xf3,0x20,0x09,0x0
  465.         DB 0x4f, 0x51 : DW 0x10d,2166 : DB 100, 0,3,0x00,0xcc,0x3b,0xf3,0x20,0x09,0x0
  466.         DB 0x52, 0x7F : DW 0x109,1825 : DB 100, 0,3,0x00,0xcc,0x3b,0xf3,0x20,0x09,0x0
  467.  
  468.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  469.  
  470. ;static const struct opl4_region regions_29[] = { /* Viola */
  471. regions_29:
  472.         DB 0x00, 0x32 : DW 0x103,5780 : DB 100, 0,3,0x00,0xc4,0x3b,0xa3,0x20,0x09,0x0
  473.         DB 0x33, 0x35 : DW 0x104,5534 : DB 100, 0,3,0x00,0xc4,0x3b,0xa3,0x20,0x09,0x0
  474.         DB 0x36, 0x38 : DW 0x105,5158 : DB 100, 0,3,0x00,0xc4,0x3b,0xa3,0x20,0x09,0x0
  475.         DB 0x39, 0x3d : DW 0x102,4754 : DB 100, 0,3,0x00,0xca,0x3b,0xa3,0x20,0x09,0x0
  476.         DB 0x3e, 0x3f : DW 0x106,4132 : DB 100, 0,3,0x00,0xc4,0x3b,0xa3,0x20,0x09,0x0
  477.         DB 0x40, 0x42 : DW 0x107,4033 : DB 100, 0,3,0x00,0xc4,0x3b,0xa3,0x20,0x09,0x0
  478.         DB 0x43, 0x45 : DW 0x108,3580 : DB 100, 0,3,0x00,0xd0,0x3b,0xa3,0x20,0x09,0x0
  479.         DB 0x46, 0x48 : DW 0x10a,2957 : DB 100, 0,3,0x00,0xca,0x3b,0xa3,0x20,0x09,0x0
  480.         DB 0x49, 0x4a : DW 0x10b,2724 : DB 100, 0,3,0x00,0xd0,0x3b,0xa3,0x20,0x09,0x0
  481.         DB 0x4b, 0x4c : DW 0x10c,2530 : DB 100, 0,3,0x00,0xca,0x3b,0xa3,0x20,0x09,0x0
  482.         DB 0x4d, 0x4f : DW 0x10d,2166 : DB 100, 0,3,0x00,0xd0,0x3b,0xa3,0x20,0x09,0x0
  483.         DB 0x50, 0x7F : DW 0x109,1825 : DB 100, 0,3,0x00,0xd0,0x3b,0xa3,0x20,0x09,0x0
  484.  
  485.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  486.  
  487. ;static const struct opl4_region regions_2a[] = { /* Cello */
  488. regions_2a:
  489.         DB 0x00, 0x2d : DW 0x112,6545 : DB 100, 0,3,0x00,0xc0,0x33,0xa0,0x00,0x08,0x0
  490.         DB 0x2e, 0x37 : DW 0x113,5764 : DB 100, 0,3,0x00,0xc0,0x33,0xa0,0x00,0x08,0x0
  491.         DB 0x38, 0x3e : DW 0x115,4378 : DB 100, 0,3,0x00,0xc0,0x33,0xa0,0x00,0x18,0x0
  492.         DB 0x3f, 0x44 : DW 0x116,3998 : DB 100, 0,3,0x00,0xc0,0x33,0xa0,0x00,0x18,0x0
  493.         DB 0x45, 0x7F : DW 0x114,3218 : DB 100, 0,3,0x00,0xc0,0x33,0xa0,0x00,0x18,0x0
  494.  
  495.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  496.  
  497. ;static const struct opl4_region regions_2b[] = { /* Contrabass */
  498. regions_2b:
  499.         DB 0x00, 0x29 : DW 0x110,7713 : DB 100, 0,1,0x00,0xc2,0x19,0x90,0x00,0x09,0x0
  500.         DB 0x2a, 0x7F : DW 0x111,6162 : DB 100, 0,1,0x00,0xc2,0x19,0x90,0x00,0x09,0x0
  501.  
  502.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  503.  
  504. ;static const struct opl4_region regions_2c[] = { /* Tremolo Strings */
  505. regions_2c:
  506.         DB 0x00, 0x3b : DW 0x0b0,4810 : DB 100, 0,0,0x0a,0xde,0x38,0xf0,0x00,0x07,0x6
  507.         DB 0x3c, 0x41 : DW 0x035,4035 : DB 100, 0,0,0x05,0xde,0x38,0xf0,0x00,0x07,0x6
  508.         DB 0x42, 0x47 : DW 0x033,3129 : DB 100, 0,0,0x05,0xde,0x38,0xf0,0x00,0x07,0x6
  509.         DB 0x48, 0x52 : DW 0x034,2625 : DB 100, 0,0,0x05,0xde,0x38,0xf0,0x00,0x07,0x6
  510.         DB 0x53, 0x7F : DW 0x0af, 936 : DB 100, 0,0,0x00,0xde,0x38,0xf0,0x00,0x07,0x6
  511.  
  512.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  513.  
  514. ;static const struct opl4_region regions_2d[] = { /* Pizzicato Strings */
  515. regions_2d:
  516.         DB 0x00, 0x32 : DW 0x0b8,6186 : DB 100, 0,0,0x00,0xbc,0x28,0xf0,0x00,0x05,0x0
  517.         DB 0x33, 0x3b : DW 0x0b9,5031 : DB 100, 0,0,0x00,0xbc,0x28,0xf0,0x00,0x05,0x0
  518.         DB 0x3c, 0x42 : DW 0x0bb,4146 : DB 100, 0,0,0x00,0xbc,0x28,0xf0,0x00,0x05,0x0
  519.         DB 0x43, 0x48 : DW 0x0ba,3245 : DB 100, 0,0,0x00,0xc2,0x28,0xf0,0x00,0x05,0x0
  520.         DB 0x49, 0x7F : DW 0x0bc,2352 : DB 100, 0,0,0x00,0xbc,0x28,0xf0,0x00,0x05,0x0
  521.  
  522.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  523.  
  524. ;static const struct opl4_region regions_2e[] = { /* Harp */
  525. regions_2e:
  526.         DB 0x00, 0x46 : DW 0x07e,3740 : DB 100, 0,1,0x00,0xd2,0x29,0xf5,0x25,0x07,0x0
  527.         DB 0x47, 0x7F : DW 0x07f,2319 : DB 100, 0,1,0x00,0xd2,0x29,0xf5,0x25,0x07,0x0
  528.  
  529.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  530.  
  531. ;static const struct opl4_region regions_2f[] = { /* Timpani */
  532. regions_2f:
  533.         DB 0x00, 0x7F : DW 0x100,6570 : DB 100, 0,0,0x00,0xf8,0x28,0xf0,0x05,0x16,0x0
  534.  
  535.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  536.  
  537. ;static const struct opl4_region regions_30[] = { /* Strings */
  538. regions_30:
  539.         DB 0x00, 0x3b : DW 0x13c,4806 : DB 100, 0,0,0x00,0xc8,0x20,0x80,0x00,0x07,0x0
  540.         DB 0x3c, 0x41 : DW 0x13e,4035 : DB 100, 0,0,0x00,0xc8,0x20,0x80,0x00,0x07,0x0
  541.         DB 0x42, 0x47 : DW 0x13d,3122 : DB 100, 0,0,0x00,0xc8,0x20,0x80,0x00,0x07,0x0
  542.                 ;DB 0x48, 0x52 : DW 0x13f,2629 : DB 100, 0,0,0x00,0xbe,0x20,0x80,0x00,0x07,0x0
  543.                                 ;;      DB 0x48, 0x52 : DW 0x13f,2629 : DB 100, 0,0,  0x00,0xbe,  0x20,0x80,0x00,   0x07,0x0
  544.                                 ;;      DB 0x48, 0x52 : DW 0x13f,2629 : DB 100, 5,1,0x00,0xb4,0x19,0x70,0x00,0x06,0x0
  545.                 DB 0x48, 0x52 : DW 0x0ae,3261 : DB 100, 2,0,0x00,0xc6,0x20,0x70,0x01,0x06,0x0
  546.         DB 0x53, 0x7F : DW 0x140, 950 : DB 100, 0,0,0x00,0xbe,0x20,0x80,0x00,0x07,0x0
  547.  
  548.         DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0      
  549.  
  550. ;static const struct opl4_region regions_31[] = { /* Slow Strings */
  551. regions_31:
  552.         DB 0x00, 0x3b : DW 0x0b0,4810 : DB 100, 0,1,0x0a,0xbe,0x19,0xf0,0x00,0x07,0x0
  553.         DB 0x3c, 0x41 : DW 0x035,4035 : DB 100, 0,1,0x05,0xbe,0x19,0xf0,0x00,0x07,0x0
  554.         DB 0x42, 0x47 : DW 0x033,3129 : DB 100, 0,1,0x05,0xbe,0x19,0xf0,0x00,0x07,0x0
  555.         DB 0x48, 0x52 : DW 0x034,2625 : DB 100, 0,1,0x05,0xbe,0x19,0xf0,0x00,0x07,0x0
  556.         DB 0x53, 0x7F : DW 0x0af, 936 : DB 100, 0,1,0x00,0xbe,0x19,0xf0,0x00,0x07,0x0
  557.  
  558.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  559.  
  560. ;static const struct opl4_region regions_32[] = { /* Synth Strings 1 */
  561. regions_32:
  562.         DB 0x00, 0x7F : DW 0x002,6045 : DB 100,-2,0,0x00,0xa6,0x20,0x93,0x22,0x06,0x0
  563.        
  564.         DB 0x15, 0x6c : DW 0x0ae,3261 : DB 100, 2,0,0x00,0xc6,0x20,0x70,0x01,0x06,0x0
  565.  
  566.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  567.  
  568. ;static const struct opl4_region regions_33[] = { /* Synth Strings 2 */
  569. regions_33:
  570.         DB 0x00, 0x7F : DW 0x002,4513 : DB 100, 5,1,0x00,0xb4,0x19,0x70,0x00,0x06,0x0
  571.        
  572.         DB 0x00, 0x7F : DW 0x002,4501 : DB 100,-5,1,0x00,0xb4,0x19,0x70,0x00,0x06,0x0
  573.  
  574.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  575.  
  576. ;static const struct opl4_region regions_34[] = { /* Choir Aahs */
  577. regions_34:
  578.         DB 0x00, 0x3a : DW 0x018,5010 : DB 100, 0,2,0x00,0xc2,0x1a,0x70,0x00,0x08,0x0
  579.         DB 0x3b, 0x40 : DW 0x019,4370 : DB 100, 0,2,0x00,0xc2,0x1a,0x70,0x00,0x08,0x0
  580.         DB 0x41, 0x47 : DW 0x01a,3478 : DB 100, 0,2,0x00,0xc2,0x1a,0x70,0x00,0x08,0x0
  581.         DB 0x48, 0x7F : DW 0x01b,2197 : DB 100, 0,2,0x00,0xc2,0x1a,0x70,0x00,0x08,0x0
  582.  
  583.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  584.  
  585. ;static const struct opl4_region regions_35[] = { /* Voice Oohs */
  586. regions_35:
  587.         DB 0x00, 0x7F : DW 0x029,3596 : DB 100, 0,0,0x00,0xe6,0x20,0xf7,0x20,0x08,0x0
  588.  
  589.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  590.  
  591. ;static const struct opl4_region regions_36[] = { /* Synth Voice */
  592. regions_36:
  593.         DB 0x00, 0x7F : DW 0x02a,3482 : DB 100, 0,1,0x00,0xc2,0x19,0x85,0x21,0x07,0x0
  594.  
  595.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  596.  
  597. ;static const struct opl4_region regions_37[] = { /* Orchestra Hit */
  598. regions_37:
  599.         DB 0x00, 0x7F : DW 0x049,4394 : DB 100, 0,0,0x00,0xfe,0x30,0x80,0x05,0x05,0x0
  600.  
  601.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  602.  
  603. ;static const struct opl4_region regions_38[] = { /* Trumpet */
  604. regions_38:
  605.         DB 0x00, 0x3c : DW 0x0f6,4706 : DB 100, 0,2,0x00,0xd6,0x32,0xf3,0x20,0x0a,0x0
  606.         DB 0x3d, 0x43 : DW 0x0f8,3894 : DB 100, 0,2,0x00,0xd6,0x32,0xf3,0x20,0x0a,0x0
  607.         DB 0x44, 0x48 : DW 0x0f7,3118 : DB 100, 0,2,0x00,0xd6,0x32,0xf3,0x20,0x0a,0x0
  608.         DB 0x49, 0x4e : DW 0x0fa,2322 : DB 100, 0,2,0x00,0xd6,0x32,0xf3,0x20,0x0a,0x0
  609.         DB 0x4f, 0x55 : DW 0x0f9,1634 : DB 100, 0,2,0x00,0xd6,0x32,0xf3,0x20,0x0a,0x0
  610.         DB 0x56, 0x7F : DW 0x0fb, 786 : DB 100, 0,2,0x00,0xd6,0x32,0xf3,0x20,0x0a,0x0
  611.  
  612.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  613.  
  614. ;static const struct opl4_region regions_39[] = { /* Trombone */
  615. regions_39:
  616.         DB 0x00, 0x3a : DW 0x0f0,5053 : DB 100, 0,1,0x00,0xd6,0x21,0xf0,0x00,0x09,0x0
  617.         DB 0x3b, 0x3f : DW 0x0f1,4290 : DB 100, 0,1,0x00,0xd6,0x21,0xf0,0x00,0x09,0x0
  618.         DB 0x40, 0x7F : DW 0x0f2,3580 : DB 100, 0,1,0x00,0xd6,0x21,0xf0,0x00,0x09,0x0
  619.  
  620.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  621.  
  622. ;static const struct opl4_region regions_3a[] = { /* Tuba */
  623. regions_3a:
  624.         DB 0x00, 0x2d : DW 0x085,7096 : DB 100, 0,1,0x00,0xde,0x21,0xf5,0x10,0x09,0x0
  625.         DB 0x2e, 0x7F : DW 0x086,6014 : DB 100, 0,1,0x00,0xde,0x21,0xf5,0x10,0x09,0x0
  626.  
  627.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  628.  
  629. ;static const struct opl4_region regions_3b[] = { /* Muted Trumpet */
  630. regions_3b:
  631.         DB 0x00, 0x45 : DW 0x0b1,4135 : DB 100, 0,0,0x00,0xcc,0x28,0xf3,0x10,0x0a,0x1
  632.         DB 0x46, 0x7F : DW 0x0b2,2599 : DB 100, 0,0,0x00,0xcc,0x28,0x83,0x10,0x0a,0x1
  633.  
  634.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  635.  
  636. ;static const struct opl4_region regions_3c[] = { /* French Horns */
  637. regions_3c:
  638.         DB 0x00, 0x49 : DW 0x07c,3624 : DB 100, 0,2,0x00,0xd0,0x1a,0xf0,0x00,0x09,0x0
  639.         DB 0x4a, 0x7F : DW 0x07d,2664 : DB 100, 0,2,0x00,0xd0,0x1a,0xf0,0x00,0x09,0x0
  640.  
  641.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  642.  
  643. ;static const struct opl4_region regions_3d[] = { /* Brass Section */
  644. regions_3d:
  645.         DB 0x00, 0x42 : DW 0x0fc,4375 : DB 100, 0,0,0x00,0xd6,0x28,0xf0,0x00,0x0a,0x0
  646.         DB 0x43, 0x7F : DW 0x0fd,2854 : DB 100, 0,0,0x00,0xd6,0x28,0xf0,0x00,0x0a,0x0
  647.  
  648.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  649.  
  650. ;static const struct opl4_region regions_3e[] = { /* Synth Brass 1 */
  651. regions_3e:
  652.         DB 0x00, 0x27 : DW 0x0d3,9094 : DB 100,-1,0,0x00,0xbe,0x18,0xa5,0x11,0x08,0x0
  653.         DB 0x28, 0x2d : DW 0x0da,8335 : DB 100,-1,0,0x00,0xbe,0x18,0xa5,0x11,0x08,0x0
  654.         DB 0x2e, 0x33 : DW 0x0d4,7558 : DB 100,-1,0,0x00,0xbe,0x18,0xa5,0x11,0x08,0x0
  655.         DB 0x34, 0x39 : DW 0x0db,6785 : DB 100,-1,0,0x00,0xbe,0x18,0xa5,0x11,0x08,0x0
  656.         DB 0x3a, 0x3f : DW 0x0d5,6042 : DB 100,-1,0,0x00,0xbe,0x18,0xa5,0x11,0x08,0x0
  657.         DB 0x40, 0x45 : DW 0x0dc,5257 : DB 100,-1,0,0x00,0xbe,0x18,0xa5,0x11,0x08,0x0
  658.         DB 0x46, 0x4b : DW 0x0d6,4493 : DB 100,-1,0,0x00,0xbe,0x18,0xa5,0x11,0x08,0x0
  659.         DB 0x4c, 0x51 : DW 0x0dd,3741 : DB 100,-1,0,0x00,0xbe,0x18,0xa5,0x11,0x08,0x0
  660.         DB 0x52, 0x57 : DW 0x0d7,3012 : DB 100,-1,0,0x00,0xbe,0x18,0xa5,0x11,0x08,0x0
  661.         DB 0x58, 0x5d : DW 0x0de,2167 : DB 100,-1,0,0x00,0xbe,0x18,0xa5,0x11,0x08,0x0
  662.         DB 0x5e, 0x63 : DW 0x0d8,1421 : DB 100,-1,0,0x00,0xbe,0x18,0xa5,0x11,0x08,0x0
  663.         DB 0x64, 0x7f : DW 0x0d9,-115 : DB 100,-1,0,0x00,0xbe,0x18,0xa5,0x11,0x08,0x0
  664.        
  665.         DB 0x00, 0x27 : DW 0x118,9103 : DB 100, 1,1,0x00,0xbe,0x19,0x85,0x23,0x08,0x0
  666.         DB 0x28, 0x2d : DW 0x119,8340 : DB 100, 1,1,0x00,0xbe,0x19,0x85,0x23,0x08,0x0
  667.         DB 0x2e, 0x33 : DW 0x11a,7565 : DB 100, 1,1,0x00,0xbe,0x19,0x85,0x23,0x08,0x0
  668.         DB 0x34, 0x39 : DW 0x11b,6804 : DB 100, 1,1,0x00,0xbe,0x19,0x85,0x23,0x08,0x0
  669.         DB 0x3a, 0x3f : DW 0x11c,6042 : DB 100, 1,1,0x00,0xbe,0x19,0x85,0x23,0x08,0x0
  670.         DB 0x40, 0x45 : DW 0x11d,5277 : DB 100, 1,1,0x00,0xbe,0x19,0x85,0x23,0x08,0x0
  671.         DB 0x46, 0x4b : DW 0x11e,4520 : DB 100, 1,1,0x00,0xbe,0x19,0x85,0x23,0x08,0x0
  672.         DB 0x4c, 0x51 : DW 0x11f,3741 : DB 100, 1,1,0x00,0xbe,0x19,0x85,0x23,0x08,0x0
  673.         DB 0x52, 0x57 : DW 0x120,3012 : DB 100, 1,1,0x00,0xbe,0x19,0x85,0x23,0x08,0x0
  674.         DB 0x58, 0x5d : DW 0x121,2166 : DB 100, 1,1,0x00,0xbe,0x19,0x85,0x23,0x08,0x0
  675.         DB 0x5e, 0x64 : DW 0x122,1421 : DB 100, 1,1,0x00,0xbe,0x19,0x85,0x23,0x08,0x0
  676.         DB 0x65, 0x7f : DW 0x123,-115 : DB 100, 1,1,0x00,0xbe,0x19,0x85,0x23,0x08,0x0
  677.  
  678.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  679.  
  680. ;static const struct opl4_region regions_3f[] = { /* Synth Brass 2 */
  681. regions_3f:
  682.         DB 0x01, 0x27 : DW 0x118,9113 : DB 100, 3,6,0x00,0xae,0x26,0x85,0x23,0x08,0x0
  683.         DB 0x28, 0x2d : DW 0x119,8350 : DB 100, 3,6,0x00,0xae,0x26,0x85,0x23,0x08,0x0
  684.         DB 0x2e, 0x33 : DW 0x11a,7575 : DB 100, 3,6,0x00,0xae,0x26,0x85,0x23,0x08,0x0
  685.         DB 0x34, 0x39 : DW 0x11b,6814 : DB 100, 3,6,0x00,0xae,0x26,0x85,0x23,0x08,0x0
  686.         DB 0x3a, 0x3f : DW 0x11c,6052 : DB 100, 3,6,0x00,0xae,0x26,0x85,0x23,0x08,0x0
  687.         DB 0x40, 0x45 : DW 0x11d,5287 : DB 100, 3,6,0x00,0xae,0x26,0x85,0x23,0x08,0x0
  688.         DB 0x46, 0x4b : DW 0x11e,4530 : DB 100, 3,6,0x00,0xae,0x26,0x85,0x23,0x08,0x0
  689.         DB 0x4c, 0x51 : DW 0x11f,3751 : DB 100, 3,6,0x00,0xae,0x26,0x85,0x23,0x08,0x0
  690.         DB 0x52, 0x57 : DW 0x120,3022 : DB 100, 3,6,0x00,0xae,0x26,0x85,0x23,0x08,0x0
  691.         DB 0x58, 0x5d : DW 0x121,2176 : DB 100, 3,6,0x00,0xae,0x26,0x85,0x23,0x08,0x0
  692.         DB 0x5e, 0x64 : DW 0x122,1431 : DB 100, 3,6,0x00,0xae,0x26,0x85,0x23,0x08,0x0
  693.         DB 0x65, 0x7f : DW 0x123,-105 : DB 100, 3,6,0x00,0xae,0x26,0x85,0x23,0x08,0x0
  694.        
  695.         DB 0x00, 0x7f : DW 0x124,4034 : DB 100,-3,2,0x00,0xae,0x22,0x85,0x23,0x08,0x0
  696.  
  697.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  698.  
  699. ;static const struct opl4_region regions_40[] = { /* Soprano Sax */
  700. regions_40:
  701.         DB 0x00, 0x3f : DW 0x0e3,4228 : DB 100, 0,1,0x00,0xc8,0x21,0xf5,0x20,0x0a,0x0
  702.         DB 0x40, 0x45 : DW 0x0e4,3495 : DB 100, 0,1,0x00,0xc8,0x21,0xf5,0x20,0x0a,0x0
  703.         DB 0x46, 0x4b : DW 0x0e5,2660 : DB 100, 0,1,0x00,0xd6,0x21,0xf5,0x20,0x0a,0x0
  704.         DB 0x4c, 0x51 : DW 0x0e6,2002 : DB 100, 0,1,0x00,0xd6,0x21,0xf5,0x20,0x0a,0x0
  705.         DB 0x52, 0x59 : DW 0x0e7,1186 : DB 100, 0,1,0x00,0xd6,0x21,0xf5,0x20,0x0a,0x0
  706.         DB 0x59, 0x7F : DW 0x0e8,1730 : DB 100, 0,1,0x00,0xc8,0x21,0xf5,0x20,0x0a,0x0
  707.  
  708.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  709.  
  710. ;static const struct opl4_region regions_41[] = { /* Alto Sax */
  711. regions_41:
  712.         DB 0x00, 0x32 : DW 0x092,6204 : DB 100, 0,1,0x00,0xbe,0x19,0xf5,0x20,0x0b,0x0
  713.         DB 0x33, 0x35 : DW 0x096,5812 : DB 100, 0,1,0x00,0xbe,0x19,0xf5,0x20,0x0b,0x0
  714.         DB 0x36, 0x3a : DW 0x099,5318 : DB 100, 0,1,0x00,0xbe,0x19,0xf5,0x20,0x0b,0x0
  715.         DB 0x3b, 0x3b : DW 0x08f,5076 : DB 100, 0,1,0x00,0xbe,0x19,0xf5,0x20,0x0b,0x0
  716.         DB 0x3c, 0x3e : DW 0x093,4706 : DB 100, 0,1,0x00,0xbe,0x19,0xf5,0x20,0x0b,0x0
  717.         DB 0x3f, 0x41 : DW 0x097,4321 : DB 100, 0,1,0x00,0xbe,0x19,0xf5,0x20,0x0b,0x0
  718.         DB 0x42, 0x44 : DW 0x09a,3893 : DB 100, 0,1,0x00,0xbe,0x19,0xf5,0x20,0x0b,0x0
  719.         DB 0x45, 0x47 : DW 0x090,3497 : DB 100, 0,1,0x00,0xbe,0x19,0xf5,0x20,0x0b,0x0
  720.         DB 0x48, 0x4a : DW 0x094,3119 : DB 100, 0,1,0x00,0xbe,0x19,0xf5,0x20,0x0b,0x0
  721.         DB 0x4b, 0x4d : DW 0x098,2726 : DB 100, 0,1,0x00,0xbe,0x19,0xf5,0x20,0x0b,0x0
  722.         DB 0x4e, 0x50 : DW 0x09b,2393 : DB 100, 0,1,0x00,0xbe,0x19,0xf5,0x20,0x0b,0x0
  723.         DB 0x51, 0x53 : DW 0x091,2088 : DB 100, 0,1,0x00,0xbe,0x19,0xf5,0x20,0x0b,0x0
  724.         DB 0x54, 0x7F : DW 0x095,1732 : DB 100, 0,1,0x00,0xbe,0x19,0xf5,0x20,0x0b,0x0
  725.  
  726.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  727.  
  728. ;static const struct opl4_region regions_42[] = { /* Tenor Sax */
  729. regions_42:
  730.         DB 0x00, 0x30 : DW 0x0e9,6301 : DB 100, 0,1,0x00,0xbc,0x19,0xf4,0x10,0x0b,0x0
  731.         DB 0x31, 0x34 : DW 0x0ea,5781 : DB 100, 0,1,0x00,0xbc,0x19,0xf4,0x10,0x0b,0x0
  732.         DB 0x35, 0x3a : DW 0x0eb,5053 : DB 100, 0,1,0x00,0xbc,0x19,0xf4,0x10,0x0b,0x0
  733.         DB 0x3b, 0x41 : DW 0x0ed,4165 : DB 100, 0,1,0x00,0xbc,0x19,0xf4,0x10,0x0b,0x0
  734.         DB 0x42, 0x47 : DW 0x0ec,3218 : DB 100, 0,1,0x00,0xbc,0x19,0xf4,0x10,0x0b,0x0
  735.         DB 0x48, 0x51 : DW 0x0ee,2462 : DB 100, 0,1,0x00,0xbc,0x19,0xf4,0x10,0x0b,0x0
  736.         DB 0x52, 0x7F : DW 0x0ef,1421 : DB 100, 0,1,0x00,0xbc,0x19,0xf4,0x10,0x0b,0x0
  737.  
  738.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  739.  
  740. ;static const struct opl4_region regions_43[] = { /* Baritone Sax */
  741. regions_43:
  742.         DB 0x00, 0x2d : DW 0x0df,6714 : DB 100, 0,1,0x00,0xce,0x19,0xf0,0x00,0x0a,0x0
  743.         DB 0x2e, 0x34 : DW 0x0e1,5552 : DB 100, 0,1,0x00,0xce,0x19,0xf0,0x00,0x0a,0x0
  744.         DB 0x35, 0x39 : DW 0x0e2,5178 : DB 100, 0,1,0x00,0xce,0x19,0xf0,0x00,0x0a,0x0
  745.         DB 0x3a, 0x7F : DW 0x0e0,4437 : DB 100, 0,1,0x00,0xce,0x19,0xf0,0x00,0x0a,0x0
  746.  
  747.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  748.  
  749. ;static const struct opl4_region regions_44[] = { /* Oboe */
  750. regions_44:
  751.         DB 0x00, 0x3c : DW 0x042,4493 : DB 100, 0,1,0x00,0xe6,0x39,0xf4,0x10,0x0a,0x0
  752.         DB 0x3d, 0x43 : DW 0x044,3702 : DB 100, 0,1,0x00,0xdc,0x39,0xf4,0x10,0x0a,0x0
  753.         DB 0x44, 0x49 : DW 0x043,2956 : DB 100, 0,1,0x00,0xdc,0x39,0xf4,0x10,0x0a,0x0
  754.         DB 0x4a, 0x4f : DW 0x046,2166 : DB 100, 0,1,0x00,0xdc,0x39,0xf4,0x10,0x0a,0x0
  755.         DB 0x50, 0x55 : DW 0x045,1420 : DB 100, 0,1,0x00,0xdc,0x39,0xf4,0x10,0x0a,0x0
  756.         DB 0x56, 0x7F : DW 0x047, 630 : DB 100, 0,1,0x00,0xe6,0x39,0xf4,0x10,0x0a,0x0
  757.  
  758.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  759.  
  760. ;static const struct opl4_region regions_45[] = { /* English Horn */
  761. regions_45:
  762.         DB 0x00, 0x38 : DW 0x03c,5098 : DB 100, 0,1,0x00,0xc4,0x31,0xf0,0x00,0x09,0x0
  763.         DB 0x39, 0x3e : DW 0x03b,4291 : DB 100, 0,1,0x00,0xc4,0x31,0xf0,0x00,0x09,0x0
  764.         DB 0x3f, 0x7F : DW 0x03d,3540 : DB 100, 0,1,0x00,0xc4,0x31,0xf0,0x00,0x09,0x0
  765.  
  766.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  767.  
  768. ;static const struct opl4_region regions_46[] = { /* Bassoon */
  769. regions_46:
  770.         DB 0x00, 0x22 : DW 0x038,7833 : DB 100, 0,1,0x00,0xc6,0x31,0xf0,0x00,0x0b,0x0
  771.         DB 0x23, 0x2e : DW 0x03a,7070 : DB 100, 0,1,0x00,0xc6,0x31,0xf0,0x00,0x0b,0x0
  772.         DB 0x2f, 0x7F : DW 0x039,6302 : DB 100, 0,1,0x00,0xc6,0x31,0xf0,0x00,0x0b,0x0
  773.  
  774.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  775.  
  776. ;static const struct opl4_region regions_47[] = { /* Clarinet */
  777. regions_47:
  778.         DB 0x00, 0x3b : DW 0x09e,5900 : DB 100, 0,1,0x00,0xc8,0x29,0xf3,0x20,0x0a,0x0
  779.         DB 0x3c, 0x41 : DW 0x0a0,5158 : DB 100, 0,1,0x00,0xc8,0x29,0xf3,0x20,0x0a,0x0
  780.         DB 0x42, 0x4a : DW 0x09f,4260 : DB 100, 0,1,0x00,0xc8,0x29,0xf3,0x20,0x0a,0x0
  781.         DB 0x4b, 0x7F : DW 0x0a1,2957 : DB 100, 0,1,0x00,0xc8,0x29,0xf3,0x20,0x0a,0x0
  782.  
  783.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  784.  
  785. ;static const struct opl4_region regions_48[] = { /* Piccolo */
  786. regions_48:
  787.         DB 0x00, 0x40 : DW 0x071,4803 : DB 100, 0,0,0x00,0xe6,0x38,0xf0,0x00,0x0a,0x2
  788.         DB 0x41, 0x4d : DW 0x072,3314 : DB 100, 0,0,0x00,0xe6,0x38,0xf0,0x00,0x0a,0x2
  789.         DB 0x4e, 0x53 : DW 0x073,1731 : DB 100, 0,0,0x00,0xe6,0x38,0xf0,0x00,0x0a,0x2
  790.         DB 0x54, 0x5f : DW 0x074,2085 : DB 100, 0,0,0x00,0xe6,0x38,0xf0,0x00,0x0a,0x2
  791.         DB 0x60, 0x7F : DW 0x075,1421 : DB 100, 0,0,0x00,0xe6,0x38,0xf0,0x00,0x0a,0x2
  792.  
  793.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  794.  
  795. ;static const struct opl4_region regions_49[] = { /* Flute */
  796. regions_49:
  797.         DB 0x00, 0x40 : DW 0x071,4803 : DB 100, 0,0,0x00,0xdc,0x38,0xf0,0x00,0x0a,0x2
  798.         DB 0x41, 0x4d : DW 0x072,3314 : DB 100, 0,0,0x00,0xdc,0x38,0xf0,0x00,0x0a,0x2
  799.         DB 0x4e, 0x7F : DW 0x073,1731 : DB 100, 0,0,0x00,0xe6,0x38,0xf0,0x00,0x0a,0x2
  800.  
  801.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  802.  
  803. ;static const struct opl4_region regions_4a[] = { /* Recorder */
  804. regions_4a:
  805.         DB 0x00, 0x7F : DW 0x0bd,4897 : DB 100, 0,0,0x00,0xec,0x30,0x70,0x00,0x09,0x1
  806.  
  807.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  808.  
  809. ;static const struct opl4_region regions_4b[] = { /* Pan Flute */
  810. regions_4b:
  811.         DB 0x00, 0x7F : DW 0x077,2359 : DB 100, 0,0,0x00,0xde,0x38,0xf0,0x00,0x09,0x3
  812.  
  813.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  814.  
  815. ;static const struct opl4_region regions_4c[] = { /* Bottle Blow */
  816. regions_4c:
  817.         DB 0x15, 0x6c : DW 0x077,2359 : DB 100, 0,0,0x00,0xc8,0x38,0xf0,0x00,0x09,0x1
  818.        
  819.         DB 0x00, 0x7f : DW 0x125,7372 : DB 100, 0,0,0x1e,0x80,0x00,0xf0,0x00,0x09,0x0
  820.  
  821.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  822.  
  823. ;static const struct opl4_region regions_4d[] = { /* Shakuhachi */
  824. regions_4d:
  825.         DB 0x00, 0x7f : DW 0x0ab,4548 : DB 100, 0,0,0x00,0xd6,0x30,0xf0,0x00,0x0a,0x3
  826.        
  827.         DB 0x15, 0x6c : DW 0x076,3716 : DB 100, 0,0,0x00,0xa2,0x28,0x70,0x00,0x09,0x2
  828.  
  829.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  830.  
  831. ;static const struct opl4_region regions_4e[] = { /* Whistle */
  832. regions_4e:
  833.         DB 0x00, 0x7f : DW 0x0aa,1731 : DB 100, 0,4,0x00,0xd2,0x2c,0x70,0x00,0x0a,0x0
  834.         DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  835.  
  836. ;static const struct opl4_region regions_4f[] = { /* Ocarina */
  837. regions_4f:
  838.         DB 0x00, 0x7f : DW 0x0aa,1731 : DB 100, 0,1,0x00,0xce,0x29,0x90,0x00,0x0a,0x1
  839.         DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  840.  
  841. ;static const struct opl4_region regions_50[] = { /* Square Lead */
  842. regions_50:
  843.         DB 0x00, 0x2a : DW 0x0cc,9853 : DB 100, 3,0,0x00,0xac,0x38,0xc6,0x21,0x09,0x0
  844.         DB 0x2b, 0x36 : DW 0x0cd,6785 : DB 100, 3,0,0x00,0xac,0x38,0xc6,0x21,0x09,0x0
  845.         DB 0x37, 0x42 : DW 0x0ca,5248 : DB 100, 3,0,0x00,0xac,0x38,0xc6,0x21,0x09,0x0
  846.         DB 0x43, 0x4e : DW 0x0cf,3713 : DB 100, 3,0,0x00,0xac,0x38,0xc6,0x21,0x09,0x0
  847.         DB 0x4f, 0x5a : DW 0x0ce,2176 : DB 100, 3,0,0x00,0xac,0x38,0xc6,0x21,0x09,0x0
  848.         DB 0x5b, 0x7f : DW 0x0cb, 640 : DB 100, 3,0,0x00,0xac,0x38,0xc6,0x21,0x09,0x0
  849.        
  850.         DB 0x00, 0x2a : DW 0x0cc,9844 : DB 100,-3,0,0x00,0xac,0x08,0xc6,0x21,0x09,0x0
  851.         DB 0x2b, 0x36 : DW 0x0cd,6776 : DB 100,-3,0,0x00,0xac,0x08,0xc6,0x21,0x09,0x0
  852.         DB 0x37, 0x42 : DW 0x0ca,5239 : DB 100,-3,0,0x00,0xac,0x08,0xc6,0x21,0x09,0x0
  853.         DB 0x43, 0x4e : DW 0x0cf,3704 : DB 100,-3,0,0x00,0xac,0x08,0xc6,0x21,0x09,0x0
  854.         DB 0x4f, 0x5a : DW 0x0ce,2167 : DB 100,-3,0,0x00,0xac,0x08,0xc6,0x21,0x09,0x0
  855.         DB 0x5b, 0x7f : DW 0x0cb, 631 : DB 100,-3,0,0x00,0xac,0x08,0xc6,0x21,0x09,0x0
  856.  
  857.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  858.  
  859. ;static const struct opl4_region regions_51[] = { /* Sawtooth Lead */
  860. regions_51:
  861.         DB 0x00, 0x27 : DW 0x118,9108 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  862.         DB 0x28, 0x2d : DW 0x119,8345 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  863.         DB 0x2e, 0x33 : DW 0x11a,7570 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  864.         DB 0x34, 0x39 : DW 0x11b,6809 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  865.         DB 0x3a, 0x3f : DW 0x11c,6047 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  866.         DB 0x40, 0x45 : DW 0x11d,5282 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  867.         DB 0x46, 0x4b : DW 0x11e,4525 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  868.         DB 0x4c, 0x51 : DW 0x11f,3746 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  869.         DB 0x52, 0x57 : DW 0x120,3017 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  870.         DB 0x58, 0x5d : DW 0x121,2171 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  871.         DB 0x5e, 0x66 : DW 0x122,1426 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  872.         DB 0x67, 0x7f : DW 0x123,-110 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  873.        
  874.         DB 0x00, 0x27 : DW 0x118,9098 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  875.         DB 0x28, 0x2d : DW 0x119,8335 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  876.         DB 0x2e, 0x33 : DW 0x11a,7560 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  877.         DB 0x34, 0x39 : DW 0x11b,6799 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  878.         DB 0x3a, 0x3f : DW 0x11c,6037 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  879.         DB 0x40, 0x45 : DW 0x11d,5272 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  880.         DB 0x46, 0x4b : DW 0x11e,4515 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  881.         DB 0x4c, 0x51 : DW 0x11f,3736 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  882.         DB 0x52, 0x57 : DW 0x120,3007 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  883.         DB 0x58, 0x5d : DW 0x121,2161 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  884.         DB 0x5e, 0x66 : DW 0x122,1416 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  885.         DB 0x67, 0x7f : DW 0x123,-120 : DB 100, 0,0,0x00,0xc8,0x30,0xf2,0x22,0x0a,0x0
  886.  
  887.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  888.  
  889. ;static const struct opl4_region regions_52[] = { /* Calliope Lead */
  890. regions_52:
  891.         DB 0x00, 0x7f : DW 0x0aa,1731 : DB 100, 0,0,0x00,0xc2,0x28,0x90,0x00,0x0a,0x2
  892.        
  893.         DB 0x15, 0x6c : DW 0x076,3716 : DB 100, 0,0,0x00,0xb6,0x28,0xb0,0x00,0x09,0x2
  894.  
  895.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  896.  
  897. ;static const struct opl4_region regions_53[] = { /* Chiffer Lead */
  898. regions_53:
  899.         DB 0x00, 0x7f : DW 0x13a,3665 : DB 100, 0,2,0x00,0xcc,0x2a,0xf0,0x10,0x09,0x1
  900.        
  901.         DB 0x01, 0x7f : DW 0x0fe,3660 : DB 100, 0,0,0x00,0xbe,0x28,0xf3,0x10,0x17,0x0
  902.  
  903.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  904.  
  905. ;static const struct opl4_region regions_54[] = { /* Charang Lead */
  906. regions_54:
  907.         DB 0x00, 0x40 : DW 0x0a5,6594 : DB 100, 0,3,0x00,0xba,0x33,0xf2,0x11,0x09,0x0
  908.         DB 0x41, 0x7f : DW 0x0a6,5433 : DB 100, 0,3,0x00,0xba,0x33,0xf2,0x11,0x09,0x0
  909.         DB 0x01, 0x27 : DW 0x118,9098 : DB 100, 0,2,0x00,0xa4,0x2a,0xf2,0x22,0x0e,0x0
  910.         DB 0x28, 0x2d : DW 0x119,8335 : DB 100, 0,2,0x00,0xa4,0x2a,0xf2,0x22,0x0e,0x0
  911.         DB 0x2e, 0x33 : DW 0x11a,7560 : DB 100, 0,2,0x00,0xa4,0x2a,0xf2,0x22,0x0e,0x0
  912.         DB 0x34, 0x39 : DW 0x11b,6799 : DB 100, 0,2,0x00,0xa4,0x2a,0xf2,0x22,0x0e,0x0
  913.         DB 0x3a, 0x3f : DW 0x11c,6037 : DB 100, 0,2,0x00,0xa4,0x2a,0xf2,0x22,0x0e,0x0
  914.         DB 0x40, 0x45 : DW 0x11d,5272 : DB 100, 0,2,0x00,0xa4,0x2a,0xf2,0x22,0x0e,0x0
  915.         DB 0x46, 0x4b : DW 0x11e,4515 : DB 100, 0,2,0x00,0xa4,0x2a,0xf2,0x22,0x0e,0x0
  916.         DB 0x4c, 0x51 : DW 0x11f,3736 : DB 100, 0,2,0x00,0xa4,0x2a,0xf2,0x22,0x0e,0x0
  917.         DB 0x52, 0x57 : DW 0x120,3007 : DB 100, 0,2,0x00,0xa4,0x2a,0xf2,0x22,0x0e,0x0
  918.         DB 0x58, 0x5d : DW 0x121,2161 : DB 100, 0,2,0x00,0xa4,0x2a,0xf2,0x22,0x0e,0x0
  919.         DB 0x5e, 0x66 : DW 0x122,1416 : DB 100, 0,2,0x00,0xa4,0x2a,0xf2,0x22,0x0e,0x0
  920.         DB 0x67, 0x7f : DW 0x123,-120 : DB 100, 0,2,0x00,0xa4,0x2a,0xf2,0x22,0x0e,0x0
  921.  
  922.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  923.  
  924. ;static const struct opl4_region regions_55[] = { /* Voice Lead */
  925. regions_55:
  926.         DB 0x00, 0x7f : DW 0x0aa,1739 : DB 100, 0,6,0x00,0x8c,0x2e,0x90,0x00,0x0a,0x0
  927.        
  928.         DB 0x15, 0x6c : DW 0x02a,3474 : DB 100, 0,1,0x00,0xd8,0x29,0xf0,0x05,0x0a,0x0
  929.  
  930.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  931.  
  932. ;static const struct opl4_region regions_56[] = { /* 5ths Lead */
  933. regions_56:
  934.         DB 0x00, 0x27 : DW 0x118,8468 : DB 100, 0,2,0x00,0xd0,0x32,0xf5,0x20,0x08,0x0
  935.         DB 0x28, 0x2d : DW 0x119,7705 : DB 100, 0,2,0x00,0xd0,0x32,0xf5,0x20,0x08,0x0
  936.         DB 0x2e, 0x33 : DW 0x11a,6930 : DB 100, 0,2,0x00,0xd0,0x32,0xf5,0x20,0x08,0x0
  937.         DB 0x34, 0x39 : DW 0x11b,6169 : DB 100, 0,2,0x00,0xd0,0x32,0xf5,0x20,0x08,0x0
  938.         DB 0x3a, 0x3f : DW 0x11c,5407 : DB 100, 0,2,0x00,0xd0,0x32,0xf5,0x20,0x08,0x0
  939.         DB 0x40, 0x45 : DW 0x11d,4642 : DB 100, 0,2,0x00,0xd0,0x32,0xf5,0x20,0x08,0x0
  940.         DB 0x46, 0x4b : DW 0x11e,3885 : DB 100, 0,2,0x00,0xd0,0x32,0xf5,0x20,0x08,0x0
  941.         DB 0x4c, 0x51 : DW 0x11f,3106 : DB 100, 0,2,0x00,0xd0,0x32,0xf5,0x20,0x08,0x0
  942.         DB 0x52, 0x57 : DW 0x120,2377 : DB 100, 0,2,0x00,0xd0,0x32,0xf5,0x20,0x08,0x0
  943.         DB 0x58, 0x5d : DW 0x121,1531 : DB 100, 0,2,0x00,0xd0,0x32,0xf5,0x20,0x08,0x0
  944.         DB 0x5e, 0x64 : DW 0x122, 786 : DB 100, 0,2,0x00,0xd0,0x32,0xf5,0x20,0x08,0x0
  945.         DB 0x65, 0x7f : DW 0x123,-750 : DB 100, 0,2,0x00,0xd0,0x32,0xf5,0x20,0x08,0x0
  946.        
  947.         DB 0x05, 0x71 : DW 0x002,4503 : DB 100, 0,1,0x00,0xb8,0x31,0xb3,0x20,0x0b,0x0
  948.  
  949.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  950.  
  951. ;static const struct opl4_region regions_57[] = { /* Bass & Lead */
  952. regions_57:
  953.         DB 0x00, 0x7f : DW 0x117,8109 : DB 100, 0,1,0x00,0xbc,0x29,0xf3,0x50,0x08,0x0
  954.        
  955.         DB 0x01, 0x27 : DW 0x118,9097 : DB 100, 0,2,0x00,0xbc,0x2a,0xf2,0x20,0x0a,0x0
  956.         DB 0x28, 0x2d : DW 0x119,8334 : DB 100, 0,2,0x00,0xbc,0x2a,0xf2,0x20,0x0a,0x0
  957.         DB 0x2e, 0x33 : DW 0x11a,7559 : DB 100, 0,2,0x00,0xbc,0x2a,0xf2,0x20,0x0a,0x0
  958.         DB 0x34, 0x39 : DW 0x11b,6798 : DB 100, 0,2,0x00,0xbc,0x2a,0xf2,0x20,0x0a,0x0
  959.         DB 0x3a, 0x3f : DW 0x11c,6036 : DB 100, 0,2,0x00,0xbc,0x2a,0xf2,0x20,0x0a,0x0
  960.         DB 0x40, 0x45 : DW 0x11d,5271 : DB 100, 0,2,0x00,0xbc,0x2a,0xf2,0x20,0x0a,0x0
  961.         DB 0x46, 0x4b : DW 0x11e,4514 : DB 100, 0,2,0x00,0xbc,0x2a,0xf2,0x20,0x0a,0x0
  962.         DB 0x4c, 0x51 : DW 0x11f,3735 : DB 100, 0,2,0x00,0xbc,0x2a,0xf2,0x20,0x0a,0x0
  963.         DB 0x52, 0x57 : DW 0x120,3006 : DB 100, 0,2,0x00,0xbc,0x2a,0xf2,0x20,0x0a,0x0
  964.         DB 0x58, 0x5d : DW 0x121,2160 : DB 100, 0,2,0x00,0xbc,0x2a,0xf2,0x20,0x0a,0x0
  965.         DB 0x5e, 0x66 : DW 0x122,1415 : DB 100, 0,2,0x00,0xbc,0x2a,0xf2,0x20,0x0a,0x0
  966.         DB 0x67, 0x7f : DW 0x123,-121 : DB 100, 0,2,0x00,0xbc,0x2a,0xf2,0x20,0x0a,0x0
  967.  
  968.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  969.  
  970. ;static const struct opl4_region regions_58[] = { /* New Age Pad */
  971. regions_58:
  972.         DB 0x00, 0x7F : DW 0x002,4501 : DB 100, 0,4,0x00,0xa4,0x24,0x80,0x01,0x05,0x0
  973.        
  974.         DB 0x00, 0x7F : DW 0x0f3,4253 : DB 100, 0,3,0x00,0x8c,0x23,0xa2,0x14,0x06,0x1
  975.  
  976.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  977.  
  978. ;static const struct opl4_region regions_59[] = { /* Warm Pad */
  979. regions_59:
  980.         DB 0x00, 0x7F : DW 0x04e,5306 : DB 100, 2,2,0x00,0x92,0x2a,0x34,0x23,0x05,0x2
  981.        
  982.         DB 0x00, 0x7F : DW 0x029,3575 : DB 100,-2,2,0x00,0xbe,0x22,0x31,0x23,0x06,0x0
  983.  
  984.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  985.  
  986. ;static const struct opl4_region regions_5a[] = { /* Polysynth Pad */
  987. regions_5a:
  988.         DB 0x01, 0x27 : DW 0x118,9111 : DB 100, 0,3,0x00,0xae,0x23,0xf2,0x20,0x07,0x1
  989.         DB 0x28, 0x2d : DW 0x119,8348 : DB 100, 0,3,0x00,0xae,0x23,0xf2,0x20,0x07,0x1
  990.         DB 0x2e, 0x33 : DW 0x11a,7573 : DB 100, 0,3,0x00,0xae,0x23,0xf2,0x20,0x07,0x1
  991.         DB 0x34, 0x39 : DW 0x11b,6812 : DB 100, 0,3,0x00,0xae,0x23,0xf2,0x20,0x07,0x1
  992.         DB 0x3a, 0x3f : DW 0x11c,6050 : DB 100, 0,3,0x00,0xae,0x23,0xf2,0x20,0x07,0x1
  993.         DB 0x40, 0x45 : DW 0x11d,5285 : DB 100, 0,3,0x00,0xae,0x23,0xf2,0x20,0x07,0x1
  994.         DB 0x46, 0x4b : DW 0x11e,4528 : DB 100, 0,3,0x00,0xae,0x23,0xf2,0x20,0x07,0x1
  995.         DB 0x4c, 0x51 : DW 0x11f,3749 : DB 100, 0,3,0x00,0xae,0x23,0xf2,0x20,0x07,0x1
  996.         DB 0x52, 0x57 : DW 0x120,3020 : DB 100, 0,3,0x00,0xae,0x23,0xf2,0x20,0x07,0x1
  997.         DB 0x58, 0x5d : DW 0x121,2174 : DB 100, 0,3,0x00,0xae,0x23,0xf2,0x20,0x07,0x1
  998.         DB 0x5e, 0x66 : DW 0x122,1429 : DB 100, 0,3,0x00,0xae,0x23,0xf2,0x20,0x07,0x1
  999.         DB 0x67, 0x7f : DW 0x123,-107 : DB 100, 0,3,0x00,0xae,0x23,0xf2,0x20,0x07,0x1
  1000.        
  1001.         DB 0x00, 0x7f : DW 0x124,4024 : DB 100, 0,2,0x00,0xae,0x22,0xe5,0x20,0x08,0x0
  1002.  
  1003.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1004.  
  1005. ;static const struct opl4_region regions_5b[] = { /* Choir Pad */
  1006. regions_5b:
  1007.         DB 0x00, 0x3a : DW 0x018,5010 : DB 100, 0,5,0x00,0xb0,0x25,0x70,0x00,0x06,0x0
  1008.         DB 0x3b, 0x40 : DW 0x019,4370 : DB 100, 0,5,0x00,0xb0,0x25,0x70,0x00,0x06,0x0
  1009.         DB 0x41, 0x47 : DW 0x01a,3478 : DB 100, 0,5,0x00,0xb0,0x25,0x70,0x00,0x06,0x0
  1010.         DB 0x48, 0x6c : DW 0x01b,2197 : DB 100, 0,5,0x00,0xb0,0x25,0x70,0x00,0x06,0x0
  1011.        
  1012.         DB 0x00, 0x7F : DW 0x02a,3482 : DB 100, 0,4,0x00,0x98,0x24,0x65,0x21,0x06,0x0
  1013.  
  1014.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1015.  
  1016. ;static const struct opl4_region regions_5c[] = { /* Bowed Pad */
  1017. regions_5c:
  1018.         DB 0x15, 0x6c : DW 0x101,4790 : DB 100,-1,1,0x00,0xbe,0x19,0x44,0x14,0x16,0x0
  1019.        
  1020.         DB 0x00, 0x7f : DW 0x0aa,1720 : DB 100, 1,1,0x00,0x94,0x19,0x40,0x00,0x06,0x0
  1021.  
  1022.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1023.  
  1024. ;static const struct opl4_region regions_5d[] = { /* Metallic Pad */
  1025. regions_5d:
  1026.         DB 0x15, 0x31 : DW 0x00c,6943 : DB 100, 0,2,0x00,0xa0,0x0a,0x60,0x03,0x06,0x0
  1027.         DB 0x32, 0x38 : DW 0x00d,5416 : DB 100, 0,2,0x00,0xa0,0x0a,0x60,0x03,0x06,0x0
  1028.         DB 0x39, 0x47 : DW 0x00e,4385 : DB 100, 0,2,0x00,0xa0,0x0a,0x60,0x03,0x06,0x0
  1029.         DB 0x48, 0x6c : DW 0x00f,2849 : DB 100, 0,2,0x00,0xa0,0x0a,0x60,0x03,0x06,0x0
  1030.        
  1031.         DB 0x00, 0x7f : DW 0x03f,4224 : DB 100, 0,1,0x00,0x9c,0x31,0x65,0x16,0x07,0x0
  1032.  
  1033.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1034.  
  1035. ;static const struct opl4_region regions_5e[] = { /* Halo Pad */
  1036. regions_5e:
  1037.         DB 0x00, 0x7f : DW 0x124,4038 : DB 100, 0,2,0x00,0xa6,0x1a,0x85,0x23,0x08,0x0
  1038.        
  1039.         DB 0x15, 0x6c : DW 0x02a,3471 : DB 100, 0,3,0x00,0xc0,0x1b,0xc0,0x05,0x06,0x0
  1040.  
  1041.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1042.  
  1043. ;static const struct opl4_region regions_5f[] = { /* Sweep Pad */
  1044. regions_5f:
  1045.         DB 0x00, 0x27 : DW 0x0d3,9100 : DB 100, 0,1,0x00,0xce,0x19,0x13,0x11,0x06,0x0
  1046.         DB 0x28, 0x2d : DW 0x0da,8341 : DB 100, 0,1,0x00,0xce,0x19,0x13,0x11,0x06,0x0
  1047.         DB 0x2e, 0x33 : DW 0x0d4,7564 : DB 100, 0,1,0x00,0xce,0x19,0x13,0x11,0x06,0x0
  1048.         DB 0x34, 0x39 : DW 0x0db,6791 : DB 100, 0,1,0x00,0xce,0x19,0x13,0x11,0x06,0x0
  1049.         DB 0x3a, 0x3f : DW 0x0d5,6048 : DB 100, 0,1,0x00,0xce,0x19,0x13,0x11,0x06,0x0
  1050.         DB 0x40, 0x45 : DW 0x0dc,5263 : DB 100, 0,1,0x00,0xce,0x19,0x13,0x11,0x06,0x0
  1051.         DB 0x46, 0x4b : DW 0x0d6,4499 : DB 100, 0,1,0x00,0xce,0x19,0x13,0x11,0x06,0x0
  1052.         DB 0x4c, 0x51 : DW 0x0dd,3747 : DB 100, 0,1,0x00,0xce,0x19,0x13,0x11,0x06,0x0
  1053.         DB 0x52, 0x57 : DW 0x0d7,3018 : DB 100, 0,1,0x00,0xce,0x19,0x13,0x11,0x06,0x0
  1054.         DB 0x58, 0x5d : DW 0x0de,2173 : DB 100, 0,1,0x00,0xce,0x19,0x13,0x11,0x06,0x0
  1055.         DB 0x5e, 0x63 : DW 0x0d8,1427 : DB 100, 0,1,0x00,0xce,0x19,0x13,0x11,0x06,0x0
  1056.         DB 0x64, 0x7f : DW 0x0d9,-109 : DB 100, 0,1,0x00,0xce,0x19,0x13,0x11,0x06,0x0
  1057.        
  1058.         DB 0x00, 0x27 : DW 0x0d3,9088 : DB 100, 0,0,0x00,0xce,0x18,0x13,0x11,0x06,0x0
  1059.         DB 0x28, 0x2d : DW 0x0da,8329 : DB 100, 0,0,0x00,0xce,0x18,0x13,0x11,0x06,0x0
  1060.         DB 0x2e, 0x33 : DW 0x0d4,7552 : DB 100, 0,0,0x00,0xce,0x18,0x13,0x11,0x06,0x0
  1061.         DB 0x34, 0x39 : DW 0x0db,6779 : DB 100, 0,0,0x00,0xce,0x18,0x13,0x11,0x06,0x0
  1062.         DB 0x3a, 0x3f : DW 0x0d5,6036 : DB 100, 0,0,0x00,0xce,0x18,0x13,0x11,0x06,0x0
  1063.         DB 0x40, 0x45 : DW 0x0dc,5251 : DB 100, 0,0,0x00,0xce,0x18,0x13,0x11,0x06,0x0
  1064.         DB 0x46, 0x4b : DW 0x0d6,4487 : DB 100, 0,0,0x00,0xce,0x18,0x13,0x11,0x06,0x0
  1065.         DB 0x4c, 0x51 : DW 0x0dd,3735 : DB 100, 0,0,0x00,0xce,0x18,0x13,0x11,0x06,0x0
  1066.         DB 0x52, 0x57 : DW 0x0d7,3006 : DB 100, 0,0,0x00,0xce,0x18,0x13,0x11,0x06,0x0
  1067.         DB 0x58, 0x5d : DW 0x0de,2161 : DB 100, 0,0,0x00,0xce,0x18,0x13,0x11,0x06,0x0
  1068.         DB 0x5e, 0x63 : DW 0x0d8,1415 : DB 100, 0,0,0x00,0xce,0x18,0x13,0x11,0x06,0x0
  1069.         DB 0x64, 0x7f : DW 0x0d9,-121 : DB 100, 0,0,0x00,0xce,0x18,0x13,0x11,0x06,0x0
  1070.  
  1071.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1072.  
  1073. /*
  1074. struct opl4_sound {
  1075.         u16 tone;
  1076.         s16 pitch_offset;
  1077.  
  1078.         u8 key_scaling;
  1079.         s8 panpot;
  1080.         u8 vibrato;
  1081.  
  1082.         u8 tone_attenuate;
  1083.         u8 volume_factor;
  1084.  
  1085.         u8 reg_lfo_vibrato;
  1086.         u8 reg_attack_decay1;
  1087.         u8 reg_level_decay2;
  1088.  
  1089.         u8 reg_release_correction;
  1090.         u8 reg_tremolo;
  1091. };
  1092. */
  1093. ;static const struct opl4_region regions_60[] = { /* Ice Rain */
  1094. regions_60:
  1095.         DB 0x01, 0x7f : DW 0x04e,5298 : DB 100, 0,2,   0x00,0xcc,   0x22,0xa3,0x63,   0x17,0x0
  1096.        
  1097.         DB 0x00, 0x7f : DW 0x143,5586 : DB 20 , 0,2,   0x00,0x6e,   0x2a,0xf0,0x05,   0x05,0x0
  1098.  
  1099.  
  1100.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1101.  
  1102. ;static const struct opl4_region regions_61[] = { /* Soundtrack */
  1103. regions_61:
  1104.         DB 0x00, 0x7F : DW 0x002,4501 : DB 100, 0,2,0x00,0xb6,0x2a,0x60,0x01,0x05,0x0
  1105.  
  1106.         DB 0x00, 0x7F : DW 0x0f3,1160 : DB 100, 0,5,0x00,0xa8,0x2d,0x52,0x14,0x06,0x2
  1107.  
  1108.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1109.  
  1110. ;static const struct opl4_region regions_62[] = { /* Crystal */
  1111. regions_62:
  1112.         DB 0x00, 0x7F : DW 0x0f3,1826 : DB 100, 0,3,0x00,0xb8,0x33,0xf6,0x25,0x25,0x0
  1113.        
  1114.         DB 0x00, 0x2c : DW 0x06d,7454 : DB 100, 0,3,0x00,0xac,0x3b,0x85,0x24,0x06,0x0
  1115.         DB 0x2d, 0x36 : DW 0x06e,5925 : DB 100, 0,3,0x00,0xac,0x3b,0x85,0x24,0x06,0x0
  1116.         DB 0x37, 0x7F : DW 0x06f,4403 : DB 100, 0,3,0x09,0xac,0x3b,0x85,0x24,0x06,0x0
  1117.  
  1118.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1119.  
  1120. ;static const struct opl4_region regions_63[] = { /* Atmosphere */
  1121. regions_63:
  1122.         DB 0x00, 0x7F : DW 0x002,4509 : DB 100, 0,2,0x00,0xc8,0x32,0x73,0x22,0x06,0x1
  1123.        
  1124.         DB 0x15, 0x2f : DW 0x0b3,6964 : DB 100, 0,2,0x05,0xc2,0x32,0xf5,0x34,0x07,0x2
  1125.         DB 0x30, 0x36 : DW 0x0b7,5567 : DB 100, 0,2,0x0c,0xc2,0x32,0xf5,0x34,0x07,0x2
  1126.         DB 0x37, 0x3c : DW 0x0b5,4653 : DB 100, 0,2,0x00,0xc2,0x32,0xf6,0x34,0x07,0x2
  1127.         DB 0x3d, 0x43 : DW 0x0b4,3892 : DB 100, 0,2,0x00,0xc2,0x32,0xf6,0x35,0x07,0x2
  1128.         DB 0x44, 0x60 : DW 0x0b6,2723 : DB 100, 0,2,0x00,0xc2,0x32,0xf6,0x35,0x17,0x2
  1129.  
  1130.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1131.  
  1132. ;static const struct opl4_region regions_64[] = { /* Brightness */
  1133. regions_64:
  1134.         DB 0x00, 0x7f : DW 0x137,5285 : DB 100, 0,2,0x00,0xbe,0x2a,0xa5,0x18,0x08,0x0
  1135.        
  1136.         DB 0x15, 0x6c : DW 0x02a,3481 : DB 100, 0,1,0x00,0xc8,0x29,0x80,0x05,0x05,0x0
  1137.  
  1138.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1139.  
  1140. ;static const struct opl4_region regions_65[] = { /* Goblins */
  1141. regions_65:
  1142.         DB 0x00, 0x7F : DW 0x002,4501 : DB 100,-1,2,0x00,0xca,0x2a,0x40,0x01,0x05,0x0
  1143.        
  1144.         DB 0x00, 0x7F : DW 0x009,9679 : DB 20, 1,4,0x00,0x3c,0x0c,0x22,0x11,0x06,0x0
  1145.  
  1146.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1147.  
  1148. ;static const struct opl4_region regions_66[] = { /* Echoes */
  1149. regions_66:
  1150.         DB 0x15, 0x6c : DW 0x02a,3487 : DB 100, 0,3,0x00,0xae,0x2b,0xf5,0x21,0x06,0x0
  1151.        
  1152.         DB 0x00, 0x7f : DW 0x124,4027 : DB 100, 0,3,0x00,0xae,0x2b,0x85,0x23,0x07,0x0
  1153.  
  1154.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1155.  
  1156. ;static const struct opl4_region regions_67[] = { /* Sci-Fi */
  1157. regions_67:
  1158.         DB 0x00, 0x31 : DW 0x00c,6940 : DB 100, 0,3,0x00,0xc8,0x2b,0x90,0x05,0x06,0x3
  1159.         DB 0x32, 0x38 : DW 0x00d,5413 : DB 100, 0,3,0x00,0xc8,0x2b,0x90,0x05,0x06,0x3
  1160.         DB 0x39, 0x47 : DW 0x00e,4382 : DB 100, 0,3,0x00,0xc8,0x2b,0x90,0x05,0x06,0x3
  1161.         DB 0x48, 0x7F : DW 0x00f,2846 : DB 100, 0,3,0x00,0xc8,0x2b,0x90,0x05,0x06,0x3
  1162.        
  1163.         DB 0x00, 0x7F : DW 0x002,4498 : DB 100, 0,2,0x00,0xd4,0x22,0x80,0x01,0x05,0x0
  1164.  
  1165.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1166.  
  1167. ;static const struct opl4_region regions_68[] = { /* Sitar */
  1168. regions_68:
  1169.         DB 0x00, 0x7f : DW 0x10f,4408 : DB 100, 0,2,0x00,0xc4,0x32,0xf4,0x15,0x16,0x1
  1170.  
  1171.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1172.  
  1173. ;static const struct opl4_region regions_69[] = { /* Banjo */
  1174. regions_69:
  1175.         DB 0x00, 0x34 : DW 0x013,5685 : DB 100, 0,0,0x00,0xdc,0x38,0xf6,0x15,0x09,0x0
  1176.         DB 0x35, 0x38 : DW 0x014,5009 : DB 100, 0,0,0x00,0xdc,0x38,0xf6,0x15,0x09,0x0
  1177.         DB 0x39, 0x3c : DW 0x012,4520 : DB 100, 0,0,0x00,0xdc,0x38,0xf6,0x15,0x09,0x0
  1178.         DB 0x3d, 0x44 : DW 0x015,3622 : DB 100, 0,0,0x00,0xdc,0x38,0xf6,0x15,0x09,0x0
  1179.         DB 0x45, 0x4c : DW 0x017,2661 : DB 100, 0,0,0x00,0xdc,0x38,0xf6,0x15,0x09,0x0
  1180.         DB 0x4d, 0x7F : DW 0x016,1632 : DB 100, 0,0,0x00,0xdc,0x38,0xf6,0x15,0x09,0x0
  1181.  
  1182.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1183.  
  1184. ;static const struct opl4_region regions_6a[] = { /* Shamisen */
  1185. regions_6a:
  1186.         DB 0x00, 0x7F : DW 0x10e,3273 : DB 100, 0,0,0x00,0xc0,0x28,0xf7,0x76,0x08,0x0
  1187.  
  1188.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1189.  
  1190. ;static const struct opl4_region regions_6b[] = { /* Koto */
  1191. regions_6b:
  1192.         DB 0x00, 0x7f : DW 0x0a9,4033 : DB 100, 0,0,0x00,0xc6,0x20,0xf0,0x06,0x07,0x0
  1193.  
  1194.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1195.  
  1196. ;static const struct opl4_region regions_6c[] = { /* Kalimba */
  1197. regions_6c:
  1198.         DB 0x00, 0x7f : DW 0x137,3749 : DB 100, 0,0,0x00,0xce,0x38,0xf5,0x18,0x08,0x0
  1199.  
  1200.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1201.  
  1202. ;static const struct opl4_region regions_6d[] = { /* Bagpipe */
  1203. regions_6d:
  1204.         DB 0x00, 0x39 : DW 0x0a4,7683 : DB 100, 0,4,0x00,0xc0,0x1c,0xf0,0x00,0x09,0x0
  1205.        
  1206.         DB 0x00, 0x39 : DW 0x0a7,7680 : DB 100, 0,1,0x00,0xaa,0x19,0xf0,0x00,0x09,0x0
  1207.         DB 0x3a, 0x7F : DW 0x0a8,3697 : DB 100, 0,1,0x00,0xaa,0x19,0xf0,0x00,0x09,0x0
  1208.  
  1209.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1210.  
  1211. ;static const struct opl4_region regions_6e[] = { /* Fiddle */
  1212. regions_6e:
  1213.         DB 0x00, 0x3a : DW 0x105,5158 : DB 100, 0,1,0x00,0xca,0x31,0xf3,0x20,0x09,0x0
  1214.         DB 0x3b, 0x3f : DW 0x102,4754 : DB 100, 0,1,0x00,0xca,0x31,0xf3,0x20,0x09,0x0
  1215.         DB 0x40, 0x41 : DW 0x106,4132 : DB 100, 0,1,0x00,0xca,0x31,0xf3,0x20,0x09,0x0
  1216.         DB 0x42, 0x44 : DW 0x107,4033 : DB 100, 0,1,0x00,0xca,0x31,0xf3,0x20,0x09,0x0
  1217.         DB 0x45, 0x47 : DW 0x108,3580 : DB 100, 0,1,0x00,0xca,0x31,0xf3,0x20,0x09,0x0
  1218.         DB 0x48, 0x4a : DW 0x10a,2957 : DB 100, 0,1,0x00,0xca,0x31,0xf3,0x20,0x09,0x0
  1219.         DB 0x4b, 0x4c : DW 0x10b,2724 : DB 100, 0,1,0x00,0xca,0x31,0xf3,0x20,0x09,0x0
  1220.         DB 0x4d, 0x4e : DW 0x10c,2530 : DB 100, 0,1,0x00,0xca,0x31,0xf3,0x20,0x09,0x0
  1221.         DB 0x4f, 0x51 : DW 0x10d,2166 : DB 100, 0,1,0x00,0xca,0x31,0xf3,0x20,0x09,0x0
  1222.         DB 0x52, 0x7F : DW 0x109,1825 : DB 100, 0,1,0x00,0xca,0x31,0xf3,0x20,0x09,0x0
  1223.  
  1224.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1225.  
  1226. ;static const struct opl4_region regions_6f[] = { /* Shanai */
  1227. regions_6f:
  1228.         DB 0x00, 0x7F : DW 0x041,6946 : DB 100, 0,1,0x00,0xc4,0x31,0x95,0x20,0x09,0x0
  1229.  
  1230.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1231.  
  1232. ;static const struct opl4_region regions_70[] = { /* Tinkle Bell */
  1233. regions_70:
  1234.         DB 0x15, 0x73 : DW 0x0f3,1821 : DB 100, 0,3,0x00,0xc8,0x3b,0xd6,0x25,0x25,0x0
  1235.        
  1236.         DB 0x00, 0x7f : DW 0x137,5669 : DB 100, 0,3,0x00,0x66,0x3b,0xf5,0x18,0x08,0x0
  1237.  
  1238.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1239.  
  1240. ;static const struct opl4_region regions_71[] = { /* Agogo */
  1241. regions_71:
  1242.         DB 0x00, 0x7F : DW 0x00b,2474 : DB 100, 0,0,0x00,0xd2,0x38,0xf0,0x00,0x09,0x0
  1243.  
  1244.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1245.  
  1246. ;static const struct opl4_region regions_72[] = { /* Steel Drums */
  1247. regions_72:
  1248.         DB 0x00, 0x7f : DW 0x0fe,3670 : DB 100, 0,0,0x00,0xca,0x38,0xf3,0x06,0x17,0x1
  1249.        
  1250.         DB 0x15, 0x6c : DW 0x100,9602 : DB 100, 0,0,0x00,0x54,0x38,0xb0,0x05,0x16,0x1
  1251.  
  1252.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1253.  
  1254. ;static const struct opl4_region regions_73[] = { /* Woodblock */
  1255. regions_73:
  1256.         DB 0x00, 0x7F : DW 0x02c,2963 : DB 50, 0,0,0x07,0xd4,0x00,0xf0,0x00,0x09,0x0
  1257.  
  1258.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1259.  
  1260. ;static const struct opl4_region regions_74[] = { /* Taiko Drum */
  1261. regions_74:
  1262.         DB 0x00, 0x7F : DW 0x03e,1194 : DB 50, 0,0,0x00,0xaa,0x38,0xf0,0x04,0x04,0x0
  1263.  
  1264.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1265.  
  1266. ;static const struct opl4_region regions_75[] = { /* Melodic Tom */
  1267. regions_75:
  1268.         DB 0x00, 0x7F : DW 0x0c7,6418 :  DB 50, 0,0,0x00,0xe4,0x38,0xf0,0x05,0x01,0x0
  1269.  
  1270.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1271.  
  1272. ;static const struct opl4_region regions_76[] = { /* Synth Drum */
  1273. regions_76:
  1274.         DB 0x00, 0x7F : DW 0x026,3898 : DB  50, 0,0,0x00,0xd0,0x38,0xf0,0x04,0x04,0x0
  1275.  
  1276.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1277.  
  1278. ;static const struct opl4_region regions_77[] = { /* Reverse Cymbal */
  1279. regions_77:
  1280.         DB 0x00, 0x7F : DW 0x031,4138: DB 50, 0,0,0x00,0xfe,0x38,0x3a,0xf0,0x09,0x0
  1281.  
  1282.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1283.  
  1284. ;static const struct opl4_region regions_78[] = { /* Guitar Fret Noise */
  1285. regions_78:
  1286.         DB 0x00, 0x7F : DW 0x138,5266 : DB 100, 0,0,0x00,0xa0,0x38,0xf0,0x00,0x09,0x0
  1287.  
  1288.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1289.  
  1290. ;static const struct opl4_region regions_79[] = { /* Breath Noise */
  1291. regions_79:
  1292.         DB 0x00, 0x7f : DW 0x125,4269 : DB 100, 0,0,0x1e,0xd0,0x38,0xf0,0x00,0x09,0x0
  1293.  
  1294.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1295.  
  1296. ;static const struct opl4_region regions_7a[] = { /* Seashore */
  1297. regions_7a:
  1298.         DB 0x15, 0x6c : DW 0x008,2965: DB 20,-2,0,0x00,0xfe,0x00,0x20,0x03,0x04,0x0
  1299.         DB 0x00, 0x7f : DW 0x037,4394: DB 20, 2,0,0x14,0xfe,0x00,0x20,0x04,0x05,0x0
  1300.  
  1301.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1302.  
  1303. ;static const struct opl4_region regions_7b[] = { /* Bird Tweet */
  1304. regions_7b:
  1305.         DB 0x00, 0x7F : DW 0x009,8078 : DB  5,-4,7,0x00,0xc2,0x0f,0x22,0x12,0x07,0x0
  1306.         DB 0x00, 0x7F : DW 0x009,3583 : DB  5, 4,5,0x00,0xae,0x15,0x72,0x12,0x07,0x0
  1307.  
  1308.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1309.  
  1310. ;static const struct opl4_region regions_7c[] = { /* Telephone Ring */
  1311. regions_7c:
  1312.         DB 0x00, 0x7F : DW 0x003,3602 : DB 10, 0,0,0x00,0xce,0x00,0xf0,0x00,0x0f,0x0
  1313.    
  1314.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1315.  
  1316. ;static const struct opl4_region regions_7d[] = { /* Helicopter */
  1317. regions_7d:
  1318.         DB 0x0c, 0x7f : DW 0x001,2965: DB 10,-2,0,0x00,0xe0,0x08,0x30,0x01,0x07,0x0
  1319.        
  1320.         DB 0x00, 0x7f : DW 0x037,4394: DB 10, 2,0,0x44,0x76,0x00,0x30,0x01,0x07,0x0
  1321.  
  1322.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1323.  
  1324. ;static const struct opl4_region regions_7e[] = { /* Applause */
  1325. regions_7e:
  1326.         DB 0x00, 0x7F : DW 0x036,8273: DB 20,-6,7,0x00,0xc4,0x0f,0x70,0x01,0x05,0x0    
  1327.         DB 0x00, 0x7F : DW 0x036,8115: DB  5, 6,7,0x00,0xc6,0x07,0x70,0x01,0x05,0x0
  1328.  
  1329.         DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1330.  
  1331. ;static const struct opl4_region regions_7f[] = { /* Gun Shot */
  1332. regions_7f:
  1333.         DB 0x00, 0x7F : DW 0x139,2858: DB 20, 0,0,0x00,0xbe,0x38,0xf0,0x03,0x00,0x0
  1334.  
  1335.         DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1336.  
  1337. ;static const struct opl4_region regions_drums[] = {
  1338. regions_drums:
  1339. ;       DB 0x18, 0x18 : DW 0x0cb,6397 : DB 100, 3,0,0x00,0xf4,0x38,0xc9,0x1c,0x0c,0x0
  1340. ;       DB 0x19, 0x19 : DW 0x0c4,3714 : DB 100, 0,0,0x00,0xe0,0x00,0x97,0x19,0x09,0x0
  1341. ;       DB 0x1a, 0x1a : DW 0x0c4,3519 : DB 100, 0,0,0x00,0xea,0x00,0x61,0x01,0x07,0x0
  1342. ;       DB 0x1b, 0x1b : DW 0x0c4,3586 : DB 100, 0,0,0x00,0xea,0x00,0xf7,0x19,0x09,0x0
  1343. ;       DB 0x1c, 0x1c : DW 0x0c4,3586 : DB 100, 0,0,0x00,0xea,0x00,0x81,0x01,0x07,0x0
  1344. ;       DB 0x1e, 0x1e : DW 0x0c3,4783 : DB 100, 0,0,0x00,0xea,0x00,0xf0,0x00,0x09,0x0
  1345. ;       DB 0x1f, 0x1f : DW 0x0d1,4042 : DB 100, 0,0,0x00,0xd6,0x00,0xf0,0x05,0x05,0x0
  1346. ;       DB 0x20, 0x20 : DW 0x0d2,5943 : DB 100, 0,0,0x00,0xcc,0x00,0xf0,0x00,0x09,0x0
  1347. ;       DB 0x21, 0x21 : DW 0x011,3842 : DB 100, 0,0,0x00,0xea,0x00,0xf0,0x16,0x06,0x0
  1348.         DB 0x23, 0x23 : DW 0x011,4098 : DB 100, 0,0,0x00,0xea,0x00,0xf0,0x16,0x06,0x0 ;Acoustic Bass Drum
  1349.         DB 0x24, 0x24 : DW 0x011,4370 : DB 100, 0,0,0x00,0xea,0x00,0xf0,0x00,0x06,0x0 ;bass drum1
  1350.         DB 0x25, 0x25 : DW 0x0d2,4404 : DB 100, 0,0,0x00,0xd6,0x00,0xf0,0x00,0x06,0x0 ;Side Stick
  1351.         DB 0x26, 0x26 : DW 0x0d1,4298 : DB 100, 0,0,0x00,0xd6,0x00,0xf0,0x05,0x05,0x0 ;Acoustic Snare
  1352.         DB 0x27, 0x27 : DW 0x00a,4403 : DB 100,-1,0,0x00,0xd6,0x00,0xf0,0x00,0x09,0x0 ;Hand Clap
  1353.         DB 0x28, 0x28 : DW 0x0d1,4554 : DB 100, 0,0,0x00,0xdc,0x00,0xf0,0x07,0x07,0x0 ;Electric Snare
  1354.         DB 0x29, 0x29 : DW 0x0c8,4242 : DB 100,-4,0,0x00,0xd6,0x00,0xf6,0x16,0x06,0x0 ;Low Floor Tom
  1355.         DB 0x2a, 0x2a : DW 0x079,6160 : DB 100, 2,0,0x00,0xe0,0x00,0xf5,0x19,0x09,0x0 ;Closed Hi Hat
  1356.         DB 0x2b, 0x2b : DW 0x0c8,4626 : DB 100,-3,0,0x00,0xd6,0x00,0xf6,0x16,0x06,0x0 ;High Floor Tom
  1357.         DB 0x2c, 0x2c : DW 0x07b,6039 : DB 100, 2,0,0x00,0xd6,0x00,0xf0,0x00,0x09,0x0 ;pedal hi-hat
  1358.         DB 0x2d, 0x2d : DW 0x0c8,5394 : DB 100,-2,0,0x00,0xd6,0x00,0xf6,0x16,0x06,0x0 ;Low Tom    
  1359.         DB 0x2e, 0x2e : DW 0x07a,5690 : DB 100, 2,0,0x00,0xd6,0x00,0xf0,0x00,0x05,0x0 ;Open Hi-Hat
  1360.         DB 0x2f, 0x2f : DW 0x0c7,5185 : DB 100, 2,0,0x00,0xe0,0x00,0xf6,0x17,0x07,0x0 ;Low-Mid Tom
  1361.         DB 0x30, 0x30 : DW 0x0c7,5650 : DB 100, 3,0,0x00,0xe0,0x00,0xf6,0x17,0x07,0x0
  1362.         DB 0x31, 0x31 : DW 0x031,4395 : DB 100, 2,0,0x00,0xea,0x00,0xf0,0x05,0x05,0x0
  1363.         DB 0x32, 0x32 : DW 0x0c7,6162 : DB 100, 4,0,0x00,0xe0,0x00,0xf6,0x17,0x07,0x0
  1364.         DB 0x33, 0x33 : DW 0x02e,4391 : DB 100,-2,0,0x00,0xea,0x00,0xf0,0x05,0x05,0x0
  1365.         DB 0x34, 0x34 : DW 0x07a,3009 : DB 100,-2,0,0x00,0xea,0x00,0xf2,0x15,0x05,0x0
  1366.         DB 0x35, 0x35 : DW 0x021,4522 : DB 100,-3,0,0x00,0xd6,0x00,0xf0,0x05,0x05,0x0
  1367.         DB 0x36, 0x36 : DW 0x025,5163 : DB 100, 1,0,0x00,0xe0,0x00,0xf0,0x00,0x09,0x0
  1368.         DB 0x37, 0x37 : DW 0x031,5287 : DB 100,-1,0,0x00,0xea,0x00,0xf5,0x16,0x06,0x0
  1369.         DB 0x38, 0x38 : DW 0x01d,4395 : DB 100, 2,0,0x00,0xe0,0x00,0xf0,0x00,0x09,0x0
  1370.         DB 0x39, 0x39 : DW 0x031,4647 : DB 100,-2,0,0x00,0xea,0x00,0xf4,0x16,0x06,0x0
  1371.         DB 0x3a, 0x3a : DW 0x09d,4426 : DB 100,-4,0,0x00,0xe0,0x00,0xf4,0x17,0x07,0x0 ;Vibraslap
  1372.         DB 0x3b, 0x3b : DW 0x02e,4659 : DB 100,-2,0,0x00,0xea,0x00,0xf0,0x06,0x06,0x0
  1373.         DB 0x3c, 0x3c : DW 0x01c,4769 : DB 100, 4,0,0x00,0xea,0x00,0xf0,0x00,0x09,0x0
  1374.         DB 0x3d, 0x3d : DW 0x01c,4611 : DB 100, 4,0,0x00,0xea,0x00,0xf0,0x00,0x09,0x0
  1375.         DB 0x3e, 0x3e : DW 0x01e,4402 : DB 100,-3,0,0x00,0xea,0x00,0xf0,0x00,0x09,0x0
  1376.         DB 0x3f, 0x3f : DW 0x01f,4387 : DB 100,-3,0,0x00,0xea,0x00,0xf0,0x00,0x09,0x0
  1377.         DB 0x40, 0x40 : DW 0x01f,3983 : DB 100,-2,0,0x00,0xea,0x00,0xf0,0x00,0x09,0x0 ;Low Conga
  1378.         DB 0x41, 0x41 : DW 0x09c,4526 : DB 100, 2,0,0x00,0xea,0x00,0xf0,0x00,0x09,0x0
  1379.         DB 0x42, 0x42 : DW 0x09c,4016 : DB 100, 2,0,0x00,0xea,0x00,0xf0,0x00,0x09,0x0
  1380.         DB 0x43, 0x43 : DW 0x00b,4739 : DB 100,-4,0,0x00,0xea,0x00,0xf0,0x00,0x09,0x0
  1381.         DB 0x44, 0x44 : DW 0x00b,4179 : DB 100,-4,0,0x00,0xea,0x00,0xf0,0x00,0x09,0x0
  1382.         DB 0x45, 0x45 : DW 0x02f,4787 : DB 100,-4,0,0x00,0xd6,0x00,0xf0,0x00,0x09,0x0 ;Cabasa
  1383.         DB 0x46, 0x46 : DW 0x030,4665 : DB 100,-4,0,0x00,0xd6,0x00,0xf0,0x00,0x09,0x0
  1384.         DB 0x47, 0x47 : DW 0x144,4519 : DB 100, 4,0,0x00,0xea,0x00,0xf0,0x00,0x0b,0x0
  1385.         DB 0x48, 0x48 : DW 0x144,4111 : DB 100, 4,0,0x00,0xea,0x00,0xf0,0x00,0x0b,0x0
  1386.         DB 0x49, 0x49 : DW 0x024,6408 : DB 100, 3,0,0x00,0xe0,0x00,0xf0,0x00,0x09,0x0
  1387.         DB 0x4a, 0x4a : DW 0x024,4144 : DB 100, 3,0,0x00,0xcc,0x00,0xf0,0x00,0x09,0x0
  1388.         DB 0x4b, 0x4b : DW 0x020,4001 : DB 100, 2,0,0x00,0xe0,0x00,0xf0,0x00,0x09,0x0 ;claves
  1389.         DB 0x4c, 0x4c : DW 0x02c,4402 : DB 100, 4,0,0x00,0xea,0x00,0xf0,0x00,0x09,0x0
  1390.         DB 0x4d, 0x4d : DW 0x02c,3612 : DB 100, 4,0,0x00,0xea,0x00,0xf0,0x00,0x09,0x0
  1391.         DB 0x4e, 0x4e : DW 0x022,4129 : DB 100,-2,0,0x00,0xea,0x00,0xf0,0x00,0x09,0x0
  1392.         DB 0x4f, 0x4f : DW 0x023,4147 : DB 100,-2,0,0x00,0xea,0x00,0xf0,0x00,0x09,0x0
  1393.         DB 0x50, 0x50 : DW 0x032,4412 : DB 100,-4,0,0x00,0xd6,0x00,0xf0,0x08,0x09,0x0
  1394.         DB 0x51, 0x51 : DW 0x032,4385 : DB 100,-4,0,0x00,0xd6,0x00,0xf0,0x00,0x09,0x0 ;Open Triangle
  1395.         DB 0x52, 0x52 : DW 0x02f,5935 : DB 100,-1,0,0x00,0xd6,0x00,0xf0,0x00,0x09,0x0 ;shaker
  1396.     DB 0xff, 0xff : DW 0x000,0000 : DB 000, 0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x0
  1397.  
  1398.         align 256
  1399.  
  1400. snd_yrw801_regions:
  1401.     dw regions_00
  1402.     dw regions_01
  1403.     dw regions_02
  1404.     dw regions_03
  1405.     dw regions_04
  1406.     dw regions_05
  1407.     dw regions_06
  1408.     dw regions_07
  1409.     dw regions_08
  1410.     dw regions_09
  1411.     dw regions_0a
  1412.     dw regions_0b
  1413.     dw regions_0c
  1414.     dw regions_0d
  1415.     dw regions_0e
  1416.     dw regions_0f
  1417.     dw regions_10
  1418.     dw regions_11
  1419.     dw regions_12
  1420.     dw regions_13
  1421.     dw regions_14
  1422.     dw regions_15
  1423.     dw regions_16
  1424.     dw regions_17
  1425.     dw regions_18
  1426.     dw regions_19
  1427.     dw regions_1a
  1428.     dw regions_1b
  1429.     dw regions_1c
  1430.     dw regions_1d
  1431.     dw regions_1e
  1432.     dw regions_1f
  1433.     dw regions_20
  1434.     dw regions_21
  1435.     dw regions_22
  1436.     dw regions_23
  1437.     dw regions_24
  1438.     dw regions_25
  1439.     dw regions_26
  1440.     dw regions_27
  1441.     dw regions_28
  1442.     dw regions_29
  1443.     dw regions_2a
  1444.     dw regions_2b
  1445.     dw regions_2c
  1446.     dw regions_2d
  1447.     dw regions_2e
  1448.     dw regions_2f
  1449.     dw regions_30
  1450.     dw regions_31
  1451.     dw regions_32
  1452.     dw regions_33
  1453.     dw regions_34
  1454.     dw regions_35
  1455.     dw regions_36
  1456.     dw regions_37
  1457.     dw regions_38
  1458.     dw regions_39
  1459.     dw regions_3a
  1460.     dw regions_3b
  1461.     dw regions_3c
  1462.     dw regions_3d
  1463.     dw regions_3e
  1464.     dw regions_3f
  1465.     dw regions_40
  1466.     dw regions_41
  1467.     dw regions_42
  1468.     dw regions_43
  1469.     dw regions_44
  1470.     dw regions_45
  1471.     dw regions_46
  1472.     dw regions_47
  1473.     dw regions_48
  1474.     dw regions_49
  1475.     dw regions_4a
  1476.     dw regions_4b
  1477.     dw regions_4c
  1478.     dw regions_4d
  1479.     dw regions_4e
  1480.     dw regions_4f
  1481.     dw regions_50
  1482.     dw regions_51
  1483.     dw regions_52
  1484.     dw regions_53
  1485.     dw regions_54
  1486.     dw regions_55
  1487.     dw regions_56
  1488.     dw regions_57
  1489.     dw regions_58
  1490.     dw regions_59
  1491.     dw regions_5a
  1492.     dw regions_5b
  1493.     dw regions_5c
  1494.     dw regions_5d
  1495.     dw regions_5e
  1496.     dw regions_5f
  1497.     dw regions_60
  1498.     dw regions_61
  1499.     dw regions_62
  1500.     dw regions_63
  1501.     dw regions_64
  1502.     dw regions_65
  1503.     dw regions_66
  1504.     dw regions_67
  1505.     dw regions_68
  1506.     dw regions_69
  1507.     dw regions_6a
  1508.     dw regions_6b
  1509.     dw regions_6c
  1510.     dw regions_6d
  1511.     dw regions_6e
  1512.     dw regions_6f
  1513.     dw regions_70
  1514.     dw regions_71
  1515.     dw regions_72
  1516.     dw regions_73
  1517.     dw regions_74
  1518.     dw regions_75
  1519.     dw regions_76
  1520.     dw regions_77
  1521.     dw regions_78
  1522.     dw regions_79
  1523.     dw regions_7a
  1524.     dw regions_7b
  1525.     dw regions_7c
  1526.     dw regions_7d
  1527.     dw regions_7e
  1528.     dw regions_7f
  1529.     dw regions_drums
  1530. yrw800_i_map_end: