home *** CD-ROM | disk | FTP | other *** search
/ Chip 2004 July / CMCD0704.ISO / Software / Freeware / Utilitare / VisualBoyAdvance-1.7.2 / src / win32 / IOViewerRegs.h < prev    next >
Encoding:
C/C++ Source or Header  |  2004-05-13  |  28.1 KB  |  2,088 lines

  1. // -*- C++ -*-
  2. // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator.
  3. // Copyright (C) 1999-2003 Forgotten
  4. // Copyright (C) 2004 Forgotten and the VBA development team
  5.  
  6. // This program is free software; you can redistribute it and/or modify
  7. // it under the terms of the GNU General Public License as published by
  8. // the Free Software Foundation; either version 2, or(at your option)
  9. // any later version.
  10. //
  11. // This program is distributed in the hope that it will be useful,
  12. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14. // GNU General Public License for more details.
  15. //
  16. // You should have received a copy of the GNU General Public License
  17. // along with this program; if not, write to the Free Software Foundation,
  18. // Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  19.  
  20. struct IOData {
  21.   u16 *address;
  22.   u16 offset;
  23.   char *name;
  24.   u16 write;
  25.   char *bits[16];
  26. };
  27.  
  28. const IOData ioViewRegisters[] = {
  29.   { 
  30.     &DISPCNT, 0, "0x4000000-DISPCNT", 0xFFF7,
  31.     {
  32.       "",
  33.       "",
  34.       "BG Mode (3 bits)",
  35.       "CGB Mode",
  36.       "Display Frame",
  37.       "H-Blank Interval OBJ processing",
  38.       "OBJ Character mapping",
  39.       "Forced blank",
  40.       "BG0",
  41.       "BG1",
  42.       "BG2",
  43.       "BG3",
  44.       "OBJ",
  45.       "WIN0",
  46.       "WIN1",
  47.       "OBJWIN"
  48.     }
  49.   },
  50.   {
  51.     &DISPSTAT, 4, "0x4000004-DISPSTAT", 0xFF38,
  52.     {
  53.       "V-Blank Status",
  54.       "H-Blank Status",
  55.       "VCOUNT Evaluation",
  56.       "V-Blank Interrupt Enable",
  57.       "H-Blank Interrupt Enable",
  58.       "VCOUNT Match Interrupt Enable",
  59.       "",
  60.       "",
  61.       "",
  62.       "",
  63.       "",
  64.       "",
  65.       "",
  66.       "",
  67.       "",
  68.       "VCOUNT setting (8 bits)"
  69.     }
  70.   },
  71.   {
  72.     &VCOUNT, 6, "0x4000006-VCOUNT", 0x0000,
  73.     {
  74.       "",
  75.       "",
  76.       "",
  77.       "",
  78.       "",
  79.       "",
  80.       "",
  81.       "VCOUNT (8 bits)",
  82.       "",
  83.       "",
  84.       "",
  85.       "",
  86.       "",
  87.       "",
  88.       "",
  89.       ""
  90.     }
  91.   },
  92.   {
  93.     &BG0CNT, 8, "0x4000008-BG0CNT", 0xDFCF,
  94.     {
  95.       "",
  96.       "Priority (2 bits)",
  97.       "",
  98.       "Char base (2 bits)",
  99.       "",
  100.       "",
  101.       "Mosaic",
  102.       "16/256 colors",
  103.       "",
  104.       "",
  105.       "",
  106.       "",
  107.       "Screen Base Block (5 bits)",
  108.       "",
  109.       "",
  110.       "Size (2 bits)"
  111.     }
  112.   },
  113.   {
  114.     &BG1CNT, 0xA, "0x400000A-BG1CNT", 0xDFCF,
  115.     {
  116.       "",
  117.       "Priority (2 bits)",
  118.       "",
  119.       "Char base (2 bits)",
  120.       "",
  121.       "",
  122.       "Mosaic",
  123.       "16/256 colors",
  124.       "",
  125.       "",
  126.       "",
  127.       "",
  128.       "Screen Base Block (5 bits)",
  129.       "",
  130.       "",
  131.       "Size (2 bits)"
  132.     }
  133.   },
  134.   {
  135.     &BG2CNT, 0xC, "0x400000C-BG2CNT", 0xFFCF,
  136.     {
  137.       "",
  138.       "Priority (2 bits)",
  139.       "",
  140.       "Char base (2 bits)",
  141.       "",
  142.       "",
  143.       "Mosaic",
  144.       "16/256 colors",
  145.       "",
  146.       "",
  147.       "",
  148.       "",
  149.       "Screen Base Block (5 bits)",
  150.       "Area Overflow",
  151.       "",
  152.       "Size (2 bits)"
  153.     }
  154.   },
  155.   {
  156.     &BG3CNT, 0xE, "0x400000E-BG3CNT", 0xFFCF,
  157.     {
  158.       "",
  159.       "Priority (2 bits)",
  160.       "",
  161.       "Char base (2 bits)",
  162.       "",
  163.       "",
  164.       "Mosaic",
  165.       "16/256 colors",
  166.       "",
  167.       "",
  168.       "",
  169.       "",
  170.       "Screen Base Block (5 bits)",
  171.       "Area Overflow",
  172.       "",
  173.       "Size (2 bits)"
  174.     }
  175.   },
  176.   {
  177.     &BG0HOFS, 0x10, "0x4000010-BG0HOFS", 0x01FF,
  178.     {
  179.       "",
  180.       "",
  181.       "",
  182.       "",
  183.       "",
  184.       "",
  185.       "",
  186.       "",
  187.       "Horizontal Offset (9 bits, W)",
  188.       "",
  189.       "",
  190.       "",
  191.       "",
  192.       "",
  193.       "",
  194.       ""
  195.     }
  196.   },
  197.   {
  198.     &BG0VOFS, 0x12, "0x4000012-BG0VOFS", 0x01FF,
  199.     {
  200.       "",
  201.       "",
  202.       "",
  203.       "",
  204.       "",
  205.       "",
  206.       "",
  207.       "",
  208.       "Vertical Offset (9 bits, W)",
  209.       "",
  210.       "",
  211.       "",
  212.       "",
  213.       "",
  214.       "",
  215.       ""
  216.     }
  217.   },
  218.   {
  219.     &BG1HOFS, 0x14, "0x4000014-BG1HOFS", 0x01FF,
  220.     {
  221.       "",
  222.       "",
  223.       "",
  224.       "",
  225.       "",
  226.       "",
  227.       "",
  228.       "",
  229.       "Horizontal Offset (9 bits, W)",
  230.       "",
  231.       "",
  232.       "",
  233.       "",
  234.       "",
  235.       "",
  236.       ""
  237.     }
  238.   },
  239.   {
  240.     &BG1VOFS, 0x16, "0x4000016-BG1VOFS", 0x01FF,
  241.     {
  242.       "",
  243.       "",
  244.       "",
  245.       "",
  246.       "",
  247.       "",
  248.       "",
  249.       "",
  250.       "Vertical Offset (9 bits, W)",
  251.       "",
  252.       "",
  253.       "",
  254.       "",
  255.       "",
  256.       "",
  257.       ""
  258.     }
  259.   },
  260.   {
  261.     &BG2HOFS, 0x18, "0x4000018-BG8HOFS", 0x01FF,
  262.     {
  263.       "",
  264.       "",
  265.       "",
  266.       "",
  267.       "",
  268.       "",
  269.       "",
  270.       "",
  271.       "Horizontal Offset (9 bits, W)",
  272.       "",
  273.       "",
  274.       "",
  275.       "",
  276.       "",
  277.       "",
  278.       ""
  279.     }
  280.   },
  281.   {
  282.     &BG2VOFS, 0x1A, "0x400001A-BG2VOFS", 0x01FF,
  283.     {
  284.       "",
  285.       "",
  286.       "",
  287.       "",
  288.       "",
  289.       "",
  290.       "",
  291.       "",
  292.       "Vertical Offset (9 bits, W)",
  293.       "",
  294.       "",
  295.       "",
  296.       "",
  297.       "",
  298.       "",
  299.       ""
  300.     }
  301.   },
  302.   {
  303.     &BG3HOFS, 0x1C, "0x400001C-BG3HOFS", 0x01FF,
  304.     {
  305.       "",
  306.       "",
  307.       "",
  308.       "",
  309.       "",
  310.       "",
  311.       "",
  312.       "",
  313.       "Horizontal Offset (9 bits,W)",
  314.       "",
  315.       "",
  316.       "",
  317.       "",
  318.       "",
  319.       "",
  320.       ""
  321.     }
  322.   },
  323.   {
  324.     &BG3VOFS, 0x1E, "0x400001E-BG3VOFS", 0x01FF,
  325.     {
  326.       "",
  327.       "",
  328.       "",
  329.       "",
  330.       "",
  331.       "",
  332.       "",
  333.       "",
  334.       "Vertical Offset (9 bits,W)",
  335.       "",
  336.       "",
  337.       "",
  338.       "",
  339.       "",
  340.       "",
  341.       ""
  342.     }
  343.   },
  344.   {
  345.     &BG2PA, 0x20, "0x4000020-BG2PA", 0xFFFF,
  346.     {
  347.       "",
  348.       "",
  349.       "",
  350.       "",
  351.       "",
  352.       "",
  353.       "",
  354.       "",
  355.       "",
  356.       "",
  357.       "",
  358.       "",
  359.       "",
  360.       "",
  361.       "",
  362.       "dx (16 bits,W)"
  363.     }
  364.   },
  365.   {
  366.     &BG2PB, 0x22, "0x4000022-BG2PB", 0xFFFF,
  367.     {
  368.       "",
  369.       "",
  370.       "",
  371.       "",
  372.       "",
  373.       "",
  374.       "",
  375.       "",
  376.       "",
  377.       "",
  378.       "",
  379.       "",
  380.       "",
  381.       "",
  382.       "",
  383.       "dmx (16 bits,W)"
  384.     }
  385.   },
  386.   {
  387.     &BG2PC, 0x24, "0x4000024-BG2PC", 0xFFFF,
  388.     {
  389.       "",
  390.       "",
  391.       "",
  392.       "",
  393.       "",
  394.       "",
  395.       "",
  396.       "",
  397.       "",
  398.       "",
  399.       "",
  400.       "",
  401.       "",
  402.       "",
  403.       "",
  404.       "dy (16 bits,W)"
  405.     }
  406.   },
  407.   {
  408.     &BG2PD, 0x26, "0x4000026-BG2PD", 0xFFFF,
  409.     {
  410.       "",
  411.       "",
  412.       "",
  413.       "",
  414.       "",
  415.       "",
  416.       "",
  417.       "",
  418.       "",
  419.       "",
  420.       "",
  421.       "",
  422.       "",
  423.       "",
  424.       "",
  425.       "dmy (16 bits,W)"
  426.     }
  427.   },
  428.   {
  429.     &BG2X_L, 0x28, "0x4000028-BG2X_L", 0xFFFF,
  430.     {
  431.       "",
  432.       "",
  433.       "",
  434.       "",
  435.       "",
  436.       "",
  437.       "",
  438.       "",
  439.       "",
  440.       "",
  441.       "",
  442.       "",
  443.       "",
  444.       "",
  445.       "",
  446.       "X low bits (16 bits,W)"
  447.     }
  448.   },
  449.   {
  450.     &BG2X_H, 0x2A, "0x400002A-BG2X_H", 0x0FFF,
  451.     {
  452.       "",
  453.       "",
  454.       "",
  455.       "",
  456.       "",
  457.       "",
  458.       "",
  459.       "",
  460.       "",
  461.       "",
  462.       "",
  463.       "X high bits (12 bits,W)",
  464.       "",
  465.       "",
  466.       "",
  467.       "",
  468.     }
  469.   },
  470.   {
  471.     &BG2Y_L, 0x2C, "0x400002C-BG2Y_L", 0xFFFF,
  472.     {
  473.       "",
  474.       "",
  475.       "",
  476.       "",
  477.       "",
  478.       "",
  479.       "",
  480.       "",
  481.       "",
  482.       "",
  483.       "",
  484.       "",
  485.       "",
  486.       "",
  487.       "",
  488.       "Y low bits (16 bits,W)"
  489.     }
  490.   },
  491.   {
  492.     &BG2Y_H, 0x2E, "0x400002E-BG2Y_H", 0x0FFF,
  493.     {
  494.       "",
  495.       "",
  496.       "",
  497.       "",
  498.       "",
  499.       "",
  500.       "",
  501.       "",
  502.       "",
  503.       "",
  504.       "",
  505.       "Y hight bits (12 bits,W)",
  506.       "",
  507.       "",
  508.       "",
  509.       "",
  510.     }
  511.   },
  512.   {
  513.     &BG3PA, 0x30, "0x4000030-BG3PA", 0xFFFF,
  514.     {
  515.       "",
  516.       "",
  517.       "",
  518.       "",
  519.       "",
  520.       "",
  521.       "",
  522.       "",
  523.       "",
  524.       "",
  525.       "",
  526.       "",
  527.       "",
  528.       "",
  529.       "",
  530.       "dx (16 bits,W)"
  531.     }
  532.   },
  533.   {
  534.     &BG3PB, 0x32, "0x4000032-BG3PB", 0xFFFF,
  535.     {
  536.       "",
  537.       "",
  538.       "",
  539.       "",
  540.       "",
  541.       "",
  542.       "",
  543.       "",
  544.       "",
  545.       "",
  546.       "",
  547.       "",
  548.       "",
  549.       "",
  550.       "",
  551.       "dmx (16 bits,W)"
  552.     }
  553.   },
  554.   {
  555.     &BG3PC, 0x34, "0x4000034-BG3PC", 0xFFFF,
  556.     {
  557.       "",
  558.       "",
  559.       "",
  560.       "",
  561.       "",
  562.       "",
  563.       "",
  564.       "",
  565.       "",
  566.       "",
  567.       "",
  568.       "",
  569.       "",
  570.       "",
  571.       "",
  572.       "dy (16 bits,W)"
  573.     }
  574.   },
  575.   {
  576.     &BG3PD, 0x36, "0x4000036-BG3PD", 0xFFFF,
  577.     {
  578.       "",
  579.       "",
  580.       "",
  581.       "",
  582.       "",
  583.       "",
  584.       "",
  585.       "",
  586.       "",
  587.       "",
  588.       "",
  589.       "",
  590.       "",
  591.       "",
  592.       "",
  593.       "dmy (16 bits,W)"
  594.     }
  595.   },
  596.   {
  597.     &BG3X_L, 0x38, "0x4000038-BG3X_L", 0xFFFF,
  598.     {
  599.       "",
  600.       "",
  601.       "",
  602.       "",
  603.       "",
  604.       "",
  605.       "",
  606.       "",
  607.       "",
  608.       "",
  609.       "",
  610.       "",
  611.       "",
  612.       "",
  613.       "",
  614.       "X low bits (16 bits,W)"
  615.     }
  616.   },
  617.   {
  618.     &BG3X_H, 0x3A, "0x400003A-BG3X_H", 0x0FFF,
  619.     {
  620.       "",
  621.       "",
  622.       "",
  623.       "",
  624.       "",
  625.       "",
  626.       "",
  627.       "",
  628.       "",
  629.       "",
  630.       "",
  631.       "X hight bits (12 bits,W)",
  632.       "",
  633.       "",
  634.       "",
  635.       "",
  636.     }
  637.   },
  638.   {
  639.     &BG3Y_L, 0x3C, "0x400003C-BG3Y_L", 0xFFFF,
  640.     {
  641.       "",
  642.       "",
  643.       "",
  644.       "",
  645.       "",
  646.       "",
  647.       "",
  648.       "",
  649.       "",
  650.       "",
  651.       "",
  652.       "",
  653.       "",
  654.       "",
  655.       "",
  656.       "Y low bits (16 bits,W)"
  657.     }
  658.   },
  659.   {
  660.     &BG3Y_H, 0x3E, "0x400003E-BG3Y_H", 0x0FFF,
  661.     {
  662.       "",
  663.       "",
  664.       "",
  665.       "",
  666.       "",
  667.       "",
  668.       "",
  669.       "",
  670.       "",
  671.       "",
  672.       "",
  673.       "Y hight bits (12 bits,W)",
  674.       "",
  675.       "",
  676.       "",
  677.       "",
  678.     }
  679.   },
  680.   {
  681.     &WIN0H, 0x40, "0x4000040-WIN0H", 0xFFFF,
  682.     {
  683.       "",
  684.       "",
  685.       "",
  686.       "",
  687.       "",
  688.       "",
  689.       "",
  690.       "Win 0 lower-right X (8 bits,W)",
  691.       "",
  692.       "",
  693.       "",
  694.       "",
  695.       "",
  696.       "",
  697.       "",
  698.       "Win 0 upper-left X (8 bits,W)",
  699.     }
  700.   },
  701.   {
  702.     &WIN1H, 0x42, "0x4000042-WIN1H", 0xFFFF,
  703.     {
  704.       "",
  705.       "",
  706.       "",
  707.       "",
  708.       "",
  709.       "",
  710.       "",
  711.       "Win 1 lower-right X (8 bits,W)",
  712.       "",
  713.       "",
  714.       "",
  715.       "",
  716.       "",
  717.       "",
  718.       "",
  719.       "Win 1 upper-left (8 bits,W)",
  720.     }
  721.   },
  722.   {
  723.     &WIN0V, 0x44, "0x4000044-WIN0V", 0xFFFF,
  724.     {
  725.       "",
  726.       "",
  727.       "",
  728.       "",
  729.       "",
  730.       "",
  731.       "",
  732.       "Win 0 lower-right Y (8 bits,W)",
  733.       "",
  734.       "",
  735.       "",
  736.       "",
  737.       "",
  738.       "",
  739.       "",
  740.       "Win 0 upper-left Y (8 bits,W)",
  741.     }
  742.   },
  743.   {
  744.     &WIN1V, 0x46, "0x4000046-WIN1V", 0xFFFF,
  745.     {
  746.       "",
  747.       "",
  748.       "",
  749.       "",
  750.       "",
  751.       "",
  752.       "",
  753.       "Win 1 lower-right Y (8 bits,W)",
  754.       "",
  755.       "",
  756.       "",
  757.       "",
  758.       "",
  759.       "",
  760.       "",
  761.       "Win 1 upper-left Y (8 bits,W)",
  762.     }
  763.   },
  764.   {
  765.     &WININ, 0x48, "0x4000048-WININ", 0x3F3F,
  766.     {
  767.       "WIN0 BG0",
  768.       "WIN0 BG1",
  769.       "WIN0 BG2",
  770.       "WIN0 BG3",
  771.       "WIN0 OBJ",
  772.       "WIN0 Special FX",
  773.       "",
  774.       "",
  775.       "WIN1 BG0",
  776.       "WIN1 BG1",
  777.       "WIN1 BG2",
  778.       "WIN1 BG3",
  779.       "WIN1 OBJ",
  780.       "WIN1 Special FX",
  781.       "",
  782.       "",
  783.     }
  784.   },
  785.   {
  786.     &WINOUT, 0x4A, "0x400004A-WINOUT", 0x3F3F,
  787.     {
  788.       "WIN0/1 BG0",
  789.       "WIN0/1 BG1",
  790.       "WIN0/1 BG2",
  791.       "WIN0/1 BG3",
  792.       "WIN0/1 OBJ",
  793.       "WIN0/1 Special FX",
  794.       "",
  795.       "",
  796.       "OBJWIN BG0",
  797.       "OBJWIN BG1",
  798.       "OBJWIN BG2",
  799.       "OBJWIN BG3",
  800.       "OBJWIN OBJ",
  801.       "OBJWIN Special FX",
  802.       "",
  803.       "",
  804.     }
  805.   },
  806.   {
  807.     &MOSAIC, 0x4C, "0x400004C-MOSAIC", 0xFFFF,
  808.     {
  809.       "",
  810.       "",
  811.       "",
  812.       "BG H Size (4 bits,W)",
  813.       "",
  814.       "",
  815.       "",
  816.       "BG V Size (4 bits,W)",
  817.       "",
  818.       "",
  819.       "",
  820.       "OBJ H Size (4 bits,W)",
  821.       "",
  822.       "",
  823.       "",
  824.       "OBJ V Size (4 bits,W)",
  825.     }
  826.   },
  827.   {
  828.     &BLDMOD, 0x50, "0x4000050-BLDMOD", 0x3FFF,
  829.     {
  830.       "1st BG0",
  831.       "1st BG1",
  832.       "1st BG2",
  833.       "1st BG3",
  834.       "1st OBJ",
  835.       "1st BD",
  836.       "",
  837.       "FX Type (2 bits)",
  838.       "2nd BG0",
  839.       "2nd BG1",
  840.       "2nd BG2",
  841.       "2nd BG3",
  842.       "2nd OBJ",
  843.       "2nd BD",
  844.       "",
  845.       "",
  846.     }
  847.   },
  848.   {
  849.     &COLEV, 0x52, "0x4000052-COLEV", 0x1F1F,
  850.     {
  851.       "",
  852.       "",
  853.       "",
  854.       "",
  855.       "Coefficient EVA (5 bits,W)",
  856.       "",
  857.       "",
  858.       "",
  859.       "",
  860.       "",
  861.       "",
  862.       "",
  863.       "Coefficient EVB (5 bits,W)",
  864.       "",
  865.       "",
  866.       "",
  867.     }
  868.   },
  869.   {
  870.     &COLY, 0x54, "0x4000054-COLEY", 0x001F,
  871.     {
  872.       "",
  873.       "",
  874.       "",
  875.       "",
  876.       "Coefficient EVY (5 bits,W)",
  877.       "",
  878.       "",
  879.       "",
  880.       "",
  881.       "",
  882.       "",
  883.       "",
  884.       "",
  885.       "",
  886.       "",
  887.       "",
  888.     }
  889.   },
  890.   {
  891.     NULL, 0x60, "0x4000060-SG10_L", 0x007F,
  892.     {
  893.       "",
  894.       "",
  895.       "Sweep Shifts (3 bits)",
  896.       "Sweep addition/decrease",
  897.       "",
  898.       "",
  899.       "Sweep Time (3 bits)",
  900.       "",
  901.       "",
  902.       "",
  903.       "",
  904.       "",
  905.       "",
  906.       "",
  907.       "",
  908.       "",
  909.     }
  910.   },
  911.   {
  912.     NULL, 0x62, "0x4000062-SG10_H", 0xFFFF,
  913.     {
  914.       "",
  915.       "",
  916.       "",
  917.       "",
  918.       "",
  919.       "Sound Length (6 bits,W)",
  920.       "",
  921.       "Waveform Type (2 bits)",
  922.       "",
  923.       "",
  924.       "Envelope Steps (3 bits)",
  925.       "Envelope Attenuate/Amplify",
  926.       "",
  927.       "",
  928.       "",
  929.       "Envelope Initial Value",
  930.     }
  931.   },
  932.   {
  933.     NULL, 0x64, "0x4000064-SG11", 0xC7FF,
  934.     {
  935.       "",
  936.       "",
  937.       "",
  938.       "",
  939.       "",
  940.       "",
  941.       "",
  942.       "",
  943.       "",
  944.       "",
  945.       "Frequency (11 bits,W)",
  946.       "",
  947.       "",
  948.       "",
  949.       "Sound Continuous/Counter",
  950.       "Initialization (W)",
  951.     }
  952.   },
  953.   {
  954.     NULL, 0x68, "0x4000068-SG20", 0xFFFF,
  955.     {
  956.       "",
  957.       "",
  958.       "",
  959.       "",
  960.       "",
  961.       "Sound Length (6 bits,W)",
  962.       "",
  963.       "Waveform Type (2 bits)",
  964.       "",
  965.       "",
  966.       "Envelope Steps (3 bits)",
  967.       "Envelope Attenuate/Amplify",
  968.       "",
  969.       "",
  970.       "",
  971.       "Envelope Initial Value",
  972.     }
  973.   },
  974.   {
  975.     NULL, 0x6C, "0x400006C-SG21", 0xC7FF,
  976.     {
  977.       "",
  978.       "",
  979.       "",
  980.       "",
  981.       "",
  982.       "",
  983.       "",
  984.       "",
  985.       "",
  986.       "",
  987.       "Frequency (11 bits,W)",
  988.       "",
  989.       "",
  990.       "",
  991.       "Sound Continuous/Counter",
  992.       "Initialization (W)",
  993.     }
  994.   },
  995.   {
  996.     NULL, 0x70, "0x4000070-SG30_L", 0x00E0,
  997.     {
  998.       "",
  999.       "",
  1000.       "",
  1001.       "",
  1002.       "",
  1003.       "Waveform 32/64 Steps",
  1004.       "Waveform Bank 0/1",
  1005.       "Sound Output",
  1006.       "",
  1007.       "",
  1008.       "",
  1009.       "",
  1010.       "",
  1011.       "",
  1012.       "",
  1013.       "",
  1014.     }
  1015.   },
  1016.   {
  1017.     NULL, 0x72, "0x4000072-SG30_H", 0xE0FF,
  1018.     {
  1019.       "",
  1020.       "",
  1021.       "",
  1022.       "",
  1023.       "",
  1024.       "",
  1025.       "",
  1026.       "Sound Length (8 bits,W)",
  1027.       "",
  1028.       "",
  1029.       "",
  1030.       "",
  1031.       "",
  1032.       "",
  1033.       "Output Level (2 bits)",
  1034.       "Forced 3/4 Output Level",
  1035.     }
  1036.   },
  1037.   {
  1038.     NULL, 0x74, "0x4000074-SG31", 0xC7FF,
  1039.     {
  1040.       "",
  1041.       "",
  1042.       "",
  1043.       "",
  1044.       "",
  1045.       "",
  1046.       "",
  1047.       "",
  1048.       "",
  1049.       "",
  1050.       "Frequency (11 bits,W)",
  1051.       "",
  1052.       "",
  1053.       "",
  1054.       "Sound Continuous/Counter",
  1055.       "Initialization (W)",
  1056.     }
  1057.   },
  1058.   {
  1059.     NULL, 0x78, "0x4000078-SG40", 0xFF3F,
  1060.     {
  1061.       "",
  1062.       "",
  1063.       "",
  1064.       "",
  1065.       "",
  1066.       "Sound Length (6 bits,W)",
  1067.       "",
  1068.       "",
  1069.       "",
  1070.       "",
  1071.       "Envelope Steps (3 bits)",
  1072.       "Envelope Attenuate/Amplify",
  1073.       "",
  1074.       "",
  1075.       "",
  1076.       "Envelope Initial Value",
  1077.     }
  1078.   },
  1079.   {
  1080.     NULL, 0x7C, "0x400007C-SG41", 0xC0FF,
  1081.     {
  1082.       "",
  1083.       "",
  1084.       "Dividing Ratio Freq. (3 bits)",
  1085.       "Counter 15/7 Steps",
  1086.       "",
  1087.       "",
  1088.       "",
  1089.       "Counter Shift Clock (4 bits)",
  1090.       "",
  1091.       "",
  1092.       "",
  1093.       "",
  1094.       "",
  1095.       "",
  1096.       "Sound Continuous/Counter",
  1097.       "Initialization (W)",
  1098.     }
  1099.   },
  1100.   {
  1101.     NULL, 0x80, "0x4000080-SGCNT0_L", 0xFF77,
  1102.     {
  1103.       "",
  1104.       "",
  1105.       "Right Volume (3 bits)",
  1106.       "",
  1107.       "",
  1108.       "",
  1109.       "Left Volume (3 bits)",
  1110.       "",
  1111.       "Channel 1->Right",
  1112.       "Channel 2->Right",
  1113.       "Channel 3->Right",
  1114.       "Channel 4->Right",
  1115.       "Channel 1->Left",
  1116.       "Channel 2->Left",
  1117.       "Channel 3->Left",
  1118.       "Channel 4->Left",
  1119.     }
  1120.   },
  1121.   {
  1122.     NULL, 0x82, "0x4000082-SGCNT0_H", 0xFF1F,
  1123.     {
  1124.       "",
  1125.       "Sound 1-4 Volume (2 bits)",
  1126.       "DMA Sound A Volume",
  1127.       "DMA Sound B Volume",
  1128.       "",
  1129.       "",
  1130.       "",
  1131.       "",
  1132.       "DMA Sound A->Right",
  1133.       "DMA Sound A->Left",
  1134.       "DMA Sound A Timer",
  1135.       "DMA Sound A Reset FIFO",
  1136.       "DMA Sound B->Right",
  1137.       "DMA Sound B->Left",
  1138.       "DMA Sound B Timer",
  1139.       "DMA Sound B Reset FIFO",
  1140.     }
  1141.   },
  1142.   {
  1143.     NULL, 0x84, "0x4000084-SGCNT1", 0x0080,
  1144.     {
  1145.       "Sound 1 On",
  1146.       "Sound 2 On",
  1147.       "Sound 3 On",
  1148.       "Sound 4 On",
  1149.       "",
  1150.       "",
  1151.       "",
  1152.       "Master Sound Enable",
  1153.       "",
  1154.       "",
  1155.       "",
  1156.       "",
  1157.       "",
  1158.       "",
  1159.       "",
  1160.       "",
  1161.     }
  1162.   },
  1163.   {
  1164.     NULL, 0x88, "0x4000088-SGBIAS", 0xC3FF,
  1165.     {
  1166.       "",
  1167.       "",
  1168.       "",
  1169.       "",
  1170.       "",
  1171.       "",
  1172.       "",
  1173.       "",
  1174.       "",
  1175.       "Bias Level (10 bits)",
  1176.       "",
  1177.       "",
  1178.       "",
  1179.       "",
  1180.       "",
  1181.       "Sampling Rate (2 bits)",
  1182.     }
  1183.   },
  1184.   {
  1185.     NULL, 0xA0, "0x40000A0-SIGFIFOA_L", 0xFFFF,
  1186.     {
  1187.       "",
  1188.       "",
  1189.       "",
  1190.       "",
  1191.       "",
  1192.       "",
  1193.       "",
  1194.       "Data 0 (8 bits)",
  1195.       "",
  1196.       "",
  1197.       "",
  1198.       "",
  1199.       "",
  1200.       "",
  1201.       "",
  1202.       "Data 1 (8 bits)",
  1203.     }
  1204.   },
  1205.   {
  1206.     NULL, 0xA2, "0x40000A2-SIGFIFOA_H", 0xFFFF,
  1207.     {
  1208.       "",
  1209.       "",
  1210.       "",
  1211.       "",
  1212.       "",
  1213.       "",
  1214.       "",
  1215.       "Data 2 (8 bits)",
  1216.       "",
  1217.       "",
  1218.       "",
  1219.       "",
  1220.       "",
  1221.       "",
  1222.       "",
  1223.       "Data 3 (8 bits)",
  1224.     }
  1225.   },
  1226.   {
  1227.     NULL, 0xA4, "0x40000A4-SIGFIFOB_L", 0xFFFF,
  1228.     {
  1229.       "",
  1230.       "",
  1231.       "",
  1232.       "",
  1233.       "",
  1234.       "",
  1235.       "",
  1236.       "Data 0 (8 bits)",
  1237.       "",
  1238.       "",
  1239.       "",
  1240.       "",
  1241.       "",
  1242.       "",
  1243.       "",
  1244.       "Data 1 (8 bits)",
  1245.     }
  1246.   },
  1247.   {
  1248.     NULL, 0xA6, "0x40000A6-SIGFIFOB_H", 0xFFFF,
  1249.     {
  1250.       "",
  1251.       "",
  1252.       "",
  1253.       "",
  1254.       "",
  1255.       "",
  1256.       "",
  1257.       "Data 2 (8 bits)",
  1258.       "",
  1259.       "",
  1260.       "",
  1261.       "",
  1262.       "",
  1263.       "",
  1264.       "",
  1265.       "Data 3 (8 bits)",
  1266.     }
  1267.   },
  1268.   {
  1269.     &DM0SAD_L, 0xB0, "0x40000B0-DM0SAD_L", 0xFFFF,
  1270.     {
  1271.       "",
  1272.       "",
  1273.       "",
  1274.       "",
  1275.       "",
  1276.       "",
  1277.       "",
  1278.       "",
  1279.       "",
  1280.       "",
  1281.       "",
  1282.       "",
  1283.       "",
  1284.       "",
  1285.       "",
  1286.       "Source Address (lower 16 bits)",
  1287.     }
  1288.   },
  1289.   {
  1290.     &DM0SAD_H, 0xB2, "0x40000B2-DM0SAD_H", 0x07FF,
  1291.     {
  1292.       "",
  1293.       "",
  1294.       "",
  1295.       "",
  1296.       "",
  1297.       "",
  1298.       "",
  1299.       "",
  1300.       "",
  1301.       "",
  1302.       "Source Address (upper 11 bits)",
  1303.       "",
  1304.       "",
  1305.       "",
  1306.       "",
  1307.       "",
  1308.     }
  1309.   },
  1310.   {
  1311.     &DM0DAD_L, 0xB4, "0x40000B4-DM0DAD_L", 0xFFFF,
  1312.     {
  1313.       "",
  1314.       "",
  1315.       "",
  1316.       "",
  1317.       "",
  1318.       "",
  1319.       "",
  1320.       "",
  1321.       "",
  1322.       "",
  1323.       "",
  1324.       "",
  1325.       "",
  1326.       "",
  1327.       "",
  1328.       "Destination Address (lower 16 bits)",
  1329.     }
  1330.   },
  1331.   {
  1332.     &DM0DAD_H, 0xB6, "0x40000B6-DM0DAD_H", 0x07FF,
  1333.     {
  1334.       "",
  1335.       "",
  1336.       "",
  1337.       "",
  1338.       "",
  1339.       "",
  1340.       "",
  1341.       "",
  1342.       "",
  1343.       "",
  1344.       "Destination Address (upper 11 bits)",
  1345.       "",
  1346.       "",
  1347.       "",
  1348.       "",
  1349.       "",
  1350.     }
  1351.   },
  1352.   {
  1353.     &DM0CNT_L, 0xB8, "0x40000B8-DM0CNT_L", 0x3FFF,
  1354.     {
  1355.       "",
  1356.       "",
  1357.       "",
  1358.       "",
  1359.       "",
  1360.       "",
  1361.       "",
  1362.       "",
  1363.       "",
  1364.       "",
  1365.       "",
  1366.       "",
  1367.       "",
  1368.       "Count (14 bits)",
  1369.       "",
  1370.       "",
  1371.     }
  1372.   },
  1373.   {
  1374.     &DM0CNT_H, 0xBA, "0x40000BA-DM0CNT_H", 0xF7E0,
  1375.     {
  1376.       "",
  1377.       "",
  1378.       "",
  1379.       "",
  1380.       "",
  1381.       "",
  1382.       "Destination Address Control (2 bits)",
  1383.       "",
  1384.       "Source Address Control (2 bits)",
  1385.       "Repeat",
  1386.       "Transfer Type",
  1387.       "",
  1388.       "",
  1389.       "Start Timing (2 bits)",
  1390.       "Interrupt Request",
  1391.       "Enable",
  1392.     }
  1393.   },
  1394.   {
  1395.     &DM1SAD_L, 0xBC, "0x40000BC-DM1SAD_L", 0xFFFF,
  1396.     {
  1397.       "",
  1398.       "",
  1399.       "",
  1400.       "",
  1401.       "",
  1402.       "",
  1403.       "",
  1404.       "",
  1405.       "",
  1406.       "",
  1407.       "",
  1408.       "",
  1409.       "",
  1410.       "",
  1411.       "",
  1412.       "Source Address (lower 16 bits)",
  1413.     }
  1414.   },
  1415.   {
  1416.     &DM1SAD_H, 0xBE, "0x40000BE-DM1SAD_H", 0x0FFF,
  1417.     {
  1418.       "",
  1419.       "",
  1420.       "",
  1421.       "",
  1422.       "",
  1423.       "",
  1424.       "",
  1425.       "",
  1426.       "",
  1427.       "",
  1428.       "",
  1429.       "Source Address (upper 12 bits)",
  1430.       "",
  1431.       "",
  1432.       "",
  1433.       "",
  1434.     }
  1435.   },
  1436.   {
  1437.     &DM1DAD_L, 0xC0, "0x40000C0-DM1DAD_L", 0xFFFF,
  1438.     {
  1439.       "",
  1440.       "",
  1441.       "",
  1442.       "",
  1443.       "",
  1444.       "",
  1445.       "",
  1446.       "",
  1447.       "",
  1448.       "",
  1449.       "",
  1450.       "",
  1451.       "",
  1452.       "",
  1453.       "",
  1454.       "Destination Address (lower 16 bits)",
  1455.     }
  1456.   },
  1457.   {
  1458.     &DM1DAD_H, 0xC2, "0x40000C2-DM1DAD_H", 0x07FF,
  1459.     {
  1460.       "",
  1461.       "",
  1462.       "",
  1463.       "",
  1464.       "",
  1465.       "",
  1466.       "",
  1467.       "",
  1468.       "",
  1469.       "",
  1470.       "Destination Address (upper 11 bits)",
  1471.       "",
  1472.       "",
  1473.       "",
  1474.       "",
  1475.       "",
  1476.     }
  1477.   },
  1478.   {
  1479.     &DM1CNT_L, 0xC4, "0x40000C4-DM1CNT_L", 0x3FFF,
  1480.     {
  1481.       "",
  1482.       "",
  1483.       "",
  1484.       "",
  1485.       "",
  1486.       "",
  1487.       "",
  1488.       "",
  1489.       "",
  1490.       "",
  1491.       "",
  1492.       "",
  1493.       "",
  1494.       "Count (14 bits)",
  1495.       "",
  1496.       "",
  1497.     }
  1498.   },
  1499.   {
  1500.     &DM1CNT_H, 0xC6, "0x40000C6-DM1CNT_H", 0xF7E0,
  1501.     {
  1502.       "",
  1503.       "",
  1504.       "",
  1505.       "",
  1506.       "",
  1507.       "",
  1508.       "Destination Address Control (2 bits)",
  1509.       "",
  1510.       "Source Address Control (2 bits)",
  1511.       "Repeat",
  1512.       "Transfer Type",
  1513.       "",
  1514.       "",
  1515.       "Start Timing (2 bits)",
  1516.       "Interrupt Request",
  1517.       "Enable",
  1518.     }
  1519.   },
  1520.   {
  1521.     &DM2SAD_L, 0xC8, "0x40000C8-DM2SAD_L", 0xFFFF,
  1522.     {
  1523.       "",
  1524.       "",
  1525.       "",
  1526.       "",
  1527.       "",
  1528.       "",
  1529.       "",
  1530.       "",
  1531.       "",
  1532.       "",
  1533.       "",
  1534.       "",
  1535.       "",
  1536.       "",
  1537.       "",
  1538.       "Source Address (lower 16 bits)",
  1539.     }
  1540.   },
  1541.   {
  1542.     &DM2SAD_H, 0xCA, "0x40000CA-DM2SAD_H", 0x0FFF,
  1543.     {
  1544.       "",
  1545.       "",
  1546.       "",
  1547.       "",
  1548.       "",
  1549.       "",
  1550.       "",
  1551.       "",
  1552.       "",
  1553.       "",
  1554.       "",
  1555.       "Source Address (upper 12 bits)",
  1556.       "",
  1557.       "",
  1558.       "",
  1559.       "",
  1560.     }
  1561.   },
  1562.   {
  1563.     &DM2DAD_L, 0xCC, "0x40000CC-DM2DAD_L", 0xFFFF,
  1564.     {
  1565.       "",
  1566.       "",
  1567.       "",
  1568.       "",
  1569.       "",
  1570.       "",
  1571.       "",
  1572.       "",
  1573.       "",
  1574.       "",
  1575.       "",
  1576.       "",
  1577.       "",
  1578.       "",
  1579.       "",
  1580.       "Destination Address (lower 16 bits)",
  1581.     }
  1582.   },
  1583.   {
  1584.     &DM2DAD_H, 0xCE, "0x40000CE-DM2DAD_H", 0x07FF,
  1585.     {
  1586.       "",
  1587.       "",
  1588.       "",
  1589.       "",
  1590.       "",
  1591.       "",
  1592.       "",
  1593.       "",
  1594.       "",
  1595.       "",
  1596.       "Destination Address (upper 11 bits)",
  1597.       "",
  1598.       "",
  1599.       "",
  1600.       "",
  1601.       "",
  1602.     }
  1603.   },
  1604.   {
  1605.     &DM2CNT_L, 0xD0, "0x40000D0-DM2CNT_L", 0x3FFF,
  1606.     {
  1607.       "",
  1608.       "",
  1609.       "",
  1610.       "",
  1611.       "",
  1612.       "",
  1613.       "",
  1614.       "",
  1615.       "",
  1616.       "",
  1617.       "",
  1618.       "",
  1619.       "",
  1620.       "Count (14 bits)",
  1621.       "",
  1622.       "",
  1623.     }
  1624.   },
  1625.   {
  1626.     &DM2CNT_H, 0xD2, "0x40000D2-DM2CNT_H", 0xF7E0,
  1627.     {
  1628.       "",
  1629.       "",
  1630.       "",
  1631.       "",
  1632.       "",
  1633.       "",
  1634.       "Destination Address Control (2 bits)",
  1635.       "",
  1636.       "Source Address Control (2 bits)",
  1637.       "Repeat",
  1638.       "Transfer Type",
  1639.       "",
  1640.       "",
  1641.       "Start Timing (2 bits)",
  1642.       "Interrupt Request",
  1643.       "Enable",
  1644.     }
  1645.   },
  1646.   {
  1647.     &DM3SAD_L, 0xD4, "0x40000D4-DM3SAD_L", 0xFFFF,
  1648.     {
  1649.       "",
  1650.       "",
  1651.       "",
  1652.       "",
  1653.       "",
  1654.       "",
  1655.       "",
  1656.       "",
  1657.       "",
  1658.       "",
  1659.       "",
  1660.       "",
  1661.       "",
  1662.       "",
  1663.       "",
  1664.       "Source Address (lower 16 bits)",
  1665.     }
  1666.   },
  1667.   {
  1668.     &DM3SAD_H, 0xD6, "0x40000D6-DM3SAD_H", 0x0FFF,
  1669.     {
  1670.       "",
  1671.       "",
  1672.       "",
  1673.       "",
  1674.       "",
  1675.       "",
  1676.       "",
  1677.       "",
  1678.       "",
  1679.       "",
  1680.       "",
  1681.       "Source Address (upper 12 bits)",
  1682.       "",
  1683.       "",
  1684.       "",
  1685.       "",
  1686.     }
  1687.   },
  1688.   {
  1689.     &DM3DAD_L, 0xD8, "0x40000D8-DM3DAD_L", 0xFFFF,
  1690.     {
  1691.       "",
  1692.       "",
  1693.       "",
  1694.       "",
  1695.       "",
  1696.       "",
  1697.       "",
  1698.       "",
  1699.       "",
  1700.       "",
  1701.       "",
  1702.       "",
  1703.       "",
  1704.       "",
  1705.       "",
  1706.       "Destination Address (lower 16 bits)",
  1707.     }
  1708.   },
  1709.   {
  1710.     &DM3DAD_H, 0xDA, "0x40000DA-DM3DAD_H", 0x0FFF,
  1711.     {
  1712.       "",
  1713.       "",
  1714.       "",
  1715.       "",
  1716.       "",
  1717.       "",
  1718.       "",
  1719.       "",
  1720.       "",
  1721.       "",
  1722.       "",
  1723.       "Destination Address (upper 12 bits)",
  1724.       "",
  1725.       "",
  1726.       "",
  1727.       "",
  1728.     }
  1729.   },
  1730.   {
  1731.     &DM3CNT_L, 0xDC, "0x40000DC-DM3CNT_L", 0xFFFF,
  1732.     {
  1733.       "",
  1734.       "",
  1735.       "",
  1736.       "",
  1737.       "",
  1738.       "",
  1739.       "",
  1740.       "",
  1741.       "",
  1742.       "",
  1743.       "",
  1744.       "",
  1745.       "",
  1746.       "",
  1747.       "",
  1748.       "Count (16 bits)",
  1749.     }
  1750.   },
  1751.   {
  1752.     &DM3CNT_H, 0xDE, "0x40000DE-DM3CNT_H", 0xFFE0,
  1753.     {
  1754.       "",
  1755.       "",
  1756.       "",
  1757.       "",
  1758.       "",
  1759.       "",
  1760.       "Destination Address Control (2 bits)",
  1761.       "",
  1762.       "Source Address Control (2 bits)",
  1763.       "Repeat",
  1764.       "Transfer Type",
  1765.       "Game Pak Data Request",
  1766.       "",
  1767.       "Start Timing (2 bits)",
  1768.       "Interrupt Request",
  1769.       "Enable",
  1770.     }
  1771.   },
  1772.   {
  1773.     &TM0D, 0x100, "0x4000100-TM0D", 0xFFFF,
  1774.     {
  1775.       "",
  1776.       "",
  1777.       "",
  1778.       "",
  1779.       "",
  1780.       "",
  1781.       "",
  1782.       "",
  1783.       "",
  1784.       "",
  1785.       "",
  1786.       "",
  1787.       "",
  1788.       "",
  1789.       "",
  1790.       "Timer Counter (16 bits)",
  1791.     }
  1792.   },
  1793.   {
  1794.     &TM0CNT, 0x102, "0x4000102-TM0CNT", 0x00C7,
  1795.     {
  1796.       "",
  1797.       "Scalar Selection (2 bits)",
  1798.       "Count Up",
  1799.       "",
  1800.       "",
  1801.       "",
  1802.       "Interrupt Request",
  1803.       "Enable",
  1804.       "",
  1805.       "",
  1806.       "",
  1807.       "",
  1808.       "",
  1809.       "",
  1810.       "",
  1811.       "",
  1812.     }
  1813.   },
  1814.   {
  1815.     &TM1D, 0x104, "0x4000104-TM1D", 0xFFFF,
  1816.     {
  1817.       "",
  1818.       "",
  1819.       "",
  1820.       "",
  1821.       "",
  1822.       "",
  1823.       "",
  1824.       "",
  1825.       "",
  1826.       "",
  1827.       "",
  1828.       "",
  1829.       "",
  1830.       "",
  1831.       "",
  1832.       "Timer Counter (16 bits)",
  1833.     }
  1834.   },
  1835.   {
  1836.     &TM1CNT, 0x106, "0x4000106-TM1CNT", 0x00C7,
  1837.     {
  1838.       "",
  1839.       "Scalar Selection (2 bits)",
  1840.       "Count Up",
  1841.       "",
  1842.       "",
  1843.       "",
  1844.       "Interrupt Request",
  1845.       "Enable",
  1846.       "",
  1847.       "",
  1848.       "",
  1849.       "",
  1850.       "",
  1851.       "",
  1852.       "",
  1853.       "",
  1854.     }
  1855.   },
  1856.   {
  1857.     &TM2D, 0x108, "0x4000108-TM2D", 0xFFFF,
  1858.     {
  1859.       "",
  1860.       "",
  1861.       "",
  1862.       "",
  1863.       "",
  1864.       "",
  1865.       "",
  1866.       "",
  1867.       "",
  1868.       "",
  1869.       "",
  1870.       "",
  1871.       "",
  1872.       "",
  1873.       "",
  1874.       "Timer Counter (16 bits)",
  1875.     }
  1876.   },
  1877.   {
  1878.     &TM2CNT, 0x10A, "0x400010A-TM2CNT", 0x00C7,
  1879.     {
  1880.       "",
  1881.       "Scalar Selection (2 bits)",
  1882.       "Count Up",
  1883.       "",
  1884.       "",
  1885.       "",
  1886.       "Interrupt Request",
  1887.       "Enable",
  1888.       "",
  1889.       "",
  1890.       "",
  1891.       "",
  1892.       "",
  1893.       "",
  1894.       "",
  1895.       "",
  1896.     }
  1897.   },
  1898.   {
  1899.     &TM3D, 0x10C, "0x400010C-TM3D", 0xFFFF,
  1900.     {
  1901.       "",
  1902.       "",
  1903.       "",
  1904.       "",
  1905.       "",
  1906.       "",
  1907.       "",
  1908.       "",
  1909.       "",
  1910.       "",
  1911.       "",
  1912.       "",
  1913.       "",
  1914.       "",
  1915.       "",
  1916.       "Timer Counter (16 bits)",
  1917.     }
  1918.   },
  1919.   {
  1920.     &TM3CNT, 0x10E, "0x400010E-TM3CNT", 0x00C7,
  1921.     {
  1922.       "",
  1923.       "Scalar Selection (2 bits)",
  1924.       "Count Up",
  1925.       "",
  1926.       "",
  1927.       "",
  1928.       "Interrupt Request",
  1929.       "Enable",
  1930.       "",
  1931.       "",
  1932.       "",
  1933.       "",
  1934.       "",
  1935.       "",
  1936.       "",
  1937.       "",
  1938.     }
  1939.   },
  1940.   {
  1941.     &P1, 0x130, "0x4000130-P1", 0x03FF,
  1942.     {
  1943.       "A",
  1944.       "B",
  1945.       "Select",
  1946.       "Start",
  1947.       "Right",
  1948.       "Left",
  1949.       "Up",
  1950.       "Down",
  1951.       "Shoulder Right",
  1952.       "Shoulder Left",
  1953.       "",
  1954.       "",
  1955.       "",
  1956.       "",
  1957.       "",
  1958.       "",
  1959.     }
  1960.   },
  1961.   {
  1962.     NULL, 0x132, "0x4000132-P1CNT", 0xC3FF,
  1963.     {
  1964.       "A",
  1965.       "B",
  1966.       "Select",
  1967.       "Start",
  1968.       "Right",
  1969.       "Left",
  1970.       "Up",
  1971.       "Down",
  1972.       "Shoulder Right",
  1973.       "Shoulder Left",
  1974.       "",
  1975.       "",
  1976.       "",
  1977.       "",
  1978.       "Interrupt Request",
  1979.       "Interrupt Condition",
  1980.     }
  1981.   },
  1982.   {
  1983.     &IE, 0x200, "0x4000200-IE", 0x3FFF,
  1984.     {
  1985.       "VBlank",
  1986.       "HBlank",
  1987.       "VCount",
  1988.       "Timer 0",
  1989.       "Timer 1",
  1990.       "Timer 2",
  1991.       "Timer 3",
  1992.       "Serial",
  1993.       "DMA 0",
  1994.       "DMA 1",
  1995.       "DMA 2",
  1996.       "DMA 3",
  1997.       "Keypad",
  1998.       "Game Pak",
  1999.       "",
  2000.       "",
  2001.     }
  2002.   },
  2003.   {
  2004.     &IF, 0x202, "0x4000202-IF", 0x0000,
  2005.     {
  2006.       "VBlank",
  2007.       "HBlank",
  2008.       "VCount",
  2009.       "Timer 0",
  2010.       "Timer 1",
  2011.       "Timer 2",
  2012.       "Timer 3",
  2013.       "Serial",
  2014.       "DMA 0",
  2015.       "DMA 1",
  2016.       "DMA 2",
  2017.       "DMA 3",
  2018.       "Keypad",
  2019.       "Game Pak",
  2020.       "",
  2021.       "",
  2022.     }
  2023.   },
  2024.   {
  2025.     NULL, 0x204, "0x4000204-WAITCNT", 0x5FFF,
  2026.     {
  2027.       "",
  2028.       "SRAM Wait Control (2 bits)",
  2029.       "",
  2030.       "Wait State 0 First Access (2 bits)",
  2031.       "Wait State 0 Second Access",
  2032.       "",
  2033.       "Wait State 1 First Access (2 bits)",
  2034.       "Wait State 1 Second Access",
  2035.       "",
  2036.       "Wait State 2 First Access (2 bits)",
  2037.       "Wait State 2 Second Access",
  2038.       "",
  2039.       "PHI Terminal Output (2 bits)",
  2040.       "",
  2041.       "Game Pak Prefetch Buffer",
  2042.       "Game Pak Type Flag",
  2043.     }
  2044.   },
  2045.   {
  2046.     &IME, 0x208, "0x4000208-IME", 0x0001,
  2047.     {
  2048.       "Master Interrupt Enable",
  2049.       "",
  2050.       "",
  2051.       "",
  2052.       "",
  2053.       "",
  2054.       "",
  2055.       "",
  2056.       "",
  2057.       "",
  2058.       "",
  2059.       "",
  2060.       "",
  2061.       "",
  2062.       "",
  2063.       "",
  2064.     }
  2065.   },
  2066.   {
  2067.     NULL, 0x300, "0x4000300-HALTCNT", 0x8001,
  2068.     {
  2069.       "First Boot",
  2070.       "",
  2071.       "",
  2072.       "",
  2073.       "",
  2074.       "",
  2075.       "",
  2076.       "",
  2077.       "",
  2078.       "",
  2079.       "",
  2080.       "",
  2081.       "",
  2082.       "",
  2083.       "",
  2084.       "Power Down",
  2085.     }
  2086.   },
  2087. };
  2088.