PCem

changeset 102:3d3d486d5fce

Innovation SSI-2001 emulation. Using ReSID-FP.
author TomW
date Sun May 11 14:09:13 2014 +0100
parents 6a3c97f280f5
children 354491040ce1
files readme.txt src/Makefile.mingw src/ibm.h src/pc.c src/pc.rc src/resid-fp/AUTHORS src/resid-fp/COPYING src/resid-fp/ChangeLog src/resid-fp/INSTALL src/resid-fp/Makefile.am src/resid-fp/Makefile.in src/resid-fp/NEWS src/resid-fp/README src/resid-fp/README.VICE src/resid-fp/aclocal.m4 src/resid-fp/configure src/resid-fp/configure.in src/resid-fp/convolve-sse.cc src/resid-fp/convolve.cc src/resid-fp/envelope.cc src/resid-fp/envelope.h src/resid-fp/extfilt.cc src/resid-fp/extfilt.h src/resid-fp/filter.cc src/resid-fp/filter.h src/resid-fp/pot.cc src/resid-fp/pot.h src/resid-fp/samp2src.pl src/resid-fp/sid.cc src/resid-fp/sid.h src/resid-fp/siddefs-fp.h src/resid-fp/siddefs-fp.h.in src/resid-fp/version.cc src/resid-fp/voice.cc src/resid-fp/voice.h src/resid-fp/wave.cc src/resid-fp/wave.h src/resid-fp/wave6581_PST.cc src/resid-fp/wave6581_PST.dat src/resid-fp/wave6581_PS_.cc src/resid-fp/wave6581_PS_.dat src/resid-fp/wave6581_P_T.cc src/resid-fp/wave6581_P_T.dat src/resid-fp/wave6581__ST.cc src/resid-fp/wave6581__ST.dat src/resid-fp/wave8580_PST.cc src/resid-fp/wave8580_PST.dat src/resid-fp/wave8580_PS_.cc src/resid-fp/wave8580_PS_.dat src/resid-fp/wave8580_P_T.cc src/resid-fp/wave8580_P_T.dat src/resid-fp/wave8580__ST.cc src/resid-fp/wave8580__ST.dat src/resources.h src/sound_resid.cc src/sound_resid.h src/sound_ssi2001.c src/sound_ssi2001.h src/win.c
diffstat 59 files changed, 16165 insertions(+), 14 deletions(-) [+]
line diff
     1.1 --- a/readme.txt	Sat May 03 13:39:03 2014 +0100
     1.2 +++ b/readme.txt	Sun May 11 14:09:13 2014 +0100
     1.3 @@ -441,6 +441,10 @@
     1.4  from compatible boards with additional components (eg Turtle Beach Monte Carlo)
     1.5  
     1.6  
     1.7 +Innovation SSI-2001
     1.8 +SID6581. Emulated using resid-fp. Board is fixed to port 280.
     1.9 +
    1.10 +
    1.11  Other stuff emulated :
    1.12  
    1.13  Serial mouse
     2.1 --- a/src/Makefile.mingw	Sat May 03 13:39:03 2014 +0100
     2.2 +++ b/src/Makefile.mingw	Sun May 11 14:09:13 2014 +0100
     2.3 @@ -1,4 +1,4 @@
     2.4 -VPATH = . dosbox
     2.5 +VPATH = . dosbox resid-fp
     2.6  CPP  = g++.exe
     2.7  CC   = gcc.exe
     2.8  WINDRES = windres.exe
     2.9 @@ -10,8 +10,8 @@
    2.10  	mouse.o mouse_ps2.o mouse_serial.o neat.o nvr.o olivetti_m24.o \
    2.11       opti.o pc.o pci.o pic.o piix.o pit.o ppi.o rom.o serial.o sis496.o sound.o sound_ad1848.o sound_adlib.o \
    2.12  	sound_adlibgold.o sound_cms.o sound_dbopl.o sound_emu8k.o sound_gus.o sound_mpu401_uart.o sound_opl.o \
    2.13 -	sound_pas16.o sound_sb.o sound_sb_dsp.o sound_sn76489.o sound_speaker.o \
    2.14 -	sound_wss.o soundopenal.o timer.o um8881f.o um8669f.o vid_ati_eeprom.o \
    2.15 +	sound_pas16.o sound_resid.o sound_sb.o sound_sb_dsp.o sound_sn76489.o sound_speaker.o \
    2.16 +	sound_ssi2001.o sound_wss.o soundopenal.o timer.o um8881f.o um8669f.o vid_ati_eeprom.o \
    2.17  	vid_ati_mach64.o vid_ati18800.o vid_ati28800.o vid_ati68860_ramdac.o vid_cga.o \
    2.18  	vid_cl5429.o vid_ega.o vid_et4000.o vid_et4000w32.o vid_et4000w32i.o \
    2.19  	vid_hercules.o vid_icd2061.o vid_ics2595.o vid_mda.o vid_olivetti_m24.o \
    2.20 @@ -21,12 +21,13 @@
    2.21  	vid_voodoo.o video.o wd76c10.o win.o win-d3d.o win-d3d-fs.o win-ddraw.o win-ddraw-fs.o win-keyboard.o win-midi.o \
    2.22  	win-mouse.o win-timer.o win-video.o x86seg.o x87.o xtide.o pc.res
    2.23  FMOBJ = dbopl.o
    2.24 +SIDOBJ = convolve.o envelope.o extfilt.o filter.o pot.o sid.o voice.o wave6581__ST.o wave6581_P_T.o wave6581_PS_.o wave6581_PST.o wave8580__ST.o wave8580_P_T.o wave8580_PS_.o wave8580_PST.o wave.o
    2.25  
    2.26  
    2.27 -LIBS = -mwindows -lwinmm -lalut -lopenal32 -lddraw -ldinput -ldxguid -ld3d9
    2.28 +LIBS = -mwindows -lwinmm -lalut -lopenal32 -lddraw -ldinput -ldxguid -ld3d9 -lstdc++
    2.29  
    2.30 -PCem.exe: $(OBJ) $(FMOBJ)
    2.31 -	$(CC) $(OBJ) $(FMOBJ) -o "PCem.exe" $(LIBS)
    2.32 +PCem.exe: $(OBJ) $(FMOBJ) $(SIDOBJ)
    2.33 +	$(CC) $(OBJ) $(FMOBJ) $(SIDOBJ) -o "PCem.exe" $(LIBS)
    2.34  
    2.35  all : PCem.exe
    2.36  
     3.1 --- a/src/ibm.h	Sat May 03 13:39:03 2014 +0100
     3.2 +++ b/src/ibm.h	Sun May 11 14:09:13 2014 +0100
     3.3 @@ -282,7 +282,7 @@
     3.4  
     3.5  #define AMIBIOS (romset==ROM_AMI386 || romset==ROM_AMI486 || romset == ROM_WIN486)
     3.6  
     3.7 -int GAMEBLASTER, GUS;
     3.8 +int GAMEBLASTER, GUS, SSI2001;
     3.9  
    3.10  enum
    3.11  {
     4.1 --- a/src/pc.c	Sat May 03 13:39:03 2014 +0100
     4.2 +++ b/src/pc.c	Sun May 11 14:09:13 2014 +0100
     4.3 @@ -26,6 +26,7 @@
     4.4  #include "sound_cms.h"
     4.5  #include "sound_opl.h"
     4.6  #include "sound_sb.h"
     4.7 +#include "sound_ssi2001.h"
     4.8  #include "timer.h"
     4.9  #include "vid_voodoo.h"
    4.10  #include "video.h"
    4.11 @@ -230,7 +231,9 @@
    4.12                  device_add(&gus_device);
    4.13          if (GAMEBLASTER)
    4.14                  device_add(&cms_device);
    4.15 -       
    4.16 +        if (SSI2001)
    4.17 +                device_add(&ssi2001_device);
    4.18 +               
    4.19          pc_reset();
    4.20          
    4.21          pit_reset();        
    4.22 @@ -271,6 +274,8 @@
    4.23                  device_add(&gus_device);
    4.24          if (GAMEBLASTER)
    4.25                  device_add(&cms_device);
    4.26 +        if (SSI2001)
    4.27 +                device_add(&ssi2001_device);
    4.28          
    4.29          pc_reset();
    4.30          
    4.31 @@ -434,6 +439,7 @@
    4.32          set_config_file(s);
    4.33          GAMEBLASTER = get_config_int(NULL, "gameblaster", 0);
    4.34          GUS = get_config_int(NULL, "gus", 0);
    4.35 +        SSI2001 = get_config_int(NULL, "ssi2001", 0);
    4.36          
    4.37          model = get_config_int(NULL, "model", 14);
    4.38  
    4.39 @@ -488,6 +494,7 @@
    4.40          config_new();
    4.41          set_config_int(NULL, "gameblaster", GAMEBLASTER);
    4.42          set_config_int(NULL, "gus", GUS);
    4.43 +        set_config_int(NULL, "ssi2001", SSI2001);
    4.44          
    4.45          set_config_int(NULL, "model", model);
    4.46          set_config_int(NULL, "cpu_manufacturer", cpu_manufacturer);
     5.1 --- a/src/pc.rc	Sat May 03 13:39:03 2014 +0100
     5.2 +++ b/src/pc.rc	Sun May 11 14:09:13 2014 +0100
     5.3 @@ -47,13 +47,13 @@
     5.4          END
     5.5  END
     5.6  
     5.7 -ConfigureDlg DIALOGEX 0, 0, 232, 240
     5.8 +ConfigureDlg DIALOGEX 0, 0, 232, 256
     5.9  STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
    5.10  CAPTION "Configure PCem"
    5.11  FONT 8, "MS Sans Serif"
    5.12  BEGIN
    5.13 -    DEFPUSHBUTTON   "OK",IDOK,64,216,50,14, WS_TABSTOP
    5.14 -    PUSHBUTTON      "Cancel",IDCANCEL,128,216,50,14, WS_TABSTOP
    5.15 +    DEFPUSHBUTTON   "OK",IDOK,64,232,50,14, WS_TABSTOP
    5.16 +    PUSHBUTTON      "Cancel",IDCANCEL,128,232,50,14, WS_TABSTOP
    5.17      COMBOBOX        IDC_COMBO1,62,16,157,120,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP
    5.18      COMBOBOX        IDC_COMBOVID,62,36,157,120,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP
    5.19      COMBOBOX        IDC_COMBOCPUM,62,56,157,120,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP
    5.20 @@ -66,7 +66,8 @@
    5.21      LTEXT           "MB", IDC_STATIC, 98, 152, 40, 10
    5.22      CONTROL         "CMS / Game Blaster",IDC_CHECK3,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,172,118,10
    5.23      CONTROL         "Gravis Ultrasound",IDC_CHECKGUS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,188,118,10    
    5.24 -    CONTROL         "Composite CGA",IDC_CHECK4,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,204,118,10
    5.25 +    CONTROL         "Innovation SSI-2001",IDC_CHECKSSI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,204,118,10
    5.26 +    CONTROL         "Composite CGA",IDC_CHECK4,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,220,118,10
    5.27      LTEXT           "Machine :",IDC_STATIC,15,16,40,10
    5.28      LTEXT           "Video :",IDC_STATIC,15,36,34,10
    5.29      LTEXT           "CPU type :",IDC_STATIC,15,56,34,10
     6.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.2 +++ b/src/resid-fp/AUTHORS	Sun May 11 14:09:13 2014 +0100
     6.3 @@ -0,0 +1,4 @@
     6.4 +Authors of reSID.
     6.5 +
     6.6 +Dag Lem: Designed and programmed complete emulation engine.
     6.7 +Antti S. Lankila: Support 6581 filter distortion, envelope & voice nonlinearities, output amp clipping effects.
     7.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     7.2 +++ b/src/resid-fp/COPYING	Sun May 11 14:09:13 2014 +0100
     7.3 @@ -0,0 +1,340 @@
     7.4 +		    GNU GENERAL PUBLIC LICENSE
     7.5 +		       Version 2, June 1991
     7.6 +
     7.7 + Copyright (C) 1989, 1991 Free Software Foundation, Inc.
     7.8 +     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
     7.9 + Everyone is permitted to copy and distribute verbatim copies
    7.10 + of this license document, but changing it is not allowed.
    7.11 +
    7.12 +			    Preamble
    7.13 +
    7.14 +  The licenses for most software are designed to take away your
    7.15 +freedom to share and change it.  By contrast, the GNU General Public
    7.16 +License is intended to guarantee your freedom to share and change free
    7.17 +software--to make sure the software is free for all its users.  This
    7.18 +General Public License applies to most of the Free Software
    7.19 +Foundation's software and to any other program whose authors commit to
    7.20 +using it.  (Some other Free Software Foundation software is covered by
    7.21 +the GNU Library General Public License instead.)  You can apply it to
    7.22 +your programs, too.
    7.23 +
    7.24 +  When we speak of free software, we are referring to freedom, not
    7.25 +price.  Our General Public Licenses are designed to make sure that you
    7.26 +have the freedom to distribute copies of free software (and charge for
    7.27 +this service if you wish), that you receive source code or can get it
    7.28 +if you want it, that you can change the software or use pieces of it
    7.29 +in new free programs; and that you know you can do these things.
    7.30 +
    7.31 +  To protect your rights, we need to make restrictions that forbid
    7.32 +anyone to deny you these rights or to ask you to surrender the rights.
    7.33 +These restrictions translate to certain responsibilities for you if you
    7.34 +distribute copies of the software, or if you modify it.
    7.35 +
    7.36 +  For example, if you distribute copies of such a program, whether
    7.37 +gratis or for a fee, you must give the recipients all the rights that
    7.38 +you have.  You must make sure that they, too, receive or can get the
    7.39 +source code.  And you must show them these terms so they know their
    7.40 +rights.
    7.41 +
    7.42 +  We protect your rights with two steps: (1) copyright the software, and
    7.43 +(2) offer you this license which gives you legal permission to copy,
    7.44 +distribute and/or modify the software.
    7.45 +
    7.46 +  Also, for each author's protection and ours, we want to make certain
    7.47 +that everyone understands that there is no warranty for this free
    7.48 +software.  If the software is modified by someone else and passed on, we
    7.49 +want its recipients to know that what they have is not the original, so
    7.50 +that any problems introduced by others will not reflect on the original
    7.51 +authors' reputations.
    7.52 +
    7.53 +  Finally, any free program is threatened constantly by software
    7.54 +patents.  We wish to avoid the danger that redistributors of a free
    7.55 +program will individually obtain patent licenses, in effect making the
    7.56 +program proprietary.  To prevent this, we have made it clear that any
    7.57 +patent must be licensed for everyone's free use or not licensed at all.
    7.58 +
    7.59 +  The precise terms and conditions for copying, distribution and
    7.60 +modification follow.
    7.61 +
    7.62 +		    GNU GENERAL PUBLIC LICENSE
    7.63 +   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
    7.64 +
    7.65 +  0. This License applies to any program or other work which contains
    7.66 +a notice placed by the copyright holder saying it may be distributed
    7.67 +under the terms of this General Public License.  The "Program", below,
    7.68 +refers to any such program or work, and a "work based on the Program"
    7.69 +means either the Program or any derivative work under copyright law:
    7.70 +that is to say, a work containing the Program or a portion of it,
    7.71 +either verbatim or with modifications and/or translated into another
    7.72 +language.  (Hereinafter, translation is included without limitation in
    7.73 +the term "modification".)  Each licensee is addressed as "you".
    7.74 +
    7.75 +Activities other than copying, distribution and modification are not
    7.76 +covered by this License; they are outside its scope.  The act of
    7.77 +running the Program is not restricted, and the output from the Program
    7.78 +is covered only if its contents constitute a work based on the
    7.79 +Program (independent of having been made by running the Program).
    7.80 +Whether that is true depends on what the Program does.
    7.81 +
    7.82 +  1. You may copy and distribute verbatim copies of the Program's
    7.83 +source code as you receive it, in any medium, provided that you
    7.84 +conspicuously and appropriately publish on each copy an appropriate
    7.85 +copyright notice and disclaimer of warranty; keep intact all the
    7.86 +notices that refer to this License and to the absence of any warranty;
    7.87 +and give any other recipients of the Program a copy of this License
    7.88 +along with the Program.
    7.89 +
    7.90 +You may charge a fee for the physical act of transferring a copy, and
    7.91 +you may at your option offer warranty protection in exchange for a fee.
    7.92 +
    7.93 +  2. You may modify your copy or copies of the Program or any portion
    7.94 +of it, thus forming a work based on the Program, and copy and
    7.95 +distribute such modifications or work under the terms of Section 1
    7.96 +above, provided that you also meet all of these conditions:
    7.97 +
    7.98 +    a) You must cause the modified files to carry prominent notices
    7.99 +    stating that you changed the files and the date of any change.
   7.100 +
   7.101 +    b) You must cause any work that you distribute or publish, that in
   7.102 +    whole or in part contains or is derived from the Program or any
   7.103 +    part thereof, to be licensed as a whole at no charge to all third
   7.104 +    parties under the terms of this License.
   7.105 +
   7.106 +    c) If the modified program normally reads commands interactively
   7.107 +    when run, you must cause it, when started running for such
   7.108 +    interactive use in the most ordinary way, to print or display an
   7.109 +    announcement including an appropriate copyright notice and a
   7.110 +    notice that there is no warranty (or else, saying that you provide
   7.111 +    a warranty) and that users may redistribute the program under
   7.112 +    these conditions, and telling the user how to view a copy of this
   7.113 +    License.  (Exception: if the Program itself is interactive but
   7.114 +    does not normally print such an announcement, your work based on
   7.115 +    the Program is not required to print an announcement.)
   7.116 +
   7.117 +These requirements apply to the modified work as a whole.  If
   7.118 +identifiable sections of that work are not derived from the Program,
   7.119 +and can be reasonably considered independent and separate works in
   7.120 +themselves, then this License, and its terms, do not apply to those
   7.121 +sections when you distribute them as separate works.  But when you
   7.122 +distribute the same sections as part of a whole which is a work based
   7.123 +on the Program, the distribution of the whole must be on the terms of
   7.124 +this License, whose permissions for other licensees extend to the
   7.125 +entire whole, and thus to each and every part regardless of who wrote it.
   7.126 +
   7.127 +Thus, it is not the intent of this section to claim rights or contest
   7.128 +your rights to work written entirely by you; rather, the intent is to
   7.129 +exercise the right to control the distribution of derivative or
   7.130 +collective works based on the Program.
   7.131 +
   7.132 +In addition, mere aggregation of another work not based on the Program
   7.133 +with the Program (or with a work based on the Program) on a volume of
   7.134 +a storage or distribution medium does not bring the other work under
   7.135 +the scope of this License.
   7.136 +
   7.137 +  3. You may copy and distribute the Program (or a work based on it,
   7.138 +under Section 2) in object code or executable form under the terms of
   7.139 +Sections 1 and 2 above provided that you also do one of the following:
   7.140 +
   7.141 +    a) Accompany it with the complete corresponding machine-readable
   7.142 +    source code, which must be distributed under the terms of Sections
   7.143 +    1 and 2 above on a medium customarily used for software interchange; or,
   7.144 +
   7.145 +    b) Accompany it with a written offer, valid for at least three
   7.146 +    years, to give any third party, for a charge no more than your
   7.147 +    cost of physically performing source distribution, a complete
   7.148 +    machine-readable copy of the corresponding source code, to be
   7.149 +    distributed under the terms of Sections 1 and 2 above on a medium
   7.150 +    customarily used for software interchange; or,
   7.151 +
   7.152 +    c) Accompany it with the information you received as to the offer
   7.153 +    to distribute corresponding source code.  (This alternative is
   7.154 +    allowed only for noncommercial distribution and only if you
   7.155 +    received the program in object code or executable form with such
   7.156 +    an offer, in accord with Subsection b above.)
   7.157 +
   7.158 +The source code for a work means the preferred form of the work for
   7.159 +making modifications to it.  For an executable work, complete source
   7.160 +code means all the source code for all modules it contains, plus any
   7.161 +associated interface definition files, plus the scripts used to
   7.162 +control compilation and installation of the executable.  However, as a
   7.163 +special exception, the source code distributed need not include
   7.164 +anything that is normally distributed (in either source or binary
   7.165 +form) with the major components (compiler, kernel, and so on) of the
   7.166 +operating system on which the executable runs, unless that component
   7.167 +itself accompanies the executable.
   7.168 +
   7.169 +If distribution of executable or object code is made by offering
   7.170 +access to copy from a designated place, then offering equivalent
   7.171 +access to copy the source code from the same place counts as
   7.172 +distribution of the source code, even though third parties are not
   7.173 +compelled to copy the source along with the object code.
   7.174 +
   7.175 +  4. You may not copy, modify, sublicense, or distribute the Program
   7.176 +except as expressly provided under this License.  Any attempt
   7.177 +otherwise to copy, modify, sublicense or distribute the Program is
   7.178 +void, and will automatically terminate your rights under this License.
   7.179 +However, parties who have received copies, or rights, from you under
   7.180 +this License will not have their licenses terminated so long as such
   7.181 +parties remain in full compliance.
   7.182 +
   7.183 +  5. You are not required to accept this License, since you have not
   7.184 +signed it.  However, nothing else grants you permission to modify or
   7.185 +distribute the Program or its derivative works.  These actions are
   7.186 +prohibited by law if you do not accept this License.  Therefore, by
   7.187 +modifying or distributing the Program (or any work based on the
   7.188 +Program), you indicate your acceptance of this License to do so, and
   7.189 +all its terms and conditions for copying, distributing or modifying
   7.190 +the Program or works based on it.
   7.191 +
   7.192 +  6. Each time you redistribute the Program (or any work based on the
   7.193 +Program), the recipient automatically receives a license from the
   7.194 +original licensor to copy, distribute or modify the Program subject to
   7.195 +these terms and conditions.  You may not impose any further
   7.196 +restrictions on the recipients' exercise of the rights granted herein.
   7.197 +You are not responsible for enforcing compliance by third parties to
   7.198 +this License.
   7.199 +
   7.200 +  7. If, as a consequence of a court judgment or allegation of patent
   7.201 +infringement or for any other reason (not limited to patent issues),
   7.202 +conditions are imposed on you (whether by court order, agreement or
   7.203 +otherwise) that contradict the conditions of this License, they do not
   7.204 +excuse you from the conditions of this License.  If you cannot
   7.205 +distribute so as to satisfy simultaneously your obligations under this
   7.206 +License and any other pertinent obligations, then as a consequence you
   7.207 +may not distribute the Program at all.  For example, if a patent
   7.208 +license would not permit royalty-free redistribution of the Program by
   7.209 +all those who receive copies directly or indirectly through you, then
   7.210 +the only way you could satisfy both it and this License would be to
   7.211 +refrain entirely from distribution of the Program.
   7.212 +
   7.213 +If any portion of this section is held invalid or unenforceable under
   7.214 +any particular circumstance, the balance of the section is intended to
   7.215 +apply and the section as a whole is intended to apply in other
   7.216 +circumstances.
   7.217 +
   7.218 +It is not the purpose of this section to induce you to infringe any
   7.219 +patents or other property right claims or to contest validity of any
   7.220 +such claims; this section has the sole purpose of protecting the
   7.221 +integrity of the free software distribution system, which is
   7.222 +implemented by public license practices.  Many people have made
   7.223 +generous contributions to the wide range of software distributed
   7.224 +through that system in reliance on consistent application of that
   7.225 +system; it is up to the author/donor to decide if he or she is willing
   7.226 +to distribute software through any other system and a licensee cannot
   7.227 +impose that choice.
   7.228 +
   7.229 +This section is intended to make thoroughly clear what is believed to
   7.230 +be a consequence of the rest of this License.
   7.231 +
   7.232 +  8. If the distribution and/or use of the Program is restricted in
   7.233 +certain countries either by patents or by copyrighted interfaces, the
   7.234 +original copyright holder who places the Program under this License
   7.235 +may add an explicit geographical distribution limitation excluding
   7.236 +those countries, so that distribution is permitted only in or among
   7.237 +countries not thus excluded.  In such case, this License incorporates
   7.238 +the limitation as if written in the body of this License.
   7.239 +
   7.240 +  9. The Free Software Foundation may publish revised and/or new versions
   7.241 +of the General Public License from time to time.  Such new versions will
   7.242 +be similar in spirit to the present version, but may differ in detail to
   7.243 +address new problems or concerns.
   7.244 +
   7.245 +Each version is given a distinguishing version number.  If the Program
   7.246 +specifies a version number of this License which applies to it and "any
   7.247 +later version", you have the option of following the terms and conditions
   7.248 +either of that version or of any later version published by the Free
   7.249 +Software Foundation.  If the Program does not specify a version number of
   7.250 +this License, you may choose any version ever published by the Free Software
   7.251 +Foundation.
   7.252 +
   7.253 +  10. If you wish to incorporate parts of the Program into other free
   7.254 +programs whose distribution conditions are different, write to the author
   7.255 +to ask for permission.  For software which is copyrighted by the Free
   7.256 +Software Foundation, write to the Free Software Foundation; we sometimes
   7.257 +make exceptions for this.  Our decision will be guided by the two goals
   7.258 +of preserving the free status of all derivatives of our free software and
   7.259 +of promoting the sharing and reuse of software generally.
   7.260 +
   7.261 +			    NO WARRANTY
   7.262 +
   7.263 +  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
   7.264 +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
   7.265 +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
   7.266 +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
   7.267 +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
   7.268 +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
   7.269 +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
   7.270 +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
   7.271 +REPAIR OR CORRECTION.
   7.272 +
   7.273 +  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
   7.274 +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
   7.275 +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
   7.276 +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
   7.277 +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
   7.278 +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
   7.279 +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
   7.280 +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
   7.281 +POSSIBILITY OF SUCH DAMAGES.
   7.282 +
   7.283 +		     END OF TERMS AND CONDITIONS
   7.284 +
   7.285 +	    How to Apply These Terms to Your New Programs
   7.286 +
   7.287 +  If you develop a new program, and you want it to be of the greatest
   7.288 +possible use to the public, the best way to achieve this is to make it
   7.289 +free software which everyone can redistribute and change under these terms.
   7.290 +
   7.291 +  To do so, attach the following notices to the program.  It is safest
   7.292 +to attach them to the start of each source file to most effectively
   7.293 +convey the exclusion of warranty; and each file should have at least
   7.294 +the "copyright" line and a pointer to where the full notice is found.
   7.295 +
   7.296 +    <one line to give the program's name and a brief idea of what it does.>
   7.297 +    Copyright (C) <year>  <name of author>
   7.298 +
   7.299 +    This program is free software; you can redistribute it and/or modify
   7.300 +    it under the terms of the GNU General Public License as published by
   7.301 +    the Free Software Foundation; either version 2 of the License, or
   7.302 +    (at your option) any later version.
   7.303 +
   7.304 +    This program is distributed in the hope that it will be useful,
   7.305 +    but WITHOUT ANY WARRANTY; without even the implied warranty of
   7.306 +    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   7.307 +    GNU General Public License for more details.
   7.308 +
   7.309 +    You should have received a copy of the GNU General Public License
   7.310 +    along with this program; if not, write to the Free Software
   7.311 +    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   7.312 +
   7.313 +
   7.314 +Also add information on how to contact you by electronic and paper mail.
   7.315 +
   7.316 +If the program is interactive, make it output a short notice like this
   7.317 +when it starts in an interactive mode:
   7.318 +
   7.319 +    Gnomovision version 69, Copyright (C) year  name of author
   7.320 +    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
   7.321 +    This is free software, and you are welcome to redistribute it
   7.322 +    under certain conditions; type `show c' for details.
   7.323 +
   7.324 +The hypothetical commands `show w' and `show c' should show the appropriate
   7.325 +parts of the General Public License.  Of course, the commands you use may
   7.326 +be called something other than `show w' and `show c'; they could even be
   7.327 +mouse-clicks or menu items--whatever suits your program.
   7.328 +
   7.329 +You should also get your employer (if you work as a programmer) or your
   7.330 +school, if any, to sign a "copyright disclaimer" for the program, if
   7.331 +necessary.  Here is a sample; alter the names:
   7.332 +
   7.333 +  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
   7.334 +  `Gnomovision' (which makes passes at compilers) written by James Hacker.
   7.335 +
   7.336 +  <signature of Ty Coon>, 1 April 1989
   7.337 +  Ty Coon, President of Vice
   7.338 +
   7.339 +This General Public License does not permit incorporating your program into
   7.340 +proprietary programs.  If your program is a subroutine library, you may
   7.341 +consider it more useful to permit linking proprietary applications with the
   7.342 +library.  If this is what you want to do, use the GNU Library General
   7.343 +Public License instead of this License.
     8.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     8.2 +++ b/src/resid-fp/ChangeLog	Sun May 11 14:09:13 2014 +0100
     8.3 @@ -0,0 +1,136 @@
     8.4 +2008-12-05  Antti S. Lankila  <alankila@bel.fi>
     8.5 +
     8.6 +	* Sync against V27 patch version. Filter updates described below.
     8.7 +
     8.8 +	* Reduce Q maximum to 2.2 or so. This may still be slightly too much,
     8.9 +	  but it's hard to say exactly...
    8.10 +
    8.11 +	* Arrange for about 3 dB boost of lowpass output that is independent
    8.12 +	  of state variable mixing or other feedback. This seems to produce
    8.13 +	  the right kind of sounds for songs like AMJ's Blasphemy.
    8.14 +
    8.15 +	* Assume that bp is slightly louder than bp (= more distorted).
    8.16 +	  This seems to help against very large number of songs which sport
    8.17 +	  lead sounds and effects distorted in a smooth, bassy way.
    8.18 +
    8.19 +	* Parameter tuneup.
    8.20 +
    8.21 +2008-10-31  Antti S. Lankila  <alankila@bel.fi>
    8.22 +
    8.23 +	* Sync against V25 patch version. Filter updates described below.
    8.24 +
    8.25 +	* Tweak filter algorithm to do some state variable mixing in the
    8.26 +	  6581 code path. This corresponds with assumed output impedance of
    8.27 +	  the SID "amplifiers", and is separate effect to the output strip
    8.28 +	  backmixing.
    8.29 +	
    8.30 +	* Retire the V24 attempt of dynamically adjusting BP distortion
    8.31 +	  threshold. It doesn't really seem to work.
    8.32 +
    8.33 +	* Increase Q value maximum to 2.5. This may be too much, but it sounds
    8.34 +	  fine to me.
    8.35 +
    8.36 +	* JT's Star Ball was very distorted when played by V24.  This related
    8.37 +	  to the hardclipping I had assumed to occur in the filter output amp,
    8.38 +	  but maybe that theory is incorrect. I now only add distortion to the
    8.39 +	  unfiltered voice path, but I'm not happy about it.
    8.40 +
    8.41 +2008-08-29  Antti S. Lankila  <alankila@bel.fi>
    8.42 +
    8.43 +	* Optimized resampling to be about 2x faster through using aliasing
    8.44 +	  to increase passband width and hence reduce FIR length.
    8.45 +	  
    8.46 +	* Fixed some valgrind warnings.
    8.47 +	
    8.48 +	* Added nuke_denormals() method to periodically flush these to zero, as
    8.49 +	  this can only be done for SSE registers by the FPU and we can't use
    8.50 +	  any in order to support CPUs older than P3.
    8.51 +
    8.52 +	* Marco, Hannu and me developed a runtime switching system
    8.53 +	  that detects SSE from cpuinfo and calls some SSE routines when they
    8.54 +	  are compiled in and the CPU can support them. We lost only very
    8.55 +	  little performance, but gained compatibility to very, very old
    8.56 +	  hardware.
    8.57 +	  
    8.58 +	* The old code for ST_lockup proved unnecessary, so it is now removed. 
    8.59 +
    8.60 +2008-08-21  Antti S. Lankila  <alankila@bel.fi>
    8.61 +
    8.62 +	* Fixed a bug where nonlinearity setting appeared to get lost, and
    8.63 +	  kenchis discovered further bugs in it. Oh well.
    8.64 +
    8.65 +	* I removed a lot of code associated with the lower quality modes of
    8.66 +	  ReSID, and only left the 1 MHz clock routines. Analysis shows that the
    8.67 +	  filter code is a major culprit, but the digital side emulation is not
    8.68 +	  completely cheap, either. I already added some small hacks to optimize
    8.69 +	  it, and I now think about reinjecting pieces of those clocking modes
    8.70 +	  that run the analog parts with reduced accuracy.
    8.71 +
    8.72 +	* I defined type4 filters based on equation of straight line. These are
    8.73 +	  characterized by parameters k and b, and the equation is
    8.74 +	  freq = k * fc. Strictly speaking, straight line is not 100 %
    8.75 +	  accurate, and a 2nd degree component would help, but based on
    8.76 +	  measurements against two of Trurl's 8580s, the maximum error
    8.77 +	  introduced using linear approximation is mere 3 %.
    8.78 +
    8.79 +2008-08-10  Antti S. Lankila  <alankila@bel.fi>
    8.80 +
    8.81 +	* I ripped off Type1 definitions from the filter, and the spline.h
    8.82 +	  and PointPlotter were unnecessary and so removed.
    8.83 +
    8.84 +	* I also added a bit of hardclipping in the output that seems to be
    8.85 +	  required to get Fred Gray's Break Thru. This might not occur so
    8.86 +	  strongly on all chips, so it should probably be added as a proper
    8.87 +	  tunable. For now, I just settled for a slight effect to collect
    8.88 +	  feedback. 
    8.89 +
    8.90 +2008-07-15  Antti S. Lankila  <alankila@bel.fi>
    8.91 +
    8.92 +	* This release is a bit slower than usual. The culprit is the changes in
    8.93 +	  voice.h where a new kinked-dac style calculation is used to simulate
    8.94 +	  the nonlinear shape of the waveform outputs. The cost of the new
    8.95 +	  calculation varies by song as I was lazy and only cached the result of
    8.96 +	  previous calculation, so speed depends on the pitch of the waveforms
    8.97 +	  and the precise waveform chosen.
    8.98 +
    8.99 +	* exp() is back, but this time it is implemented as an integer
   8.100 +	  calculation according to Schraudolph's paper "A Fast, Compact
   8.101 +	  Approximation of the Exponential Function". Using near-proper exp()
   8.102 +	  simplified the distortion algorithm. I think it all sounds much better
   8.103 +	  now.
   8.104 +
   8.105 +	* A new effect where I mix bp-hp and lp-bp together by their difference
   8.106 +	  to simulate a small resistor between them appears to improve SidRiders
   8.107 +	  and several other songs, largerly eliminating some types of hard
   8.108 +	  distortion sounds that do not occur on the chip. It also helped
   8.109 +	  Mechanicus. I am trying to understand where this term comes from... 
   8.110 +
   8.111 +2008-07-09  Antti S. Lankila  <alankila@bel.fi>
   8.112 +
   8.113 +	* I now have somewhat less arbitrary values for the distortion
   8.114 +	  tunables. They are now related to the relative signal levels in the
   8.115 +	  simulation. I'm still sorting out the particulars of the values I
   8.116 +	  ended up with ("why 128 instead of 256").
   8.117 +
   8.118 +2008-03-02  Antti S. Lankila  <alankila@bel.fi>
   8.119 +
   8.120 +	* Exposed the filter at sid.cc to callers through get_filter()
   8.121 +	  method, and fixed a few types. 
   8.122 +
   8.123 +2008-02-19  Antti S. Lankila  <alankila@bel.fi>
   8.124 +
   8.125 +	* For some reason ReSID code adjusted the external filter frequency
   8.126 +	  based on calculated passband, while in the real C64 the filter is
   8.127 +	  fixed to about 16 kHz.
   8.128 +
   8.129 +2008-02-06  Antti S. Lankila  <alankila@bel.fi>
   8.130 +
   8.131 +	* I got interested to improve ReSID after chatting with Kevtris. He is
   8.132 +	  aiming to replicate the filter using analog hardware. He has the EE
   8.133 +	  experience that I have sorely lacked and made an infinitely valuable
   8.134 +	  contribution by telling me exactly how the distortion works.
   8.135 +
   8.136 +2004-06-11  Dag Lem  <resid@nimrod.no>
   8.137 +
   8.138 +	* Version 0.16 released. (From this point forwards, read
   8.139 +	  ../resid/ChangeLog.)
     9.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     9.2 +++ b/src/resid-fp/INSTALL	Sun May 11 14:09:13 2014 +0100
     9.3 @@ -0,0 +1,14 @@
     9.4 +Unless you want to do anything fancy, just say:
     9.5 +
     9.6 +% ./configure
     9.7 +% make
     9.8 +
     9.9 +ReSID-FP is compiled with a C++ compiler, so if you wish to specify compiler
    9.10 +and compiler flags you must set CXX and CXXFLAGS, e.g.:
    9.11 +% CXX=g++ CXXFLAGS="-g -O" ./configure
    9.12 +
    9.13 +In addition to normal configure flags, you may specify
    9.14 +--disable-inline - Disable inlining of functions (for debugging/profiling)
    9.15 +
    9.16 +ReSID-FP makes no installable files. The libresid.a is linked to final
    9.17 +executable automatically.
    10.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    10.2 +++ b/src/resid-fp/Makefile.am	Sun May 11 14:09:13 2014 +0100
    10.3 @@ -0,0 +1,29 @@
    10.4 +## Process this file with automake to create Makefile.in
    10.5 +
    10.6 +AR = @AR@
    10.7 +
    10.8 +noinst_LIBRARIES = libresidfp.a
    10.9 +
   10.10 +libresidfp_a_SOURCES = sid.cc voice.cc wave.cc envelope.cc filter.cc extfilt.cc pot.cc version.cc convolve.cc $(noinst_DATA:.dat=.cc)
   10.11 +
   10.12 +BUILT_SOURCES = $(noinst_DATA:.dat=.cc)
   10.13 +
   10.14 +noinst_HEADERS = sid.h voice.h wave.h envelope.h filter.h extfilt.h pot.h
   10.15 +
   10.16 +noinst_DATA = wave6581_PST.dat wave6581_PS_.dat wave6581_P_T.dat wave6581__ST.dat wave8580_PST.dat wave8580_PS_.dat wave8580_P_T.dat wave8580__ST.dat
   10.17 +
   10.18 +noinst_SCRIPTS = samp2src.pl
   10.19 +
   10.20 +EXTRA_DIST = $(noinst_HEADERS) $(noinst_DATA) $(noinst_SCRIPTS) README.VICE convolve-sse.cc
   10.21 +
   10.22 +SUFFIXES = .dat
   10.23 +
   10.24 +.dat.cc:
   10.25 +	$(PERL) $(srcdir)/samp2src.pl $* $< $(srcdir)/$@
   10.26 +
   10.27 +if USE_SSE
   10.28 +convolve-sse.o: convolve-sse.cc
   10.29 +	$(CXXCOMPILE) -msse -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<
   10.30 +
   10.31 +libresidfp_a_LIBADD = convolve-sse.o
   10.32 +endif
    11.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    11.2 +++ b/src/resid-fp/Makefile.in	Sun May 11 14:09:13 2014 +0100
    11.3 @@ -0,0 +1,557 @@
    11.4 +# Makefile.in generated by automake 1.9.6 from Makefile.am.
    11.5 +# @configure_input@
    11.6 +
    11.7 +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
    11.8 +# 2003, 2004, 2005  Free Software Foundation, Inc.
    11.9 +# This Makefile.in is free software; the Free Software Foundation
   11.10 +# gives unlimited permission to copy and/or distribute it,
   11.11 +# with or without modifications, as long as this notice is preserved.
   11.12 +
   11.13 +# This program is distributed in the hope that it will be useful,
   11.14 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
   11.15 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
   11.16 +# PARTICULAR PURPOSE.
   11.17 +
   11.18 +@SET_MAKE@
   11.19 +
   11.20 +
   11.21 +
   11.22 +
   11.23 +srcdir = @srcdir@
   11.24 +top_srcdir = @top_srcdir@
   11.25 +VPATH = @srcdir@
   11.26 +pkgdatadir = $(datadir)/@PACKAGE@
   11.27 +pkglibdir = $(libdir)/@PACKAGE@
   11.28 +pkgincludedir = $(includedir)/@PACKAGE@
   11.29 +top_builddir = .
   11.30 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
   11.31 +INSTALL = @INSTALL@
   11.32 +install_sh_DATA = $(install_sh) -c -m 644
   11.33 +install_sh_PROGRAM = $(install_sh) -c
   11.34 +install_sh_SCRIPT = $(install_sh) -c
   11.35 +INSTALL_HEADER = $(INSTALL_DATA)
   11.36 +transform = $(program_transform_name)
   11.37 +NORMAL_INSTALL = :
   11.38 +PRE_INSTALL = :
   11.39 +POST_INSTALL = :
   11.40 +NORMAL_UNINSTALL = :
   11.41 +PRE_UNINSTALL = :
   11.42 +POST_UNINSTALL = :
   11.43 +subdir = .
   11.44 +DIST_COMMON = README $(am__configure_deps) $(noinst_HEADERS) \
   11.45 +	$(srcdir)/../../depcomp $(srcdir)/../../install-sh \
   11.46 +	$(srcdir)/../../missing $(srcdir)/../../mkinstalldirs \
   11.47 +	$(srcdir)/Makefile.am $(srcdir)/Makefile.in \
   11.48 +	$(srcdir)/siddefs-fp.h.in $(top_srcdir)/configure AUTHORS \
   11.49 +	COPYING ChangeLog INSTALL NEWS
   11.50 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
   11.51 +am__aclocal_m4_deps = $(top_srcdir)/configure.in
   11.52 +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
   11.53 +	$(ACLOCAL_M4)
   11.54 +am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
   11.55 + configure.lineno configure.status.lineno
   11.56 +mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
   11.57 +CONFIG_CLEAN_FILES = siddefs-fp.h
   11.58 +LIBRARIES = $(noinst_LIBRARIES)
   11.59 +ARFLAGS = cru
   11.60 +libresidfp_a_AR = $(AR) $(ARFLAGS)
   11.61 +@USE_SSE_TRUE@libresidfp_a_DEPENDENCIES = convolve-sse.o
   11.62 +am__objects_1 = wave6581_PST.$(OBJEXT) wave6581_PS_.$(OBJEXT) \
   11.63 +	wave6581_P_T.$(OBJEXT) wave6581__ST.$(OBJEXT) \
   11.64 +	wave8580_PST.$(OBJEXT) wave8580_PS_.$(OBJEXT) \
   11.65 +	wave8580_P_T.$(OBJEXT) wave8580__ST.$(OBJEXT)
   11.66 +am_libresidfp_a_OBJECTS = sid.$(OBJEXT) voice.$(OBJEXT) wave.$(OBJEXT) \
   11.67 +	envelope.$(OBJEXT) filter.$(OBJEXT) extfilt.$(OBJEXT) \
   11.68 +	pot.$(OBJEXT) version.$(OBJEXT) convolve.$(OBJEXT) \
   11.69 +	$(am__objects_1)
   11.70 +libresidfp_a_OBJECTS = $(am_libresidfp_a_OBJECTS)
   11.71 +SCRIPTS = $(noinst_SCRIPTS)
   11.72 +DEFAULT_INCLUDES = -I. -I$(srcdir)
   11.73 +depcomp = $(SHELL) $(top_srcdir)/../../depcomp
   11.74 +am__depfiles_maybe = depfiles
   11.75 +CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
   11.76 +	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
   11.77 +CXXLD = $(CXX)
   11.78 +CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
   11.79 +	-o $@
   11.80 +SOURCES = $(libresidfp_a_SOURCES)
   11.81 +DIST_SOURCES = $(libresidfp_a_SOURCES)
   11.82 +DATA = $(noinst_DATA)
   11.83 +HEADERS = $(noinst_HEADERS)
   11.84 +ETAGS = etags
   11.85 +CTAGS = ctags
   11.86 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
   11.87 +distdir = $(PACKAGE)-$(VERSION)
   11.88 +top_distdir = $(distdir)
   11.89 +am__remove_distdir = \
   11.90 +  { test ! -d $(distdir) \
   11.91 +    || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
   11.92 +         && rm -fr $(distdir); }; }
   11.93 +DIST_ARCHIVES = $(distdir).tar.gz
   11.94 +GZIP_ENV = --best
   11.95 +distuninstallcheck_listfiles = find . -type f -print
   11.96 +distcleancheck_listfiles = find . -type f -print
   11.97 +ACLOCAL = @ACLOCAL@
   11.98 +AMDEP_FALSE = @AMDEP_FALSE@
   11.99 +AMDEP_TRUE = @AMDEP_TRUE@
  11.100 +AMTAR = @AMTAR@
  11.101 +AR = @AR@
  11.102 +AUTOCONF = @AUTOCONF@
  11.103 +AUTOHEADER = @AUTOHEADER@
  11.104 +AUTOMAKE = @AUTOMAKE@
  11.105 +AWK = @AWK@
  11.106 +CPPFLAGS = @CPPFLAGS@
  11.107 +CXX = @CXX@
  11.108 +CXXCPP = @CXXCPP@
  11.109 +CXXDEPMODE = @CXXDEPMODE@
  11.110 +CXXFLAGS = @CXXFLAGS@
  11.111 +CYGPATH_W = @CYGPATH_W@
  11.112 +DEFS = @DEFS@
  11.113 +DEPDIR = @DEPDIR@
  11.114 +ECHO_C = @ECHO_C@
  11.115 +ECHO_N = @ECHO_N@
  11.116 +ECHO_T = @ECHO_T@
  11.117 +EGREP = @EGREP@
  11.118 +EXEEXT = @EXEEXT@
  11.119 +GREP = @GREP@
  11.120 +HAVE_EXPF_PROTOTYPE = @HAVE_EXPF_PROTOTYPE@
  11.121 +HAVE_LOGF_PROTOTYPE = @HAVE_LOGF_PROTOTYPE@
  11.122 +INSTALL_DATA = @INSTALL_DATA@
  11.123 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
  11.124 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
  11.125 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
  11.126 +LDFLAGS = @LDFLAGS@
  11.127 +LIBOBJS = @LIBOBJS@
  11.128 +LIBS = @LIBS@
  11.129 +LTLIBOBJS = @LTLIBOBJS@
  11.130 +MAKEINFO = @MAKEINFO@
  11.131 +OBJEXT = @OBJEXT@
  11.132 +PACKAGE = @PACKAGE@
  11.133 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
  11.134 +PACKAGE_NAME = @PACKAGE_NAME@
  11.135 +PACKAGE_STRING = @PACKAGE_STRING@
  11.136 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
  11.137 +PACKAGE_VERSION = @PACKAGE_VERSION@
  11.138 +PATH_SEPARATOR = @PATH_SEPARATOR@
  11.139 +PERL = @PERL@
  11.140 +RANLIB = @RANLIB@
  11.141 +RESID_HAVE_BOOL = @RESID_HAVE_BOOL@
  11.142 +RESID_INLINE = @RESID_INLINE@
  11.143 +RESID_USE_SSE = @RESID_USE_SSE@
  11.144 +SET_MAKE = @SET_MAKE@
  11.145 +SHELL = @SHELL@
  11.146 +STRIP = @STRIP@
  11.147 +USE_SSE_FALSE = @USE_SSE_FALSE@
  11.148 +USE_SSE_TRUE = @USE_SSE_TRUE@
  11.149 +VERSION = @VERSION@
  11.150 +ac_ct_CXX = @ac_ct_CXX@
  11.151 +am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
  11.152 +am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
  11.153 +am__include = @am__include@
  11.154 +am__leading_dot = @am__leading_dot@
  11.155 +am__quote = @am__quote@
  11.156 +am__tar = @am__tar@
  11.157 +am__untar = @am__untar@
  11.158 +bindir = @bindir@
  11.159 +build_alias = @build_alias@
  11.160 +datadir = @datadir@
  11.161 +datarootdir = @datarootdir@
  11.162 +docdir = @docdir@
  11.163 +dvidir = @dvidir@
  11.164 +exec_prefix = @exec_prefix@
  11.165 +host_alias = @host_alias@
  11.166 +htmldir = @htmldir@
  11.167 +includedir = @includedir@
  11.168 +infodir = @infodir@
  11.169 +install_sh = @install_sh@
  11.170 +libdir = @libdir@
  11.171 +libexecdir = @libexecdir@
  11.172 +localedir = @localedir@
  11.173 +localstatedir = @localstatedir@
  11.174 +mandir = @mandir@
  11.175 +mkdir_p = @mkdir_p@
  11.176 +oldincludedir = @oldincludedir@
  11.177 +pdfdir = @pdfdir@
  11.178 +prefix = @prefix@
  11.179 +program_transform_name = @program_transform_name@
  11.180 +psdir = @psdir@
  11.181 +sbindir = @sbindir@
  11.182 +sharedstatedir = @sharedstatedir@
  11.183 +sysconfdir = @sysconfdir@
  11.184 +target_alias = @target_alias@
  11.185 +noinst_LIBRARIES = libresidfp.a
  11.186 +libresidfp_a_SOURCES = sid.cc voice.cc wave.cc envelope.cc filter.cc extfilt.cc pot.cc version.cc convolve.cc $(noinst_DATA:.dat=.cc)
  11.187 +BUILT_SOURCES = $(noinst_DATA:.dat=.cc)
  11.188 +noinst_HEADERS = sid.h voice.h wave.h envelope.h filter.h extfilt.h pot.h
  11.189 +noinst_DATA = wave6581_PST.dat wave6581_PS_.dat wave6581_P_T.dat wave6581__ST.dat wave8580_PST.dat wave8580_PS_.dat wave8580_P_T.dat wave8580__ST.dat
  11.190 +noinst_SCRIPTS = samp2src.pl
  11.191 +EXTRA_DIST = $(noinst_HEADERS) $(noinst_DATA) $(noinst_SCRIPTS) README.VICE convolve-sse.cc
  11.192 +SUFFIXES = .dat
  11.193 +@USE_SSE_TRUE@libresidfp_a_LIBADD = convolve-sse.o
  11.194 +all: $(BUILT_SOURCES)
  11.195 +	$(MAKE) $(AM_MAKEFLAGS) all-am
  11.196 +
  11.197 +.SUFFIXES:
  11.198 +.SUFFIXES: .dat .cc .o .obj
  11.199 +am--refresh:
  11.200 +	@:
  11.201 +$(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
  11.202 +	@for dep in $?; do \
  11.203 +	  case '$(am__configure_deps)' in \
  11.204 +	    *$$dep*) \
  11.205 +	      echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \
  11.206 +	      cd $(srcdir) && $(AUTOMAKE) --gnu  \
  11.207 +		&& exit 0; \
  11.208 +	      exit 1;; \
  11.209 +	  esac; \
  11.210 +	done; \
  11.211 +	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  Makefile'; \
  11.212 +	cd $(top_srcdir) && \
  11.213 +	  $(AUTOMAKE) --gnu  Makefile
  11.214 +.PRECIOUS: Makefile
  11.215 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
  11.216 +	@case '$?' in \
  11.217 +	  *config.status*) \
  11.218 +	    echo ' $(SHELL) ./config.status'; \
  11.219 +	    $(SHELL) ./config.status;; \
  11.220 +	  *) \
  11.221 +	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
  11.222 +	    cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
  11.223 +	esac;
  11.224 +
  11.225 +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
  11.226 +	$(SHELL) ./config.status --recheck
  11.227 +
  11.228 +$(top_srcdir)/configure:  $(am__configure_deps)
  11.229 +	cd $(srcdir) && $(AUTOCONF)
  11.230 +$(ACLOCAL_M4):  $(am__aclocal_m4_deps)
  11.231 +	cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
  11.232 +siddefs-fp.h: $(top_builddir)/config.status $(srcdir)/siddefs-fp.h.in
  11.233 +	cd $(top_builddir) && $(SHELL) ./config.status $@
  11.234 +
  11.235 +clean-noinstLIBRARIES:
  11.236 +	-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
  11.237 +libresidfp.a: $(libresidfp_a_OBJECTS) $(libresidfp_a_DEPENDENCIES) 
  11.238 +	-rm -f libresidfp.a
  11.239 +	$(libresidfp_a_AR) libresidfp.a $(libresidfp_a_OBJECTS) $(libresidfp_a_LIBADD)
  11.240 +	$(RANLIB) libresidfp.a
  11.241 +
  11.242 +mostlyclean-compile:
  11.243 +	-rm -f *.$(OBJEXT)
  11.244 +
  11.245 +distclean-compile:
  11.246 +	-rm -f *.tab.c
  11.247 +
  11.248 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/convolve.Po@am__quote@
  11.249 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/envelope.Po@am__quote@
  11.250 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/extfilt.Po@am__quote@
  11.251 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/filter.Po@am__quote@
  11.252 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pot.Po@am__quote@
  11.253 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sid.Po@am__quote@
  11.254 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/version.Po@am__quote@
  11.255 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/voice.Po@am__quote@
  11.256 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wave.Po@am__quote@
  11.257 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wave6581_PST.Po@am__quote@
  11.258 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wave6581_PS_.Po@am__quote@
  11.259 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wave6581_P_T.Po@am__quote@
  11.260 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wave6581__ST.Po@am__quote@
  11.261 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wave8580_PST.Po@am__quote@
  11.262 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wave8580_PS_.Po@am__quote@
  11.263 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wave8580_P_T.Po@am__quote@
  11.264 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wave8580__ST.Po@am__quote@
  11.265 +
  11.266 +.cc.o:
  11.267 +@am__fastdepCXX_TRUE@	if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
  11.268 +@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
  11.269 +@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
  11.270 +@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
  11.271 +@am__fastdepCXX_FALSE@	$(CXXCOMPILE) -c -o $@ $<
  11.272 +
  11.273 +.cc.obj:
  11.274 +@am__fastdepCXX_TRUE@	if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
  11.275 +@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
  11.276 +@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
  11.277 +@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
  11.278 +@am__fastdepCXX_FALSE@	$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
  11.279 +uninstall-info-am:
  11.280 +
  11.281 +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
  11.282 +	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
  11.283 +	unique=`for i in $$list; do \
  11.284 +	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
  11.285 +	  done | \
  11.286 +	  $(AWK) '    { files[$$0] = 1; } \
  11.287 +	       END { for (i in files) print i; }'`; \
  11.288 +	mkid -fID $$unique
  11.289 +tags: TAGS
  11.290 +
  11.291 +TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
  11.292 +		$(TAGS_FILES) $(LISP)
  11.293 +	tags=; \
  11.294 +	here=`pwd`; \
  11.295 +	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
  11.296 +	unique=`for i in $$list; do \
  11.297 +	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
  11.298 +	  done | \
  11.299 +	  $(AWK) '    { files[$$0] = 1; } \
  11.300 +	       END { for (i in files) print i; }'`; \
  11.301 +	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
  11.302 +	  test -n "$$unique" || unique=$$empty_fix; \
  11.303 +	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
  11.304 +	    $$tags $$unique; \
  11.305 +	fi
  11.306 +ctags: CTAGS
  11.307 +CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
  11.308 +		$(TAGS_FILES) $(LISP)
  11.309 +	tags=; \
  11.310 +	here=`pwd`; \
  11.311 +	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
  11.312 +	unique=`for i in $$list; do \
  11.313 +	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
  11.314 +	  done | \
  11.315 +	  $(AWK) '    { files[$$0] = 1; } \
  11.316 +	       END { for (i in files) print i; }'`; \
  11.317 +	test -z "$(CTAGS_ARGS)$$tags$$unique" \
  11.318 +	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
  11.319 +	     $$tags $$unique
  11.320 +
  11.321 +GTAGS:
  11.322 +	here=`$(am__cd) $(top_builddir) && pwd` \
  11.323 +	  && cd $(top_srcdir) \
  11.324 +	  && gtags -i $(GTAGS_ARGS) $$here
  11.325 +
  11.326 +distclean-tags:
  11.327 +	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
  11.328 +
  11.329 +distdir: $(DISTFILES)
  11.330 +	$(am__remove_distdir)
  11.331 +	mkdir $(distdir)
  11.332 +	$(mkdir_p) $(distdir)/. $(distdir)/../..
  11.333 +	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
  11.334 +	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
  11.335 +	list='$(DISTFILES)'; for file in $$list; do \
  11.336 +	  case $$file in \
  11.337 +	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
  11.338 +	    $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
  11.339 +	  esac; \
  11.340 +	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
  11.341 +	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
  11.342 +	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
  11.343 +	    dir="/$$dir"; \
  11.344 +	    $(mkdir_p) "$(distdir)$$dir"; \
  11.345 +	  else \
  11.346 +	    dir=''; \
  11.347 +	  fi; \
  11.348 +	  if test -d $$d/$$file; then \
  11.349 +	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
  11.350 +	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
  11.351 +	    fi; \
  11.352 +	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
  11.353 +	  else \
  11.354 +	    test -f $(distdir)/$$file \
  11.355 +	    || cp -p $$d/$$file $(distdir)/$$file \
  11.356 +	    || exit 1; \
  11.357 +	  fi; \
  11.358 +	done
  11.359 +	-find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
  11.360 +	  ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
  11.361 +	  ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
  11.362 +	  ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
  11.363 +	|| chmod -R a+r $(distdir)
  11.364 +dist-gzip: distdir
  11.365 +	tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
  11.366 +	$(am__remove_distdir)
  11.367 +
  11.368 +dist-bzip2: distdir
  11.369 +	tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
  11.370 +	$(am__remove_distdir)
  11.371 +
  11.372 +dist-tarZ: distdir
  11.373 +	tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
  11.374 +	$(am__remove_distdir)
  11.375 +
  11.376 +dist-shar: distdir
  11.377 +	shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
  11.378 +	$(am__remove_distdir)
  11.379 +
  11.380 +dist-zip: distdir
  11.381 +	-rm -f $(distdir).zip
  11.382 +	zip -rq $(distdir).zip $(distdir)
  11.383 +	$(am__remove_distdir)
  11.384 +
  11.385 +dist dist-all: distdir
  11.386 +	tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
  11.387 +	$(am__remove_distdir)
  11.388 +
  11.389 +# This target untars the dist file and tries a VPATH configuration.  Then
  11.390 +# it guarantees that the distribution is self-contained by making another
  11.391 +# tarfile.
  11.392 +distcheck: dist
  11.393 +	case '$(DIST_ARCHIVES)' in \
  11.394 +	*.tar.gz*) \
  11.395 +	  GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
  11.396 +	*.tar.bz2*) \
  11.397 +	  bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
  11.398 +	*.tar.Z*) \
  11.399 +	  uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
  11.400 +	*.shar.gz*) \
  11.401 +	  GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
  11.402 +	*.zip*) \
  11.403 +	  unzip $(distdir).zip ;;\
  11.404 +	esac
  11.405 +	chmod -R a-w $(distdir); chmod a+w $(distdir)
  11.406 +	mkdir $(distdir)/_build
  11.407 +	mkdir $(distdir)/_inst
  11.408 +	chmod a-w $(distdir)
  11.409 +	dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
  11.410 +	  && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
  11.411 +	  && cd $(distdir)/_build \
  11.412 +	  && ../configure --srcdir=.. --prefix="$$dc_install_base" \
  11.413 +	    $(DISTCHECK_CONFIGURE_FLAGS) \
  11.414 +	  && $(MAKE) $(AM_MAKEFLAGS) \
  11.415 +	  && $(MAKE) $(AM_MAKEFLAGS) dvi \
  11.416 +	  && $(MAKE) $(AM_MAKEFLAGS) check \
  11.417 +	  && $(MAKE) $(AM_MAKEFLAGS) install \
  11.418 +	  && $(MAKE) $(AM_MAKEFLAGS) installcheck \
  11.419 +	  && $(MAKE) $(AM_MAKEFLAGS) uninstall \
  11.420 +	  && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
  11.421 +	        distuninstallcheck \
  11.422 +	  && chmod -R a-w "$$dc_install_base" \
  11.423 +	  && ({ \
  11.424 +	       (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
  11.425 +	       && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
  11.426 +	       && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
  11.427 +	       && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
  11.428 +	            distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
  11.429 +	      } || { rm -rf "$$dc_destdir"; exit 1; }) \
  11.430 +	  && rm -rf "$$dc_destdir" \
  11.431 +	  && $(MAKE) $(AM_MAKEFLAGS) dist \
  11.432 +	  && rm -rf $(DIST_ARCHIVES) \
  11.433 +	  && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
  11.434 +	$(am__remove_distdir)
  11.435 +	@(echo "$(distdir) archives ready for distribution: "; \
  11.436 +	  list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
  11.437 +	  sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}'
  11.438 +distuninstallcheck:
  11.439 +	@cd $(distuninstallcheck_dir) \
  11.440 +	&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
  11.441 +	   || { echo "ERROR: files left after uninstall:" ; \
  11.442 +	        if test -n "$(DESTDIR)"; then \
  11.443 +	          echo "  (check DESTDIR support)"; \
  11.444 +	        fi ; \
  11.445 +	        $(distuninstallcheck_listfiles) ; \
  11.446 +	        exit 1; } >&2
  11.447 +distcleancheck: distclean
  11.448 +	@if test '$(srcdir)' = . ; then \
  11.449 +	  echo "ERROR: distcleancheck can only run from a VPATH build" ; \
  11.450 +	  exit 1 ; \
  11.451 +	fi
  11.452 +	@test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
  11.453 +	  || { echo "ERROR: files left in build directory after distclean:" ; \
  11.454 +	       $(distcleancheck_listfiles) ; \
  11.455 +	       exit 1; } >&2
  11.456 +check-am: all-am
  11.457 +check: $(BUILT_SOURCES)
  11.458 +	$(MAKE) $(AM_MAKEFLAGS) check-am
  11.459 +all-am: Makefile $(LIBRARIES) $(SCRIPTS) $(DATA) $(HEADERS)
  11.460 +installdirs:
  11.461 +install: $(BUILT_SOURCES)
  11.462 +	$(MAKE) $(AM_MAKEFLAGS) install-am
  11.463 +install-exec: install-exec-am
  11.464 +install-data: install-data-am
  11.465 +uninstall: uninstall-am
  11.466 +
  11.467 +install-am: all-am
  11.468 +	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
  11.469 +
  11.470 +installcheck: installcheck-am
  11.471 +install-strip:
  11.472 +	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
  11.473 +	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
  11.474 +	  `test -z '$(STRIP)' || \
  11.475 +	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
  11.476 +mostlyclean-generic:
  11.477 +
  11.478 +clean-generic:
  11.479 +
  11.480 +distclean-generic:
  11.481 +	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
  11.482 +
  11.483 +maintainer-clean-generic:
  11.484 +	@echo "This command is intended for maintainers to use"
  11.485 +	@echo "it deletes files that may require special tools to rebuild."
  11.486 +	-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
  11.487 +clean: clean-am
  11.488 +
  11.489 +clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
  11.490 +
  11.491 +distclean: distclean-am
  11.492 +	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
  11.493 +	-rm -rf ./$(DEPDIR)
  11.494 +	-rm -f Makefile
  11.495 +distclean-am: clean-am distclean-compile distclean-generic \
  11.496 +	distclean-tags
  11.497 +
  11.498 +dvi: dvi-am
  11.499 +
  11.500 +dvi-am:
  11.501 +
  11.502 +html: html-am
  11.503 +
  11.504 +info: info-am
  11.505 +
  11.506 +info-am:
  11.507 +
  11.508 +install-data-am:
  11.509 +
  11.510 +install-exec-am:
  11.511 +
  11.512 +install-info: install-info-am
  11.513 +
  11.514 +install-man:
  11.515 +
  11.516 +installcheck-am:
  11.517 +
  11.518 +maintainer-clean: maintainer-clean-am
  11.519 +	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
  11.520 +	-rm -rf $(top_srcdir)/autom4te.cache
  11.521 +	-rm -rf ./$(DEPDIR)
  11.522 +	-rm -f Makefile
  11.523 +maintainer-clean-am: distclean-am maintainer-clean-generic
  11.524 +
  11.525 +mostlyclean: mostlyclean-am
  11.526 +
  11.527 +mostlyclean-am: mostlyclean-compile mostlyclean-generic
  11.528 +
  11.529 +pdf: pdf-am
  11.530 +
  11.531 +pdf-am:
  11.532 +
  11.533 +ps: ps-am
  11.534 +
  11.535 +ps-am:
  11.536 +
  11.537 +uninstall-am: uninstall-info-am
  11.538 +
  11.539 +.PHONY: CTAGS GTAGS all all-am am--refresh check check-am clean \
  11.540 +	clean-generic clean-noinstLIBRARIES ctags dist dist-all \
  11.541 +	dist-bzip2 dist-gzip dist-shar dist-tarZ dist-zip distcheck \
  11.542 +	distclean distclean-compile distclean-generic distclean-tags \
  11.543 +	distcleancheck distdir distuninstallcheck dvi dvi-am html \
  11.544 +	html-am info info-am install install-am install-data \
  11.545 +	install-data-am install-exec install-exec-am install-info \
  11.546 +	install-info-am install-man install-strip installcheck \
  11.547 +	installcheck-am installdirs maintainer-clean \
  11.548 +	maintainer-clean-generic mostlyclean mostlyclean-compile \
  11.549 +	mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
  11.550 +	uninstall-am uninstall-info-am
  11.551 +
  11.552 +
  11.553 +.dat.cc:
  11.554 +	$(PERL) $(srcdir)/samp2src.pl $* $< $(srcdir)/$@
  11.555 +
  11.556 +@USE_SSE_TRUE@convolve-sse.o: convolve-sse.cc
  11.557 +@USE_SSE_TRUE@	$(CXXCOMPILE) -msse -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<
  11.558 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
  11.559 +# Otherwise a system limit (for SysV at least) may be exceeded.
  11.560 +.NOEXPORT:
    12.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    12.2 +++ b/src/resid-fp/NEWS	Sun May 11 14:09:13 2014 +0100
    12.3 @@ -0,0 +1,1 @@
    12.4 +See ChangeLog for information about new features.
    13.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    13.2 +++ b/src/resid-fp/README	Sun May 11 14:09:13 2014 +0100
    13.3 @@ -0,0 +1,79 @@
    13.4 +Please refer to original ../resid/README file for general discussion what
    13.5 +ReSID is.
    13.6 +
    13.7 +This is ReSID-FP, a fork of ReSID that has been adapted to floating point
    13.8 +numbers. Some SSE assembly is used for vector convolutions when both the CPU
    13.9 +and compiler support it. In addition, some liberties have been taken in the
   13.10 +frequency region > 20 kHz which should be inaudible to humans.
   13.11 +
   13.12 +In the emulation front, several changes to the original ReSID (henceforth
   13.13 +classical ReSID) have been made. These changes are listed here:
   13.14 +
   13.15 +Waveforms:
   13.16 +
   13.17 +- Noise waveform control via test bit is now possible.
   13.18 +  (Unknown: how long does it take for the noise bits to fade with test bit on?)
   13.19 +  This is used in SounDemoN's Tamaking, Bojojoing, etc, and the patch to
   13.20 +  implement it in ReSID is his.
   13.21 +
   13.22 +- Waveform 0, the frozen DAC, is emulated, which should make the new 8-bit
   13.23 +  sample player routine work.
   13.24 +
   13.25 +- Envelope and waveform outputs contain approximation of the imperfect DACs
   13.26 +  (Unknown: are there other significant effects that affect the analog waveform
   13.27 +   before it goes into filter, which should be modelled?)
   13.28 +
   13.29 +- I changed voice DC offsets around for 6581 to better match my R4AR 3789.
   13.30 +
   13.31 +Envelope:
   13.32 +
   13.33 +- Performance work at envelope. Validation pending, should ensure that the new
   13.34 +  code behaves 100% identically to the old one.
   13.35 +
   13.36 +Mixer:
   13.37 +
   13.38 +- Experimentally, a subtle negative offset is injected into the mixer through
   13.39 +  ext-in pin. This part seems, however, physically incorrect and is likely
   13.40 +  removed in the future. (The coupling capacitor external to the chip must
   13.41 +  eliminate any DC offset, and the ext-in circuit inside the chip has nothing
   13.42 +  that could generate offsets. In the meantime, this fix still helps 8580
   13.43 +  Netherworld to play more correctly.)
   13.44 +
   13.45 +- I removed the mixer_DC very subtle effect on 6581, as it already has 10x
   13.46 +  more offsets elsewhere.
   13.47 +
   13.48 +Filter:
   13.49 +
   13.50 +- 6581 filter output contains approximation of the distortion effect
   13.51 +- 8580 filter output has bp flipped in phase with the other outputs
   13.52 +- 6581 resonance is slightly boosted. Potentially 8580 resonance needs to be
   13.53 +  slightly stronger as well, as many songs show a bit more "punch" on the real
   13.54 +  chip and one way to get more of that is increasing resonance. 10-20 %
   13.55 +  increment is a practical maximum.
   13.56 +
   13.57 +The upshot of all this is that for i386/x86-64 hardware, ReSID-FP's more
   13.58 +complicated algorithms may not seem any more expensive than the original ReSID.
   13.59 +For high-quality modes, it is virtually certain that ReSID-FP is actually
   13.60 +faster.
   13.61 +
   13.62 +Meanwhile, emulation quality should be improved. If there are bugs, I'd like
   13.63 +to know about them. If the filter sounds wrong, I might be able to improve it,
   13.64 +too.
   13.65 +
   13.66 +Here are some problematic songs, to get a feel for what's left to do:
   13.67 +
   13.68 +- Markus Mueller: Mechanicus
   13.69 +  * the distorted guitar effect is too distorted, but don't know how/why.
   13.70 +
   13.71 +- Galway: Wizball
   13.72 +  * the initial lead punches through with too much distortion. The "toggle"
   13.73 +    between the muffled and more intense sound is too hard, even if similar
   13.74 +    things do occur on the chip.
   13.75 +
   13.76 +Undoubtedly, many more such examples will be found. However, samplings and such
   13.77 +are really valueable only if they can be made on a chip that I have modelled
   13.78 +for ReSID-FP. In practice I want to know about badly-playing chips, but might
   13.79 +conclude that it actually plays alright. At any event, information about sound
   13.80 +issues is welcome.
   13.81 +
   13.82 +alankila@bel.fi
    14.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    14.2 +++ b/src/resid-fp/README.VICE	Sun May 11 14:09:13 2014 +0100
    14.3 @@ -0,0 +1,14 @@
    14.4 +This version of reSID has been modified for use with VICE. It is based on the
    14.5 +work contained in the resid/ directory, with duplicate files removed. All
    14.6 +classes have been renamed with suffix FP to avoid link-time clashes with the
    14.7 +other RESID implementation.
    14.8 +
    14.9 +These files reuse some define terms also defined by resid. You should not mix
   14.10 +resid/* and resid-fp/* files in one compile unit, or the results are probably
   14.11 +invalid.
   14.12 +
   14.13 +In particular, libtool is not used to build the library, and there
   14.14 +might be some workarounds for various substandard compilers.
   14.15 +
   14.16 +Please get the original version if you want to use reSID in your own
   14.17 +project.
    15.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    15.2 +++ b/src/resid-fp/aclocal.m4	Sun May 11 14:09:13 2014 +0100
    15.3 @@ -0,0 +1,850 @@
    15.4 +# generated automatically by aclocal 1.9.6 -*- Autoconf -*-
    15.5 +
    15.6 +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
    15.7 +# 2005  Free Software Foundation, Inc.
    15.8 +# This file is free software; the Free Software Foundation
    15.9 +# gives unlimited permission to copy and/or distribute it,
   15.10 +# with or without modifications, as long as this notice is preserved.
   15.11 +
   15.12 +# This program is distributed in the hope that it will be useful,
   15.13 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
   15.14 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
   15.15 +# PARTICULAR PURPOSE.
   15.16 +
   15.17 +# Copyright (C) 2002, 2003, 2005  Free Software Foundation, Inc.
   15.18 +#
   15.19 +# This file is free software; the Free Software Foundation
   15.20 +# gives unlimited permission to copy and/or distribute it,
   15.21 +# with or without modifications, as long as this notice is preserved.
   15.22 +
   15.23 +# AM_AUTOMAKE_VERSION(VERSION)
   15.24 +# ----------------------------
   15.25 +# Automake X.Y traces this macro to ensure aclocal.m4 has been
   15.26 +# generated from the m4 files accompanying Automake X.Y.
   15.27 +AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version="1.9"])
   15.28 +
   15.29 +# AM_SET_CURRENT_AUTOMAKE_VERSION
   15.30 +# -------------------------------
   15.31 +# Call AM_AUTOMAKE_VERSION so it can be traced.
   15.32 +# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
   15.33 +AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
   15.34 +	 [AM_AUTOMAKE_VERSION([1.9.6])])
   15.35 +
   15.36 +# AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
   15.37 +
   15.38 +# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
   15.39 +#
   15.40 +# This file is free software; the Free Software Foundation
   15.41 +# gives unlimited permission to copy and/or distribute it,
   15.42 +# with or without modifications, as long as this notice is preserved.
   15.43 +
   15.44 +# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
   15.45 +# $ac_aux_dir to `$srcdir/foo'.  In other projects, it is set to
   15.46 +# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
   15.47 +#
   15.48 +# Of course, Automake must honor this variable whenever it calls a
   15.49 +# tool from the auxiliary directory.  The problem is that $srcdir (and
   15.50 +# therefore $ac_aux_dir as well) can be either absolute or relative,
   15.51 +# depending on how configure is run.  This is pretty annoying, since
   15.52 +# it makes $ac_aux_dir quite unusable in subdirectories: in the top
   15.53 +# source directory, any form will work fine, but in subdirectories a
   15.54 +# relative path needs to be adjusted first.
   15.55 +#
   15.56 +# $ac_aux_dir/missing
   15.57 +#    fails when called from a subdirectory if $ac_aux_dir is relative
   15.58 +# $top_srcdir/$ac_aux_dir/missing
   15.59 +#    fails if $ac_aux_dir is absolute,
   15.60 +#    fails when called from a subdirectory in a VPATH build with
   15.61 +#          a relative $ac_aux_dir
   15.62 +#
   15.63 +# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
   15.64 +# are both prefixed by $srcdir.  In an in-source build this is usually
   15.65 +# harmless because $srcdir is `.', but things will broke when you
   15.66 +# start a VPATH build or use an absolute $srcdir.
   15.67 +#
   15.68 +# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
   15.69 +# iff we strip the leading $srcdir from $ac_aux_dir.  That would be:
   15.70 +#   am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
   15.71 +# and then we would define $MISSING as
   15.72 +#   MISSING="\${SHELL} $am_aux_dir/missing"
   15.73 +# This will work as long as MISSING is not called from configure, because
   15.74 +# unfortunately $(top_srcdir) has no meaning in configure.
   15.75 +# However there are other variables, like CC, which are often used in
   15.76 +# configure, and could therefore not use this "fixed" $ac_aux_dir.
   15.77 +#
   15.78 +# Another solution, used here, is to always expand $ac_aux_dir to an
   15.79 +# absolute PATH.  The drawback is that using absolute paths prevent a
   15.80 +# configured tree to be moved without reconfiguration.
   15.81 +
   15.82 +AC_DEFUN([AM_AUX_DIR_EXPAND],
   15.83 +[dnl Rely on autoconf to set up CDPATH properly.
   15.84 +AC_PREREQ([2.50])dnl
   15.85 +# expand $ac_aux_dir to an absolute path
   15.86 +am_aux_dir=`cd $ac_aux_dir && pwd`
   15.87 +])
   15.88 +
   15.89 +# AM_CONDITIONAL                                            -*- Autoconf -*-
   15.90 +
   15.91 +# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005
   15.92 +# Free Software Foundation, Inc.
   15.93 +#
   15.94 +# This file is free software; the Free Software Foundation
   15.95 +# gives unlimited permission to copy and/or distribute it,
   15.96 +# with or without modifications, as long as this notice is preserved.
   15.97 +
   15.98 +# serial 7
   15.99 +
  15.100 +# AM_CONDITIONAL(NAME, SHELL-CONDITION)
  15.101 +# -------------------------------------
  15.102 +# Define a conditional.
  15.103 +AC_DEFUN([AM_CONDITIONAL],
  15.104 +[AC_PREREQ(2.52)dnl
  15.105 + ifelse([$1], [TRUE],  [AC_FATAL([$0: invalid condition: $1])],
  15.106 +	[$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
  15.107 +AC_SUBST([$1_TRUE])
  15.108 +AC_SUBST([$1_FALSE])
  15.109 +if $2; then
  15.110 +  $1_TRUE=
  15.111 +  $1_FALSE='#'
  15.112 +else
  15.113 +  $1_TRUE='#'
  15.114 +  $1_FALSE=
  15.115 +fi
  15.116 +AC_CONFIG_COMMANDS_PRE(
  15.117 +[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
  15.118 +  AC_MSG_ERROR([[conditional "$1" was never defined.
  15.119 +Usually this means the macro was only invoked conditionally.]])
  15.120 +fi])])
  15.121 +
  15.122 +
  15.123 +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
  15.124 +# Free Software Foundation, Inc.
  15.125 +#
  15.126 +# This file is free software; the Free Software Foundation
  15.127 +# gives unlimited permission to copy and/or distribute it,
  15.128 +# with or without modifications, as long as this notice is preserved.
  15.129 +
  15.130 +# serial 8
  15.131 +
  15.132 +# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
  15.133 +# written in clear, in which case automake, when reading aclocal.m4,
  15.134 +# will think it sees a *use*, and therefore will trigger all it's
  15.135 +# C support machinery.  Also note that it means that autoscan, seeing
  15.136 +# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
  15.137 +
  15.138 +
  15.139 +# _AM_DEPENDENCIES(NAME)
  15.140 +# ----------------------
  15.141 +# See how the compiler implements dependency checking.
  15.142 +# NAME is "CC", "CXX", "GCJ", or "OBJC".
  15.143 +# We try a few techniques and use that to set a single cache variable.
  15.144 +#
  15.145 +# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
  15.146 +# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
  15.147 +# dependency, and given that the user is not expected to run this macro,
  15.148 +# just rely on AC_PROG_CC.
  15.149 +AC_DEFUN([_AM_DEPENDENCIES],
  15.150 +[AC_REQUIRE([AM_SET_DEPDIR])dnl
  15.151 +AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
  15.152 +AC_REQUIRE([AM_MAKE_INCLUDE])dnl
  15.153 +AC_REQUIRE([AM_DEP_TRACK])dnl
  15.154 +
  15.155 +ifelse([$1], CC,   [depcc="$CC"   am_compiler_list=],
  15.156 +       [$1], CXX,  [depcc="$CXX"  am_compiler_list=],
  15.157 +       [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
  15.158 +       [$1], GCJ,  [depcc="$GCJ"  am_compiler_list='gcc3 gcc'],
  15.159 +                   [depcc="$$1"   am_compiler_list=])
  15.160 +
  15.161 +AC_CACHE_CHECK([dependency style of $depcc],
  15.162 +               [am_cv_$1_dependencies_compiler_type],
  15.163 +[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
  15.164 +  # We make a subdir and do the tests there.  Otherwise we can end up
  15.165 +  # making bogus files that we don't know about and never remove.  For
  15.166 +  # instance it was reported that on HP-UX the gcc test will end up
  15.167 +  # making a dummy file named `D' -- because `-MD' means `put the output
  15.168 +  # in D'.
  15.169 +  mkdir conftest.dir
  15.170 +  # Copy depcomp to subdir because otherwise we won't find it if we're
  15.171 +  # using a relative directory.
  15.172 +  cp "$am_depcomp" conftest.dir
  15.173 +  cd conftest.dir
  15.174 +  # We will build objects and dependencies in a subdirectory because
  15.175 +  # it helps to detect inapplicable dependency modes.  For instance
  15.176 +  # both Tru64's cc and ICC support -MD to output dependencies as a
  15.177 +  # side effect of compilation, but ICC will put the dependencies in
  15.178 +  # the current directory while Tru64 will put them in the object
  15.179 +  # directory.
  15.180 +  mkdir sub
  15.181 +
  15.182 +  am_cv_$1_dependencies_compiler_type=none
  15.183 +  if test "$am_compiler_list" = ""; then
  15.184 +     am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
  15.185 +  fi
  15.186 +  for depmode in $am_compiler_list; do
  15.187 +    # Setup a source with many dependencies, because some compilers
  15.188 +    # like to wrap large dependency lists on column 80 (with \), and
  15.189 +    # we should not choose a depcomp mode which is confused by this.
  15.190 +    #
  15.191 +    # We need to recreate these files for each test, as the compiler may
  15.192 +    # overwrite some of them when testing with obscure command lines.
  15.193 +    # This happens at least with the AIX C compiler.
  15.194 +    : > sub/conftest.c
  15.195 +    for i in 1 2 3 4 5 6; do
  15.196 +      echo '#include "conftst'$i'.h"' >> sub/conftest.c
  15.197 +      # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
  15.198 +      # Solaris 8's {/usr,}/bin/sh.
  15.199 +      touch sub/conftst$i.h
  15.200 +    done
  15.201 +    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
  15.202 +
  15.203 +    case $depmode in
  15.204 +    nosideeffect)
  15.205 +      # after this tag, mechanisms are not by side-effect, so they'll
  15.206 +      # only be used when explicitly requested
  15.207 +      if test "x$enable_dependency_tracking" = xyes; then
  15.208 +	continue
  15.209 +      else
  15.210 +	break
  15.211 +      fi
  15.212 +      ;;
  15.213 +    none) break ;;
  15.214 +    esac
  15.215 +    # We check with `-c' and `-o' for the sake of the "dashmstdout"
  15.216 +    # mode.  It turns out that the SunPro C++ compiler does not properly
  15.217 +    # handle `-M -o', and we need to detect this.
  15.218 +    if depmode=$depmode \
  15.219 +       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
  15.220 +       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
  15.221 +       $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
  15.222 +         >/dev/null 2>conftest.err &&
  15.223 +       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
  15.224 +       grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
  15.225 +       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
  15.226 +      # icc doesn't choke on unknown options, it will just issue warnings
  15.227 +      # or remarks (even with -Werror).  So we grep stderr for any message
  15.228 +      # that says an option was ignored or not supported.
  15.229 +      # When given -MP, icc 7.0 and 7.1 complain thusly:
  15.230 +      #   icc: Command line warning: ignoring option '-M'; no argument required
  15.231 +      # The diagnosis changed in icc 8.0:
  15.232 +      #   icc: Command line remark: option '-MP' not supported
  15.233 +      if (grep 'ignoring option' conftest.err ||
  15.234 +          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
  15.235 +        am_cv_$1_dependencies_compiler_type=$depmode
  15.236 +        break
  15.237 +      fi
  15.238 +    fi
  15.239 +  done
  15.240 +
  15.241 +  cd ..
  15.242 +  rm -rf conftest.dir
  15.243 +else
  15.244 +  am_cv_$1_dependencies_compiler_type=none
  15.245 +fi
  15.246 +])
  15.247 +AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
  15.248 +AM_CONDITIONAL([am__fastdep$1], [
  15.249 +  test "x$enable_dependency_tracking" != xno \
  15.250 +  && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
  15.251 +])
  15.252 +
  15.253 +
  15.254 +# AM_SET_DEPDIR
  15.255 +# -------------
  15.256 +# Choose a directory name for dependency files.
  15.257 +# This macro is AC_REQUIREd in _AM_DEPENDENCIES
  15.258 +AC_DEFUN([AM_SET_DEPDIR],
  15.259 +[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
  15.260 +AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
  15.261 +])
  15.262 +
  15.263 +
  15.264 +# AM_DEP_TRACK
  15.265 +# ------------
  15.266 +AC_DEFUN([AM_DEP_TRACK],
  15.267 +[AC_ARG_ENABLE(dependency-tracking,
  15.268 +[  --disable-dependency-tracking  speeds up one-time build
  15.269 +  --enable-dependency-tracking   do not reject slow dependency extractors])
  15.270 +if test "x$enable_dependency_tracking" != xno; then
  15.271 +  am_depcomp="$ac_aux_dir/depcomp"
  15.272 +  AMDEPBACKSLASH='\'
  15.273 +fi
  15.274 +AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
  15.275 +AC_SUBST([AMDEPBACKSLASH])
  15.276 +])
  15.277 +
  15.278 +# Generate code to set up dependency tracking.              -*- Autoconf -*-
  15.279 +
  15.280 +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
  15.281 +# Free Software Foundation, Inc.
  15.282 +#
  15.283 +# This file is free software; the Free Software Foundation
  15.284 +# gives unlimited permission to copy and/or distribute it,
  15.285 +# with or without modifications, as long as this notice is preserved.
  15.286 +
  15.287 +#serial 3
  15.288 +
  15.289 +# _AM_OUTPUT_DEPENDENCY_COMMANDS
  15.290 +# ------------------------------
  15.291 +AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
  15.292 +[for mf in $CONFIG_FILES; do
  15.293 +  # Strip MF so we end up with the name of the file.
  15.294 +  mf=`echo "$mf" | sed -e 's/:.*$//'`
  15.295 +  # Check whether this is an Automake generated Makefile or not.
  15.296 +  # We used to match only the files named `Makefile.in', but
  15.297 +  # some people rename them; so instead we look at the file content.
  15.298 +  # Grep'ing the first line is not enough: some people post-process
  15.299 +  # each Makefile.in and add a new line on top of each file to say so.
  15.300 +  # So let's grep whole file.
  15.301 +  if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
  15.302 +    dirpart=`AS_DIRNAME("$mf")`
  15.303 +  else
  15.304 +    continue
  15.305 +  fi
  15.306 +  # Extract the definition of DEPDIR, am__include, and am__quote
  15.307 +  # from the Makefile without running `make'.
  15.308 +  DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
  15.309 +  test -z "$DEPDIR" && continue
  15.310 +  am__include=`sed -n 's/^am__include = //p' < "$mf"`
  15.311 +  test -z "am__include" && continue
  15.312 +  am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
  15.313 +  # When using ansi2knr, U may be empty or an underscore; expand it
  15.314 +  U=`sed -n 's/^U = //p' < "$mf"`
  15.315 +  # Find all dependency output files, they are included files with
  15.316 +  # $(DEPDIR) in their names.  We invoke sed twice because it is the
  15.317 +  # simplest approach to changing $(DEPDIR) to its actual value in the
  15.318 +  # expansion.
  15.319 +  for file in `sed -n "
  15.320 +    s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
  15.321 +       sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
  15.322 +    # Make sure the directory exists.
  15.323 +    test -f "$dirpart/$file" && continue
  15.324 +    fdir=`AS_DIRNAME(["$file"])`
  15.325 +    AS_MKDIR_P([$dirpart/$fdir])
  15.326 +    # echo "creating $dirpart/$file"
  15.327 +    echo '# dummy' > "$dirpart/$file"
  15.328 +  done
  15.329 +done
  15.330 +])# _AM_OUTPUT_DEPENDENCY_COMMANDS
  15.331 +
  15.332 +
  15.333 +# AM_OUTPUT_DEPENDENCY_COMMANDS
  15.334 +# -----------------------------
  15.335 +# This macro should only be invoked once -- use via AC_REQUIRE.
  15.336 +#
  15.337 +# This code is only required when automatic dependency tracking
  15.338 +# is enabled.  FIXME.  This creates each `.P' file that we will
  15.339 +# need in order to bootstrap the dependency handling code.
  15.340 +AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
  15.341 +[AC_CONFIG_COMMANDS([depfiles],
  15.342 +     [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
  15.343 +     [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
  15.344 +])
  15.345 +
  15.346 +# Do all the work for Automake.                             -*- Autoconf -*-
  15.347 +
  15.348 +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
  15.349 +# Free Software Foundation, Inc.
  15.350 +#
  15.351 +# This file is free software; the Free Software Foundation
  15.352 +# gives unlimited permission to copy and/or distribute it,
  15.353 +# with or without modifications, as long as this notice is preserved.
  15.354 +
  15.355 +# serial 12
  15.356 +
  15.357 +# This macro actually does too much.  Some checks are only needed if
  15.358 +# your package does certain things.  But this isn't really a big deal.
  15.359 +
  15.360 +# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
  15.361 +# AM_INIT_AUTOMAKE([OPTIONS])
  15.362 +# -----------------------------------------------
  15.363 +# The call with PACKAGE and VERSION arguments is the old style
  15.364 +# call (pre autoconf-2.50), which is being phased out.  PACKAGE
  15.365 +# and VERSION should now be passed to AC_INIT and removed from
  15.366 +# the call to AM_INIT_AUTOMAKE.
  15.367 +# We support both call styles for the transition.  After
  15.368 +# the next Automake release, Autoconf can make the AC_INIT
  15.369 +# arguments mandatory, and then we can depend on a new Autoconf
  15.370 +# release and drop the old call support.
  15.371 +AC_DEFUN([AM_INIT_AUTOMAKE],
  15.372 +[AC_PREREQ([2.58])dnl
  15.373 +dnl Autoconf wants to disallow AM_ names.  We explicitly allow
  15.374 +dnl the ones we care about.
  15.375 +m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
  15.376 +AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
  15.377 +AC_REQUIRE([AC_PROG_INSTALL])dnl
  15.378 +# test to see if srcdir already configured
  15.379 +if test "`cd $srcdir && pwd`" != "`pwd`" &&
  15.380 +   test -f $srcdir/config.status; then
  15.381 +  AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
  15.382 +fi
  15.383 +
  15.384 +# test whether we have cygpath
  15.385 +if test -z "$CYGPATH_W"; then
  15.386 +  if (cygpath --version) >/dev/null 2>/dev/null; then
  15.387 +    CYGPATH_W='cygpath -w'
  15.388 +  else
  15.389 +    CYGPATH_W=echo
  15.390 +  fi
  15.391 +fi
  15.392 +AC_SUBST([CYGPATH_W])
  15.393 +
  15.394 +# Define the identity of the package.
  15.395 +dnl Distinguish between old-style and new-style calls.
  15.396 +m4_ifval([$2],
  15.397 +[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
  15.398 + AC_SUBST([PACKAGE], [$1])dnl
  15.399 + AC_SUBST([VERSION], [$2])],
  15.400 +[_AM_SET_OPTIONS([$1])dnl
  15.401 + AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
  15.402 + AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
  15.403 +
  15.404 +_AM_IF_OPTION([no-define],,
  15.405 +[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
  15.406 + AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
  15.407 +
  15.408 +# Some tools Automake needs.
  15.409 +AC_REQUIRE([AM_SANITY_CHECK])dnl
  15.410 +AC_REQUIRE([AC_ARG_PROGRAM])dnl
  15.411 +AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
  15.412 +AM_MISSING_PROG(AUTOCONF, autoconf)
  15.413 +AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
  15.414 +AM_MISSING_PROG(AUTOHEADER, autoheader)
  15.415 +AM_MISSING_PROG(MAKEINFO, makeinfo)
  15.416 +AM_PROG_INSTALL_SH
  15.417 +AM_PROG_INSTALL_STRIP
  15.418 +AC_REQUIRE([AM_PROG_MKDIR_P])dnl
  15.419 +# We need awk for the "check" target.  The system "awk" is bad on
  15.420 +# some platforms.
  15.421 +AC_REQUIRE([AC_PROG_AWK])dnl
  15.422 +AC_REQUIRE([AC_PROG_MAKE_SET])dnl
  15.423 +AC_REQUIRE([AM_SET_LEADING_DOT])dnl
  15.424 +_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
  15.425 +              [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
  15.426 +	      		     [_AM_PROG_TAR([v7])])])
  15.427 +_AM_IF_OPTION([no-dependencies],,
  15.428 +[AC_PROVIDE_IFELSE([AC_PROG_CC],
  15.429 +                  [_AM_DEPENDENCIES(CC)],
  15.430 +                  [define([AC_PROG_CC],
  15.431 +                          defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
  15.432 +AC_PROVIDE_IFELSE([AC_PROG_CXX],
  15.433 +                  [_AM_DEPENDENCIES(CXX)],
  15.434 +                  [define([AC_PROG_CXX],
  15.435 +                          defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
  15.436 +])
  15.437 +])
  15.438 +
  15.439 +
  15.440 +# When config.status generates a header, we must update the stamp-h file.
  15.441 +# This file resides in the same directory as the config header
  15.442 +# that is generated.  The stamp files are numbered to have different names.
  15.443 +
  15.444 +# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
  15.445 +# loop where config.status creates the headers, so we can generate
  15.446 +# our stamp files there.
  15.447 +AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
  15.448 +[# Compute $1's index in $config_headers.
  15.449 +_am_stamp_count=1
  15.450 +for _am_header in $config_headers :; do
  15.451 +  case $_am_header in
  15.452 +    $1 | $1:* )
  15.453 +      break ;;
  15.454 +    * )
  15.455 +      _am_stamp_count=`expr $_am_stamp_count + 1` ;;
  15.456 +  esac
  15.457 +done
  15.458 +echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count])
  15.459 +
  15.460 +# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
  15.461 +#
  15.462 +# This file is free software; the Free Software Foundation
  15.463 +# gives unlimited permission to copy and/or distribute it,
  15.464 +# with or without modifications, as long as this notice is preserved.
  15.465 +
  15.466 +# AM_PROG_INSTALL_SH
  15.467 +# ------------------
  15.468 +# Define $install_sh.
  15.469 +AC_DEFUN([AM_PROG_INSTALL_SH],
  15.470 +[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
  15.471 +install_sh=${install_sh-"$am_aux_dir/install-sh"}
  15.472 +AC_SUBST(install_sh)])
  15.473 +
  15.474 +# Copyright (C) 2003, 2005  Free Software Foundation, Inc.
  15.475 +#
  15.476 +# This file is free software; the Free Software Foundation
  15.477 +# gives unlimited permission to copy and/or distribute it,
  15.478 +# with or without modifications, as long as this notice is preserved.
  15.479 +
  15.480 +# serial 2
  15.481 +
  15.482 +# Check whether the underlying file-system supports filenames
  15.483 +# with a leading dot.  For instance MS-DOS doesn't.
  15.484 +AC_DEFUN([AM_SET_LEADING_DOT],
  15.485 +[rm -rf .tst 2>/dev/null
  15.486 +mkdir .tst 2>/dev/null
  15.487 +if test -d .tst; then
  15.488 +  am__leading_dot=.
  15.489 +else
  15.490 +  am__leading_dot=_
  15.491 +fi
  15.492 +rmdir .tst 2>/dev/null
  15.493 +AC_SUBST([am__leading_dot])])
  15.494 +
  15.495 +# Check to see how 'make' treats includes.	            -*- Autoconf -*-
  15.496 +
  15.497 +# Copyright (C) 2001, 2002, 2003, 2005  Free Software Foundation, Inc.
  15.498 +#
  15.499 +# This file is free software; the Free Software Foundation
  15.500 +# gives unlimited permission to copy and/or distribute it,
  15.501 +# with or without modifications, as long as this notice is preserved.
  15.502 +
  15.503 +# serial 3
  15.504 +
  15.505 +# AM_MAKE_INCLUDE()
  15.506 +# -----------------
  15.507 +# Check to see how make treats includes.
  15.508 +AC_DEFUN([AM_MAKE_INCLUDE],
  15.509 +[am_make=${MAKE-make}
  15.510 +cat > confinc << 'END'
  15.511 +am__doit:
  15.512 +	@echo done
  15.513 +.PHONY: am__doit
  15.514 +END
  15.515 +# If we don't find an include directive, just comment out the code.
  15.516 +AC_MSG_CHECKING([for style of include used by $am_make])
  15.517 +am__include="#"
  15.518 +am__quote=
  15.519 +_am_result=none
  15.520 +# First try GNU make style include.
  15.521 +echo "include confinc" > confmf
  15.522 +# We grep out `Entering directory' and `Leaving directory'
  15.523 +# messages which can occur if `w' ends up in MAKEFLAGS.
  15.524 +# In particular we don't look at `^make:' because GNU make might
  15.525 +# be invoked under some other name (usually "gmake"), in which
  15.526 +# case it prints its new name instead of `make'.
  15.527 +if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
  15.528 +   am__include=include
  15.529 +   am__quote=
  15.530 +   _am_result=GNU
  15.531 +fi
  15.532 +# Now try BSD make style include.
  15.533 +if test "$am__include" = "#"; then
  15.534 +   echo '.include "confinc"' > confmf
  15.535 +   if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
  15.536 +      am__include=.include
  15.537 +      am__quote="\""
  15.538 +      _am_result=BSD
  15.539 +   fi
  15.540 +fi
  15.541 +AC_SUBST([am__include])
  15.542 +AC_SUBST([am__quote])
  15.543 +AC_MSG_RESULT([$_am_result])
  15.544 +rm -f confinc confmf
  15.545 +])
  15.546 +
  15.547 +# Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
  15.548 +
  15.549 +# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2005
  15.550 +# Free Software Foundation, Inc.
  15.551 +#
  15.552 +# This file is free software; the Free Software Foundation
  15.553 +# gives unlimited permission to copy and/or distribute it,
  15.554 +# with or without modifications, as long as this notice is preserved.
  15.555 +
  15.556 +# serial 4
  15.557 +
  15.558 +# AM_MISSING_PROG(NAME, PROGRAM)
  15.559 +# ------------------------------
  15.560 +AC_DEFUN([AM_MISSING_PROG],
  15.561 +[AC_REQUIRE([AM_MISSING_HAS_RUN])
  15.562 +$1=${$1-"${am_missing_run}$2"}
  15.563 +AC_SUBST($1)])
  15.564 +
  15.565 +
  15.566 +# AM_MISSING_HAS_RUN
  15.567 +# ------------------
  15.568 +# Define MISSING if not defined so far and test if it supports --run.
  15.569 +# If it does, set am_missing_run to use it, otherwise, to nothing.
  15.570 +AC_DEFUN([AM_MISSING_HAS_RUN],
  15.571 +[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
  15.572 +test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
  15.573 +# Use eval to expand $SHELL
  15.574 +if eval "$MISSING --run true"; then
  15.575 +  am_missing_run="$MISSING --run "
  15.576 +else
  15.577 +  am_missing_run=
  15.578 +  AC_MSG_WARN([`missing' script is too old or missing])
  15.579 +fi
  15.580 +])
  15.581 +
  15.582 +# Copyright (C) 2003, 2004, 2005  Free Software Foundation, Inc.
  15.583 +#
  15.584 +# This file is free software; the Free Software Foundation
  15.585 +# gives unlimited permission to copy and/or distribute it,
  15.586 +# with or without modifications, as long as this notice is preserved.
  15.587 +
  15.588 +# AM_PROG_MKDIR_P
  15.589 +# ---------------
  15.590 +# Check whether `mkdir -p' is supported, fallback to mkinstalldirs otherwise.
  15.591 +#
  15.592 +# Automake 1.8 used `mkdir -m 0755 -p --' to ensure that directories
  15.593 +# created by `make install' are always world readable, even if the
  15.594 +# installer happens to have an overly restrictive umask (e.g. 077).
  15.595 +# This was a mistake.  There are at least two reasons why we must not
  15.596 +# use `-m 0755':
  15.597 +#   - it causes special bits like SGID to be ignored,
  15.598 +#   - it may be too restrictive (some setups expect 775 directories).
  15.599 +#
  15.600 +# Do not use -m 0755 and let people choose whatever they expect by
  15.601 +# setting umask.
  15.602 +#
  15.603 +# We cannot accept any implementation of `mkdir' that recognizes `-p'.
  15.604 +# Some implementations (such as Solaris 8's) are not thread-safe: if a
  15.605 +# parallel make tries to run `mkdir -p a/b' and `mkdir -p a/c'
  15.606 +# concurrently, both version can detect that a/ is missing, but only
  15.607 +# one can create it and the other will error out.  Consequently we
  15.608 +# restrict ourselves to GNU make (using the --version option ensures
  15.609 +# this.)
  15.610 +AC_DEFUN([AM_PROG_MKDIR_P],
  15.611 +[if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
  15.612 +  # We used to keeping the `.' as first argument, in order to
  15.613 +  # allow $(mkdir_p) to be used without argument.  As in
  15.614 +  #   $(mkdir_p) $(somedir)
  15.615 +  # where $(somedir) is conditionally defined.  However this is wrong
  15.616 +  # for two reasons:
  15.617 +  #  1. if the package is installed by a user who cannot write `.'
  15.618 +  #     make install will fail,
  15.619 +  #  2. the above comment should most certainly read
  15.620 +  #     $(mkdir_p) $(DESTDIR)$(somedir)
  15.621 +  #     so it does not work when $(somedir) is undefined and
  15.622 +  #     $(DESTDIR) is not.
  15.623 +  #  To support the latter case, we have to write
  15.624 +  #     test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir),
  15.625 +  #  so the `.' trick is pointless.
  15.626 +  mkdir_p='mkdir -p --'
  15.627 +else
  15.628 +  # On NextStep and OpenStep, the `mkdir' command does not
  15.629 +  # recognize any option.  It will interpret all options as
  15.630 +  # directories to create, and then abort because `.' already
  15.631 +  # exists.
  15.632 +  for d in ./-p ./--version;
  15.633 +  do
  15.634 +    test -d $d && rmdir $d
  15.635 +  done
  15.636 +  # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists.
  15.637 +  if test -f "$ac_aux_dir/mkinstalldirs"; then
  15.638 +    mkdir_p='$(mkinstalldirs)'
  15.639 +  else
  15.640 +    mkdir_p='$(install_sh) -d'
  15.641 +  fi
  15.642 +fi
  15.643 +AC_SUBST([mkdir_p])])
  15.644 +
  15.645 +# Helper functions for option handling.                     -*- Autoconf -*-
  15.646 +
  15.647 +# Copyright (C) 2001, 2002, 2003, 2005  Free Software Foundation, Inc.
  15.648 +#
  15.649 +# This file is free software; the Free Software Foundation
  15.650 +# gives unlimited permission to copy and/or distribute it,
  15.651 +# with or without modifications, as long as this notice is preserved.
  15.652 +
  15.653 +# serial 3
  15.654 +
  15.655 +# _AM_MANGLE_OPTION(NAME)
  15.656 +# -----------------------
  15.657 +AC_DEFUN([_AM_MANGLE_OPTION],
  15.658 +[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
  15.659 +
  15.660 +# _AM_SET_OPTION(NAME)
  15.661 +# ------------------------------
  15.662 +# Set option NAME.  Presently that only means defining a flag for this option.
  15.663 +AC_DEFUN([_AM_SET_OPTION],
  15.664 +[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
  15.665 +
  15.666 +# _AM_SET_OPTIONS(OPTIONS)
  15.667 +# ----------------------------------
  15.668 +# OPTIONS is a space-separated list of Automake options.
  15.669 +AC_DEFUN([_AM_SET_OPTIONS],
  15.670 +[AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
  15.671 +
  15.672 +# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
  15.673 +# -------------------------------------------
  15.674 +# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
  15.675 +AC_DEFUN([_AM_IF_OPTION],
  15.676 +[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
  15.677 +
  15.678 +# Check to make sure that the build environment is sane.    -*- Autoconf -*-
  15.679 +
  15.680 +# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
  15.681 +# Free Software Foundation, Inc.
  15.682 +#
  15.683 +# This file is free software; the Free Software Foundation
  15.684 +# gives unlimited permission to copy and/or distribute it,
  15.685 +# with or without modifications, as long as this notice is preserved.
  15.686 +
  15.687 +# serial 4
  15.688 +
  15.689 +# AM_SANITY_CHECK
  15.690 +# ---------------
  15.691 +AC_DEFUN([AM_SANITY_CHECK],
  15.692 +[AC_MSG_CHECKING([whether build environment is sane])
  15.693 +# Just in case
  15.694 +sleep 1
  15.695 +echo timestamp > conftest.file
  15.696 +# Do `set' in a subshell so we don't clobber the current shell's
  15.697 +# arguments.  Must try -L first in case configure is actually a
  15.698 +# symlink; some systems play weird games with the mod time of symlinks
  15.699 +# (eg FreeBSD returns the mod time of the symlink's containing
  15.700 +# directory).
  15.701 +if (
  15.702 +   set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
  15.703 +   if test "$[*]" = "X"; then
  15.704 +      # -L didn't work.
  15.705 +      set X `ls -t $srcdir/configure conftest.file`
  15.706 +   fi
  15.707 +   rm -f conftest.file
  15.708 +   if test "$[*]" != "X $srcdir/configure conftest.file" \
  15.709 +      && test "$[*]" != "X conftest.file $srcdir/configure"; then
  15.710 +
  15.711 +      # If neither matched, then we have a broken ls.  This can happen
  15.712 +      # if, for instance, CONFIG_SHELL is bash and it inherits a
  15.713 +      # broken ls alias from the environment.  This has actually
  15.714 +      # happened.  Such a system could not be considered "sane".
  15.715 +      AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
  15.716 +alias in your environment])
  15.717 +   fi
  15.718 +
  15.719 +   test "$[2]" = conftest.file
  15.720 +   )
  15.721 +then
  15.722 +   # Ok.
  15.723 +   :
  15.724 +else
  15.725 +   AC_MSG_ERROR([newly created file is older than distributed files!
  15.726 +Check your system clock])
  15.727 +fi
  15.728 +AC_MSG_RESULT(yes)])
  15.729 +
  15.730 +# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
  15.731 +#
  15.732 +# This file is free software; the Free Software Foundation
  15.733 +# gives unlimited permission to copy and/or distribute it,
  15.734 +# with or without modifications, as long as this notice is preserved.
  15.735 +
  15.736 +# AM_PROG_INSTALL_STRIP
  15.737 +# ---------------------
  15.738 +# One issue with vendor `install' (even GNU) is that you can't
  15.739 +# specify the program used to strip binaries.  This is especially
  15.740 +# annoying in cross-compiling environments, where the build's strip
  15.741 +# is unlikely to handle the host's binaries.
  15.742 +# Fortunately install-sh will honor a STRIPPROG variable, so we
  15.743 +# always use install-sh in `make install-strip', and initialize
  15.744 +# STRIPPROG with the value of the STRIP variable (set by the user).
  15.745 +AC_DEFUN([AM_PROG_INSTALL_STRIP],
  15.746 +[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
  15.747 +# Installed binaries are usually stripped using `strip' when the user
  15.748 +# run `make install-strip'.  However `strip' might not be the right
  15.749 +# tool to use in cross-compilation environments, therefore Automake
  15.750 +# will honor the `STRIP' environment variable to overrule this program.
  15.751 +dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
  15.752 +if test "$cross_compiling" != no; then
  15.753 +  AC_CHECK_TOOL([STRIP], [strip], :)
  15.754 +fi
  15.755 +INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
  15.756 +AC_SUBST([INSTALL_STRIP_PROGRAM])])
  15.757 +
  15.758 +# Check how to create a tarball.                            -*- Autoconf -*-
  15.759 +
  15.760 +# Copyright (C) 2004, 2005  Free Software Foundation, Inc.
  15.761 +#
  15.762 +# This file is free software; the Free Software Foundation
  15.763 +# gives unlimited permission to copy and/or distribute it,
  15.764 +# with or without modifications, as long as this notice is preserved.
  15.765 +
  15.766 +# serial 2
  15.767 +
  15.768 +# _AM_PROG_TAR(FORMAT)
  15.769 +# --------------------
  15.770 +# Check how to create a tarball in format FORMAT.
  15.771 +# FORMAT should be one of `v7', `ustar', or `pax'.
  15.772 +#
  15.773 +# Substitute a variable $(am__tar) that is a command
  15.774 +# writing to stdout a FORMAT-tarball containing the directory
  15.775 +# $tardir.
  15.776 +#     tardir=directory && $(am__tar) > result.tar
  15.777 +#
  15.778 +# Substitute a variable $(am__untar) that extract such
  15.779 +# a tarball read from stdin.
  15.780 +#     $(am__untar) < result.tar
  15.781 +AC_DEFUN([_AM_PROG_TAR],
  15.782 +[# Always define AMTAR for backward compatibility.
  15.783 +AM_MISSING_PROG([AMTAR], [tar])
  15.784 +m4_if([$1], [v7],
  15.785 +     [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
  15.786 +     [m4_case([$1], [ustar],, [pax],,
  15.787 +              [m4_fatal([Unknown tar format])])
  15.788 +AC_MSG_CHECKING([how to create a $1 tar archive])
  15.789 +# Loop over all known methods to create a tar archive until one works.
  15.790 +_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
  15.791 +_am_tools=${am_cv_prog_tar_$1-$_am_tools}
  15.792 +# Do not fold the above two line into one, because Tru64 sh and
  15.793 +# Solaris sh will not grok spaces in the rhs of `-'.
  15.794 +for _am_tool in $_am_tools
  15.795 +do
  15.796 +  case $_am_tool in
  15.797 +  gnutar)
  15.798 +    for _am_tar in tar gnutar gtar;
  15.799 +    do
  15.800 +      AM_RUN_LOG([$_am_tar --version]) && break
  15.801 +    done
  15.802 +    am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
  15.803 +    am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
  15.804 +    am__untar="$_am_tar -xf -"
  15.805 +    ;;
  15.806 +  plaintar)
  15.807 +    # Must skip GNU tar: if it does not support --format= it doesn't create
  15.808 +    # ustar tarball either.
  15.809 +    (tar --version) >/dev/null 2>&1 && continue
  15.810 +    am__tar='tar chf - "$$tardir"'
  15.811 +    am__tar_='tar chf - "$tardir"'
  15.812 +    am__untar='tar xf -'
  15.813 +    ;;
  15.814 +  pax)
  15.815 +    am__tar='pax -L -x $1 -w "$$tardir"'
  15.816 +    am__tar_='pax -L -x $1 -w "$tardir"'
  15.817 +    am__untar='pax -r'
  15.818 +    ;;
  15.819 +  cpio)
  15.820 +    am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
  15.821 +    am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
  15.822 +    am__untar='cpio -i -H $1 -d'
  15.823 +    ;;
  15.824 +  none)
  15.825 +    am__tar=false
  15.826 +    am__tar_=false
  15.827 +    am__untar=false
  15.828 +    ;;
  15.829 +  esac
  15.830 +
  15.831 +  # If the value was cached, stop now.  We just wanted to have am__tar
  15.832 +  # and am__untar set.
  15.833 +  test -n "${am_cv_prog_tar_$1}" && break
  15.834 +
  15.835 +  # tar/untar a dummy directory, and stop if the command works
  15.836 +  rm -rf conftest.dir
  15.837 +  mkdir conftest.dir
  15.838 +  echo GrepMe > conftest.dir/file
  15.839 +  AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
  15.840 +  rm -rf conftest.dir
  15.841 +  if test -s conftest.tar; then
  15.842 +    AM_RUN_LOG([$am__untar <conftest.tar])
  15.843 +    grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
  15.844 +  fi
  15.845 +done
  15.846 +rm -rf conftest.dir
  15.847 +
  15.848 +AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
  15.849 +AC_MSG_RESULT([$am_cv_prog_tar_$1])])
  15.850 +AC_SUBST([am__tar])
  15.851 +AC_SUBST([am__untar])
  15.852 +]) # _AM_PROG_TAR
  15.853 +
    16.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    16.2 +++ b/src/resid-fp/configure	Sun May 11 14:09:13 2014 +0100
    16.3 @@ -0,0 +1,5955 @@
    16.4 +#! /bin/sh
    16.5 +# Guess values for system-dependent variables and create Makefiles.
    16.6 +# Generated by GNU Autoconf 2.61.
    16.7 +#
    16.8 +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
    16.9 +# 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
   16.10 +# This configure script is free software; the Free Software Foundation
   16.11 +# gives unlimited permission to copy, distribute and modify it.
   16.12 +## --------------------- ##
   16.13 +## M4sh Initialization.  ##
   16.14 +## --------------------- ##
   16.15 +
   16.16 +# Be more Bourne compatible
   16.17 +DUALCASE=1; export DUALCASE # for MKS sh
   16.18 +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
   16.19 +  emulate sh
   16.20 +  NULLCMD=:
   16.21 +  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
   16.22 +  # is contrary to our usage.  Disable this feature.
   16.23 +  alias -g '${1+"$@"}'='"$@"'
   16.24 +  setopt NO_GLOB_SUBST
   16.25 +else
   16.26 +  case `(set -o) 2>/dev/null` in
   16.27 +  *posix*) set -o posix ;;
   16.28 +esac
   16.29 +
   16.30 +fi
   16.31 +
   16.32 +
   16.33 +
   16.34 +
   16.35 +# PATH needs CR
   16.36 +# Avoid depending upon Character Ranges.
   16.37 +as_cr_letters='abcdefghijklmnopqrstuvwxyz'
   16.38 +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
   16.39 +as_cr_Letters=$as_cr_letters$as_cr_LETTERS
   16.40 +as_cr_digits='0123456789'
   16.41 +as_cr_alnum=$as_cr_Letters$as_cr_digits
   16.42 +
   16.43 +# The user is always right.
   16.44 +if test "${PATH_SEPARATOR+set}" != set; then
   16.45 +  echo "#! /bin/sh" >conf$$.sh
   16.46 +  echo  "exit 0"   >>conf$$.sh
   16.47 +  chmod +x conf$$.sh
   16.48 +  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
   16.49 +    PATH_SEPARATOR=';'
   16.50 +  else
   16.51 +    PATH_SEPARATOR=:
   16.52 +  fi
   16.53 +  rm -f conf$$.sh
   16.54 +fi
   16.55 +
   16.56 +# Support unset when possible.
   16.57 +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
   16.58 +  as_unset=unset
   16.59 +else
   16.60 +  as_unset=false
   16.61 +fi
   16.62 +
   16.63 +
   16.64 +# IFS
   16.65 +# We need space, tab and new line, in precisely that order.  Quoting is
   16.66 +# there to prevent editors from complaining about space-tab.
   16.67 +# (If _AS_PATH_WALK were called with IFS unset, it would disable word
   16.68 +# splitting by setting IFS to empty value.)
   16.69 +as_nl='
   16.70 +'
   16.71 +IFS=" ""	$as_nl"
   16.72 +
   16.73 +# Find who we are.  Look in the path if we contain no directory separator.
   16.74 +case $0 in
   16.75 +  *[\\/]* ) as_myself=$0 ;;
   16.76 +  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
   16.77 +for as_dir in $PATH
   16.78 +do
   16.79 +  IFS=$as_save_IFS
   16.80 +  test -z "$as_dir" && as_dir=.
   16.81 +  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
   16.82 +done
   16.83 +IFS=$as_save_IFS
   16.84 +
   16.85 +     ;;
   16.86 +esac
   16.87 +# We did not find ourselves, most probably we were run as `sh COMMAND'
   16.88 +# in which case we are not to be found in the path.
   16.89 +if test "x$as_myself" = x; then
   16.90 +  as_myself=$0
   16.91 +fi
   16.92 +if test ! -f "$as_myself"; then
   16.93 +  echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
   16.94 +  { (exit 1); exit 1; }
   16.95 +fi
   16.96 +
   16.97 +# Work around bugs in pre-3.0 UWIN ksh.
   16.98 +for as_var in ENV MAIL MAILPATH
   16.99 +do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
  16.100 +done
  16.101 +PS1='$ '
  16.102 +PS2='> '
  16.103 +PS4='+ '
  16.104 +
  16.105 +# NLS nuisances.
  16.106 +for as_var in \
  16.107 +  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
  16.108 +  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
  16.109 +  LC_TELEPHONE LC_TIME
  16.110 +do
  16.111 +  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
  16.112 +    eval $as_var=C; export $as_var
  16.113 +  else
  16.114 +    ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
  16.115 +  fi
  16.116 +done
  16.117 +
  16.118 +# Required to use basename.
  16.119 +if expr a : '\(a\)' >/dev/null 2>&1 &&
  16.120 +   test "X`expr 00001 : '.*\(...\)'`" = X001; then
  16.121 +  as_expr=expr
  16.122 +else
  16.123 +  as_expr=false
  16.124 +fi
  16.125 +
  16.126 +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
  16.127 +  as_basename=basename
  16.128 +else
  16.129 +  as_basename=false
  16.130 +fi
  16.131 +
  16.132 +
  16.133 +# Name of the executable.
  16.134 +as_me=`$as_basename -- "$0" ||
  16.135 +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
  16.136 +	 X"$0" : 'X\(//\)$' \| \
  16.137 +	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
  16.138 +echo X/"$0" |
  16.139 +    sed '/^.*\/\([^/][^/]*\)\/*$/{
  16.140 +	    s//\1/
  16.141 +	    q
  16.142 +	  }
  16.143 +	  /^X\/\(\/\/\)$/{
  16.144 +	    s//\1/
  16.145 +	    q
  16.146 +	  }
  16.147 +	  /^X\/\(\/\).*/{
  16.148 +	    s//\1/
  16.149 +	    q
  16.150 +	  }
  16.151 +	  s/.*/./; q'`
  16.152 +
  16.153 +# CDPATH.
  16.154 +$as_unset CDPATH
  16.155 +
  16.156 +
  16.157 +if test "x$CONFIG_SHELL" = x; then
  16.158 +  if (eval ":") 2>/dev/null; then
  16.159 +  as_have_required=yes
  16.160 +else
  16.161 +  as_have_required=no
  16.162 +fi
  16.163 +
  16.164 +  if test $as_have_required = yes && 	 (eval ":
  16.165 +(as_func_return () {
  16.166 +  (exit \$1)
  16.167 +}
  16.168 +as_func_success () {
  16.169 +  as_func_return 0
  16.170 +}
  16.171 +as_func_failure () {
  16.172 +  as_func_return 1
  16.173 +}
  16.174 +as_func_ret_success () {
  16.175 +  return 0
  16.176 +}
  16.177 +as_func_ret_failure () {
  16.178 +  return 1
  16.179 +}
  16.180 +
  16.181 +exitcode=0
  16.182 +if as_func_success; then
  16.183 +  :
  16.184 +else
  16.185 +  exitcode=1
  16.186 +  echo as_func_success failed.
  16.187 +fi
  16.188 +
  16.189 +if as_func_failure; then
  16.190 +  exitcode=1
  16.191 +  echo as_func_failure succeeded.
  16.192 +fi
  16.193 +
  16.194 +if as_func_ret_success; then
  16.195 +  :
  16.196 +else
  16.197 +  exitcode=1
  16.198 +  echo as_func_ret_success failed.
  16.199 +fi
  16.200 +
  16.201 +if as_func_ret_failure; then
  16.202 +  exitcode=1
  16.203 +  echo as_func_ret_failure succeeded.
  16.204 +fi
  16.205 +
  16.206 +if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
  16.207 +  :
  16.208 +else
  16.209 +  exitcode=1
  16.210 +  echo positional parameters were not saved.
  16.211 +fi
  16.212 +
  16.213 +test \$exitcode = 0) || { (exit 1); exit 1; }
  16.214 +
  16.215 +(
  16.216 +  as_lineno_1=\$LINENO
  16.217 +  as_lineno_2=\$LINENO
  16.218 +  test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" &&
  16.219 +  test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; }
  16.220 +") 2> /dev/null; then
  16.221 +  :
  16.222 +else
  16.223 +  as_candidate_shells=
  16.224 +    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
  16.225 +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
  16.226 +do
  16.227 +  IFS=$as_save_IFS
  16.228 +  test -z "$as_dir" && as_dir=.
  16.229 +  case $as_dir in
  16.230 +	 /*)
  16.231 +	   for as_base in sh bash ksh sh5; do
  16.232 +	     as_candidate_shells="$as_candidate_shells $as_dir/$as_base"
  16.233 +	   done;;
  16.234 +       esac
  16.235 +done
  16.236 +IFS=$as_save_IFS
  16.237 +
  16.238 +
  16.239 +      for as_shell in $as_candidate_shells $SHELL; do
  16.240 +	 # Try only shells that exist, to save several forks.
  16.241 +	 if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
  16.242 +		{ ("$as_shell") 2> /dev/null <<\_ASEOF
  16.243 +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
  16.244 +  emulate sh
  16.245 +  NULLCMD=:
  16.246 +  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
  16.247 +  # is contrary to our usage.  Disable this feature.
  16.248 +  alias -g '${1+"$@"}'='"$@"'
  16.249 +  setopt NO_GLOB_SUBST
  16.250 +else
  16.251 +  case `(set -o) 2>/dev/null` in
  16.252 +  *posix*) set -o posix ;;
  16.253 +esac
  16.254 +
  16.255 +fi
  16.256 +
  16.257 +
  16.258 +:
  16.259 +_ASEOF
  16.260 +}; then
  16.261 +  CONFIG_SHELL=$as_shell
  16.262 +	       as_have_required=yes
  16.263 +	       if { "$as_shell" 2> /dev/null <<\_ASEOF
  16.264 +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
  16.265 +  emulate sh
  16.266 +  NULLCMD=:
  16.267 +  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
  16.268 +  # is contrary to our usage.  Disable this feature.
  16.269 +  alias -g '${1+"$@"}'='"$@"'
  16.270 +  setopt NO_GLOB_SUBST
  16.271 +else
  16.272 +  case `(set -o) 2>/dev/null` in
  16.273 +  *posix*) set -o posix ;;
  16.274 +esac
  16.275 +
  16.276 +fi
  16.277 +
  16.278 +
  16.279 +:
  16.280 +(as_func_return () {
  16.281 +  (exit $1)
  16.282 +}
  16.283 +as_func_success () {
  16.284 +  as_func_return 0
  16.285 +}
  16.286 +as_func_failure () {
  16.287 +  as_func_return 1
  16.288 +}
  16.289 +as_func_ret_success () {
  16.290 +  return 0
  16.291 +}
  16.292 +as_func_ret_failure () {
  16.293 +  return 1
  16.294 +}
  16.295 +
  16.296 +exitcode=0
  16.297 +if as_func_success; then
  16.298 +  :
  16.299 +else
  16.300 +  exitcode=1
  16.301 +  echo as_func_success failed.
  16.302 +fi
  16.303 +
  16.304 +if as_func_failure; then
  16.305 +  exitcode=1
  16.306 +  echo as_func_failure succeeded.
  16.307 +fi
  16.308 +
  16.309 +if as_func_ret_success; then
  16.310 +  :
  16.311 +else
  16.312 +  exitcode=1
  16.313 +  echo as_func_ret_success failed.
  16.314 +fi
  16.315 +
  16.316 +if as_func_ret_failure; then
  16.317 +  exitcode=1
  16.318 +  echo as_func_ret_failure succeeded.
  16.319 +fi
  16.320 +
  16.321 +if ( set x; as_func_ret_success y && test x = "$1" ); then
  16.322 +  :
  16.323 +else
  16.324 +  exitcode=1
  16.325 +  echo positional parameters were not saved.
  16.326 +fi
  16.327 +
  16.328 +test $exitcode = 0) || { (exit 1); exit 1; }
  16.329 +
  16.330 +(
  16.331 +  as_lineno_1=$LINENO
  16.332 +  as_lineno_2=$LINENO
  16.333 +  test "x$as_lineno_1" != "x$as_lineno_2" &&
  16.334 +  test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; }
  16.335 +
  16.336 +_ASEOF
  16.337 +}; then
  16.338 +  break
  16.339 +fi
  16.340 +
  16.341 +fi
  16.342 +
  16.343 +      done
  16.344 +
  16.345 +      if test "x$CONFIG_SHELL" != x; then
  16.346 +  for as_var in BASH_ENV ENV
  16.347 +        do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
  16.348 +        done
  16.349 +        export CONFIG_SHELL
  16.350 +        exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
  16.351 +fi
  16.352 +
  16.353 +
  16.354 +    if test $as_have_required = no; then
  16.355 +  echo This script requires a shell more modern than all the
  16.356 +      echo shells that I found on your system.  Please install a
  16.357 +      echo modern shell, or manually run the script under such a
  16.358 +      echo shell if you do have one.
  16.359 +      { (exit 1); exit 1; }
  16.360 +fi
  16.361 +
  16.362 +
  16.363 +fi
  16.364 +
  16.365 +fi
  16.366 +
  16.367 +
  16.368 +
  16.369 +(eval "as_func_return () {
  16.370 +  (exit \$1)
  16.371 +}
  16.372 +as_func_success () {
  16.373 +  as_func_return 0
  16.374 +}
  16.375 +as_func_failure () {
  16.376 +  as_func_return 1
  16.377 +}
  16.378 +as_func_ret_success () {
  16.379 +  return 0
  16.380 +}
  16.381 +as_func_ret_failure () {
  16.382 +  return 1
  16.383 +}
  16.384 +
  16.385 +exitcode=0
  16.386 +if as_func_success; then
  16.387 +  :
  16.388 +else
  16.389 +  exitcode=1
  16.390 +  echo as_func_success failed.
  16.391 +fi
  16.392 +
  16.393 +if as_func_failure; then
  16.394 +  exitcode=1
  16.395 +  echo as_func_failure succeeded.
  16.396 +fi
  16.397 +
  16.398 +if as_func_ret_success; then
  16.399 +  :
  16.400 +else
  16.401 +  exitcode=1
  16.402 +  echo as_func_ret_success failed.
  16.403 +fi
  16.404 +
  16.405 +if as_func_ret_failure; then
  16.406 +  exitcode=1
  16.407 +  echo as_func_ret_failure succeeded.
  16.408 +fi
  16.409 +
  16.410 +if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
  16.411 +  :
  16.412 +else
  16.413 +  exitcode=1
  16.414 +  echo positional parameters were not saved.
  16.415 +fi
  16.416 +
  16.417 +test \$exitcode = 0") || {
  16.418 +  echo No shell found that supports shell functions.
  16.419 +  echo Please tell autoconf@gnu.org about your system,
  16.420 +  echo including any error possibly output before this
  16.421 +  echo message
  16.422 +}
  16.423 +
  16.424 +
  16.425 +
  16.426 +  as_lineno_1=$LINENO
  16.427 +  as_lineno_2=$LINENO
  16.428 +  test "x$as_lineno_1" != "x$as_lineno_2" &&
  16.429 +  test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
  16.430 +
  16.431 +  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
  16.432 +  # uniformly replaced by the line number.  The first 'sed' inserts a
  16.433 +  # line-number line after each line using $LINENO; the second 'sed'
  16.434 +  # does the real work.  The second script uses 'N' to pair each
  16.435 +  # line-number line with the line containing $LINENO, and appends
  16.436 +  # trailing '-' during substitution so that $LINENO is not a special
  16.437 +  # case at line end.
  16.438 +  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
  16.439 +  # scripts with optimization help from Paolo Bonzini.  Blame Lee
  16.440 +  # E. McMahon (1931-1989) for sed's syntax.  :-)
  16.441 +  sed -n '
  16.442 +    p
  16.443 +    /[$]LINENO/=
  16.444 +  ' <$as_myself |
  16.445 +    sed '
  16.446 +      s/[$]LINENO.*/&-/
  16.447 +      t lineno
  16.448 +      b
  16.449 +      :lineno
  16.450 +      N
  16.451 +      :loop
  16.452 +      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
  16.453 +      t loop
  16.454 +      s/-\n.*//
  16.455 +    ' >$as_me.lineno &&
  16.456 +  chmod +x "$as_me.lineno" ||
  16.457 +    { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
  16.458 +   { (exit 1); exit 1; }; }
  16.459 +
  16.460 +  # Don't try to exec as it changes $[0], causing all sort of problems
  16.461 +  # (the dirname of $[0] is not the place where we might find the
  16.462 +  # original and so on.  Autoconf is especially sensitive to this).
  16.463 +  . "./$as_me.lineno"
  16.464 +  # Exit status is that of the last command.
  16.465 +  exit
  16.466 +}
  16.467 +
  16.468 +
  16.469 +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
  16.470 +  as_dirname=dirname
  16.471 +else
  16.472 +  as_dirname=false
  16.473 +fi
  16.474 +
  16.475 +ECHO_C= ECHO_N= ECHO_T=
  16.476 +case `echo -n x` in
  16.477 +-n*)
  16.478 +  case `echo 'x\c'` in
  16.479 +  *c*) ECHO_T='	';;	# ECHO_T is single tab character.
  16.480 +  *)   ECHO_C='\c';;
  16.481 +  esac;;
  16.482 +*)
  16.483 +  ECHO_N='-n';;
  16.484 +esac
  16.485 +
  16.486 +if expr a : '\(a\)' >/dev/null 2>&1 &&
  16.487 +   test "X`expr 00001 : '.*\(...\)'`" = X001; then
  16.488 +  as_expr=expr
  16.489 +else
  16.490 +  as_expr=false
  16.491 +fi
  16.492 +
  16.493 +rm -f conf$$ conf$$.exe conf$$.file
  16.494 +if test -d conf$$.dir; then
  16.495 +  rm -f conf$$.dir/conf$$.file
  16.496 +else
  16.497 +  rm -f conf$$.dir
  16.498 +  mkdir conf$$.dir
  16.499 +fi
  16.500 +echo >conf$$.file
  16.501 +if ln -s conf$$.file conf$$ 2>/dev/null; then
  16.502 +  as_ln_s='ln -s'
  16.503 +  # ... but there are two gotchas:
  16.504 +  # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
  16.505 +  # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
  16.506 +  # In both cases, we have to default to `cp -p'.
  16.507 +  ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
  16.508 +    as_ln_s='cp -p'
  16.509 +elif ln conf$$.file conf$$ 2>/dev/null; then
  16.510 +  as_ln_s=ln
  16.511 +else
  16.512 +  as_ln_s='cp -p'
  16.513 +fi
  16.514 +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
  16.515 +rmdir conf$$.dir 2>/dev/null
  16.516 +
  16.517 +if mkdir -p . 2>/dev/null; then
  16.518 +  as_mkdir_p=:
  16.519 +else
  16.520 +  test -d ./-p && rmdir ./-p
  16.521 +  as_mkdir_p=false
  16.522 +fi
  16.523 +
  16.524 +if test -x / >/dev/null 2>&1; then
  16.525 +  as_test_x='test -x'
  16.526 +else
  16.527 +  if ls -dL / >/dev/null 2>&1; then
  16.528 +    as_ls_L_option=L
  16.529 +  else
  16.530 +    as_ls_L_option=
  16.531 +  fi
  16.532 +  as_test_x='
  16.533 +    eval sh -c '\''
  16.534 +      if test -d "$1"; then
  16.535 +        test -d "$1/.";
  16.536 +      else
  16.537 +	case $1 in
  16.538 +        -*)set "./$1";;
  16.539 +	esac;
  16.540 +	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
  16.541 +	???[sx]*):;;*)false;;esac;fi
  16.542 +    '\'' sh
  16.543 +  '
  16.544 +fi
  16.545 +as_executable_p=$as_test_x
  16.546 +
  16.547 +# Sed expression to map a string onto a valid CPP name.
  16.548 +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
  16.549 +
  16.550 +# Sed expression to map a string onto a valid variable name.
  16.551 +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
  16.552 +
  16.553 +
  16.554 +
  16.555 +exec 7<&0 </dev/null 6>&1
  16.556 +
  16.557 +# Name of the host.
  16.558 +# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
  16.559 +# so uname gets run too.
  16.560 +ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
  16.561 +
  16.562 +#
  16.563 +# Initializations.
  16.564 +#
  16.565 +ac_default_prefix=/usr/local
  16.566 +ac_clean_files=
  16.567 +ac_config_libobj_dir=.
  16.568 +LIBOBJS=
  16.569 +cross_compiling=no
  16.570 +subdirs=
  16.571 +MFLAGS=
  16.572 +MAKEFLAGS=
  16.573 +SHELL=${CONFIG_SHELL-/bin/sh}
  16.574 +
  16.575 +# Identity of this package.
  16.576 +PACKAGE_NAME=
  16.577 +PACKAGE_TARNAME=
  16.578 +PACKAGE_VERSION=
  16.579 +PACKAGE_STRING=
  16.580 +PACKAGE_BUGREPORT=
  16.581 +
  16.582 +ac_unique_file="sid.h"
  16.583 +# Factoring default headers for most tests.
  16.584 +ac_includes_default="\
  16.585 +#include <stdio.h>
  16.586 +#ifdef HAVE_SYS_TYPES_H
  16.587 +# include <sys/types.h>
  16.588 +#endif
  16.589 +#ifdef HAVE_SYS_STAT_H
  16.590 +# include <sys/stat.h>
  16.591 +#endif
  16.592 +#ifdef STDC_HEADERS
  16.593 +# include <stdlib.h>
  16.594 +# include <stddef.h>
  16.595 +#else
  16.596 +# ifdef HAVE_STDLIB_H
  16.597 +#  include <stdlib.h>
  16.598 +# endif
  16.599 +#endif
  16.600 +#ifdef HAVE_STRING_H
  16.601 +# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
  16.602 +#  include <memory.h>
  16.603 +# endif
  16.604 +# include <string.h>
  16.605 +#endif
  16.606 +#ifdef HAVE_STRINGS_H
  16.607 +# include <strings.h>
  16.608 +#endif
  16.609 +#ifdef HAVE_INTTYPES_H
  16.610 +# include <inttypes.h>
  16.611 +#endif
  16.612 +#ifdef HAVE_STDINT_H
  16.613 +# include <stdint.h>
  16.614 +#endif
  16.615 +#ifdef HAVE_UNISTD_H
  16.616 +# include <unistd.h>
  16.617 +#endif"
  16.618 +
  16.619 +ac_subst_vars='SHELL
  16.620 +PATH_SEPARATOR
  16.621 +PACKAGE_NAME
  16.622 +PACKAGE_TARNAME
  16.623 +PACKAGE_VERSION
  16.624 +PACKAGE_STRING
  16.625 +PACKAGE_BUGREPORT
  16.626 +exec_prefix
  16.627 +prefix
  16.628 +program_transform_name
  16.629 +bindir
  16.630 +sbindir
  16.631 +libexecdir
  16.632 +datarootdir
  16.633 +datadir
  16.634 +sysconfdir
  16.635 +sharedstatedir
  16.636 +localstatedir
  16.637 +includedir
  16.638 +oldincludedir
  16.639 +docdir
  16.640 +infodir
  16.641 +htmldir
  16.642 +dvidir
  16.643 +pdfdir
  16.644 +psdir
  16.645 +libdir
  16.646 +localedir
  16.647 +mandir
  16.648 +DEFS
  16.649 +ECHO_C
  16.650 +ECHO_N
  16.651 +ECHO_T
  16.652 +LIBS
  16.653 +build_alias
  16.654 +host_alias
  16.655 +target_alias
  16.656 +INSTALL_PROGRAM
  16.657 +INSTALL_SCRIPT
  16.658 +INSTALL_DATA
  16.659 +CYGPATH_W
  16.660 +PACKAGE
  16.661 +VERSION
  16.662 +ACLOCAL
  16.663 +AUTOCONF
  16.664 +AUTOMAKE
  16.665 +AUTOHEADER
  16.666 +MAKEINFO
  16.667 +install_sh
  16.668 +STRIP
  16.669 +INSTALL_STRIP_PROGRAM
  16.670 +mkdir_p
  16.671 +AWK
  16.672 +SET_MAKE
  16.673 +am__leading_dot
  16.674 +AMTAR
  16.675 +am__tar
  16.676 +am__untar
  16.677 +RESID_INLINE
  16.678 +CXX
  16.679 +CXXFLAGS
  16.680 +LDFLAGS
  16.681 +CPPFLAGS
  16.682 +ac_ct_CXX
  16.683 +EXEEXT
  16.684 +OBJEXT
  16.685 +DEPDIR
  16.686 +am__include
  16.687 +am__quote
  16.688 +AMDEP_TRUE
  16.689 +AMDEP_FALSE
  16.690 +AMDEPBACKSLASH
  16.691 +CXXDEPMODE
  16.692 +am__fastdepCXX_TRUE
  16.693 +am__fastdepCXX_FALSE
  16.694 +AR
  16.695 +RANLIB
  16.696 +PERL
  16.697 +CXXCPP
  16.698 +GREP
  16.699 +EGREP
  16.700 +USE_SSE_TRUE
  16.701 +USE_SSE_FALSE
  16.702 +RESID_HAVE_BOOL
  16.703 +RESID_USE_SSE
  16.704 +HAVE_LOGF_PROTOTYPE
  16.705 +HAVE_EXPF_PROTOTYPE
  16.706 +LIBOBJS
  16.707 +LTLIBOBJS'
  16.708 +ac_subst_files=''
  16.709 +      ac_precious_vars='build_alias
  16.710 +host_alias
  16.711 +target_alias
  16.712 +CXX
  16.713 +CXXFLAGS
  16.714 +LDFLAGS
  16.715 +LIBS
  16.716 +CPPFLAGS
  16.717 +CCC
  16.718 +CXXCPP'
  16.719 +
  16.720 +
  16.721 +# Initialize some variables set by options.
  16.722 +ac_init_help=
  16.723 +ac_init_version=false
  16.724 +# The variables have the same names as the options, with
  16.725 +# dashes changed to underlines.
  16.726 +cache_file=/dev/null
  16.727 +exec_prefix=NONE
  16.728 +no_create=
  16.729 +no_recursion=
  16.730 +prefix=NONE
  16.731 +program_prefix=NONE
  16.732 +program_suffix=NONE
  16.733 +program_transform_name=s,x,x,
  16.734 +silent=
  16.735 +site=
  16.736 +srcdir=
  16.737 +verbose=
  16.738 +x_includes=NONE
  16.739 +x_libraries=NONE
  16.740 +
  16.741 +# Installation directory options.
  16.742 +# These are left unexpanded so users can "make install exec_prefix=/foo"
  16.743 +# and all the variables that are supposed to be based on exec_prefix
  16.744 +# by default will actually change.
  16.745 +# Use braces instead of parens because sh, perl, etc. also accept them.
  16.746 +# (The list follows the same order as the GNU Coding Standards.)
  16.747 +bindir='${exec_prefix}/bin'
  16.748 +sbindir='${exec_prefix}/sbin'
  16.749 +libexecdir='${exec_prefix}/libexec'
  16.750 +datarootdir='${prefix}/share'
  16.751 +datadir='${datarootdir}'
  16.752 +sysconfdir='${prefix}/etc'
  16.753 +sharedstatedir='${prefix}/com'
  16.754 +localstatedir='${prefix}/var'
  16.755 +includedir='${prefix}/include'
  16.756 +oldincludedir='/usr/include'
  16.757 +docdir='${datarootdir}/doc/${PACKAGE}'
  16.758 +infodir='${datarootdir}/info'
  16.759 +htmldir='${docdir}'
  16.760 +dvidir='${docdir}'
  16.761 +pdfdir='${docdir}'
  16.762 +psdir='${docdir}'
  16.763 +libdir='${exec_prefix}/lib'
  16.764 +localedir='${datarootdir}/locale'
  16.765 +mandir='${datarootdir}/man'
  16.766 +
  16.767 +ac_prev=
  16.768 +ac_dashdash=
  16.769 +for ac_option
  16.770 +do
  16.771 +  # If the previous option needs an argument, assign it.
  16.772 +  if test -n "$ac_prev"; then
  16.773 +    eval $ac_prev=\$ac_option
  16.774 +    ac_prev=
  16.775 +    continue
  16.776 +  fi
  16.777 +
  16.778 +  case $ac_option in
  16.779 +  *=*)	ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
  16.780 +  *)	ac_optarg=yes ;;
  16.781 +  esac
  16.782 +
  16.783 +  # Accept the important Cygnus configure options, so we can diagnose typos.
  16.784 +
  16.785 +  case $ac_dashdash$ac_option in
  16.786 +  --)
  16.787 +    ac_dashdash=yes ;;
  16.788 +
  16.789 +  -bindir | --bindir | --bindi | --bind | --bin | --bi)
  16.790 +    ac_prev=bindir ;;
  16.791 +  -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
  16.792 +    bindir=$ac_optarg ;;
  16.793 +
  16.794 +  -build | --build | --buil | --bui | --bu)
  16.795 +    ac_prev=build_alias ;;
  16.796 +  -build=* | --build=* | --buil=* | --bui=* | --bu=*)
  16.797 +    build_alias=$ac_optarg ;;
  16.798 +
  16.799 +  -cache-file | --cache-file | --cache-fil | --cache-fi \
  16.800 +  | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
  16.801 +    ac_prev=cache_file ;;
  16.802 +  -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
  16.803 +  | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
  16.804 +    cache_file=$ac_optarg ;;
  16.805 +
  16.806 +  --config-cache | -C)
  16.807 +    cache_file=config.cache ;;
  16.808 +
  16.809 +  -datadir | --datadir | --datadi | --datad)
  16.810 +    ac_prev=datadir ;;
  16.811 +  -datadir=* | --datadir=* | --datadi=* | --datad=*)
  16.812 +    datadir=$ac_optarg ;;
  16.813 +
  16.814 +  -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
  16.815 +  | --dataroo | --dataro | --datar)
  16.816 +    ac_prev=datarootdir ;;
  16.817 +  -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
  16.818 +  | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
  16.819 +    datarootdir=$ac_optarg ;;
  16.820 +
  16.821 +  -disable-* | --disable-*)
  16.822 +    ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
  16.823 +    # Reject names that are not valid shell variable names.
  16.824 +    expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null &&
  16.825 +      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
  16.826 +   { (exit 1); exit 1; }; }
  16.827 +    ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'`
  16.828 +    eval enable_$ac_feature=no ;;
  16.829 +
  16.830 +  -docdir | --docdir | --docdi | --doc | --do)
  16.831 +    ac_prev=docdir ;;
  16.832 +  -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
  16.833 +    docdir=$ac_optarg ;;
  16.834 +
  16.835 +  -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
  16.836 +    ac_prev=dvidir ;;
  16.837 +  -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
  16.838 +    dvidir=$ac_optarg ;;
  16.839 +
  16.840 +  -enable-* | --enable-*)
  16.841 +    ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
  16.842 +    # Reject names that are not valid shell variable names.
  16.843 +    expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null &&
  16.844 +      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
  16.845 +   { (exit 1); exit 1; }; }
  16.846 +    ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'`
  16.847 +    eval enable_$ac_feature=\$ac_optarg ;;
  16.848 +
  16.849 +  -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
  16.850 +  | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
  16.851 +  | --exec | --exe | --ex)
  16.852 +    ac_prev=exec_prefix ;;
  16.853 +  -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
  16.854 +  | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
  16.855 +  | --exec=* | --exe=* | --ex=*)
  16.856 +    exec_prefix=$ac_optarg ;;
  16.857 +
  16.858 +  -gas | --gas | --ga | --g)
  16.859 +    # Obsolete; use --with-gas.
  16.860 +    with_gas=yes ;;
  16.861 +
  16.862 +  -help | --help | --hel | --he | -h)
  16.863 +    ac_init_help=long ;;
  16.864 +  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
  16.865 +    ac_init_help=recursive ;;
  16.866 +  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
  16.867 +    ac_init_help=short ;;
  16.868 +
  16.869 +  -host | --host | --hos | --ho)
  16.870 +    ac_prev=host_alias ;;
  16.871 +  -host=* | --host=* | --hos=* | --ho=*)
  16.872 +    host_alias=$ac_optarg ;;
  16.873 +
  16.874 +  -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
  16.875 +    ac_prev=htmldir ;;
  16.876 +  -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
  16.877 +  | --ht=*)
  16.878 +    htmldir=$ac_optarg ;;
  16.879 +
  16.880 +  -includedir | --includedir | --includedi | --included | --include \
  16.881 +  | --includ | --inclu | --incl | --inc)
  16.882 +    ac_prev=includedir ;;
  16.883 +  -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
  16.884 +  | --includ=* | --inclu=* | --incl=* | --inc=*)
  16.885 +    includedir=$ac_optarg ;;
  16.886 +
  16.887 +  -infodir | --infodir | --infodi | --infod | --info | --inf)
  16.888 +    ac_prev=infodir ;;
  16.889 +  -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
  16.890 +    infodir=$ac_optarg ;;
  16.891 +
  16.892 +  -libdir | --libdir | --libdi | --libd)
  16.893 +    ac_prev=libdir ;;
  16.894 +  -libdir=* | --libdir=* | --libdi=* | --libd=*)
  16.895 +    libdir=$ac_optarg ;;
  16.896 +
  16.897 +  -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
  16.898 +  | --libexe | --libex | --libe)
  16.899 +    ac_prev=libexecdir ;;
  16.900 +  -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
  16.901 +  | --libexe=* | --libex=* | --libe=*)
  16.902 +    libexecdir=$ac_optarg ;;
  16.903 +
  16.904 +  -localedir | --localedir | --localedi | --localed | --locale)
  16.905 +    ac_prev=localedir ;;
  16.906 +  -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
  16.907 +    localedir=$ac_optarg ;;
  16.908 +
  16.909 +  -localstatedir | --localstatedir | --localstatedi | --localstated \
  16.910 +  | --localstate | --localstat | --localsta | --localst | --locals)
  16.911 +    ac_prev=localstatedir ;;
  16.912 +  -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
  16.913 +  | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
  16.914 +    localstatedir=$ac_optarg ;;
  16.915 +
  16.916 +  -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
  16.917 +    ac_prev=mandir ;;
  16.918 +  -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
  16.919 +    mandir=$ac_optarg ;;
  16.920 +
  16.921 +  -nfp | --nfp | --nf)
  16.922 +    # Obsolete; use --without-fp.
  16.923 +    with_fp=no ;;
  16.924 +
  16.925 +  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
  16.926 +  | --no-cr | --no-c | -n)
  16.927 +    no_create=yes ;;
  16.928 +
  16.929 +  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
  16.930 +  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
  16.931 +    no_recursion=yes ;;
  16.932 +
  16.933 +  -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
  16.934 +  | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
  16.935 +  | --oldin | --oldi | --old | --ol | --o)
  16.936 +    ac_prev=oldincludedir ;;
  16.937 +  -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
  16.938 +  | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
  16.939 +  | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
  16.940 +    oldincludedir=$ac_optarg ;;
  16.941 +
  16.942 +  -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
  16.943 +    ac_prev=prefix ;;
  16.944 +  -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
  16.945 +    prefix=$ac_optarg ;;
  16.946 +
  16.947 +  -program-prefix | --program-prefix | --program-prefi | --program-pref \
  16.948 +  | --program-pre | --program-pr | --program-p)
  16.949 +    ac_prev=program_prefix ;;
  16.950 +  -program-prefix=* | --program-prefix=* | --program-prefi=* \
  16.951 +  | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
  16.952 +    program_prefix=$ac_optarg ;;
  16.953 +
  16.954 +  -program-suffix | --program-suffix | --program-suffi | --program-suff \
  16.955 +  | --program-suf | --program-su | --program-s)
  16.956 +    ac_prev=program_suffix ;;
  16.957 +  -program-suffix=* | --program-suffix=* | --program-suffi=* \
  16.958 +  | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
  16.959 +    program_suffix=$ac_optarg ;;
  16.960 +
  16.961 +  -program-transform-name | --program-transform-name \
  16.962 +  | --program-transform-nam | --program-transform-na \
  16.963 +  | --program-transform-n | --program-transform- \
  16.964 +  | --program-transform | --program-transfor \
  16.965 +  | --program-transfo | --program-transf \
  16.966 +  | --program-trans | --program-tran \
  16.967 +  | --progr-tra | --program-tr | --program-t)
  16.968 +    ac_prev=program_transform_name ;;
  16.969 +  -program-transform-name=* | --program-transform-name=* \
  16.970 +  | --program-transform-nam=* | --program-transform-na=* \
  16.971 +  | --program-transform-n=* | --program-transform-=* \
  16.972 +  | --program-transform=* | --program-transfor=* \
  16.973 +  | --program-transfo=* | --program-transf=* \
  16.974 +  | --program-trans=* | --program-tran=* \
  16.975 +  | --progr-tra=* | --program-tr=* | --program-t=*)
  16.976 +    program_transform_name=$ac_optarg ;;
  16.977 +
  16.978 +  -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
  16.979 +    ac_prev=pdfdir ;;
  16.980 +  -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
  16.981 +    pdfdir=$ac_optarg ;;
  16.982 +
  16.983 +  -psdir | --psdir | --psdi | --psd | --ps)
  16.984 +    ac_prev=psdir ;;
  16.985 +  -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
  16.986 +    psdir=$ac_optarg ;;
  16.987 +
  16.988 +  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
  16.989 +  | -silent | --silent | --silen | --sile | --sil)
  16.990 +    silent=yes ;;
  16.991 +
  16.992 +  -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
  16.993 +    ac_prev=sbindir ;;
  16.994 +  -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
  16.995 +  | --sbi=* | --sb=*)
  16.996 +    sbindir=$ac_optarg ;;
  16.997 +
  16.998 +  -sharedstatedir | --sharedstatedir | --sharedstatedi \
  16.999 +  | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
 16.1000 +  | --sharedst | --shareds | --shared | --share | --shar \
 16.1001 +  | --sha | --sh)
 16.1002 +    ac_prev=sharedstatedir ;;
 16.1003 +  -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
 16.1004 +  | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
 16.1005 +  | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
 16.1006 +  | --sha=* | --sh=*)
 16.1007 +    sharedstatedir=$ac_optarg ;;
 16.1008 +
 16.1009 +  -site | --site | --sit)
 16.1010 +    ac_prev=site ;;
 16.1011 +  -site=* | --site=* | --sit=*)
 16.1012 +    site=$ac_optarg ;;
 16.1013 +
 16.1014 +  -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
 16.1015 +    ac_prev=srcdir ;;
 16.1016 +  -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
 16.1017 +    srcdir=$ac_optarg ;;
 16.1018 +
 16.1019 +  -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
 16.1020 +  | --syscon | --sysco | --sysc | --sys | --sy)
 16.1021 +    ac_prev=sysconfdir ;;
 16.1022 +  -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
 16.1023 +  | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
 16.1024 +    sysconfdir=$ac_optarg ;;
 16.1025 +
 16.1026 +  -target | --target | --targe | --targ | --tar | --ta | --t)
 16.1027 +    ac_prev=target_alias ;;
 16.1028 +  -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
 16.1029 +    target_alias=$ac_optarg ;;
 16.1030 +
 16.1031 +  -v | -verbose | --verbose | --verbos | --verbo | --verb)
 16.1032 +    verbose=yes ;;
 16.1033 +
 16.1034 +  -version | --version | --versio | --versi | --vers | -V)
 16.1035 +    ac_init_version=: ;;
 16.1036 +
 16.1037 +  -with-* | --with-*)
 16.1038 +    ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
 16.1039 +    # Reject names that are not valid shell variable names.
 16.1040 +    expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null &&
 16.1041 +      { echo "$as_me: error: invalid package name: $ac_package" >&2
 16.1042 +   { (exit 1); exit 1; }; }
 16.1043 +    ac_package=`echo $ac_package | sed 's/[-.]/_/g'`
 16.1044 +    eval with_$ac_package=\$ac_optarg ;;
 16.1045 +
 16.1046 +  -without-* | --without-*)
 16.1047 +    ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
 16.1048 +    # Reject names that are not valid shell variable names.
 16.1049 +    expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null &&
 16.1050 +      { echo "$as_me: error: invalid package name: $ac_package" >&2
 16.1051 +   { (exit 1); exit 1; }; }
 16.1052 +    ac_package=`echo $ac_package | sed 's/[-.]/_/g'`
 16.1053 +    eval with_$ac_package=no ;;
 16.1054 +
 16.1055 +  --x)
 16.1056 +    # Obsolete; use --with-x.
 16.1057 +    with_x=yes ;;
 16.1058 +
 16.1059 +  -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
 16.1060 +  | --x-incl | --x-inc | --x-in | --x-i)
 16.1061 +    ac_prev=x_includes ;;
 16.1062 +  -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
 16.1063 +  | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
 16.1064 +    x_includes=$ac_optarg ;;
 16.1065 +
 16.1066 +  -x-libraries | --x-libraries | --x-librarie | --x-librari \
 16.1067 +  | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
 16.1068 +    ac_prev=x_libraries ;;
 16.1069 +  -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
 16.1070 +  | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
 16.1071 +    x_libraries=$ac_optarg ;;
 16.1072 +
 16.1073 +  -*) { echo "$as_me: error: unrecognized option: $ac_option
 16.1074 +Try \`$0 --help' for more information." >&2
 16.1075 +   { (exit 1); exit 1; }; }
 16.1076 +    ;;
 16.1077 +
 16.1078 +  *=*)
 16.1079 +    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
 16.1080 +    # Reject names that are not valid shell variable names.
 16.1081 +    expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
 16.1082 +      { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
 16.1083 +   { (exit 1); exit 1; }; }
 16.1084 +    eval $ac_envvar=\$ac_optarg
 16.1085 +    export $ac_envvar ;;
 16.1086 +
 16.1087 +  *)
 16.1088 +    # FIXME: should be removed in autoconf 3.0.
 16.1089 +    echo "$as_me: WARNING: you should use --build, --host, --target" >&2
 16.1090 +    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
 16.1091 +      echo "$as_me: WARNING: invalid host type: $ac_option" >&2
 16.1092 +    : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
 16.1093 +    ;;
 16.1094 +
 16.1095 +  esac
 16.1096 +done
 16.1097 +
 16.1098 +if test -n "$ac_prev"; then
 16.1099 +  ac_option=--`echo $ac_prev | sed 's/_/-/g'`
 16.1100 +  { echo "$as_me: error: missing argument to $ac_option" >&2
 16.1101 +   { (exit 1); exit 1; }; }
 16.1102 +fi
 16.1103 +
 16.1104 +# Be sure to have absolute directory names.
 16.1105 +for ac_var in	exec_prefix prefix bindir sbindir libexecdir datarootdir \
 16.1106 +		datadir sysconfdir sharedstatedir localstatedir includedir \
 16.1107 +		oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
 16.1108 +		libdir localedir mandir
 16.1109 +do
 16.1110 +  eval ac_val=\$$ac_var
 16.1111 +  case $ac_val in
 16.1112 +    [\\/$]* | ?:[\\/]* )  continue;;
 16.1113 +    NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
 16.1114 +  esac
 16.1115 +  { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
 16.1116 +   { (exit 1); exit 1; }; }
 16.1117 +done
 16.1118 +
 16.1119 +# There might be people who depend on the old broken behavior: `$host'
 16.1120 +# used to hold the argument of --host etc.
 16.1121 +# FIXME: To remove some day.
 16.1122 +build=$build_alias
 16.1123 +host=$host_alias
 16.1124 +target=$target_alias
 16.1125 +
 16.1126 +# FIXME: To remove some day.
 16.1127 +if test "x$host_alias" != x; then
 16.1128 +  if test "x$build_alias" = x; then
 16.1129 +    cross_compiling=maybe
 16.1130 +    echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
 16.1131 +    If a cross compiler is detected then cross compile mode will be used." >&2
 16.1132 +  elif test "x$build_alias" != "x$host_alias"; then
 16.1133 +    cross_compiling=yes
 16.1134 +  fi
 16.1135 +fi
 16.1136 +
 16.1137 +ac_tool_prefix=
 16.1138 +test -n "$host_alias" && ac_tool_prefix=$host_alias-
 16.1139 +
 16.1140 +test "$silent" = yes && exec 6>/dev/null
 16.1141 +
 16.1142 +
 16.1143 +ac_pwd=`pwd` && test -n "$ac_pwd" &&
 16.1144 +ac_ls_di=`ls -di .` &&
 16.1145 +ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
 16.1146 +  { echo "$as_me: error: Working directory cannot be determined" >&2
 16.1147 +   { (exit 1); exit 1; }; }
 16.1148 +test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
 16.1149 +  { echo "$as_me: error: pwd does not report name of working directory" >&2
 16.1150 +   { (exit 1); exit 1; }; }
 16.1151 +
 16.1152 +
 16.1153 +# Find the source files, if location was not specified.
 16.1154 +if test -z "$srcdir"; then
 16.1155 +  ac_srcdir_defaulted=yes
 16.1156 +  # Try the directory containing this script, then the parent directory.
 16.1157 +  ac_confdir=`$as_dirname -- "$0" ||
 16.1158 +$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
 16.1159 +	 X"$0" : 'X\(//\)[^/]' \| \
 16.1160 +	 X"$0" : 'X\(//\)$' \| \
 16.1161 +	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
 16.1162 +echo X"$0" |
 16.1163 +    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 16.1164 +	    s//\1/
 16.1165 +	    q
 16.1166 +	  }
 16.1167 +	  /^X\(\/\/\)[^/].*/{
 16.1168 +	    s//\1/
 16.1169 +	    q
 16.1170 +	  }
 16.1171 +	  /^X\(\/\/\)$/{
 16.1172 +	    s//\1/
 16.1173 +	    q
 16.1174 +	  }
 16.1175 +	  /^X\(\/\).*/{
 16.1176 +	    s//\1/
 16.1177 +	    q
 16.1178 +	  }
 16.1179 +	  s/.*/./; q'`
 16.1180 +  srcdir=$ac_confdir
 16.1181 +  if test ! -r "$srcdir/$ac_unique_file"; then
 16.1182 +    srcdir=..
 16.1183 +  fi
 16.1184 +else
 16.1185 +  ac_srcdir_defaulted=no
 16.1186 +fi
 16.1187 +if test ! -r "$srcdir/$ac_unique_file"; then
 16.1188 +  test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
 16.1189 +  { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
 16.1190 +   { (exit 1); exit 1; }; }
 16.1191 +fi
 16.1192 +ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
 16.1193 +ac_abs_confdir=`(
 16.1194 +	cd "$srcdir" && test -r "./$ac_unique_file" || { echo "$as_me: error: $ac_msg" >&2
 16.1195 +   { (exit 1); exit 1; }; }
 16.1196 +	pwd)`
 16.1197 +# When building in place, set srcdir=.
 16.1198 +if test "$ac_abs_confdir" = "$ac_pwd"; then
 16.1199 +  srcdir=.
 16.1200 +fi
 16.1201 +# Remove unnecessary trailing slashes from srcdir.
 16.1202 +# Double slashes in file names in object file debugging info
 16.1203 +# mess up M-x gdb in Emacs.
 16.1204 +case $srcdir in
 16.1205 +*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
 16.1206 +esac
 16.1207 +for ac_var in $ac_precious_vars; do
 16.1208 +  eval ac_env_${ac_var}_set=\${${ac_var}+set}
 16.1209 +  eval ac_env_${ac_var}_value=\$${ac_var}
 16.1210 +  eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
 16.1211 +  eval ac_cv_env_${ac_var}_value=\$${ac_var}
 16.1212 +done
 16.1213 +
 16.1214 +#
 16.1215 +# Report the --help message.
 16.1216 +#
 16.1217 +if test "$ac_init_help" = "long"; then
 16.1218 +  # Omit some internal or obsolete options to make the list less imposing.
 16.1219 +  # This message is too long to be a string in the A/UX 3.1 sh.
 16.1220 +  cat <<_ACEOF
 16.1221 +\`configure' configures this package to adapt to many kinds of systems.
 16.1222 +
 16.1223 +Usage: $0 [OPTION]... [VAR=VALUE]...
 16.1224 +
 16.1225 +To assign environment variables (e.g., CC, CFLAGS...), specify them as
 16.1226 +VAR=VALUE.  See below for descriptions of some of the useful variables.
 16.1227 +
 16.1228 +Defaults for the options are specified in brackets.
 16.1229 +
 16.1230 +Configuration:
 16.1231 +  -h, --help              display this help and exit
 16.1232 +      --help=short        display options specific to this package
 16.1233 +      --help=recursive    display the short help of all the included packages
 16.1234 +  -V, --version           display version information and exit
 16.1235 +  -q, --quiet, --silent   do not print \`checking...' messages
 16.1236 +      --cache-file=FILE   cache test results in FILE [disabled]
 16.1237 +  -C, --config-cache      alias for \`--cache-file=config.cache'
 16.1238 +  -n, --no-create         do not create output files
 16.1239 +      --srcdir=DIR        find the sources in DIR [configure dir or \`..']
 16.1240 +
 16.1241 +Installation directories:
 16.1242 +  --prefix=PREFIX         install architecture-independent files in PREFIX
 16.1243 +			  [$ac_default_prefix]
 16.1244 +  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
 16.1245 +			  [PREFIX]
 16.1246 +
 16.1247 +By default, \`make install' will install all the files in
 16.1248 +\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
 16.1249 +an installation prefix other than \`$ac_default_prefix' using \`--prefix',
 16.1250 +for instance \`--prefix=\$HOME'.
 16.1251 +
 16.1252 +For better control, use the options below.
 16.1253 +
 16.1254 +Fine tuning of the installation directories:
 16.1255 +  --bindir=DIR           user executables [EPREFIX/bin]
 16.1256 +  --sbindir=DIR          system admin executables [EPREFIX/sbin]
 16.1257 +  --libexecdir=DIR       program executables [EPREFIX/libexec]
 16.1258 +  --sysconfdir=DIR       read-only single-machine data [PREFIX/etc]
 16.1259 +  --sharedstatedir=DIR   modifiable architecture-independent data [PREFIX/com]
 16.1260 +  --localstatedir=DIR    modifiable single-machine data [PREFIX/var]
 16.1261 +  --libdir=DIR           object code libraries [EPREFIX/lib]
 16.1262 +  --includedir=DIR       C header files [PREFIX/include]
 16.1263 +  --oldincludedir=DIR    C header files for non-gcc [/usr/include]
 16.1264 +  --datarootdir=DIR      read-only arch.-independent data root [PREFIX/share]
 16.1265 +  --datadir=DIR          read-only architecture-independent data [DATAROOTDIR]
 16.1266 +  --infodir=DIR          info documentation [DATAROOTDIR/info]
 16.1267 +  --localedir=DIR        locale-dependent data [DATAROOTDIR/locale]
 16.1268 +  --mandir=DIR           man documentation [DATAROOTDIR/man]
 16.1269 +  --docdir=DIR           documentation root [DATAROOTDIR/doc/PACKAGE]
 16.1270 +  --htmldir=DIR          html documentation [DOCDIR]
 16.1271 +  --dvidir=DIR           dvi documentation [DOCDIR]
 16.1272 +  --pdfdir=DIR           pdf documentation [DOCDIR]
 16.1273 +  --psdir=DIR            ps documentation [DOCDIR]
 16.1274 +_ACEOF
 16.1275 +
 16.1276 +  cat <<\_ACEOF
 16.1277 +
 16.1278 +Program names:
 16.1279 +  --program-prefix=PREFIX            prepend PREFIX to installed program names
 16.1280 +  --program-suffix=SUFFIX            append SUFFIX to installed program names
 16.1281 +  --program-transform-name=PROGRAM   run sed PROGRAM on installed program names
 16.1282 +_ACEOF
 16.1283 +fi
 16.1284 +
 16.1285 +if test -n "$ac_init_help"; then
 16.1286 +
 16.1287 +  cat <<\_ACEOF
 16.1288 +
 16.1289 +Optional Features:
 16.1290 +  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
 16.1291 +  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
 16.1292 +  --enable-inline         enable inlining of functions default=yes
 16.1293 +  --enable-sse            enable the use of SSE default=yes
 16.1294 +  --disable-dependency-tracking  speeds up one-time build
 16.1295 +  --enable-dependency-tracking   do not reject slow dependency extractors
 16.1296 +
 16.1297 +Some influential environment variables:
 16.1298 +  CXX         C++ compiler command
 16.1299 +  CXXFLAGS    C++ compiler flags
 16.1300 +  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
 16.1301 +              nonstandard directory <lib dir>
 16.1302 +  LIBS        libraries to pass to the linker, e.g. -l<library>
 16.1303 +  CPPFLAGS    C/C++/Objective C preprocessor flags, e.g. -I<include dir> if
 16.1304 +              you have headers in a nonstandard directory <include dir>
 16.1305 +  CXXCPP      C++ preprocessor
 16.1306 +
 16.1307 +Use these variables to override the choices made by `configure' or to help
 16.1308 +it to find libraries and programs with nonstandard names/locations.
 16.1309 +
 16.1310 +_ACEOF
 16.1311 +ac_status=$?
 16.1312 +fi
 16.1313 +
 16.1314 +if test "$ac_init_help" = "recursive"; then
 16.1315 +  # If there are subdirs, report their specific --help.
 16.1316 +  for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
 16.1317 +    test -d "$ac_dir" || continue
 16.1318 +    ac_builddir=.
 16.1319 +
 16.1320 +case "$ac_dir" in
 16.1321 +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
 16.1322 +*)
 16.1323 +  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
 16.1324 +  # A ".." for each directory in $ac_dir_suffix.
 16.1325 +  ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'`
 16.1326 +  case $ac_top_builddir_sub in
 16.1327 +  "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
 16.1328 +  *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
 16.1329 +  esac ;;
 16.1330 +esac
 16.1331 +ac_abs_top_builddir=$ac_pwd
 16.1332 +ac_abs_builddir=$ac_pwd$ac_dir_suffix
 16.1333 +# for backward compatibility:
 16.1334 +ac_top_builddir=$ac_top_build_prefix
 16.1335 +
 16.1336 +case $srcdir in
 16.1337 +  .)  # We are building in place.
 16.1338 +    ac_srcdir=.
 16.1339 +    ac_top_srcdir=$ac_top_builddir_sub
 16.1340 +    ac_abs_top_srcdir=$ac_pwd ;;
 16.1341 +  [\\/]* | ?:[\\/]* )  # Absolute name.
 16.1342 +    ac_srcdir=$srcdir$ac_dir_suffix;
 16.1343 +    ac_top_srcdir=$srcdir
 16.1344 +    ac_abs_top_srcdir=$srcdir ;;
 16.1345 +  *) # Relative name.
 16.1346 +    ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
 16.1347 +    ac_top_srcdir=$ac_top_build_prefix$srcdir
 16.1348 +    ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
 16.1349 +esac
 16.1350 +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
 16.1351 +
 16.1352 +    cd "$ac_dir" || { ac_status=$?; continue; }
 16.1353 +    # Check for guested configure.
 16.1354 +    if test -f "$ac_srcdir/configure.gnu"; then
 16.1355 +      echo &&
 16.1356 +      $SHELL "$ac_srcdir/configure.gnu" --help=recursive
 16.1357 +    elif test -f "$ac_srcdir/configure"; then
 16.1358 +      echo &&
 16.1359 +      $SHELL "$ac_srcdir/configure" --help=recursive
 16.1360 +    else
 16.1361 +      echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
 16.1362 +    fi || ac_status=$?
 16.1363 +    cd "$ac_pwd" || { ac_status=$?; break; }
 16.1364 +  done
 16.1365 +fi
 16.1366 +
 16.1367 +test -n "$ac_init_help" && exit $ac_status
 16.1368 +if $ac_init_version; then
 16.1369 +  cat <<\_ACEOF
 16.1370 +configure
 16.1371 +generated by GNU Autoconf 2.61
 16.1372 +
 16.1373 +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
 16.1374 +2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
 16.1375 +This configure script is free software; the Free Software Foundation
 16.1376 +gives unlimited permission to copy, distribute and modify it.
 16.1377 +_ACEOF
 16.1378 +  exit
 16.1379 +fi
 16.1380 +cat >config.log <<_ACEOF
 16.1381 +This file contains any messages produced by compilers while
 16.1382 +running configure, to aid debugging if configure makes a mistake.
 16.1383 +
 16.1384 +It was created by $as_me, which was
 16.1385 +generated by GNU Autoconf 2.61.  Invocation command line was
 16.1386 +
 16.1387 +  $ $0 $@
 16.1388 +
 16.1389 +_ACEOF
 16.1390 +exec 5>>config.log
 16.1391 +{
 16.1392 +cat <<_ASUNAME
 16.1393 +## --------- ##
 16.1394 +## Platform. ##
 16.1395 +## --------- ##
 16.1396 +
 16.1397 +hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
 16.1398 +uname -m = `(uname -m) 2>/dev/null || echo unknown`
 16.1399 +uname -r = `(uname -r) 2>/dev/null || echo unknown`
 16.1400 +uname -s = `(uname -s) 2>/dev/null || echo unknown`
 16.1401 +uname -v = `(uname -v) 2>/dev/null || echo unknown`
 16.1402 +
 16.1403 +/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
 16.1404 +/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
 16.1405 +
 16.1406 +/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`
 16.1407 +/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`
 16.1408 +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
 16.1409 +/usr/bin/hostinfo      = `(/usr/bin/hostinfo) 2>/dev/null      || echo unknown`
 16.1410 +/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`
 16.1411 +/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`
 16.1412 +/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`
 16.1413 +
 16.1414 +_ASUNAME
 16.1415 +
 16.1416 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 16.1417 +for as_dir in $PATH
 16.1418 +do
 16.1419 +  IFS=$as_save_IFS
 16.1420 +  test -z "$as_dir" && as_dir=.
 16.1421 +  echo "PATH: $as_dir"
 16.1422 +done
 16.1423 +IFS=$as_save_IFS
 16.1424 +
 16.1425 +} >&5
 16.1426 +
 16.1427 +cat >&5 <<_ACEOF
 16.1428 +
 16.1429 +
 16.1430 +## ----------- ##
 16.1431 +## Core tests. ##
 16.1432 +## ----------- ##
 16.1433 +
 16.1434 +_ACEOF
 16.1435 +
 16.1436 +
 16.1437 +# Keep a trace of the command line.
 16.1438 +# Strip out --no-create and --no-recursion so they do not pile up.
 16.1439 +# Strip out --silent because we don't want to record it for future runs.
 16.1440 +# Also quote any args containing shell meta-characters.
 16.1441 +# Make two passes to allow for proper duplicate-argument suppression.
 16.1442 +ac_configure_args=
 16.1443 +ac_configure_args0=
 16.1444 +ac_configure_args1=
 16.1445 +ac_must_keep_next=false
 16.1446 +for ac_pass in 1 2
 16.1447 +do
 16.1448 +  for ac_arg
 16.1449 +  do
 16.1450 +    case $ac_arg in
 16.1451 +    -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
 16.1452 +    -q | -quiet | --quiet | --quie | --qui | --qu | --q \
 16.1453 +    | -silent | --silent | --silen | --sile | --sil)
 16.1454 +      continue ;;
 16.1455 +    *\'*)
 16.1456 +      ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
 16.1457 +    esac
 16.1458 +    case $ac_pass in
 16.1459 +    1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
 16.1460 +    2)
 16.1461 +      ac_configure_args1="$ac_configure_args1 '$ac_arg'"
 16.1462 +      if test $ac_must_keep_next = true; then
 16.1463 +	ac_must_keep_next=false # Got value, back to normal.
 16.1464 +      else
 16.1465 +	case $ac_arg in
 16.1466 +	  *=* | --config-cache | -C | -disable-* | --disable-* \
 16.1467 +	  | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
 16.1468 +	  | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
 16.1469 +	  | -with-* | --with-* | -without-* | --without-* | --x)
 16.1470 +	    case "$ac_configure_args0 " in
 16.1471 +	      "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
 16.1472 +	    esac
 16.1473 +	    ;;
 16.1474 +	  -* ) ac_must_keep_next=true ;;
 16.1475 +	esac
 16.1476 +      fi
 16.1477 +      ac_configure_args="$ac_configure_args '$ac_arg'"
 16.1478 +      ;;
 16.1479 +    esac
 16.1480 +  done
 16.1481 +done
 16.1482 +$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
 16.1483 +$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
 16.1484 +
 16.1485 +# When interrupted or exit'd, cleanup temporary files, and complete
 16.1486 +# config.log.  We remove comments because anyway the quotes in there
 16.1487 +# would cause problems or look ugly.
 16.1488 +# WARNING: Use '\'' to represent an apostrophe within the trap.
 16.1489 +# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
 16.1490 +trap 'exit_status=$?
 16.1491 +  # Save into config.log some information that might help in debugging.
 16.1492 +  {
 16.1493 +    echo
 16.1494 +
 16.1495 +    cat <<\_ASBOX
 16.1496 +## ---------------- ##
 16.1497 +## Cache variables. ##
 16.1498 +## ---------------- ##
 16.1499 +_ASBOX
 16.1500 +    echo
 16.1501 +    # The following way of writing the cache mishandles newlines in values,
 16.1502 +(
 16.1503 +  for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
 16.1504 +    eval ac_val=\$$ac_var
 16.1505 +    case $ac_val in #(
 16.1506 +    *${as_nl}*)
 16.1507 +      case $ac_var in #(
 16.1508 +      *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5
 16.1509 +echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;;
 16.1510 +      esac
 16.1511 +      case $ac_var in #(
 16.1512 +      _ | IFS | as_nl) ;; #(
 16.1513 +      *) $as_unset $ac_var ;;
 16.1514 +      esac ;;
 16.1515 +    esac
 16.1516 +  done
 16.1517 +  (set) 2>&1 |
 16.1518 +    case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
 16.1519 +    *${as_nl}ac_space=\ *)
 16.1520 +      sed -n \
 16.1521 +	"s/'\''/'\''\\\\'\'''\''/g;
 16.1522 +	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
 16.1523 +      ;; #(
 16.1524 +    *)
 16.1525 +      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
 16.1526 +      ;;
 16.1527 +    esac |
 16.1528 +    sort
 16.1529 +)
 16.1530 +    echo
 16.1531 +
 16.1532 +    cat <<\_ASBOX
 16.1533 +## ----------------- ##
 16.1534 +## Output variables. ##
 16.1535 +## ----------------- ##
 16.1536 +_ASBOX
 16.1537 +    echo
 16.1538 +    for ac_var in $ac_subst_vars
 16.1539 +    do
 16.1540 +      eval ac_val=\$$ac_var
 16.1541 +      case $ac_val in
 16.1542 +      *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
 16.1543 +      esac
 16.1544 +      echo "$ac_var='\''$ac_val'\''"
 16.1545 +    done | sort
 16.1546 +    echo
 16.1547 +
 16.1548 +    if test -n "$ac_subst_files"; then
 16.1549 +      cat <<\_ASBOX
 16.1550 +## ------------------- ##
 16.1551 +## File substitutions. ##
 16.1552 +## ------------------- ##
 16.1553 +_ASBOX
 16.1554 +      echo
 16.1555 +      for ac_var in $ac_subst_files
 16.1556 +      do
 16.1557 +	eval ac_val=\$$ac_var
 16.1558 +	case $ac_val in
 16.1559 +	*\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
 16.1560 +	esac
 16.1561 +	echo "$ac_var='\''$ac_val'\''"
 16.1562 +      done | sort
 16.1563 +      echo
 16.1564 +    fi
 16.1565 +
 16.1566 +    if test -s confdefs.h; then
 16.1567 +      cat <<\_ASBOX
 16.1568 +## ----------- ##
 16.1569 +## confdefs.h. ##
 16.1570 +## ----------- ##
 16.1571 +_ASBOX
 16.1572 +      echo
 16.1573 +      cat confdefs.h
 16.1574 +      echo
 16.1575 +    fi
 16.1576 +    test "$ac_signal" != 0 &&
 16.1577 +      echo "$as_me: caught signal $ac_signal"
 16.1578 +    echo "$as_me: exit $exit_status"
 16.1579 +  } >&5
 16.1580 +  rm -f core *.core core.conftest.* &&
 16.1581 +    rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
 16.1582 +    exit $exit_status
 16.1583 +' 0
 16.1584 +for ac_signal in 1 2 13 15; do
 16.1585 +  trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
 16.1586 +done
 16.1587 +ac_signal=0
 16.1588 +
 16.1589 +# confdefs.h avoids OS command line length limits that DEFS can exceed.
 16.1590 +rm -f -r conftest* confdefs.h
 16.1591 +
 16.1592 +# Predefined preprocessor variables.
 16.1593 +
 16.1594 +cat >>confdefs.h <<_ACEOF
 16.1595 +#define PACKAGE_NAME "$PACKAGE_NAME"
 16.1596 +_ACEOF
 16.1597 +
 16.1598 +
 16.1599 +cat >>confdefs.h <<_ACEOF
 16.1600 +#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
 16.1601 +_ACEOF
 16.1602 +
 16.1603 +
 16.1604 +cat >>confdefs.h <<_ACEOF
 16.1605 +#define PACKAGE_VERSION "$PACKAGE_VERSION"
 16.1606 +_ACEOF
 16.1607 +
 16.1608 +
 16.1609 +cat >>confdefs.h <<_ACEOF
 16.1610 +#define PACKAGE_STRING "$PACKAGE_STRING"
 16.1611 +_ACEOF
 16.1612 +
 16.1613 +
 16.1614 +cat >>confdefs.h <<_ACEOF
 16.1615 +#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
 16.1616 +_ACEOF
 16.1617 +
 16.1618 +
 16.1619 +# Let the site file select an alternate cache file if it wants to.
 16.1620 +# Prefer explicitly selected file to automatically selected ones.
 16.1621 +if test -n "$CONFIG_SITE"; then
 16.1622 +  set x "$CONFIG_SITE"
 16.1623 +elif test "x$prefix" != xNONE; then
 16.1624 +  set x "$prefix/share/config.site" "$prefix/etc/config.site"
 16.1625 +else
 16.1626 +  set x "$ac_default_prefix/share/config.site" \
 16.1627 +	"$ac_default_prefix/etc/config.site"
 16.1628 +fi
 16.1629 +shift
 16.1630 +for ac_site_file
 16.1631 +do
 16.1632 +  if test -r "$ac_site_file"; then
 16.1633 +    { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
 16.1634 +echo "$as_me: loading site script $ac_site_file" >&6;}
 16.1635 +    sed 's/^/| /' "$ac_site_file" >&5
 16.1636 +    . "$ac_site_file"
 16.1637 +  fi
 16.1638 +done
 16.1639 +
 16.1640 +if test -r "$cache_file"; then
 16.1641 +  # Some versions of bash will fail to source /dev/null (special
 16.1642 +  # files actually), so we avoid doing that.
 16.1643 +  if test -f "$cache_file"; then
 16.1644 +    { echo "$as_me:$LINENO: loading cache $cache_file" >&5
 16.1645 +echo "$as_me: loading cache $cache_file" >&6;}
 16.1646 +    case $cache_file in
 16.1647 +      [\\/]* | ?:[\\/]* ) . "$cache_file";;
 16.1648 +      *)                      . "./$cache_file";;
 16.1649 +    esac
 16.1650 +  fi
 16.1651 +else
 16.1652 +  { echo "$as_me:$LINENO: creating cache $cache_file" >&5
 16.1653 +echo "$as_me: creating cache $cache_file" >&6;}
 16.1654 +  >$cache_file
 16.1655 +fi
 16.1656 +
 16.1657 +# Check that the precious variables saved in the cache have kept the same
 16.1658 +# value.
 16.1659 +ac_cache_corrupted=false
 16.1660 +for ac_var in $ac_precious_vars; do
 16.1661 +  eval ac_old_set=\$ac_cv_env_${ac_var}_set
 16.1662 +  eval ac_new_set=\$ac_env_${ac_var}_set
 16.1663 +  eval ac_old_val=\$ac_cv_env_${ac_var}_value
 16.1664 +  eval ac_new_val=\$ac_env_${ac_var}_value
 16.1665 +  case $ac_old_set,$ac_new_set in
 16.1666 +    set,)
 16.1667 +      { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
 16.1668 +echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
 16.1669 +      ac_cache_corrupted=: ;;
 16.1670 +    ,set)
 16.1671 +      { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
 16.1672 +echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
 16.1673 +      ac_cache_corrupted=: ;;
 16.1674 +    ,);;
 16.1675 +    *)
 16.1676 +      if test "x$ac_old_val" != "x$ac_new_val"; then
 16.1677 +	{ echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
 16.1678 +echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
 16.1679 +	{ echo "$as_me:$LINENO:   former value:  $ac_old_val" >&5
 16.1680 +echo "$as_me:   former value:  $ac_old_val" >&2;}
 16.1681 +	{ echo "$as_me:$LINENO:   current value: $ac_new_val" >&5
 16.1682 +echo "$as_me:   current value: $ac_new_val" >&2;}
 16.1683 +	ac_cache_corrupted=:
 16.1684 +      fi;;
 16.1685 +  esac
 16.1686 +  # Pass precious variables to config.status.
 16.1687 +  if test "$ac_new_set" = set; then
 16.1688 +    case $ac_new_val in
 16.1689 +    *\'*) ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
 16.1690 +    *) ac_arg=$ac_var=$ac_new_val ;;
 16.1691 +    esac
 16.1692 +    case " $ac_configure_args " in
 16.1693 +      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
 16.1694 +      *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
 16.1695 +    esac
 16.1696 +  fi
 16.1697 +done
 16.1698 +if $ac_cache_corrupted; then
 16.1699 +  { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
 16.1700 +echo "$as_me: error: changes in the environment can compromise the build" >&2;}
 16.1701 +  { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
 16.1702 +echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
 16.1703 +   { (exit 1); exit 1; }; }
 16.1704 +fi
 16.1705 +
 16.1706 +
 16.1707 +
 16.1708 +
 16.1709 +
 16.1710 +
 16.1711 +
 16.1712 +
 16.1713 +
 16.1714 +
 16.1715 +
 16.1716 +
 16.1717 +
 16.1718 +
 16.1719 +
 16.1720 +
 16.1721 +
 16.1722 +ac_ext=c
 16.1723 +ac_cpp='$CPP $CPPFLAGS'
 16.1724 +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 16.1725 +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 16.1726 +ac_compiler_gnu=$ac_cv_c_compiler_gnu
 16.1727 +
 16.1728 +
 16.1729 +
 16.1730 +am__api_version="1.9"
 16.1731 +ac_aux_dir=
 16.1732 +for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
 16.1733 +  if test -f "$ac_dir/install-sh"; then
 16.1734 +    ac_aux_dir=$ac_dir
 16.1735 +    ac_install_sh="$ac_aux_dir/install-sh -c"
 16.1736 +    break
 16.1737 +  elif test -f "$ac_dir/install.sh"; then
 16.1738 +    ac_aux_dir=$ac_dir
 16.1739 +    ac_install_sh="$ac_aux_dir/install.sh -c"
 16.1740 +    break
 16.1741 +  elif test -f "$ac_dir/shtool"; then
 16.1742 +    ac_aux_dir=$ac_dir
 16.1743 +    ac_install_sh="$ac_aux_dir/shtool install -c"
 16.1744 +    break
 16.1745 +  fi
 16.1746 +done
 16.1747 +if test -z "$ac_aux_dir"; then
 16.1748 +  { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&5
 16.1749 +echo "$as_me: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&2;}
 16.1750 +   { (exit 1); exit 1; }; }
 16.1751 +fi
 16.1752 +
 16.1753 +# These three variables are undocumented and unsupported,
 16.1754 +# and are intended to be withdrawn in a future Autoconf release.
 16.1755 +# They can cause serious problems if a builder's source tree is in a directory
 16.1756 +# whose full name contains unusual characters.
 16.1757 +ac_config_guess="$SHELL $ac_aux_dir/config.guess"  # Please don't use this var.
 16.1758 +ac_config_sub="$SHELL $ac_aux_dir/config.sub"  # Please don't use this var.
 16.1759 +ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
 16.1760 +
 16.1761 +
 16.1762 +# Find a good install program.  We prefer a C program (faster),
 16.1763 +# so one script is as good as another.  But avoid the broken or
 16.1764 +# incompatible versions:
 16.1765 +# SysV /etc/install, /usr/sbin/install
 16.1766 +# SunOS /usr/etc/install
 16.1767 +# IRIX /sbin/install
 16.1768 +# AIX /bin/install
 16.1769 +# AmigaOS /C/install, which installs bootblocks on floppy discs
 16.1770 +# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
 16.1771 +# AFS /usr/afsws/bin/install, which mishandles nonexistent args
 16.1772 +# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
 16.1773 +# OS/2's system install, which has a completely different semantic
 16.1774 +# ./install, which can be erroneously created by make from ./install.sh.
 16.1775 +{ echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
 16.1776 +echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6; }
 16.1777 +if test -z "$INSTALL"; then
 16.1778 +if test "${ac_cv_path_install+set}" = set; then
 16.1779 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.1780 +else
 16.1781 +  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 16.1782 +for as_dir in $PATH
 16.1783 +do
 16.1784 +  IFS=$as_save_IFS
 16.1785 +  test -z "$as_dir" && as_dir=.
 16.1786 +  # Account for people who put trailing slashes in PATH elements.
 16.1787 +case $as_dir/ in
 16.1788 +  ./ | .// | /cC/* | \
 16.1789 +  /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
 16.1790 +  ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
 16.1791 +  /usr/ucb/* ) ;;
 16.1792 +  *)
 16.1793 +    # OSF1 and SCO ODT 3.0 have their own names for install.
 16.1794 +    # Don't use installbsd from OSF since it installs stuff as root
 16.1795 +    # by default.
 16.1796 +    for ac_prog in ginstall scoinst install; do
 16.1797 +      for ac_exec_ext in '' $ac_executable_extensions; do
 16.1798 +	if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
 16.1799 +	  if test $ac_prog = install &&
 16.1800 +	    grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
 16.1801 +	    # AIX install.  It has an incompatible calling convention.
 16.1802 +	    :
 16.1803 +	  elif test $ac_prog = install &&
 16.1804 +	    grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
 16.1805 +	    # program-specific install script used by HP pwplus--don't use.
 16.1806 +	    :
 16.1807 +	  else
 16.1808 +	    ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
 16.1809 +	    break 3
 16.1810 +	  fi
 16.1811 +	fi
 16.1812 +      done
 16.1813 +    done
 16.1814 +    ;;
 16.1815 +esac
 16.1816 +done
 16.1817 +IFS=$as_save_IFS
 16.1818 +
 16.1819 +
 16.1820 +fi
 16.1821 +  if test "${ac_cv_path_install+set}" = set; then
 16.1822 +    INSTALL=$ac_cv_path_install
 16.1823 +  else
 16.1824 +    # As a last resort, use the slow shell script.  Don't cache a
 16.1825 +    # value for INSTALL within a source directory, because that will
 16.1826 +    # break other packages using the cache if that directory is
 16.1827 +    # removed, or if the value is a relative name.
 16.1828 +    INSTALL=$ac_install_sh
 16.1829 +  fi
 16.1830 +fi
 16.1831 +{ echo "$as_me:$LINENO: result: $INSTALL" >&5
 16.1832 +echo "${ECHO_T}$INSTALL" >&6; }
 16.1833 +
 16.1834 +# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
 16.1835 +# It thinks the first close brace ends the variable substitution.
 16.1836 +test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
 16.1837 +
 16.1838 +test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
 16.1839 +
 16.1840 +test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 16.1841 +
 16.1842 +{ echo "$as_me:$LINENO: checking whether build environment is sane" >&5
 16.1843 +echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6; }
 16.1844 +# Just in case
 16.1845 +sleep 1
 16.1846 +echo timestamp > conftest.file
 16.1847 +# Do `set' in a subshell so we don't clobber the current shell's
 16.1848 +# arguments.  Must try -L first in case configure is actually a
 16.1849 +# symlink; some systems play weird games with the mod time of symlinks
 16.1850 +# (eg FreeBSD returns the mod time of the symlink's containing
 16.1851 +# directory).
 16.1852 +if (
 16.1853 +   set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
 16.1854 +   if test "$*" = "X"; then
 16.1855 +      # -L didn't work.
 16.1856 +      set X `ls -t $srcdir/configure conftest.file`
 16.1857 +   fi
 16.1858 +   rm -f conftest.file
 16.1859 +   if test "$*" != "X $srcdir/configure conftest.file" \
 16.1860 +      && test "$*" != "X conftest.file $srcdir/configure"; then
 16.1861 +
 16.1862 +      # If neither matched, then we have a broken ls.  This can happen
 16.1863 +      # if, for instance, CONFIG_SHELL is bash and it inherits a
 16.1864 +      # broken ls alias from the environment.  This has actually
 16.1865 +      # happened.  Such a system could not be considered "sane".
 16.1866 +      { { echo "$as_me:$LINENO: error: ls -t appears to fail.  Make sure there is not a broken
 16.1867 +alias in your environment" >&5
 16.1868 +echo "$as_me: error: ls -t appears to fail.  Make sure there is not a broken
 16.1869 +alias in your environment" >&2;}
 16.1870 +   { (exit 1); exit 1; }; }
 16.1871 +   fi
 16.1872 +
 16.1873 +   test "$2" = conftest.file
 16.1874 +   )
 16.1875 +then
 16.1876 +   # Ok.
 16.1877 +   :
 16.1878 +else
 16.1879 +   { { echo "$as_me:$LINENO: error: newly created file is older than distributed files!
 16.1880 +Check your system clock" >&5
 16.1881 +echo "$as_me: error: newly created file is older than distributed files!
 16.1882 +Check your system clock" >&2;}
 16.1883 +   { (exit 1); exit 1; }; }
 16.1884 +fi
 16.1885 +{ echo "$as_me:$LINENO: result: yes" >&5
 16.1886 +echo "${ECHO_T}yes" >&6; }
 16.1887 +test "$program_prefix" != NONE &&
 16.1888 +  program_transform_name="s&^&$program_prefix&;$program_transform_name"
 16.1889 +# Use a double $ so make ignores it.
 16.1890 +test "$program_suffix" != NONE &&
 16.1891 +  program_transform_name="s&\$&$program_suffix&;$program_transform_name"
 16.1892 +# Double any \ or $.  echo might interpret backslashes.
 16.1893 +# By default was `s,x,x', remove it if useless.
 16.1894 +cat <<\_ACEOF >conftest.sed
 16.1895 +s/[\\$]/&&/g;s/;s,x,x,$//
 16.1896 +_ACEOF
 16.1897 +program_transform_name=`echo $program_transform_name | sed -f conftest.sed`
 16.1898 +rm -f conftest.sed
 16.1899 +
 16.1900 +# expand $ac_aux_dir to an absolute path
 16.1901 +am_aux_dir=`cd $ac_aux_dir && pwd`
 16.1902 +
 16.1903 +test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
 16.1904 +# Use eval to expand $SHELL
 16.1905 +if eval "$MISSING --run true"; then
 16.1906 +  am_missing_run="$MISSING --run "
 16.1907 +else
 16.1908 +  am_missing_run=
 16.1909 +  { echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5
 16.1910 +echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
 16.1911 +fi
 16.1912 +
 16.1913 +if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
 16.1914 +  # We used to keeping the `.' as first argument, in order to
 16.1915 +  # allow $(mkdir_p) to be used without argument.  As in
 16.1916 +  #   $(mkdir_p) $(somedir)
 16.1917 +  # where $(somedir) is conditionally defined.  However this is wrong
 16.1918 +  # for two reasons:
 16.1919 +  #  1. if the package is installed by a user who cannot write `.'
 16.1920 +  #     make install will fail,
 16.1921 +  #  2. the above comment should most certainly read
 16.1922 +  #     $(mkdir_p) $(DESTDIR)$(somedir)
 16.1923 +  #     so it does not work when $(somedir) is undefined and
 16.1924 +  #     $(DESTDIR) is not.
 16.1925 +  #  To support the latter case, we have to write
 16.1926 +  #     test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir),
 16.1927 +  #  so the `.' trick is pointless.
 16.1928 +  mkdir_p='mkdir -p --'
 16.1929 +else
 16.1930 +  # On NextStep and OpenStep, the `mkdir' command does not
 16.1931 +  # recognize any option.  It will interpret all options as
 16.1932 +  # directories to create, and then abort because `.' already
 16.1933 +  # exists.
 16.1934 +  for d in ./-p ./--version;
 16.1935 +  do
 16.1936 +    test -d $d && rmdir $d
 16.1937 +  done
 16.1938 +  # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists.
 16.1939 +  if test -f "$ac_aux_dir/mkinstalldirs"; then
 16.1940 +    mkdir_p='$(mkinstalldirs)'
 16.1941 +  else
 16.1942 +    mkdir_p='$(install_sh) -d'
 16.1943 +  fi
 16.1944 +fi
 16.1945 +
 16.1946 +for ac_prog in gawk mawk nawk awk
 16.1947 +do
 16.1948 +  # Extract the first word of "$ac_prog", so it can be a program name with args.
 16.1949 +set dummy $ac_prog; ac_word=$2
 16.1950 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5
 16.1951 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
 16.1952 +if test "${ac_cv_prog_AWK+set}" = set; then
 16.1953 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.1954 +else
 16.1955 +  if test -n "$AWK"; then
 16.1956 +  ac_cv_prog_AWK="$AWK" # Let the user override the test.
 16.1957 +else
 16.1958 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 16.1959 +for as_dir in $PATH
 16.1960 +do
 16.1961 +  IFS=$as_save_IFS
 16.1962 +  test -z "$as_dir" && as_dir=.
 16.1963 +  for ac_exec_ext in '' $ac_executable_extensions; do
 16.1964 +  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
 16.1965 +    ac_cv_prog_AWK="$ac_prog"
 16.1966 +    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
 16.1967 +    break 2
 16.1968 +  fi
 16.1969 +done
 16.1970 +done
 16.1971 +IFS=$as_save_IFS
 16.1972 +
 16.1973 +fi
 16.1974 +fi
 16.1975 +AWK=$ac_cv_prog_AWK
 16.1976 +if test -n "$AWK"; then
 16.1977 +  { echo "$as_me:$LINENO: result: $AWK" >&5
 16.1978 +echo "${ECHO_T}$AWK" >&6; }
 16.1979 +else
 16.1980 +  { echo "$as_me:$LINENO: result: no" >&5
 16.1981 +echo "${ECHO_T}no" >&6; }
 16.1982 +fi
 16.1983 +
 16.1984 +
 16.1985 +  test -n "$AWK" && break
 16.1986 +done
 16.1987 +
 16.1988 +{ echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
 16.1989 +echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6; }
 16.1990 +set x ${MAKE-make}; ac_make=`echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
 16.1991 +if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then
 16.1992 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.1993 +else
 16.1994 +  cat >conftest.make <<\_ACEOF
 16.1995 +SHELL = /bin/sh
 16.1996 +all:
 16.1997 +	@echo '@@@%%%=$(MAKE)=@@@%%%'
 16.1998 +_ACEOF
 16.1999 +# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
 16.2000 +case `${MAKE-make} -f conftest.make 2>/dev/null` in
 16.2001 +  *@@@%%%=?*=@@@%%%*)
 16.2002 +    eval ac_cv_prog_make_${ac_make}_set=yes;;
 16.2003 +  *)
 16.2004 +    eval ac_cv_prog_make_${ac_make}_set=no;;
 16.2005 +esac
 16.2006 +rm -f conftest.make
 16.2007 +fi
 16.2008 +if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
 16.2009 +  { echo "$as_me:$LINENO: result: yes" >&5
 16.2010 +echo "${ECHO_T}yes" >&6; }
 16.2011 +  SET_MAKE=
 16.2012 +else
 16.2013 +  { echo "$as_me:$LINENO: result: no" >&5
 16.2014 +echo "${ECHO_T}no" >&6; }
 16.2015 +  SET_MAKE="MAKE=${MAKE-make}"
 16.2016 +fi
 16.2017 +
 16.2018 +rm -rf .tst 2>/dev/null
 16.2019 +mkdir .tst 2>/dev/null
 16.2020 +if test -d .tst; then
 16.2021 +  am__leading_dot=.
 16.2022 +else
 16.2023 +  am__leading_dot=_
 16.2024 +fi
 16.2025 +rmdir .tst 2>/dev/null
 16.2026 +
 16.2027 +# test to see if srcdir already configured
 16.2028 +if test "`cd $srcdir && pwd`" != "`pwd`" &&
 16.2029 +   test -f $srcdir/config.status; then
 16.2030 +  { { echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5
 16.2031 +echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;}
 16.2032 +   { (exit 1); exit 1; }; }
 16.2033 +fi
 16.2034 +
 16.2035 +# test whether we have cygpath
 16.2036 +if test -z "$CYGPATH_W"; then
 16.2037 +  if (cygpath --version) >/dev/null 2>/dev/null; then
 16.2038 +    CYGPATH_W='cygpath -w'
 16.2039 +  else
 16.2040 +    CYGPATH_W=echo
 16.2041 +  fi
 16.2042 +fi
 16.2043 +
 16.2044 +
 16.2045 +# Define the identity of the package.
 16.2046 + PACKAGE=resid
 16.2047 + VERSION=0.16vice
 16.2048 +
 16.2049 +
 16.2050 +cat >>confdefs.h <<_ACEOF
 16.2051 +#define PACKAGE "$PACKAGE"
 16.2052 +_ACEOF
 16.2053 +
 16.2054 +
 16.2055 +cat >>confdefs.h <<_ACEOF
 16.2056 +#define VERSION "$VERSION"
 16.2057 +_ACEOF
 16.2058 +
 16.2059 +# Some tools Automake needs.
 16.2060 +
 16.2061 +ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
 16.2062 +
 16.2063 +
 16.2064 +AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
 16.2065 +
 16.2066 +
 16.2067 +AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
 16.2068 +
 16.2069 +
 16.2070 +AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
 16.2071 +
 16.2072 +
 16.2073 +MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
 16.2074 +
 16.2075 +install_sh=${install_sh-"$am_aux_dir/install-sh"}
 16.2076 +
 16.2077 +# Installed binaries are usually stripped using `strip' when the user
 16.2078 +# run `make install-strip'.  However `strip' might not be the right
 16.2079 +# tool to use in cross-compilation environments, therefore Automake
 16.2080 +# will honor the `STRIP' environment variable to overrule this program.
 16.2081 +if test "$cross_compiling" != no; then
 16.2082 +  if test -n "$ac_tool_prefix"; then
 16.2083 +  # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
 16.2084 +set dummy ${ac_tool_prefix}strip; ac_word=$2
 16.2085 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5
 16.2086 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
 16.2087 +if test "${ac_cv_prog_STRIP+set}" = set; then
 16.2088 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.2089 +else
 16.2090 +  if test -n "$STRIP"; then
 16.2091 +  ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
 16.2092 +else
 16.2093 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 16.2094 +for as_dir in $PATH
 16.2095 +do
 16.2096 +  IFS=$as_save_IFS
 16.2097 +  test -z "$as_dir" && as_dir=.
 16.2098 +  for ac_exec_ext in '' $ac_executable_extensions; do
 16.2099 +  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
 16.2100 +    ac_cv_prog_STRIP="${ac_tool_prefix}strip"
 16.2101 +    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
 16.2102 +    break 2
 16.2103 +  fi
 16.2104 +done
 16.2105 +done
 16.2106 +IFS=$as_save_IFS
 16.2107 +
 16.2108 +fi
 16.2109 +fi
 16.2110 +STRIP=$ac_cv_prog_STRIP
 16.2111 +if test -n "$STRIP"; then
 16.2112 +  { echo "$as_me:$LINENO: result: $STRIP" >&5
 16.2113 +echo "${ECHO_T}$STRIP" >&6; }
 16.2114 +else
 16.2115 +  { echo "$as_me:$LINENO: result: no" >&5
 16.2116 +echo "${ECHO_T}no" >&6; }
 16.2117 +fi
 16.2118 +
 16.2119 +
 16.2120 +fi
 16.2121 +if test -z "$ac_cv_prog_STRIP"; then
 16.2122 +  ac_ct_STRIP=$STRIP
 16.2123 +  # Extract the first word of "strip", so it can be a program name with args.
 16.2124 +set dummy strip; ac_word=$2
 16.2125 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5
 16.2126 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
 16.2127 +if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then
 16.2128 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.2129 +else
 16.2130 +  if test -n "$ac_ct_STRIP"; then
 16.2131 +  ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
 16.2132 +else
 16.2133 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 16.2134 +for as_dir in $PATH
 16.2135 +do
 16.2136 +  IFS=$as_save_IFS
 16.2137 +  test -z "$as_dir" && as_dir=.
 16.2138 +  for ac_exec_ext in '' $ac_executable_extensions; do
 16.2139 +  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
 16.2140 +    ac_cv_prog_ac_ct_STRIP="strip"
 16.2141 +    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
 16.2142 +    break 2
 16.2143 +  fi
 16.2144 +done
 16.2145 +done
 16.2146 +IFS=$as_save_IFS
 16.2147 +
 16.2148 +fi
 16.2149 +fi
 16.2150 +ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
 16.2151 +if test -n "$ac_ct_STRIP"; then
 16.2152 +  { echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5
 16.2153 +echo "${ECHO_T}$ac_ct_STRIP" >&6; }
 16.2154 +else
 16.2155 +  { echo "$as_me:$LINENO: result: no" >&5
 16.2156 +echo "${ECHO_T}no" >&6; }
 16.2157 +fi
 16.2158 +
 16.2159 +  if test "x$ac_ct_STRIP" = x; then
 16.2160 +    STRIP=":"
 16.2161 +  else
 16.2162 +    case $cross_compiling:$ac_tool_warned in
 16.2163 +yes:)
 16.2164 +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
 16.2165 +whose name does not start with the host triplet.  If you think this
 16.2166 +configuration is useful to you, please write to autoconf@gnu.org." >&5
 16.2167 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
 16.2168 +whose name does not start with the host triplet.  If you think this
 16.2169 +configuration is useful to you, please write to autoconf@gnu.org." >&2;}
 16.2170 +ac_tool_warned=yes ;;
 16.2171 +esac
 16.2172 +    STRIP=$ac_ct_STRIP
 16.2173 +  fi
 16.2174 +else
 16.2175 +  STRIP="$ac_cv_prog_STRIP"
 16.2176 +fi
 16.2177 +
 16.2178 +fi
 16.2179 +INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
 16.2180 +
 16.2181 +# We need awk for the "check" target.  The system "awk" is bad on
 16.2182 +# some platforms.
 16.2183 +# Always define AMTAR for backward compatibility.
 16.2184 +
 16.2185 +AMTAR=${AMTAR-"${am_missing_run}tar"}
 16.2186 +
 16.2187 +am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
 16.2188 +
 16.2189 +
 16.2190 +
 16.2191 +
 16.2192 +
 16.2193 +LTVERSION=5:0:0
 16.2194 +
 16.2195 +ac_ext=cpp
 16.2196 +ac_cpp='$CXXCPP $CPPFLAGS'
 16.2197 +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 16.2198 +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 16.2199 +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
 16.2200 +
 16.2201 +
 16.2202 +# Check whether --enable-inline was given.
 16.2203 +if test "${enable_inline+set}" = set; then
 16.2204 +  enableval=$enable_inline;
 16.2205 +fi
 16.2206 +
 16.2207 +# Check whether --enable-sse was given.
 16.2208 +if test "${enable_sse+set}" = set; then
 16.2209 +  enableval=$enable_sse;
 16.2210 +fi
 16.2211 +
 16.2212 +
 16.2213 +if test "$enable_inline" != no; then
 16.2214 +  RESID_INLINE=inline
 16.2215 +else
 16.2216 +  RESID_INLINE=
 16.2217 +fi
 16.2218 +
 16.2219 +
 16.2220 +
 16.2221 +ac_ext=cpp
 16.2222 +ac_cpp='$CXXCPP $CPPFLAGS'
 16.2223 +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 16.2224 +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 16.2225 +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
 16.2226 +if test -z "$CXX"; then
 16.2227 +  if test -n "$CCC"; then
 16.2228 +    CXX=$CCC
 16.2229 +  else
 16.2230 +    if test -n "$ac_tool_prefix"; then
 16.2231 +  for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
 16.2232 +  do
 16.2233 +    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
 16.2234 +set dummy $ac_tool_prefix$ac_prog; ac_word=$2
 16.2235 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5
 16.2236 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
 16.2237 +if test "${ac_cv_prog_CXX+set}" = set; then
 16.2238 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.2239 +else
 16.2240 +  if test -n "$CXX"; then
 16.2241 +  ac_cv_prog_CXX="$CXX" # Let the user override the test.
 16.2242 +else
 16.2243 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 16.2244 +for as_dir in $PATH
 16.2245 +do
 16.2246 +  IFS=$as_save_IFS
 16.2247 +  test -z "$as_dir" && as_dir=.
 16.2248 +  for ac_exec_ext in '' $ac_executable_extensions; do
 16.2249 +  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
 16.2250 +    ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
 16.2251 +    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
 16.2252 +    break 2
 16.2253 +  fi
 16.2254 +done
 16.2255 +done
 16.2256 +IFS=$as_save_IFS
 16.2257 +
 16.2258 +fi
 16.2259 +fi
 16.2260 +CXX=$ac_cv_prog_CXX
 16.2261 +if test -n "$CXX"; then
 16.2262 +  { echo "$as_me:$LINENO: result: $CXX" >&5
 16.2263 +echo "${ECHO_T}$CXX" >&6; }
 16.2264 +else
 16.2265 +  { echo "$as_me:$LINENO: result: no" >&5
 16.2266 +echo "${ECHO_T}no" >&6; }
 16.2267 +fi
 16.2268 +
 16.2269 +
 16.2270 +    test -n "$CXX" && break
 16.2271 +  done
 16.2272 +fi
 16.2273 +if test -z "$CXX"; then
 16.2274 +  ac_ct_CXX=$CXX
 16.2275 +  for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
 16.2276 +do
 16.2277 +  # Extract the first word of "$ac_prog", so it can be a program name with args.
 16.2278 +set dummy $ac_prog; ac_word=$2
 16.2279 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5
 16.2280 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
 16.2281 +if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then
 16.2282 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.2283 +else
 16.2284 +  if test -n "$ac_ct_CXX"; then
 16.2285 +  ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.
 16.2286 +else
 16.2287 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 16.2288 +for as_dir in $PATH
 16.2289 +do
 16.2290 +  IFS=$as_save_IFS
 16.2291 +  test -z "$as_dir" && as_dir=.
 16.2292 +  for ac_exec_ext in '' $ac_executable_extensions; do
 16.2293 +  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
 16.2294 +    ac_cv_prog_ac_ct_CXX="$ac_prog"
 16.2295 +    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
 16.2296 +    break 2
 16.2297 +  fi
 16.2298 +done
 16.2299 +done
 16.2300 +IFS=$as_save_IFS
 16.2301 +
 16.2302 +fi
 16.2303 +fi
 16.2304 +ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
 16.2305 +if test -n "$ac_ct_CXX"; then
 16.2306 +  { echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5
 16.2307 +echo "${ECHO_T}$ac_ct_CXX" >&6; }
 16.2308 +else
 16.2309 +  { echo "$as_me:$LINENO: result: no" >&5
 16.2310 +echo "${ECHO_T}no" >&6; }
 16.2311 +fi
 16.2312 +
 16.2313 +
 16.2314 +  test -n "$ac_ct_CXX" && break
 16.2315 +done
 16.2316 +
 16.2317 +  if test "x$ac_ct_CXX" = x; then
 16.2318 +    CXX="g++"
 16.2319 +  else
 16.2320 +    case $cross_compiling:$ac_tool_warned in
 16.2321 +yes:)
 16.2322 +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
 16.2323 +whose name does not start with the host triplet.  If you think this
 16.2324 +configuration is useful to you, please write to autoconf@gnu.org." >&5
 16.2325 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
 16.2326 +whose name does not start with the host triplet.  If you think this
 16.2327 +configuration is useful to you, please write to autoconf@gnu.org." >&2;}
 16.2328 +ac_tool_warned=yes ;;
 16.2329 +esac
 16.2330 +    CXX=$ac_ct_CXX
 16.2331 +  fi
 16.2332 +fi
 16.2333 +
 16.2334 +  fi
 16.2335 +fi
 16.2336 +# Provide some information about the compiler.
 16.2337 +echo "$as_me:$LINENO: checking for C++ compiler version" >&5
 16.2338 +ac_compiler=`set X $ac_compile; echo $2`
 16.2339 +{ (ac_try="$ac_compiler --version >&5"
 16.2340 +case "(($ac_try" in
 16.2341 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.2342 +  *) ac_try_echo=$ac_try;;
 16.2343 +esac
 16.2344 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.2345 +  (eval "$ac_compiler --version >&5") 2>&5
 16.2346 +  ac_status=$?
 16.2347 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.2348 +  (exit $ac_status); }
 16.2349 +{ (ac_try="$ac_compiler -v >&5"
 16.2350 +case "(($ac_try" in
 16.2351 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.2352 +  *) ac_try_echo=$ac_try;;
 16.2353 +esac
 16.2354 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.2355 +  (eval "$ac_compiler -v >&5") 2>&5
 16.2356 +  ac_status=$?
 16.2357 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.2358 +  (exit $ac_status); }
 16.2359 +{ (ac_try="$ac_compiler -V >&5"
 16.2360 +case "(($ac_try" in
 16.2361 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.2362 +  *) ac_try_echo=$ac_try;;
 16.2363 +esac
 16.2364 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.2365 +  (eval "$ac_compiler -V >&5") 2>&5
 16.2366 +  ac_status=$?
 16.2367 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.2368 +  (exit $ac_status); }
 16.2369 +
 16.2370 +cat >conftest.$ac_ext <<_ACEOF
 16.2371 +/* confdefs.h.  */
 16.2372 +_ACEOF
 16.2373 +cat confdefs.h >>conftest.$ac_ext
 16.2374 +cat >>conftest.$ac_ext <<_ACEOF
 16.2375 +/* end confdefs.h.  */
 16.2376 +
 16.2377 +int
 16.2378 +main ()
 16.2379 +{
 16.2380 +
 16.2381 +  ;
 16.2382 +  return 0;
 16.2383 +}
 16.2384 +_ACEOF
 16.2385 +ac_clean_files_save=$ac_clean_files
 16.2386 +ac_clean_files="$ac_clean_files a.out a.exe b.out"
 16.2387 +# Try to create an executable without -o first, disregard a.out.
 16.2388 +# It will help us diagnose broken compilers, and finding out an intuition
 16.2389 +# of exeext.
 16.2390 +{ echo "$as_me:$LINENO: checking for C++ compiler default output file name" >&5
 16.2391 +echo $ECHO_N "checking for C++ compiler default output file name... $ECHO_C" >&6; }
 16.2392 +ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
 16.2393 +#
 16.2394 +# List of possible output files, starting from the most likely.
 16.2395 +# The algorithm is not robust to junk in `.', hence go to wildcards (a.*)
 16.2396 +# only as a last resort.  b.out is created by i960 compilers.
 16.2397 +ac_files='a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out'
 16.2398 +#
 16.2399 +# The IRIX 6 linker writes into existing files which may not be
 16.2400 +# executable, retaining their permissions.  Remove them first so a
 16.2401 +# subsequent execution test works.
 16.2402 +ac_rmfiles=
 16.2403 +for ac_file in $ac_files
 16.2404 +do
 16.2405 +  case $ac_file in
 16.2406 +    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;;
 16.2407 +    * ) ac_rmfiles="$ac_rmfiles $ac_file";;
 16.2408 +  esac
 16.2409 +done
 16.2410 +rm -f $ac_rmfiles
 16.2411 +
 16.2412 +if { (ac_try="$ac_link_default"
 16.2413 +case "(($ac_try" in
 16.2414 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.2415 +  *) ac_try_echo=$ac_try;;
 16.2416 +esac
 16.2417 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.2418 +  (eval "$ac_link_default") 2>&5
 16.2419 +  ac_status=$?
 16.2420 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.2421 +  (exit $ac_status); }; then
 16.2422 +  # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
 16.2423 +# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
 16.2424 +# in a Makefile.  We should not override ac_cv_exeext if it was cached,
 16.2425 +# so that the user can short-circuit this test for compilers unknown to
 16.2426 +# Autoconf.
 16.2427 +for ac_file in $ac_files ''
 16.2428 +do
 16.2429 +  test -f "$ac_file" || continue
 16.2430 +  case $ac_file in
 16.2431 +    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj )
 16.2432 +	;;
 16.2433 +    [ab].out )
 16.2434 +	# We found the default executable, but exeext='' is most
 16.2435 +	# certainly right.
 16.2436 +	break;;
 16.2437 +    *.* )
 16.2438 +        if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
 16.2439 +	then :; else
 16.2440 +	   ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
 16.2441 +	fi
 16.2442 +	# We set ac_cv_exeext here because the later test for it is not
 16.2443 +	# safe: cross compilers may not add the suffix if given an `-o'
 16.2444 +	# argument, so we may need to know it at that point already.
 16.2445 +	# Even if this section looks crufty: it has the advantage of
 16.2446 +	# actually working.
 16.2447 +	break;;
 16.2448 +    * )
 16.2449 +	break;;
 16.2450 +  esac
 16.2451 +done
 16.2452 +test "$ac_cv_exeext" = no && ac_cv_exeext=
 16.2453 +
 16.2454 +else
 16.2455 +  ac_file=''
 16.2456 +fi
 16.2457 +
 16.2458 +{ echo "$as_me:$LINENO: result: $ac_file" >&5
 16.2459 +echo "${ECHO_T}$ac_file" >&6; }
 16.2460 +if test -z "$ac_file"; then
 16.2461 +  echo "$as_me: failed program was:" >&5
 16.2462 +sed 's/^/| /' conftest.$ac_ext >&5
 16.2463 +
 16.2464 +{ { echo "$as_me:$LINENO: error: C++ compiler cannot create executables
 16.2465 +See \`config.log' for more details." >&5
 16.2466 +echo "$as_me: error: C++ compiler cannot create executables
 16.2467 +See \`config.log' for more details." >&2;}
 16.2468 +   { (exit 77); exit 77; }; }
 16.2469 +fi
 16.2470 +
 16.2471 +ac_exeext=$ac_cv_exeext
 16.2472 +
 16.2473 +# Check that the compiler produces executables we can run.  If not, either
 16.2474 +# the compiler is broken, or we cross compile.
 16.2475 +{ echo "$as_me:$LINENO: checking whether the C++ compiler works" >&5
 16.2476 +echo $ECHO_N "checking whether the C++ compiler works... $ECHO_C" >&6; }
 16.2477 +# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
 16.2478 +# If not cross compiling, check that we can run a simple program.
 16.2479 +if test "$cross_compiling" != yes; then
 16.2480 +  if { ac_try='./$ac_file'
 16.2481 +  { (case "(($ac_try" in
 16.2482 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.2483 +  *) ac_try_echo=$ac_try;;
 16.2484 +esac
 16.2485 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.2486 +  (eval "$ac_try") 2>&5
 16.2487 +  ac_status=$?
 16.2488 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.2489 +  (exit $ac_status); }; }; then
 16.2490 +    cross_compiling=no
 16.2491 +  else
 16.2492 +    if test "$cross_compiling" = maybe; then
 16.2493 +	cross_compiling=yes
 16.2494 +    else
 16.2495 +	{ { echo "$as_me:$LINENO: error: cannot run C++ compiled programs.
 16.2496 +If you meant to cross compile, use \`--host'.
 16.2497 +See \`config.log' for more details." >&5
 16.2498 +echo "$as_me: error: cannot run C++ compiled programs.
 16.2499 +If you meant to cross compile, use \`--host'.
 16.2500 +See \`config.log' for more details." >&2;}
 16.2501 +   { (exit 1); exit 1; }; }
 16.2502 +    fi
 16.2503 +  fi
 16.2504 +fi
 16.2505 +{ echo "$as_me:$LINENO: result: yes" >&5
 16.2506 +echo "${ECHO_T}yes" >&6; }
 16.2507 +
 16.2508 +rm -f a.out a.exe conftest$ac_cv_exeext b.out
 16.2509 +ac_clean_files=$ac_clean_files_save
 16.2510 +# Check that the compiler produces executables we can run.  If not, either
 16.2511 +# the compiler is broken, or we cross compile.
 16.2512 +{ echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
 16.2513 +echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6; }
 16.2514 +{ echo "$as_me:$LINENO: result: $cross_compiling" >&5
 16.2515 +echo "${ECHO_T}$cross_compiling" >&6; }
 16.2516 +
 16.2517 +{ echo "$as_me:$LINENO: checking for suffix of executables" >&5
 16.2518 +echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6; }
 16.2519 +if { (ac_try="$ac_link"
 16.2520 +case "(($ac_try" in
 16.2521 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.2522 +  *) ac_try_echo=$ac_try;;
 16.2523 +esac
 16.2524 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.2525 +  (eval "$ac_link") 2>&5
 16.2526 +  ac_status=$?
 16.2527 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.2528 +  (exit $ac_status); }; then
 16.2529 +  # If both `conftest.exe' and `conftest' are `present' (well, observable)
 16.2530 +# catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
 16.2531 +# work properly (i.e., refer to `conftest.exe'), while it won't with
 16.2532 +# `rm'.
 16.2533 +for ac_file in conftest.exe conftest conftest.*; do
 16.2534 +  test -f "$ac_file" || continue
 16.2535 +  case $ac_file in
 16.2536 +    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;;
 16.2537 +    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
 16.2538 +	  break;;
 16.2539 +    * ) break;;
 16.2540 +  esac
 16.2541 +done
 16.2542 +else
 16.2543 +  { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
 16.2544 +See \`config.log' for more details." >&5
 16.2545 +echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
 16.2546 +See \`config.log' for more details." >&2;}
 16.2547 +   { (exit 1); exit 1; }; }
 16.2548 +fi
 16.2549 +
 16.2550 +rm -f conftest$ac_cv_exeext
 16.2551 +{ echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
 16.2552 +echo "${ECHO_T}$ac_cv_exeext" >&6; }
 16.2553 +
 16.2554 +rm -f conftest.$ac_ext
 16.2555 +EXEEXT=$ac_cv_exeext
 16.2556 +ac_exeext=$EXEEXT
 16.2557 +{ echo "$as_me:$LINENO: checking for suffix of object files" >&5
 16.2558 +echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6; }
 16.2559 +if test "${ac_cv_objext+set}" = set; then
 16.2560 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.2561 +else
 16.2562 +  cat >conftest.$ac_ext <<_ACEOF
 16.2563 +/* confdefs.h.  */
 16.2564 +_ACEOF
 16.2565 +cat confdefs.h >>conftest.$ac_ext
 16.2566 +cat >>conftest.$ac_ext <<_ACEOF
 16.2567 +/* end confdefs.h.  */
 16.2568 +
 16.2569 +int
 16.2570 +main ()
 16.2571 +{
 16.2572 +
 16.2573 +  ;
 16.2574 +  return 0;
 16.2575 +}
 16.2576 +_ACEOF
 16.2577 +rm -f conftest.o conftest.obj
 16.2578 +if { (ac_try="$ac_compile"
 16.2579 +case "(($ac_try" in
 16.2580 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.2581 +  *) ac_try_echo=$ac_try;;
 16.2582 +esac
 16.2583 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.2584 +  (eval "$ac_compile") 2>&5
 16.2585 +  ac_status=$?
 16.2586 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.2587 +  (exit $ac_status); }; then
 16.2588 +  for ac_file in conftest.o conftest.obj conftest.*; do
 16.2589 +  test -f "$ac_file" || continue;
 16.2590 +  case $ac_file in
 16.2591 +    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf ) ;;
 16.2592 +    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
 16.2593 +       break;;
 16.2594 +  esac
 16.2595 +done
 16.2596 +else
 16.2597 +  echo "$as_me: failed program was:" >&5
 16.2598 +sed 's/^/| /' conftest.$ac_ext >&5
 16.2599 +
 16.2600 +{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
 16.2601 +See \`config.log' for more details." >&5
 16.2602 +echo "$as_me: error: cannot compute suffix of object files: cannot compile
 16.2603 +See \`config.log' for more details." >&2;}
 16.2604 +   { (exit 1); exit 1; }; }
 16.2605 +fi
 16.2606 +
 16.2607 +rm -f conftest.$ac_cv_objext conftest.$ac_ext
 16.2608 +fi
 16.2609 +{ echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
 16.2610 +echo "${ECHO_T}$ac_cv_objext" >&6; }
 16.2611 +OBJEXT=$ac_cv_objext
 16.2612 +ac_objext=$OBJEXT
 16.2613 +{ echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5
 16.2614 +echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6; }
 16.2615 +if test "${ac_cv_cxx_compiler_gnu+set}" = set; then
 16.2616 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.2617 +else
 16.2618 +  cat >conftest.$ac_ext <<_ACEOF
 16.2619 +/* confdefs.h.  */
 16.2620 +_ACEOF
 16.2621 +cat confdefs.h >>conftest.$ac_ext
 16.2622 +cat >>conftest.$ac_ext <<_ACEOF
 16.2623 +/* end confdefs.h.  */
 16.2624 +
 16.2625 +int
 16.2626 +main ()
 16.2627 +{
 16.2628 +#ifndef __GNUC__
 16.2629 +       choke me
 16.2630 +#endif
 16.2631 +
 16.2632 +  ;
 16.2633 +  return 0;
 16.2634 +}
 16.2635 +_ACEOF
 16.2636 +rm -f conftest.$ac_objext
 16.2637 +if { (ac_try="$ac_compile"
 16.2638 +case "(($ac_try" in
 16.2639 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.2640 +  *) ac_try_echo=$ac_try;;
 16.2641 +esac
 16.2642 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.2643 +  (eval "$ac_compile") 2>conftest.er1
 16.2644 +  ac_status=$?
 16.2645 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.2646 +  rm -f conftest.er1
 16.2647 +  cat conftest.err >&5
 16.2648 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.2649 +  (exit $ac_status); } && {
 16.2650 +	 test -z "$ac_cxx_werror_flag" ||
 16.2651 +	 test ! -s conftest.err
 16.2652 +       } && test -s conftest.$ac_objext; then
 16.2653 +  ac_compiler_gnu=yes
 16.2654 +else
 16.2655 +  echo "$as_me: failed program was:" >&5
 16.2656 +sed 's/^/| /' conftest.$ac_ext >&5
 16.2657 +
 16.2658 +	ac_compiler_gnu=no
 16.2659 +fi
 16.2660 +
 16.2661 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 16.2662 +ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
 16.2663 +
 16.2664 +fi
 16.2665 +{ echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5
 16.2666 +echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6; }
 16.2667 +GXX=`test $ac_compiler_gnu = yes && echo yes`
 16.2668 +ac_test_CXXFLAGS=${CXXFLAGS+set}
 16.2669 +ac_save_CXXFLAGS=$CXXFLAGS
 16.2670 +{ echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5
 16.2671 +echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6; }
 16.2672 +if test "${ac_cv_prog_cxx_g+set}" = set; then
 16.2673 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.2674 +else
 16.2675 +  ac_save_cxx_werror_flag=$ac_cxx_werror_flag
 16.2676 +   ac_cxx_werror_flag=yes
 16.2677 +   ac_cv_prog_cxx_g=no
 16.2678 +   CXXFLAGS="-g"
 16.2679 +   cat >conftest.$ac_ext <<_ACEOF
 16.2680 +/* confdefs.h.  */
 16.2681 +_ACEOF
 16.2682 +cat confdefs.h >>conftest.$ac_ext
 16.2683 +cat >>conftest.$ac_ext <<_ACEOF
 16.2684 +/* end confdefs.h.  */
 16.2685 +
 16.2686 +int
 16.2687 +main ()
 16.2688 +{
 16.2689 +
 16.2690 +  ;
 16.2691 +  return 0;
 16.2692 +}
 16.2693 +_ACEOF
 16.2694 +rm -f conftest.$ac_objext
 16.2695 +if { (ac_try="$ac_compile"
 16.2696 +case "(($ac_try" in
 16.2697 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.2698 +  *) ac_try_echo=$ac_try;;
 16.2699 +esac
 16.2700 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.2701 +  (eval "$ac_compile") 2>conftest.er1
 16.2702 +  ac_status=$?
 16.2703 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.2704 +  rm -f conftest.er1
 16.2705 +  cat conftest.err >&5
 16.2706 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.2707 +  (exit $ac_status); } && {
 16.2708 +	 test -z "$ac_cxx_werror_flag" ||
 16.2709 +	 test ! -s conftest.err
 16.2710 +       } && test -s conftest.$ac_objext; then
 16.2711 +  ac_cv_prog_cxx_g=yes
 16.2712 +else
 16.2713 +  echo "$as_me: failed program was:" >&5
 16.2714 +sed 's/^/| /' conftest.$ac_ext >&5
 16.2715 +
 16.2716 +	CXXFLAGS=""
 16.2717 +      cat >conftest.$ac_ext <<_ACEOF
 16.2718 +/* confdefs.h.  */
 16.2719 +_ACEOF
 16.2720 +cat confdefs.h >>conftest.$ac_ext
 16.2721 +cat >>conftest.$ac_ext <<_ACEOF
 16.2722 +/* end confdefs.h.  */
 16.2723 +
 16.2724 +int
 16.2725 +main ()
 16.2726 +{
 16.2727 +
 16.2728 +  ;
 16.2729 +  return 0;
 16.2730 +}
 16.2731 +_ACEOF
 16.2732 +rm -f conftest.$ac_objext
 16.2733 +if { (ac_try="$ac_compile"
 16.2734 +case "(($ac_try" in
 16.2735 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.2736 +  *) ac_try_echo=$ac_try;;
 16.2737 +esac
 16.2738 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.2739 +  (eval "$ac_compile") 2>conftest.er1
 16.2740 +  ac_status=$?
 16.2741 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.2742 +  rm -f conftest.er1
 16.2743 +  cat conftest.err >&5
 16.2744 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.2745 +  (exit $ac_status); } && {
 16.2746 +	 test -z "$ac_cxx_werror_flag" ||
 16.2747 +	 test ! -s conftest.err
 16.2748 +       } && test -s conftest.$ac_objext; then
 16.2749 +  :
 16.2750 +else
 16.2751 +  echo "$as_me: failed program was:" >&5
 16.2752 +sed 's/^/| /' conftest.$ac_ext >&5
 16.2753 +
 16.2754 +	ac_cxx_werror_flag=$ac_save_cxx_werror_flag
 16.2755 +	 CXXFLAGS="-g"
 16.2756 +	 cat >conftest.$ac_ext <<_ACEOF
 16.2757 +/* confdefs.h.  */
 16.2758 +_ACEOF
 16.2759 +cat confdefs.h >>conftest.$ac_ext
 16.2760 +cat >>conftest.$ac_ext <<_ACEOF
 16.2761 +/* end confdefs.h.  */
 16.2762 +
 16.2763 +int
 16.2764 +main ()
 16.2765 +{
 16.2766 +
 16.2767 +  ;
 16.2768 +  return 0;
 16.2769 +}
 16.2770 +_ACEOF
 16.2771 +rm -f conftest.$ac_objext
 16.2772 +if { (ac_try="$ac_compile"
 16.2773 +case "(($ac_try" in
 16.2774 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.2775 +  *) ac_try_echo=$ac_try;;
 16.2776 +esac
 16.2777 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.2778 +  (eval "$ac_compile") 2>conftest.er1
 16.2779 +  ac_status=$?
 16.2780 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.2781 +  rm -f conftest.er1
 16.2782 +  cat conftest.err >&5
 16.2783 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.2784 +  (exit $ac_status); } && {
 16.2785 +	 test -z "$ac_cxx_werror_flag" ||
 16.2786 +	 test ! -s conftest.err
 16.2787 +       } && test -s conftest.$ac_objext; then
 16.2788 +  ac_cv_prog_cxx_g=yes
 16.2789 +else
 16.2790 +  echo "$as_me: failed program was:" >&5
 16.2791 +sed 's/^/| /' conftest.$ac_ext >&5
 16.2792 +
 16.2793 +
 16.2794 +fi
 16.2795 +
 16.2796 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 16.2797 +fi
 16.2798 +
 16.2799 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 16.2800 +fi
 16.2801 +
 16.2802 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 16.2803 +   ac_cxx_werror_flag=$ac_save_cxx_werror_flag
 16.2804 +fi
 16.2805 +{ echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5
 16.2806 +echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6; }
 16.2807 +if test "$ac_test_CXXFLAGS" = set; then
 16.2808 +  CXXFLAGS=$ac_save_CXXFLAGS
 16.2809 +elif test $ac_cv_prog_cxx_g = yes; then
 16.2810 +  if test "$GXX" = yes; then
 16.2811 +    CXXFLAGS="-g -O2"
 16.2812 +  else
 16.2813 +    CXXFLAGS="-g"
 16.2814 +  fi
 16.2815 +else
 16.2816 +  if test "$GXX" = yes; then
 16.2817 +    CXXFLAGS="-O2"
 16.2818 +  else
 16.2819 +    CXXFLAGS=
 16.2820 +  fi
 16.2821 +fi
 16.2822 +ac_ext=cpp
 16.2823 +ac_cpp='$CXXCPP $CPPFLAGS'
 16.2824 +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 16.2825 +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 16.2826 +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
 16.2827 +DEPDIR="${am__leading_dot}deps"
 16.2828 +
 16.2829 +ac_config_commands="$ac_config_commands depfiles"
 16.2830 +
 16.2831 +
 16.2832 +am_make=${MAKE-make}
 16.2833 +cat > confinc << 'END'
 16.2834 +am__doit:
 16.2835 +	@echo done
 16.2836 +.PHONY: am__doit
 16.2837 +END
 16.2838 +# If we don't find an include directive, just comment out the code.
 16.2839 +{ echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5
 16.2840 +echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6; }
 16.2841 +am__include="#"
 16.2842 +am__quote=
 16.2843 +_am_result=none
 16.2844 +# First try GNU make style include.
 16.2845 +echo "include confinc" > confmf
 16.2846 +# We grep out `Entering directory' and `Leaving directory'
 16.2847 +# messages which can occur if `w' ends up in MAKEFLAGS.
 16.2848 +# In particular we don't look at `^make:' because GNU make might
 16.2849 +# be invoked under some other name (usually "gmake"), in which
 16.2850 +# case it prints its new name instead of `make'.
 16.2851 +if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
 16.2852 +   am__include=include
 16.2853 +   am__quote=
 16.2854 +   _am_result=GNU
 16.2855 +fi
 16.2856 +# Now try BSD make style include.
 16.2857 +if test "$am__include" = "#"; then
 16.2858 +   echo '.include "confinc"' > confmf
 16.2859 +   if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
 16.2860 +      am__include=.include
 16.2861 +      am__quote="\""
 16.2862 +      _am_result=BSD
 16.2863 +   fi
 16.2864 +fi
 16.2865 +
 16.2866 +
 16.2867 +{ echo "$as_me:$LINENO: result: $_am_result" >&5
 16.2868 +echo "${ECHO_T}$_am_result" >&6; }
 16.2869 +rm -f confinc confmf
 16.2870 +
 16.2871 +# Check whether --enable-dependency-tracking was given.
 16.2872 +if test "${enable_dependency_tracking+set}" = set; then
 16.2873 +  enableval=$enable_dependency_tracking;
 16.2874 +fi
 16.2875 +
 16.2876 +if test "x$enable_dependency_tracking" != xno; then
 16.2877 +  am_depcomp="$ac_aux_dir/depcomp"
 16.2878 +  AMDEPBACKSLASH='\'
 16.2879 +fi
 16.2880 +
 16.2881 +
 16.2882 +if test "x$enable_dependency_tracking" != xno; then
 16.2883 +  AMDEP_TRUE=
 16.2884 +  AMDEP_FALSE='#'
 16.2885 +else
 16.2886 +  AMDEP_TRUE='#'
 16.2887 +  AMDEP_FALSE=
 16.2888 +fi
 16.2889 +
 16.2890 +
 16.2891 +
 16.2892 +
 16.2893 +depcc="$CXX"  am_compiler_list=
 16.2894 +
 16.2895 +{ echo "$as_me:$LINENO: checking dependency style of $depcc" >&5
 16.2896 +echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6; }
 16.2897 +if test "${am_cv_CXX_dependencies_compiler_type+set}" = set; then
 16.2898 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.2899 +else
 16.2900 +  if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
 16.2901 +  # We make a subdir and do the tests there.  Otherwise we can end up
 16.2902 +  # making bogus files that we don't know about and never remove.  For
 16.2903 +  # instance it was reported that on HP-UX the gcc test will end up
 16.2904 +  # making a dummy file named `D' -- because `-MD' means `put the output
 16.2905 +  # in D'.
 16.2906 +  mkdir conftest.dir
 16.2907 +  # Copy depcomp to subdir because otherwise we won't find it if we're
 16.2908 +  # using a relative directory.
 16.2909 +  cp "$am_depcomp" conftest.dir
 16.2910 +  cd conftest.dir
 16.2911 +  # We will build objects and dependencies in a subdirectory because
 16.2912 +  # it helps to detect inapplicable dependency modes.  For instance
 16.2913 +  # both Tru64's cc and ICC support -MD to output dependencies as a
 16.2914 +  # side effect of compilation, but ICC will put the dependencies in
 16.2915 +  # the current directory while Tru64 will put them in the object
 16.2916 +  # directory.
 16.2917 +  mkdir sub
 16.2918 +
 16.2919 +  am_cv_CXX_dependencies_compiler_type=none
 16.2920 +  if test "$am_compiler_list" = ""; then
 16.2921 +     am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
 16.2922 +  fi
 16.2923 +  for depmode in $am_compiler_list; do
 16.2924 +    # Setup a source with many dependencies, because some compilers
 16.2925 +    # like to wrap large dependency lists on column 80 (with \), and
 16.2926 +    # we should not choose a depcomp mode which is confused by this.
 16.2927 +    #
 16.2928 +    # We need to recreate these files for each test, as the compiler may
 16.2929 +    # overwrite some of them when testing with obscure command lines.
 16.2930 +    # This happens at least with the AIX C compiler.
 16.2931 +    : > sub/conftest.c
 16.2932 +    for i in 1 2 3 4 5 6; do
 16.2933 +      echo '#include "conftst'$i'.h"' >> sub/conftest.c
 16.2934 +      # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
 16.2935 +      # Solaris 8's {/usr,}/bin/sh.
 16.2936 +      touch sub/conftst$i.h
 16.2937 +    done
 16.2938 +    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
 16.2939 +
 16.2940 +    case $depmode in
 16.2941 +    nosideeffect)
 16.2942 +      # after this tag, mechanisms are not by side-effect, so they'll
 16.2943 +      # only be used when explicitly requested
 16.2944 +      if test "x$enable_dependency_tracking" = xyes; then
 16.2945 +	continue
 16.2946 +      else
 16.2947 +	break
 16.2948 +      fi
 16.2949 +      ;;
 16.2950 +    none) break ;;
 16.2951 +    esac
 16.2952 +    # We check with `-c' and `-o' for the sake of the "dashmstdout"
 16.2953 +    # mode.  It turns out that the SunPro C++ compiler does not properly
 16.2954 +    # handle `-M -o', and we need to detect this.
 16.2955 +    if depmode=$depmode \
 16.2956 +       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
 16.2957 +       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
 16.2958 +       $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
 16.2959 +         >/dev/null 2>conftest.err &&
 16.2960 +       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
 16.2961 +       grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
 16.2962 +       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
 16.2963 +      # icc doesn't choke on unknown options, it will just issue warnings
 16.2964 +      # or remarks (even with -Werror).  So we grep stderr for any message
 16.2965 +      # that says an option was ignored or not supported.
 16.2966 +      # When given -MP, icc 7.0 and 7.1 complain thusly:
 16.2967 +      #   icc: Command line warning: ignoring option '-M'; no argument required
 16.2968 +      # The diagnosis changed in icc 8.0:
 16.2969 +      #   icc: Command line remark: option '-MP' not supported
 16.2970 +      if (grep 'ignoring option' conftest.err ||
 16.2971 +          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
 16.2972 +        am_cv_CXX_dependencies_compiler_type=$depmode
 16.2973 +        break
 16.2974 +      fi
 16.2975 +    fi
 16.2976 +  done
 16.2977 +
 16.2978 +  cd ..
 16.2979 +  rm -rf conftest.dir
 16.2980 +else
 16.2981 +  am_cv_CXX_dependencies_compiler_type=none
 16.2982 +fi
 16.2983 +
 16.2984 +fi
 16.2985 +{ echo "$as_me:$LINENO: result: $am_cv_CXX_dependencies_compiler_type" >&5
 16.2986 +echo "${ECHO_T}$am_cv_CXX_dependencies_compiler_type" >&6; }
 16.2987 +CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type
 16.2988 +
 16.2989 +
 16.2990 +
 16.2991 +if
 16.2992 +  test "x$enable_dependency_tracking" != xno \
 16.2993 +  && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then
 16.2994 +  am__fastdepCXX_TRUE=
 16.2995 +  am__fastdepCXX_FALSE='#'
 16.2996 +else
 16.2997 +  am__fastdepCXX_TRUE='#'
 16.2998 +  am__fastdepCXX_FALSE=
 16.2999 +fi
 16.3000 +
 16.3001 +
 16.3002 +
 16.3003 +if test x"$enable_sse" != "xno"; then
 16.3004 +  if test "$GXX" = yes; then
 16.3005 +    if test "$ac_test_CXXFLAGS" != set; then
 16.3006 +      CXXFLAGS="-g -Wall -O2 -msse"
 16.3007 +      { echo "$as_me:$LINENO: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5
 16.3008 +echo $ECHO_N "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works... $ECHO_C" >&6; }
 16.3009 +
 16.3010 +cat >conftest.$ac_ext <<_ACEOF
 16.3011 +/* confdefs.h.  */
 16.3012 +_ACEOF
 16.3013 +cat confdefs.h >>conftest.$ac_ext
 16.3014 +cat >>conftest.$ac_ext <<_ACEOF
 16.3015 +/* end confdefs.h.  */
 16.3016 +
 16.3017 +int
 16.3018 +main ()
 16.3019 +{
 16.3020 +int test;
 16.3021 +  ;
 16.3022 +  return 0;
 16.3023 +}
 16.3024 +_ACEOF
 16.3025 +rm -f conftest.$ac_objext
 16.3026 +if { (ac_try="$ac_compile"
 16.3027 +case "(($ac_try" in
 16.3028 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.3029 +  *) ac_try_echo=$ac_try;;
 16.3030 +esac
 16.3031 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.3032 +  (eval "$ac_compile") 2>conftest.er1
 16.3033 +  ac_status=$?
 16.3034 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.3035 +  rm -f conftest.er1
 16.3036 +  cat conftest.err >&5
 16.3037 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.3038 +  (exit $ac_status); } && {
 16.3039 +	 test -z "$ac_cxx_werror_flag" ||
 16.3040 +	 test ! -s conftest.err
 16.3041 +       } && test -s conftest.$ac_objext; then
 16.3042 +   { echo "$as_me:$LINENO: result: yes" >&5
 16.3043 +echo "${ECHO_T}yes" >&6; }
 16.3044 +                       MSSE="-msse"
 16.3045 +
 16.3046 +else
 16.3047 +  echo "$as_me: failed program was:" >&5
 16.3048 +sed 's/^/| /' conftest.$ac_ext >&5
 16.3049 +
 16.3050 +	 { echo "$as_me:$LINENO: result: no" >&5
 16.3051 +echo "${ECHO_T}no" >&6; }
 16.3052 +                       MSSE=""
 16.3053 +
 16.3054 +fi
 16.3055 +
 16.3056 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 16.3057 +    fi
 16.3058 +  fi
 16.3059 +else
 16.3060 +  MSSE=""
 16.3061 +fi
 16.3062 +
 16.3063 +if test "$GXX" = yes; then
 16.3064 +  if test "$ac_test_CXXFLAGS" != set; then
 16.3065 +    CXXFLAGS="-g -Wall -O2 $MSSE -fno-exceptions"
 16.3066 +    { echo "$as_me:$LINENO: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5
 16.3067 +echo $ECHO_N "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works... $ECHO_C" >&6; }
 16.3068 +    cat >conftest.$ac_ext <<_ACEOF
 16.3069 +/* confdefs.h.  */
 16.3070 +_ACEOF
 16.3071 +cat confdefs.h >>conftest.$ac_ext
 16.3072 +cat >>conftest.$ac_ext <<_ACEOF
 16.3073 +/* end confdefs.h.  */
 16.3074 +
 16.3075 +int
 16.3076 +main ()
 16.3077 +{
 16.3078 +int test;
 16.3079 +  ;
 16.3080 +  return 0;
 16.3081 +}
 16.3082 +_ACEOF
 16.3083 +rm -f conftest.$ac_objext
 16.3084 +if { (ac_try="$ac_compile"
 16.3085 +case "(($ac_try" in
 16.3086 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.3087 +  *) ac_try_echo=$ac_try;;
 16.3088 +esac
 16.3089 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.3090 +  (eval "$ac_compile") 2>conftest.er1
 16.3091 +  ac_status=$?
 16.3092 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.3093 +  rm -f conftest.er1
 16.3094 +  cat conftest.err >&5
 16.3095 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.3096 +  (exit $ac_status); } && {
 16.3097 +	 test -z "$ac_cxx_werror_flag" ||
 16.3098 +	 test ! -s conftest.err
 16.3099 +       } && test -s conftest.$ac_objext; then
 16.3100 +   { echo "$as_me:$LINENO: result: yes" >&5
 16.3101 +echo "${ECHO_T}yes" >&6; }
 16.3102 +                     NO_EXCEPTIONS="-fno-exceptions"
 16.3103 +else
 16.3104 +  echo "$as_me: failed program was:" >&5
 16.3105 +sed 's/^/| /' conftest.$ac_ext >&5
 16.3106 +
 16.3107 +	 { echo "$as_me:$LINENO: result: no" >&5
 16.3108 +echo "${ECHO_T}no" >&6; }
 16.3109 +                     NO_EXCEPTIONS=""
 16.3110 +
 16.3111 +fi
 16.3112 +
 16.3113 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 16.3114 +  fi
 16.3115 +fi
 16.3116 +
 16.3117 +if test "$GXX" = yes; then
 16.3118 +  if test "$ac_test_CXXFLAGS" != set; then
 16.3119 +    CXXFLAGS="-g -Wall -O2 $MSSE -fno-exceptions $NO_EXCEPTIONS -fno-pic"
 16.3120 +    { echo "$as_me:$LINENO: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5
 16.3121 +echo $ECHO_N "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works... $ECHO_C" >&6; }
 16.3122 +    cat >conftest.$ac_ext <<_ACEOF
 16.3123 +/* confdefs.h.  */
 16.3124 +_ACEOF
 16.3125 +cat confdefs.h >>conftest.$ac_ext
 16.3126 +cat >>conftest.$ac_ext <<_ACEOF
 16.3127 +/* end confdefs.h.  */
 16.3128 +
 16.3129 +int
 16.3130 +main ()
 16.3131 +{
 16.3132 +int test;
 16.3133 +  ;
 16.3134 +  return 0;
 16.3135 +}
 16.3136 +_ACEOF
 16.3137 +rm -f conftest.$ac_objext
 16.3138 +if { (ac_try="$ac_compile"
 16.3139 +case "(($ac_try" in
 16.3140 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.3141 +  *) ac_try_echo=$ac_try;;
 16.3142 +esac
 16.3143 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.3144 +  (eval "$ac_compile") 2>conftest.er1
 16.3145 +  ac_status=$?
 16.3146 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.3147 +  rm -f conftest.er1
 16.3148 +  cat conftest.err >&5
 16.3149 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.3150 +  (exit $ac_status); } && {
 16.3151 +	 test -z "$ac_cxx_werror_flag" ||
 16.3152 +	 test ! -s conftest.err
 16.3153 +       } && test -s conftest.$ac_objext; then
 16.3154 +   { echo "$as_me:$LINENO: result: yes" >&5
 16.3155 +echo "${ECHO_T}yes" >&6; }
 16.3156 +                     NO_PIC="-fno-pic"
 16.3157 +else
 16.3158 +  echo "$as_me: failed program was:" >&5
 16.3159 +sed 's/^/| /' conftest.$ac_ext >&5
 16.3160 +
 16.3161 +	 { echo "$as_me:$LINENO: result: no" >&5
 16.3162 +echo "${ECHO_T}no" >&6; }
 16.3163 +                     NO_PIC=""
 16.3164 +
 16.3165 +fi
 16.3166 +
 16.3167 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 16.3168 +  fi
 16.3169 +fi
 16.3170 +
 16.3171 +CXXFLAGS="-g -Wall -O2 $MSSE $NO_EXCEPTIONS $NO_PIC"
 16.3172 +if test x"$MSSE" = "x-msse"; then
 16.3173 +  { echo "$as_me:$LINENO: checking if the xmmintrin.h include can be used" >&5
 16.3174 +echo $ECHO_N "checking if the xmmintrin.h include can be used... $ECHO_C" >&6; }
 16.3175 +  cat >conftest.$ac_ext <<_ACEOF
 16.3176 +/* confdefs.h.  */
 16.3177 +_ACEOF
 16.3178 +cat confdefs.h >>conftest.$ac_ext
 16.3179 +cat >>conftest.$ac_ext <<_ACEOF
 16.3180 +/* end confdefs.h.  */
 16.3181 +#include <xmmintrin.h>
 16.3182 +int
 16.3183 +main ()
 16.3184 +{
 16.3185 +int test;
 16.3186 +  ;
 16.3187 +  return 0;
 16.3188 +}
 16.3189 +_ACEOF
 16.3190 +rm -f conftest.$ac_objext
 16.3191 +if { (ac_try="$ac_compile"
 16.3192 +case "(($ac_try" in
 16.3193 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.3194 +  *) ac_try_echo=$ac_try;;
 16.3195 +esac
 16.3196 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.3197 +  (eval "$ac_compile") 2>conftest.er1
 16.3198 +  ac_status=$?
 16.3199 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.3200 +  rm -f conftest.er1
 16.3201 +  cat conftest.err >&5
 16.3202 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.3203 +  (exit $ac_status); } && {
 16.3204 +	 test -z "$ac_cxx_werror_flag" ||
 16.3205 +	 test ! -s conftest.err
 16.3206 +       } && test -s conftest.$ac_objext; then
 16.3207 +   { echo "$as_me:$LINENO: result: yes" >&5
 16.3208 +echo "${ECHO_T}yes" >&6; }
 16.3209 +
 16.3210 +else
 16.3211 +  echo "$as_me: failed program was:" >&5
 16.3212 +sed 's/^/| /' conftest.$ac_ext >&5
 16.3213 +
 16.3214 +	 { echo "$as_me:$LINENO: result: no" >&5
 16.3215 +echo "${ECHO_T}no" >&6; }
 16.3216 +                   MSSE=""
 16.3217 +
 16.3218 +fi
 16.3219 +
 16.3220 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 16.3221 +  CXXFLAGS="-g -Wall -O2 $NO_EXCEPTIONS $NO_PIC"
 16.3222 +fi
 16.3223 +
 16.3224 +# Extract the first word of "ar", so it can be a program name with args.
 16.3225 +set dummy ar; ac_word=$2
 16.3226 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5
 16.3227 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
 16.3228 +if test "${ac_cv_prog_AR+set}" = set; then
 16.3229 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.3230 +else
 16.3231 +  if test -n "$AR"; then
 16.3232 +  ac_cv_prog_AR="$AR" # Let the user override the test.
 16.3233 +else
 16.3234 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 16.3235 +for as_dir in $PATH
 16.3236 +do
 16.3237 +  IFS=$as_save_IFS
 16.3238 +  test -z "$as_dir" && as_dir=.
 16.3239 +  for ac_exec_ext in '' $ac_executable_extensions; do
 16.3240 +  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
 16.3241 +    ac_cv_prog_AR="ar"
 16.3242 +    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
 16.3243 +    break 2
 16.3244 +  fi
 16.3245 +done
 16.3246 +done
 16.3247 +IFS=$as_save_IFS
 16.3248 +
 16.3249 +  test -z "$ac_cv_prog_AR" && ac_cv_prog_AR="ar"
 16.3250 +fi
 16.3251 +fi
 16.3252 +AR=$ac_cv_prog_AR
 16.3253 +if test -n "$AR"; then
 16.3254 +  { echo "$as_me:$LINENO: result: $AR" >&5
 16.3255 +echo "${ECHO_T}$AR" >&6; }
 16.3256 +else
 16.3257 +  { echo "$as_me:$LINENO: result: no" >&5
 16.3258 +echo "${ECHO_T}no" >&6; }
 16.3259 +fi
 16.3260 +
 16.3261 +
 16.3262 +if test -n "$ac_tool_prefix"; then
 16.3263 +  # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
 16.3264 +set dummy ${ac_tool_prefix}ranlib; ac_word=$2
 16.3265 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5
 16.3266 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
 16.3267 +if test "${ac_cv_prog_RANLIB+set}" = set; then
 16.3268 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.3269 +else
 16.3270 +  if test -n "$RANLIB"; then
 16.3271 +  ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
 16.3272 +else
 16.3273 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 16.3274 +for as_dir in $PATH
 16.3275 +do
 16.3276 +  IFS=$as_save_IFS
 16.3277 +  test -z "$as_dir" && as_dir=.
 16.3278 +  for ac_exec_ext in '' $ac_executable_extensions; do
 16.3279 +  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
 16.3280 +    ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
 16.3281 +    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
 16.3282 +    break 2
 16.3283 +  fi
 16.3284 +done
 16.3285 +done
 16.3286 +IFS=$as_save_IFS
 16.3287 +
 16.3288 +fi
 16.3289 +fi
 16.3290 +RANLIB=$ac_cv_prog_RANLIB
 16.3291 +if test -n "$RANLIB"; then
 16.3292 +  { echo "$as_me:$LINENO: result: $RANLIB" >&5
 16.3293 +echo "${ECHO_T}$RANLIB" >&6; }
 16.3294 +else
 16.3295 +  { echo "$as_me:$LINENO: result: no" >&5
 16.3296 +echo "${ECHO_T}no" >&6; }
 16.3297 +fi
 16.3298 +
 16.3299 +
 16.3300 +fi
 16.3301 +if test -z "$ac_cv_prog_RANLIB"; then
 16.3302 +  ac_ct_RANLIB=$RANLIB
 16.3303 +  # Extract the first word of "ranlib", so it can be a program name with args.
 16.3304 +set dummy ranlib; ac_word=$2
 16.3305 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5
 16.3306 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
 16.3307 +if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
 16.3308 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.3309 +else
 16.3310 +  if test -n "$ac_ct_RANLIB"; then
 16.3311 +  ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
 16.3312 +else
 16.3313 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 16.3314 +for as_dir in $PATH
 16.3315 +do
 16.3316 +  IFS=$as_save_IFS
 16.3317 +  test -z "$as_dir" && as_dir=.
 16.3318 +  for ac_exec_ext in '' $ac_executable_extensions; do
 16.3319 +  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
 16.3320 +    ac_cv_prog_ac_ct_RANLIB="ranlib"
 16.3321 +    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
 16.3322 +    break 2
 16.3323 +  fi
 16.3324 +done
 16.3325 +done
 16.3326 +IFS=$as_save_IFS
 16.3327 +
 16.3328 +fi
 16.3329 +fi
 16.3330 +ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
 16.3331 +if test -n "$ac_ct_RANLIB"; then
 16.3332 +  { echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5
 16.3333 +echo "${ECHO_T}$ac_ct_RANLIB" >&6; }
 16.3334 +else
 16.3335 +  { echo "$as_me:$LINENO: result: no" >&5
 16.3336 +echo "${ECHO_T}no" >&6; }
 16.3337 +fi
 16.3338 +
 16.3339 +  if test "x$ac_ct_RANLIB" = x; then
 16.3340 +    RANLIB=":"
 16.3341 +  else
 16.3342 +    case $cross_compiling:$ac_tool_warned in
 16.3343 +yes:)
 16.3344 +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
 16.3345 +whose name does not start with the host triplet.  If you think this
 16.3346 +configuration is useful to you, please write to autoconf@gnu.org." >&5
 16.3347 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
 16.3348 +whose name does not start with the host triplet.  If you think this
 16.3349 +configuration is useful to you, please write to autoconf@gnu.org." >&2;}
 16.3350 +ac_tool_warned=yes ;;
 16.3351 +esac
 16.3352 +    RANLIB=$ac_ct_RANLIB
 16.3353 +  fi
 16.3354 +else
 16.3355 +  RANLIB="$ac_cv_prog_RANLIB"
 16.3356 +fi
 16.3357 +
 16.3358 +# Extract the first word of "perl", so it can be a program name with args.
 16.3359 +set dummy perl; ac_word=$2
 16.3360 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5
 16.3361 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
 16.3362 +if test "${ac_cv_path_PERL+set}" = set; then
 16.3363 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.3364 +else
 16.3365 +  case $PERL in
 16.3366 +  [\\/]* | ?:[\\/]*)
 16.3367 +  ac_cv_path_PERL="$PERL" # Let the user override the test with a path.
 16.3368 +  ;;
 16.3369 +  *)
 16.3370 +  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 16.3371 +for as_dir in $PATH
 16.3372 +do
 16.3373 +  IFS=$as_save_IFS
 16.3374 +  test -z "$as_dir" && as_dir=.
 16.3375 +  for ac_exec_ext in '' $ac_executable_extensions; do
 16.3376 +  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
 16.3377 +    ac_cv_path_PERL="$as_dir/$ac_word$ac_exec_ext"
 16.3378 +    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
 16.3379 +    break 2
 16.3380 +  fi
 16.3381 +done
 16.3382 +done
 16.3383 +IFS=$as_save_IFS
 16.3384 +
 16.3385 +  ;;
 16.3386 +esac
 16.3387 +fi
 16.3388 +PERL=$ac_cv_path_PERL
 16.3389 +if test -n "$PERL"; then
 16.3390 +  { echo "$as_me:$LINENO: result: $PERL" >&5
 16.3391 +echo "${ECHO_T}$PERL" >&6; }
 16.3392 +else
 16.3393 +  { echo "$as_me:$LINENO: result: no" >&5
 16.3394 +echo "${ECHO_T}no" >&6; }
 16.3395 +fi
 16.3396 +
 16.3397 +
 16.3398 +
 16.3399 +
 16.3400 +
 16.3401 +
 16.3402 +
 16.3403 +ac_ext=cpp
 16.3404 +ac_cpp='$CXXCPP $CPPFLAGS'
 16.3405 +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 16.3406 +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 16.3407 +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
 16.3408 +{ echo "$as_me:$LINENO: checking how to run the C++ preprocessor" >&5
 16.3409 +echo $ECHO_N "checking how to run the C++ preprocessor... $ECHO_C" >&6; }
 16.3410 +if test -z "$CXXCPP"; then
 16.3411 +  if test "${ac_cv_prog_CXXCPP+set}" = set; then
 16.3412 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.3413 +else
 16.3414 +      # Double quotes because CXXCPP needs to be expanded
 16.3415 +    for CXXCPP in "$CXX -E" "/lib/cpp"
 16.3416 +    do
 16.3417 +      ac_preproc_ok=false
 16.3418 +for ac_cxx_preproc_warn_flag in '' yes
 16.3419 +do
 16.3420 +  # Use a header file that comes with gcc, so configuring glibc
 16.3421 +  # with a fresh cross-compiler works.
 16.3422 +  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
 16.3423 +  # <limits.h> exists even on freestanding compilers.
 16.3424 +  # On the NeXT, cc -E runs the code through the compiler's parser,
 16.3425 +  # not just through cpp. "Syntax error" is here to catch this case.
 16.3426 +  cat >conftest.$ac_ext <<_ACEOF
 16.3427 +/* confdefs.h.  */
 16.3428 +_ACEOF
 16.3429 +cat confdefs.h >>conftest.$ac_ext
 16.3430 +cat >>conftest.$ac_ext <<_ACEOF
 16.3431 +/* end confdefs.h.  */
 16.3432 +#ifdef __STDC__
 16.3433 +# include <limits.h>
 16.3434 +#else
 16.3435 +# include <assert.h>
 16.3436 +#endif
 16.3437 +		     Syntax error
 16.3438 +_ACEOF
 16.3439 +if { (ac_try="$ac_cpp conftest.$ac_ext"
 16.3440 +case "(($ac_try" in
 16.3441 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.3442 +  *) ac_try_echo=$ac_try;;
 16.3443 +esac
 16.3444 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.3445 +  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
 16.3446 +  ac_status=$?
 16.3447 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.3448 +  rm -f conftest.er1
 16.3449 +  cat conftest.err >&5
 16.3450 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.3451 +  (exit $ac_status); } >/dev/null && {
 16.3452 +	 test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" ||
 16.3453 +	 test ! -s conftest.err
 16.3454 +       }; then
 16.3455 +  :
 16.3456 +else
 16.3457 +  echo "$as_me: failed program was:" >&5
 16.3458 +sed 's/^/| /' conftest.$ac_ext >&5
 16.3459 +
 16.3460 +  # Broken: fails on valid input.
 16.3461 +continue
 16.3462 +fi
 16.3463 +
 16.3464 +rm -f conftest.err conftest.$ac_ext
 16.3465 +
 16.3466 +  # OK, works on sane cases.  Now check whether nonexistent headers
 16.3467 +  # can be detected and how.
 16.3468 +  cat >conftest.$ac_ext <<_ACEOF
 16.3469 +/* confdefs.h.  */
 16.3470 +_ACEOF
 16.3471 +cat confdefs.h >>conftest.$ac_ext
 16.3472 +cat >>conftest.$ac_ext <<_ACEOF
 16.3473 +/* end confdefs.h.  */
 16.3474 +#include <ac_nonexistent.h>
 16.3475 +_ACEOF
 16.3476 +if { (ac_try="$ac_cpp conftest.$ac_ext"
 16.3477 +case "(($ac_try" in
 16.3478 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.3479 +  *) ac_try_echo=$ac_try;;
 16.3480 +esac
 16.3481 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.3482 +  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
 16.3483 +  ac_status=$?
 16.3484 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.3485 +  rm -f conftest.er1
 16.3486 +  cat conftest.err >&5
 16.3487 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.3488 +  (exit $ac_status); } >/dev/null && {
 16.3489 +	 test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" ||
 16.3490 +	 test ! -s conftest.err
 16.3491 +       }; then
 16.3492 +  # Broken: success on invalid input.
 16.3493 +continue
 16.3494 +else
 16.3495 +  echo "$as_me: failed program was:" >&5
 16.3496 +sed 's/^/| /' conftest.$ac_ext >&5
 16.3497 +
 16.3498 +  # Passes both tests.
 16.3499 +ac_preproc_ok=:
 16.3500 +break
 16.3501 +fi
 16.3502 +
 16.3503 +rm -f conftest.err conftest.$ac_ext
 16.3504 +
 16.3505 +done
 16.3506 +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
 16.3507 +rm -f conftest.err conftest.$ac_ext
 16.3508 +if $ac_preproc_ok; then
 16.3509 +  break
 16.3510 +fi
 16.3511 +
 16.3512 +    done
 16.3513 +    ac_cv_prog_CXXCPP=$CXXCPP
 16.3514 +
 16.3515 +fi
 16.3516 +  CXXCPP=$ac_cv_prog_CXXCPP
 16.3517 +else
 16.3518 +  ac_cv_prog_CXXCPP=$CXXCPP
 16.3519 +fi
 16.3520 +{ echo "$as_me:$LINENO: result: $CXXCPP" >&5
 16.3521 +echo "${ECHO_T}$CXXCPP" >&6; }
 16.3522 +ac_preproc_ok=false
 16.3523 +for ac_cxx_preproc_warn_flag in '' yes
 16.3524 +do
 16.3525 +  # Use a header file that comes with gcc, so configuring glibc
 16.3526 +  # with a fresh cross-compiler works.
 16.3527 +  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
 16.3528 +  # <limits.h> exists even on freestanding compilers.
 16.3529 +  # On the NeXT, cc -E runs the code through the compiler's parser,
 16.3530 +  # not just through cpp. "Syntax error" is here to catch this case.
 16.3531 +  cat >conftest.$ac_ext <<_ACEOF
 16.3532 +/* confdefs.h.  */
 16.3533 +_ACEOF
 16.3534 +cat confdefs.h >>conftest.$ac_ext
 16.3535 +cat >>conftest.$ac_ext <<_ACEOF
 16.3536 +/* end confdefs.h.  */
 16.3537 +#ifdef __STDC__
 16.3538 +# include <limits.h>
 16.3539 +#else
 16.3540 +# include <assert.h>
 16.3541 +#endif
 16.3542 +		     Syntax error
 16.3543 +_ACEOF
 16.3544 +if { (ac_try="$ac_cpp conftest.$ac_ext"
 16.3545 +case "(($ac_try" in
 16.3546 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.3547 +  *) ac_try_echo=$ac_try;;
 16.3548 +esac
 16.3549 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.3550 +  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
 16.3551 +  ac_status=$?
 16.3552 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.3553 +  rm -f conftest.er1
 16.3554 +  cat conftest.err >&5
 16.3555 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.3556 +  (exit $ac_status); } >/dev/null && {
 16.3557 +	 test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" ||
 16.3558 +	 test ! -s conftest.err
 16.3559 +       }; then
 16.3560 +  :
 16.3561 +else
 16.3562 +  echo "$as_me: failed program was:" >&5
 16.3563 +sed 's/^/| /' conftest.$ac_ext >&5
 16.3564 +
 16.3565 +  # Broken: fails on valid input.
 16.3566 +continue
 16.3567 +fi
 16.3568 +
 16.3569 +rm -f conftest.err conftest.$ac_ext
 16.3570 +
 16.3571 +  # OK, works on sane cases.  Now check whether nonexistent headers
 16.3572 +  # can be detected and how.
 16.3573 +  cat >conftest.$ac_ext <<_ACEOF
 16.3574 +/* confdefs.h.  */
 16.3575 +_ACEOF
 16.3576 +cat confdefs.h >>conftest.$ac_ext
 16.3577 +cat >>conftest.$ac_ext <<_ACEOF
 16.3578 +/* end confdefs.h.  */
 16.3579 +#include <ac_nonexistent.h>
 16.3580 +_ACEOF
 16.3581 +if { (ac_try="$ac_cpp conftest.$ac_ext"
 16.3582 +case "(($ac_try" in
 16.3583 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.3584 +  *) ac_try_echo=$ac_try;;
 16.3585 +esac
 16.3586 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.3587 +  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
 16.3588 +  ac_status=$?
 16.3589 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.3590 +  rm -f conftest.er1
 16.3591 +  cat conftest.err >&5
 16.3592 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.3593 +  (exit $ac_status); } >/dev/null && {
 16.3594 +	 test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" ||
 16.3595 +	 test ! -s conftest.err
 16.3596 +       }; then
 16.3597 +  # Broken: success on invalid input.
 16.3598 +continue
 16.3599 +else
 16.3600 +  echo "$as_me: failed program was:" >&5
 16.3601 +sed 's/^/| /' conftest.$ac_ext >&5
 16.3602 +
 16.3603 +  # Passes both tests.
 16.3604 +ac_preproc_ok=:
 16.3605 +break
 16.3606 +fi
 16.3607 +
 16.3608 +rm -f conftest.err conftest.$ac_ext
 16.3609 +
 16.3610 +done
 16.3611 +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
 16.3612 +rm -f conftest.err conftest.$ac_ext
 16.3613 +if $ac_preproc_ok; then
 16.3614 +  :
 16.3615 +else
 16.3616 +  { { echo "$as_me:$LINENO: error: C++ preprocessor \"$CXXCPP\" fails sanity check
 16.3617 +See \`config.log' for more details." >&5
 16.3618 +echo "$as_me: error: C++ preprocessor \"$CXXCPP\" fails sanity check
 16.3619 +See \`config.log' for more details." >&2;}
 16.3620 +   { (exit 1); exit 1; }; }
 16.3621 +fi
 16.3622 +
 16.3623 +ac_ext=cpp
 16.3624 +ac_cpp='$CXXCPP $CPPFLAGS'
 16.3625 +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 16.3626 +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 16.3627 +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
 16.3628 +
 16.3629 +
 16.3630 +{ echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5
 16.3631 +echo $ECHO_N "checking for grep that handles long lines and -e... $ECHO_C" >&6; }
 16.3632 +if test "${ac_cv_path_GREP+set}" = set; then
 16.3633 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.3634 +else
 16.3635 +  # Extract the first word of "grep ggrep" to use in msg output
 16.3636 +if test -z "$GREP"; then
 16.3637 +set dummy grep ggrep; ac_prog_name=$2
 16.3638 +if test "${ac_cv_path_GREP+set}" = set; then
 16.3639 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.3640 +else
 16.3641 +  ac_path_GREP_found=false
 16.3642 +# Loop through the user's path and test for each of PROGNAME-LIST
 16.3643 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 16.3644 +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
 16.3645 +do
 16.3646 +  IFS=$as_save_IFS
 16.3647 +  test -z "$as_dir" && as_dir=.
 16.3648 +  for ac_prog in grep ggrep; do
 16.3649 +  for ac_exec_ext in '' $ac_executable_extensions; do
 16.3650 +    ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
 16.3651 +    { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
 16.3652 +    # Check for GNU ac_path_GREP and select it if it is found.
 16.3653 +  # Check for GNU $ac_path_GREP
 16.3654 +case `"$ac_path_GREP" --version 2>&1` in
 16.3655 +*GNU*)
 16.3656 +  ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
 16.3657 +*)
 16.3658 +  ac_count=0
 16.3659 +  echo $ECHO_N "0123456789$ECHO_C" >"conftest.in"
 16.3660 +  while :
 16.3661 +  do
 16.3662 +    cat "conftest.in" "conftest.in" >"conftest.tmp"
 16.3663 +    mv "conftest.tmp" "conftest.in"
 16.3664 +    cp "conftest.in" "conftest.nl"
 16.3665 +    echo 'GREP' >> "conftest.nl"
 16.3666 +    "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
 16.3667 +    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
 16.3668 +    ac_count=`expr $ac_count + 1`
 16.3669 +    if test $ac_count -gt ${ac_path_GREP_max-0}; then
 16.3670 +      # Best one so far, save it but keep looking for a better one
 16.3671 +      ac_cv_path_GREP="$ac_path_GREP"
 16.3672 +      ac_path_GREP_max=$ac_count
 16.3673 +    fi
 16.3674 +    # 10*(2^10) chars as input seems more than enough
 16.3675 +    test $ac_count -gt 10 && break
 16.3676 +  done
 16.3677 +  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
 16.3678 +esac
 16.3679 +
 16.3680 +
 16.3681 +    $ac_path_GREP_found && break 3
 16.3682 +  done
 16.3683 +done
 16.3684 +
 16.3685 +done
 16.3686 +IFS=$as_save_IFS
 16.3687 +
 16.3688 +
 16.3689 +fi
 16.3690 +
 16.3691 +GREP="$ac_cv_path_GREP"
 16.3692 +if test -z "$GREP"; then
 16.3693 +  { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
 16.3694 +echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
 16.3695 +   { (exit 1); exit 1; }; }
 16.3696 +fi
 16.3697 +
 16.3698 +else
 16.3699 +  ac_cv_path_GREP=$GREP
 16.3700 +fi
 16.3701 +
 16.3702 +
 16.3703 +fi
 16.3704 +{ echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5
 16.3705 +echo "${ECHO_T}$ac_cv_path_GREP" >&6; }
 16.3706 + GREP="$ac_cv_path_GREP"
 16.3707 +
 16.3708 +
 16.3709 +{ echo "$as_me:$LINENO: checking for egrep" >&5
 16.3710 +echo $ECHO_N "checking for egrep... $ECHO_C" >&6; }
 16.3711 +if test "${ac_cv_path_EGREP+set}" = set; then
 16.3712 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.3713 +else
 16.3714 +  if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
 16.3715 +   then ac_cv_path_EGREP="$GREP -E"
 16.3716 +   else
 16.3717 +     # Extract the first word of "egrep" to use in msg output
 16.3718 +if test -z "$EGREP"; then
 16.3719 +set dummy egrep; ac_prog_name=$2
 16.3720 +if test "${ac_cv_path_EGREP+set}" = set; then
 16.3721 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.3722 +else
 16.3723 +  ac_path_EGREP_found=false
 16.3724 +# Loop through the user's path and test for each of PROGNAME-LIST
 16.3725 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 16.3726 +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
 16.3727 +do
 16.3728 +  IFS=$as_save_IFS
 16.3729 +  test -z "$as_dir" && as_dir=.
 16.3730 +  for ac_prog in egrep; do
 16.3731 +  for ac_exec_ext in '' $ac_executable_extensions; do
 16.3732 +    ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
 16.3733 +    { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
 16.3734 +    # Check for GNU ac_path_EGREP and select it if it is found.
 16.3735 +  # Check for GNU $ac_path_EGREP
 16.3736 +case `"$ac_path_EGREP" --version 2>&1` in
 16.3737 +*GNU*)
 16.3738 +  ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
 16.3739 +*)
 16.3740 +  ac_count=0
 16.3741 +  echo $ECHO_N "0123456789$ECHO_C" >"conftest.in"
 16.3742 +  while :
 16.3743 +  do
 16.3744 +    cat "conftest.in" "conftest.in" >"conftest.tmp"
 16.3745 +    mv "conftest.tmp" "conftest.in"
 16.3746 +    cp "conftest.in" "conftest.nl"
 16.3747 +    echo 'EGREP' >> "conftest.nl"
 16.3748 +    "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
 16.3749 +    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
 16.3750 +    ac_count=`expr $ac_count + 1`
 16.3751 +    if test $ac_count -gt ${ac_path_EGREP_max-0}; then
 16.3752 +      # Best one so far, save it but keep looking for a better one
 16.3753 +      ac_cv_path_EGREP="$ac_path_EGREP"
 16.3754 +      ac_path_EGREP_max=$ac_count
 16.3755 +    fi
 16.3756 +    # 10*(2^10) chars as input seems more than enough
 16.3757 +    test $ac_count -gt 10 && break
 16.3758 +  done
 16.3759 +  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
 16.3760 +esac
 16.3761 +
 16.3762 +
 16.3763 +    $ac_path_EGREP_found && break 3
 16.3764 +  done
 16.3765 +done
 16.3766 +
 16.3767 +done
 16.3768 +IFS=$as_save_IFS
 16.3769 +
 16.3770 +
 16.3771 +fi
 16.3772 +
 16.3773 +EGREP="$ac_cv_path_EGREP"
 16.3774 +if test -z "$EGREP"; then
 16.3775 +  { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
 16.3776 +echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
 16.3777 +   { (exit 1); exit 1; }; }
 16.3778 +fi
 16.3779 +
 16.3780 +else
 16.3781 +  ac_cv_path_EGREP=$EGREP
 16.3782 +fi
 16.3783 +
 16.3784 +
 16.3785 +   fi
 16.3786 +fi
 16.3787 +{ echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5
 16.3788 +echo "${ECHO_T}$ac_cv_path_EGREP" >&6; }
 16.3789 + EGREP="$ac_cv_path_EGREP"
 16.3790 +
 16.3791 +
 16.3792 +{ echo "$as_me:$LINENO: checking for ANSI C header files" >&5
 16.3793 +echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6; }
 16.3794 +if test "${ac_cv_header_stdc+set}" = set; then
 16.3795 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.3796 +else
 16.3797 +  cat >conftest.$ac_ext <<_ACEOF
 16.3798 +/* confdefs.h.  */
 16.3799 +_ACEOF
 16.3800 +cat confdefs.h >>conftest.$ac_ext
 16.3801 +cat >>conftest.$ac_ext <<_ACEOF
 16.3802 +/* end confdefs.h.  */
 16.3803 +#include <stdlib.h>
 16.3804 +#include <stdarg.h>
 16.3805 +#include <string.h>
 16.3806 +#include <float.h>
 16.3807 +
 16.3808 +int
 16.3809 +main ()
 16.3810 +{
 16.3811 +
 16.3812 +  ;
 16.3813 +  return 0;
 16.3814 +}
 16.3815 +_ACEOF
 16.3816 +rm -f conftest.$ac_objext
 16.3817 +if { (ac_try="$ac_compile"
 16.3818 +case "(($ac_try" in
 16.3819 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.3820 +  *) ac_try_echo=$ac_try;;
 16.3821 +esac
 16.3822 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.3823 +  (eval "$ac_compile") 2>conftest.er1
 16.3824 +  ac_status=$?
 16.3825 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.3826 +  rm -f conftest.er1
 16.3827 +  cat conftest.err >&5
 16.3828 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.3829 +  (exit $ac_status); } && {
 16.3830 +	 test -z "$ac_cxx_werror_flag" ||
 16.3831 +	 test ! -s conftest.err
 16.3832 +       } && test -s conftest.$ac_objext; then
 16.3833 +  ac_cv_header_stdc=yes
 16.3834 +else
 16.3835 +  echo "$as_me: failed program was:" >&5
 16.3836 +sed 's/^/| /' conftest.$ac_ext >&5
 16.3837 +
 16.3838 +	ac_cv_header_stdc=no
 16.3839 +fi
 16.3840 +
 16.3841 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 16.3842 +
 16.3843 +if test $ac_cv_header_stdc = yes; then
 16.3844 +  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
 16.3845 +  cat >conftest.$ac_ext <<_ACEOF
 16.3846 +/* confdefs.h.  */
 16.3847 +_ACEOF
 16.3848 +cat confdefs.h >>conftest.$ac_ext
 16.3849 +cat >>conftest.$ac_ext <<_ACEOF
 16.3850 +/* end confdefs.h.  */
 16.3851 +#include <string.h>
 16.3852 +
 16.3853 +_ACEOF
 16.3854 +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
 16.3855 +  $EGREP "memchr" >/dev/null 2>&1; then
 16.3856 +  :
 16.3857 +else
 16.3858 +  ac_cv_header_stdc=no
 16.3859 +fi
 16.3860 +rm -f conftest*
 16.3861 +
 16.3862 +fi
 16.3863 +
 16.3864 +if test $ac_cv_header_stdc = yes; then
 16.3865 +  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
 16.3866 +  cat >conftest.$ac_ext <<_ACEOF
 16.3867 +/* confdefs.h.  */
 16.3868 +_ACEOF
 16.3869 +cat confdefs.h >>conftest.$ac_ext
 16.3870 +cat >>conftest.$ac_ext <<_ACEOF
 16.3871 +/* end confdefs.h.  */
 16.3872 +#include <stdlib.h>
 16.3873 +
 16.3874 +_ACEOF
 16.3875 +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
 16.3876 +  $EGREP "free" >/dev/null 2>&1; then
 16.3877 +  :
 16.3878 +else
 16.3879 +  ac_cv_header_stdc=no
 16.3880 +fi
 16.3881 +rm -f conftest*
 16.3882 +
 16.3883 +fi
 16.3884 +
 16.3885 +if test $ac_cv_header_stdc = yes; then
 16.3886 +  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
 16.3887 +  if test "$cross_compiling" = yes; then
 16.3888 +  :
 16.3889 +else
 16.3890 +  cat >conftest.$ac_ext <<_ACEOF
 16.3891 +/* confdefs.h.  */
 16.3892 +_ACEOF
 16.3893 +cat confdefs.h >>conftest.$ac_ext
 16.3894 +cat >>conftest.$ac_ext <<_ACEOF
 16.3895 +/* end confdefs.h.  */
 16.3896 +#include <ctype.h>
 16.3897 +#include <stdlib.h>
 16.3898 +#if ((' ' & 0x0FF) == 0x020)
 16.3899 +# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
 16.3900 +# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
 16.3901 +#else
 16.3902 +# define ISLOWER(c) \
 16.3903 +		   (('a' <= (c) && (c) <= 'i') \
 16.3904 +		     || ('j' <= (c) && (c) <= 'r') \
 16.3905 +		     || ('s' <= (c) && (c) <= 'z'))
 16.3906 +# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
 16.3907 +#endif
 16.3908 +
 16.3909 +#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
 16.3910 +int
 16.3911 +main ()
 16.3912 +{
 16.3913 +  int i;
 16.3914 +  for (i = 0; i < 256; i++)
 16.3915 +    if (XOR (islower (i), ISLOWER (i))
 16.3916 +	|| toupper (i) != TOUPPER (i))
 16.3917 +      return 2;
 16.3918 +  return 0;
 16.3919 +}
 16.3920 +_ACEOF
 16.3921 +rm -f conftest$ac_exeext
 16.3922 +if { (ac_try="$ac_link"
 16.3923 +case "(($ac_try" in
 16.3924 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.3925 +  *) ac_try_echo=$ac_try;;
 16.3926 +esac
 16.3927 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.3928 +  (eval "$ac_link") 2>&5
 16.3929 +  ac_status=$?
 16.3930 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.3931 +  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
 16.3932 +  { (case "(($ac_try" in
 16.3933 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.3934 +  *) ac_try_echo=$ac_try;;
 16.3935 +esac
 16.3936 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.3937 +  (eval "$ac_try") 2>&5
 16.3938 +  ac_status=$?
 16.3939 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.3940 +  (exit $ac_status); }; }; then
 16.3941 +  :
 16.3942 +else
 16.3943 +  echo "$as_me: program exited with status $ac_status" >&5
 16.3944 +echo "$as_me: failed program was:" >&5
 16.3945 +sed 's/^/| /' conftest.$ac_ext >&5
 16.3946 +
 16.3947 +( exit $ac_status )
 16.3948 +ac_cv_header_stdc=no
 16.3949 +fi
 16.3950 +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
 16.3951 +fi
 16.3952 +
 16.3953 +
 16.3954 +fi
 16.3955 +fi
 16.3956 +{ echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
 16.3957 +echo "${ECHO_T}$ac_cv_header_stdc" >&6; }
 16.3958 +if test $ac_cv_header_stdc = yes; then
 16.3959 +
 16.3960 +cat >>confdefs.h <<\_ACEOF
 16.3961 +#define STDC_HEADERS 1
 16.3962 +_ACEOF
 16.3963 +
 16.3964 +fi
 16.3965 +
 16.3966 +# On IRIX 5.3, sys/types and inttypes.h are conflicting.
 16.3967 +
 16.3968 +
 16.3969 +
 16.3970 +
 16.3971 +
 16.3972 +
 16.3973 +
 16.3974 +
 16.3975 +
 16.3976 +for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
 16.3977 +		  inttypes.h stdint.h unistd.h
 16.3978 +do
 16.3979 +as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
 16.3980 +{ echo "$as_me:$LINENO: checking for $ac_header" >&5
 16.3981 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
 16.3982 +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
 16.3983 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.3984 +else
 16.3985 +  cat >conftest.$ac_ext <<_ACEOF
 16.3986 +/* confdefs.h.  */
 16.3987 +_ACEOF
 16.3988 +cat confdefs.h >>conftest.$ac_ext
 16.3989 +cat >>conftest.$ac_ext <<_ACEOF
 16.3990 +/* end confdefs.h.  */
 16.3991 +$ac_includes_default
 16.3992 +
 16.3993 +#include <$ac_header>
 16.3994 +_ACEOF
 16.3995 +rm -f conftest.$ac_objext
 16.3996 +if { (ac_try="$ac_compile"
 16.3997 +case "(($ac_try" in
 16.3998 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.3999 +  *) ac_try_echo=$ac_try;;
 16.4000 +esac
 16.4001 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.4002 +  (eval "$ac_compile") 2>conftest.er1
 16.4003 +  ac_status=$?
 16.4004 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.4005 +  rm -f conftest.er1
 16.4006 +  cat conftest.err >&5
 16.4007 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.4008 +  (exit $ac_status); } && {
 16.4009 +	 test -z "$ac_cxx_werror_flag" ||
 16.4010 +	 test ! -s conftest.err
 16.4011 +       } && test -s conftest.$ac_objext; then
 16.4012 +  eval "$as_ac_Header=yes"
 16.4013 +else
 16.4014 +  echo "$as_me: failed program was:" >&5
 16.4015 +sed 's/^/| /' conftest.$ac_ext >&5
 16.4016 +
 16.4017 +	eval "$as_ac_Header=no"
 16.4018 +fi
 16.4019 +
 16.4020 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 16.4021 +fi
 16.4022 +ac_res=`eval echo '${'$as_ac_Header'}'`
 16.4023 +	       { echo "$as_me:$LINENO: result: $ac_res" >&5
 16.4024 +echo "${ECHO_T}$ac_res" >&6; }
 16.4025 +if test `eval echo '${'$as_ac_Header'}'` = yes; then
 16.4026 +  cat >>confdefs.h <<_ACEOF
 16.4027 +#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
 16.4028 +_ACEOF
 16.4029 +
 16.4030 +fi
 16.4031 +
 16.4032 +done
 16.4033 +
 16.4034 +
 16.4035 +{ echo "$as_me:$LINENO: checking for int" >&5
 16.4036 +echo $ECHO_N "checking for int... $ECHO_C" >&6; }
 16.4037 +if test "${ac_cv_type_int+set}" = set; then
 16.4038 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.4039 +else
 16.4040 +  cat >conftest.$ac_ext <<_ACEOF
 16.4041 +/* confdefs.h.  */
 16.4042 +_ACEOF
 16.4043 +cat confdefs.h >>conftest.$ac_ext
 16.4044 +cat >>conftest.$ac_ext <<_ACEOF
 16.4045 +/* end confdefs.h.  */
 16.4046 +$ac_includes_default
 16.4047 +typedef int ac__type_new_;
 16.4048 +int
 16.4049 +main ()
 16.4050 +{
 16.4051 +if ((ac__type_new_ *) 0)
 16.4052 +  return 0;
 16.4053 +if (sizeof (ac__type_new_))
 16.4054 +  return 0;
 16.4055 +  ;
 16.4056 +  return 0;
 16.4057 +}
 16.4058 +_ACEOF
 16.4059 +rm -f conftest.$ac_objext
 16.4060 +if { (ac_try="$ac_compile"
 16.4061 +case "(($ac_try" in
 16.4062 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.4063 +  *) ac_try_echo=$ac_try;;
 16.4064 +esac
 16.4065 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.4066 +  (eval "$ac_compile") 2>conftest.er1
 16.4067 +  ac_status=$?
 16.4068 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.4069 +  rm -f conftest.er1
 16.4070 +  cat conftest.err >&5
 16.4071 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.4072 +  (exit $ac_status); } && {
 16.4073 +	 test -z "$ac_cxx_werror_flag" ||
 16.4074 +	 test ! -s conftest.err
 16.4075 +       } && test -s conftest.$ac_objext; then
 16.4076 +  ac_cv_type_int=yes
 16.4077 +else
 16.4078 +  echo "$as_me: failed program was:" >&5
 16.4079 +sed 's/^/| /' conftest.$ac_ext >&5
 16.4080 +
 16.4081 +	ac_cv_type_int=no
 16.4082 +fi
 16.4083 +
 16.4084 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 16.4085 +fi
 16.4086 +{ echo "$as_me:$LINENO: result: $ac_cv_type_int" >&5
 16.4087 +echo "${ECHO_T}$ac_cv_type_int" >&6; }
 16.4088 +
 16.4089 +# The cast to long int works around a bug in the HP C Compiler
 16.4090 +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
 16.4091 +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
 16.4092 +# This bug is HP SR number 8606223364.
 16.4093 +{ echo "$as_me:$LINENO: checking size of int" >&5
 16.4094 +echo $ECHO_N "checking size of int... $ECHO_C" >&6; }
 16.4095 +if test "${ac_cv_sizeof_int+set}" = set; then
 16.4096 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.4097 +else
 16.4098 +  if test "$cross_compiling" = yes; then
 16.4099 +  # Depending upon the size, compute the lo and hi bounds.
 16.4100 +cat >conftest.$ac_ext <<_ACEOF
 16.4101 +/* confdefs.h.  */
 16.4102 +_ACEOF
 16.4103 +cat confdefs.h >>conftest.$ac_ext
 16.4104 +cat >>conftest.$ac_ext <<_ACEOF
 16.4105 +/* end confdefs.h.  */
 16.4106 +$ac_includes_default
 16.4107 +   typedef int ac__type_sizeof_;
 16.4108 +int
 16.4109 +main ()
 16.4110 +{
 16.4111 +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= 0)];
 16.4112 +test_array [0] = 0
 16.4113 +
 16.4114 +  ;
 16.4115 +  return 0;
 16.4116 +}
 16.4117 +_ACEOF
 16.4118 +rm -f conftest.$ac_objext
 16.4119 +if { (ac_try="$ac_compile"
 16.4120 +case "(($ac_try" in
 16.4121 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.4122 +  *) ac_try_echo=$ac_try;;
 16.4123 +esac
 16.4124 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.4125 +  (eval "$ac_compile") 2>conftest.er1
 16.4126 +  ac_status=$?
 16.4127 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.4128 +  rm -f conftest.er1
 16.4129 +  cat conftest.err >&5
 16.4130 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.4131 +  (exit $ac_status); } && {
 16.4132 +	 test -z "$ac_cxx_werror_flag" ||
 16.4133 +	 test ! -s conftest.err
 16.4134 +       } && test -s conftest.$ac_objext; then
 16.4135 +  ac_lo=0 ac_mid=0
 16.4136 +  while :; do
 16.4137 +    cat >conftest.$ac_ext <<_ACEOF
 16.4138 +/* confdefs.h.  */
 16.4139 +_ACEOF
 16.4140 +cat confdefs.h >>conftest.$ac_ext
 16.4141 +cat >>conftest.$ac_ext <<_ACEOF
 16.4142 +/* end confdefs.h.  */
 16.4143 +$ac_includes_default
 16.4144 +   typedef int ac__type_sizeof_;
 16.4145 +int
 16.4146 +main ()
 16.4147 +{
 16.4148 +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= $ac_mid)];
 16.4149 +test_array [0] = 0
 16.4150 +
 16.4151 +  ;
 16.4152 +  return 0;
 16.4153 +}
 16.4154 +_ACEOF
 16.4155 +rm -f conftest.$ac_objext
 16.4156 +if { (ac_try="$ac_compile"
 16.4157 +case "(($ac_try" in
 16.4158 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.4159 +  *) ac_try_echo=$ac_try;;
 16.4160 +esac
 16.4161 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.4162 +  (eval "$ac_compile") 2>conftest.er1
 16.4163 +  ac_status=$?
 16.4164 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.4165 +  rm -f conftest.er1
 16.4166 +  cat conftest.err >&5
 16.4167 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.4168 +  (exit $ac_status); } && {
 16.4169 +	 test -z "$ac_cxx_werror_flag" ||
 16.4170 +	 test ! -s conftest.err
 16.4171 +       } && test -s conftest.$ac_objext; then
 16.4172 +  ac_hi=$ac_mid; break
 16.4173 +else
 16.4174 +  echo "$as_me: failed program was:" >&5
 16.4175 +sed 's/^/| /' conftest.$ac_ext >&5
 16.4176 +
 16.4177 +	ac_lo=`expr $ac_mid + 1`
 16.4178 +			if test $ac_lo -le $ac_mid; then
 16.4179 +			  ac_lo= ac_hi=
 16.4180 +			  break
 16.4181 +			fi
 16.4182 +			ac_mid=`expr 2 '*' $ac_mid + 1`
 16.4183 +fi
 16.4184 +
 16.4185 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 16.4186 +  done
 16.4187 +else
 16.4188 +  echo "$as_me: failed program was:" >&5
 16.4189 +sed 's/^/| /' conftest.$ac_ext >&5
 16.4190 +
 16.4191 +	cat >conftest.$ac_ext <<_ACEOF
 16.4192 +/* confdefs.h.  */
 16.4193 +_ACEOF
 16.4194 +cat confdefs.h >>conftest.$ac_ext
 16.4195 +cat >>conftest.$ac_ext <<_ACEOF
 16.4196 +/* end confdefs.h.  */
 16.4197 +$ac_includes_default
 16.4198 +   typedef int ac__type_sizeof_;
 16.4199 +int
 16.4200 +main ()
 16.4201 +{
 16.4202 +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) < 0)];
 16.4203 +test_array [0] = 0
 16.4204 +
 16.4205 +  ;
 16.4206 +  return 0;
 16.4207 +}
 16.4208 +_ACEOF
 16.4209 +rm -f conftest.$ac_objext
 16.4210 +if { (ac_try="$ac_compile"
 16.4211 +case "(($ac_try" in
 16.4212 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.4213 +  *) ac_try_echo=$ac_try;;
 16.4214 +esac
 16.4215 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.4216 +  (eval "$ac_compile") 2>conftest.er1
 16.4217 +  ac_status=$?
 16.4218 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.4219 +  rm -f conftest.er1
 16.4220 +  cat conftest.err >&5
 16.4221 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.4222 +  (exit $ac_status); } && {
 16.4223 +	 test -z "$ac_cxx_werror_flag" ||
 16.4224 +	 test ! -s conftest.err
 16.4225 +       } && test -s conftest.$ac_objext; then
 16.4226 +  ac_hi=-1 ac_mid=-1
 16.4227 +  while :; do
 16.4228 +    cat >conftest.$ac_ext <<_ACEOF
 16.4229 +/* confdefs.h.  */
 16.4230 +_ACEOF
 16.4231 +cat confdefs.h >>conftest.$ac_ext
 16.4232 +cat >>conftest.$ac_ext <<_ACEOF
 16.4233 +/* end confdefs.h.  */
 16.4234 +$ac_includes_default
 16.4235 +   typedef int ac__type_sizeof_;
 16.4236 +int
 16.4237 +main ()
 16.4238 +{
 16.4239 +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= $ac_mid)];
 16.4240 +test_array [0] = 0
 16.4241 +
 16.4242 +  ;
 16.4243 +  return 0;
 16.4244 +}
 16.4245 +_ACEOF
 16.4246 +rm -f conftest.$ac_objext
 16.4247 +if { (ac_try="$ac_compile"
 16.4248 +case "(($ac_try" in
 16.4249 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.4250 +  *) ac_try_echo=$ac_try;;
 16.4251 +esac
 16.4252 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.4253 +  (eval "$ac_compile") 2>conftest.er1
 16.4254 +  ac_status=$?
 16.4255 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.4256 +  rm -f conftest.er1
 16.4257 +  cat conftest.err >&5
 16.4258 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.4259 +  (exit $ac_status); } && {
 16.4260 +	 test -z "$ac_cxx_werror_flag" ||
 16.4261 +	 test ! -s conftest.err
 16.4262 +       } && test -s conftest.$ac_objext; then
 16.4263 +  ac_lo=$ac_mid; break
 16.4264 +else
 16.4265 +  echo "$as_me: failed program was:" >&5
 16.4266 +sed 's/^/| /' conftest.$ac_ext >&5
 16.4267 +
 16.4268 +	ac_hi=`expr '(' $ac_mid ')' - 1`
 16.4269 +			if test $ac_mid -le $ac_hi; then
 16.4270 +			  ac_lo= ac_hi=
 16.4271 +			  break
 16.4272 +			fi
 16.4273 +			ac_mid=`expr 2 '*' $ac_mid`
 16.4274 +fi
 16.4275 +
 16.4276 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 16.4277 +  done
 16.4278 +else
 16.4279 +  echo "$as_me: failed program was:" >&5
 16.4280 +sed 's/^/| /' conftest.$ac_ext >&5
 16.4281 +
 16.4282 +	ac_lo= ac_hi=
 16.4283 +fi
 16.4284 +
 16.4285 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 16.4286 +fi
 16.4287 +
 16.4288 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 16.4289 +# Binary search between lo and hi bounds.
 16.4290 +while test "x$ac_lo" != "x$ac_hi"; do
 16.4291 +  ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
 16.4292 +  cat >conftest.$ac_ext <<_ACEOF
 16.4293 +/* confdefs.h.  */
 16.4294 +_ACEOF
 16.4295 +cat confdefs.h >>conftest.$ac_ext
 16.4296 +cat >>conftest.$ac_ext <<_ACEOF
 16.4297 +/* end confdefs.h.  */
 16.4298 +$ac_includes_default
 16.4299 +   typedef int ac__type_sizeof_;
 16.4300 +int
 16.4301 +main ()
 16.4302 +{
 16.4303 +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= $ac_mid)];
 16.4304 +test_array [0] = 0
 16.4305 +
 16.4306 +  ;
 16.4307 +  return 0;
 16.4308 +}
 16.4309 +_ACEOF
 16.4310 +rm -f conftest.$ac_objext
 16.4311 +if { (ac_try="$ac_compile"
 16.4312 +case "(($ac_try" in
 16.4313 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.4314 +  *) ac_try_echo=$ac_try;;
 16.4315 +esac
 16.4316 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.4317 +  (eval "$ac_compile") 2>conftest.er1
 16.4318 +  ac_status=$?
 16.4319 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.4320 +  rm -f conftest.er1
 16.4321 +  cat conftest.err >&5
 16.4322 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.4323 +  (exit $ac_status); } && {
 16.4324 +	 test -z "$ac_cxx_werror_flag" ||
 16.4325 +	 test ! -s conftest.err
 16.4326 +       } && test -s conftest.$ac_objext; then
 16.4327 +  ac_hi=$ac_mid
 16.4328 +else
 16.4329 +  echo "$as_me: failed program was:" >&5
 16.4330 +sed 's/^/| /' conftest.$ac_ext >&5
 16.4331 +
 16.4332 +	ac_lo=`expr '(' $ac_mid ')' + 1`
 16.4333 +fi
 16.4334 +
 16.4335 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 16.4336 +done
 16.4337 +case $ac_lo in
 16.4338 +?*) ac_cv_sizeof_int=$ac_lo;;
 16.4339 +'') if test "$ac_cv_type_int" = yes; then
 16.4340 +     { { echo "$as_me:$LINENO: error: cannot compute sizeof (int)
 16.4341 +See \`config.log' for more details." >&5
 16.4342 +echo "$as_me: error: cannot compute sizeof (int)
 16.4343 +See \`config.log' for more details." >&2;}
 16.4344 +   { (exit 77); exit 77; }; }
 16.4345 +   else
 16.4346 +     ac_cv_sizeof_int=0
 16.4347 +   fi ;;
 16.4348 +esac
 16.4349 +else
 16.4350 +  cat >conftest.$ac_ext <<_ACEOF
 16.4351 +/* confdefs.h.  */
 16.4352 +_ACEOF
 16.4353 +cat confdefs.h >>conftest.$ac_ext
 16.4354 +cat >>conftest.$ac_ext <<_ACEOF
 16.4355 +/* end confdefs.h.  */
 16.4356 +$ac_includes_default
 16.4357 +   typedef int ac__type_sizeof_;
 16.4358 +static long int longval () { return (long int) (sizeof (ac__type_sizeof_)); }
 16.4359 +static unsigned long int ulongval () { return (long int) (sizeof (ac__type_sizeof_)); }
 16.4360 +#include <stdio.h>
 16.4361 +#include <stdlib.h>
 16.4362 +int
 16.4363 +main ()
 16.4364 +{
 16.4365 +
 16.4366 +  FILE *f = fopen ("conftest.val", "w");
 16.4367 +  if (! f)
 16.4368 +    return 1;
 16.4369 +  if (((long int) (sizeof (ac__type_sizeof_))) < 0)
 16.4370 +    {
 16.4371 +      long int i = longval ();
 16.4372 +      if (i != ((long int) (sizeof (ac__type_sizeof_))))
 16.4373 +	return 1;
 16.4374 +      fprintf (f, "%ld\n", i);
 16.4375 +    }
 16.4376 +  else
 16.4377 +    {
 16.4378 +      unsigned long int i = ulongval ();
 16.4379 +      if (i != ((long int) (sizeof (ac__type_sizeof_))))
 16.4380 +	return 1;
 16.4381 +      fprintf (f, "%lu\n", i);
 16.4382 +    }
 16.4383 +  return ferror (f) || fclose (f) != 0;
 16.4384 +
 16.4385 +  ;
 16.4386 +  return 0;
 16.4387 +}
 16.4388 +_ACEOF
 16.4389 +rm -f conftest$ac_exeext
 16.4390 +if { (ac_try="$ac_link"
 16.4391 +case "(($ac_try" in
 16.4392 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.4393 +  *) ac_try_echo=$ac_try;;
 16.4394 +esac
 16.4395 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.4396 +  (eval "$ac_link") 2>&5
 16.4397 +  ac_status=$?
 16.4398 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.4399 +  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
 16.4400 +  { (case "(($ac_try" in
 16.4401 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.4402 +  *) ac_try_echo=$ac_try;;
 16.4403 +esac
 16.4404 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.4405 +  (eval "$ac_try") 2>&5
 16.4406 +  ac_status=$?
 16.4407 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.4408 +  (exit $ac_status); }; }; then
 16.4409 +  ac_cv_sizeof_int=`cat conftest.val`
 16.4410 +else
 16.4411 +  echo "$as_me: program exited with status $ac_status" >&5
 16.4412 +echo "$as_me: failed program was:" >&5
 16.4413 +sed 's/^/| /' conftest.$ac_ext >&5
 16.4414 +
 16.4415 +( exit $ac_status )
 16.4416 +if test "$ac_cv_type_int" = yes; then
 16.4417 +     { { echo "$as_me:$LINENO: error: cannot compute sizeof (int)
 16.4418 +See \`config.log' for more details." >&5
 16.4419 +echo "$as_me: error: cannot compute sizeof (int)
 16.4420 +See \`config.log' for more details." >&2;}
 16.4421 +   { (exit 77); exit 77; }; }
 16.4422 +   else
 16.4423 +     ac_cv_sizeof_int=0
 16.4424 +   fi
 16.4425 +fi
 16.4426 +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
 16.4427 +fi
 16.4428 +rm -f conftest.val
 16.4429 +fi
 16.4430 +{ echo "$as_me:$LINENO: result: $ac_cv_sizeof_int" >&5
 16.4431 +echo "${ECHO_T}$ac_cv_sizeof_int" >&6; }
 16.4432 +
 16.4433 +
 16.4434 +
 16.4435 +cat >>confdefs.h <<_ACEOF
 16.4436 +#define SIZEOF_INT $ac_cv_sizeof_int
 16.4437 +_ACEOF
 16.4438 +
 16.4439 +
 16.4440 +
 16.4441 +if test $ac_cv_sizeof_int -lt 4; then
 16.4442 +  { { echo "$as_me:$LINENO: error: only 32 bit or better CPUs are supported" >&5
 16.4443 +echo "$as_me: error: only 32 bit or better CPUs are supported" >&2;}
 16.4444 +   { (exit 1); exit 1; }; }
 16.4445 +fi
 16.4446 +
 16.4447 +{ echo "$as_me:$LINENO: checking for working bool" >&5
 16.4448 +echo $ECHO_N "checking for working bool... $ECHO_C" >&6; }
 16.4449 +if test "${ac_cv_cxx_bool+set}" = set; then
 16.4450 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.4451 +else
 16.4452 +  cat >conftest.$ac_ext <<_ACEOF
 16.4453 +/* confdefs.h.  */
 16.4454 +_ACEOF
 16.4455 +cat confdefs.h >>conftest.$ac_ext
 16.4456 +cat >>conftest.$ac_ext <<_ACEOF
 16.4457 +/* end confdefs.h.  */
 16.4458 +
 16.4459 +int
 16.4460 +main ()
 16.4461 +{
 16.4462 +
 16.4463 +bool flag;
 16.4464 +
 16.4465 +  ;
 16.4466 +  return 0;
 16.4467 +}
 16.4468 +_ACEOF
 16.4469 +rm -f conftest.$ac_objext
 16.4470 +if { (ac_try="$ac_compile"
 16.4471 +case "(($ac_try" in
 16.4472 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.4473 +  *) ac_try_echo=$ac_try;;
 16.4474 +esac
 16.4475 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.4476 +  (eval "$ac_compile") 2>conftest.er1
 16.4477 +  ac_status=$?
 16.4478 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.4479 +  rm -f conftest.er1
 16.4480 +  cat conftest.err >&5
 16.4481 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.4482 +  (exit $ac_status); } && {
 16.4483 +	 test -z "$ac_cxx_werror_flag" ||
 16.4484 +	 test ! -s conftest.err
 16.4485 +       } && test -s conftest.$ac_objext; then
 16.4486 +  ac_cv_cxx_bool=yes
 16.4487 +else
 16.4488 +  echo "$as_me: failed program was:" >&5
 16.4489 +sed 's/^/| /' conftest.$ac_ext >&5
 16.4490 +
 16.4491 +	ac_cv_cxx_bool=no
 16.4492 +fi
 16.4493 +
 16.4494 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 16.4495 +fi
 16.4496 +{ echo "$as_me:$LINENO: result: $ac_cv_cxx_bool" >&5
 16.4497 +echo "${ECHO_T}$ac_cv_cxx_bool" >&6; }
 16.4498 +
 16.4499 +if test $ac_cv_cxx_bool = no; then
 16.4500 +  RESID_HAVE_BOOL=0
 16.4501 +else
 16.4502 +  RESID_HAVE_BOOL=1
 16.4503 +fi
 16.4504 +
 16.4505 +if test x"$MSSE" = "x-msse"; then
 16.4506 +  RESID_USE_SSE=1
 16.4507 +
 16.4508 +
 16.4509 +if true; then
 16.4510 +  USE_SSE_TRUE=
 16.4511 +  USE_SSE_FALSE='#'
 16.4512 +else
 16.4513 +  USE_SSE_TRUE='#'
 16.4514 +  USE_SSE_FALSE=
 16.4515 +fi
 16.4516 +
 16.4517 +else
 16.4518 +  RESID_USE_SSE=0
 16.4519 +
 16.4520 +
 16.4521 +if false; then
 16.4522 +  USE_SSE_TRUE=
 16.4523 +  USE_SSE_FALSE='#'
 16.4524 +else
 16.4525 +  USE_SSE_TRUE='#'
 16.4526 +  USE_SSE_FALSE=
 16.4527 +fi
 16.4528 +
 16.4529 +fi
 16.4530 +
 16.4531 +
 16.4532 +
 16.4533 +
 16.4534 +
 16.4535 +
 16.4536 +
 16.4537 +for ac_func in logf expf
 16.4538 +do
 16.4539 +as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
 16.4540 +{ echo "$as_me:$LINENO: checking for $ac_func" >&5
 16.4541 +echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; }
 16.4542 +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
 16.4543 +  echo $ECHO_N "(cached) $ECHO_C" >&6
 16.4544 +else
 16.4545 +  cat >conftest.$ac_ext <<_ACEOF
 16.4546 +/* confdefs.h.  */
 16.4547 +_ACEOF
 16.4548 +cat confdefs.h >>conftest.$ac_ext
 16.4549 +cat >>conftest.$ac_ext <<_ACEOF
 16.4550 +/* end confdefs.h.  */
 16.4551 +/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
 16.4552 +   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
 16.4553 +#define $ac_func innocuous_$ac_func
 16.4554 +
 16.4555 +/* System header to define __stub macros and hopefully few prototypes,
 16.4556 +    which can conflict with char $ac_func (); below.
 16.4557 +    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
 16.4558 +    <limits.h> exists even on freestanding compilers.  */
 16.4559 +
 16.4560 +#ifdef __STDC__
 16.4561 +# include <limits.h>
 16.4562 +#else
 16.4563 +# include <assert.h>
 16.4564 +#endif
 16.4565 +
 16.4566 +#undef $ac_func
 16.4567 +
 16.4568 +/* Override any GCC internal prototype to avoid an error.
 16.4569 +   Use char because int might match the return type of a GCC
 16.4570 +   builtin and then its argument prototype would still apply.  */
 16.4571 +#ifdef __cplusplus
 16.4572 +extern "C"
 16.4573 +#endif
 16.4574 +char $ac_func ();
 16.4575 +/* The GNU C library defines this for functions which it implements
 16.4576 +    to always fail with ENOSYS.  Some functions are actually named
 16.4577 +    something starting with __ and the normal name is an alias.  */
 16.4578 +#if defined __stub_$ac_func || defined __stub___$ac_func
 16.4579 +choke me
 16.4580 +#endif
 16.4581 +
 16.4582 +int
 16.4583 +main ()
 16.4584 +{
 16.4585 +return $ac_func ();
 16.4586 +  ;
 16.4587 +  return 0;
 16.4588 +}
 16.4589 +_ACEOF
 16.4590 +rm -f conftest.$ac_objext conftest$ac_exeext
 16.4591 +if { (ac_try="$ac_link"
 16.4592 +case "(($ac_try" in
 16.4593 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.4594 +  *) ac_try_echo=$ac_try;;
 16.4595 +esac
 16.4596 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.4597 +  (eval "$ac_link") 2>conftest.er1
 16.4598 +  ac_status=$?
 16.4599 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.4600 +  rm -f conftest.er1
 16.4601 +  cat conftest.err >&5
 16.4602 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.4603 +  (exit $ac_status); } && {
 16.4604 +	 test -z "$ac_cxx_werror_flag" ||
 16.4605 +	 test ! -s conftest.err
 16.4606 +       } && test -s conftest$ac_exeext &&
 16.4607 +       $as_test_x conftest$ac_exeext; then
 16.4608 +  eval "$as_ac_var=yes"
 16.4609 +else
 16.4610 +  echo "$as_me: failed program was:" >&5
 16.4611 +sed 's/^/| /' conftest.$ac_ext >&5
 16.4612 +
 16.4613 +	eval "$as_ac_var=no"
 16.4614 +fi
 16.4615 +
 16.4616 +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
 16.4617 +      conftest$ac_exeext conftest.$ac_ext
 16.4618 +fi
 16.4619 +ac_res=`eval echo '${'$as_ac_var'}'`
 16.4620 +	       { echo "$as_me:$LINENO: result: $ac_res" >&5
 16.4621 +echo "${ECHO_T}$ac_res" >&6; }
 16.4622 +if test `eval echo '${'$as_ac_var'}'` = yes; then
 16.4623 +  cat >>confdefs.h <<_ACEOF
 16.4624 +#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
 16.4625 +_ACEOF
 16.4626 +
 16.4627 +fi
 16.4628 +done
 16.4629 +
 16.4630 +
 16.4631 +{ echo "$as_me:$LINENO: checking if the logf prototype is present" >&5
 16.4632 +echo $ECHO_N "checking if the logf prototype is present... $ECHO_C" >&6; }
 16.4633 +cat >conftest.$ac_ext <<_ACEOF
 16.4634 +/* confdefs.h.  */
 16.4635 +_ACEOF
 16.4636 +cat confdefs.h >>conftest.$ac_ext
 16.4637 +cat >>conftest.$ac_ext <<_ACEOF
 16.4638 +/* end confdefs.h.  */
 16.4639 +#include <math.h>
 16.4640 +                #include <stdio.h>
 16.4641 +int
 16.4642 +main ()
 16.4643 +{
 16.4644 +printf("%d",logf);
 16.4645 +  ;
 16.4646 +  return 0;
 16.4647 +}
 16.4648 +_ACEOF
 16.4649 +rm -f conftest.$ac_objext
 16.4650 +if { (ac_try="$ac_compile"
 16.4651 +case "(($ac_try" in
 16.4652 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.4653 +  *) ac_try_echo=$ac_try;;
 16.4654 +esac
 16.4655 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.4656 +  (eval "$ac_compile") 2>conftest.er1
 16.4657 +  ac_status=$?
 16.4658 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.4659 +  rm -f conftest.er1
 16.4660 +  cat conftest.err >&5
 16.4661 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.4662 +  (exit $ac_status); } && {
 16.4663 +	 test -z "$ac_cxx_werror_flag" ||
 16.4664 +	 test ! -s conftest.err
 16.4665 +       } && test -s conftest.$ac_objext; then
 16.4666 +   { echo "$as_me:$LINENO: result: yes" >&5
 16.4667 +echo "${ECHO_T}yes" >&6; }
 16.4668 +                 HAVE_LOGF_PROTOTYPE=1
 16.4669 +
 16.4670 +else
 16.4671 +  echo "$as_me: failed program was:" >&5
 16.4672 +sed 's/^/| /' conftest.$ac_ext >&5
 16.4673 +
 16.4674 +	 { echo "$as_me:$LINENO: result: no" >&5
 16.4675 +echo "${ECHO_T}no" >&6; }
 16.4676 +                HAVE_LOGF_PROTOTYPE=0
 16.4677 +
 16.4678 +fi
 16.4679 +
 16.4680 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 16.4681 +
 16.4682 +{ echo "$as_me:$LINENO: checking if the expf prototype is present" >&5
 16.4683 +echo $ECHO_N "checking if the expf prototype is present... $ECHO_C" >&6; }
 16.4684 +cat >conftest.$ac_ext <<_ACEOF
 16.4685 +/* confdefs.h.  */
 16.4686 +_ACEOF
 16.4687 +cat confdefs.h >>conftest.$ac_ext
 16.4688 +cat >>conftest.$ac_ext <<_ACEOF
 16.4689 +/* end confdefs.h.  */
 16.4690 +#include <math.h>
 16.4691 +                #include <stdio.h>
 16.4692 +int
 16.4693 +main ()
 16.4694 +{
 16.4695 +printf("%d",expf);
 16.4696 +  ;
 16.4697 +  return 0;
 16.4698 +}
 16.4699 +_ACEOF
 16.4700 +rm -f conftest.$ac_objext
 16.4701 +if { (ac_try="$ac_compile"
 16.4702 +case "(($ac_try" in
 16.4703 +  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
 16.4704 +  *) ac_try_echo=$ac_try;;
 16.4705 +esac
 16.4706 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 16.4707 +  (eval "$ac_compile") 2>conftest.er1
 16.4708 +  ac_status=$?
 16.4709 +  grep -v '^ *+' conftest.er1 >conftest.err
 16.4710 +  rm -f conftest.er1
 16.4711 +  cat conftest.err >&5
 16.4712 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
 16.4713 +  (exit $ac_status); } && {
 16.4714 +	 test -z "$ac_cxx_werror_flag" ||
 16.4715 +	 test ! -s conftest.err
 16.4716 +       } && test -s conftest.$ac_objext; then
 16.4717 +   { echo "$as_me:$LINENO: result: yes" >&5
 16.4718 +echo "${ECHO_T}yes" >&6; }
 16.4719 +                 HAVE_EXPF_PROTOTYPE=1
 16.4720 +
 16.4721 +else
 16.4722 +  echo "$as_me: failed program was:" >&5
 16.4723 +sed 's/^/| /' conftest.$ac_ext >&5
 16.4724 +
 16.4725 +	 { echo "$as_me:$LINENO: result: no" >&5
 16.4726 +echo "${ECHO_T}no" >&6; }
 16.4727 +                HAVE_EXPF_PROTOTYPE=0
 16.4728 +
 16.4729 +fi
 16.4730 +
 16.4731 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 16.4732 +
 16.4733 +
 16.4734 +
 16.4735 +
 16.4736 +ac_config_files="$ac_config_files Makefile siddefs-fp.h"
 16.4737 +
 16.4738 +cat >confcache <<\_ACEOF
 16.4739 +# This file is a shell script that caches the results of configure
 16.4740 +# tests run on this system so they can be shared between configure
 16.4741 +# scripts and configure runs, see configure's option --config-cache.
 16.4742 +# It is not useful on other systems.  If it contains results you don't
 16.4743 +# want to keep, you may remove or edit it.
 16.4744 +#
 16.4745 +# config.status only pays attention to the cache file if you give it
 16.4746 +# the --recheck option to rerun configure.
 16.4747 +#
 16.4748 +# `ac_cv_env_foo' variables (set or unset) will be overridden when
 16.4749 +# loading this file, other *unset* `ac_cv_foo' will be assigned the
 16.4750 +# following values.
 16.4751 +
 16.4752 +_ACEOF
 16.4753 +
 16.4754 +# The following way of writing the cache mishandles newlines in values,
 16.4755 +# but we know of no workaround that is simple, portable, and efficient.
 16.4756 +# So, we kill variables containing newlines.
 16.4757 +# Ultrix sh set writes to stderr and can't be redirected directly,
 16.4758 +# and sets the high bit in the cache file unless we assign to the vars.
 16.4759 +(
 16.4760 +  for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
 16.4761 +    eval ac_val=\$$ac_var
 16.4762 +    case $ac_val in #(
 16.4763 +    *${as_nl}*)
 16.4764 +      case $ac_var in #(
 16.4765 +      *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5
 16.4766 +echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;;
 16.4767 +      esac
 16.4768 +      case $ac_var in #(
 16.4769 +      _ | IFS | as_nl) ;; #(
 16.4770 +      *) $as_unset $ac_var ;;
 16.4771 +      esac ;;
 16.4772 +    esac
 16.4773 +  done
 16.4774 +
 16.4775 +  (set) 2>&1 |
 16.4776 +    case $as_nl`(ac_space=' '; set) 2>&1` in #(
 16.4777 +    *${as_nl}ac_space=\ *)
 16.4778 +      # `set' does not quote correctly, so add quotes (double-quote
 16.4779 +      # substitution turns \\\\ into \\, and sed turns \\ into \).
 16.4780 +      sed -n \
 16.4781 +	"s/'/'\\\\''/g;
 16.4782 +	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
 16.4783 +      ;; #(
 16.4784 +    *)
 16.4785 +      # `set' quotes correctly as required by POSIX, so do not add quotes.
 16.4786 +      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
 16.4787 +      ;;
 16.4788 +    esac |
 16.4789 +    sort
 16.4790 +) |
 16.4791 +  sed '
 16.4792 +     /^ac_cv_env_/b end
 16.4793 +     t clear
 16.4794 +     :clear
 16.4795 +     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
 16.4796 +     t end
 16.4797 +     s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
 16.4798 +     :end' >>confcache
 16.4799 +if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
 16.4800 +  if test -w "$cache_file"; then
 16.4801 +    test "x$cache_file" != "x/dev/null" &&
 16.4802 +      { echo "$as_me:$LINENO: updating cache $cache_file" >&5
 16.4803 +echo "$as_me: updating cache $cache_file" >&6;}
 16.4804 +    cat confcache >$cache_file
 16.4805 +  else
 16.4806 +    { echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5
 16.4807 +echo "$as_me: not updating unwritable cache $cache_file" >&6;}
 16.4808 +  fi
 16.4809 +fi
 16.4810 +rm -f confcache
 16.4811 +
 16.4812 +test "x$prefix" = xNONE && prefix=$ac_default_prefix
 16.4813 +# Let make expand exec_prefix.
 16.4814 +test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
 16.4815 +
 16.4816 +# Transform confdefs.h into DEFS.
 16.4817 +# Protect against shell expansion while executing Makefile rules.
 16.4818 +# Protect against Makefile macro expansion.
 16.4819 +#
 16.4820 +# If the first sed substitution is executed (which looks for macros that
 16.4821 +# take arguments), then branch to the quote section.  Otherwise,
 16.4822 +# look for a macro that doesn't take arguments.
 16.4823 +ac_script='
 16.4824 +t clear
 16.4825 +:clear
 16.4826 +s/^[	 ]*#[	 ]*define[	 ][	 ]*\([^	 (][^	 (]*([^)]*)\)[	 ]*\(.*\)/-D\1=\2/g
 16.4827 +t quote
 16.4828 +s/^[	 ]*#[	 ]*define[	 ][	 ]*\([^	 ][^	 ]*\)[	 ]*\(.*\)/-D\1=\2/g
 16.4829 +t quote
 16.4830 +b any
 16.4831 +:quote
 16.4832 +s/[	 `~#$^&*(){}\\|;'\''"<>?]/\\&/g
 16.4833 +s/\[/\\&/g
 16.4834 +s/\]/\\&/g
 16.4835 +s/\$/$$/g
 16.4836 +H
 16.4837 +:any
 16.4838 +${
 16.4839 +	g
 16.4840 +	s/^\n//
 16.4841 +	s/\n/ /g
 16.4842 +	p
 16.4843 +}
 16.4844 +'
 16.4845 +DEFS=`sed -n "$ac_script" confdefs.h`
 16.4846 +
 16.4847 +
 16.4848 +ac_libobjs=
 16.4849 +ac_ltlibobjs=
 16.4850 +for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
 16.4851 +  # 1. Remove the extension, and $U if already installed.
 16.4852 +  ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
 16.4853 +  ac_i=`echo "$ac_i" | sed "$ac_script"`
 16.4854 +  # 2. Prepend LIBOBJDIR.  When used with automake>=1.10 LIBOBJDIR
 16.4855 +  #    will be set to the directory where LIBOBJS objects are built.
 16.4856 +  ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext"
 16.4857 +  ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo'
 16.4858 +done
 16.4859 +LIBOBJS=$ac_libobjs
 16.4860 +
 16.4861 +LTLIBOBJS=$ac_ltlibobjs
 16.4862 +
 16.4863 +
 16.4864 +if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
 16.4865 +  { { echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined.
 16.4866 +Usually this means the macro was only invoked conditionally." >&5
 16.4867 +echo "$as_me: error: conditional \"AMDEP\" was never defined.
 16.4868 +Usually this means the macro was only invoked conditionally." >&2;}
 16.4869 +   { (exit 1); exit 1; }; }
 16.4870 +fi
 16.4871 +if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then
 16.4872 +  { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCXX\" was never defined.
 16.4873 +Usually this means the macro was only invoked conditionally." >&5
 16.4874 +echo "$as_me: error: conditional \"am__fastdepCXX\" was never defined.
 16.4875 +Usually this means the macro was only invoked conditionally." >&2;}
 16.4876 +   { (exit 1); exit 1; }; }
 16.4877 +fi
 16.4878 +if test -z "${USE_SSE_TRUE}" && test -z "${USE_SSE_FALSE}"; then
 16.4879 +  { { echo "$as_me:$LINENO: error: conditional \"USE_SSE\" was never defined.
 16.4880 +Usually this means the macro was only invoked conditionally." >&5
 16.4881 +echo "$as_me: error: conditional \"USE_SSE\" was never defined.
 16.4882 +Usually this means the macro was only invoked conditionally." >&2;}
 16.4883 +   { (exit 1); exit 1; }; }
 16.4884 +fi
 16.4885 +if test -z "${USE_SSE_TRUE}" && test -z "${USE_SSE_FALSE}"; then
 16.4886 +  { { echo "$as_me:$LINENO: error: conditional \"USE_SSE\" was never defined.
 16.4887 +Usually this means the macro was only invoked conditionally." >&5
 16.4888 +echo "$as_me: error: conditional \"USE_SSE\" was never defined.
 16.4889 +Usually this means the macro was only invoked conditionally." >&2;}
 16.4890 +   { (exit 1); exit 1; }; }
 16.4891 +fi
 16.4892 +
 16.4893 +: ${CONFIG_STATUS=./config.status}
 16.4894 +ac_clean_files_save=$ac_clean_files
 16.4895 +ac_clean_files="$ac_clean_files $CONFIG_STATUS"
 16.4896 +{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
 16.4897 +echo "$as_me: creating $CONFIG_STATUS" >&6;}
 16.4898 +cat >$CONFIG_STATUS <<_ACEOF
 16.4899 +#! $SHELL
 16.4900 +# Generated by $as_me.
 16.4901 +# Run this file to recreate the current configuration.
 16.4902 +# Compiler output produced by configure, useful for debugging
 16.4903 +# configure, is in config.log if it exists.
 16.4904 +
 16.4905 +debug=false
 16.4906 +ac_cs_recheck=false
 16.4907 +ac_cs_silent=false
 16.4908 +SHELL=\${CONFIG_SHELL-$SHELL}
 16.4909 +_ACEOF
 16.4910 +
 16.4911 +cat >>$CONFIG_STATUS <<\_ACEOF
 16.4912 +## --------------------- ##
 16.4913 +## M4sh Initialization.  ##
 16.4914 +## --------------------- ##
 16.4915 +
 16.4916 +# Be more Bourne compatible
 16.4917 +DUALCASE=1; export DUALCASE # for MKS sh
 16.4918 +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
 16.4919 +  emulate sh
 16.4920 +  NULLCMD=:
 16.4921 +  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
 16.4922 +  # is contrary to our usage.  Disable this feature.
 16.4923 +  alias -g '${1+"$@"}'='"$@"'
 16.4924 +  setopt NO_GLOB_SUBST
 16.4925 +else
 16.4926 +  case `(set -o) 2>/dev/null` in
 16.4927 +  *posix*) set -o posix ;;
 16.4928 +esac
 16.4929 +
 16.4930 +fi
 16.4931 +
 16.4932 +
 16.4933 +
 16.4934 +
 16.4935 +# PATH needs CR
 16.4936 +# Avoid depending upon Character Ranges.
 16.4937 +as_cr_letters='abcdefghijklmnopqrstuvwxyz'
 16.4938 +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
 16.4939 +as_cr_Letters=$as_cr_letters$as_cr_LETTERS
 16.4940 +as_cr_digits='0123456789'
 16.4941 +as_cr_alnum=$as_cr_Letters$as_cr_digits
 16.4942 +
 16.4943 +# The user is always right.
 16.4944 +if test "${PATH_SEPARATOR+set}" != set; then
 16.4945 +  echo "#! /bin/sh" >conf$$.sh
 16.4946 +  echo  "exit 0"   >>conf$$.sh
 16.4947 +  chmod +x conf$$.sh
 16.4948 +  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
 16.4949 +    PATH_SEPARATOR=';'
 16.4950 +  else
 16.4951 +    PATH_SEPARATOR=:
 16.4952 +  fi
 16.4953 +  rm -f conf$$.sh
 16.4954 +fi
 16.4955 +
 16.4956 +# Support unset when possible.
 16.4957 +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
 16.4958 +  as_unset=unset
 16.4959 +else
 16.4960 +  as_unset=false
 16.4961 +fi
 16.4962 +
 16.4963 +
 16.4964 +# IFS
 16.4965 +# We need space, tab and new line, in precisely that order.  Quoting is
 16.4966 +# there to prevent editors from complaining about space-tab.
 16.4967 +# (If _AS_PATH_WALK were called with IFS unset, it would disable word
 16.4968 +# splitting by setting IFS to empty value.)
 16.4969 +as_nl='
 16.4970 +'
 16.4971 +IFS=" ""	$as_nl"
 16.4972 +
 16.4973 +# Find who we are.  Look in the path if we contain no directory separator.
 16.4974 +case $0 in
 16.4975 +  *[\\/]* ) as_myself=$0 ;;
 16.4976 +  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 16.4977 +for as_dir in $PATH
 16.4978 +do
 16.4979 +  IFS=$as_save_IFS
 16.4980 +  test -z "$as_dir" && as_dir=.
 16.4981 +  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
 16.4982 +done
 16.4983 +IFS=$as_save_IFS
 16.4984 +
 16.4985 +     ;;
 16.4986 +esac
 16.4987 +# We did not find ourselves, most probably we were run as `sh COMMAND'
 16.4988 +# in which case we are not to be found in the path.
 16.4989 +if test "x$as_myself" = x; then
 16.4990 +  as_myself=$0
 16.4991 +fi
 16.4992 +if test ! -f "$as_myself"; then
 16.4993 +  echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
 16.4994 +  { (exit 1); exit 1; }
 16.4995 +fi
 16.4996 +
 16.4997 +# Work around bugs in pre-3.0 UWIN ksh.
 16.4998 +for as_var in ENV MAIL MAILPATH
 16.4999 +do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
 16.5000 +done
 16.5001 +PS1='$ '
 16.5002 +PS2='> '
 16.5003 +PS4='+ '
 16.5004 +
 16.5005 +# NLS nuisances.
 16.5006 +for as_var in \
 16.5007 +  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
 16.5008 +  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
 16.5009 +  LC_TELEPHONE LC_TIME
 16.5010 +do
 16.5011 +  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
 16.5012 +    eval $as_var=C; export $as_var
 16.5013 +  else
 16.5014 +    ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
 16.5015 +  fi
 16.5016 +done
 16.5017 +
 16.5018 +# Required to use basename.
 16.5019 +if expr a : '\(a\)' >/dev/null 2>&1 &&
 16.5020 +   test "X`expr 00001 : '.*\(...\)'`" = X001; then
 16.5021 +  as_expr=expr
 16.5022 +else
 16.5023 +  as_expr=false
 16.5024 +fi
 16.5025 +
 16.5026 +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
 16.5027 +  as_basename=basename
 16.5028 +else
 16.5029 +  as_basename=false
 16.5030 +fi
 16.5031 +
 16.5032 +
 16.5033 +# Name of the executable.
 16.5034 +as_me=`$as_basename -- "$0" ||
 16.5035 +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
 16.5036 +	 X"$0" : 'X\(//\)$' \| \
 16.5037 +	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
 16.5038 +echo X/"$0" |
 16.5039 +    sed '/^.*\/\([^/][^/]*\)\/*$/{
 16.5040 +	    s//\1/
 16.5041 +	    q
 16.5042 +	  }
 16.5043 +	  /^X\/\(\/\/\)$/{
 16.5044 +	    s//\1/
 16.5045 +	    q
 16.5046 +	  }
 16.5047 +	  /^X\/\(\/\).*/{
 16.5048 +	    s//\1/
 16.5049 +	    q
 16.5050 +	  }
 16.5051 +	  s/.*/./; q'`
 16.5052 +
 16.5053 +# CDPATH.
 16.5054 +$as_unset CDPATH
 16.5055 +
 16.5056 +
 16.5057 +
 16.5058 +  as_lineno_1=$LINENO
 16.5059 +  as_lineno_2=$LINENO
 16.5060 +  test "x$as_lineno_1" != "x$as_lineno_2" &&
 16.5061 +  test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
 16.5062 +
 16.5063 +  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
 16.5064 +  # uniformly replaced by the line number.  The first 'sed' inserts a
 16.5065 +  # line-number line after each line using $LINENO; the second 'sed'
 16.5066 +  # does the real work.  The second script uses 'N' to pair each
 16.5067 +  # line-number line with the line containing $LINENO, and appends
 16.5068 +  # trailing '-' during substitution so that $LINENO is not a special
 16.5069 +  # case at line end.
 16.5070 +  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
 16.5071 +  # scripts with optimization help from Paolo Bonzini.  Blame Lee
 16.5072 +  # E. McMahon (1931-1989) for sed's syntax.  :-)
 16.5073 +  sed -n '
 16.5074 +    p
 16.5075 +    /[$]LINENO/=
 16.5076 +  ' <$as_myself |
 16.5077 +    sed '
 16.5078 +      s/[$]LINENO.*/&-/
 16.5079 +      t lineno
 16.5080 +      b
 16.5081 +      :lineno
 16.5082 +      N
 16.5083 +      :loop
 16.5084 +      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
 16.5085 +      t loop
 16.5086 +      s/-\n.*//
 16.5087 +    ' >$as_me.lineno &&
 16.5088 +  chmod +x "$as_me.lineno" ||
 16.5089 +    { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
 16.5090 +   { (exit 1); exit 1; }; }
 16.5091 +
 16.5092 +  # Don't try to exec as it changes $[0], causing all sort of problems
 16.5093 +  # (the dirname of $[0] is not the place where we might find the
 16.5094 +  # original and so on.  Autoconf is especially sensitive to this).
 16.5095 +  . "./$as_me.lineno"
 16.5096 +  # Exit status is that of the last command.
 16.5097 +  exit
 16.5098 +}
 16.5099 +
 16.5100 +
 16.5101 +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
 16.5102 +  as_dirname=dirname
 16.5103 +else
 16.5104 +  as_dirname=false
 16.5105 +fi
 16.5106 +
 16.5107 +ECHO_C= ECHO_N= ECHO_T=
 16.5108 +case `echo -n x` in
 16.5109 +-n*)
 16.5110 +  case `echo 'x\c'` in
 16.5111 +  *c*) ECHO_T='	';;	# ECHO_T is single tab character.
 16.5112 +  *)   ECHO_C='\c';;
 16.5113 +  esac;;
 16.5114 +*)
 16.5115 +  ECHO_N='-n';;
 16.5116 +esac
 16.5117 +
 16.5118 +if expr a : '\(a\)' >/dev/null 2>&1 &&
 16.5119 +   test "X`expr 00001 : '.*\(...\)'`" = X001; then
 16.5120 +  as_expr=expr
 16.5121 +else
 16.5122 +  as_expr=false
 16.5123 +fi
 16.5124 +
 16.5125 +rm -f conf$$ conf$$.exe conf$$.file
 16.5126 +if test -d conf$$.dir; then
 16.5127 +  rm -f conf$$.dir/conf$$.file
 16.5128 +else
 16.5129 +  rm -f conf$$.dir
 16.5130 +  mkdir conf$$.dir
 16.5131 +fi
 16.5132 +echo >conf$$.file
 16.5133 +if ln -s conf$$.file conf$$ 2>/dev/null; then
 16.5134 +  as_ln_s='ln -s'
 16.5135 +  # ... but there are two gotchas:
 16.5136 +  # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
 16.5137 +  # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
 16.5138 +  # In both cases, we have to default to `cp -p'.
 16.5139 +  ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
 16.5140 +    as_ln_s='cp -p'
 16.5141 +elif ln conf$$.file conf$$ 2>/dev/null; then
 16.5142 +  as_ln_s=ln
 16.5143 +else
 16.5144 +  as_ln_s='cp -p'
 16.5145 +fi
 16.5146 +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
 16.5147 +rmdir conf$$.dir 2>/dev/null
 16.5148 +
 16.5149 +if mkdir -p . 2>/dev/null; then
 16.5150 +  as_mkdir_p=:
 16.5151 +else
 16.5152 +  test -d ./-p && rmdir ./-p
 16.5153 +  as_mkdir_p=false
 16.5154 +fi
 16.5155 +
 16.5156 +if test -x / >/dev/null 2>&1; then
 16.5157 +  as_test_x='test -x'
 16.5158 +else
 16.5159 +  if ls -dL / >/dev/null 2>&1; then
 16.5160 +    as_ls_L_option=L
 16.5161 +  else
 16.5162 +    as_ls_L_option=
 16.5163 +  fi
 16.5164 +  as_test_x='
 16.5165 +    eval sh -c '\''
 16.5166 +      if test -d "$1"; then
 16.5167 +        test -d "$1/.";
 16.5168 +      else
 16.5169 +	case $1 in
 16.5170 +        -*)set "./$1";;
 16.5171 +	esac;
 16.5172 +	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
 16.5173 +	???[sx]*):;;*)false;;esac;fi
 16.5174 +    '\'' sh
 16.5175 +  '
 16.5176 +fi
 16.5177 +as_executable_p=$as_test_x
 16.5178 +
 16.5179 +# Sed expression to map a string onto a valid CPP name.
 16.5180 +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
 16.5181 +
 16.5182 +# Sed expression to map a string onto a valid variable name.
 16.5183 +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
 16.5184 +
 16.5185 +
 16.5186 +exec 6>&1
 16.5187 +
 16.5188 +# Save the log message, to keep $[0] and so on meaningful, and to
 16.5189 +# report actual input values of CONFIG_FILES etc. instead of their
 16.5190 +# values after options handling.
 16.5191 +ac_log="
 16.5192 +This file was extended by $as_me, which was
 16.5193 +generated by GNU Autoconf 2.61.  Invocation command line was
 16.5194 +
 16.5195 +  CONFIG_FILES    = $CONFIG_FILES
 16.5196 +  CONFIG_HEADERS  = $CONFIG_HEADERS
 16.5197 +  CONFIG_LINKS    = $CONFIG_LINKS
 16.5198 +  CONFIG_COMMANDS = $CONFIG_COMMANDS
 16.5199 +  $ $0 $@
 16.5200 +
 16.5201 +on `(hostname || uname -n) 2>/dev/null | sed 1q`
 16.5202 +"
 16.5203 +
 16.5204 +_ACEOF
 16.5205 +
 16.5206 +cat >>$CONFIG_STATUS <<_ACEOF
 16.5207 +# Files that config.status was made for.
 16.5208 +config_files="$ac_config_files"
 16.5209 +config_commands="$ac_config_commands"
 16.5210 +
 16.5211 +_ACEOF
 16.5212 +
 16.5213 +cat >>$CONFIG_STATUS <<\_ACEOF
 16.5214 +ac_cs_usage="\
 16.5215 +\`$as_me' instantiates files from templates according to the
 16.5216 +current configuration.
 16.5217 +
 16.5218 +Usage: $0 [OPTIONS] [FILE]...
 16.5219 +
 16.5220 +  -h, --help       print this help, then exit
 16.5221 +  -V, --version    print version number and configuration settings, then exit
 16.5222 +  -q, --quiet      do not print progress messages
 16.5223 +  -d, --debug      don't remove temporary files
 16.5224 +      --recheck    update $as_me by reconfiguring in the same conditions
 16.5225 +  --file=FILE[:TEMPLATE]
 16.5226 +		   instantiate the configuration file FILE
 16.5227 +
 16.5228 +Configuration files:
 16.5229 +$config_files
 16.5230 +
 16.5231 +Configuration commands:
 16.5232 +$config_commands
 16.5233 +
 16.5234 +Report bugs to <bug-autoconf@gnu.org>."
 16.5235 +
 16.5236 +_ACEOF
 16.5237 +cat >>$CONFIG_STATUS <<_ACEOF
 16.5238 +ac_cs_version="\\
 16.5239 +config.status
 16.5240 +configured by $0, generated by GNU Autoconf 2.61,
 16.5241 +  with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
 16.5242 +
 16.5243 +Copyright (C) 2006 Free Software Foundation, Inc.
 16.5244 +This config.status script is free software; the Free Software Foundation
 16.5245 +gives unlimited permission to copy, distribute and modify it."
 16.5246 +
 16.5247 +ac_pwd='$ac_pwd'
 16.5248 +srcdir='$srcdir'
 16.5249 +INSTALL='$INSTALL'
 16.5250 +_ACEOF
 16.5251 +
 16.5252 +cat >>$CONFIG_STATUS <<\_ACEOF
 16.5253 +# If no file are specified by the user, then we need to provide default
 16.5254 +# value.  By we need to know if files were specified by the user.
 16.5255 +ac_need_defaults=:
 16.5256 +while test $# != 0
 16.5257 +do
 16.5258 +  case $1 in
 16.5259 +  --*=*)
 16.5260 +    ac_option=`expr "X$1" : 'X\([^=]*\)='`
 16.5261 +    ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
 16.5262 +    ac_shift=:
 16.5263 +    ;;
 16.5264 +  *)
 16.5265 +    ac_option=$1
 16.5266 +    ac_optarg=$2
 16.5267 +    ac_shift=shift
 16.5268 +    ;;
 16.5269 +  esac
 16.5270 +
 16.5271 +  case $ac_option in
 16.5272 +  # Handling of the options.
 16.5273 +  -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
 16.5274 +    ac_cs_recheck=: ;;
 16.5275 +  --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
 16.5276 +    echo "$ac_cs_version"; exit ;;
 16.5277 +  --debug | --debu | --deb | --de | --d | -d )
 16.5278 +    debug=: ;;
 16.5279 +  --file | --fil | --fi | --f )
 16.5280 +    $ac_shift
 16.5281 +    CONFIG_FILES="$CONFIG_FILES $ac_optarg"
 16.5282 +    ac_need_defaults=false;;
 16.5283 +  --he | --h |  --help | --hel | -h )
 16.5284 +    echo "$ac_cs_usage"; exit ;;
 16.5285 +  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
 16.5286 +  | -silent | --silent | --silen | --sile | --sil | --si | --s)
 16.5287 +    ac_cs_silent=: ;;
 16.5288 +
 16.5289 +  # This is an error.
 16.5290 +  -*) { echo "$as_me: error: unrecognized option: $1
 16.5291 +Try \`$0 --help' for more information." >&2
 16.5292 +   { (exit 1); exit 1; }; } ;;
 16.5293 +
 16.5294 +  *) ac_config_targets="$ac_config_targets $1"
 16.5295 +     ac_need_defaults=false ;;
 16.5296 +
 16.5297 +  esac
 16.5298 +  shift
 16.5299 +done
 16.5300 +
 16.5301 +ac_configure_extra_args=
 16.5302 +
 16.5303 +if $ac_cs_silent; then
 16.5304 +  exec 6>/dev/null
 16.5305 +  ac_configure_extra_args="$ac_configure_extra_args --silent"
 16.5306 +fi
 16.5307 +
 16.5308 +_ACEOF
 16.5309 +cat >>$CONFIG_STATUS <<_ACEOF
 16.5310 +if \$ac_cs_recheck; then
 16.5311 +  echo "running CONFIG_SHELL=$SHELL $SHELL $0 "$ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6
 16.5312 +  CONFIG_SHELL=$SHELL
 16.5313 +  export CONFIG_SHELL
 16.5314 +  exec $SHELL "$0"$ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
 16.5315 +fi
 16.5316 +
 16.5317 +_ACEOF
 16.5318 +cat >>$CONFIG_STATUS <<\_ACEOF
 16.5319 +exec 5>>config.log
 16.5320 +{
 16.5321 +  echo
 16.5322 +  sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
 16.5323 +## Running $as_me. ##
 16.5324 +_ASBOX
 16.5325 +  echo "$ac_log"
 16.5326 +} >&5
 16.5327 +
 16.5328 +_ACEOF
 16.5329 +cat >>$CONFIG_STATUS <<_ACEOF
 16.5330 +#
 16.5331 +# INIT-COMMANDS
 16.5332 +#
 16.5333 +AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
 16.5334 +
 16.5335 +_ACEOF
 16.5336 +
 16.5337 +cat >>$CONFIG_STATUS <<\_ACEOF
 16.5338 +
 16.5339 +# Handling of arguments.
 16.5340 +for ac_config_target in $ac_config_targets
 16.5341 +do
 16.5342 +  case $ac_config_target in
 16.5343 +    "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
 16.5344 +    "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
 16.5345 +    "siddefs-fp.h") CONFIG_FILES="$CONFIG_FILES siddefs-fp.h" ;;
 16.5346 +
 16.5347 +  *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
 16.5348 +echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
 16.5349 +   { (exit 1); exit 1; }; };;
 16.5350 +  esac
 16.5351 +done
 16.5352 +
 16.5353 +
 16.5354 +# If the user did not use the arguments to specify the items to instantiate,
 16.5355 +# then the envvar interface is used.  Set only those that are not.
 16.5356 +# We use the long form for the default assignment because of an extremely
 16.5357 +# bizarre bug on SunOS 4.1.3.
 16.5358 +if $ac_need_defaults; then
 16.5359 +  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
 16.5360 +  test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
 16.5361 +fi
 16.5362 +
 16.5363 +# Have a temporary directory for convenience.  Make it in the build tree
 16.5364 +# simply because there is no reason against having it here, and in addition,
 16.5365 +# creating and moving files from /tmp can sometimes cause problems.
 16.5366 +# Hook for its removal unless debugging.
 16.5367 +# Note that there is a small window in which the directory will not be cleaned:
 16.5368 +# after its creation but before its name has been assigned to `$tmp'.
 16.5369 +$debug ||
 16.5370 +{
 16.5371 +  tmp=
 16.5372 +  trap 'exit_status=$?
 16.5373 +  { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status
 16.5374 +' 0
 16.5375 +  trap '{ (exit 1); exit 1; }' 1 2 13 15
 16.5376 +}
 16.5377 +# Create a (secure) tmp directory for tmp files.
 16.5378 +
 16.5379 +{
 16.5380 +  tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
 16.5381 +  test -n "$tmp" && test -d "$tmp"
 16.5382 +}  ||
 16.5383 +{
 16.5384 +  tmp=./conf$$-$RANDOM
 16.5385 +  (umask 077 && mkdir "$tmp")
 16.5386 +} ||
 16.5387 +{
 16.5388 +   echo "$me: cannot create a temporary directory in ." >&2
 16.5389 +   { (exit 1); exit 1; }
 16.5390 +}
 16.5391 +
 16.5392 +#
 16.5393 +# Set up the sed scripts for CONFIG_FILES section.
 16.5394 +#
 16.5395 +
 16.5396 +# No need to generate the scripts if there are no CONFIG_FILES.
 16.5397 +# This happens for instance when ./config.status config.h
 16.5398 +if test -n "$CONFIG_FILES"; then
 16.5399 +
 16.5400 +_ACEOF
 16.5401 +
 16.5402 +
 16.5403 +
 16.5404 +ac_delim='%!_!# '
 16.5405 +for ac_last_try in false false false false false :; do
 16.5406 +  cat >conf$$subs.sed <<_ACEOF
 16.5407 +SHELL!$SHELL$ac_delim
 16.5408 +PATH_SEPARATOR!$PATH_SEPARATOR$ac_delim
 16.5409 +PACKAGE_NAME!$PACKAGE_NAME$ac_delim
 16.5410 +PACKAGE_TARNAME!$PACKAGE_TARNAME$ac_delim
 16.5411 +PACKAGE_VERSION!$PACKAGE_VERSION$ac_delim
 16.5412 +PACKAGE_STRING!$PACKAGE_STRING$ac_delim
 16.5413 +PACKAGE_BUGREPORT!$PACKAGE_BUGREPORT$ac_delim
 16.5414 +exec_prefix!$exec_prefix$ac_delim
 16.5415 +prefix!$prefix$ac_delim
 16.5416 +program_transform_name!$program_transform_name$ac_delim
 16.5417 +bindir!$bindir$ac_delim
 16.5418 +sbindir!$sbindir$ac_delim
 16.5419 +libexecdir!$libexecdir$ac_delim
 16.5420 +datarootdir!$datarootdir$ac_delim
 16.5421 +datadir!$datadir$ac_delim
 16.5422 +sysconfdir!$sysconfdir$ac_delim
 16.5423 +sharedstatedir!$sharedstatedir$ac_delim
 16.5424 +localstatedir!$localstatedir$ac_delim
 16.5425 +includedir!$includedir$ac_delim
 16.5426 +oldincludedir!$oldincludedir$ac_delim
 16.5427 +docdir!$docdir$ac_delim
 16.5428 +infodir!$infodir$ac_delim
 16.5429 +htmldir!$htmldir$ac_delim
 16.5430 +dvidir!$dvidir$ac_delim
 16.5431 +pdfdir!$pdfdir$ac_delim
 16.5432 +psdir!$psdir$ac_delim
 16.5433 +libdir!$libdir$ac_delim
 16.5434 +localedir!$localedir$ac_delim
 16.5435 +mandir!$mandir$ac_delim
 16.5436 +DEFS!$DEFS$ac_delim
 16.5437 +ECHO_C!$ECHO_C$ac_delim
 16.5438 +ECHO_N!$ECHO_N$ac_delim
 16.5439 +ECHO_T!$ECHO_T$ac_delim
 16.5440 +LIBS!$LIBS$ac_delim
 16.5441 +build_alias!$build_alias$ac_delim
 16.5442 +host_alias!$host_alias$ac_delim
 16.5443 +target_alias!$target_alias$ac_delim
 16.5444 +INSTALL_PROGRAM!$INSTALL_PROGRAM$ac_delim
 16.5445 +INSTALL_SCRIPT!$INSTALL_SCRIPT$ac_delim
 16.5446 +INSTALL_DATA!$INSTALL_DATA$ac_delim
 16.5447 +CYGPATH_W!$CYGPATH_W$ac_delim
 16.5448 +PACKAGE!$PACKAGE$ac_delim
 16.5449 +VERSION!$VERSION$ac_delim
 16.5450 +ACLOCAL!$ACLOCAL$ac_delim
 16.5451 +AUTOCONF!$AUTOCONF$ac_delim
 16.5452 +AUTOMAKE!$AUTOMAKE$ac_delim
 16.5453 +AUTOHEADER!$AUTOHEADER$ac_delim
 16.5454 +MAKEINFO!$MAKEINFO$ac_delim
 16.5455 +install_sh!$install_sh$ac_delim
 16.5456 +STRIP!$STRIP$ac_delim
 16.5457 +INSTALL_STRIP_PROGRAM!$INSTALL_STRIP_PROGRAM$ac_delim
 16.5458 +mkdir_p!$mkdir_p$ac_delim
 16.5459 +AWK!$AWK$ac_delim
 16.5460 +SET_MAKE!$SET_MAKE$ac_delim
 16.5461 +am__leading_dot!$am__leading_dot$ac_delim
 16.5462 +AMTAR!$AMTAR$ac_delim
 16.5463 +am__tar!$am__tar$ac_delim
 16.5464 +am__untar!$am__untar$ac_delim
 16.5465 +RESID_INLINE!$RESID_INLINE$ac_delim
 16.5466 +CXX!$CXX$ac_delim
 16.5467 +CXXFLAGS!$CXXFLAGS$ac_delim
 16.5468 +LDFLAGS!$LDFLAGS$ac_delim
 16.5469 +CPPFLAGS!$CPPFLAGS$ac_delim
 16.5470 +ac_ct_CXX!$ac_ct_CXX$ac_delim
 16.5471 +EXEEXT!$EXEEXT$ac_delim
 16.5472 +OBJEXT!$OBJEXT$ac_delim
 16.5473 +DEPDIR!$DEPDIR$ac_delim
 16.5474 +am__include!$am__include$ac_delim
 16.5475 +am__quote!$am__quote$ac_delim
 16.5476 +AMDEP_TRUE!$AMDEP_TRUE$ac_delim
 16.5477 +AMDEP_FALSE!$AMDEP_FALSE$ac_delim
 16.5478 +AMDEPBACKSLASH!$AMDEPBACKSLASH$ac_delim
 16.5479 +CXXDEPMODE!$CXXDEPMODE$ac_delim
 16.5480 +am__fastdepCXX_TRUE!$am__fastdepCXX_TRUE$ac_delim
 16.5481 +am__fastdepCXX_FALSE!$am__fastdepCXX_FALSE$ac_delim
 16.5482 +AR!$AR$ac_delim
 16.5483 +RANLIB!$RANLIB$ac_delim
 16.5484 +PERL!$PERL$ac_delim
 16.5485 +CXXCPP!$CXXCPP$ac_delim
 16.5486 +GREP!$GREP$ac_delim
 16.5487 +EGREP!$EGREP$ac_delim
 16.5488 +USE_SSE_TRUE!$USE_SSE_TRUE$ac_delim
 16.5489 +USE_SSE_FALSE!$USE_SSE_FALSE$ac_delim
 16.5490 +RESID_HAVE_BOOL!$RESID_HAVE_BOOL$ac_delim
 16.5491 +RESID_USE_SSE!$RESID_USE_SSE$ac_delim
 16.5492 +HAVE_LOGF_PROTOTYPE!$HAVE_LOGF_PROTOTYPE$ac_delim
 16.5493 +HAVE_EXPF_PROTOTYPE!$HAVE_EXPF_PROTOTYPE$ac_delim
 16.5494 +LIBOBJS!$LIBOBJS$ac_delim
 16.5495 +LTLIBOBJS!$LTLIBOBJS$ac_delim
 16.5496 +_ACEOF
 16.5497 +
 16.5498 +  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 89; then
 16.5499 +    break
 16.5500 +  elif $ac_last_try; then
 16.5501 +    { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
 16.5502 +echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
 16.5503 +   { (exit 1); exit 1; }; }
 16.5504 +  else
 16.5505 +    ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
 16.5506 +  fi
 16.5507 +done
 16.5508 +
 16.5509 +ac_eof=`sed -n '/^CEOF[0-9]*$/s/CEOF/0/p' conf$$subs.sed`
 16.5510 +if test -n "$ac_eof"; then
 16.5511 +  ac_eof=`echo "$ac_eof" | sort -nru | sed 1q`
 16.5512 +  ac_eof=`expr $ac_eof + 1`
 16.5513 +fi
 16.5514 +
 16.5515 +cat >>$CONFIG_STATUS <<_ACEOF
 16.5516 +cat >"\$tmp/subs-1.sed" <<\CEOF$ac_eof
 16.5517 +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b end
 16.5518 +_ACEOF
 16.5519 +sed '
 16.5520 +s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g
 16.5521 +s/^/s,@/; s/!/@,|#_!!_#|/
 16.5522 +:n
 16.5523 +t n
 16.5524 +s/'"$ac_delim"'$/,g/; t
 16.5525 +s/$/\\/; p
 16.5526 +N; s/^.*\n//; s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g; b n
 16.5527 +' >>$CONFIG_STATUS <conf$$subs.sed
 16.5528 +rm -f conf$$subs.sed
 16.5529 +cat >>$CONFIG_STATUS <<_ACEOF
 16.5530 +:end
 16.5531 +s/|#_!!_#|//g
 16.5532 +CEOF$ac_eof
 16.5533 +_ACEOF
 16.5534 +
 16.5535 +
 16.5536 +# VPATH may cause trouble with some makes, so we remove $(srcdir),
 16.5537 +# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
 16.5538 +# trailing colons and then remove the whole line if VPATH becomes empty
 16.5539 +# (actually we leave an empty line to preserve line numbers).
 16.5540 +if test "x$srcdir" = x.; then
 16.5541 +  ac_vpsub='/^[	 ]*VPATH[	 ]*=/{
 16.5542 +s/:*\$(srcdir):*/:/
 16.5543 +s/:*\${srcdir}:*/:/
 16.5544 +s/:*@srcdir@:*/:/
 16.5545 +s/^\([^=]*=[	 ]*\):*/\1/
 16.5546 +s/:*$//
 16.5547 +s/^[^=]*=[	 ]*$//
 16.5548 +}'
 16.5549 +fi
 16.5550 +
 16.5551 +cat >>$CONFIG_STATUS <<\_ACEOF
 16.5552 +fi # test -n "$CONFIG_FILES"
 16.5553 +
 16.5554 +
 16.5555 +for ac_tag in  :F $CONFIG_FILES      :C $CONFIG_COMMANDS
 16.5556 +do
 16.5557 +  case $ac_tag in
 16.5558 +  :[FHLC]) ac_mode=$ac_tag; continue;;
 16.5559 +  esac
 16.5560 +  case $ac_mode$ac_tag in
 16.5561 +  :[FHL]*:*);;
 16.5562 +  :L* | :C*:*) { { echo "$as_me:$LINENO: error: Invalid tag $ac_tag." >&5
 16.5563 +echo "$as_me: error: Invalid tag $ac_tag." >&2;}
 16.5564 +   { (exit 1); exit 1; }; };;
 16.5565 +  :[FH]-) ac_tag=-:-;;
 16.5566 +  :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
 16.5567 +  esac
 16.5568 +  ac_save_IFS=$IFS
 16.5569 +  IFS=:
 16.5570 +  set x $ac_tag
 16.5571 +  IFS=$ac_save_IFS
 16.5572 +  shift
 16.5573 +  ac_file=$1
 16.5574 +  shift
 16.5575 +
 16.5576 +  case $ac_mode in
 16.5577 +  :L) ac_source=$1;;
 16.5578 +  :[FH])
 16.5579 +    ac_file_inputs=
 16.5580 +    for ac_f
 16.5581 +    do
 16.5582 +      case $ac_f in
 16.5583 +      -) ac_f="$tmp/stdin";;
 16.5584 +      *) # Look for the file first in the build tree, then in the source tree
 16.5585 +	 # (if the path is not absolute).  The absolute path cannot be DOS-style,
 16.5586 +	 # because $ac_f cannot contain `:'.
 16.5587 +	 test -f "$ac_f" ||
 16.5588 +	   case $ac_f in
 16.5589 +	   [\\/$]*) false;;
 16.5590 +	   *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
 16.5591 +	   esac ||
 16.5592 +	   { { echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5
 16.5593 +echo "$as_me: error: cannot find input file: $ac_f" >&2;}
 16.5594 +   { (exit 1); exit 1; }; };;
 16.5595 +      esac
 16.5596 +      ac_file_inputs="$ac_file_inputs $ac_f"
 16.5597 +    done
 16.5598 +
 16.5599 +    # Let's still pretend it is `configure' which instantiates (i.e., don't
 16.5600 +    # use $as_me), people would be surprised to read:
 16.5601 +    #    /* config.h.  Generated by config.status.  */
 16.5602 +    configure_input="Generated from "`IFS=:
 16.5603 +	  echo $* | sed 's|^[^:]*/||;s|:[^:]*/|, |g'`" by configure."
 16.5604 +    if test x"$ac_file" != x-; then
 16.5605 +      configure_input="$ac_file.  $configure_input"
 16.5606 +      { echo "$as_me:$LINENO: creating $ac_file" >&5
 16.5607 +echo "$as_me: creating $ac_file" >&6;}
 16.5608 +    fi
 16.5609 +
 16.5610 +    case $ac_tag in
 16.5611 +    *:-:* | *:-) cat >"$tmp/stdin";;
 16.5612 +    esac
 16.5613 +    ;;
 16.5614 +  esac
 16.5615 +
 16.5616 +  ac_dir=`$as_dirname -- "$ac_file" ||
 16.5617 +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
 16.5618 +	 X"$ac_file" : 'X\(//\)[^/]' \| \
 16.5619 +	 X"$ac_file" : 'X\(//\)$' \| \
 16.5620 +	 X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
 16.5621 +echo X"$ac_file" |
 16.5622 +    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 16.5623 +	    s//\1/
 16.5624 +	    q
 16.5625 +	  }
 16.5626 +	  /^X\(\/\/\)[^/].*/{
 16.5627 +	    s//\1/
 16.5628 +	    q
 16.5629 +	  }
 16.5630 +	  /^X\(\/\/\)$/{
 16.5631 +	    s//\1/
 16.5632 +	    q
 16.5633 +	  }
 16.5634 +	  /^X\(\/\).*/{
 16.5635 +	    s//\1/
 16.5636 +	    q
 16.5637 +	  }
 16.5638 +	  s/.*/./; q'`
 16.5639 +  { as_dir="$ac_dir"
 16.5640 +  case $as_dir in #(
 16.5641 +  -*) as_dir=./$as_dir;;
 16.5642 +  esac
 16.5643 +  test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || {
 16.5644 +    as_dirs=
 16.5645 +    while :; do
 16.5646 +      case $as_dir in #(
 16.5647 +      *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #(
 16.5648 +      *) as_qdir=$as_dir;;
 16.5649 +      esac
 16.5650 +      as_dirs="'$as_qdir' $as_dirs"
 16.5651 +      as_dir=`$as_dirname -- "$as_dir" ||
 16.5652 +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
 16.5653 +	 X"$as_dir" : 'X\(//\)[^/]' \| \
 16.5654 +	 X"$as_dir" : 'X\(//\)$' \| \
 16.5655 +	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
 16.5656 +echo X"$as_dir" |
 16.5657 +    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 16.5658 +	    s//\1/
 16.5659 +	    q
 16.5660 +	  }
 16.5661 +	  /^X\(\/\/\)[^/].*/{
 16.5662 +	    s//\1/
 16.5663 +	    q
 16.5664 +	  }
 16.5665 +	  /^X\(\/\/\)$/{
 16.5666 +	    s//\1/
 16.5667 +	    q
 16.5668 +	  }
 16.5669 +	  /^X\(\/\).*/{
 16.5670 +	    s//\1/
 16.5671 +	    q
 16.5672 +	  }
 16.5673 +	  s/.*/./; q'`
 16.5674 +      test -d "$as_dir" && break
 16.5675 +    done
 16.5676 +    test -z "$as_dirs" || eval "mkdir $as_dirs"
 16.5677 +  } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5
 16.5678 +echo "$as_me: error: cannot create directory $as_dir" >&2;}
 16.5679 +   { (exit 1); exit 1; }; }; }
 16.5680 +  ac_builddir=.
 16.5681 +
 16.5682 +case "$ac_dir" in
 16.5683 +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
 16.5684 +*)
 16.5685 +  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
 16.5686 +  # A ".." for each directory in $ac_dir_suffix.
 16.5687 +  ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'`
 16.5688 +  case $ac_top_builddir_sub in
 16.5689 +  "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
 16.5690 +  *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
 16.5691 +  esac ;;
 16.5692 +esac
 16.5693 +ac_abs_top_builddir=$ac_pwd
 16.5694 +ac_abs_builddir=$ac_pwd$ac_dir_suffix
 16.5695 +# for backward compatibility:
 16.5696 +ac_top_builddir=$ac_top_build_prefix
 16.5697 +
 16.5698 +case $srcdir in
 16.5699 +  .)  # We are building in place.
 16.5700 +    ac_srcdir=.
 16.5701 +    ac_top_srcdir=$ac_top_builddir_sub
 16.5702 +    ac_abs_top_srcdir=$ac_pwd ;;
 16.5703 +  [\\/]* | ?:[\\/]* )  # Absolute name.
 16.5704 +    ac_srcdir=$srcdir$ac_dir_suffix;
 16.5705 +    ac_top_srcdir=$srcdir
 16.5706 +    ac_abs_top_srcdir=$srcdir ;;
 16.5707 +  *) # Relative name.
 16.5708 +    ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
 16.5709 +    ac_top_srcdir=$ac_top_build_prefix$srcdir
 16.5710 +    ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
 16.5711 +esac
 16.5712 +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
 16.5713 +
 16.5714 +
 16.5715 +  case $ac_mode in
 16.5716 +  :F)
 16.5717 +  #
 16.5718 +  # CONFIG_FILE
 16.5719 +  #
 16.5720 +
 16.5721 +  case $INSTALL in
 16.5722 +  [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
 16.5723 +  *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
 16.5724 +  esac
 16.5725 +_ACEOF
 16.5726 +
 16.5727 +cat >>$CONFIG_STATUS <<\_ACEOF
 16.5728 +# If the template does not know about datarootdir, expand it.
 16.5729 +# FIXME: This hack should be removed a few years after 2.60.
 16.5730 +ac_datarootdir_hack=; ac_datarootdir_seen=
 16.5731 +
 16.5732 +case `sed -n '/datarootdir/ {
 16.5733 +  p
 16.5734 +  q
 16.5735 +}
 16.5736 +/@datadir@/p
 16.5737 +/@docdir@/p
 16.5738 +/@infodir@/p
 16.5739 +/@localedir@/p
 16.5740 +/@mandir@/p
 16.5741 +' $ac_file_inputs` in
 16.5742 +*datarootdir*) ac_datarootdir_seen=yes;;
 16.5743 +*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
 16.5744 +  { echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
 16.5745 +echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
 16.5746 +_ACEOF
 16.5747 +cat >>$CONFIG_STATUS <<_ACEOF
 16.5748 +  ac_datarootdir_hack='
 16.5749 +  s&@datadir@&$datadir&g
 16.5750 +  s&@docdir@&$docdir&g
 16.5751 +  s&@infodir@&$infodir&g
 16.5752 +  s&@localedir@&$localedir&g
 16.5753 +  s&@mandir@&$mandir&g
 16.5754 +    s&\\\${datarootdir}&$datarootdir&g' ;;
 16.5755 +esac
 16.5756 +_ACEOF
 16.5757 +
 16.5758 +# Neutralize VPATH when `$srcdir' = `.'.
 16.5759 +# Shell code in configure.ac might set extrasub.
 16.5760 +# FIXME: do we really want to maintain this feature?
 16.5761 +cat >>$CONFIG_STATUS <<_ACEOF
 16.5762 +  sed "$ac_vpsub
 16.5763 +$extrasub
 16.5764 +_ACEOF
 16.5765 +cat >>$CONFIG_STATUS <<\_ACEOF
 16.5766 +:t
 16.5767 +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
 16.5768 +s&@configure_input@&$configure_input&;t t
 16.5769 +s&@top_builddir@&$ac_top_builddir_sub&;t t
 16.5770 +s&@srcdir@&$ac_srcdir&;t t
 16.5771 +s&@abs_srcdir@&$ac_abs_srcdir&;t t
 16.5772 +s&@top_srcdir@&$ac_top_srcdir&;t t
 16.5773 +s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
 16.5774 +s&@builddir@&$ac_builddir&;t t
 16.5775 +s&@abs_builddir@&$ac_abs_builddir&;t t
 16.5776 +s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
 16.5777 +s&@INSTALL@&$ac_INSTALL&;t t
 16.5778 +$ac_datarootdir_hack
 16.5779 +" $ac_file_inputs | sed -f "$tmp/subs-1.sed" >$tmp/out
 16.5780 +
 16.5781 +test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
 16.5782 +  { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
 16.5783 +  { ac_out=`sed -n '/^[	 ]*datarootdir[	 ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } &&
 16.5784 +  { echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir'
 16.5785 +which seems to be undefined.  Please make sure it is defined." >&5
 16.5786 +echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
 16.5787 +which seems to be undefined.  Please make sure it is defined." >&2;}
 16.5788 +
 16.5789 +  rm -f "$tmp/stdin"
 16.5790 +  case $ac_file in
 16.5791 +  -) cat "$tmp/out"; rm -f "$tmp/out";;
 16.5792 +  *) rm -f "$ac_file"; mv "$tmp/out" $ac_file;;
 16.5793 +  esac
 16.5794 + ;;
 16.5795 +
 16.5796 +
 16.5797 +  :C)  { echo "$as_me:$LINENO: executing $ac_file commands" >&5
 16.5798 +echo "$as_me: executing $ac_file commands" >&6;}
 16.5799 + ;;
 16.5800 +  esac
 16.5801 +
 16.5802 +
 16.5803 +  case $ac_file$ac_mode in
 16.5804 +    "depfiles":C) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do
 16.5805 +  # Strip MF so we end up with the name of the file.
 16.5806 +  mf=`echo "$mf" | sed -e 's/:.*$//'`
 16.5807 +  # Check whether this is an Automake generated Makefile or not.
 16.5808 +  # We used to match only the files named `Makefile.in', but
 16.5809 +  # some people rename them; so instead we look at the file content.
 16.5810 +  # Grep'ing the first line is not enough: some people post-process
 16.5811 +  # each Makefile.in and add a new line on top of each file to say so.
 16.5812 +  # So let's grep whole file.
 16.5813 +  if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
 16.5814 +    dirpart=`$as_dirname -- "$mf" ||
 16.5815 +$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
 16.5816 +	 X"$mf" : 'X\(//\)[^/]' \| \
 16.5817 +	 X"$mf" : 'X\(//\)$' \| \
 16.5818 +	 X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
 16.5819 +echo X"$mf" |
 16.5820 +    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 16.5821 +	    s//\1/
 16.5822 +	    q
 16.5823 +	  }
 16.5824 +	  /^X\(\/\/\)[^/].*/{
 16.5825 +	    s//\1/
 16.5826 +	    q
 16.5827 +	  }
 16.5828 +	  /^X\(\/\/\)$/{
 16.5829 +	    s//\1/
 16.5830 +	    q
 16.5831 +	  }
 16.5832 +	  /^X\(\/\).*/{
 16.5833 +	    s//\1/
 16.5834 +	    q
 16.5835 +	  }
 16.5836 +	  s/.*/./; q'`
 16.5837 +  else
 16.5838 +    continue
 16.5839 +  fi
 16.5840 +  # Extract the definition of DEPDIR, am__include, and am__quote
 16.5841 +  # from the Makefile without running `make'.
 16.5842 +  DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
 16.5843 +  test -z "$DEPDIR" && continue
 16.5844 +  am__include=`sed -n 's/^am__include = //p' < "$mf"`
 16.5845 +  test -z "am__include" && continue
 16.5846 +  am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
 16.5847 +  # When using ansi2knr, U may be empty or an underscore; expand it
 16.5848 +  U=`sed -n 's/^U = //p' < "$mf"`
 16.5849 +  # Find all dependency output files, they are included files with
 16.5850 +  # $(DEPDIR) in their names.  We invoke sed twice because it is the
 16.5851 +  # simplest approach to changing $(DEPDIR) to its actual value in the
 16.5852 +  # expansion.
 16.5853 +  for file in `sed -n "
 16.5854 +    s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
 16.5855 +       sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
 16.5856 +    # Make sure the directory exists.
 16.5857 +    test -f "$dirpart/$file" && continue
 16.5858 +    fdir=`$as_dirname -- "$file" ||
 16.5859 +$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
 16.5860 +	 X"$file" : 'X\(//\)[^/]' \| \
 16.5861 +	 X"$file" : 'X\(//\)$' \| \
 16.5862 +	 X"$file" : 'X\(/\)' \| . 2>/dev/null ||
 16.5863 +echo X"$file" |
 16.5864 +    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 16.5865 +	    s//\1/
 16.5866 +	    q
 16.5867 +	  }
 16.5868 +	  /^X\(\/\/\)[^/].*/{
 16.5869 +	    s//\1/
 16.5870 +	    q
 16.5871 +	  }
 16.5872 +	  /^X\(\/\/\)$/{
 16.5873 +	    s//\1/
 16.5874 +	    q
 16.5875 +	  }
 16.5876 +	  /^X\(\/\).*/{
 16.5877 +	    s//\1/
 16.5878 +	    q
 16.5879 +	  }
 16.5880 +	  s/.*/./; q'`
 16.5881 +    { as_dir=$dirpart/$fdir
 16.5882 +  case $as_dir in #(
 16.5883 +  -*) as_dir=./$as_dir;;
 16.5884 +  esac
 16.5885 +  test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || {
 16.5886 +    as_dirs=
 16.5887 +    while :; do
 16.5888 +      case $as_dir in #(
 16.5889 +      *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #(
 16.5890 +      *) as_qdir=$as_dir;;
 16.5891 +      esac
 16.5892 +      as_dirs="'$as_qdir' $as_dirs"
 16.5893 +      as_dir=`$as_dirname -- "$as_dir" ||
 16.5894 +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
 16.5895 +	 X"$as_dir" : 'X\(//\)[^/]' \| \
 16.5896 +	 X"$as_dir" : 'X\(//\)$' \| \
 16.5897 +	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
 16.5898 +echo X"$as_dir" |
 16.5899 +    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 16.5900 +	    s//\1/
 16.5901 +	    q
 16.5902 +	  }
 16.5903 +	  /^X\(\/\/\)[^/].*/{
 16.5904 +	    s//\1/
 16.5905 +	    q
 16.5906 +	  }
 16.5907 +	  /^X\(\/\/\)$/{
 16.5908 +	    s//\1/
 16.5909 +	    q
 16.5910 +	  }
 16.5911 +	  /^X\(\/\).*/{
 16.5912 +	    s//\1/
 16.5913 +	    q
 16.5914 +	  }
 16.5915 +	  s/.*/./; q'`
 16.5916 +      test -d "$as_dir" && break
 16.5917 +    done
 16.5918 +    test -z "$as_dirs" || eval "mkdir $as_dirs"
 16.5919 +  } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5
 16.5920 +echo "$as_me: error: cannot create directory $as_dir" >&2;}
 16.5921 +   { (exit 1); exit 1; }; }; }
 16.5922 +    # echo "creating $dirpart/$file"
 16.5923 +    echo '# dummy' > "$dirpart/$file"
 16.5924 +  done
 16.5925 +done
 16.5926 + ;;
 16.5927 +
 16.5928 +  esac
 16.5929 +done # for ac_tag
 16.5930 +
 16.5931 +
 16.5932 +{ (exit 0); exit 0; }
 16.5933 +_ACEOF
 16.5934 +chmod +x $CONFIG_STATUS
 16.5935 +ac_clean_files=$ac_clean_files_save
 16.5936 +
 16.5937 +
 16.5938 +# configure is writing to config.log, and then calls config.status.
 16.5939 +# config.status does its own redirection, appending to config.log.
 16.5940 +# Unfortunately, on DOS this fails, as config.log is still kept open
 16.5941 +# by configure, so config.status won't be able to write to it; its
 16.5942 +# output is simply discarded.  So we exec the FD to /dev/null,
 16.5943 +# effectively closing config.log, so it can be properly (re)opened and
 16.5944 +# appended to by config.status.  When coming back to configure, we
 16.5945 +# need to make the FD available again.
 16.5946 +if test "$no_create" != yes; then
 16.5947 +  ac_cs_success=:
 16.5948 +  ac_config_status_args=
 16.5949 +  test "$silent" = yes &&
 16.5950 +    ac_config_status_args="$ac_config_status_args --quiet"
 16.5951 +  exec 5>/dev/null
 16.5952 +  $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
 16.5953 +  exec 5>>config.log
 16.5954 +  # Use ||, not &&, to avoid exiting from the if with $? = 1, which
 16.5955 +  # would make configure fail if this is the last instruction.
 16.5956 +  $ac_cs_success || { (exit 1); exit 1; }
 16.5957 +fi
 16.5958 +
    17.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    17.2 +++ b/src/resid-fp/configure.in	Sun May 11 14:09:13 2014 +0100
    17.3 @@ -0,0 +1,166 @@
    17.4 +dnl Process this file with autoconf to produce a configure script.
    17.5 +AC_INIT(sid.h)
    17.6 +
    17.7 +dnl Use Automake
    17.8 +AM_INIT_AUTOMAKE(resid, 0.16vice)
    17.9 +LTVERSION=5:0:0
   17.10 +
   17.11 +dnl Use C++ for tests.
   17.12 +AC_LANG_CPLUSPLUS
   17.13 +
   17.14 +dnl Enable inlining.
   17.15 +AC_ARG_ENABLE(inline,
   17.16 +[  --enable-inline         enable inlining of functions [default=yes]])
   17.17 +AC_ARG_ENABLE(sse,
   17.18 +[  --enable-sse            enable the use of SSE [default=yes]])
   17.19 +
   17.20 +if test "$enable_inline" != no; then
   17.21 +  RESID_INLINE=inline
   17.22 +else
   17.23 +  RESID_INLINE=
   17.24 +fi
   17.25 +
   17.26 +AC_SUBST(RESID_INLINE)
   17.27 +
   17.28 +dnl Checks for programs.
   17.29 +AC_PROG_CXX
   17.30 +
   17.31 +dnl Set CXXFLAGS for g++. Use -msse if supported.
   17.32 +if test x"$enable_sse" != "xno"; then
   17.33 +  if test "$GXX" = yes; then
   17.34 +    if test "$ac_test_CXXFLAGS" != set; then
   17.35 +      CXXFLAGS="-g -Wall -O2 -msse"
   17.36 +      AC_MSG_CHECKING([whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works])
   17.37 +      AC_TRY_COMPILE([],
   17.38 +                     [int test;],
   17.39 +                     [ AC_MSG_RESULT(yes)
   17.40 +                       MSSE="-msse"
   17.41 +                       ],
   17.42 +                     [ AC_MSG_RESULT(no)
   17.43 +                       MSSE=""
   17.44 +                       ])
   17.45 +    fi
   17.46 +  fi
   17.47 +else
   17.48 +  MSSE=""
   17.49 +fi
   17.50 +
   17.51 +dnl Set CXXFLAGS for g++. Use -fno-exceptions if supported.
   17.52 +if test "$GXX" = yes; then
   17.53 +  if test "$ac_test_CXXFLAGS" != set; then
   17.54 +    CXXFLAGS="-g -Wall -O2 $MSSE -fno-exceptions"
   17.55 +    AC_MSG_CHECKING([whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works])
   17.56 +    AC_TRY_COMPILE([],
   17.57 +                   [int test;],
   17.58 +                   [ AC_MSG_RESULT(yes)
   17.59 +                     NO_EXCEPTIONS="-fno-exceptions" ],
   17.60 +                   [ AC_MSG_RESULT(no)
   17.61 +                     NO_EXCEPTIONS=""
   17.62 +                     ])
   17.63 +  fi
   17.64 +fi
   17.65 +
   17.66 +dnl Set CXXFLAGS for g++. Use -fno-pic if supported.
   17.67 +if test "$GXX" = yes; then
   17.68 +  if test "$ac_test_CXXFLAGS" != set; then
   17.69 +    CXXFLAGS="-g -Wall -O2 $MSSE -fno-exceptions $NO_EXCEPTIONS -fno-pic"
   17.70 +    AC_MSG_CHECKING([whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works])
   17.71 +    AC_TRY_COMPILE([],
   17.72 +                   [int test;],
   17.73 +                   [ AC_MSG_RESULT(yes)
   17.74 +                     NO_PIC="-fno-pic" ],
   17.75 +                   [ AC_MSG_RESULT(no)
   17.76 +                     NO_PIC=""
   17.77 +                     ])
   17.78 +  fi
   17.79 +fi
   17.80 +
   17.81 +CXXFLAGS="-g -Wall -O2 $MSSE $NO_EXCEPTIONS $NO_PIC"
   17.82 +if test x"$MSSE" = "x-msse"; then
   17.83 +  AC_MSG_CHECKING([if the xmmintrin.h include can be used])
   17.84 +  AC_TRY_COMPILE([#include <xmmintrin.h>],
   17.85 +                 [int test;],
   17.86 +                 [ AC_MSG_RESULT(yes)
   17.87 +                   ],
   17.88 +                 [ AC_MSG_RESULT(no)
   17.89 +                   MSSE=""
   17.90 +                   ])
   17.91 +  CXXFLAGS="-g -Wall -O2 $NO_EXCEPTIONS $NO_PIC"
   17.92 +fi
   17.93 +
   17.94 +AC_CHECK_PROG(AR, ar, ar, ar)
   17.95 +AC_PROG_RANLIB
   17.96 +AC_PATH_PROG(PERL, perl)
   17.97 +
   17.98 +dnl Libtool
   17.99 +
  17.100 +dnl AC_DISABLE_SHARED
  17.101 +dnl AM_PROG_LIBTOOL
  17.102 +dnl AC_SUBST(LIBTOOL_DEPS)
  17.103 +dnl AC_SUBST(LTVERSION)
  17.104 +
  17.105 +dnl Checks for libraries.
  17.106 +
  17.107 +dnl Checks for header files.
  17.108 +
  17.109 +dnl Checks for typedefs, structures, and compiler characteristics.
  17.110 +AC_CHECK_SIZEOF(int, 4)
  17.111 +
  17.112 +if test $ac_cv_sizeof_int -lt 4; then
  17.113 +  AC_MSG_ERROR([only 32 bit or better CPUs are supported])
  17.114 +fi
  17.115 +
  17.116 +AC_CACHE_CHECK([for working bool], ac_cv_cxx_bool,
  17.117 +[AC_TRY_COMPILE(,
  17.118 +[
  17.119 +bool flag;
  17.120 +],
  17.121 +ac_cv_cxx_bool=yes, ac_cv_cxx_bool=no)])
  17.122 +
  17.123 +if test $ac_cv_cxx_bool = no; then
  17.124 +  RESID_HAVE_BOOL=0
  17.125 +else
  17.126 +  RESID_HAVE_BOOL=1
  17.127 +fi
  17.128 +
  17.129 +if test x"$MSSE" = "x-msse"; then
  17.130 +  RESID_USE_SSE=1
  17.131 +  AM_CONDITIONAL(USE_SSE, true)
  17.132 +else
  17.133 +  RESID_USE_SSE=0
  17.134 +  AM_CONDITIONAL(USE_SSE, false)
  17.135 +fi
  17.136 +
  17.137 +AC_SUBST(RESID_HAVE_BOOL)
  17.138 +AC_SUBST(RESID_USE_SSE)
  17.139 +
  17.140 +dnl Checks for library functions.
  17.141 +
  17.142 +AC_CHECK_FUNCS(logf expf)
  17.143 +
  17.144 +AC_MSG_CHECKING([if the logf prototype is present])
  17.145 +AC_TRY_COMPILE([#include <math.h>
  17.146 +                #include <stdio.h>],
  17.147 +               [printf("%d",logf);],
  17.148 +               [ AC_MSG_RESULT(yes)
  17.149 +                 HAVE_LOGF_PROTOTYPE=1
  17.150 +                ],
  17.151 +               [ AC_MSG_RESULT(no)
  17.152 +                HAVE_LOGF_PROTOTYPE=0
  17.153 +                ])
  17.154 +
  17.155 +AC_MSG_CHECKING([if the expf prototype is present])
  17.156 +AC_TRY_COMPILE([#include <math.h>
  17.157 +                #include <stdio.h>],
  17.158 +               [printf("%d",expf);],
  17.159 +               [ AC_MSG_RESULT(yes)
  17.160 +                 HAVE_EXPF_PROTOTYPE=1
  17.161 +                ],
  17.162 +               [ AC_MSG_RESULT(no)
  17.163 +                HAVE_EXPF_PROTOTYPE=0
  17.164 +                ])
  17.165 +
  17.166 +AC_SUBST(HAVE_LOGF_PROTOTYPE)
  17.167 +AC_SUBST(HAVE_EXPF_PROTOTYPE)
  17.168 +
  17.169 +AC_OUTPUT(Makefile siddefs-fp.h)
    18.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    18.2 +++ b/src/resid-fp/convolve-sse.cc	Sun May 11 14:09:13 2014 +0100
    18.3 @@ -0,0 +1,76 @@
    18.4 +//  ---------------------------------------------------------------------------
    18.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    18.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    18.7 +//
    18.8 +//  This program is free software; you can redistribute it and/or modify
    18.9 +//  it under the terms of the GNU General Public License as published by
   18.10 +//  the Free Software Foundation; either version 2 of the License, or
   18.11 +//  (at your option) any later version.
   18.12 +//
   18.13 +//  This program is distributed in the hope that it will be useful,
   18.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   18.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   18.16 +//  GNU General Public License for more details.
   18.17 +//
   18.18 +//  You should have received a copy of the GNU General Public License
   18.19 +//  along with this program; if not, write to the Free Software
   18.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   18.21 +//  ---------------------------------------------------------------------------
   18.22 +
   18.23 +#include "sid.h"
   18.24 +
   18.25 +#if (RESID_USE_SSE==1)
   18.26 +
   18.27 +#include <xmmintrin.h>
   18.28 +
   18.29 +float convolve_sse(const float *a, const float *b, int n)
   18.30 +{
   18.31 +    float out = 0.f;
   18.32 +    __m128 out4 = { 0, 0, 0, 0 };
   18.33 +
   18.34 +    /* examine if we can use aligned loads on both pointers */
   18.35 +    int diff = (int) (a - b) & 0xf;
   18.36 +    /* long cast is no-op for x86-32, but x86-64 gcc needs 64 bit intermediate
   18.37 +     * to convince compiler we mean this. */
   18.38 +    unsigned int a_align = (unsigned int) (unsigned long) a & 0xf;
   18.39 +
   18.40 +    /* advance if necessary. We can't let n fall < 0, so no while (n --). */
   18.41 +    while (n > 0 && a_align != 0 && a_align != 16) {
   18.42 +        out += (*(a ++)) * (*(b ++));
   18.43 +        --n;
   18.44 +        a_align += 4;
   18.45 +    }
   18.46 +
   18.47 +    int n4 = n / 4;
   18.48 +    if (diff == 0) {
   18.49 +        for (int i = 0; i < n4; i ++) {
   18.50 +            out4 = _mm_add_ps(out4, _mm_mul_ps(_mm_load_ps(a), _mm_load_ps(b)));
   18.51 +            a += 4;
   18.52 +            b += 4;
   18.53 +        }
   18.54 +    } else {
   18.55 +        /* XXX loadu is 4x slower than load, at least. We could at 4x memory
   18.56 +         * use prepare versions of b aligned for any a alignment. We could
   18.57 +         * also issue aligned loads and shuffle the halves at each iteration.
   18.58 +         * Initial results indicate only very small improvements. */
   18.59 +        for (int i = 0; i < n4; i ++) {
   18.60 +            out4 = _mm_add_ps(out4, _mm_mul_ps(_mm_load_ps(a), _mm_loadu_ps(b)));
   18.61 +            a += 4;
   18.62 +            b += 4;
   18.63 +        }
   18.64 +    }
   18.65 +
   18.66 +    out4 = _mm_add_ps(_mm_movehl_ps(out4, out4), out4);
   18.67 +    out4 = _mm_add_ss(_mm_shuffle_ps(out4, out4, 1), out4);
   18.68 +    float out_tmp;
   18.69 +    _mm_store_ss(&out_tmp, out4);
   18.70 +    out += out_tmp;
   18.71 +
   18.72 +    n &= 3;
   18.73 +    
   18.74 +    while (n --)
   18.75 +        out += (*(a ++)) * (*(b ++));
   18.76 +
   18.77 +    return out;
   18.78 +}
   18.79 +#endif
    19.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    19.2 +++ b/src/resid-fp/convolve.cc	Sun May 11 14:09:13 2014 +0100
    19.3 @@ -0,0 +1,27 @@
    19.4 +//  ---------------------------------------------------------------------------
    19.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    19.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    19.7 +//
    19.8 +//  This program is free software; you can redistribute it and/or modify
    19.9 +//  it under the terms of the GNU General Public License as published by
   19.10 +//  the Free Software Foundation; either version 2 of the License, or
   19.11 +//  (at your option) any later version.
   19.12 +//
   19.13 +//  This program is distributed in the hope that it will be useful,
   19.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   19.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   19.16 +//  GNU General Public License for more details.
   19.17 +//
   19.18 +//  You should have received a copy of the GNU General Public License
   19.19 +//  along with this program; if not, write to the Free Software
   19.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   19.21 +//  ---------------------------------------------------------------------------
   19.22 +
   19.23 +float convolve(const float *a, const float *b, int n)
   19.24 +{
   19.25 +    float out = 0.f;
   19.26 +    while (n --)
   19.27 +        out += (*(a ++)) * (*(b ++));
   19.28 +    return out;
   19.29 +}
   19.30 +
    20.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    20.2 +++ b/src/resid-fp/envelope.cc	Sun May 11 14:09:13 2014 +0100
    20.3 @@ -0,0 +1,254 @@
    20.4 +//  ---------------------------------------------------------------------------
    20.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    20.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    20.7 +//
    20.8 +//  This program is free software; you can redistribute it and/or modify
    20.9 +//  it under the terms of the GNU General Public License as published by
   20.10 +//  the Free Software Foundation; either version 2 of the License, or
   20.11 +//  (at your option) any later version.
   20.12 +//
   20.13 +//  This program is distributed in the hope that it will be useful,
   20.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   20.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   20.16 +//  GNU General Public License for more details.
   20.17 +//
   20.18 +//  You should have received a copy of the GNU General Public License
   20.19 +//  along with this program; if not, write to the Free Software
   20.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   20.21 +//  ---------------------------------------------------------------------------
   20.22 +
   20.23 +#define __ENVELOPE_CC__
   20.24 +#include "envelope.h"
   20.25 +
   20.26 +// ----------------------------------------------------------------------------
   20.27 +// Constructor.
   20.28 +// ----------------------------------------------------------------------------
   20.29 +EnvelopeGeneratorFP::EnvelopeGeneratorFP()
   20.30 +{
   20.31 +  reset();
   20.32 +}
   20.33 +
   20.34 +// ----------------------------------------------------------------------------
   20.35 +// SID reset.
   20.36 +// ----------------------------------------------------------------------------
   20.37 +void EnvelopeGeneratorFP::reset()
   20.38 +{
   20.39 +  envelope_counter = 0;
   20.40 +
   20.41 +  attack = 0;
   20.42 +  decay = 0;
   20.43 +  sustain = 0;
   20.44 +  release = 0;
   20.45 +
   20.46 +  gate = 0;
   20.47 +
   20.48 +  rate_counter = 0;
   20.49 +  exponential_counter = 0;
   20.50 +  exponential_counter_period = 1;
   20.51 +
   20.52 +  state = RELEASE;
   20.53 +  rate_period = rate_counter_period[release];
   20.54 +  hold_zero = true;
   20.55 +}
   20.56 +
   20.57 +
   20.58 +// Rate counter periods are calculated from the Envelope Rates table in
   20.59 +// the Programmer's Reference Guide. The rate counter period is the number of
   20.60 +// cycles between each increment of the envelope counter.
   20.61 +// The rates have been verified by sampling ENV3. 
   20.62 +//
   20.63 +// The rate counter is a 16 bit register which is incremented each cycle.
   20.64 +// When the counter reaches a specific comparison value, the envelope counter
   20.65 +// is incremented (attack) or decremented (decay/release) and the
   20.66 +// counter is zeroed.
   20.67 +//
   20.68 +// NB! Sampling ENV3 shows that the calculated values are not exact.
   20.69 +// It may seem like most calculated values have been rounded (.5 is rounded
   20.70 +// down) and 1 has beed added to the result. A possible explanation for this
   20.71 +// is that the SID designers have used the calculated values directly
   20.72 +// as rate counter comparison values, not considering a one cycle delay to
   20.73 +// zero the counter. This would yield an actual period of comparison value + 1.
   20.74 +//
   20.75 +// The time of the first envelope count can not be exactly controlled, except
   20.76 +// possibly by resetting the chip. Because of this we cannot do cycle exact
   20.77 +// sampling and must devise another method to calculate the rate counter
   20.78 +// periods.
   20.79 +//
   20.80 +// The exact rate counter periods can be determined e.g. by counting the number
   20.81 +// of cycles from envelope level 1 to envelope level 129, and dividing the
   20.82 +// number of cycles by 128. CIA1 timer A and B in linked mode can perform
   20.83 +// the cycle count. This is the method used to find the rates below.
   20.84 +//
   20.85 +// To avoid the ADSR delay bug, sampling of ENV3 should be done using
   20.86 +// sustain = release = 0. This ensures that the attack state will not lower
   20.87 +// the current rate counter period.
   20.88 +//
   20.89 +// The ENV3 sampling code below yields a maximum timing error of 14 cycles.
   20.90 +//     lda #$01
   20.91 +// l1: cmp $d41c
   20.92 +//     bne l1
   20.93 +//     ...
   20.94 +//     lda #$ff
   20.95 +// l2: cmp $d41c
   20.96 +//     bne l2
   20.97 +//
   20.98 +// This yields a maximum error for the calculated rate period of 14/128 cycles.
   20.99 +// The described method is thus sufficient for exact calculation of the rate
  20.100 +// periods.
  20.101 +//
  20.102 +reg16 EnvelopeGeneratorFP::rate_counter_period[] = {
  20.103 +      9,  //   2ms*1.0MHz/256 =     7.81
  20.104 +     32,  //   8ms*1.0MHz/256 =    31.25
  20.105 +     63,  //  16ms*1.0MHz/256 =    62.50
  20.106 +     95,  //  24ms*1.0MHz/256 =    93.75
  20.107 +    149,  //  38ms*1.0MHz/256 =   148.44
  20.108 +    220,  //  56ms*1.0MHz/256 =   218.75
  20.109 +    267,  //  68ms*1.0MHz/256 =   265.63
  20.110 +    313,  //  80ms*1.0MHz/256 =   312.50
  20.111 +    392,  // 100ms*1.0MHz/256 =   390.63
  20.112 +    977,  // 250ms*1.0MHz/256 =   976.56
  20.113 +   1954,  // 500ms*1.0MHz/256 =  1953.13
  20.114 +   3126,  // 800ms*1.0MHz/256 =  3125.00
  20.115 +   3907,  //   1 s*1.0MHz/256 =  3906.25
  20.116 +  11720,  //   3 s*1.0MHz/256 = 11718.75
  20.117 +  19532,  //   5 s*1.0MHz/256 = 19531.25
  20.118 +  31251   //   8 s*1.0MHz/256 = 31250.00
  20.119 +};
  20.120 +
  20.121 +
  20.122 +// For decay and release, the clock to the envelope counter is sequentially
  20.123 +// divided by 1, 2, 4, 8, 16, 30, 1 to create a piece-wise linear approximation
  20.124 +// of an exponential. The exponential counter period is loaded at the envelope
  20.125 +// counter values 255, 93, 54, 26, 14, 6, 0. The period can be different for the
  20.126 +// same envelope counter value, depending on whether the envelope has been
  20.127 +// rising (attack -> release) or sinking (decay/release).
  20.128 +//
  20.129 +// Since it is not possible to reset the rate counter (the test bit has no
  20.130 +// influence on the envelope generator whatsoever) a method must be devised to
  20.131 +// do cycle exact sampling of ENV3 to do the investigation. This is possible
  20.132 +// with knowledge of the rate period for A=0, found above.
  20.133 +//
  20.134 +// The CPU can be synchronized with ENV3 by first synchronizing with the rate
  20.135 +// counter by setting A=0 and wait in a carefully timed loop for the envelope
  20.136 +// counter _not_ to change for 9 cycles. We can then wait for a specific value
  20.137 +// of ENV3 with another timed loop to fully synchronize with ENV3.
  20.138 +//
  20.139 +// At the first period when an exponential counter period larger than one
  20.140 +// is used (decay or relase), one extra cycle is spent before the envelope is
  20.141 +// decremented. The envelope output is then delayed one cycle until the state
  20.142 +// is changed to attack. Now one cycle less will be spent before the envelope
  20.143 +// is incremented, and the situation is normalized.
  20.144 +// The delay is probably caused by the comparison with the exponential counter,
  20.145 +// and does not seem to affect the rate counter. This has been verified by
  20.146 +// timing 256 consecutive complete envelopes with A = D = R = 1, S = 0, using
  20.147 +// CIA1 timer A and B in linked mode. If the rate counter is not affected the
  20.148 +// period of each complete envelope is
  20.149 +// (255 + 162*1 + 39*2 + 28*4 + 12*8 + 8*16 + 6*30)*32 = 756*32 = 32352
  20.150 +// which corresponds exactly to the timed value divided by the number of
  20.151 +// complete envelopes.
  20.152 +// NB! This one cycle delay is not modeled.
  20.153 +
  20.154 +
  20.155 +// From the sustain levels it follows that both the low and high 4 bits of the
  20.156 +// envelope counter are compared to the 4-bit sustain value.
  20.157 +// This has been verified by sampling ENV3.
  20.158 +//
  20.159 +reg8 EnvelopeGeneratorFP::sustain_level[] = {
  20.160 +  0x00,
  20.161 +  0x11,
  20.162 +  0x22,
  20.163 +  0x33,
  20.164 +  0x44,
  20.165 +  0x55,
  20.166 +  0x66,
  20.167 +  0x77,
  20.168 +  0x88,
  20.169 +  0x99,
  20.170 +  0xaa,
  20.171 +  0xbb,
  20.172 +  0xcc,
  20.173 +  0xdd,
  20.174 +  0xee,
  20.175 +  0xff,
  20.176 +};
  20.177 +
  20.178 +
  20.179 +// ----------------------------------------------------------------------------
  20.180 +// Register functions.
  20.181 +// ----------------------------------------------------------------------------
  20.182 +void EnvelopeGeneratorFP::writeCONTROL_REG(reg8 control)
  20.183 +{
  20.184 +  reg8 gate_next = control & 0x01;
  20.185 +
  20.186 +  // The rate counter is never reset, thus there will be a delay before the
  20.187 +  // envelope counter starts counting up (attack) or down (release).
  20.188 +
  20.189 +  // Gate bit on: Start attack, decay, sustain.
  20.190 +  if (!gate && gate_next) {
  20.191 +    state = ATTACK;
  20.192 +    update_rate_period(rate_counter_period[attack]);
  20.193 +
  20.194 +    // Switching to attack state unlocks the zero freeze.
  20.195 +    hold_zero = false;
  20.196 +  }
  20.197 +  // Gate bit off: Start release.
  20.198 +  else if (gate && !gate_next) {
  20.199 +    state = RELEASE;
  20.200 +    update_rate_period(rate_counter_period[release]);
  20.201 +  }
  20.202 +
  20.203 +  gate = gate_next;
  20.204 +}
  20.205 +
  20.206 +void EnvelopeGeneratorFP::writeATTACK_DECAY(reg8 attack_decay)
  20.207 +{
  20.208 +  attack = (attack_decay >> 4) & 0x0f;
  20.209 +  decay = attack_decay & 0x0f;
  20.210 +  if (state == ATTACK) {
  20.211 +    update_rate_period(rate_counter_period[attack]);
  20.212 +  }
  20.213 +  else if (state == DECAY_SUSTAIN) {
  20.214 +    update_rate_period(rate_counter_period[decay]);
  20.215 +  }
  20.216 +}
  20.217 +
  20.218 +void EnvelopeGeneratorFP::writeSUSTAIN_RELEASE(reg8 sustain_release)
  20.219 +{
  20.220 +  sustain = (sustain_release >> 4) & 0x0f;
  20.221 +  release = sustain_release & 0x0f;
  20.222 +  if (state == RELEASE) {
  20.223 +    update_rate_period(rate_counter_period[release]);
  20.224 +  }
  20.225 +}
  20.226 +
  20.227 +reg8 EnvelopeGeneratorFP::readENV()
  20.228 +{
  20.229 +  return output();
  20.230 +}
  20.231 +
  20.232 +void EnvelopeGeneratorFP::update_rate_period(reg16 newperiod)
  20.233 +{
  20.234 +    rate_period = newperiod;
  20.235 +
  20.236 +   /* The ADSR counter is XOR shift register with 0x7fff unique values.
  20.237 +    * If the rate_period is adjusted to a value already seen in this cycle,
  20.238 +    * the register will wrap around. This is known as the ADSR delay bug.
  20.239 +    *
  20.240 +    * To simplify the hot path calculation, we simulate this through observing
  20.241 +    * that we add the 0x7fff cycle delay by changing the rate_counter variable
  20.242 +    * directly. This takes care of the 99 % common case. However, playroutine
  20.243 +    * could make multiple consequtive rate_period adjustments, in which case we
  20.244 +    * need to cancel the previous adjustment. */
  20.245 +
  20.246 +    /* if the new period exeecds 0x7fff, we need to wrap */
  20.247 +    if (rate_period - rate_counter > 0x7fff)
  20.248 +        rate_counter += 0x7fff;
  20.249 +
  20.250 +    /* simulate 0x7fff wraparound, if the period-to-be-written
  20.251 +     * is less than the current value. */
  20.252 +    if (rate_period <= rate_counter)
  20.253 +        rate_counter -= 0x7fff;
  20.254 +
  20.255 +    /* at this point it should be impossible for
  20.256 +     * rate_counter >= rate_period. If it is, there is a bug... */
  20.257 +}
    21.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    21.2 +++ b/src/resid-fp/envelope.h	Sun May 11 14:09:13 2014 +0100
    21.3 @@ -0,0 +1,174 @@
    21.4 +//  ---------------------------------------------------------------------------
    21.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    21.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    21.7 +//
    21.8 +//  This program is free software; you can redistribute it and/or modify
    21.9 +//  it under the terms of the GNU General Public License as published by
   21.10 +//  the Free Software Foundation; either version 2 of the License, or
   21.11 +//  (at your option) any later version.
   21.12 +//
   21.13 +//  This program is distributed in the hope that it will be useful,
   21.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   21.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   21.16 +//  GNU General Public License for more details.
   21.17 +//
   21.18 +//  You should have received a copy of the GNU General Public License
   21.19 +//  along with this program; if not, write to the Free Software
   21.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   21.21 +//  ---------------------------------------------------------------------------
   21.22 +
   21.23 +#ifndef __ENVELOPE_H__
   21.24 +#define __ENVELOPE_H__
   21.25 +
   21.26 +#include "siddefs-fp.h"
   21.27 +
   21.28 +// ----------------------------------------------------------------------------
   21.29 +// A 15 bit counter is used to implement the envelope rates, in effect
   21.30 +// dividing the clock to the envelope counter by the currently selected rate
   21.31 +// period.
   21.32 +// In addition, another counter is used to implement the exponential envelope
   21.33 +// decay, in effect further dividing the clock to the envelope counter.
   21.34 +// The period of this counter is set to 1, 2, 4, 8, 16, 30 at the envelope
   21.35 +// counter values 255, 93, 54, 26, 14, 6, respectively.
   21.36 +// ----------------------------------------------------------------------------
   21.37 +class EnvelopeGeneratorFP
   21.38 +{
   21.39 +public:
   21.40 +  EnvelopeGeneratorFP();
   21.41 +
   21.42 +  enum State { ATTACK, DECAY_SUSTAIN, RELEASE };
   21.43 +
   21.44 +  RESID_INLINE void clock();
   21.45 +  void reset();
   21.46 +
   21.47 +  void writeCONTROL_REG(reg8);
   21.48 +  void writeATTACK_DECAY(reg8);
   21.49 +  void writeSUSTAIN_RELEASE(reg8);
   21.50 +  reg8 readENV();
   21.51 +
   21.52 +  // 8-bit envelope output.
   21.53 +  RESID_INLINE reg8 output();
   21.54 +
   21.55 +protected:
   21.56 +  void update_rate_period(reg16 period);
   21.57 +
   21.58 +  int rate_counter;
   21.59 +  int rate_period;
   21.60 +  reg8 exponential_counter;
   21.61 +  reg8 exponential_counter_period;
   21.62 +  reg8 envelope_counter;
   21.63 +  bool hold_zero;
   21.64 +
   21.65 +  reg4 attack;
   21.66 +  reg4 decay;
   21.67 +  reg4 sustain;
   21.68 +  reg4 release;
   21.69 +
   21.70 +  reg8 gate;
   21.71 +
   21.72 +  State state;
   21.73 +
   21.74 +  // Lookup table to convert from attack, decay, or release value to rate
   21.75 +  // counter period.
   21.76 +  static reg16 rate_counter_period[];
   21.77 +
   21.78 +  // The 16 selectable sustain levels.
   21.79 +  static reg8 sustain_level[];
   21.80 +
   21.81 +friend class SIDFP;
   21.82 +};
   21.83 +
   21.84 +
   21.85 +// ----------------------------------------------------------------------------
   21.86 +// SID clocking - 1 cycle.
   21.87 +// ----------------------------------------------------------------------------
   21.88 +RESID_INLINE
   21.89 +void EnvelopeGeneratorFP::clock()
   21.90 +{
   21.91 +  if (++ rate_counter != rate_period)
   21.92 +    return;
   21.93 +
   21.94 +  rate_counter = 0;
   21.95 +
   21.96 +  // The first envelope step in the attack state also resets the exponential
   21.97 +  // counter. This has been verified by sampling ENV3.
   21.98 +  //
   21.99 +  if (state == ATTACK || ++exponential_counter == exponential_counter_period)
  21.100 +  {
  21.101 +    exponential_counter = 0;
  21.102 +
  21.103 +    // Check whether the envelope counter is frozen at zero.
  21.104 +    if (hold_zero) {
  21.105 +      return;
  21.106 +    }
  21.107 +
  21.108 +    switch (state) {
  21.109 +    case ATTACK:
  21.110 +      // The envelope counter can flip from 0xff to 0x00 by changing state to
  21.111 +      // release, then to attack. The envelope counter is then frozen at
  21.112 +      // zero; to unlock this situation the state must be changed to release,
  21.113 +      // then to attack. This has been verified by sampling ENV3.
  21.114 +      //
  21.115 +      ++envelope_counter &= 0xff;
  21.116 +      if (envelope_counter == 0xff) {
  21.117 +        state = DECAY_SUSTAIN;
  21.118 +        update_rate_period(rate_counter_period[decay]);
  21.119 +      }
  21.120 +      break;
  21.121 +    case DECAY_SUSTAIN:
  21.122 +      if (envelope_counter != sustain_level[sustain]) {
  21.123 +        --envelope_counter;
  21.124 +      }
  21.125 +      break;
  21.126 +    case RELEASE:
  21.127 +      // The envelope counter can flip from 0x00 to 0xff by changing state to
  21.128 +      // attack, then to release. The envelope counter will then continue
  21.129 +      // counting down in the release state.
  21.130 +      // This has been verified by sampling ENV3.
  21.131 +      // NB! The operation below requires two's complement integer.
  21.132 +      //
  21.133 +      --envelope_counter &= 0xff;
  21.134 +      break;
  21.135 +    }
  21.136 +    
  21.137 +    // Check for change of exponential counter period.
  21.138 +    switch (envelope_counter) {
  21.139 +    case 0xff:
  21.140 +      exponential_counter_period = 1;
  21.141 +      break;
  21.142 +    case 0x5d:
  21.143 +      exponential_counter_period = 2;
  21.144 +      break;
  21.145 +    case 0x36:
  21.146 +      exponential_counter_period = 4;
  21.147 +      break;
  21.148 +    case 0x1a:
  21.149 +      exponential_counter_period = 8;
  21.150 +      break;
  21.151 +    case 0x0e:
  21.152 +      exponential_counter_period = 16;
  21.153 +      break;
  21.154 +    case 0x06:
  21.155 +      exponential_counter_period = 30;
  21.156 +      break;
  21.157 +    case 0x00:
  21.158 +      exponential_counter_period = 1;
  21.159 +
  21.160 +      // When the envelope counter is changed to zero, it is frozen at zero.
  21.161 +      // This has been verified by sampling ENV3.
  21.162 +      hold_zero = true;
  21.163 +      break;
  21.164 +    }
  21.165 +  }
  21.166 +}
  21.167 +
  21.168 +// ----------------------------------------------------------------------------
  21.169 +// Read the envelope generator output.
  21.170 +// ----------------------------------------------------------------------------
  21.171 +RESID_INLINE
  21.172 +reg8 EnvelopeGeneratorFP::output()
  21.173 +{
  21.174 +  return envelope_counter;
  21.175 +}
  21.176 +
  21.177 +#endif // not __ENVELOPE_H__
    22.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    22.2 +++ b/src/resid-fp/extfilt.cc	Sun May 11 14:09:13 2014 +0100
    22.3 @@ -0,0 +1,94 @@
    22.4 +//  ---------------------------------------------------------------------------
    22.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    22.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    22.7 +//
    22.8 +//  This program is free software; you can redistribute it and/or modify
    22.9 +//  it under the terms of the GNU General Public License as published by
   22.10 +//  the Free Software Foundation; either version 2 of the License, or
   22.11 +//  (at your option) any later version.
   22.12 +//
   22.13 +//  This program is distributed in the hope that it will be useful,
   22.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   22.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   22.16 +//  GNU General Public License for more details.
   22.17 +//
   22.18 +//  You should have received a copy of the GNU General Public License
   22.19 +//  along with this program; if not, write to the Free Software
   22.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   22.21 +//  ---------------------------------------------------------------------------
   22.22 +
   22.23 +#define __EXTFILT_CC__
   22.24 +#include "extfilt.h"
   22.25 +
   22.26 +// ----------------------------------------------------------------------------
   22.27 +// Constructor.
   22.28 +// ----------------------------------------------------------------------------
   22.29 +ExternalFilterFP::ExternalFilterFP()
   22.30 +{
   22.31 +  reset();
   22.32 +  enable_filter(true);
   22.33 +  set_chip_model(MOS6581FP);
   22.34 +  set_clock_frequency(1e6f);
   22.35 +  set_sampling_parameter(15915.6f);
   22.36 +}
   22.37 +
   22.38 +
   22.39 +// ----------------------------------------------------------------------------
   22.40 +// Enable filter.
   22.41 +// ----------------------------------------------------------------------------
   22.42 +void ExternalFilterFP::enable_filter(bool enable)
   22.43 +{
   22.44 +  enabled = enable;
   22.45 +}
   22.46 +
   22.47 +// ----------------------------------------------------------------------------
   22.48 +// Setup of the external filter sampling parameters.
   22.49 +// ----------------------------------------------------------------------------
   22.50 +void ExternalFilterFP::set_clock_frequency(float clock)
   22.51 +{
   22.52 +  clock_frequency = clock;
   22.53 +  _set_sampling_parameter();
   22.54 +}
   22.55 +
   22.56 +void ExternalFilterFP::set_sampling_parameter(float freq)
   22.57 +{
   22.58 +  pass_frequency = freq;
   22.59 +  _set_sampling_parameter();
   22.60 +}
   22.61 +
   22.62 +void ExternalFilterFP::_set_sampling_parameter()
   22.63 +{
   22.64 +  // Low-pass:  R = 10kOhm, C = 1000pF; w0l = 1/RC = 1/(1e4*1e-9) = 100000
   22.65 +  // High-pass: R =  1kOhm, C =   10uF; w0h = 1/RC = 1/(1e3*1e-5) =    100
   22.66 +  w0hp = 100.f / clock_frequency;
   22.67 +  w0lp = pass_frequency * 2.f * M_PI_f / clock_frequency;
   22.68 +}
   22.69 +
   22.70 +// ----------------------------------------------------------------------------
   22.71 +// Set chip model.
   22.72 +// ----------------------------------------------------------------------------
   22.73 +void ExternalFilterFP::set_chip_model(chip_model model)
   22.74 +{
   22.75 +  if (model == MOS6581FP) {
   22.76 +    // Approximate the DC output level to be removed if the external
   22.77 +    // filter is turned off. (0x800 - wave_zero + voice DC) * maxenv * voices
   22.78 +    //  - extin offset...
   22.79 +    mixer_DC = (-0x600 + 0x800) * 0xff * 3 - 0x20000;
   22.80 +  }
   22.81 +  else {
   22.82 +    // No DC offsets in the MOS8580.
   22.83 +    mixer_DC = 0;
   22.84 +  }
   22.85 +}
   22.86 +
   22.87 +
   22.88 +// ----------------------------------------------------------------------------
   22.89 +// SID reset.
   22.90 +// ----------------------------------------------------------------------------
   22.91 +void ExternalFilterFP::reset()
   22.92 +{
   22.93 +  // State of filter.
   22.94 +  Vlp = 0;
   22.95 +  Vhp = 0;
   22.96 +  Vo = 0;
   22.97 +}
    23.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    23.2 +++ b/src/resid-fp/extfilt.h	Sun May 11 14:09:13 2014 +0100
    23.3 @@ -0,0 +1,120 @@
    23.4 +//  ---------------------------------------------------------------------------
    23.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    23.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    23.7 +//
    23.8 +//  This program is free software; you can redistribute it and/or modify
    23.9 +//  it under the terms of the GNU General Public License as published by
   23.10 +//  the Free Software Foundation; either version 2 of the License, or
   23.11 +//  (at your option) any later version.
   23.12 +//
   23.13 +//  This program is distributed in the hope that it will be useful,
   23.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   23.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   23.16 +//  GNU General Public License for more details.
   23.17 +//
   23.18 +//  You should have received a copy of the GNU General Public License
   23.19 +//  along with this program; if not, write to the Free Software
   23.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   23.21 +//  ---------------------------------------------------------------------------
   23.22 +
   23.23 +#ifndef __EXTFILT_H__
   23.24 +#define __EXTFILT_H__
   23.25 +
   23.26 +#include <math.h>
   23.27 +
   23.28 +#include "siddefs-fp.h"
   23.29 +
   23.30 +// ----------------------------------------------------------------------------
   23.31 +// The audio output stage in a Commodore 64 consists of two STC networks,
   23.32 +// a low-pass filter with 3-dB frequency 16kHz followed by a high-pass
   23.33 +// filter with 3-dB frequency 16Hz (the latter provided an audio equipment
   23.34 +// input impedance of 1kOhm).
   23.35 +// The STC networks are connected with a BJT supposedly meant to act as
   23.36 +// a unity gain buffer, which is not really how it works. A more elaborate
   23.37 +// model would include the BJT, however DC circuit analysis yields BJT
   23.38 +// base-emitter and emitter-base impedances sufficiently low to produce
   23.39 +// additional low-pass and high-pass 3dB-frequencies in the order of hundreds
   23.40 +// of kHz. This calls for a sampling frequency of several MHz, which is far
   23.41 +// too high for practical use.
   23.42 +// ----------------------------------------------------------------------------
   23.43 +class ExternalFilterFP
   23.44 +{
   23.45 +public:
   23.46 +  ExternalFilterFP();
   23.47 +
   23.48 +  void enable_filter(bool enable);
   23.49 +  void set_sampling_parameter(float pass_freq);
   23.50 +  void set_chip_model(chip_model model);
   23.51 +  void set_clock_frequency(float);
   23.52 +
   23.53 +  RESID_INLINE void clock(float Vi);
   23.54 +  void reset();
   23.55 +
   23.56 +  // Audio output (20 bits).
   23.57 +  RESID_INLINE float output();
   23.58 +
   23.59 +private:
   23.60 +  void _set_sampling_parameter();
   23.61 +  void nuke_denormals();
   23.62 +
   23.63 +  // Filter enabled.
   23.64 +  bool enabled;
   23.65 +
   23.66 +  // Maximum mixer DC offset.
   23.67 +  float mixer_DC;
   23.68 +
   23.69 +  // Relevant clocks
   23.70 +  float clock_frequency, pass_frequency;
   23.71 +
   23.72 +  // State of filters.
   23.73 +  float Vlp; // lowpass
   23.74 +  float Vhp; // highpass
   23.75 +  float Vo;
   23.76 +
   23.77 +  // Cutoff frequencies.
   23.78 +  float w0lp;
   23.79 +  float w0hp;
   23.80 +
   23.81 +friend class SIDFP;
   23.82 +};
   23.83 +
   23.84 +// ----------------------------------------------------------------------------
   23.85 +// SID clocking - 1 cycle.
   23.86 +// ----------------------------------------------------------------------------
   23.87 +RESID_INLINE
   23.88 +void ExternalFilterFP::clock(float Vi)
   23.89 +{
   23.90 +  // This is handy for testing.
   23.91 +  if (! enabled) {
   23.92 +    // Remove maximum DC level since there is no filter to do it.
   23.93 +    Vlp = Vhp = 0.f;
   23.94 +    Vo = Vi - mixer_DC;
   23.95 +    return;
   23.96 +  }
   23.97 +
   23.98 +  float dVlp = w0lp * (Vi - Vlp);
   23.99 +  float dVhp = w0hp * (Vlp - Vhp);
  23.100 +  Vo = Vlp - Vhp;
  23.101 +  Vlp += dVlp;
  23.102 +  Vhp += dVhp;
  23.103 +}
  23.104 +
  23.105 +// ----------------------------------------------------------------------------
  23.106 +// Audio output (19.5 bits).
  23.107 +// ----------------------------------------------------------------------------
  23.108 +RESID_INLINE
  23.109 +float ExternalFilterFP::output()
  23.110 +{
  23.111 +  return Vo;
  23.112 +}
  23.113 +
  23.114 +RESID_INLINE
  23.115 +void ExternalFilterFP::nuke_denormals()
  23.116 +{
  23.117 +    if (Vhp > -1e-12f && Vhp < 1e-12f)
  23.118 +        Vhp = 0;
  23.119 +    if (Vlp > -1e-12f && Vlp < 1e-12f)
  23.120 +        Vlp = 0;
  23.121 +}
  23.122 +
  23.123 +#endif // not __EXTFILT_H__
    24.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    24.2 +++ b/src/resid-fp/filter.cc	Sun May 11 14:09:13 2014 +0100
    24.3 @@ -0,0 +1,194 @@
    24.4 +//  ---------------------------------------------------------------------------
    24.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    24.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    24.7 +//
    24.8 +//  This program is free software; you can redistribute it and/or modify
    24.9 +//  it under the terms of the GNU General Public License as published by
   24.10 +//  the Free Software Foundation; either version 2 of the License, or
   24.11 +//  (at your option) any later version.
   24.12 +//
   24.13 +//  This program is distributed in the hope that it will be useful,
   24.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   24.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   24.16 +//  GNU General Public License for more details.
   24.17 +//
   24.18 +//  You should have received a copy of the GNU General Public License
   24.19 +//  along with this program; if not, write to the Free Software
   24.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   24.21 +//  ---------------------------------------------------------------------------
   24.22 +//  Filter distortion code written by Antti S. Lankila 2007 - 2008.
   24.23 +
   24.24 +#define __FILTER_CC__
   24.25 +#include "filter.h"
   24.26 +#include "sid.h"
   24.27 +  
   24.28 +#ifndef HAVE_LOGF_PROTOTYPE
   24.29 +extern float logf(float val);
   24.30 +#endif
   24.31 +
   24.32 +#ifndef HAVE_EXPF_PROTOTYPE
   24.33 +extern float expf(float val);
   24.34 +#endif
   24.35 +
   24.36 +#ifndef HAVE_LOGF
   24.37 +float logf(float val)
   24.38 +{
   24.39 +    return (float)log((double)val);
   24.40 +}
   24.41 +#endif
   24.42 +
   24.43 +#ifndef HAVE_EXPF
   24.44 +float expf(float val)
   24.45 +{
   24.46 +    return (float)exp((double)val);
   24.47 +}
   24.48 +#endif
   24.49 +
   24.50 +// ----------------------------------------------------------------------------
   24.51 +// Constructor.
   24.52 +// ----------------------------------------------------------------------------
   24.53 +FilterFP::FilterFP()
   24.54 +{
   24.55 +  model = (chip_model) 0; // neither 6581/8580; init time only
   24.56 +  enable_filter(true);
   24.57 +  /* approximate; sid.cc calls us when set_sampling_parameters() occurs. */
   24.58 +  set_clock_frequency(1e6f);
   24.59 +  /* these parameters are a work-in-progress. */
   24.60 +  set_distortion_properties(2.5e-3f, 1536.f, 1e-4f);
   24.61 +  /* sound similar to alankila6581r4ar3789 */
   24.62 +  set_type3_properties(1.40e6f, 1.47e8f, 1.0059f, 1.55e4f);
   24.63 +  /* sound similar to trurl8580r5_3691 */
   24.64 +  set_type4_properties(6.55f, 20.f);
   24.65 +  reset();
   24.66 +  set_chip_model(MOS6581FP);
   24.67 +}
   24.68 +
   24.69 +
   24.70 +// ----------------------------------------------------------------------------
   24.71 +// Enable filter.
   24.72 +// ----------------------------------------------------------------------------
   24.73 +void FilterFP::enable_filter(bool enable)
   24.74 +{
   24.75 +  enabled = enable;
   24.76 +}
   24.77 +
   24.78 +
   24.79 +// ----------------------------------------------------------------------------
   24.80 +// Set chip model.
   24.81 +// ----------------------------------------------------------------------------
   24.82 +void FilterFP::set_chip_model(chip_model model)
   24.83 +{
   24.84 +    this->model = model;
   24.85 +    set_Q();
   24.86 +    set_w0();
   24.87 +}
   24.88 +
   24.89 +/* dist_CT eliminates 1/x at hot spot */
   24.90 +void FilterFP::set_clock_frequency(float clock) {
   24.91 +    clock_frequency = clock;
   24.92 +    calculate_helpers();
   24.93 +}
   24.94 +
   24.95 +void FilterFP::set_distortion_properties(float r, float p, float cft)
   24.96 +{
   24.97 +    distortion_rate = r;
   24.98 +    distortion_point = p;
   24.99 +    /* baseresistance is used to determine material resistivity later */
  24.100 +    distortion_cf_threshold = cft;
  24.101 +    calculate_helpers();
  24.102 +}
  24.103 +
  24.104 +void FilterFP::set_type4_properties(float k, float b)
  24.105 +{
  24.106 +    type4_k = k;
  24.107 +    type4_b = b;
  24.108 +}
  24.109 +
  24.110 +void FilterFP::set_type3_properties(float br, float o, float s, float mfr)
  24.111 +{
  24.112 +    type3_baseresistance = br;
  24.113 +    type3_offset = o;
  24.114 +    type3_steepness = -logf(s); /* s^x to e^(x*ln(s)), 1/e^x == e^-x. */
  24.115 +    type3_minimumfetresistance = mfr;
  24.116 +}
  24.117 +
  24.118 +void FilterFP::calculate_helpers()
  24.119 +{
  24.120 +    if (clock_frequency != 0.f)
  24.121 +        distortion_CT = 1.f / (sidcaps_6581 * clock_frequency);
  24.122 +    set_w0();
  24.123 +}
  24.124 +
  24.125 +// ----------------------------------------------------------------------------
  24.126 +// SID reset.
  24.127 +// ----------------------------------------------------------------------------
  24.128 +void FilterFP::reset()
  24.129 +{
  24.130 +  fc = 0;
  24.131 +  res = filt = voice3off = hp_bp_lp = 0; 
  24.132 +  vol = 0;
  24.133 +  volf = Vhp = Vbp = Vlp = 0;
  24.134 +  set_w0();
  24.135 +  set_Q();
  24.136 +}
  24.137 +
  24.138 +// ----------------------------------------------------------------------------
  24.139 +// Register functions.
  24.140 +// ----------------------------------------------------------------------------
  24.141 +void FilterFP::writeFC_LO(reg8 fc_lo)
  24.142 +{
  24.143 +  fc = (fc & 0x7f8) | (fc_lo & 0x007);
  24.144 +  set_w0();
  24.145 +}
  24.146 +
  24.147 +void FilterFP::writeFC_HI(reg8 fc_hi)
  24.148 +{
  24.149 +  fc = ((fc_hi << 3) & 0x7f8) | (fc & 0x007);
  24.150 +  set_w0();
  24.151 +}
  24.152 +
  24.153 +void FilterFP::writeRES_FILT(reg8 res_filt)
  24.154 +{
  24.155 +  res = (res_filt >> 4) & 0x0f;
  24.156 +  set_Q();
  24.157 +
  24.158 +  filt = res_filt & 0x0f;
  24.159 +}
  24.160 +
  24.161 +void FilterFP::writeMODE_VOL(reg8 mode_vol)
  24.162 +{
  24.163 +  voice3off = mode_vol & 0x80;
  24.164 +
  24.165 +  hp_bp_lp = (mode_vol >> 4) & 0x07;
  24.166 +
  24.167 +  vol = mode_vol & 0x0f;
  24.168 +  volf = (float) vol / 15.f;
  24.169 +}
  24.170 +
  24.171 +// Set filter cutoff frequency.
  24.172 +void FilterFP::set_w0()
  24.173 +{
  24.174 +  if (model == MOS6581FP) {
  24.175 +    /* div once by extra kinkiness because I fitted the type3 eq with that variant. */
  24.176 +    float type3_fc_kink = SIDFP::kinked_dac(fc, kinkiness, 11) / kinkiness;
  24.177 +    type3_fc_kink_exp = type3_offset * expf(type3_fc_kink * type3_steepness);
  24.178 +    if (distortion_rate != 0.f) {
  24.179 +        type3_fc_distortion_offset_hp = (distortion_point - type3_fc_kink) * (0.5f) / distortion_rate;
  24.180 +        type3_fc_distortion_offset_bp = type3_fc_distortion_offset_hp;
  24.181 +    }
  24.182 +    else {
  24.183 +        type3_fc_distortion_offset_bp = 9e9f;
  24.184 +        type3_fc_distortion_offset_hp = 9e9f;
  24.185 +    }
  24.186 +  }
  24.187 +  if (model == MOS8580FP) {
  24.188 +    type4_w0_cache = type4_w0();
  24.189 +  }
  24.190 +}
  24.191 +
  24.192 +// Set filter resonance.
  24.193 +void FilterFP::set_Q()
  24.194 +{
  24.195 +  float Q = res / 15.f;
  24.196 +  _1_div_Q = 1.f / (0.707f + Q * 1.5f);
  24.197 +}
    25.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    25.2 +++ b/src/resid-fp/filter.h	Sun May 11 14:09:13 2014 +0100
    25.3 @@ -0,0 +1,383 @@
    25.4 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    25.5 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    25.6 +//
    25.7 +//  This program is free software; you can redistribute it and/or modify
    25.8 +//  it under the terms of the GNU General Public License as published by
    25.9 +//  the Free Software Foundation; either version 2 of the License, or
   25.10 +//  (at your option) any later version.
   25.11 +//
   25.12 +//  This program is distributed in the hope that it will be useful,
   25.13 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   25.14 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   25.15 +//  GNU General Public License for more details.
   25.16 +//
   25.17 +//  You should have received a copy of the GNU General Public License
   25.18 +//  along with this program; if not, write to the Free Software
   25.19 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   25.20 +//  ---------------------------------------------------------------------------
   25.21 +//  Filter distortion code written by Antti S. Lankila 2007 - 2008.
   25.22 +
   25.23 +#ifndef __FILTER_H__
   25.24 +#define __FILTER_H__
   25.25 +
   25.26 +#include <math.h>
   25.27 +#include "siddefs-fp.h"
   25.28 +
   25.29 +// ----------------------------------------------------------------------------
   25.30 +// The SID filter is modeled with a two-integrator-loop biquadratic filter,
   25.31 +// which has been confirmed by Bob Yannes to be the actual circuit used in
   25.32 +// the SID chip.
   25.33 +//
   25.34 +// Measurements show that excellent emulation of the SID filter is achieved,
   25.35 +// except when high resonance is combined with high sustain levels.
   25.36 +// In this case the SID op-amps are performing less than ideally and are
   25.37 +// causing some peculiar behavior of the SID filter. This however seems to
   25.38 +// have more effect on the overall amplitude than on the color of the sound.
   25.39 +//
   25.40 +// The theory for the filter circuit can be found in "Microelectric Circuits"
   25.41 +// by Adel S. Sedra and Kenneth C. Smith.
   25.42 +// The circuit is modeled based on the explanation found there except that
   25.43 +// an additional inverter is used in the feedback from the bandpass output,
   25.44 +// allowing the summer op-amp to operate in single-ended mode. This yields
   25.45 +// inverted filter outputs with levels independent of Q, which corresponds with
   25.46 +// the results obtained from a real SID.
   25.47 +//
   25.48 +// We have been able to model the summer and the two integrators of the circuit
   25.49 +// to form components of an IIR filter.
   25.50 +// Vhp is the output of the summer, Vbp is the output of the first integrator,
   25.51 +// and Vlp is the output of the second integrator in the filter circuit.
   25.52 +//
   25.53 +// According to Bob Yannes, the active stages of the SID filter are not really
   25.54 +// op-amps. Rather, simple NMOS inverters are used. By biasing an inverter
   25.55 +// into its region of quasi-linear operation using a feedback resistor from
   25.56 +// input to output, a MOS inverter can be made to act like an op-amp for
   25.57 +// small signals centered around the switching threshold.
   25.58 +//
   25.59 +// Qualified guesses at SID filter schematics are depicted below.
   25.60 +//
   25.61 +// SID filter
   25.62 +// ----------
   25.63 +// 
   25.64 +//     -----------------------------------------------
   25.65 +//    |                                               |
   25.66 +//    |            ---Rq--                            |
   25.67 +//    |           |       |                           |
   25.68 +//    |  ------------<A]-----R1---------              |
   25.69 +//    | |                               |             |
   25.70 +//    | |                        ---C---|      ---C---|
   25.71 +//    | |                       |       |     |       |
   25.72 +//    |  --R1--    ---R1--      |---Rs--|     |---Rs--| 
   25.73 +//    |        |  |       |     |       |     |       |
   25.74 +//     ----R1--|-----[A>--|--R-----[A>--|--R-----[A>--|
   25.75 +//             |          |             |             |
   25.76 +// vi -----R1--           |             |             |
   25.77 +// 
   25.78 +//                       vhp           vbp           vlp
   25.79 +// 
   25.80 +// 
   25.81 +// vi  - input voltage
   25.82 +// vhp - highpass output
   25.83 +// vbp - bandpass output
   25.84 +// vlp - lowpass output
   25.85 +// [A> - op-amp
   25.86 +// R1  - summer resistor
   25.87 +// Rq  - resistor array controlling resonance (4 resistors)
   25.88 +// R   - NMOS FET voltage controlled resistor controlling cutoff frequency
   25.89 +// Rs  - shunt resitor
   25.90 +// C   - capacitor
   25.91 +// 
   25.92 +// 
   25.93 +// 
   25.94 +// SID integrator
   25.95 +// --------------
   25.96 +// 
   25.97 +//                                   V+
   25.98 +// 
   25.99 +//                                   |
  25.100 +//                                   |
  25.101 +//                              -----|
  25.102 +//                             |     |
  25.103 +//                             | ||--
  25.104 +//                              -||
  25.105 +//                   ---C---     ||->
  25.106 +//                  |       |        |
  25.107 +//                  |---Rs-----------|---- vo
  25.108 +//                  |                |
  25.109 +//                  |            ||--
  25.110 +// vi ----     -----|------------||
  25.111 +//        |   ^     |            ||->
  25.112 +//        |___|     |                |
  25.113 +//        -----     |                |
  25.114 +//          |       |                |
  25.115 +//          |---R2--                 |
  25.116 +//          |
  25.117 +//          R1                       V-
  25.118 +//          |
  25.119 +//          |
  25.120 +// 
  25.121 +//          Vw
  25.122 +//
  25.123 +// ----------------------------------------------------------------------------
  25.124 +class FilterFP
  25.125 +{
  25.126 +public:
  25.127 +  FilterFP();
  25.128 +
  25.129 +  void enable_filter(bool enable);
  25.130 +  void set_chip_model(chip_model model);
  25.131 +  void set_distortion_properties(float, float, float);
  25.132 +  void set_type3_properties(float, float, float, float);
  25.133 +  void set_type4_properties(float, float);
  25.134 +  void set_clock_frequency(float);
  25.135 +
  25.136 +  RESID_INLINE
  25.137 +  float clock(float voice1, float voice2, float voice3,
  25.138 +              float ext_in);
  25.139 +  void reset();
  25.140 +
  25.141 +  // Write registers.
  25.142 +  void writeFC_LO(reg8);
  25.143 +  void writeFC_HI(reg8);
  25.144 +  void writeRES_FILT(reg8);
  25.145 +  void writeMODE_VOL(reg8);
  25.146 +
  25.147 +private:
  25.148 +  void set_Q();
  25.149 +  void set_w0();
  25.150 +  float type3_w0(const float source, const float offset);
  25.151 +  float type4_w0();
  25.152 +  void calculate_helpers();
  25.153 +  void nuke_denormals();
  25.154 +
  25.155 +  // Filter enabled.
  25.156 +  bool enabled;
  25.157 +
  25.158 +  // 6581/8580 filter model (XXX: we should specialize in separate classes)
  25.159 +  chip_model model;
  25.160 +
  25.161 +  // Filter cutoff frequency.
  25.162 +  reg12 fc;
  25.163 +
  25.164 +  // Filter resonance.
  25.165 +  reg8 res;
  25.166 +
  25.167 +  // Selects which inputs to route through filter.
  25.168 +  reg8 filt;
  25.169 +
  25.170 +  // Switch voice 3 off.
  25.171 +  reg8 voice3off;
  25.172 +
  25.173 +  // Highpass, bandpass, and lowpass filter modes.
  25.174 +  reg8 hp_bp_lp;
  25.175 +
  25.176 +  // Output master volume.
  25.177 +  reg4 vol;
  25.178 +  float volf; /* avoid integer-to-float conversion at output */
  25.179 +
  25.180 +  // clock
  25.181 +  float clock_frequency;
  25.182 +
  25.183 +  /* Distortion params for Type3 */
  25.184 +  float distortion_rate, distortion_point, distortion_cf_threshold;
  25.185 +
  25.186 +  /* Type3 params. */
  25.187 +  float type3_baseresistance, type3_offset, type3_steepness, type3_minimumfetresistance;
  25.188 +
  25.189 +  /* Type4 params */
  25.190 +  float type4_k, type4_b;
  25.191 +
  25.192 +  // State of filter.
  25.193 +  float Vhp, Vbp, Vlp;
  25.194 +
  25.195 +  /* Resonance/Distortion/Type3/Type4 helpers. */
  25.196 +  float type4_w0_cache, _1_div_Q, type3_fc_kink_exp, distortion_CT,
  25.197 +        type3_fc_distortion_offset_bp, type3_fc_distortion_offset_hp;
  25.198 +
  25.199 +friend class SIDFP;
  25.200 +};
  25.201 +
  25.202 +// ----------------------------------------------------------------------------
  25.203 +// Inline functions.
  25.204 +// The following functions are defined inline because they are called every
  25.205 +// time a sample is calculated.
  25.206 +// ----------------------------------------------------------------------------
  25.207 +
  25.208 +/* kinkiness of DAC:
  25.209 + * some chips have more, some less. We should make this tunable. */
  25.210 +const float kinkiness = 0.966f;
  25.211 +const float sidcaps_6581 = 470e-12f;
  25.212 +const float outputleveldifference_lp_bp = 1.4f;
  25.213 +const float outputleveldifference_bp_hp = 1.2f;
  25.214 +
  25.215 +RESID_INLINE
  25.216 +static float fastexp(float val) {
  25.217 +    typedef union {
  25.218 +        int i;
  25.219 +        float f;
  25.220 +    } conv;
  25.221 +
  25.222 +    conv tmp;
  25.223 +
  25.224 +    /* single precision fp has 1 + 8 + 23 bits, exponent bias is 127.
  25.225 +     * It therefore follows that we need to shift left by 23 bits, and to
  25.226 +     * calculate exp(x) instead of pow(2, x) we divide the power by ln(2). */
  25.227 +    const float a = (1 << 23) / M_LN2_f;
  25.228 +    /* The other factor corrects for the exponent bias so that 2^0 = 1. */
  25.229 +    const float b = (1 << 23) * 127;
  25.230 +    /* According to "A Fast, Compact Approximation of the Exponential Function"
  25.231 +     * by Nicol N. Schraudolph, 60801.48 yields the minimum RMS error for the
  25.232 +     * piecewise-linear approximation when using doubles (20 bits residual).
  25.233 +     * We have 23 bits, so we scale this value by 8. */
  25.234 +    const float c = 60801.48f * 8.f + 0.5f;
  25.235 +
  25.236 +    /* Parenthesis are important: C standard disallows folding subtraction.
  25.237 +     * Unfortunately GCC appears to generate a write to memory rather than
  25.238 +     * handle this conversion entirely in registers. */
  25.239 +    tmp.i = (int)(a * val + (b - c));
  25.240 +    return tmp.f;
  25.241 +}
  25.242 +
  25.243 +RESID_INLINE
  25.244 +float FilterFP::type3_w0(const float source, const float distoffset)
  25.245 +{
  25.246 +    /* The distortion appears to be the result of MOSFET entering saturation
  25.247 +     * mode. The conductance of a FET is proportional to:
  25.248 +     *
  25.249 +     * ohmic = 2 * (Vgs - Vt) * Vds - Vds^2
  25.250 +     * saturation = (Vgs - Vt)^2
  25.251 +     *
  25.252 +     * The FET switches to saturation mode when Vgs - Vt < Vds.
  25.253 +     *
  25.254 +     * In the circuit, the Vgs is mixed with the Vds signal, which gives
  25.255 +     * (Vgs + Vds) / 2 as the gate voltage. Doing the substitutions we get:
  25.256 +     *
  25.257 +     * ohmic = 2 * ((Vgs + Vds) / 2 - Vt) * Vds - Vds^2 = (Vgs - Vt) * Vds
  25.258 +     * saturation = ((Vgs + Vds) / 2 - Vt)^2
  25.259 +     *
  25.260 +     * Therefore: once the Vds crosses a threshold given by the gate and
  25.261 +     * threshold FET conductance begins to increase faster. The exact shape
  25.262 +     * for this effect is a parabola.
  25.263 +     *
  25.264 +     * The scaling term here tries to match the FC control level with
  25.265 +     * the signal level in simulation. On the chip, the FC control is
  25.266 +     * biased by forcing its highest DAC bit in the 1 position, thus
  25.267 +     * limiting the electrical range to half. Therefore one can guess that
  25.268 +     * the real FC range is half of the full voice range.
  25.269 +     *
  25.270 +     * On the simulation, FC goes to 2047 and the voices to 4095 * 255.
  25.271 +     * If the FC control was intact, then the scaling factor would be
  25.272 +     * 1/512. (Simulation voices are 512 times "louder" intrinsically.)
  25.273 +     * As the real chip's FC has reduced range, the scaling required to
  25.274 +     * match levels is 1/256. */
  25.275 +
  25.276 +    float fetresistance = type3_fc_kink_exp;
  25.277 +    if (source > distoffset) {
  25.278 +        const float dist = source - distoffset;
  25.279 +        fetresistance *= fastexp(dist * type3_steepness * distortion_rate);
  25.280 +    }
  25.281 +    const float dynamic_resistance = type3_minimumfetresistance + fetresistance;
  25.282 +
  25.283 +    /* 2 parallel resistors */
  25.284 +    const float _1_div_resistance = (type3_baseresistance + dynamic_resistance) / (type3_baseresistance * dynamic_resistance);
  25.285 +    /* 1.f / (clock * caps * resistance) */
  25.286 +    return distortion_CT * _1_div_resistance;
  25.287 +}
  25.288 +
  25.289 +RESID_INLINE
  25.290 +float FilterFP::type4_w0()
  25.291 +{
  25.292 +    const float freq = type4_k * fc + type4_b;
  25.293 +    return 2.f * M_PI_f * freq / clock_frequency;
  25.294 +}
  25.295 +
  25.296 +// ----------------------------------------------------------------------------
  25.297 +// SID clocking - 1 cycle.
  25.298 +// ----------------------------------------------------------------------------
  25.299 +RESID_INLINE
  25.300 +float FilterFP::clock(float voice1,
  25.301 +                   float voice2,
  25.302 +                   float voice3,
  25.303 +                   float ext_in)
  25.304 +{
  25.305 +    /* Avoid denormal numbers by using small offsets from 0 */
  25.306 +    float Vi = 0.f, Vnf = 0.f, Vf = 0.f;
  25.307 +
  25.308 +    // Route voices into or around filter.
  25.309 +    ((filt & 1) ? Vi : Vnf) += voice1;
  25.310 +    ((filt & 2) ? Vi : Vnf) += voice2;
  25.311 +    // NB! Voice 3 is not silenced by voice3off if it is routed through
  25.312 +    // the filter.
  25.313 +    if (filt & 4)
  25.314 +        Vi += voice3;
  25.315 +    else if (! voice3off)
  25.316 +        Vnf += voice3;
  25.317 +    ((filt & 8) ? Vi : Vnf) += ext_in;
  25.318 +  
  25.319 +    if (! enabled)
  25.320 +        return (Vnf - Vi) * volf;
  25.321 +
  25.322 +    if (hp_bp_lp & 1)
  25.323 +        Vf += Vlp;
  25.324 +    if (hp_bp_lp & 2)
  25.325 +        Vf += Vbp;
  25.326 +    if (hp_bp_lp & 4)
  25.327 +        Vf += Vhp;
  25.328 +    
  25.329 +    if (model == MOS6581FP) {
  25.330 +        float diff1, diff2;
  25.331 +
  25.332 +        Vhp = Vbp * _1_div_Q * (1.f/outputleveldifference_bp_hp) - Vlp * (1.f/outputleveldifference_bp_hp) - Vi * 0.5f;
  25.333 +
  25.334 +        /* the input summer mixing, or something like it... */
  25.335 +        diff1 = (Vlp - Vbp) * distortion_cf_threshold;
  25.336 +        diff2 = (Vhp - Vbp) * distortion_cf_threshold;
  25.337 +        Vlp -= diff1;
  25.338 +        Vbp += diff1;
  25.339 +        Vbp += diff2;
  25.340 +        Vhp -= diff2;
  25.341 +
  25.342 +        /* Model output strip mixing. Doing it now that HP state
  25.343 +         * variable modifying still makes some difference.
  25.344 +         * (Phase error, though.) */
  25.345 +        if (hp_bp_lp & 1)
  25.346 +            Vlp += (Vf + Vnf - Vlp) * distortion_cf_threshold;
  25.347 +        if (hp_bp_lp & 2)
  25.348 +            Vbp += (Vf + Vnf - Vbp) * distortion_cf_threshold;
  25.349 +        if (hp_bp_lp & 4)
  25.350 +            Vhp += (Vf + Vnf - Vhp) * distortion_cf_threshold;
  25.351 +       
  25.352 +        /* Simulating the exponential VCR that the FET block is... */
  25.353 +        Vlp -= Vbp * type3_w0(Vbp, type3_fc_distortion_offset_bp);
  25.354 +        Vbp -= Vhp * type3_w0(Vhp, type3_fc_distortion_offset_hp) * outputleveldifference_bp_hp;
  25.355 +
  25.356 +        /* Tuned based on Fred Gray's Break Thru. It is probably not a hard
  25.357 +         * discontinuity but a saturation effect... */
  25.358 +        if (Vnf > 3.2e6f)
  25.359 +            Vnf = 3.2e6f;
  25.360 +        
  25.361 +        Vf += Vnf + Vlp * (outputleveldifference_lp_bp - 1.f);
  25.362 +    } else {
  25.363 +        /* On the 8580, BP appears mixed in phase with the rest. */
  25.364 +        Vhp = -Vbp * _1_div_Q - Vlp - Vi;
  25.365 +        Vlp += Vbp * type4_w0_cache;
  25.366 +        Vbp += Vhp * type4_w0_cache;
  25.367 +
  25.368 +        Vf += Vnf;
  25.369 +    }
  25.370 +    
  25.371 +    return Vf * volf;
  25.372 +}
  25.373 +
  25.374 +RESID_INLINE
  25.375 +void FilterFP::nuke_denormals()
  25.376 +{
  25.377 +    /* We could use the flush-to-zero flag or denormals-are-zero on systems
  25.378 +     * where compiling with -msse and -mfpmath=sse is acceptable. Since this
  25.379 +     * doesn't include general VICE builds, we do this instead. */
  25.380 +    if (Vbp > -1e-12f && Vbp < 1e-12f)
  25.381 +        Vbp = 0;
  25.382 +    if (Vlp > -1e-12f && Vlp < 1e-12f)
  25.383 +        Vlp = 0;
  25.384 +}
  25.385 +
  25.386 +#endif // not __FILTER_H__
    26.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    26.2 +++ b/src/resid-fp/pot.cc	Sun May 11 14:09:13 2014 +0100
    26.3 @@ -0,0 +1,26 @@
    26.4 +//  ---------------------------------------------------------------------------
    26.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    26.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    26.7 +//
    26.8 +//  This program is free software; you can redistribute it and/or modify
    26.9 +//  it under the terms of the GNU General Public License as published by
   26.10 +//  the Free Software Foundation; either version 2 of the License, or
   26.11 +//  (at your option) any later version.
   26.12 +//
   26.13 +//  This program is distributed in the hope that it will be useful,
   26.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   26.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   26.16 +//  GNU General Public License for more details.
   26.17 +//
   26.18 +//  You should have received a copy of the GNU General Public License
   26.19 +//  along with this program; if not, write to the Free Software
   26.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   26.21 +//  ---------------------------------------------------------------------------
   26.22 +
   26.23 +#include "pot.h"
   26.24 +
   26.25 +reg8 PotentiometerFP::readPOT()
   26.26 +{
   26.27 +  // NB! Not modeled.
   26.28 +  return 0xff;
   26.29 +}
    27.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    27.2 +++ b/src/resid-fp/pot.h	Sun May 11 14:09:13 2014 +0100
    27.3 @@ -0,0 +1,31 @@
    27.4 +//  ---------------------------------------------------------------------------
    27.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    27.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    27.7 +//
    27.8 +//  This program is free software; you can redistribute it and/or modify
    27.9 +//  it under the terms of the GNU General Public License as published by
   27.10 +//  the Free Software Foundation; either version 2 of the License, or
   27.11 +//  (at your option) any later version.
   27.12 +//
   27.13 +//  This program is distributed in the hope that it will be useful,
   27.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   27.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   27.16 +//  GNU General Public License for more details.
   27.17 +//
   27.18 +//  You should have received a copy of the GNU General Public License
   27.19 +//  along with this program; if not, write to the Free Software
   27.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   27.21 +//  ---------------------------------------------------------------------------
   27.22 +
   27.23 +#ifndef __POT_H__
   27.24 +#define __POT_H__
   27.25 +
   27.26 +#include "siddefs-fp.h"
   27.27 +
   27.28 +class PotentiometerFP
   27.29 +{
   27.30 +public:
   27.31 +  reg8 readPOT();
   27.32 +};
   27.33 +
   27.34 +#endif
    28.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    28.2 +++ b/src/resid-fp/samp2src.pl	Sun May 11 14:09:13 2014 +0100
    28.3 @@ -0,0 +1,65 @@
    28.4 +#! /usr/bin/perl -w
    28.5 +#   ---------------------------------------------------------------------------
    28.6 +#   This file is part of reSID, a MOS6581 SID emulator engine.
    28.7 +#   Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    28.8 +# 
    28.9 +#   This program is free software; you can redistribute it and/or modify
   28.10 +#   it under the terms of the GNU General Public License as published by
   28.11 +#   the Free Software Foundation; either version 2 of the License, or
   28.12 +#   (at your option) any later version.
   28.13 +# 
   28.14 +#   This program is distributed in the hope that it will be useful,
   28.15 +#   but WITHOUT ANY WARRANTY; without even the implied warranty of
   28.16 +#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   28.17 +#   GNU General Public License for more details.
   28.18 +# 
   28.19 +#   You should have received a copy of the GNU General Public License
   28.20 +#   along with this program; if not, write to the Free Software
   28.21 +#   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   28.22 +#   ---------------------------------------------------------------------------
   28.23 +
   28.24 +use strict;
   28.25 +
   28.26 +die("Usage: samp2src name data-in src-out\n") unless @ARGV == 3;
   28.27 +my ($name, $in, $out) = @ARGV;
   28.28 +
   28.29 +open(F, "<$in") or die($!);
   28.30 +local $/ = undef;
   28.31 +my $data = <F>;
   28.32 +close(F) or die($!);
   28.33 +
   28.34 +open(F, ">$out") or die($!);
   28.35 +
   28.36 +print F <<\EOF;
   28.37 +//  ---------------------------------------------------------------------------
   28.38 +//  This file is part of reSID, a MOS6581 SID emulator engine.
   28.39 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
   28.40 +//
   28.41 +//  This program is free software; you can redistribute it and/or modify
   28.42 +//  it under the terms of the GNU General Public License as published by
   28.43 +//  the Free Software Foundation; either version 2 of the License, or
   28.44 +//  (at your option) any later version.
   28.45 +//
   28.46 +//  This program is distributed in the hope that it will be useful,
   28.47 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   28.48 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   28.49 +//  GNU General Public License for more details.
   28.50 +//
   28.51 +//  You should have received a copy of the GNU General Public License
   28.52 +//  along with this program; if not, write to the Free Software
   28.53 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   28.54 +//  ---------------------------------------------------------------------------
   28.55 +
   28.56 +EOF
   28.57 +
   28.58 +print F "#include \"wave.h\"\n\nreg8 WaveformGeneratorFP::$name\[\] =\n{\n";
   28.59 +
   28.60 +for (my $i = 0; $i < length($data); $i += 8) {
   28.61 +  print F sprintf("/* 0x%03x: */ ", $i), map(sprintf(" 0x%02x,", $_), unpack("C*", substr($data, $i, 8))), "\n";
   28.62 +}
   28.63 +
   28.64 +print F "};\n";
   28.65 +
   28.66 +close(F) or die($!);
   28.67 +
   28.68 +exit(0);
    29.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    29.2 +++ b/src/resid-fp/sid.cc	Sun May 11 14:09:13 2014 +0100
    29.3 @@ -0,0 +1,944 @@
    29.4 +//  ---------------------------------------------------------------------------
    29.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    29.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    29.7 +//
    29.8 +//  This program is free software; you can redistribute it and/or modify
    29.9 +//  it under the terms of the GNU General Public License as published by
   29.10 +//  the Free Software Foundation; either version 2 of the License, or
   29.11 +//  (at your option) any later version.
   29.12 +//
   29.13 +//  This program is distributed in the hope that it will be useful,
   29.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   29.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   29.16 +//  GNU General Public License for more details.
   29.17 +//
   29.18 +//  You should have received a copy of the GNU General Public License
   29.19 +//  along with this program; if not, write to the Free Software
   29.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   29.21 +//  ---------------------------------------------------------------------------
   29.22 +
   29.23 +#include "sid.h"
   29.24 +#include <stdio.h>
   29.25 +#include <math.h>
   29.26 +
   29.27 +extern float convolve(const float *a, const float *b, int n);
   29.28 +extern float convolve_sse(const float *a, const float *b, int n);
   29.29 +
   29.30 +enum host_cpu_feature {
   29.31 +    HOST_CPU_MMX=1, HOST_CPU_SSE=2, HOST_CPU_SSE2=4, HOST_CPU_SSE3=8
   29.32 +};
   29.33 +
   29.34 +/* This code is appropriate for 32-bit and 64-bit x86 CPUs. */
   29.35 +#if defined(__x86_64__) || defined(__i386__) || defined(_MSC_VER)
   29.36 +
   29.37 +struct cpu_x86_regs_s {
   29.38 +  unsigned int eax;
   29.39 +  unsigned int ebx;
   29.40 +  unsigned int ecx;
   29.41 +  unsigned int edx;
   29.42 +};
   29.43 +typedef struct cpu_x86_regs_s cpu_x86_regs_t;
   29.44 +
   29.45 +static cpu_x86_regs_t get_cpuid_regs(unsigned int index)
   29.46 +{
   29.47 +  cpu_x86_regs_t retval;
   29.48 +
   29.49 +#if defined(_MSC_VER) /* MSVC assembly */
   29.50 +  __asm {
   29.51 +    mov eax, [index]
   29.52 +    cpuid
   29.53 +    mov [retval.eax], eax
   29.54 +    mov [retval.ebx], ebx
   29.55 +    mov [retval.ecx], ecx
   29.56 +    mov [retval.edx], edx
   29.57 +  }
   29.58 +#else /* GNU assembly */
   29.59 +  asm("movl %1, %%eax; cpuid; movl %%eax, %0;"
   29.60 +      : "=m" (retval.eax)
   29.61 +      : "r"  (index)
   29.62 +      : "eax", "ebx", "ecx", "edx");
   29.63 +  asm("movl %1, %%eax; cpuid; movl %%ebx, %0;"
   29.64 +      : "=m" (retval.ebx)
   29.65 +      : "r"  (index)
   29.66 +      : "eax", "ebx", "ecx", "edx");
   29.67 +  asm("movl %1, %%eax; cpuid; movl %%ecx, %0;"
   29.68 +      : "=m" (retval.ecx)
   29.69 +      : "r"  (index)
   29.70 +      : "eax", "ebx", "ecx", "edx");
   29.71 +  asm("movl %1, %%eax; cpuid; movl %%edx, %0;"
   29.72 +      : "=m" (retval.edx)
   29.73 +      : "r"  (index)
   29.74 +      : "eax", "ebx", "ecx", "edx");
   29.75 +#endif
   29.76 +
   29.77 +  return retval;
   29.78 +}
   29.79 +
   29.80 +static int host_cpu_features_by_cpuid(void)
   29.81 +{
   29.82 +  cpu_x86_regs_t regs = get_cpuid_regs(1);
   29.83 +
   29.84 +  int features = 0;
   29.85 +  if (regs.edx & (1 << 23))
   29.86 +    features |= HOST_CPU_MMX;
   29.87 +  if (regs.edx & (1 << 25))
   29.88 +    features |= HOST_CPU_SSE;
   29.89 +  if (regs.edx & (1 << 26))
   29.90 +    features |= HOST_CPU_SSE2;
   29.91 +  if (regs.ecx & (1 << 0))
   29.92 +    features |= HOST_CPU_SSE3;
   29.93 +
   29.94 +  return features;
   29.95 +}
   29.96 +
   29.97 +static int host_cpu_features(void)
   29.98 +{
   29.99 +  static int features = 0;
  29.100 +  static int features_detected = 0;
  29.101 +/* 32-bit only */
  29.102 +#if defined(__i386__) || (defined(_MSC_VER) && defined(_WIN32))
  29.103 +  unsigned long temp1, temp2;
  29.104 +#endif
  29.105 +
  29.106 +  if (features_detected)
  29.107 +    return features;
  29.108 +  features_detected = 1;
  29.109 +
  29.110 +#if defined(_MSC_VER) && defined(_WIN32) /* MSVC compatible assembly appropriate for 32-bit Windows */
  29.111 +  /* see if we are dealing with a cpu that has the cpuid instruction */
  29.112 +  __asm {
  29.113 +    pushf
  29.114 +    pop eax
  29.115 +    mov [temp1], eax
  29.116 +    xor eax, 0x200000
  29.117 +    push eax
  29.118 +    popf
  29.119 +    pushf
  29.120 +    pop eax
  29.121 +    mov [temp2], eax
  29.122 +    push [temp1]
  29.123 +    popf
  29.124 +  }
  29.125 +#endif
  29.126 +#if defined(__i386__) /* GNU assembly */
  29.127 +  asm("pushfl; popl %%eax; movl %%eax, %0; xorl $0x200000, %%eax; pushl %%eax; popfl; pushfl; popl %%eax; movl %%eax, %1; pushl %0; popfl "
  29.128 +      : "=r" (temp1),
  29.129 +      "=r" (temp2)
  29.130 +      :
  29.131 +      : "eax");
  29.132 +#endif
  29.133 +#if defined(__i386__) || (defined(_MSC_VER) && defined(_WIN32))
  29.134 +  temp1 &= 0x200000;
  29.135 +  temp2 &= 0x200000;
  29.136 +  if (temp1 == temp2) {
  29.137 +    /* no cpuid support, so we can't test for SSE availability -> false */
  29.138 +    return 0;
  29.139 +  }
  29.140 +#endif
  29.141 +
  29.142 +  /* find the highest supported cpuid function, returned in %eax */
  29.143 +  if (get_cpuid_regs(0).eax < 1) {
  29.144 +    /* no cpuid 1 function, we can't test for features -> no features */
  29.145 +    return 0;
  29.146 +  }
  29.147 +
  29.148 +  features = host_cpu_features_by_cpuid();
  29.149 +  return features;
  29.150 +}
  29.151 +
  29.152 +#else /* !__x86_64__ && !__i386__ && !_MSC_VER */
  29.153 +static int host_cpu_features(void)
  29.154 +{
  29.155 +  return 0;
  29.156 +}
  29.157 +#endif
  29.158 +
  29.159 +float SIDFP::kinked_dac(const int x, const float nonlinearity, const int max)
  29.160 +{
  29.161 +    float value = 0.f;
  29.162 +    
  29.163 +    int bit = 1;
  29.164 +    float weight = 1.f;
  29.165 +    const float dir = 2.0f * nonlinearity;
  29.166 +    for (int i = 0; i < max; i ++) {
  29.167 +        if (x & bit)
  29.168 +            value += weight;
  29.169 +        bit <<= 1;
  29.170 +        weight *= dir;
  29.171 +    }
  29.172 +
  29.173 +    return value / (weight / nonlinearity) * (1 << max);
  29.174 +}
  29.175 +
  29.176 +// ----------------------------------------------------------------------------
  29.177 +// Constructor.
  29.178 +// ----------------------------------------------------------------------------
  29.179 +SIDFP::SIDFP()
  29.180 +{
  29.181 +#if (RESID_USE_SSE==1)
  29.182 +  can_use_sse = (host_cpu_features() & HOST_CPU_SSE) != 0;
  29.183 +#else
  29.184 +  can_use_sse = false;
  29.185 +#endif
  29.186 +
  29.187 +  // Initialize pointers.
  29.188 +  sample = 0;
  29.189 +  fir = 0;
  29.190 +
  29.191 +  voice[0].set_sync_source(&voice[2]);
  29.192 +  voice[1].set_sync_source(&voice[0]);
  29.193 +  voice[2].set_sync_source(&voice[1]);
  29.194 +
  29.195 +  set_sampling_parameters(985248, SAMPLE_INTERPOLATE, 44100);
  29.196 +
  29.197 +  bus_value = 0;
  29.198 +  bus_value_ttl = 0;
  29.199 +
  29.200 +  input(0);
  29.201 +}
  29.202 +
  29.203 +
  29.204 +// ----------------------------------------------------------------------------
  29.205 +// Destructor.
  29.206 +// ----------------------------------------------------------------------------
  29.207 +SIDFP::~SIDFP()
  29.208 +{
  29.209 +  delete[] sample;
  29.210 +  delete[] fir;
  29.211 +}
  29.212 +
  29.213 +
  29.214 +// ----------------------------------------------------------------------------
  29.215 +// Set chip model.
  29.216 +// ----------------------------------------------------------------------------
  29.217 +void SIDFP::set_chip_model(chip_model model)
  29.218 +{
  29.219 +  for (int i = 0; i < 3; i++) {
  29.220 +    voice[i].set_chip_model(model);
  29.221 +  }
  29.222 +
  29.223 +  filter.set_chip_model(model);
  29.224 +  extfilt.set_chip_model(model);
  29.225 +}
  29.226 +
  29.227 +/* nonlinear DAC support, set 1 for 8580 / no effect, about 0.96 otherwise */
  29.228 +void SIDFP::set_voice_nonlinearity(float nl)
  29.229 +{
  29.230 +  for (int i = 0; i < 3; i++) {
  29.231 +    voice[i].set_nonlinearity(nl);
  29.232 +  }
  29.233 +}
  29.234 +
  29.235 +// ----------------------------------------------------------------------------
  29.236 +// SID reset.
  29.237 +// ----------------------------------------------------------------------------
  29.238 +void SIDFP::reset()
  29.239 +{
  29.240 +  for (int i = 0; i < 3; i++) {
  29.241 +    voice[i].reset();
  29.242 +  }
  29.243 +  filter.reset();
  29.244 +  extfilt.reset();
  29.245 +
  29.246 +  bus_value = 0;
  29.247 +  bus_value_ttl = 0;
  29.248 +}
  29.249 +
  29.250 +
  29.251 +// ----------------------------------------------------------------------------
  29.252 +// Write 16-bit sample to audio input.
  29.253 +// NB! The caller is responsible for keeping the value within 16 bits.
  29.254 +// Note that to mix in an external audio signal, the signal should be
  29.255 +// resampled to 1MHz first to avoid sampling noise.
  29.256 +// ----------------------------------------------------------------------------
  29.257 +void SIDFP::input(int sample)
  29.258 +{
  29.259 +  // Voice outputs are 20 bits. Scale up to match three voices in order
  29.260 +  // to facilitate simulation of the MOS8580 "digi boost" hardware hack.
  29.261 +  ext_in = (float) ( (sample << 4) * 3 );
  29.262 +}
  29.263 +
  29.264 +float SIDFP::output()
  29.265 +{
  29.266 +  const float range = 1 << 15;
  29.267 +  return extfilt.output() / (4095.f * 255.f * 3.f * 1.5f / range);
  29.268 +}
  29.269 +
  29.270 +// ----------------------------------------------------------------------------
  29.271 +// Read registers.
  29.272 +//
  29.273 +// Reading a write only register returns the last byte written to any SID
  29.274 +// register. The individual bits in this value start to fade down towards
  29.275 +// zero after a few cycles. All bits reach zero within approximately
  29.276 +// $2000 - $4000 cycles.
  29.277 +// It has been claimed that this fading happens in an orderly fashion, however
  29.278 +// sampling of write only registers reveals that this is not the case.
  29.279 +// NB! This is not correctly modeled.
  29.280 +// The actual use of write only registers has largely been made in the belief
  29.281 +// that all SID registers are readable. To support this belief the read
  29.282 +// would have to be done immediately after a write to the same register
  29.283 +// (remember that an intermediate write to another register would yield that
  29.284 +// value instead). With this in mind we return the last value written to
  29.285 +// any SID register for $2000 cycles without modeling the bit fading.
  29.286 +// ----------------------------------------------------------------------------
  29.287 +reg8 SIDFP::read(reg8 offset)
  29.288 +{
  29.289 +  switch (offset) {
  29.290 +  case 0x19:
  29.291 +    return potx.readPOT();
  29.292 +  case 0x1a:
  29.293 +    return poty.readPOT();
  29.294 +  case 0x1b:
  29.295 +    return voice[2].wave.readOSC();
  29.296 +  case 0x1c:
  29.297 +    return voice[2].envelope.readENV();
  29.298 +  default:
  29.299 +    return bus_value;
  29.300 +  }
  29.301 +}
  29.302 +
  29.303 +
  29.304 +// ----------------------------------------------------------------------------
  29.305 +// Write registers.
  29.306 +// ----------------------------------------------------------------------------
  29.307 +void SIDFP::write(reg8 offset, reg8 value)
  29.308 +{
  29.309 +  bus_value = value;
  29.310 +  bus_value_ttl = 0x4000;
  29.311 +
  29.312 +  switch (offset) {
  29.313 +  case 0x00:
  29.314 +    voice[0].wave.writeFREQ_LO(value);
  29.315 +    break;
  29.316 +  case 0x01:
  29.317 +    voice[0].wave.writeFREQ_HI(value);
  29.318 +    break;
  29.319 +  case 0x02:
  29.320 +    voice[0].wave.writePW_LO(value);
  29.321 +    break;
  29.322 +  case 0x03:
  29.323 +    voice[0].wave.writePW_HI(value);
  29.324 +    break;
  29.325 +  case 0x04:
  29.326 +    voice[0].writeCONTROL_REG(value);
  29.327 +    break;
  29.328 +  case 0x05:
  29.329 +    voice[0].envelope.writeATTACK_DECAY(value);
  29.330 +    break;
  29.331 +  case 0x06:
  29.332 +    voice[0].envelope.writeSUSTAIN_RELEASE(value);
  29.333 +    break;
  29.334 +  case 0x07:
  29.335 +    voice[1].wave.writeFREQ_LO(value);
  29.336 +    break;
  29.337 +  case 0x08:
  29.338 +    voice[1].wave.writeFREQ_HI(value);
  29.339 +    break;
  29.340 +  case 0x09:
  29.341 +    voice[1].wave.writePW_LO(value);
  29.342 +    break;
  29.343 +  case 0x0a:
  29.344 +    voice[1].wave.writePW_HI(value);
  29.345 +    break;
  29.346 +  case 0x0b:
  29.347 +    voice[1].writeCONTROL_REG(value);
  29.348 +    break;
  29.349 +  case 0x0c:
  29.350 +    voice[1].envelope.writeATTACK_DECAY(value);
  29.351 +    break;
  29.352 +  case 0x0d:
  29.353 +    voice[1].envelope.writeSUSTAIN_RELEASE(value);
  29.354 +    break;
  29.355 +  case 0x0e:
  29.356 +    voice[2].wave.writeFREQ_LO(value);
  29.357 +    break;
  29.358 +  case 0x0f:
  29.359 +    voice[2].wave.writeFREQ_HI(value);
  29.360 +    break;
  29.361 +  case 0x10:
  29.362 +    voice[2].wave.writePW_LO(value);
  29.363 +    break;
  29.364 +  case 0x11:
  29.365 +    voice[2].wave.writePW_HI(value);
  29.366 +    break;
  29.367 +  case 0x12:
  29.368 +    voice[2].writeCONTROL_REG(value);
  29.369 +    break;
  29.370 +  case 0x13:
  29.371 +    voice[2].envelope.writeATTACK_DECAY(value);
  29.372 +    break;
  29.373 +  case 0x14:
  29.374 +    voice[2].envelope.writeSUSTAIN_RELEASE(value);
  29.375 +    break;
  29.376 +  case 0x15:
  29.377 +    filter.writeFC_LO(value);
  29.378 +    break;
  29.379 +  case 0x16:
  29.380 +    filter.writeFC_HI(value);
  29.381 +    break;
  29.382 +  case 0x17:
  29.383 +    filter.writeRES_FILT(value);
  29.384 +    break;
  29.385 +  case 0x18:
  29.386 +    filter.writeMODE_VOL(value);
  29.387 +    break;
  29.388 +  default:
  29.389 +    break;
  29.390 +  }
  29.391 +}
  29.392 +
  29.393 +
  29.394 +// ----------------------------------------------------------------------------
  29.395 +// Constructor.
  29.396 +// ----------------------------------------------------------------------------
  29.397 +SIDFP::State::State()
  29.398 +{
  29.399 +  int i;
  29.400 +
  29.401 +  for (i = 0; i < 0x20; i++) {
  29.402 +    sid_register[i] = 0;
  29.403 +  }
  29.404 +
  29.405 +  bus_value = 0;
  29.406 +  bus_value_ttl = 0;
  29.407 +
  29.408 +  for (i = 0; i < 3; i++) {
  29.409 +    accumulator[i] = 0;
  29.410 +    shift_register[i] = 0x7ffff8;
  29.411 +    rate_counter[i] = 0;
  29.412 +    rate_counter_period[i] = 9;
  29.413 +    exponential_counter[i] = 0;
  29.414 +    exponential_counter_period[i] = 1;
  29.415 +    envelope_counter[i] = 0;
  29.416 +    envelope_state[i] = EnvelopeGeneratorFP::RELEASE;
  29.417 +    hold_zero[i] = true;
  29.418 +  }
  29.419 +}
  29.420 +
  29.421 +
  29.422 +// ----------------------------------------------------------------------------
  29.423 +// Read state.
  29.424 +// ----------------------------------------------------------------------------
  29.425 +SIDFP::State SIDFP::read_state()
  29.426 +{
  29.427 +  State state;
  29.428 +  int i, j;
  29.429 +
  29.430 +  for (i = 0, j = 0; i < 3; i++, j += 7) {
  29.431 +    WaveformGeneratorFP& wave = voice[i].wave;
  29.432 +    EnvelopeGeneratorFP& envelope = voice[i].envelope;
  29.433 +    state.sid_register[j + 0] = wave.freq & 0xff;
  29.434 +    state.sid_register[j + 1] = wave.freq >> 8;
  29.435 +    state.sid_register[j + 2] = wave.pw & 0xff;
  29.436 +    state.sid_register[j + 3] = wave.pw >> 8;
  29.437 +    state.sid_register[j + 4] =
  29.438 +      (wave.waveform << 4)
  29.439 +      | (wave.test ? 0x08 : 0)
  29.440 +      | (wave.ring_mod ? 0x04 : 0)
  29.441 +      | (wave.sync ? 0x02 : 0)
  29.442 +      | (envelope.gate ? 0x01 : 0);
  29.443 +    state.sid_register[j + 5] = (envelope.attack << 4) | envelope.decay;
  29.444 +    state.sid_register[j + 6] = (envelope.sustain << 4) | envelope.release;
  29.445 +  }
  29.446 +
  29.447 +  state.sid_register[j++] = filter.fc & 0x007;
  29.448 +  state.sid_register[j++] = filter.fc >> 3;
  29.449 +  state.sid_register[j++] = (filter.res << 4) | filter.filt;
  29.450 +  state.sid_register[j++] =
  29.451 +    (filter.voice3off ? 0x80 : 0)
  29.452 +    | (filter.hp_bp_lp << 4)
  29.453 +    | filter.vol;
  29.454 +
  29.455 +  // These registers are superfluous, but included for completeness.
  29.456 +  for (; j < 0x1d; j++) {
  29.457 +    state.sid_register[j] = read(j);
  29.458 +  }
  29.459 +  for (; j < 0x20; j++) {
  29.460 +    state.sid_register[j] = 0;
  29.461 +  }
  29.462 +
  29.463 +  state.bus_value = bus_value;
  29.464 +  state.bus_value_ttl = bus_value_ttl;
  29.465 +
  29.466 +  for (i = 0; i < 3; i++) {
  29.467 +    state.accumulator[i] = voice[i].wave.accumulator;
  29.468 +    state.shift_register[i] = voice[i].wave.shift_register;
  29.469 +    state.rate_counter[i] = voice[i].envelope.rate_counter;
  29.470 +    state.rate_counter_period[i] = voice[i].envelope.rate_period;
  29.471 +    state.exponential_counter[i] = voice[i].envelope.exponential_counter;
  29.472 +    state.exponential_counter_period[i] = voice[i].envelope.exponential_counter_period;
  29.473 +    state.envelope_counter[i] = voice[i].envelope.envelope_counter;
  29.474 +    state.envelope_state[i] = voice[i].envelope.state;
  29.475 +    state.hold_zero[i] = voice[i].envelope.hold_zero;
  29.476 +  }
  29.477 +
  29.478 +  return state;
  29.479 +}
  29.480 +
  29.481 +
  29.482 +// ----------------------------------------------------------------------------
  29.483 +// Write state.
  29.484 +// ----------------------------------------------------------------------------
  29.485 +void SIDFP::write_state(const State& state)
  29.486 +{
  29.487 +  int i;
  29.488 +
  29.489 +  for (i = 0; i <= 0x18; i++) {
  29.490 +    write(i, state.sid_register[i]);
  29.491 +  }
  29.492 +
  29.493 +  bus_value = state.bus_value;
  29.494 +  bus_value_ttl = state.bus_value_ttl;
  29.495 +
  29.496 +  for (i = 0; i < 3; i++) {
  29.497 +    voice[i].wave.accumulator = state.accumulator[i];
  29.498 +    voice[i].wave.shift_register = state.shift_register[i];
  29.499 +    voice[i].envelope.rate_counter = state.rate_counter[i];
  29.500 +    voice[i].envelope.rate_period = state.rate_counter_period[i];
  29.501 +    voice[i].envelope.exponential_counter = state.exponential_counter[i];
  29.502 +    voice[i].envelope.exponential_counter_period = state.exponential_counter_period[i];
  29.503 +    voice[i].envelope.envelope_counter = state.envelope_counter[i];
  29.504 +    voice[i].envelope.state = state.envelope_state[i];
  29.505 +    voice[i].envelope.hold_zero = state.hold_zero[i];
  29.506 +  }
  29.507 +}
  29.508 +
  29.509 +
  29.510 +// ----------------------------------------------------------------------------
  29.511 +// Enable filter.
  29.512 +// ----------------------------------------------------------------------------
  29.513 +void SIDFP::enable_filter(bool enable)
  29.514 +{
  29.515 +  filter.enable_filter(enable);
  29.516 +}
  29.517 +
  29.518 +
  29.519 +// ----------------------------------------------------------------------------
  29.520 +// Enable external filter.
  29.521 +// ----------------------------------------------------------------------------
  29.522 +void SIDFP::enable_external_filter(bool enable)
  29.523 +{
  29.524 +  extfilt.enable_filter(enable);
  29.525 +}
  29.526 +
  29.527 +
  29.528 +// ----------------------------------------------------------------------------
  29.529 +// I0() computes the 0th order modified Bessel function of the first kind.
  29.530 +// This function is originally from resample-1.5/filterkit.c by J. O. Smith.
  29.531 +// ----------------------------------------------------------------------------
  29.532 +double SIDFP::I0(double x)
  29.533 +{
  29.534 +  // Max error acceptable in I0 could be 1e-6, which gives that 96 dB already.
  29.535 +  // I'm overspecify these errors to get a beautiful FFT dump of the FIR.
  29.536 +  const double I0e = 1e-10;
  29.537 +
  29.538 +  double sum, u, halfx, temp;
  29.539 +  int n;
  29.540 +
  29.541 +  sum = u = n = 1;
  29.542 +  halfx = x/2.0;
  29.543 +
  29.544 +  do {
  29.545 +    temp = halfx/n++;
  29.546 +    u *= temp*temp;
  29.547 +    sum += u;
  29.548 +  } while (u >= I0e*sum);
  29.549 +
  29.550 +  return sum;
  29.551 +}
  29.552 +
  29.553 +
  29.554 +// ----------------------------------------------------------------------------
  29.555 +// Setting of SID sampling parameters.
  29.556 +//
  29.557 +// Use a clock freqency of 985248Hz for PAL C64, 1022730Hz for NTSC C64.
  29.558 +// The default end of passband frequency is pass_freq = 0.9*sample_freq/2
  29.559 +// for sample frequencies up to ~ 44.1kHz, and 20kHz for higher sample
  29.560 +// frequencies.
  29.561 +//
  29.562 +// For resampling, the ratio between the clock frequency and the sample
  29.563 +// frequency is limited as follows:
  29.564 +//   125*clock_freq/sample_freq < 16384
  29.565 +// E.g. provided a clock frequency of ~ 1MHz, the sample frequency can not
  29.566 +// be set lower than ~ 8kHz. A lower sample frequency would make the
  29.567 +// resampling code overfill its 16k sample ring buffer.
  29.568 +// 
  29.569 +// The end of passband frequency is also limited:
  29.570 +//   pass_freq <= 0.9*sample_freq/2
  29.571 +
  29.572 +// E.g. for a 44.1kHz sampling rate the end of passband frequency is limited
  29.573 +// to slightly below 20kHz. This constraint ensures that the FIR table is
  29.574 +// not overfilled.
  29.575 +// ----------------------------------------------------------------------------
  29.576 +bool SIDFP::set_sampling_parameters(float clock_freq, sampling_method method,
  29.577 +                                  float sample_freq, float pass_freq)
  29.578 +{
  29.579 +  clock_frequency = clock_freq;
  29.580 +  sampling = method;
  29.581 +
  29.582 +  filter.set_clock_frequency(clock_freq);
  29.583 +  extfilt.set_clock_frequency(clock_freq);
  29.584 +  adjust_sampling_frequency(sample_freq);
  29.585 +
  29.586 +  sample_offset = 0;
  29.587 +  sample_prev = 0;
  29.588 +
  29.589 +  // FIR initialization is only necessary for resampling.
  29.590 +  if (method != SAMPLE_RESAMPLE_INTERPOLATE)
  29.591 +  {
  29.592 +    delete[] sample;
  29.593 +    delete[] fir;
  29.594 +    sample = 0;
  29.595 +    fir = 0;
  29.596 +    return true;
  29.597 +  }
  29.598 +  
  29.599 +  const int bits = 16;
  29.600 +
  29.601 +  if (pass_freq > 20000)
  29.602 +    pass_freq = 20000;  
  29.603 +  if (2*pass_freq/sample_freq > 0.9)
  29.604 +    pass_freq = 0.9f*sample_freq/2;
  29.605 +
  29.606 +  // 16 bits -> -96dB stopband attenuation.
  29.607 +  const double A = -20*log10(1.0/(1 << bits));
  29.608 +
  29.609 +  // For calculation of beta and N see the reference for the kaiserord
  29.610 +  // function in the MATLAB Signal Processing Toolbox:
  29.611 +  // http://www.mathworks.com/access/helpdesk/help/toolbox/signal/kaiserord.html
  29.612 +  const double beta = 0.1102*(A - 8.7);
  29.613 +  const double I0beta = I0(beta);
  29.614 +
  29.615 +  double f_samples_per_cycle = sample_freq/clock_freq;
  29.616 +  double f_cycles_per_sample = clock_freq/sample_freq;
  29.617 +
  29.618 +  /* This code utilizes the fact that aliasing back to 20 kHz from
  29.619 +   * sample_freq/2 is inaudible. This allows us to define a passband
  29.620 +   * wider than normally. We might also consider aliasing back to pass_freq,
  29.621 +   * but as this can be less than 20 kHz, it might become audible... */
  29.622 +  double aliasing_allowance = sample_freq / 2 - 20000;
  29.623 +  if (aliasing_allowance < 0)
  29.624 +    aliasing_allowance = 0;
  29.625 +
  29.626 +  double transition_bandwidth = sample_freq/2 - pass_freq + aliasing_allowance;
  29.627 +  {
  29.628 +    /* Filter order according to Kaiser's paper. */
  29.629 +
  29.630 +    int N = (int) ((A - 7.95)/(2 * M_PI * 2.285 * transition_bandwidth/sample_freq) + 0.5);
  29.631 +    N += N & 1;
  29.632 +
  29.633 +    // The filter length is equal to the filter order + 1.
  29.634 +    // The filter length must be an odd number (sinc is symmetric about x = 0).
  29.635 +    fir_N = int(N*f_cycles_per_sample) + 1;
  29.636 +    fir_N |= 1;
  29.637 +
  29.638 +    // Check whether the sample ring buffer would overfill.
  29.639 +    if (fir_N > RINGSIZE - 1)
  29.640 +      return false;
  29.641 +
  29.642 +    /* Error is bound by 1.234 / L^2 */
  29.643 +    fir_RES = (int) (sqrt(1.234 * (1 << bits)) / f_cycles_per_sample + 0.5);
  29.644 +  }
  29.645 + 
  29.646 +  // Allocate memory for FIR tables.
  29.647 +  delete[] fir;
  29.648 +  fir = new float[fir_N*fir_RES];
  29.649 +
  29.650 +  // The cutoff frequency is midway through the transition band.
  29.651 +  double wc = (pass_freq + transition_bandwidth/2) / sample_freq * M_PI * 2;
  29.652 +
  29.653 +  // Calculate fir_RES FIR tables for linear interpolation.
  29.654 +  for (int i = 0; i < fir_RES; i++) {
  29.655 +    double j_offset = double(i)/fir_RES;
  29.656 +    // Calculate FIR table. This is the sinc function, weighted by the
  29.657 +    // Kaiser window.
  29.658 +    for (int j = 0; j < fir_N; j ++) {
  29.659 +      double jx = j - fir_N/2. - j_offset;
  29.660 +      double wt = wc*jx/f_cycles_per_sample;
  29.661 +      double temp = jx/(fir_N/2);
  29.662 +      double Kaiser =
  29.663 +        fabs(temp) <= 1 ? I0(beta*sqrt(1 - temp*temp))/I0beta : 0;
  29.664 +      double sincwt =
  29.665 +        fabs(wt) >= 1e-8 ? sin(wt)/wt : 1;
  29.666 +      fir[i * fir_N + j] = (float) (f_samples_per_cycle*wc/M_PI*sincwt*Kaiser);
  29.667 +    }
  29.668 +  }
  29.669 +
  29.670 +  // Allocate sample buffer.
  29.671 +  if (!sample) {
  29.672 +    sample = new float[RINGSIZE*2];
  29.673 +  }
  29.674 +  // Clear sample buffer.
  29.675 +  for (int j = 0; j < RINGSIZE*2; j++) {
  29.676 +    sample[j] = 0;
  29.677 +  }
  29.678 +  sample_index = 0;
  29.679 +
  29.680 +  return true;
  29.681 +}
  29.682 +
  29.683 +// ----------------------------------------------------------------------------
  29.684 +// Adjustment of SID sampling frequency.
  29.685 +//
  29.686 +// In some applications, e.g. a C64 emulator, it can be desirable to
  29.687 +// synchronize sound with a timer source. This is supported by adjustment of
  29.688 +// the SID sampling frequency.
  29.689 +//
  29.690 +// NB! Adjustment of the sampling frequency may lead to noticeable shifts in
  29.691 +// frequency, and should only be used for interactive applications. Note also
  29.692 +// that any adjustment of the sampling frequency will change the
  29.693 +// characteristics of the resampling filter, since the filter is not rebuilt.
  29.694 +// ----------------------------------------------------------------------------
  29.695 +void SIDFP::adjust_sampling_frequency(float sample_freq)
  29.696 +{
  29.697 +  cycles_per_sample = clock_frequency/sample_freq;
  29.698 +}
  29.699 +
  29.700 +void SIDFP::age_bus_value(cycle_count n) {
  29.701 +  if (bus_value_ttl != 0) {
  29.702 +    bus_value_ttl -= n;
  29.703 +    if (bus_value_ttl <= 0) {
  29.704 +        bus_value = 0;
  29.705 +        bus_value_ttl = 0;
  29.706 +    }
  29.707 +  }
  29.708 +}
  29.709 +
  29.710 +// ----------------------------------------------------------------------------
  29.711 +// SID clocking - 1 cycle.
  29.712 +// ----------------------------------------------------------------------------
  29.713 +void SIDFP::clock()
  29.714 +{
  29.715 +  int i;
  29.716 +
  29.717 +  // Clock amplitude modulators.
  29.718 +  for (i = 0; i < 3; i++) {
  29.719 +    voice[i].envelope.clock();
  29.720 +  }
  29.721 +
  29.722 +  // Clock oscillators.
  29.723 +  for (i = 0; i < 3; i++) {
  29.724 +    voice[i].wave.clock();
  29.725 +  }
  29.726 +
  29.727 +  // Synchronize oscillators.
  29.728 +  for (i = 0; i < 3; i++) {
  29.729 +    voice[i].wave.synchronize();
  29.730 +  }
  29.731 +
  29.732 +  // Clock filter.
  29.733 +  extfilt.clock(filter.clock(voice[0].output(), voice[1].output(), voice[2].output(), ext_in));
  29.734 +}
  29.735 +
  29.736 +// ----------------------------------------------------------------------------
  29.737 +// SID clocking with audio sampling.
  29.738 +// Fixpoint arithmetics is used.
  29.739 +//
  29.740 +// The example below shows how to clock the SID a specified amount of cycles
  29.741 +// while producing audio output:
  29.742 +//
  29.743 +// while (delta_t) {
  29.744 +//   bufindex += sid.clock(delta_t, buf + bufindex, buflength - bufindex);
  29.745 +//   write(dsp, buf, bufindex*2);
  29.746 +//   bufindex = 0;
  29.747 +// }
  29.748 +// 
  29.749 +// ----------------------------------------------------------------------------
  29.750 +int SIDFP::clock(cycle_count& delta_t, short* buf, int n, int interleave)
  29.751 +{
  29.752 +  /* XXX I assume n is generally large enough for delta_t here... */
  29.753 +  age_bus_value(delta_t);
  29.754 +  int res;
  29.755 +  switch (sampling) {
  29.756 +  default:
  29.757 +  case SAMPLE_INTERPOLATE:
  29.758 +    res = clock_interpolate(delta_t, buf, n, interleave);
  29.759 +    break;
  29.760 +  case SAMPLE_RESAMPLE_INTERPOLATE:
  29.761 +    res = clock_resample_interpolate(delta_t, buf, n, interleave);
  29.762 +    break;
  29.763 +  }
  29.764 +
  29.765 +  filter.nuke_denormals();
  29.766 +  extfilt.nuke_denormals();
  29.767 +
  29.768 +  return res;
  29.769 +}
  29.770 +
  29.771 +// ----------------------------------------------------------------------------
  29.772 +// SID clocking with audio sampling - cycle based with linear sample
  29.773 +// interpolation.
  29.774 +//
  29.775 +// Here the chip is clocked every cycle. This yields higher quality
  29.776 +// sound since the samples are linearly interpolated, and since the
  29.777 +// external filter attenuates frequencies above 16kHz, thus reducing
  29.778 +// sampling noise.
  29.779 +// ----------------------------------------------------------------------------
  29.780 +RESID_INLINE
  29.781 +int SIDFP::clock_interpolate(cycle_count& delta_t, short* buf, int n,
  29.782 +                           int interleave)
  29.783 +{
  29.784 +  int s = 0;
  29.785 +  int i;
  29.786 +
  29.787 +  for (;;) {
  29.788 +    float next_sample_offset = sample_offset + cycles_per_sample;
  29.789 +    int delta_t_sample = (int) next_sample_offset;
  29.790 +    if (delta_t_sample > delta_t) {
  29.791 +      break;
  29.792 +    }
  29.793 +    if (s >= n) {
  29.794 +      return s;
  29.795 +    }
  29.796 +    for (i = 0; i < delta_t_sample - 1; i++) {
  29.797 +      clock();
  29.798 +    }
  29.799 +    if (i < delta_t_sample) {
  29.800 +      sample_prev = output();
  29.801 +      clock();
  29.802 +    }
  29.803 +
  29.804 +    delta_t -= delta_t_sample;
  29.805 +    sample_offset = next_sample_offset - delta_t_sample;
  29.806 +
  29.807 +    float sample_now = output();
  29.808 +    int v = (int)(sample_prev + (sample_offset * (sample_now - sample_prev)));
  29.809 +    // Saturated arithmetics to guard against 16 bit sample overflow.
  29.810 +    const int half = 1 << 15;
  29.811 +    if (v >= half) {
  29.812 +      v = half - 1;
  29.813 +    }
  29.814 +    else if (v < -half) {
  29.815 +      v = -half;
  29.816 +    }
  29.817 +    buf[s++*interleave] = v;
  29.818 +    sample_prev = sample_now;
  29.819 +  }
  29.820 +
  29.821 +  for (i = 0; i < delta_t - 1; i++) {
  29.822 +    clock();
  29.823 +  }
  29.824 +  if (i < delta_t) {
  29.825 +    sample_prev = output();
  29.826 +    clock();
  29.827 +  }
  29.828 +  sample_offset -= delta_t;
  29.829 +  delta_t = 0;
  29.830 +  return s;
  29.831 +}
  29.832 +
  29.833 +// ----------------------------------------------------------------------------
  29.834 +// SID clocking with audio sampling - cycle based with audio resampling.
  29.835 +//
  29.836 +// This is the theoretically correct (and computationally intensive) audio
  29.837 +// sample generation. The samples are generated by resampling to the specified
  29.838 +// sampling frequency. The work rate is inversely proportional to the
  29.839 +// percentage of the bandwidth allocated to the filter transition band.
  29.840 +//
  29.841 +// This implementation is based on the paper "A Flexible Sampling-Rate
  29.842 +// Conversion Method", by J. O. Smith and P. Gosset, or rather on the
  29.843 +// expanded tutorial on the "Digital Audio Resampling Home Page":
  29.844 +// http://www-ccrma.stanford.edu/~jos/resample/
  29.845 +//
  29.846 +// By building shifted FIR tables with samples according to the
  29.847 +// sampling frequency, this implementation dramatically reduces the
  29.848 +// computational effort in the filter convolutions, without any loss
  29.849 +// of accuracy. The filter convolutions are also vectorizable on
  29.850 +// current hardware.
  29.851 +//
  29.852 +// Further possible optimizations are:
  29.853 +// * An equiripple filter design could yield a lower filter order, see
  29.854 +//   http://www.mwrf.com/Articles/ArticleID/7229/7229.html
  29.855 +// * The Convolution Theorem could be used to bring the complexity of
  29.856 +//   convolution down from O(n*n) to O(n*log(n)) using the Fast Fourier
  29.857 +//   Transform, see http://en.wikipedia.org/wiki/Convolution_theorem
  29.858 +// * Simply resampling in two steps can also yield computational
  29.859 +//   savings, since the transition band will be wider in the first step
  29.860 +//   and the required filter order is thus lower in this step.
  29.861 +//   Laurent Ganier has found the optimal intermediate sampling frequency
  29.862 +//   to be (via derivation of sum of two steps):
  29.863 +//     2 * pass_freq + sqrt [ 2 * pass_freq * orig_sample_freq
  29.864 +//       * (dest_sample_freq - 2 * pass_freq) / dest_sample_freq ]
  29.865 +//
  29.866 +// NB! the result of right shifting negative numbers is really
  29.867 +// implementation dependent in the C++ standard.
  29.868 +// ----------------------------------------------------------------------------
  29.869 +RESID_INLINE
  29.870 +int SIDFP::clock_resample_interpolate(cycle_count& delta_t, short* buf, int n,
  29.871 +                                    int interleave)
  29.872 +{
  29.873 +  int s = 0;
  29.874 +
  29.875 +  for (;;) {
  29.876 +    float next_sample_offset = sample_offset + cycles_per_sample;
  29.877 +    /* full clocks left to next sample */
  29.878 +    int delta_t_sample = (int) next_sample_offset;
  29.879 +    if (delta_t_sample > delta_t || s >= n)
  29.880 +      break;
  29.881 +
  29.882 +    /* clock forward delta_t_sample samples */
  29.883 +    for (int i = 0; i < delta_t_sample; i++) {
  29.884 +      clock();
  29.885 +      sample[sample_index] = sample[sample_index + RINGSIZE] = output();
  29.886 +      ++ sample_index;
  29.887 +      sample_index &= RINGSIZE - 1;
  29.888 +    }
  29.889 +    delta_t -= delta_t_sample;
  29.890 +
  29.891 +    /* Phase of the sample in terms of clock, [0 .. 1[. */
  29.892 +    sample_offset = next_sample_offset - (float) delta_t_sample;
  29.893 +
  29.894 +    /* find the first of the nearest fir tables close to the phase */
  29.895 +    float fir_offset_rmd = sample_offset * fir_RES;
  29.896 +    int fir_offset = (int) fir_offset_rmd;
  29.897 +    /* [0 .. 1[ */
  29.898 +    fir_offset_rmd -= (float) fir_offset;
  29.899 +
  29.900 +    /* find fir_N most recent samples, plus one extra in case the FIR wraps. */
  29.901 +    float* sample_start = sample + sample_index - fir_N + RINGSIZE - 1;
  29.902 +
  29.903 +    float v1 =
  29.904 +#if (RESID_USE_SSE==1)
  29.905 +      can_use_sse ? convolve_sse(sample_start, fir + fir_offset*fir_N, fir_N) :
  29.906 +#endif
  29.907 +        convolve(sample_start, fir + fir_offset*fir_N, fir_N);
  29.908 +
  29.909 +    // Use next FIR table, wrap around to first FIR table using
  29.910 +    // previous sample.
  29.911 +    if (++ fir_offset == fir_RES) {
  29.912 +      fir_offset = 0;
  29.913 +      ++ sample_start;
  29.914 +    }
  29.915 +    float v2 =
  29.916 +#if (RESID_USE_SSE==1)
  29.917 +      can_use_sse ? convolve_sse(sample_start, fir + fir_offset*fir_N, fir_N) :
  29.918 +#endif
  29.919 +        convolve(sample_start, fir + fir_offset*fir_N, fir_N);
  29.920 +
  29.921 +    // Linear interpolation between the sinc tables yields good approximation
  29.922 +    // for the exact value.
  29.923 +    int v = (int) (v1 + fir_offset_rmd * (v2 - v1));
  29.924 +
  29.925 +    // Saturated arithmetics to guard against 16 bit sample overflow.
  29.926 +    const int half = 1 << 15;
  29.927 +    if (v >= half) {
  29.928 +      v = half - 1;
  29.929 +    }
  29.930 +    else if (v < -half) {
  29.931 +      v = -half;
  29.932 +    }
  29.933 +
  29.934 +    buf[s ++ * interleave] = v;
  29.935 +  }
  29.936 +
  29.937 +  /* clock forward delta_t samples */
  29.938 +  for (int i = 0; i < delta_t; i++) {
  29.939 +    clock();
  29.940 +    sample[sample_index] = sample[sample_index + RINGSIZE] = output();
  29.941 +    ++ sample_index;
  29.942 +    sample_index &= RINGSIZE - 1;
  29.943 +  }
  29.944 +  sample_offset -= (float) delta_t;
  29.945 +  delta_t = 0;
  29.946 +  return s;
  29.947 +}
    30.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    30.2 +++ b/src/resid-fp/sid.h	Sun May 11 14:09:13 2014 +0100
    30.3 @@ -0,0 +1,130 @@
    30.4 +//  ---------------------------------------------------------------------------
    30.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    30.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    30.7 +//
    30.8 +//  This program is free software; you can redistribute it and/or modify
    30.9 +//  it under the terms of the GNU General Public License as published by
   30.10 +//  the Free Software Foundation; either version 2 of the License, or
   30.11 +//  (at your option) any later version.
   30.12 +//
   30.13 +//  This program is distributed in the hope that it will be useful,
   30.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   30.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   30.16 +//  GNU General Public License for more details.
   30.17 +//
   30.18 +//  You should have received a copy of the GNU General Public License
   30.19 +//  along with this program; if not, write to the Free Software
   30.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   30.21 +//  ---------------------------------------------------------------------------
   30.22 +
   30.23 +#ifndef __SID_FP_H__
   30.24 +#define __SID_FP_H__
   30.25 +
   30.26 +#include "siddefs-fp.h"
   30.27 +#include "voice.h"
   30.28 +#include "filter.h"
   30.29 +#include "extfilt.h"
   30.30 +#include "pot.h"
   30.31 +
   30.32 +class SIDFP
   30.33 +{
   30.34 +public:
   30.35 +  SIDFP();
   30.36 +  ~SIDFP();
   30.37 +
   30.38 +  static float kinked_dac(const int x, const float nonlinearity, const int bits);
   30.39 +  bool sse_enabled() { return can_use_sse; }
   30.40 +
   30.41 +  void set_chip_model(chip_model model);
   30.42 +  FilterFP& get_filter() { return filter; }
   30.43 +  void enable_filter(bool enable);
   30.44 +  void enable_external_filter(bool enable);
   30.45 +  bool set_sampling_parameters(float clock_freq, sampling_method method,
   30.46 +                               float sample_freq, float pass_freq = -1);
   30.47 +  void adjust_sampling_frequency(float sample_freq);
   30.48 +  void set_voice_nonlinearity(float nonlinearity);
   30.49 +
   30.50 +  void clock();
   30.51 +  int clock(cycle_count& delta_t, short* buf, int n, int interleave = 1);
   30.52 +  void reset();
   30.53 +  
   30.54 +  // Read/write registers.
   30.55 +  reg8 read(reg8 offset);
   30.56 +  void write(reg8 offset, reg8 value);
   30.57 +
   30.58 +  // Read/write state.
   30.59 +  class State
   30.60 +  {
   30.61 +  public:
   30.62 +    State();
   30.63 +
   30.64 +    char sid_register[0x20];
   30.65 +
   30.66 +    reg8 bus_value;
   30.67 +    cycle_count bus_value_ttl;
   30.68 +
   30.69 +    reg24 accumulator[3];
   30.70 +    reg24 shift_register[3];
   30.71 +    reg16 rate_counter[3];
   30.72 +    reg16 rate_counter_period[3];
   30.73 +    reg16 exponential_counter[3];
   30.74 +    reg16 exponential_counter_period[3];
   30.75 +    reg8 envelope_counter[3];
   30.76 +    EnvelopeGeneratorFP::State envelope_state[3];
   30.77 +    bool hold_zero[3];
   30.78 +  };
   30.79 +    
   30.80 +  State read_state();
   30.81 +  void write_state(const State& state);
   30.82 +
   30.83 +  // 16-bit input (EXT IN).
   30.84 +  void input(int sample);
   30.85 +
   30.86 +  // output in range -32768 .. 32767, not clipped (AUDIO OUT)
   30.87 +  float output();
   30.88 +
   30.89 +protected:
   30.90 +  static double I0(double x);
   30.91 +  RESID_INLINE int clock_interpolate(cycle_count& delta_t, short* buf, int n,
   30.92 +                                     int interleave);
   30.93 +  RESID_INLINE int clock_resample_interpolate(cycle_count& delta_t, short* buf,
   30.94 +                                              int n, int interleave);
   30.95 +  RESID_INLINE void age_bus_value(cycle_count);
   30.96 +
   30.97 +  VoiceFP voice[3];
   30.98 +  FilterFP filter;
   30.99 +  ExternalFilterFP extfilt;
  30.100 +  PotentiometerFP potx;
  30.101 +  PotentiometerFP poty;
  30.102 +
  30.103 +  reg8 bus_value;
  30.104 +  cycle_count bus_value_ttl;
  30.105 +
  30.106 +  float clock_frequency;
  30.107 +
  30.108 +  // External audio input.
  30.109 +  float ext_in;
  30.110 +
  30.111 +  enum { RINGSIZE = 16384 };
  30.112 +
  30.113 +  // Sampling variables.
  30.114 +  sampling_method sampling;
  30.115 +  float cycles_per_sample;
  30.116 +  float sample_offset;
  30.117 +  int sample_index;
  30.118 +  int fir_N;
  30.119 +  int fir_RES;
  30.120 +  
  30.121 +  // Linear interpolation helper
  30.122 +  float sample_prev;
  30.123 +
  30.124 +  // Ring buffer with overflow for contiguous storage of RINGSIZE samples.
  30.125 +  float* sample;
  30.126 +
  30.127 +  // FIR_RES filter tables (FIR_N*FIR_RES).
  30.128 +  float* fir;
  30.129 +
  30.130 +  bool can_use_sse;
  30.131 +};
  30.132 +
  30.133 +#endif // not __SID_H__
    31.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    31.2 +++ b/src/resid-fp/siddefs-fp.h	Sun May 11 14:09:13 2014 +0100
    31.3 @@ -0,0 +1,88 @@
    31.4 +//  ---------------------------------------------------------------------------
    31.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    31.6 +//  Copyright (C) 1999  Dag Lem <resid@nimrod.no>
    31.7 +//
    31.8 +//  This program is free software; you can redistribute it and/or modify
    31.9 +//  it under the terms of the GNU General Public License as published by
   31.10 +//  the Free Software Foundation; either version 2 of the License, or
   31.11 +//  (at your option) any later version.
   31.12 +//
   31.13 +//  This program is distributed in the hope that it will be useful,
   31.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   31.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   31.16 +//  GNU General Public License for more details.
   31.17 +//
   31.18 +//  You should have received a copy of the GNU General Public License
   31.19 +//  along with this program; if not, write to the Free Software
   31.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   31.21 +//  ---------------------------------------------------------------------------
   31.22 +
   31.23 +#ifndef __SIDDEFS_FP_H__
   31.24 +#define __SIDDEFS_FP_H__
   31.25 +
   31.26 +#ifndef M_PI
   31.27 +#define M_PI    3.14159265358979323846
   31.28 +#define M_PI_f  3.14159265358979323846f
   31.29 +#else
   31.30 +#define M_PI_f  ((float) M_PI)
   31.31 +#endif
   31.32 +
   31.33 +#ifndef M_LN2
   31.34 +#define M_LN2   0.69314718055994530942
   31.35 +#define M_LN2_f 0.69314718055994530942f
   31.36 +#else
   31.37 +#define M_LN2_f ((float) M_LN2)
   31.38 +#endif
   31.39 +
   31.40 +// Define bool, true, and false for C++ compilers that lack these keywords.
   31.41 +#define RESID_HAVE_BOOL 1
   31.42 +
   31.43 +#if !RESID_HAVE_BOOL
   31.44 +typedef int bool;
   31.45 +const bool true = 1;
   31.46 +const bool false = 0;
   31.47 +#endif
   31.48 +
   31.49 +// We could have used the smallest possible data type for each SID register,
   31.50 +// however this would give a slower engine because of data type conversions.
   31.51 +// An int is assumed to be at least 32 bits (necessary in the types reg24,
   31.52 +// cycle_count, and sound_sample). GNU does not support 16-bit machines
   31.53 +// (GNU Coding Standards: Portability between CPUs), so this should be
   31.54 +// a valid assumption.
   31.55 +
   31.56 +typedef unsigned int reg4;
   31.57 +typedef unsigned int reg8;
   31.58 +typedef unsigned int reg12;
   31.59 +typedef unsigned int reg16;
   31.60 +typedef unsigned int reg24;
   31.61 +
   31.62 +typedef int cycle_count;
   31.63 +
   31.64 +enum chip_model { MOS6581FP=1, MOS8580FP };
   31.65 +
   31.66 +enum sampling_method { SAMPLE_INTERPOLATE=1, SAMPLE_RESAMPLE_INTERPOLATE };
   31.67 +
   31.68 +extern "C"
   31.69 +{
   31.70 +#ifndef __VERSION_CC__
   31.71 +extern const char* resid_version_string;
   31.72 +#else
   31.73 +const char* resid_version_string = VERSION;
   31.74 +#endif
   31.75 +}
   31.76 +
   31.77 +// Inlining on/off.
   31.78 +#define RESID_INLINE inline
   31.79 +
   31.80 +#if defined(__SSE__) || (defined(_MSC_VER) && (_MSC_VER >= 1300))
   31.81 +#define RESID_USE_SSE 1
   31.82 +#else
   31.83 +#define RESID_USE_SSE 0
   31.84 +#endif
   31.85 +
   31.86 +#define HAVE_LOGF
   31.87 +#define HAVE_EXPF
   31.88 +#define HAVE_LOGF_PROTOTYPE
   31.89 +#define HAVE_EXPF_PROTOTYPE
   31.90 +
   31.91 +#endif // not __SIDDEFS_H__
    32.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    32.2 +++ b/src/resid-fp/siddefs-fp.h.in	Sun May 11 14:09:13 2014 +0100
    32.3 @@ -0,0 +1,87 @@
    32.4 +//  ---------------------------------------------------------------------------
    32.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    32.6 +//  Copyright (C) 1999  Dag Lem <resid@nimrod.no>
    32.7 +//
    32.8 +//  This program is free software; you can redistribute it and/or modify
    32.9 +//  it under the terms of the GNU General Public License as published by
   32.10 +//  the Free Software Foundation; either version 2 of the License, or
   32.11 +//  (at your option) any later version.
   32.12 +//
   32.13 +//  This program is distributed in the hope that it will be useful,
   32.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   32.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   32.16 +//  GNU General Public License for more details.
   32.17 +//
   32.18 +//  You should have received a copy of the GNU General Public License
   32.19 +//  along with this program; if not, write to the Free Software
   32.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   32.21 +//  ---------------------------------------------------------------------------
   32.22 +
   32.23 +#ifndef __SIDDEFS_FP_H__
   32.24 +#define __SIDDEFS_FP_H__
   32.25 +
   32.26 +#ifndef M_PI
   32.27 +#define M_PI    3.14159265358979323846
   32.28 +#define M_PI_f  3.14159265358979323846f
   32.29 +#else
   32.30 +#define M_PI_f  ((float) M_PI)
   32.31 +#endif
   32.32 +
   32.33 +#ifndef M_LN2
   32.34 +#define M_LN2   0.69314718055994530942
   32.35 +#define M_LN2_f 0.69314718055994530942f
   32.36 +#else
   32.37 +#define M_LN2_f ((float) M_LN2)
   32.38 +#endif
   32.39 +
   32.40 +// Define bool, true, and false for C++ compilers that lack these keywords.
   32.41 +#define RESID_HAVE_BOOL @RESID_HAVE_BOOL@
   32.42 +
   32.43 +#if !RESID_HAVE_BOOL
   32.44 +typedef int bool;
   32.45 +const bool true = 1;
   32.46 +const bool false = 0;
   32.47 +#endif
   32.48 +
   32.49 +// We could have used the smallest possible data type for each SID register,
   32.50 +// however this would give a slower engine because of data type conversions.
   32.51 +// An int is assumed to be at least 32 bits (necessary in the types reg24,
   32.52 +// cycle_count, and sound_sample). GNU does not support 16-bit machines
   32.53 +// (GNU Coding Standards: Portability between CPUs), so this should be
   32.54 +// a valid assumption.
   32.55 +
   32.56 +typedef unsigned int reg4;
   32.57 +typedef unsigned int reg8;
   32.58 +typedef unsigned int reg12;
   32.59 +typedef unsigned int reg16;
   32.60 +typedef unsigned int reg24;
   32.61 +
   32.62 +typedef int cycle_count;
   32.63 +
   32.64 +enum chip_model { MOS6581FP=1, MOS8580FP };
   32.65 +
   32.66 +enum sampling_method { SAMPLE_INTERPOLATE=1, SAMPLE_RESAMPLE_INTERPOLATE };
   32.67 +
   32.68 +extern "C"
   32.69 +{
   32.70 +#ifndef __VERSION_CC__
   32.71 +extern const char* resid_version_string;
   32.72 +#else
   32.73 +const char* resid_version_string = VERSION;
   32.74 +#endif
   32.75 +}
   32.76 +
   32.77 +// Inlining on/off.
   32.78 +#define RESID_INLINE @RESID_INLINE@
   32.79 +
   32.80 +#define RESID_USE_SSE @RESID_USE_SSE@
   32.81 +
   32.82 +#if @HAVE_LOGF_PROTOTYPE@
   32.83 +#define HAVE_LOGF_PROTOTYPE
   32.84 +#endif
   32.85 +
   32.86 +#if @HAVE_EXPF_PROTOTYPE@
   32.87 +#define HAVE_EXPF_PROTOTYPE
   32.88 +#endif
   32.89 +
   32.90 +#endif // not __SIDDEFS_H__
    33.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    33.2 +++ b/src/resid-fp/version.cc	Sun May 11 14:09:13 2014 +0100
    33.3 @@ -0,0 +1,21 @@
    33.4 +//  ---------------------------------------------------------------------------
    33.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    33.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    33.7 +//
    33.8 +//  This program is free software; you can redistribute it and/or modify
    33.9 +//  it under the terms of the GNU General Public License as published by
   33.10 +//  the Free Software Foundation; either version 2 of the License, or
   33.11 +//  (at your option) any later version.
   33.12 +//
   33.13 +//  This program is distributed in the hope that it will be useful,
   33.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   33.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   33.16 +//  GNU General Public License for more details.
   33.17 +//
   33.18 +//  You should have received a copy of the GNU General Public License
   33.19 +//  along with this program; if not, write to the Free Software
   33.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   33.21 +//  ---------------------------------------------------------------------------
   33.22 +
   33.23 +#define __VERSION_CC__
   33.24 +#include "siddefs-fp.h"
    34.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    34.2 +++ b/src/resid-fp/voice.cc	Sun May 11 14:09:13 2014 +0100
    34.3 @@ -0,0 +1,102 @@
    34.4 +//  ---------------------------------------------------------------------------
    34.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    34.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    34.7 +//
    34.8 +//  This program is free software; you can redistribute it and/or modify
    34.9 +//  it under the terms of the GNU General Public License as published by
   34.10 +//  the Free Software Foundation; either version 2 of the License, or
   34.11 +//  (at your option) any later version.
   34.12 +//
   34.13 +//  This program is distributed in the hope that it will be useful,
   34.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   34.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   34.16 +//  GNU General Public License for more details.
   34.17 +//
   34.18 +//  You should have received a copy of the GNU General Public License
   34.19 +//  along with this program; if not, write to the Free Software
   34.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   34.21 +//  ---------------------------------------------------------------------------
   34.22 +
   34.23 +#define __VOICE_CC__
   34.24 +#include "voice.h"
   34.25 +#include "sid.h"
   34.26 +
   34.27 +// ----------------------------------------------------------------------------
   34.28 +// Constructor.
   34.29 +// ----------------------------------------------------------------------------
   34.30 +VoiceFP::VoiceFP()
   34.31 +{
   34.32 +  nonlinearity = 1.f;
   34.33 +  set_chip_model(MOS6581FP);
   34.34 +}
   34.35 +
   34.36 +/* Keep this at 1.f for 8580, there are no 6581-only codepaths in this file! */
   34.37 +void VoiceFP::set_nonlinearity(float nl)
   34.38 +{
   34.39 +    nonlinearity = nl;
   34.40 +    calculate_dac_tables();
   34.41 +}
   34.42 +
   34.43 +// ----------------------------------------------------------------------------
   34.44 +// Set chip model.
   34.45 +// ----------------------------------------------------------------------------
   34.46 +void VoiceFP::set_chip_model(chip_model model)
   34.47 +{
   34.48 +  wave.set_chip_model(model);
   34.49 +
   34.50 +  if (model == MOS6581FP) {
   34.51 +    /* there is some level from each voice even if the env is down and osc
   34.52 +     * is stopped. You can hear this by routing a voice into filter (filter
   34.53 +     * should be kept disabled for this) as the master level changes. This
   34.54 +     * tunable affects the volume of digis. */
   34.55 +    voice_DC = 0x800 * 0xff;
   34.56 +    /* In 8580 the waveforms seem well centered, but on the 6581 there is some
   34.57 +     * offset change as envelope grows, indicating that the waveforms are not
   34.58 +     * perfectly centered. I estimate the value ~ 0x600 for my R4AR, and ReSID
   34.59 +     * has used another measurement technique and got 0x380. */
   34.60 +    wave_zero = 0x600;
   34.61 +    calculate_dac_tables();
   34.62 +  }
   34.63 +  else {
   34.64 +    /* 8580 is thought to be perfect, apart from small negative offset due to
   34.65 +     * ext-in mixing, I think. */
   34.66 +    voice_DC = 0;
   34.67 +    wave_zero = 0x800;
   34.68 +    calculate_dac_tables();
   34.69 +  }
   34.70 +}
   34.71 +
   34.72 +void VoiceFP::calculate_dac_tables()
   34.73 +{
   34.74 +    int i;
   34.75 +    for (i = 0; i < 256; i ++)
   34.76 +        env_dac[i] = SIDFP::kinked_dac(i, nonlinearity, 8);
   34.77 +    for (i = 0; i < 4096; i ++)
   34.78 +        voice_dac[i] = SIDFP::kinked_dac(i, nonlinearity, 12) - wave_zero;
   34.79 +}
   34.80 +
   34.81 +// ----------------------------------------------------------------------------
   34.82 +// Set sync source.
   34.83 +// ----------------------------------------------------------------------------
   34.84 +void VoiceFP::set_sync_source(VoiceFP* source)
   34.85 +{
   34.86 +  wave.set_sync_source(&source->wave);
   34.87 +}
   34.88 +
   34.89 +// ----------------------------------------------------------------------------
   34.90 +// Register functions.
   34.91 +// ----------------------------------------------------------------------------
   34.92 +void VoiceFP::writeCONTROL_REG(reg8 control)
   34.93 +{
   34.94 +  wave.writeCONTROL_REG(control);
   34.95 +  envelope.writeCONTROL_REG(control);
   34.96 +}
   34.97 +
   34.98 +// ----------------------------------------------------------------------------
   34.99 +// SID reset.
  34.100 +// ----------------------------------------------------------------------------
  34.101 +void VoiceFP::reset()
  34.102 +{
  34.103 +  wave.reset();
  34.104 +  envelope.reset();
  34.105 +}
    35.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    35.2 +++ b/src/resid-fp/voice.h	Sun May 11 14:09:13 2014 +0100
    35.3 @@ -0,0 +1,73 @@
    35.4 +//  ---------------------------------------------------------------------------
    35.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    35.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    35.7 +//
    35.8 +//  This program is free software; you can redistribute it and/or modify
    35.9 +//  it under the terms of the GNU General Public License as published by
   35.10 +//  the Free Software Foundation; either version 2 of the License, or
   35.11 +//  (at your option) any later version.
   35.12 +//
   35.13 +//  This program is distributed in the hope that it will be useful,
   35.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   35.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   35.16 +//  GNU General Public License for more details.
   35.17 +//
   35.18 +//  You should have received a copy of the GNU General Public License
   35.19 +//  along with this program; if not, write to the Free Software
   35.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   35.21 +//  ---------------------------------------------------------------------------
   35.22 +
   35.23 +#ifndef __VOICE_H__
   35.24 +#define __VOICE_H__
   35.25 +
   35.26 +#include "siddefs-fp.h"
   35.27 +#include "wave.h"
   35.28 +#include "envelope.h"
   35.29 +
   35.30 +class VoiceFP
   35.31 +{
   35.32 +public:
   35.33 +  VoiceFP();
   35.34 +
   35.35 +  void set_chip_model(chip_model model);
   35.36 +  void set_sync_source(VoiceFP*);
   35.37 +  void reset();
   35.38 +
   35.39 +  void writeCONTROL_REG(reg8);
   35.40 +
   35.41 +  // Amplitude modulated waveform output.
   35.42 +  // Range [-2048*255, 2047*255].
   35.43 +  RESID_INLINE float output();
   35.44 +
   35.45 +  void set_nonlinearity(float nl);
   35.46 +protected:
   35.47 +  void calculate_dac_tables();
   35.48 +
   35.49 +  WaveformGeneratorFP wave;
   35.50 +  EnvelopeGeneratorFP envelope;
   35.51 +
   35.52 +  // Multiplying D/A DC offset.
   35.53 +  float voice_DC, wave_zero, nonlinearity;
   35.54 +
   35.55 +  float env_dac[256];
   35.56 +  float voice_dac[4096];
   35.57 +friend class SIDFP;
   35.58 +};
   35.59 +
   35.60 +// ----------------------------------------------------------------------------
   35.61 +// Amplitude modulated waveform output.
   35.62 +// Ideal range [-2048*255, 2047*255].
   35.63 +// ----------------------------------------------------------------------------
   35.64 +
   35.65 +RESID_INLINE
   35.66 +float VoiceFP::output()
   35.67 +{
   35.68 +    unsigned int w = wave.output();
   35.69 +    unsigned int e = envelope.output();
   35.70 +    float _w = voice_dac[w];
   35.71 +    float _e = env_dac[e];
   35.72 +
   35.73 +    return _w * _e + voice_DC;
   35.74 +}
   35.75 +
   35.76 +#endif // not __VOICE_H__
    36.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    36.2 +++ b/src/resid-fp/wave.cc	Sun May 11 14:09:13 2014 +0100
    36.3 @@ -0,0 +1,151 @@
    36.4 +//  ---------------------------------------------------------------------------
    36.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    36.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    36.7 +//
    36.8 +//  This program is free software; you can redistribute it and/or modify
    36.9 +//  it under the terms of the GNU General Public License as published by
   36.10 +//  the Free Software Foundation; either version 2 of the License, or
   36.11 +//  (at your option) any later version.
   36.12 +//
   36.13 +//  This program is distributed in the hope that it will be useful,
   36.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   36.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   36.16 +//  GNU General Public License for more details.
   36.17 +//
   36.18 +//  You should have received a copy of the GNU General Public License
   36.19 +//  along with this program; if not, write to the Free Software
   36.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   36.21 +//  ---------------------------------------------------------------------------
   36.22 +
   36.23 +#define __WAVE_CC__
   36.24 +#include "wave.h"
   36.25 +
   36.26 +// ----------------------------------------------------------------------------
   36.27 +// Constructor.
   36.28 +// ----------------------------------------------------------------------------
   36.29 +WaveformGeneratorFP::WaveformGeneratorFP()
   36.30 +{
   36.31 +  sync_source = this;
   36.32 +
   36.33 +  set_chip_model(MOS6581FP);
   36.34 +
   36.35 +  reset();
   36.36 +}
   36.37 +
   36.38 +
   36.39 +// ----------------------------------------------------------------------------
   36.40 +// Set sync source.
   36.41 +// ----------------------------------------------------------------------------
   36.42 +void WaveformGeneratorFP::set_sync_source(WaveformGeneratorFP* source)
   36.43 +{
   36.44 +  sync_source = source;
   36.45 +  source->sync_dest = this;
   36.46 +}
   36.47 +
   36.48 +
   36.49 +// ----------------------------------------------------------------------------
   36.50 +// Set chip model.
   36.51 +// ----------------------------------------------------------------------------
   36.52 +void WaveformGeneratorFP::set_chip_model(chip_model model)
   36.53 +{
   36.54 +  if (model == MOS6581FP) {
   36.55 +    wave__ST = wave6581__ST;
   36.56 +    wave_P_T = wave6581_P_T;
   36.57 +    wave_PS_ = wave6581_PS_;
   36.58 +    wave_PST = wave6581_PST;
   36.59 +  }
   36.60 +  else {
   36.61 +    wave__ST = wave8580__ST;
   36.62 +    wave_P_T = wave8580_P_T;
   36.63 +    wave_PS_ = wave8580_PS_;
   36.64 +    wave_PST = wave8580_PST;
   36.65 +  }
   36.66 +}
   36.67 +
   36.68 +
   36.69 +// ----------------------------------------------------------------------------
   36.70 +// Register functions.
   36.71 +// ----------------------------------------------------------------------------
   36.72 +void WaveformGeneratorFP::writeFREQ_LO(reg8 freq_lo)
   36.73 +{
   36.74 +  freq = (freq & 0xff00) | (freq_lo & 0x00ff);
   36.75 +}
   36.76 +
   36.77 +void WaveformGeneratorFP::writeFREQ_HI(reg8 freq_hi)
   36.78 +{
   36.79 +  freq = ((freq_hi << 8) & 0xff00) | (freq & 0x00ff);
   36.80 +}
   36.81 +
   36.82 +/* The original form was (acc >> 12) >= pw, where truth value is not affected
   36.83 + * by the contents of the low 12 bits. Therefore the lowest bits must be zero
   36.84 + * in the new formulation acc >= (pw << 12). */
   36.85 +void WaveformGeneratorFP::writePW_LO(reg8 pw_lo)
   36.86 +{
   36.87 +  pw = (pw & 0xf00) | (pw_lo & 0x0ff);
   36.88 +  pw_acc_scale = pw << 12;
   36.89 +}
   36.90 +
   36.91 +void WaveformGeneratorFP::writePW_HI(reg8 pw_hi)
   36.92 +{
   36.93 +  pw = ((pw_hi << 8) & 0xf00) | (pw & 0x0ff);
   36.94 +  pw_acc_scale = pw << 12;
   36.95 +}
   36.96 +
   36.97 +void WaveformGeneratorFP::writeCONTROL_REG(reg8 control)
   36.98 +{
   36.99 +  waveform = (control >> 4) & 0x0f;
  36.100 +  ring_mod = control & 0x04;
  36.101 +  sync = control & 0x02;
  36.102 +
  36.103 +  reg8 test_next = control & 0x08;
  36.104 +
  36.105 +  /* SounDemoN found out that test bit can be used to control the noise
  36.106 +   * register. Hear the result in Bojojoing.sid. */
  36.107 +
  36.108 +  // testbit set. invert bit 19 and write it to bit 1
  36.109 +  if (test_next && !test) {
  36.110 +    accumulator = 0;
  36.111 +    reg24 bit19 = (shift_register >> 19) & 1;
  36.112 +    shift_register = (shift_register & 0x7ffffd) | ((bit19^1) << 1);
  36.113 +    noise_overwrite_delay = 200000; /* 200 ms, probably too generous? */
  36.114 +  }
  36.115 +  // Test bit cleared.
  36.116 +  // The accumulator starts counting, and the shift register is reset to
  36.117 +  // the value 0x7ffff8.
  36.118 +  else if (!test_next && test) {
  36.119 +    reg24 bit0 = ((shift_register >> 22) ^ (shift_register >> 17)) & 0x1;
  36.120 +    shift_register <<= 1;
  36.121 +    shift_register |= bit0;
  36.122 +  }
  36.123 +  // clear output bits of shift register if noise and other waveforms
  36.124 +  // are selected simultaneously
  36.125 +  if (waveform > 8) {
  36.126 +    shift_register &= 0x7fffff^(1<<22)^(1<<20)^(1<<16)^(1<<13)^(1<<11)^(1<<7)^(1<<4)^(1<<2);
  36.127 +  }
  36.128 +
  36.129 +  test = test_next;
  36.130 +  
  36.131 +  /* update noise anyway, just in case the above paths triggered */
  36.132 +  noise_output_cached = outputN___();
  36.133 +}
  36.134 +
  36.135 +reg8 WaveformGeneratorFP::readOSC()
  36.136 +{
  36.137 +  return output() >> 4;
  36.138 +}
  36.139 +
  36.140 +// ----------------------------------------------------------------------------
  36.141 +// SID reset.
  36.142 +// ----------------------------------------------------------------------------
  36.143 +void WaveformGeneratorFP::reset()
  36.144 +{
  36.145 +  accumulator = 0;
  36.146 +  previous = 0;
  36.147 +  shift_register = 0x7ffffc;
  36.148 +  freq = 0;
  36.149 +  pw = 0;
  36.150 +  pw_acc_scale = 0;
  36.151 +  test = 0;
  36.152 +  writeCONTROL_REG(0);
  36.153 +  msb_rising = false;
  36.154 +}
    37.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    37.2 +++ b/src/resid-fp/wave.h	Sun May 11 14:09:13 2014 +0100
    37.3 @@ -0,0 +1,457 @@
    37.4 +//  ---------------------------------------------------------------------------
    37.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    37.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    37.7 +//
    37.8 +//  This program is free software; you can redistribute it and/or modify
    37.9 +//  it under the terms of the GNU General Public License as published by
   37.10 +//  the Free Software Foundation; either version 2 of the License, or
   37.11 +//  (at your option) any later version.
   37.12 +//
   37.13 +//  This program is distributed in the hope that it will be useful,
   37.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   37.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   37.16 +//  GNU General Public License for more details.
   37.17 +//
   37.18 +//  You should have received a copy of the GNU General Public License
   37.19 +//  along with this program; if not, write to the Free Software
   37.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   37.21 +//  ---------------------------------------------------------------------------
   37.22 +
   37.23 +#ifndef __WAVE_H__
   37.24 +#define __WAVE_H__
   37.25 +
   37.26 +#include "siddefs-fp.h"
   37.27 +
   37.28 +// ----------------------------------------------------------------------------
   37.29 +// A 24 bit accumulator is the basis for waveform generation. FREQ is added to
   37.30 +// the lower 16 bits of the accumulator each cycle.
   37.31 +// The accumulator is set to zero when TEST is set, and starts counting
   37.32 +// when TEST is cleared.
   37.33 +// The noise waveform is taken from intermediate bits of a 23 bit shift
   37.34 +// register. This register is clocked by bit 19 of the accumulator.
   37.35 +// ----------------------------------------------------------------------------
   37.36 +class WaveformGeneratorFP
   37.37 +{
   37.38 +public:
   37.39 +  WaveformGeneratorFP();
   37.40 +
   37.41 +  void set_sync_source(WaveformGeneratorFP*);
   37.42 +  void set_chip_model(chip_model model);
   37.43 +
   37.44 +  RESID_INLINE void clock();
   37.45 +  RESID_INLINE void synchronize();
   37.46 +  void reset();
   37.47 +
   37.48 +  void writeFREQ_LO(reg8);
   37.49 +  void writeFREQ_HI(reg8);
   37.50 +  void writePW_LO(reg8);
   37.51 +  void writePW_HI(reg8);
   37.52 +  void writeCONTROL_REG(reg8);
   37.53 +  reg8 readOSC();
   37.54 +
   37.55 +  // 12-bit waveform output.
   37.56 +  RESID_INLINE reg12 output();
   37.57 +
   37.58 +protected:
   37.59 +  const WaveformGeneratorFP* sync_source;
   37.60 +  WaveformGeneratorFP* sync_dest;
   37.61 +
   37.62 +  // Tell whether the accumulator MSB was set high on this cycle.
   37.63 +  bool msb_rising;
   37.64 +
   37.65 +  reg24 accumulator;
   37.66 +  reg24 shift_register;
   37.67 +  reg12 previous, noise_output_cached;
   37.68 +  int noise_overwrite_delay;
   37.69 +
   37.70 +  // Fout  = (Fn*Fclk/16777216)Hz
   37.71 +  reg16 freq;
   37.72 +  // PWout = (PWn/40.95)%, also the same << 12 for direct comparison against acc
   37.73 +  reg12 pw; reg24 pw_acc_scale;
   37.74 +
   37.75 +  // The control register right-shifted 4 bits; used for output function
   37.76 +  // table lookup.
   37.77 +  reg8 waveform;
   37.78 +
   37.79 +  // The remaining control register bits.
   37.80 +  reg8 test;
   37.81 +  reg8 ring_mod;
   37.82 +  reg8 sync;
   37.83 +  // The gate bit is handled by the EnvelopeGenerator.
   37.84 +
   37.85 +  // 16 possible combinations of waveforms.
   37.86 +  RESID_INLINE reg12 output___T();
   37.87 +  RESID_INLINE reg12 output__S_();
   37.88 +  RESID_INLINE reg12 output__ST();
   37.89 +  RESID_INLINE reg12 output_P__();
   37.90 +  RESID_INLINE reg12 output_P_T();
   37.91 +  RESID_INLINE reg12 output_PS_();
   37.92 +  RESID_INLINE reg12 output_PST();
   37.93 +  RESID_INLINE reg12 outputN___();
   37.94 +  RESID_INLINE reg12 outputN__T();
   37.95 +  RESID_INLINE reg12 outputN_S_();
   37.96 +  RESID_INLINE reg12 outputN_ST();
   37.97 +  RESID_INLINE reg12 outputNP__();
   37.98 +  RESID_INLINE reg12 outputNP_T();
   37.99 +  RESID_INLINE reg12 outputNPS_();
  37.100 +  RESID_INLINE reg12 outputNPST();
  37.101 +
  37.102 +  // Sample data for combinations of waveforms.
  37.103 +  static reg8 wave6581__ST[];
  37.104 +  static reg8 wave6581_P_T[];
  37.105 +  static reg8 wave6581_PS_[];
  37.106 +  static reg8 wave6581_PST[];
  37.107 +
  37.108 +  static reg8 wave8580__ST[];
  37.109 +  static reg8 wave8580_P_T[];
  37.110 +  static reg8 wave8580_PS_[];
  37.111 +  static reg8 wave8580_PST[];
  37.112 +
  37.113 +  reg8* wave__ST;
  37.114 +  reg8* wave_P_T;
  37.115 +  reg8* wave_PS_;
  37.116 +  reg8* wave_PST;
  37.117 +
  37.118 +friend class VoiceFP;
  37.119 +friend class SIDFP;
  37.120 +};
  37.121 +
  37.122 +// ----------------------------------------------------------------------------
  37.123 +// SID clocking - 1 cycle.
  37.124 +// ----------------------------------------------------------------------------
  37.125 +RESID_INLINE
  37.126 +void WaveformGeneratorFP::clock()
  37.127 +{
  37.128 +  /* no digital operation if test bit is set. Only emulate analog fade. */
  37.129 +  if (test) {
  37.130 +    if (noise_overwrite_delay != 0) {
  37.131 +        if (-- noise_overwrite_delay == 0) {
  37.132 +            shift_register |= 0x7ffffc;
  37.133 +            noise_output_cached = outputN___();
  37.134 +        }
  37.135 +    }
  37.136 +    return;
  37.137 +  }
  37.138 +
  37.139 +  reg24 accumulator_prev = accumulator;
  37.140 +
  37.141 +  // Calculate new accumulator value;
  37.142 +  accumulator += freq;
  37.143 +  accumulator &= 0xffffff;
  37.144 +
  37.145 +  // Check whether the MSB became set high. This is used for synchronization.
  37.146 +  msb_rising = !(accumulator_prev & 0x800000) && (accumulator & 0x800000);
  37.147 +
  37.148 +  // Shift noise register once for each time accumulator bit 19 is set high.
  37.149 +  if (!(accumulator_prev & 0x080000) && (accumulator & 0x080000)) {
  37.150 +    reg24 bit0 = ((shift_register >> 22) ^ (shift_register >> 17)) & 0x1;
  37.151 +    shift_register <<= 1;
  37.152 +    // optimization: fall into the bit bucket
  37.153 +    //shift_register &= 0x7fffff;
  37.154 +    shift_register |= bit0;
  37.155 +
  37.156 +    /* since noise changes relatively infrequently, we'll avoid the relatively
  37.157 +     * expensive bit shuffling at output time. */
  37.158 +    noise_output_cached = outputN___();
  37.159 +  }
  37.160 +
  37.161 +  // clear output bits of shift register if noise and other waveforms
  37.162 +  // are selected simultaneously
  37.163 +  if (waveform > 8) {
  37.164 +    shift_register &= 0x7fffff^(1<<22)^(1<<20)^(1<<16)^(1<<13)^(1<<11)^(1<<7)^(1<<4)^(1<<2);
  37.165 +    noise_output_cached = outputN___();
  37.166 +  }
  37.167 +}
  37.168 +
  37.169 +// ----------------------------------------------------------------------------
  37.170 +// Synchronize oscillators.
  37.171 +// This must be done after all the oscillators have been clock()'ed since the
  37.172 +// oscillators operate in parallel.
  37.173 +// Note that the oscillators must be clocked exactly on the cycle when the
  37.174 +// MSB is set high for hard sync to operate correctly. See SID::clock().
  37.175 +// ----------------------------------------------------------------------------
  37.176 +RESID_INLINE
  37.177 +void WaveformGeneratorFP::synchronize()
  37.178 +{
  37.179 +  // A special case occurs when a sync source is synced itself on the same
  37.180 +  // cycle as when its MSB is set high. In this case the destination will
  37.181 +  // not be synced. This has been verified by sampling OSC3.
  37.182 +  if (msb_rising && sync_dest->sync && !(sync && sync_source->msb_rising)) {
  37.183 +    sync_dest->accumulator = 0;
  37.184 +  }
  37.185 +}
  37.186 +
  37.187 +
  37.188 +// ----------------------------------------------------------------------------
  37.189 +// Output functions.
  37.190 +// NB! The output from SID 8580 is delayed one cycle compared to SID 6581,
  37.191 +// this is not modeled.
  37.192 +// ----------------------------------------------------------------------------
  37.193 +
  37.194 +// Triangle:
  37.195 +// The upper 12 bits of the accumulator are used.
  37.196 +// The MSB is used to create the falling edge of the triangle by inverting
  37.197 +// the lower 11 bits. The MSB is thrown away and the lower 11 bits are
  37.198 +// left-shifted (half the resolution, full amplitude).
  37.199 +// Ring modulation substitutes the MSB with MSB EOR sync_source MSB.
  37.200 +//
  37.201 +RESID_INLINE
  37.202 +reg12 WaveformGeneratorFP::output___T()
  37.203 +{
  37.204 +  reg24 msb = (ring_mod ? accumulator ^ sync_source->accumulator : accumulator)
  37.205 +    & 0x800000;
  37.206 +  return ((msb ? ~accumulator : accumulator) >> 11) & 0xfff;
  37.207 +}
  37.208 +
  37.209 +// Sawtooth:
  37.210 +// The output is identical to the upper 12 bits of the accumulator.
  37.211 +//
  37.212 +RESID_INLINE
  37.213 +reg12 WaveformGeneratorFP::output__S_()
  37.214 +{
  37.215 +  return accumulator >> 12;
  37.216 +}
  37.217 +
  37.218 +// Pulse:
  37.219 +// The upper 12 bits of the accumulator are used.
  37.220 +// These bits are compared to the pulse width register by a 12 bit digital
  37.221 +// comparator; output is either all one or all zero bits.
  37.222 +// NB! The output is actually delayed one cycle after the compare.
  37.223 +// This is not modeled.
  37.224 +//
  37.225 +// The test bit, when set to one, holds the pulse waveform output at 0xfff
  37.226 +// regardless of the pulse width setting.
  37.227 +//
  37.228 +RESID_INLINE
  37.229 +reg12 WaveformGeneratorFP::output_P__()
  37.230 +{
  37.231 +  return (test || accumulator >= pw_acc_scale) ? 0xfff : 0x000;
  37.232 +}
  37.233 +
  37.234 +// Noise:
  37.235 +// The noise output is taken from intermediate bits of a 23-bit shift register
  37.236 +// which is clocked by bit 19 of the accumulator.
  37.237 +// NB! The output is actually delayed 2 cycles after bit 19 is set high.
  37.238 +// This is not modeled.
  37.239 +//
  37.240 +// Operation: Calculate EOR result, shift register, set bit 0 = result.
  37.241 +//
  37.242 +//                        ----------------------->---------------------
  37.243 +//                        |                                            |
  37.244 +//                   ----EOR----                                       |
  37.245 +//                   |         |                                       |
  37.246 +//                   2 2 2 1 1 1 1 1 1 1 1 1 1                         |
  37.247 +// Register bits:    2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 <---
  37.248 +//                   |   |       |     |   |       |     |   |
  37.249 +// OSC3 bits  :      7   6       5     4   3       2     1   0
  37.250 +//
  37.251 +// Since waveform output is 12 bits the output is left-shifted 4 times.
  37.252 +//
  37.253 +RESID_INLINE
  37.254 +reg12 WaveformGeneratorFP::outputN___()
  37.255 +{
  37.256 +  return
  37.257 +    ((shift_register & 0x400000) >> 11) |
  37.258 +    ((shift_register & 0x100000) >> 10) |
  37.259 +    ((shift_register & 0x010000) >> 7) |
  37.260 +    ((shift_register & 0x002000) >> 5) |
  37.261 +    ((shift_register & 0x000800) >> 4) |
  37.262 +    ((shift_register & 0x000080) >> 1) |
  37.263 +    ((shift_register & 0x000010) << 1) |
  37.264 +    ((shift_register & 0x000004) << 2);
  37.265 +}
  37.266 +
  37.267 +// Combined waveforms:
  37.268 +// By combining waveforms, the bits of each waveform are effectively short
  37.269 +// circuited. A zero bit in one waveform will result in a zero output bit
  37.270 +// (thus the infamous claim that the waveforms are AND'ed).
  37.271 +// However, a zero bit in one waveform will also affect the neighboring bits
  37.272 +// in the output. The reason for this has not been determined.
  37.273 +//
  37.274 +// Example:
  37.275 +// 
  37.276 +//             1 1
  37.277 +// Bit #       1 0 9 8 7 6 5 4 3 2 1 0
  37.278 +//             -----------------------
  37.279 +// Sawtooth    0 0 0 1 1 1 1 1 1 0 0 0
  37.280 +//
  37.281 +// Triangle    0 0 1 1 1 1 1 1 0 0 0 0
  37.282 +//
  37.283 +// AND         0 0 0 1 1 1 1 1 0 0 0 0
  37.284 +//
  37.285 +// Output      0 0 0 0 1 1 1 0 0 0 0 0
  37.286 +//
  37.287 +//
  37.288 +// This behavior would be quite difficult to model exactly, since the SID
  37.289 +// in this case does not act as a digital state machine. Tests show that minor
  37.290 +// (1 bit)  differences can actually occur in the output from otherwise
  37.291 +// identical samples from OSC3 when waveforms are combined. To further
  37.292 +// complicate the situation the output changes slightly with time (more
  37.293 +// neighboring bits are successively set) when the 12-bit waveform
  37.294 +// registers are kept unchanged.
  37.295 +//
  37.296 +// It is probably possible to come up with a valid model for the
  37.297 +// behavior, however this would be far too slow for practical use since it
  37.298 +// would have to be based on the mutual influence of individual bits.
  37.299 +//
  37.300 +// The output is instead approximated by using the upper bits of the
  37.301 +// accumulator as an index to look up the combined output in a table
  37.302 +// containing actual combined waveform samples from OSC3.
  37.303 +// These samples are 8 bit, so 4 bits of waveform resolution is lost.
  37.304 +// All OSC3 samples are taken with FREQ=0x1000, adding a 1 to the upper 12
  37.305 +// bits of the accumulator each cycle for a sample period of 4096 cycles.
  37.306 +//
  37.307 +// Sawtooth+Triangle:
  37.308 +// The sawtooth output is used to look up an OSC3 sample.
  37.309 +// 
  37.310 +// Pulse+Triangle:
  37.311 +// The triangle output is right-shifted and used to look up an OSC3 sample.
  37.312 +// The sample is output if the pulse output is on.
  37.313 +// The reason for using the triangle output as the index is to handle ring
  37.314 +// modulation. Only the first half of the sample is used, which should be OK
  37.315 +// since the triangle waveform has half the resolution of the accumulator.
  37.316 +// 
  37.317 +// Pulse+Sawtooth:
  37.318 +// The sawtooth output is used to look up an OSC3 sample.
  37.319 +// The sample is output if the pulse output is on.
  37.320 +//
  37.321 +// Pulse+Sawtooth+Triangle:
  37.322 +// The sawtooth output is used to look up an OSC3 sample.
  37.323 +// The sample is output if the pulse output is on.
  37.324 +// 
  37.325 +RESID_INLINE
  37.326 +reg12 WaveformGeneratorFP::output__ST()
  37.327 +{
  37.328 +  return wave__ST[output__S_()] << 4;
  37.329 +}
  37.330 +
  37.331 +RESID_INLINE
  37.332 +reg12 WaveformGeneratorFP::output_P_T()
  37.333 +{
  37.334 +  /* ring modulation does something odd with this waveform. But I don't know
  37.335 +   * how to emulate it. */
  37.336 +  return (wave_P_T[output___T() >> 1] << 4) & output_P__();
  37.337 +}
  37.338 +
  37.339 +RESID_INLINE
  37.340 +reg12 WaveformGeneratorFP::output_PS_()
  37.341 +{
  37.342 +  return (wave_PS_[output__S_()] << 4) & output_P__();
  37.343 +}
  37.344 +
  37.345 +RESID_INLINE
  37.346 +reg12 WaveformGeneratorFP::output_PST()
  37.347 +{
  37.348 +  return (wave_PST[output__S_()] << 4) & output_P__();
  37.349 +}
  37.350 +
  37.351 +// Combined waveforms including noise:
  37.352 +// All waveform combinations including noise output zero after a few cycles.
  37.353 +// NB! The effects of such combinations are not fully explored. It is claimed
  37.354 +// that the shift register may be filled with zeroes and locked up, which
  37.355 +// seems to be true.
  37.356 +// We have not attempted to model this behavior, suffice to say that
  37.357 +// there is very little audible output from waveform combinations including
  37.358 +// noise. We hope that nobody is actually using it.
  37.359 +//
  37.360 +RESID_INLINE
  37.361 +reg12 WaveformGeneratorFP::outputN__T()
  37.362 +{
  37.363 +  return 0;
  37.364 +}
  37.365 +
  37.366 +RESID_INLINE
  37.367 +reg12 WaveformGeneratorFP::outputN_S_()
  37.368 +{
  37.369 +  return 0;
  37.370 +}
  37.371 +
  37.372 +RESID_INLINE
  37.373 +reg12 WaveformGeneratorFP::outputN_ST()
  37.374 +{
  37.375 +  return 0;
  37.376 +}
  37.377 +
  37.378 +RESID_INLINE
  37.379 +reg12 WaveformGeneratorFP::outputNP__()
  37.380 +{
  37.381 +  return 0;
  37.382 +}
  37.383 +
  37.384 +RESID_INLINE
  37.385 +reg12 WaveformGeneratorFP::outputNP_T()
  37.386 +{
  37.387 +  return 0;
  37.388 +}
  37.389 +
  37.390 +RESID_INLINE
  37.391 +reg12 WaveformGeneratorFP::outputNPS_()
  37.392 +{
  37.393 +  return 0;
  37.394 +}
  37.395 +
  37.396 +RESID_INLINE
  37.397 +reg12 WaveformGeneratorFP::outputNPST()
  37.398 +{
  37.399 +  return 0;
  37.400 +}
  37.401 +
  37.402 +// ----------------------------------------------------------------------------
  37.403 +// Select one of 16 possible combinations of waveforms.
  37.404 +// ----------------------------------------------------------------------------
  37.405 +RESID_INLINE
  37.406 +reg12 WaveformGeneratorFP::output()
  37.407 +{
  37.408 +  switch (waveform) {
  37.409 +  case 0x1:
  37.410 +    previous = output___T();
  37.411 +    break;
  37.412 +  case 0x2:
  37.413 +    previous = output__S_();
  37.414 +    break;
  37.415 +  case 0x3:
  37.416 +    previous = output__ST();
  37.417 +    break;
  37.418 +  case 0x4:
  37.419 +    previous = output_P__();
  37.420 +    break;
  37.421 +  case 0x5:
  37.422 +    previous = output_P_T();
  37.423 +    break;
  37.424 +  case 0x6:
  37.425 +    previous = output_PS_();
  37.426 +    break;
  37.427 +  case 0x7:
  37.428 +    previous = output_PST();
  37.429 +    break;
  37.430 +  case 0x8:
  37.431 +    previous = noise_output_cached;
  37.432 +    break;
  37.433 +  case 0x9:
  37.434 +    previous = outputN__T();
  37.435 +    break;
  37.436 +  case 0xa:
  37.437 +    previous = outputN_S_();
  37.438 +    break;
  37.439 +  case 0xb:
  37.440 +    previous = outputN_ST();
  37.441 +    break;
  37.442 +  case 0xc:
  37.443 +    previous = outputNP__();
  37.444 +    break;
  37.445 +  case 0xd:
  37.446 +    previous = outputNP_T();
  37.447 +    break;
  37.448 +  case 0xe:
  37.449 +    previous = outputNPS_();
  37.450 +    break;
  37.451 +  case 0xf:
  37.452 +    previous = outputNPST();
  37.453 +    break;
  37.454 +  default:
  37.455 +    break;
  37.456 +  }
  37.457 +  return previous;
  37.458 +}
  37.459 +
  37.460 +#endif // not __WAVE_H__
    38.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    38.2 +++ b/src/resid-fp/wave6581_PST.cc	Sun May 11 14:09:13 2014 +0100
    38.3 @@ -0,0 +1,536 @@
    38.4 +//  ---------------------------------------------------------------------------
    38.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    38.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    38.7 +//
    38.8 +//  This program is free software; you can redistribute it and/or modify
    38.9 +//  it under the terms of the GNU General Public License as published by
   38.10 +//  the Free Software Foundation; either version 2 of the License, or
   38.11 +//  (at your option) any later version.
   38.12 +//
   38.13 +//  This program is distributed in the hope that it will be useful,
   38.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   38.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   38.16 +//  GNU General Public License for more details.
   38.17 +//
   38.18 +//  You should have received a copy of the GNU General Public License
   38.19 +//  along with this program; if not, write to the Free Software
   38.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   38.21 +//  ---------------------------------------------------------------------------
   38.22 +
   38.23 +#include "wave.h"
   38.24 +
   38.25 +reg8 WaveformGeneratorFP::wave6581_PST[] =
   38.26 +{
   38.27 +/* 0x000: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.28 +/* 0x008: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.29 +/* 0x010: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.30 +/* 0x018: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.31 +/* 0x020: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.32 +/* 0x028: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.33 +/* 0x030: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.34 +/* 0x038: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.35 +/* 0x040: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.36 +/* 0x048: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.37 +/* 0x050: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.38 +/* 0x058: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.39 +/* 0x060: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.40 +/* 0x068: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.41 +/* 0x070: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.42 +/* 0x078: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.43 +/* 0x080: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.44 +/* 0x088: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.45 +/* 0x090: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.46 +/* 0x098: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.47 +/* 0x0a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.48 +/* 0x0a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.49 +/* 0x0b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.50 +/* 0x0b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.51 +/* 0x0c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.52 +/* 0x0c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.53 +/* 0x0d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.54 +/* 0x0d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.55 +/* 0x0e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.56 +/* 0x0e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.57 +/* 0x0f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.58 +/* 0x0f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.59 +/* 0x100: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.60 +/* 0x108: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.61 +/* 0x110: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.62 +/* 0x118: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.63 +/* 0x120: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.64 +/* 0x128: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.65 +/* 0x130: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.66 +/* 0x138: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.67 +/* 0x140: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.68 +/* 0x148: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.69 +/* 0x150: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.70 +/* 0x158: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.71 +/* 0x160: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.72 +/* 0x168: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.73 +/* 0x170: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.74 +/* 0x178: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.75 +/* 0x180: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.76 +/* 0x188: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.77 +/* 0x190: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.78 +/* 0x198: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.79 +/* 0x1a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.80 +/* 0x1a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.81 +/* 0x1b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.82 +/* 0x1b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.83 +/* 0x1c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.84 +/* 0x1c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.85 +/* 0x1d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.86 +/* 0x1d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.87 +/* 0x1e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.88 +/* 0x1e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.89 +/* 0x1f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.90 +/* 0x1f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.91 +/* 0x200: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.92 +/* 0x208: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.93 +/* 0x210: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.94 +/* 0x218: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.95 +/* 0x220: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.96 +/* 0x228: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.97 +/* 0x230: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.98 +/* 0x238: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   38.99 +/* 0x240: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.100 +/* 0x248: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.101 +/* 0x250: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.102 +/* 0x258: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.103 +/* 0x260: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.104 +/* 0x268: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.105 +/* 0x270: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.106 +/* 0x278: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.107 +/* 0x280: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.108 +/* 0x288: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.109 +/* 0x290: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.110 +/* 0x298: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.111 +/* 0x2a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.112 +/* 0x2a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.113 +/* 0x2b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.114 +/* 0x2b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.115 +/* 0x2c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.116 +/* 0x2c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.117 +/* 0x2d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.118 +/* 0x2d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.119 +/* 0x2e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.120 +/* 0x2e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.121 +/* 0x2f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.122 +/* 0x2f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.123 +/* 0x300: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.124 +/* 0x308: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.125 +/* 0x310: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.126 +/* 0x318: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.127 +/* 0x320: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.128 +/* 0x328: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.129 +/* 0x330: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.130 +/* 0x338: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.131 +/* 0x340: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.132 +/* 0x348: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.133 +/* 0x350: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.134 +/* 0x358: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.135 +/* 0x360: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.136 +/* 0x368: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.137 +/* 0x370: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.138 +/* 0x378: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.139 +/* 0x380: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.140 +/* 0x388: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.141 +/* 0x390: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.142 +/* 0x398: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.143 +/* 0x3a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.144 +/* 0x3a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.145 +/* 0x3b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.146 +/* 0x3b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.147 +/* 0x3c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.148 +/* 0x3c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.149 +/* 0x3d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.150 +/* 0x3d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.151 +/* 0x3e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.152 +/* 0x3e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.153 +/* 0x3f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.154 +/* 0x3f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f,
  38.155 +/* 0x400: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.156 +/* 0x408: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.157 +/* 0x410: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.158 +/* 0x418: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.159 +/* 0x420: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.160 +/* 0x428: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.161 +/* 0x430: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.162 +/* 0x438: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.163 +/* 0x440: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.164 +/* 0x448: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.165 +/* 0x450: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.166 +/* 0x458: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.167 +/* 0x460: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.168 +/* 0x468: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.169 +/* 0x470: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.170 +/* 0x478: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.171 +/* 0x480: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.172 +/* 0x488: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.173 +/* 0x490: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.174 +/* 0x498: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.175 +/* 0x4a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.176 +/* 0x4a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.177 +/* 0x4b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.178 +/* 0x4b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.179 +/* 0x4c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.180 +/* 0x4c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.181 +/* 0x4d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.182 +/* 0x4d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.183 +/* 0x4e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.184 +/* 0x4e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.185 +/* 0x4f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.186 +/* 0x4f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.187 +/* 0x500: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.188 +/* 0x508: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.189 +/* 0x510: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.190 +/* 0x518: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.191 +/* 0x520: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.192 +/* 0x528: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.193 +/* 0x530: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.194 +/* 0x538: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.195 +/* 0x540: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.196 +/* 0x548: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.197 +/* 0x550: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.198 +/* 0x558: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.199 +/* 0x560: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.200 +/* 0x568: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.201 +/* 0x570: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.202 +/* 0x578: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.203 +/* 0x580: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.204 +/* 0x588: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.205 +/* 0x590: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.206 +/* 0x598: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.207 +/* 0x5a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.208 +/* 0x5a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.209 +/* 0x5b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.210 +/* 0x5b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.211 +/* 0x5c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.212 +/* 0x5c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.213 +/* 0x5d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.214 +/* 0x5d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.215 +/* 0x5e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.216 +/* 0x5e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.217 +/* 0x5f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.218 +/* 0x5f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.219 +/* 0x600: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.220 +/* 0x608: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.221 +/* 0x610: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.222 +/* 0x618: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.223 +/* 0x620: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.224 +/* 0x628: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.225 +/* 0x630: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.226 +/* 0x638: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.227 +/* 0x640: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.228 +/* 0x648: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.229 +/* 0x650: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.230 +/* 0x658: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.231 +/* 0x660: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.232 +/* 0x668: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.233 +/* 0x670: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.234 +/* 0x678: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.235 +/* 0x680: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.236 +/* 0x688: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.237 +/* 0x690: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.238 +/* 0x698: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.239 +/* 0x6a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.240 +/* 0x6a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.241 +/* 0x6b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.242 +/* 0x6b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.243 +/* 0x6c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.244 +/* 0x6c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.245 +/* 0x6d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.246 +/* 0x6d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.247 +/* 0x6e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.248 +/* 0x6e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.249 +/* 0x6f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.250 +/* 0x6f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.251 +/* 0x700: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.252 +/* 0x708: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.253 +/* 0x710: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.254 +/* 0x718: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.255 +/* 0x720: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.256 +/* 0x728: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.257 +/* 0x730: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.258 +/* 0x738: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.259 +/* 0x740: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.260 +/* 0x748: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.261 +/* 0x750: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.262 +/* 0x758: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.263 +/* 0x760: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.264 +/* 0x768: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.265 +/* 0x770: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.266 +/* 0x778: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.267 +/* 0x780: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.268 +/* 0x788: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.269 +/* 0x790: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.270 +/* 0x798: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.271 +/* 0x7a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.272 +/* 0x7a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.273 +/* 0x7b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.274 +/* 0x7b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.275 +/* 0x7c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.276 +/* 0x7c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.277 +/* 0x7d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.278 +/* 0x7d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.279 +/* 0x7e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.280 +/* 0x7e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20,
  38.281 +/* 0x7f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30,
  38.282 +/* 0x7f8: */  0x00, 0x00, 0x00, 0x78, 0x78, 0x7e, 0x7f, 0x7f,
  38.283 +/* 0x800: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.284 +/* 0x808: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.285 +/* 0x810: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.286 +/* 0x818: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.287 +/* 0x820: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.288 +/* 0x828: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.289 +/* 0x830: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.290 +/* 0x838: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.291 +/* 0x840: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.292 +/* 0x848: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.293 +/* 0x850: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.294 +/* 0x858: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.295 +/* 0x860: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.296 +/* 0x868: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.297 +/* 0x870: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.298 +/* 0x878: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.299 +/* 0x880: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.300 +/* 0x888: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.301 +/* 0x890: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.302 +/* 0x898: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.303 +/* 0x8a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.304 +/* 0x8a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.305 +/* 0x8b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.306 +/* 0x8b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.307 +/* 0x8c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.308 +/* 0x8c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.309 +/* 0x8d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.310 +/* 0x8d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.311 +/* 0x8e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.312 +/* 0x8e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.313 +/* 0x8f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.314 +/* 0x8f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.315 +/* 0x900: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.316 +/* 0x908: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.317 +/* 0x910: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.318 +/* 0x918: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.319 +/* 0x920: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.320 +/* 0x928: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.321 +/* 0x930: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.322 +/* 0x938: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.323 +/* 0x940: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.324 +/* 0x948: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.325 +/* 0x950: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.326 +/* 0x958: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.327 +/* 0x960: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.328 +/* 0x968: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.329 +/* 0x970: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.330 +/* 0x978: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.331 +/* 0x980: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.332 +/* 0x988: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.333 +/* 0x990: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.334 +/* 0x998: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.335 +/* 0x9a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.336 +/* 0x9a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.337 +/* 0x9b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.338 +/* 0x9b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.339 +/* 0x9c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.340 +/* 0x9c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.341 +/* 0x9d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.342 +/* 0x9d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.343 +/* 0x9e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.344 +/* 0x9e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.345 +/* 0x9f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.346 +/* 0x9f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.347 +/* 0xa00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.348 +/* 0xa08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.349 +/* 0xa10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.350 +/* 0xa18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.351 +/* 0xa20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.352 +/* 0xa28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.353 +/* 0xa30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.354 +/* 0xa38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.355 +/* 0xa40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.356 +/* 0xa48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.357 +/* 0xa50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.358 +/* 0xa58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.359 +/* 0xa60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.360 +/* 0xa68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.361 +/* 0xa70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.362 +/* 0xa78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.363 +/* 0xa80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.364 +/* 0xa88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.365 +/* 0xa90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.366 +/* 0xa98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.367 +/* 0xaa0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.368 +/* 0xaa8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.369 +/* 0xab0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.370 +/* 0xab8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.371 +/* 0xac0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.372 +/* 0xac8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.373 +/* 0xad0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.374 +/* 0xad8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.375 +/* 0xae0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.376 +/* 0xae8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.377 +/* 0xaf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.378 +/* 0xaf8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.379 +/* 0xb00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.380 +/* 0xb08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.381 +/* 0xb10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.382 +/* 0xb18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.383 +/* 0xb20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.384 +/* 0xb28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.385 +/* 0xb30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.386 +/* 0xb38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.387 +/* 0xb40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.388 +/* 0xb48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.389 +/* 0xb50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.390 +/* 0xb58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.391 +/* 0xb60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.392 +/* 0xb68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.393 +/* 0xb70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.394 +/* 0xb78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.395 +/* 0xb80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.396 +/* 0xb88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.397 +/* 0xb90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.398 +/* 0xb98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.399 +/* 0xba0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.400 +/* 0xba8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.401 +/* 0xbb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.402 +/* 0xbb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.403 +/* 0xbc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.404 +/* 0xbc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.405 +/* 0xbd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.406 +/* 0xbd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.407 +/* 0xbe0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.408 +/* 0xbe8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.409 +/* 0xbf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.410 +/* 0xbf8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f,
  38.411 +/* 0xc00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.412 +/* 0xc08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.413 +/* 0xc10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.414 +/* 0xc18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.415 +/* 0xc20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.416 +/* 0xc28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.417 +/* 0xc30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.418 +/* 0xc38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.419 +/* 0xc40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.420 +/* 0xc48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.421 +/* 0xc50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.422 +/* 0xc58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.423 +/* 0xc60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.424 +/* 0xc68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.425 +/* 0xc70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.426 +/* 0xc78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.427 +/* 0xc80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.428 +/* 0xc88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.429 +/* 0xc90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.430 +/* 0xc98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.431 +/* 0xca0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.432 +/* 0xca8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.433 +/* 0xcb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.434 +/* 0xcb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.435 +/* 0xcc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.436 +/* 0xcc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.437 +/* 0xcd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.438 +/* 0xcd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.439 +/* 0xce0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.440 +/* 0xce8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.441 +/* 0xcf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.442 +/* 0xcf8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.443 +/* 0xd00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.444 +/* 0xd08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.445 +/* 0xd10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.446 +/* 0xd18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.447 +/* 0xd20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.448 +/* 0xd28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.449 +/* 0xd30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.450 +/* 0xd38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.451 +/* 0xd40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.452 +/* 0xd48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.453 +/* 0xd50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.454 +/* 0xd58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.455 +/* 0xd60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.456 +/* 0xd68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.457 +/* 0xd70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.458 +/* 0xd78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.459 +/* 0xd80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.460 +/* 0xd88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.461 +/* 0xd90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.462 +/* 0xd98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.463 +/* 0xda0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.464 +/* 0xda8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.465 +/* 0xdb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.466 +/* 0xdb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.467 +/* 0xdc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.468 +/* 0xdc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.469 +/* 0xdd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.470 +/* 0xdd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.471 +/* 0xde0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.472 +/* 0xde8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.473 +/* 0xdf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.474 +/* 0xdf8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.475 +/* 0xe00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.476 +/* 0xe08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.477 +/* 0xe10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.478 +/* 0xe18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.479 +/* 0xe20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.480 +/* 0xe28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.481 +/* 0xe30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.482 +/* 0xe38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.483 +/* 0xe40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.484 +/* 0xe48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.485 +/* 0xe50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.486 +/* 0xe58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.487 +/* 0xe60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.488 +/* 0xe68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.489 +/* 0xe70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.490 +/* 0xe78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.491 +/* 0xe80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.492 +/* 0xe88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.493 +/* 0xe90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.494 +/* 0xe98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.495 +/* 0xea0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.496 +/* 0xea8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.497 +/* 0xeb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.498 +/* 0xeb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.499 +/* 0xec0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.500 +/* 0xec8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.501 +/* 0xed0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.502 +/* 0xed8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.503 +/* 0xee0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.504 +/* 0xee8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.505 +/* 0xef0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.506 +/* 0xef8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.507 +/* 0xf00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.508 +/* 0xf08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.509 +/* 0xf10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.510 +/* 0xf18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.511 +/* 0xf20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.512 +/* 0xf28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.513 +/* 0xf30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.514 +/* 0xf38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.515 +/* 0xf40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.516 +/* 0xf48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.517 +/* 0xf50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.518 +/* 0xf58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.519 +/* 0xf60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.520 +/* 0xf68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.521 +/* 0xf70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.522 +/* 0xf78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.523 +/* 0xf80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.524 +/* 0xf88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.525 +/* 0xf90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.526 +/* 0xf98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.527 +/* 0xfa0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.528 +/* 0xfa8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.529 +/* 0xfb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.530 +/* 0xfb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.531 +/* 0xfc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.532 +/* 0xfc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.533 +/* 0xfd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.534 +/* 0xfd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.535 +/* 0xfe0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  38.536 +/* 0xfe8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20,
  38.537 +/* 0xff0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30,
  38.538 +/* 0xff8: */  0x00, 0x00, 0x00, 0x78, 0x78, 0x7e, 0x7f, 0x7f,
  38.539 +};
    39.1 Binary file src/resid-fp/wave6581_PST.dat has changed
    40.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    40.2 +++ b/src/resid-fp/wave6581_PS_.cc	Sun May 11 14:09:13 2014 +0100
    40.3 @@ -0,0 +1,536 @@
    40.4 +//  ---------------------------------------------------------------------------
    40.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    40.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    40.7 +//
    40.8 +//  This program is free software; you can redistribute it and/or modify
    40.9 +//  it under the terms of the GNU General Public License as published by
   40.10 +//  the Free Software Foundation; either version 2 of the License, or
   40.11 +//  (at your option) any later version.
   40.12 +//
   40.13 +//  This program is distributed in the hope that it will be useful,
   40.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   40.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   40.16 +//  GNU General Public License for more details.
   40.17 +//
   40.18 +//  You should have received a copy of the GNU General Public License
   40.19 +//  along with this program; if not, write to the Free Software
   40.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   40.21 +//  ---------------------------------------------------------------------------
   40.22 +
   40.23 +#include "wave.h"
   40.24 +
   40.25 +reg8 WaveformGeneratorFP::wave6581_PS_[] =
   40.26 +{
   40.27 +/* 0x000: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.28 +/* 0x008: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.29 +/* 0x010: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.30 +/* 0x018: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.31 +/* 0x020: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.32 +/* 0x028: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.33 +/* 0x030: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.34 +/* 0x038: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.35 +/* 0x040: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.36 +/* 0x048: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.37 +/* 0x050: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.38 +/* 0x058: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.39 +/* 0x060: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.40 +/* 0x068: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.41 +/* 0x070: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.42 +/* 0x078: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.43 +/* 0x080: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.44 +/* 0x088: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.45 +/* 0x090: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.46 +/* 0x098: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.47 +/* 0x0a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.48 +/* 0x0a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.49 +/* 0x0b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.50 +/* 0x0b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.51 +/* 0x0c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.52 +/* 0x0c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.53 +/* 0x0d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.54 +/* 0x0d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.55 +/* 0x0e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.56 +/* 0x0e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.57 +/* 0x0f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.58 +/* 0x0f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07,
   40.59 +/* 0x100: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.60 +/* 0x108: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.61 +/* 0x110: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.62 +/* 0x118: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.63 +/* 0x120: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.64 +/* 0x128: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.65 +/* 0x130: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.66 +/* 0x138: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.67 +/* 0x140: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.68 +/* 0x148: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.69 +/* 0x150: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.70 +/* 0x158: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.71 +/* 0x160: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.72 +/* 0x168: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.73 +/* 0x170: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.74 +/* 0x178: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03,
   40.75 +/* 0x180: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.76 +/* 0x188: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.77 +/* 0x190: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.78 +/* 0x198: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.79 +/* 0x1a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.80 +/* 0x1a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.81 +/* 0x1b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.82 +/* 0x1b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03,
   40.83 +/* 0x1c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.84 +/* 0x1c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.85 +/* 0x1d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.86 +/* 0x1d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.87 +/* 0x1e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.88 +/* 0x1e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.89 +/* 0x1f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.90 +/* 0x1f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x1f,
   40.91 +/* 0x200: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.92 +/* 0x208: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.93 +/* 0x210: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.94 +/* 0x218: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.95 +/* 0x220: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.96 +/* 0x228: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.97 +/* 0x230: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.98 +/* 0x238: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   40.99 +/* 0x240: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.100 +/* 0x248: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.101 +/* 0x250: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.102 +/* 0x258: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.103 +/* 0x260: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.104 +/* 0x268: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.105 +/* 0x270: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.106 +/* 0x278: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03,
  40.107 +/* 0x280: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.108 +/* 0x288: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.109 +/* 0x290: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.110 +/* 0x298: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.111 +/* 0x2a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.112 +/* 0x2a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.113 +/* 0x2b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.114 +/* 0x2b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  40.115 +/* 0x2c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.116 +/* 0x2c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.117 +/* 0x2d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.118 +/* 0x2d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.119 +/* 0x2e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.120 +/* 0x2e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.121 +/* 0x2f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.122 +/* 0x2f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2f,
  40.123 +/* 0x300: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.124 +/* 0x308: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.125 +/* 0x310: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.126 +/* 0x318: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.127 +/* 0x320: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.128 +/* 0x328: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.129 +/* 0x330: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.130 +/* 0x338: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.131 +/* 0x340: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.132 +/* 0x348: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.133 +/* 0x350: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.134 +/* 0x358: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.135 +/* 0x360: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.136 +/* 0x368: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.137 +/* 0x370: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.138 +/* 0x378: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x37,
  40.139 +/* 0x380: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.140 +/* 0x388: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.141 +/* 0x390: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.142 +/* 0x398: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.143 +/* 0x3a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.144 +/* 0x3a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.145 +/* 0x3b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.146 +/* 0x3b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3b,
  40.147 +/* 0x3c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.148 +/* 0x3c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.149 +/* 0x3d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.150 +/* 0x3d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3d,
  40.151 +/* 0x3e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.152 +/* 0x3e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e,
  40.153 +/* 0x3f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x3f,
  40.154 +/* 0x3f8: */  0x00, 0x30, 0x38, 0x3f, 0x3e, 0x3f, 0x3f, 0x3f,
  40.155 +/* 0x400: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.156 +/* 0x408: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.157 +/* 0x410: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.158 +/* 0x418: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.159 +/* 0x420: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.160 +/* 0x428: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.161 +/* 0x430: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.162 +/* 0x438: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.163 +/* 0x440: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.164 +/* 0x448: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.165 +/* 0x450: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.166 +/* 0x458: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.167 +/* 0x460: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.168 +/* 0x468: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.169 +/* 0x470: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.170 +/* 0x478: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03,
  40.171 +/* 0x480: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.172 +/* 0x488: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.173 +/* 0x490: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.174 +/* 0x498: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.175 +/* 0x4a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.176 +/* 0x4a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.177 +/* 0x4b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.178 +/* 0x4b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.179 +/* 0x4c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.180 +/* 0x4c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.181 +/* 0x4d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.182 +/* 0x4d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.183 +/* 0x4e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.184 +/* 0x4e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.185 +/* 0x4f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.186 +/* 0x4f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f,
  40.187 +/* 0x500: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.188 +/* 0x508: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.189 +/* 0x510: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.190 +/* 0x518: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.191 +/* 0x520: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.192 +/* 0x528: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.193 +/* 0x530: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.194 +/* 0x538: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.195 +/* 0x540: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.196 +/* 0x548: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.197 +/* 0x550: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.198 +/* 0x558: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.199 +/* 0x560: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.200 +/* 0x568: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.201 +/* 0x570: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.202 +/* 0x578: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x57,
  40.203 +/* 0x580: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.204 +/* 0x588: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.205 +/* 0x590: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.206 +/* 0x598: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.207 +/* 0x5a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.208 +/* 0x5a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.209 +/* 0x5b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.210 +/* 0x5b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5b,
  40.211 +/* 0x5c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.212 +/* 0x5c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.213 +/* 0x5d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.214 +/* 0x5d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5d,
  40.215 +/* 0x5e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.216 +/* 0x5e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5e,
  40.217 +/* 0x5f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x5f,
  40.218 +/* 0x5f8: */  0x00, 0x40, 0x40, 0x5f, 0x5c, 0x5f, 0x5f, 0x5f,
  40.219 +/* 0x600: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.220 +/* 0x608: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.221 +/* 0x610: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.222 +/* 0x618: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.223 +/* 0x620: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.224 +/* 0x628: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.225 +/* 0x630: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.226 +/* 0x638: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.227 +/* 0x640: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.228 +/* 0x648: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.229 +/* 0x650: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.230 +/* 0x658: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.231 +/* 0x660: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.232 +/* 0x668: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.233 +/* 0x670: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.234 +/* 0x678: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x67,
  40.235 +/* 0x680: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.236 +/* 0x688: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.237 +/* 0x690: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.238 +/* 0x698: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.239 +/* 0x6a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.240 +/* 0x6a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.241 +/* 0x6b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.242 +/* 0x6b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x6b,
  40.243 +/* 0x6c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.244 +/* 0x6c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.245 +/* 0x6d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.246 +/* 0x6d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x6d,
  40.247 +/* 0x6e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
  40.248 +/* 0x6e8: */  0x00, 0x00, 0x00, 0x40, 0x00, 0x40, 0x40, 0x6e,
  40.249 +/* 0x6f0: */  0x00, 0x00, 0x00, 0x40, 0x00, 0x60, 0x60, 0x6f,
  40.250 +/* 0x6f8: */  0x00, 0x60, 0x60, 0x6f, 0x60, 0x6f, 0x6f, 0x6f,
  40.251 +/* 0x700: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.252 +/* 0x708: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.253 +/* 0x710: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.254 +/* 0x718: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
  40.255 +/* 0x720: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.256 +/* 0x728: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
  40.257 +/* 0x730: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
  40.258 +/* 0x738: */  0x00, 0x00, 0x00, 0x40, 0x00, 0x40, 0x60, 0x73,
  40.259 +/* 0x740: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.260 +/* 0x748: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
  40.261 +/* 0x750: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
  40.262 +/* 0x758: */  0x00, 0x00, 0x00, 0x40, 0x00, 0x60, 0x60, 0x75,
  40.263 +/* 0x760: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60,
  40.264 +/* 0x768: */  0x00, 0x00, 0x00, 0x60, 0x00, 0x60, 0x60, 0x76,
  40.265 +/* 0x770: */  0x00, 0x00, 0x00, 0x60, 0x00, 0x60, 0x60, 0x77,
  40.266 +/* 0x778: */  0x00, 0x70, 0x70, 0x77, 0x70, 0x77, 0x77, 0x77,
  40.267 +/* 0x780: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.268 +/* 0x788: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60,
  40.269 +/* 0x790: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60,
  40.270 +/* 0x798: */  0x00, 0x00, 0x00, 0x60, 0x00, 0x60, 0x60, 0x79,
  40.271 +/* 0x7a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60,
  40.272 +/* 0x7a8: */  0x00, 0x00, 0x00, 0x60, 0x00, 0x70, 0x70, 0x7a,
  40.273 +/* 0x7b0: */  0x00, 0x00, 0x00, 0x70, 0x00, 0x70, 0x70, 0x7b,
  40.274 +/* 0x7b8: */  0x40, 0x70, 0x70, 0x7b, 0x78, 0x7b, 0x7b, 0x7b,
  40.275 +/* 0x7c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70,
  40.276 +/* 0x7c8: */  0x00, 0x00, 0x00, 0x70, 0x00, 0x70, 0x70, 0x7c,
  40.277 +/* 0x7d0: */  0x00, 0x00, 0x00, 0x70, 0x40, 0x70, 0x70, 0x7d,
  40.278 +/* 0x7d8: */  0x40, 0x70, 0x78, 0x7d, 0x78, 0x7d, 0x7d, 0x7d,
  40.279 +/* 0x7e0: */  0x00, 0x40, 0x40, 0x78, 0x60, 0x78, 0x78, 0x7e,
  40.280 +/* 0x7e8: */  0x60, 0x78, 0x78, 0x7e, 0x7c, 0x7e, 0x7e, 0x7e,
  40.281 +/* 0x7f0: */  0x70, 0x7c, 0x7c, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f,
  40.282 +/* 0x7f8: */  0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
  40.283 +/* 0x800: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.284 +/* 0x808: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.285 +/* 0x810: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.286 +/* 0x818: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.287 +/* 0x820: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.288 +/* 0x828: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.289 +/* 0x830: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.290 +/* 0x838: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.291 +/* 0x840: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.292 +/* 0x848: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.293 +/* 0x850: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.294 +/* 0x858: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.295 +/* 0x860: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.296 +/* 0x868: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.297 +/* 0x870: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.298 +/* 0x878: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.299 +/* 0x880: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.300 +/* 0x888: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.301 +/* 0x890: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.302 +/* 0x898: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.303 +/* 0x8a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.304 +/* 0x8a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.305 +/* 0x8b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.306 +/* 0x8b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.307 +/* 0x8c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.308 +/* 0x8c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.309 +/* 0x8d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.310 +/* 0x8d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.311 +/* 0x8e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.312 +/* 0x8e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.313 +/* 0x8f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.314 +/* 0x8f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07,
  40.315 +/* 0x900: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.316 +/* 0x908: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.317 +/* 0x910: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.318 +/* 0x918: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.319 +/* 0x920: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.320 +/* 0x928: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.321 +/* 0x930: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.322 +/* 0x938: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.323 +/* 0x940: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.324 +/* 0x948: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.325 +/* 0x950: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.326 +/* 0x958: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.327 +/* 0x960: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.328 +/* 0x968: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.329 +/* 0x970: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.330 +/* 0x978: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03,
  40.331 +/* 0x980: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.332 +/* 0x988: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.333 +/* 0x990: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.334 +/* 0x998: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.335 +/* 0x9a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.336 +/* 0x9a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.337 +/* 0x9b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.338 +/* 0x9b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03,
  40.339 +/* 0x9c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.340 +/* 0x9c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.341 +/* 0x9d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.342 +/* 0x9d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.343 +/* 0x9e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.344 +/* 0x9e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.345 +/* 0x9f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.346 +/* 0x9f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x1f,
  40.347 +/* 0xa00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.348 +/* 0xa08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.349 +/* 0xa10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.350 +/* 0xa18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.351 +/* 0xa20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.352 +/* 0xa28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.353 +/* 0xa30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.354 +/* 0xa38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.355 +/* 0xa40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.356 +/* 0xa48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.357 +/* 0xa50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.358 +/* 0xa58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.359 +/* 0xa60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.360 +/* 0xa68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.361 +/* 0xa70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.362 +/* 0xa78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03,
  40.363 +/* 0xa80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.364 +/* 0xa88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.365 +/* 0xa90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.366 +/* 0xa98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.367 +/* 0xaa0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.368 +/* 0xaa8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.369 +/* 0xab0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.370 +/* 0xab8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  40.371 +/* 0xac0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.372 +/* 0xac8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.373 +/* 0xad0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.374 +/* 0xad8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.375 +/* 0xae0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.376 +/* 0xae8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.377 +/* 0xaf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.378 +/* 0xaf8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2f,
  40.379 +/* 0xb00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.380 +/* 0xb08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.381 +/* 0xb10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.382 +/* 0xb18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.383 +/* 0xb20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.384 +/* 0xb28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.385 +/* 0xb30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.386 +/* 0xb38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.387 +/* 0xb40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.388 +/* 0xb48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.389 +/* 0xb50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.390 +/* 0xb58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.391 +/* 0xb60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.392 +/* 0xb68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.393 +/* 0xb70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.394 +/* 0xb78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x37,
  40.395 +/* 0xb80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.396 +/* 0xb88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.397 +/* 0xb90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.398 +/* 0xb98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.399 +/* 0xba0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.400 +/* 0xba8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.401 +/* 0xbb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.402 +/* 0xbb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3b,
  40.403 +/* 0xbc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.404 +/* 0xbc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.405 +/* 0xbd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.406 +/* 0xbd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3d,
  40.407 +/* 0xbe0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.408 +/* 0xbe8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e,
  40.409 +/* 0xbf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x3f,
  40.410 +/* 0xbf8: */  0x00, 0x30, 0x38, 0x3f, 0x3e, 0x3f, 0x3f, 0x3f,
  40.411 +/* 0xc00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.412 +/* 0xc08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.413 +/* 0xc10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.414 +/* 0xc18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.415 +/* 0xc20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.416 +/* 0xc28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.417 +/* 0xc30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.418 +/* 0xc38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.419 +/* 0xc40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.420 +/* 0xc48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.421 +/* 0xc50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.422 +/* 0xc58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.423 +/* 0xc60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.424 +/* 0xc68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.425 +/* 0xc70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.426 +/* 0xc78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03,
  40.427 +/* 0xc80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.428 +/* 0xc88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.429 +/* 0xc90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.430 +/* 0xc98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.431 +/* 0xca0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.432 +/* 0xca8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.433 +/* 0xcb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.434 +/* 0xcb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.435 +/* 0xcc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.436 +/* 0xcc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.437 +/* 0xcd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.438 +/* 0xcd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.439 +/* 0xce0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.440 +/* 0xce8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.441 +/* 0xcf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.442 +/* 0xcf8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f,
  40.443 +/* 0xd00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.444 +/* 0xd08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.445 +/* 0xd10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.446 +/* 0xd18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.447 +/* 0xd20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.448 +/* 0xd28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.449 +/* 0xd30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.450 +/* 0xd38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.451 +/* 0xd40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.452 +/* 0xd48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.453 +/* 0xd50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.454 +/* 0xd58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.455 +/* 0xd60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.456 +/* 0xd68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.457 +/* 0xd70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.458 +/* 0xd78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x57,
  40.459 +/* 0xd80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.460 +/* 0xd88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.461 +/* 0xd90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.462 +/* 0xd98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.463 +/* 0xda0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.464 +/* 0xda8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.465 +/* 0xdb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.466 +/* 0xdb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5b,
  40.467 +/* 0xdc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.468 +/* 0xdc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.469 +/* 0xdd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.470 +/* 0xdd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5d,
  40.471 +/* 0xde0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.472 +/* 0xde8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5e,
  40.473 +/* 0xdf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x5f,
  40.474 +/* 0xdf8: */  0x00, 0x40, 0x40, 0x5f, 0x5c, 0x5f, 0x5f, 0x5f,
  40.475 +/* 0xe00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.476 +/* 0xe08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.477 +/* 0xe10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.478 +/* 0xe18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.479 +/* 0xe20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.480 +/* 0xe28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.481 +/* 0xe30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.482 +/* 0xe38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.483 +/* 0xe40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.484 +/* 0xe48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.485 +/* 0xe50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.486 +/* 0xe58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.487 +/* 0xe60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.488 +/* 0xe68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.489 +/* 0xe70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.490 +/* 0xe78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x67,
  40.491 +/* 0xe80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.492 +/* 0xe88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.493 +/* 0xe90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.494 +/* 0xe98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.495 +/* 0xea0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.496 +/* 0xea8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.497 +/* 0xeb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.498 +/* 0xeb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x6b,
  40.499 +/* 0xec0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.500 +/* 0xec8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.501 +/* 0xed0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.502 +/* 0xed8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x6d,
  40.503 +/* 0xee0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
  40.504 +/* 0xee8: */  0x00, 0x00, 0x00, 0x40, 0x00, 0x40, 0x40, 0x6e,
  40.505 +/* 0xef0: */  0x00, 0x00, 0x00, 0x40, 0x00, 0x60, 0x60, 0x6f,
  40.506 +/* 0xef8: */  0x00, 0x60, 0x60, 0x6f, 0x60, 0x6f, 0x6f, 0x6f,
  40.507 +/* 0xf00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.508 +/* 0xf08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.509 +/* 0xf10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.510 +/* 0xf18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
  40.511 +/* 0xf20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.512 +/* 0xf28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
  40.513 +/* 0xf30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
  40.514 +/* 0xf38: */  0x00, 0x00, 0x00, 0x40, 0x00, 0x40, 0x60, 0x73,
  40.515 +/* 0xf40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.516 +/* 0xf48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
  40.517 +/* 0xf50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
  40.518 +/* 0xf58: */  0x00, 0x00, 0x00, 0x40, 0x00, 0x60, 0x60, 0x75,
  40.519 +/* 0xf60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60,
  40.520 +/* 0xf68: */  0x00, 0x00, 0x00, 0x60, 0x00, 0x60, 0x60, 0x76,
  40.521 +/* 0xf70: */  0x00, 0x00, 0x00, 0x60, 0x00, 0x60, 0x60, 0x77,
  40.522 +/* 0xf78: */  0x00, 0x70, 0x70, 0x77, 0x70, 0x77, 0x77, 0x77,
  40.523 +/* 0xf80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  40.524 +/* 0xf88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60,
  40.525 +/* 0xf90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60,
  40.526 +/* 0xf98: */  0x00, 0x00, 0x00, 0x60, 0x00, 0x60, 0x60, 0x79,
  40.527 +/* 0xfa0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60,
  40.528 +/* 0xfa8: */  0x00, 0x00, 0x00, 0x60, 0x00, 0x70, 0x70, 0x7a,
  40.529 +/* 0xfb0: */  0x00, 0x00, 0x00, 0x70, 0x00, 0x70, 0x70, 0x7b,
  40.530 +/* 0xfb8: */  0x40, 0x70, 0x70, 0x7b, 0x78, 0x7b, 0x7b, 0x7b,
  40.531 +/* 0xfc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70,
  40.532 +/* 0xfc8: */  0x00, 0x00, 0x00, 0x70, 0x00, 0x70, 0x70, 0x7c,
  40.533 +/* 0xfd0: */  0x00, 0x00, 0x00, 0x70, 0x40, 0x70, 0x70, 0x7d,
  40.534 +/* 0xfd8: */  0x40, 0x70, 0x78, 0x7d, 0x78, 0x7d, 0x7d, 0x7d,
  40.535 +/* 0xfe0: */  0x00, 0x40, 0x40, 0x78, 0x60, 0x78, 0x78, 0x7e,
  40.536 +/* 0xfe8: */  0x60, 0x78, 0x78, 0x7e, 0x7c, 0x7e, 0x7e, 0x7e,
  40.537 +/* 0xff0: */  0x70, 0x7c, 0x7c, 0x7f, 0x7c, 0x7f, 0x7f, 0x7f,
  40.538 +/* 0xff8: */  0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
  40.539 +};
    41.1 Binary file src/resid-fp/wave6581_PS_.dat has changed
    42.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    42.2 +++ b/src/resid-fp/wave6581_P_T.cc	Sun May 11 14:09:13 2014 +0100
    42.3 @@ -0,0 +1,536 @@
    42.4 +//  ---------------------------------------------------------------------------
    42.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    42.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    42.7 +//
    42.8 +//  This program is free software; you can redistribute it and/or modify
    42.9 +//  it under the terms of the GNU General Public License as published by
   42.10 +//  the Free Software Foundation; either version 2 of the License, or
   42.11 +//  (at your option) any later version.
   42.12 +//
   42.13 +//  This program is distributed in the hope that it will be useful,
   42.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   42.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   42.16 +//  GNU General Public License for more details.
   42.17 +//
   42.18 +//  You should have received a copy of the GNU General Public License
   42.19 +//  along with this program; if not, write to the Free Software
   42.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   42.21 +//  ---------------------------------------------------------------------------
   42.22 +
   42.23 +#include "wave.h"
   42.24 +
   42.25 +reg8 WaveformGeneratorFP::wave6581_P_T[] =
   42.26 +{
   42.27 +/* 0x000: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.28 +/* 0x008: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.29 +/* 0x010: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.30 +/* 0x018: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.31 +/* 0x020: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.32 +/* 0x028: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.33 +/* 0x030: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.34 +/* 0x038: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.35 +/* 0x040: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.36 +/* 0x048: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.37 +/* 0x050: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.38 +/* 0x058: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.39 +/* 0x060: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.40 +/* 0x068: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.41 +/* 0x070: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.42 +/* 0x078: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.43 +/* 0x080: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.44 +/* 0x088: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.45 +/* 0x090: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.46 +/* 0x098: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.47 +/* 0x0a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.48 +/* 0x0a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.49 +/* 0x0b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.50 +/* 0x0b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.51 +/* 0x0c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.52 +/* 0x0c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.53 +/* 0x0d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.54 +/* 0x0d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.55 +/* 0x0e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.56 +/* 0x0e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.57 +/* 0x0f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.58 +/* 0x0f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.59 +/* 0x100: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.60 +/* 0x108: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.61 +/* 0x110: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.62 +/* 0x118: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.63 +/* 0x120: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.64 +/* 0x128: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.65 +/* 0x130: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.66 +/* 0x138: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.67 +/* 0x140: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.68 +/* 0x148: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.69 +/* 0x150: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.70 +/* 0x158: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.71 +/* 0x160: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.72 +/* 0x168: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.73 +/* 0x170: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.74 +/* 0x178: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.75 +/* 0x180: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.76 +/* 0x188: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.77 +/* 0x190: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.78 +/* 0x198: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.79 +/* 0x1a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.80 +/* 0x1a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.81 +/* 0x1b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.82 +/* 0x1b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.83 +/* 0x1c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.84 +/* 0x1c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.85 +/* 0x1d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.86 +/* 0x1d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.87 +/* 0x1e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.88 +/* 0x1e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.89 +/* 0x1f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.90 +/* 0x1f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x38, 0x3f,
   42.91 +/* 0x200: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.92 +/* 0x208: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.93 +/* 0x210: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.94 +/* 0x218: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.95 +/* 0x220: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.96 +/* 0x228: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.97 +/* 0x230: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.98 +/* 0x238: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   42.99 +/* 0x240: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.100 +/* 0x248: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.101 +/* 0x250: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.102 +/* 0x258: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.103 +/* 0x260: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.104 +/* 0x268: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.105 +/* 0x270: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.106 +/* 0x278: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.107 +/* 0x280: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.108 +/* 0x288: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.109 +/* 0x290: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.110 +/* 0x298: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.111 +/* 0x2a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.112 +/* 0x2a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.113 +/* 0x2b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.114 +/* 0x2b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.115 +/* 0x2c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.116 +/* 0x2c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.117 +/* 0x2d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.118 +/* 0x2d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.119 +/* 0x2e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.120 +/* 0x2e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.121 +/* 0x2f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.122 +/* 0x2f8: */  0x00, 0x00, 0x00, 0x40, 0x00, 0x40, 0x40, 0x5f,
  42.123 +/* 0x300: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.124 +/* 0x308: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.125 +/* 0x310: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.126 +/* 0x318: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.127 +/* 0x320: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.128 +/* 0x328: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.129 +/* 0x330: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.130 +/* 0x338: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.131 +/* 0x340: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.132 +/* 0x348: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.133 +/* 0x350: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.134 +/* 0x358: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.135 +/* 0x360: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.136 +/* 0x368: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
  42.137 +/* 0x370: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
  42.138 +/* 0x378: */  0x00, 0x00, 0x00, 0x60, 0x00, 0x60, 0x60, 0x6f,
  42.139 +/* 0x380: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.140 +/* 0x388: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.141 +/* 0x390: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.142 +/* 0x398: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
  42.143 +/* 0x3a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.144 +/* 0x3a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60,
  42.145 +/* 0x3b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60,
  42.146 +/* 0x3b8: */  0x00, 0x00, 0x00, 0x60, 0x00, 0x60, 0x70, 0x77,
  42.147 +/* 0x3c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.148 +/* 0x3c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60,
  42.149 +/* 0x3d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60,
  42.150 +/* 0x3d8: */  0x00, 0x00, 0x00, 0x70, 0x40, 0x70, 0x70, 0x7b,
  42.151 +/* 0x3e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x70,
  42.152 +/* 0x3e8: */  0x00, 0x40, 0x40, 0x70, 0x60, 0x70, 0x78, 0x7d,
  42.153 +/* 0x3f0: */  0x00, 0x40, 0x60, 0x78, 0x60, 0x78, 0x78, 0x7e,
  42.154 +/* 0x3f8: */  0x70, 0x7c, 0x7c, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f,
  42.155 +/* 0x400: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.156 +/* 0x408: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.157 +/* 0x410: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.158 +/* 0x418: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.159 +/* 0x420: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.160 +/* 0x428: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.161 +/* 0x430: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.162 +/* 0x438: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.163 +/* 0x440: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.164 +/* 0x448: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.165 +/* 0x450: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.166 +/* 0x458: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.167 +/* 0x460: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.168 +/* 0x468: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.169 +/* 0x470: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.170 +/* 0x478: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  42.171 +/* 0x480: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.172 +/* 0x488: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.173 +/* 0x490: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.174 +/* 0x498: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.175 +/* 0x4a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.176 +/* 0x4a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.177 +/* 0x4b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.178 +/* 0x4b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  42.179 +/* 0x4c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.180 +/* 0x4c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.181 +/* 0x4d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.182 +/* 0x4d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  42.183 +/* 0x4e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.184 +/* 0x4e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  42.185 +/* 0x4f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  42.186 +/* 0x4f8: */  0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x9f,
  42.187 +/* 0x500: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.188 +/* 0x508: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.189 +/* 0x510: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.190 +/* 0x518: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.191 +/* 0x520: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.192 +/* 0x528: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.193 +/* 0x530: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.194 +/* 0x538: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  42.195 +/* 0x540: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.196 +/* 0x548: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.197 +/* 0x550: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.198 +/* 0x558: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  42.199 +/* 0x560: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.200 +/* 0x568: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  42.201 +/* 0x570: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  42.202 +/* 0x578: */  0x00, 0x80, 0x80, 0x80, 0x80, 0xa0, 0xa0, 0xaf,
  42.203 +/* 0x580: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.204 +/* 0x588: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.205 +/* 0x590: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.206 +/* 0x598: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  42.207 +/* 0x5a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.208 +/* 0x5a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80,
  42.209 +/* 0x5b0: */  0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0xa0,
  42.210 +/* 0x5b8: */  0x00, 0x80, 0x80, 0xa0, 0x80, 0xa0, 0xb0, 0xb7,
  42.211 +/* 0x5c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  42.212 +/* 0x5c8: */  0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0xa0,
  42.213 +/* 0x5d0: */  0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0xa0,
  42.214 +/* 0x5d8: */  0x00, 0x80, 0x80, 0xa0, 0x80, 0xb0, 0xb0, 0xbb,
  42.215 +/* 0x5e0: */  0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0xb0,
  42.216 +/* 0x5e8: */  0x80, 0x80, 0x80, 0xb0, 0x80, 0xb0, 0xb8, 0xbd,
  42.217 +/* 0x5f0: */  0x80, 0x80, 0x80, 0xb8, 0xa0, 0xb8, 0xb8, 0xbe,
  42.218 +/* 0x5f8: */  0xa0, 0xb8, 0xbc, 0xbf, 0xbe, 0xbf, 0xbf, 0xbf,
  42.219 +/* 0x600: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.220 +/* 0x608: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.221 +/* 0x610: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.222 +/* 0x618: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.223 +/* 0x620: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.224 +/* 0x628: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.225 +/* 0x630: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.226 +/* 0x638: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0,
  42.227 +/* 0x640: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.228 +/* 0x648: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.229 +/* 0x650: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.230 +/* 0x658: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0,
  42.231 +/* 0x660: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.232 +/* 0x668: */  0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0xc0,
  42.233 +/* 0x670: */  0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0xc0,
  42.234 +/* 0x678: */  0x00, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xcf,
  42.235 +/* 0x680: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.236 +/* 0x688: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  42.237 +/* 0x690: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  42.238 +/* 0x698: */  0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0xc0,
  42.239 +/* 0x6a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  42.240 +/* 0x6a8: */  0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0xc0,
  42.241 +/* 0x6b0: */  0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0xc0, 0xc0,
  42.242 +/* 0x6b8: */  0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xd0, 0xd7,
  42.243 +/* 0x6c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  42.244 +/* 0x6c8: */  0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xc0,
  42.245 +/* 0x6d0: */  0x00, 0x80, 0x80, 0xc0, 0x80, 0xc0, 0xc0, 0xc0,
  42.246 +/* 0x6d8: */  0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xd0, 0xd0, 0xdb,
  42.247 +/* 0x6e0: */  0x00, 0x80, 0x80, 0xc0, 0x80, 0xc0, 0xc0, 0xd0,
  42.248 +/* 0x6e8: */  0x80, 0xc0, 0xc0, 0xd0, 0xc0, 0xd0, 0xd8, 0xdd,
  42.249 +/* 0x6f0: */  0xc0, 0xc0, 0xc0, 0xd0, 0xc0, 0xd8, 0xd8, 0xde,
  42.250 +/* 0x6f8: */  0xc0, 0xd8, 0xdc, 0xdf, 0xdc, 0xdf, 0xdf, 0xdf,
  42.251 +/* 0x700: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.252 +/* 0x708: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  42.253 +/* 0x710: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  42.254 +/* 0x718: */  0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xe0,
  42.255 +/* 0x720: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  42.256 +/* 0x728: */  0x00, 0x80, 0x80, 0xc0, 0x80, 0xc0, 0xc0, 0xe0,
  42.257 +/* 0x730: */  0x00, 0x80, 0x80, 0xc0, 0x80, 0xc0, 0xc0, 0xe0,
  42.258 +/* 0x738: */  0x80, 0xc0, 0xc0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe7,
  42.259 +/* 0x740: */  0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0xc0,
  42.260 +/* 0x748: */  0x00, 0x80, 0x80, 0xc0, 0x80, 0xc0, 0xc0, 0xe0,
  42.261 +/* 0x750: */  0x00, 0x80, 0x80, 0xc0, 0x80, 0xc0, 0xc0, 0xe0,
  42.262 +/* 0x758: */  0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xeb,
  42.263 +/* 0x760: */  0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0,
  42.264 +/* 0x768: */  0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xed,
  42.265 +/* 0x770: */  0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe8, 0xe8, 0xee,
  42.266 +/* 0x778: */  0xe0, 0xe8, 0xec, 0xef, 0xec, 0xef, 0xef, 0xef,
  42.267 +/* 0x780: */  0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0xc0,
  42.268 +/* 0x788: */  0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xf0,
  42.269 +/* 0x790: */  0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0,
  42.270 +/* 0x798: */  0xc0, 0xe0, 0xe0, 0xf0, 0xe0, 0xf0, 0xf0, 0xf3,
  42.271 +/* 0x7a0: */  0x80, 0xc0, 0xc0, 0xe0, 0xc0, 0xe0, 0xe0, 0xf0,
  42.272 +/* 0x7a8: */  0xc0, 0xe0, 0xe0, 0xf0, 0xe0, 0xf0, 0xf0, 0xf5,
  42.273 +/* 0x7b0: */  0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf6,
  42.274 +/* 0x7b8: */  0xf0, 0xf0, 0xf4, 0xf7, 0xf4, 0xf7, 0xf7, 0xf7,
  42.275 +/* 0x7c0: */  0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0,
  42.276 +/* 0x7c8: */  0xe0, 0xe0, 0xe0, 0xf8, 0xf0, 0xf8, 0xf8, 0xf9,
  42.277 +/* 0x7d0: */  0xe0, 0xf0, 0xf0, 0xf8, 0xf0, 0xf8, 0xf8, 0xfa,
  42.278 +/* 0x7d8: */  0xf0, 0xf8, 0xf8, 0xfb, 0xf8, 0xfb, 0xfb, 0xfb,
  42.279 +/* 0x7e0: */  0xe0, 0xf0, 0xf0, 0xf8, 0xf0, 0xf8, 0xfc, 0xfc,
  42.280 +/* 0x7e8: */  0xf8, 0xfc, 0xfc, 0xfd, 0xfc, 0xfd, 0xfd, 0xfd,
  42.281 +/* 0x7f0: */  0xf8, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe,
  42.282 +/* 0x7f8: */  0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
  42.283 +/* 0x800: */  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe,
  42.284 +/* 0x808: */  0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xf8,
  42.285 +/* 0x810: */  0xfd, 0xfd, 0xfd, 0xfc, 0xfd, 0xfc, 0xfc, 0xf8,
  42.286 +/* 0x818: */  0xfc, 0xfc, 0xfc, 0xf0, 0xf8, 0xf0, 0xf0, 0xe0,
  42.287 +/* 0x820: */  0xfb, 0xfb, 0xfb, 0xf8, 0xfb, 0xf8, 0xf8, 0xf0,
  42.288 +/* 0x828: */  0xfa, 0xf8, 0xf8, 0xf0, 0xf8, 0xf0, 0xf0, 0xe0,
  42.289 +/* 0x830: */  0xf9, 0xf8, 0xf8, 0xf0, 0xf8, 0xf0, 0xe0, 0xe0,
  42.290 +/* 0x838: */  0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0,
  42.291 +/* 0x840: */  0xf7, 0xf7, 0xf7, 0xf4, 0xf7, 0xf4, 0xf0, 0xf0,
  42.292 +/* 0x848: */  0xf6, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0,
  42.293 +/* 0x850: */  0xf5, 0xf0, 0xf0, 0xe0, 0xf0, 0xe0, 0xe0, 0xc0,
  42.294 +/* 0x858: */  0xf0, 0xe0, 0xe0, 0xc0, 0xe0, 0xc0, 0xc0, 0x80,
  42.295 +/* 0x860: */  0xf3, 0xf0, 0xf0, 0xe0, 0xf0, 0xe0, 0xe0, 0xc0,
  42.296 +/* 0x868: */  0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80,
  42.297 +/* 0x870: */  0xf0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80,
  42.298 +/* 0x878: */  0xc0, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00,
  42.299 +/* 0x880: */  0xef, 0xef, 0xef, 0xec, 0xef, 0xec, 0xe8, 0xe0,
  42.300 +/* 0x888: */  0xee, 0xe8, 0xe8, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0,
  42.301 +/* 0x890: */  0xed, 0xe8, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0,
  42.302 +/* 0x898: */  0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80,
  42.303 +/* 0x8a0: */  0xeb, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0,
  42.304 +/* 0x8a8: */  0xe0, 0xc0, 0xc0, 0x80, 0xc0, 0x80, 0x80, 0x00,
  42.305 +/* 0x8b0: */  0xe0, 0xc0, 0xc0, 0x80, 0xc0, 0x80, 0x80, 0x00,
  42.306 +/* 0x8b8: */  0xc0, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00,
  42.307 +/* 0x8c0: */  0xe7, 0xe0, 0xe0, 0xc0, 0xe0, 0xc0, 0xc0, 0x80,
  42.308 +/* 0x8c8: */  0xe0, 0xc0, 0xc0, 0x80, 0xc0, 0x80, 0x80, 0x00,
  42.309 +/* 0x8d0: */  0xe0, 0xc0, 0xc0, 0x80, 0xc0, 0x80, 0x80, 0x00,
  42.310 +/* 0x8d8: */  0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.311 +/* 0x8e0: */  0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00,
  42.312 +/* 0x8e8: */  0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.313 +/* 0x8f0: */  0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.314 +/* 0x8f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.315 +/* 0x900: */  0xdf, 0xdf, 0xdf, 0xdc, 0xdf, 0xdc, 0xd8, 0xc0,
  42.316 +/* 0x908: */  0xde, 0xd8, 0xd8, 0xc0, 0xd8, 0xc0, 0xc0, 0xc0,
  42.317 +/* 0x910: */  0xdd, 0xd8, 0xd0, 0xc0, 0xd0, 0xc0, 0xc0, 0x80,
  42.318 +/* 0x918: */  0xd0, 0xc0, 0xc0, 0x80, 0xc0, 0x80, 0x80, 0x00,
  42.319 +/* 0x920: */  0xdb, 0xd0, 0xd0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80,
  42.320 +/* 0x928: */  0xc0, 0xc0, 0xc0, 0x80, 0xc0, 0x80, 0x80, 0x00,
  42.321 +/* 0x930: */  0xc0, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00,
  42.322 +/* 0x938: */  0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.323 +/* 0x940: */  0xd7, 0xd0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80,
  42.324 +/* 0x948: */  0xc0, 0xc0, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00,
  42.325 +/* 0x950: */  0xc0, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00,
  42.326 +/* 0x958: */  0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.327 +/* 0x960: */  0xc0, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00,
  42.328 +/* 0x968: */  0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.329 +/* 0x970: */  0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.330 +/* 0x978: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.331 +/* 0x980: */  0xcf, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00,
  42.332 +/* 0x988: */  0xc0, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00,
  42.333 +/* 0x990: */  0xc0, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00,
  42.334 +/* 0x998: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.335 +/* 0x9a0: */  0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.336 +/* 0x9a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.337 +/* 0x9b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.338 +/* 0x9b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.339 +/* 0x9c0: */  0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.340 +/* 0x9c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.341 +/* 0x9d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.342 +/* 0x9d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.343 +/* 0x9e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.344 +/* 0x9e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.345 +/* 0x9f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.346 +/* 0x9f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.347 +/* 0xa00: */  0xbf, 0xbf, 0xbf, 0xbe, 0xbf, 0xbc, 0xbc, 0xa0,
  42.348 +/* 0xa08: */  0xbe, 0xbc, 0xb8, 0xa0, 0xb8, 0xa0, 0x80, 0x80,
  42.349 +/* 0xa10: */  0xbd, 0xb8, 0xb0, 0x80, 0xb0, 0x80, 0x80, 0x80,
  42.350 +/* 0xa18: */  0xb0, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00,
  42.351 +/* 0xa20: */  0xbb, 0xb0, 0xb0, 0x80, 0xa0, 0x80, 0x80, 0x00,
  42.352 +/* 0xa28: */  0xa0, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00,
  42.353 +/* 0xa30: */  0xa0, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00,
  42.354 +/* 0xa38: */  0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.355 +/* 0xa40: */  0xb7, 0xb0, 0xa0, 0x80, 0xa0, 0x80, 0x80, 0x00,
  42.356 +/* 0xa48: */  0xa0, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00,
  42.357 +/* 0xa50: */  0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.358 +/* 0xa58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.359 +/* 0xa60: */  0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.360 +/* 0xa68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.361 +/* 0xa70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.362 +/* 0xa78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.363 +/* 0xa80: */  0xaf, 0xa0, 0xa0, 0x80, 0x80, 0x80, 0x80, 0x00,
  42.364 +/* 0xa88: */  0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.365 +/* 0xa90: */  0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.366 +/* 0xa98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.367 +/* 0xaa0: */  0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.368 +/* 0xaa8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.369 +/* 0xab0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.370 +/* 0xab8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.371 +/* 0xac0: */  0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.372 +/* 0xac8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.373 +/* 0xad0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.374 +/* 0xad8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.375 +/* 0xae0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.376 +/* 0xae8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.377 +/* 0xaf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.378 +/* 0xaf8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.379 +/* 0xb00: */  0x9f, 0x90, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00,
  42.380 +/* 0xb08: */  0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.381 +/* 0xb10: */  0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.382 +/* 0xb18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.383 +/* 0xb20: */  0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.384 +/* 0xb28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.385 +/* 0xb30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.386 +/* 0xb38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.387 +/* 0xb40: */  0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.388 +/* 0xb48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.389 +/* 0xb50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.390 +/* 0xb58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.391 +/* 0xb60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.392 +/* 0xb68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.393 +/* 0xb70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.394 +/* 0xb78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.395 +/* 0xb80: */  0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.396 +/* 0xb88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.397 +/* 0xb90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.398 +/* 0xb98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.399 +/* 0xba0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.400 +/* 0xba8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.401 +/* 0xbb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.402 +/* 0xbb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.403 +/* 0xbc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.404 +/* 0xbc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.405 +/* 0xbd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.406 +/* 0xbd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.407 +/* 0xbe0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.408 +/* 0xbe8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.409 +/* 0xbf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.410 +/* 0xbf8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.411 +/* 0xc00: */  0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7c, 0x7c, 0x70,
  42.412 +/* 0xc08: */  0x7e, 0x7c, 0x78, 0x60, 0x78, 0x60, 0x60, 0x00,
  42.413 +/* 0xc10: */  0x7d, 0x78, 0x78, 0x60, 0x70, 0x40, 0x40, 0x00,
  42.414 +/* 0xc18: */  0x70, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.415 +/* 0xc20: */  0x7b, 0x78, 0x70, 0x40, 0x70, 0x40, 0x00, 0x00,
  42.416 +/* 0xc28: */  0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.417 +/* 0xc30: */  0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.418 +/* 0xc38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.419 +/* 0xc40: */  0x77, 0x70, 0x70, 0x00, 0x60, 0x00, 0x00, 0x00,
  42.420 +/* 0xc48: */  0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.421 +/* 0xc50: */  0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.422 +/* 0xc58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.423 +/* 0xc60: */  0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.424 +/* 0xc68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.425 +/* 0xc70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.426 +/* 0xc78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.427 +/* 0xc80: */  0x6f, 0x60, 0x60, 0x00, 0x60, 0x00, 0x00, 0x00,
  42.428 +/* 0xc88: */  0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.429 +/* 0xc90: */  0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.430 +/* 0xc98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.431 +/* 0xca0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.432 +/* 0xca8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.433 +/* 0xcb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.434 +/* 0xcb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.435 +/* 0xcc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.436 +/* 0xcc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.437 +/* 0xcd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.438 +/* 0xcd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.439 +/* 0xce0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.440 +/* 0xce8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.441 +/* 0xcf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.442 +/* 0xcf8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.443 +/* 0xd00: */  0x5f, 0x58, 0x40, 0x00, 0x40, 0x00, 0x00, 0x00,
  42.444 +/* 0xd08: */  0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.445 +/* 0xd10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.446 +/* 0xd18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.447 +/* 0xd20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.448 +/* 0xd28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.449 +/* 0xd30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.450 +/* 0xd38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.451 +/* 0xd40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.452 +/* 0xd48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.453 +/* 0xd50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.454 +/* 0xd58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.455 +/* 0xd60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.456 +/* 0xd68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.457 +/* 0xd70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.458 +/* 0xd78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.459 +/* 0xd80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.460 +/* 0xd88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.461 +/* 0xd90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.462 +/* 0xd98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.463 +/* 0xda0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.464 +/* 0xda8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.465 +/* 0xdb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.466 +/* 0xdb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.467 +/* 0xdc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.468 +/* 0xdc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.469 +/* 0xdd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.470 +/* 0xdd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.471 +/* 0xde0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.472 +/* 0xde8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.473 +/* 0xdf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.474 +/* 0xdf8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.475 +/* 0xe00: */  0x3f, 0x3c, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.476 +/* 0xe08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.477 +/* 0xe10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.478 +/* 0xe18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.479 +/* 0xe20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.480 +/* 0xe28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.481 +/* 0xe30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.482 +/* 0xe38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.483 +/* 0xe40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.484 +/* 0xe48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.485 +/* 0xe50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.486 +/* 0xe58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.487 +/* 0xe60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.488 +/* 0xe68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.489 +/* 0xe70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.490 +/* 0xe78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.491 +/* 0xe80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.492 +/* 0xe88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.493 +/* 0xe90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.494 +/* 0xe98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.495 +/* 0xea0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.496 +/* 0xea8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.497 +/* 0xeb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.498 +/* 0xeb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.499 +/* 0xec0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.500 +/* 0xec8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.501 +/* 0xed0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.502 +/* 0xed8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.503 +/* 0xee0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.504 +/* 0xee8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.505 +/* 0xef0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.506 +/* 0xef8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.507 +/* 0xf00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.508 +/* 0xf08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.509 +/* 0xf10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.510 +/* 0xf18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.511 +/* 0xf20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.512 +/* 0xf28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.513 +/* 0xf30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.514 +/* 0xf38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.515 +/* 0xf40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.516 +/* 0xf48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.517 +/* 0xf50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.518 +/* 0xf58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.519 +/* 0xf60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.520 +/* 0xf68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.521 +/* 0xf70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.522 +/* 0xf78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.523 +/* 0xf80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.524 +/* 0xf88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.525 +/* 0xf90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.526 +/* 0xf98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.527 +/* 0xfa0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.528 +/* 0xfa8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.529 +/* 0xfb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.530 +/* 0xfb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.531 +/* 0xfc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.532 +/* 0xfc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.533 +/* 0xfd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.534 +/* 0xfd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.535 +/* 0xfe0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.536 +/* 0xfe8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.537 +/* 0xff0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.538 +/* 0xff8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  42.539 +};
    43.1 Binary file src/resid-fp/wave6581_P_T.dat has changed
    44.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    44.2 +++ b/src/resid-fp/wave6581__ST.cc	Sun May 11 14:09:13 2014 +0100
    44.3 @@ -0,0 +1,536 @@
    44.4 +//  ---------------------------------------------------------------------------
    44.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    44.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    44.7 +//
    44.8 +//  This program is free software; you can redistribute it and/or modify
    44.9 +//  it under the terms of the GNU General Public License as published by
   44.10 +//  the Free Software Foundation; either version 2 of the License, or
   44.11 +//  (at your option) any later version.
   44.12 +//
   44.13 +//  This program is distributed in the hope that it will be useful,
   44.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   44.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   44.16 +//  GNU General Public License for more details.
   44.17 +//
   44.18 +//  You should have received a copy of the GNU General Public License
   44.19 +//  along with this program; if not, write to the Free Software
   44.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   44.21 +//  ---------------------------------------------------------------------------
   44.22 +
   44.23 +#include "wave.h"
   44.24 +
   44.25 +reg8 WaveformGeneratorFP::wave6581__ST[] =
   44.26 +{
   44.27 +/* 0x000: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.28 +/* 0x008: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.29 +/* 0x010: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.30 +/* 0x018: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.31 +/* 0x020: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.32 +/* 0x028: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.33 +/* 0x030: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.34 +/* 0x038: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.35 +/* 0x040: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.36 +/* 0x048: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.37 +/* 0x050: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.38 +/* 0x058: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.39 +/* 0x060: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.40 +/* 0x068: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.41 +/* 0x070: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.42 +/* 0x078: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
   44.43 +/* 0x080: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.44 +/* 0x088: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.45 +/* 0x090: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.46 +/* 0x098: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.47 +/* 0x0a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.48 +/* 0x0a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.49 +/* 0x0b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.50 +/* 0x0b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
   44.51 +/* 0x0c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.52 +/* 0x0c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.53 +/* 0x0d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.54 +/* 0x0d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.55 +/* 0x0e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.56 +/* 0x0e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.57 +/* 0x0f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.58 +/* 0x0f8: */  0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x07,
   44.59 +/* 0x100: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.60 +/* 0x108: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.61 +/* 0x110: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.62 +/* 0x118: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.63 +/* 0x120: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.64 +/* 0x128: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.65 +/* 0x130: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.66 +/* 0x138: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
   44.67 +/* 0x140: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.68 +/* 0x148: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.69 +/* 0x150: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.70 +/* 0x158: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.71 +/* 0x160: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.72 +/* 0x168: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.73 +/* 0x170: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.74 +/* 0x178: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
   44.75 +/* 0x180: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.76 +/* 0x188: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.77 +/* 0x190: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.78 +/* 0x198: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.79 +/* 0x1a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.80 +/* 0x1a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.81 +/* 0x1b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.82 +/* 0x1b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
   44.83 +/* 0x1c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.84 +/* 0x1c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.85 +/* 0x1d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.86 +/* 0x1d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.87 +/* 0x1e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.88 +/* 0x1e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.89 +/* 0x1f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.90 +/* 0x1f8: */  0x0e, 0x0e, 0x0e, 0x0e, 0x0f, 0x0f, 0x0f, 0x0f,
   44.91 +/* 0x200: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.92 +/* 0x208: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.93 +/* 0x210: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.94 +/* 0x218: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.95 +/* 0x220: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.96 +/* 0x228: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.97 +/* 0x230: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.98 +/* 0x238: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   44.99 +/* 0x240: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.100 +/* 0x248: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.101 +/* 0x250: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.102 +/* 0x258: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.103 +/* 0x260: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.104 +/* 0x268: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.105 +/* 0x270: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.106 +/* 0x278: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  44.107 +/* 0x280: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.108 +/* 0x288: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.109 +/* 0x290: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.110 +/* 0x298: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.111 +/* 0x2a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.112 +/* 0x2a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.113 +/* 0x2b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.114 +/* 0x2b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.115 +/* 0x2c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.116 +/* 0x2c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.117 +/* 0x2d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.118 +/* 0x2d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.119 +/* 0x2e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.120 +/* 0x2e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.121 +/* 0x2f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.122 +/* 0x2f8: */  0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x07,
  44.123 +/* 0x300: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.124 +/* 0x308: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.125 +/* 0x310: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.126 +/* 0x318: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.127 +/* 0x320: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.128 +/* 0x328: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.129 +/* 0x330: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.130 +/* 0x338: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.131 +/* 0x340: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.132 +/* 0x348: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.133 +/* 0x350: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.134 +/* 0x358: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.135 +/* 0x360: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.136 +/* 0x368: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.137 +/* 0x370: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.138 +/* 0x378: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  44.139 +/* 0x380: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.140 +/* 0x388: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.141 +/* 0x390: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.142 +/* 0x398: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.143 +/* 0x3a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.144 +/* 0x3a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.145 +/* 0x3b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.146 +/* 0x3b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.147 +/* 0x3c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.148 +/* 0x3c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.149 +/* 0x3d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.150 +/* 0x3d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.151 +/* 0x3e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.152 +/* 0x3e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.153 +/* 0x3f0: */  0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c,
  44.154 +/* 0x3f8: */  0x1e, 0x1e, 0x1e, 0x1e, 0x1f, 0x1f, 0x3f, 0x3f,
  44.155 +/* 0x400: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.156 +/* 0x408: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.157 +/* 0x410: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.158 +/* 0x418: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.159 +/* 0x420: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.160 +/* 0x428: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.161 +/* 0x430: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.162 +/* 0x438: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.163 +/* 0x440: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.164 +/* 0x448: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.165 +/* 0x450: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.166 +/* 0x458: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.167 +/* 0x460: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.168 +/* 0x468: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.169 +/* 0x470: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.170 +/* 0x478: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  44.171 +/* 0x480: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.172 +/* 0x488: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.173 +/* 0x490: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.174 +/* 0x498: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.175 +/* 0x4a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.176 +/* 0x4a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.177 +/* 0x4b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.178 +/* 0x4b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.179 +/* 0x4c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.180 +/* 0x4c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.181 +/* 0x4d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.182 +/* 0x4d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.183 +/* 0x4e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.184 +/* 0x4e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.185 +/* 0x4f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.186 +/* 0x4f8: */  0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x07,
  44.187 +/* 0x500: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.188 +/* 0x508: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.189 +/* 0x510: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.190 +/* 0x518: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.191 +/* 0x520: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.192 +/* 0x528: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.193 +/* 0x530: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.194 +/* 0x538: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.195 +/* 0x540: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.196 +/* 0x548: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.197 +/* 0x550: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.198 +/* 0x558: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.199 +/* 0x560: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.200 +/* 0x568: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.201 +/* 0x570: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.202 +/* 0x578: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  44.203 +/* 0x580: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.204 +/* 0x588: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.205 +/* 0x590: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.206 +/* 0x598: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.207 +/* 0x5a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.208 +/* 0x5a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.209 +/* 0x5b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.210 +/* 0x5b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.211 +/* 0x5c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.212 +/* 0x5c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.213 +/* 0x5d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.214 +/* 0x5d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.215 +/* 0x5e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.216 +/* 0x5e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.217 +/* 0x5f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.218 +/* 0x5f8: */  0x0e, 0x0e, 0x0e, 0x0e, 0x0f, 0x0f, 0x0f, 0x1f,
  44.219 +/* 0x600: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.220 +/* 0x608: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.221 +/* 0x610: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.222 +/* 0x618: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.223 +/* 0x620: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.224 +/* 0x628: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.225 +/* 0x630: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.226 +/* 0x638: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.227 +/* 0x640: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.228 +/* 0x648: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.229 +/* 0x650: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.230 +/* 0x658: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.231 +/* 0x660: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.232 +/* 0x668: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.233 +/* 0x670: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.234 +/* 0x678: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  44.235 +/* 0x680: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.236 +/* 0x688: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.237 +/* 0x690: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.238 +/* 0x698: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.239 +/* 0x6a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.240 +/* 0x6a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.241 +/* 0x6b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.242 +/* 0x6b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.243 +/* 0x6c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.244 +/* 0x6c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.245 +/* 0x6d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.246 +/* 0x6d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.247 +/* 0x6e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.248 +/* 0x6e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.249 +/* 0x6f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.250 +/* 0x6f8: */  0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x07,
  44.251 +/* 0x700: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.252 +/* 0x708: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.253 +/* 0x710: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.254 +/* 0x718: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.255 +/* 0x720: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.256 +/* 0x728: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.257 +/* 0x730: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.258 +/* 0x738: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.259 +/* 0x740: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.260 +/* 0x748: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.261 +/* 0x750: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.262 +/* 0x758: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.263 +/* 0x760: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.264 +/* 0x768: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.265 +/* 0x770: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.266 +/* 0x778: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  44.267 +/* 0x780: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.268 +/* 0x788: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.269 +/* 0x790: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.270 +/* 0x798: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.271 +/* 0x7a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.272 +/* 0x7a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.273 +/* 0x7b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.274 +/* 0x7b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.275 +/* 0x7c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.276 +/* 0x7c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.277 +/* 0x7d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.278 +/* 0x7d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.279 +/* 0x7e0: */  0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38,
  44.280 +/* 0x7e8: */  0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38,
  44.281 +/* 0x7f0: */  0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c,
  44.282 +/* 0x7f8: */  0x3e, 0x3e, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f,
  44.283 +/* 0x800: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.284 +/* 0x808: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.285 +/* 0x810: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.286 +/* 0x818: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.287 +/* 0x820: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.288 +/* 0x828: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.289 +/* 0x830: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.290 +/* 0x838: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.291 +/* 0x840: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.292 +/* 0x848: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.293 +/* 0x850: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.294 +/* 0x858: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.295 +/* 0x860: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.296 +/* 0x868: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.297 +/* 0x870: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.298 +/* 0x878: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  44.299 +/* 0x880: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.300 +/* 0x888: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.301 +/* 0x890: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.302 +/* 0x898: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.303 +/* 0x8a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.304 +/* 0x8a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.305 +/* 0x8b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.306 +/* 0x8b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.307 +/* 0x8c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.308 +/* 0x8c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.309 +/* 0x8d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.310 +/* 0x8d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.311 +/* 0x8e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.312 +/* 0x8e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.313 +/* 0x8f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.314 +/* 0x8f8: */  0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x07,
  44.315 +/* 0x900: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.316 +/* 0x908: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.317 +/* 0x910: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.318 +/* 0x918: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.319 +/* 0x920: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.320 +/* 0x928: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.321 +/* 0x930: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.322 +/* 0x938: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.323 +/* 0x940: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.324 +/* 0x948: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.325 +/* 0x950: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.326 +/* 0x958: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.327 +/* 0x960: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.328 +/* 0x968: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.329 +/* 0x970: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.330 +/* 0x978: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  44.331 +/* 0x980: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.332 +/* 0x988: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.333 +/* 0x990: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.334 +/* 0x998: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.335 +/* 0x9a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.336 +/* 0x9a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.337 +/* 0x9b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.338 +/* 0x9b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.339 +/* 0x9c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.340 +/* 0x9c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.341 +/* 0x9d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.342 +/* 0x9d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.343 +/* 0x9e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.344 +/* 0x9e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.345 +/* 0x9f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.346 +/* 0x9f8: */  0x0e, 0x0e, 0x0e, 0x0e, 0x0f, 0x0f, 0x0f, 0x0f,
  44.347 +/* 0xa00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.348 +/* 0xa08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.349 +/* 0xa10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.350 +/* 0xa18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.351 +/* 0xa20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.352 +/* 0xa28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.353 +/* 0xa30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.354 +/* 0xa38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.355 +/* 0xa40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.356 +/* 0xa48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.357 +/* 0xa50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.358 +/* 0xa58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.359 +/* 0xa60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.360 +/* 0xa68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.361 +/* 0xa70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.362 +/* 0xa78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  44.363 +/* 0xa80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.364 +/* 0xa88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.365 +/* 0xa90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.366 +/* 0xa98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.367 +/* 0xaa0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.368 +/* 0xaa8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.369 +/* 0xab0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.370 +/* 0xab8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.371 +/* 0xac0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.372 +/* 0xac8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.373 +/* 0xad0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.374 +/* 0xad8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.375 +/* 0xae0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.376 +/* 0xae8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.377 +/* 0xaf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.378 +/* 0xaf8: */  0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x07,
  44.379 +/* 0xb00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.380 +/* 0xb08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.381 +/* 0xb10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.382 +/* 0xb18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.383 +/* 0xb20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.384 +/* 0xb28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.385 +/* 0xb30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.386 +/* 0xb38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.387 +/* 0xb40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.388 +/* 0xb48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.389 +/* 0xb50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.390 +/* 0xb58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.391 +/* 0xb60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.392 +/* 0xb68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.393 +/* 0xb70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.394 +/* 0xb78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  44.395 +/* 0xb80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.396 +/* 0xb88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.397 +/* 0xb90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.398 +/* 0xb98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.399 +/* 0xba0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.400 +/* 0xba8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.401 +/* 0xbb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.402 +/* 0xbb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.403 +/* 0xbc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.404 +/* 0xbc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.405 +/* 0xbd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.406 +/* 0xbd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.407 +/* 0xbe0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.408 +/* 0xbe8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.409 +/* 0xbf0: */  0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c,
  44.410 +/* 0xbf8: */  0x1e, 0x1e, 0x1e, 0x1e, 0x1f, 0x1f, 0x3f, 0x3f,
  44.411 +/* 0xc00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.412 +/* 0xc08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.413 +/* 0xc10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.414 +/* 0xc18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.415 +/* 0xc20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.416 +/* 0xc28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.417 +/* 0xc30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.418 +/* 0xc38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.419 +/* 0xc40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.420 +/* 0xc48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.421 +/* 0xc50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.422 +/* 0xc58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.423 +/* 0xc60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.424 +/* 0xc68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.425 +/* 0xc70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.426 +/* 0xc78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  44.427 +/* 0xc80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.428 +/* 0xc88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.429 +/* 0xc90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.430 +/* 0xc98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.431 +/* 0xca0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.432 +/* 0xca8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.433 +/* 0xcb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.434 +/* 0xcb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.435 +/* 0xcc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.436 +/* 0xcc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.437 +/* 0xcd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.438 +/* 0xcd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.439 +/* 0xce0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.440 +/* 0xce8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.441 +/* 0xcf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.442 +/* 0xcf8: */  0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x07,
  44.443 +/* 0xd00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.444 +/* 0xd08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.445 +/* 0xd10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.446 +/* 0xd18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.447 +/* 0xd20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.448 +/* 0xd28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.449 +/* 0xd30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.450 +/* 0xd38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.451 +/* 0xd40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.452 +/* 0xd48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.453 +/* 0xd50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.454 +/* 0xd58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.455 +/* 0xd60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.456 +/* 0xd68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.457 +/* 0xd70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.458 +/* 0xd78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  44.459 +/* 0xd80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.460 +/* 0xd88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.461 +/* 0xd90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.462 +/* 0xd98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.463 +/* 0xda0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.464 +/* 0xda8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.465 +/* 0xdb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.466 +/* 0xdb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.467 +/* 0xdc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.468 +/* 0xdc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.469 +/* 0xdd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.470 +/* 0xdd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.471 +/* 0xde0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.472 +/* 0xde8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.473 +/* 0xdf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.474 +/* 0xdf8: */  0x0e, 0x0e, 0x0e, 0x0e, 0x0f, 0x0f, 0x0f, 0x1f,
  44.475 +/* 0xe00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.476 +/* 0xe08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.477 +/* 0xe10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.478 +/* 0xe18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.479 +/* 0xe20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.480 +/* 0xe28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.481 +/* 0xe30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.482 +/* 0xe38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.483 +/* 0xe40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.484 +/* 0xe48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.485 +/* 0xe50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.486 +/* 0xe58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.487 +/* 0xe60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.488 +/* 0xe68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.489 +/* 0xe70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.490 +/* 0xe78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  44.491 +/* 0xe80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.492 +/* 0xe88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.493 +/* 0xe90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.494 +/* 0xe98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.495 +/* 0xea0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.496 +/* 0xea8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.497 +/* 0xeb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.498 +/* 0xeb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.499 +/* 0xec0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.500 +/* 0xec8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.501 +/* 0xed0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.502 +/* 0xed8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.503 +/* 0xee0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.504 +/* 0xee8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.505 +/* 0xef0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.506 +/* 0xef8: */  0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x07,
  44.507 +/* 0xf00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.508 +/* 0xf08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.509 +/* 0xf10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.510 +/* 0xf18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.511 +/* 0xf20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.512 +/* 0xf28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.513 +/* 0xf30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.514 +/* 0xf38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.515 +/* 0xf40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.516 +/* 0xf48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.517 +/* 0xf50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.518 +/* 0xf58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.519 +/* 0xf60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.520 +/* 0xf68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.521 +/* 0xf70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.522 +/* 0xf78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  44.523 +/* 0xf80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.524 +/* 0xf88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.525 +/* 0xf90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.526 +/* 0xf98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.527 +/* 0xfa0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.528 +/* 0xfa8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.529 +/* 0xfb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.530 +/* 0xfb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  44.531 +/* 0xfc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.532 +/* 0xfc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.533 +/* 0xfd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.534 +/* 0xfd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  44.535 +/* 0xfe0: */  0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38,
  44.536 +/* 0xfe8: */  0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38,
  44.537 +/* 0xff0: */  0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c,
  44.538 +/* 0xff8: */  0x3e, 0x3e, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f,
  44.539 +};
    45.1 Binary file src/resid-fp/wave6581__ST.dat has changed
    46.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    46.2 +++ b/src/resid-fp/wave8580_PST.cc	Sun May 11 14:09:13 2014 +0100
    46.3 @@ -0,0 +1,536 @@
    46.4 +//  ---------------------------------------------------------------------------
    46.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    46.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    46.7 +//
    46.8 +//  This program is free software; you can redistribute it and/or modify
    46.9 +//  it under the terms of the GNU General Public License as published by
   46.10 +//  the Free Software Foundation; either version 2 of the License, or
   46.11 +//  (at your option) any later version.
   46.12 +//
   46.13 +//  This program is distributed in the hope that it will be useful,
   46.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   46.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   46.16 +//  GNU General Public License for more details.
   46.17 +//
   46.18 +//  You should have received a copy of the GNU General Public License
   46.19 +//  along with this program; if not, write to the Free Software
   46.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   46.21 +//  ---------------------------------------------------------------------------
   46.22 +
   46.23 +#include "wave.h"
   46.24 +
   46.25 +reg8 WaveformGeneratorFP::wave8580_PST[] =
   46.26 +{
   46.27 +/* 0x000: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.28 +/* 0x008: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.29 +/* 0x010: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.30 +/* 0x018: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.31 +/* 0x020: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.32 +/* 0x028: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.33 +/* 0x030: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.34 +/* 0x038: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.35 +/* 0x040: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.36 +/* 0x048: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.37 +/* 0x050: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.38 +/* 0x058: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.39 +/* 0x060: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.40 +/* 0x068: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.41 +/* 0x070: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.42 +/* 0x078: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.43 +/* 0x080: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.44 +/* 0x088: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.45 +/* 0x090: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.46 +/* 0x098: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.47 +/* 0x0a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.48 +/* 0x0a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.49 +/* 0x0b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.50 +/* 0x0b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.51 +/* 0x0c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.52 +/* 0x0c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.53 +/* 0x0d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.54 +/* 0x0d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.55 +/* 0x0e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.56 +/* 0x0e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.57 +/* 0x0f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.58 +/* 0x0f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.59 +/* 0x100: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.60 +/* 0x108: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.61 +/* 0x110: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.62 +/* 0x118: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.63 +/* 0x120: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.64 +/* 0x128: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.65 +/* 0x130: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.66 +/* 0x138: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.67 +/* 0x140: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.68 +/* 0x148: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.69 +/* 0x150: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.70 +/* 0x158: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.71 +/* 0x160: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.72 +/* 0x168: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.73 +/* 0x170: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.74 +/* 0x178: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.75 +/* 0x180: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.76 +/* 0x188: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.77 +/* 0x190: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.78 +/* 0x198: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.79 +/* 0x1a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.80 +/* 0x1a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.81 +/* 0x1b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.82 +/* 0x1b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.83 +/* 0x1c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.84 +/* 0x1c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.85 +/* 0x1d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.86 +/* 0x1d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.87 +/* 0x1e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.88 +/* 0x1e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.89 +/* 0x1f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.90 +/* 0x1f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.91 +/* 0x200: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.92 +/* 0x208: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.93 +/* 0x210: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.94 +/* 0x218: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.95 +/* 0x220: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.96 +/* 0x228: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.97 +/* 0x230: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.98 +/* 0x238: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   46.99 +/* 0x240: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.100 +/* 0x248: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.101 +/* 0x250: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.102 +/* 0x258: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.103 +/* 0x260: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.104 +/* 0x268: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.105 +/* 0x270: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.106 +/* 0x278: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.107 +/* 0x280: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.108 +/* 0x288: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.109 +/* 0x290: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.110 +/* 0x298: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.111 +/* 0x2a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.112 +/* 0x2a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.113 +/* 0x2b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.114 +/* 0x2b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.115 +/* 0x2c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.116 +/* 0x2c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.117 +/* 0x2d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.118 +/* 0x2d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.119 +/* 0x2e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.120 +/* 0x2e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.121 +/* 0x2f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.122 +/* 0x2f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.123 +/* 0x300: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.124 +/* 0x308: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.125 +/* 0x310: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.126 +/* 0x318: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.127 +/* 0x320: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.128 +/* 0x328: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.129 +/* 0x330: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.130 +/* 0x338: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.131 +/* 0x340: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.132 +/* 0x348: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.133 +/* 0x350: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.134 +/* 0x358: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.135 +/* 0x360: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.136 +/* 0x368: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.137 +/* 0x370: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.138 +/* 0x378: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.139 +/* 0x380: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.140 +/* 0x388: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.141 +/* 0x390: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.142 +/* 0x398: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.143 +/* 0x3a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.144 +/* 0x3a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.145 +/* 0x3b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.146 +/* 0x3b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.147 +/* 0x3c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.148 +/* 0x3c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.149 +/* 0x3d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.150 +/* 0x3d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.151 +/* 0x3e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.152 +/* 0x3e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.153 +/* 0x3f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.154 +/* 0x3f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f,
  46.155 +/* 0x400: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.156 +/* 0x408: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.157 +/* 0x410: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.158 +/* 0x418: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.159 +/* 0x420: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.160 +/* 0x428: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.161 +/* 0x430: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.162 +/* 0x438: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.163 +/* 0x440: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.164 +/* 0x448: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.165 +/* 0x450: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.166 +/* 0x458: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.167 +/* 0x460: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.168 +/* 0x468: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.169 +/* 0x470: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.170 +/* 0x478: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.171 +/* 0x480: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.172 +/* 0x488: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.173 +/* 0x490: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.174 +/* 0x498: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.175 +/* 0x4a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.176 +/* 0x4a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.177 +/* 0x4b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.178 +/* 0x4b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.179 +/* 0x4c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.180 +/* 0x4c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.181 +/* 0x4d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.182 +/* 0x4d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.183 +/* 0x4e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.184 +/* 0x4e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.185 +/* 0x4f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.186 +/* 0x4f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.187 +/* 0x500: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.188 +/* 0x508: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.189 +/* 0x510: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.190 +/* 0x518: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.191 +/* 0x520: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.192 +/* 0x528: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.193 +/* 0x530: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.194 +/* 0x538: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.195 +/* 0x540: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.196 +/* 0x548: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.197 +/* 0x550: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.198 +/* 0x558: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.199 +/* 0x560: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.200 +/* 0x568: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.201 +/* 0x570: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.202 +/* 0x578: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.203 +/* 0x580: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.204 +/* 0x588: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.205 +/* 0x590: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.206 +/* 0x598: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.207 +/* 0x5a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.208 +/* 0x5a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.209 +/* 0x5b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.210 +/* 0x5b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.211 +/* 0x5c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.212 +/* 0x5c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.213 +/* 0x5d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.214 +/* 0x5d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.215 +/* 0x5e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.216 +/* 0x5e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.217 +/* 0x5f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.218 +/* 0x5f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.219 +/* 0x600: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.220 +/* 0x608: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.221 +/* 0x610: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.222 +/* 0x618: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.223 +/* 0x620: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.224 +/* 0x628: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.225 +/* 0x630: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.226 +/* 0x638: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.227 +/* 0x640: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.228 +/* 0x648: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.229 +/* 0x650: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.230 +/* 0x658: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.231 +/* 0x660: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.232 +/* 0x668: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.233 +/* 0x670: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.234 +/* 0x678: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.235 +/* 0x680: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.236 +/* 0x688: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.237 +/* 0x690: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.238 +/* 0x698: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.239 +/* 0x6a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.240 +/* 0x6a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.241 +/* 0x6b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.242 +/* 0x6b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.243 +/* 0x6c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.244 +/* 0x6c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.245 +/* 0x6d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.246 +/* 0x6d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.247 +/* 0x6e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.248 +/* 0x6e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.249 +/* 0x6f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.250 +/* 0x6f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.251 +/* 0x700: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.252 +/* 0x708: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.253 +/* 0x710: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.254 +/* 0x718: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.255 +/* 0x720: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.256 +/* 0x728: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.257 +/* 0x730: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.258 +/* 0x738: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.259 +/* 0x740: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.260 +/* 0x748: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.261 +/* 0x750: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.262 +/* 0x758: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.263 +/* 0x760: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.264 +/* 0x768: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.265 +/* 0x770: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.266 +/* 0x778: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.267 +/* 0x780: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.268 +/* 0x788: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.269 +/* 0x790: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.270 +/* 0x798: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.271 +/* 0x7a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.272 +/* 0x7a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.273 +/* 0x7b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.274 +/* 0x7b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.275 +/* 0x7c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.276 +/* 0x7c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.277 +/* 0x7d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.278 +/* 0x7d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.279 +/* 0x7e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.280 +/* 0x7e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x70,
  46.281 +/* 0x7f0: */  0x60, 0x20, 0x70, 0x70, 0x70, 0x70, 0x70, 0x78,
  46.282 +/* 0x7f8: */  0x78, 0x78, 0x7c, 0x7c, 0x7e, 0x7e, 0x7f, 0x7f,
  46.283 +/* 0x800: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.284 +/* 0x808: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.285 +/* 0x810: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.286 +/* 0x818: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.287 +/* 0x820: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.288 +/* 0x828: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.289 +/* 0x830: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.290 +/* 0x838: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.291 +/* 0x840: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.292 +/* 0x848: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.293 +/* 0x850: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.294 +/* 0x858: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.295 +/* 0x860: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.296 +/* 0x868: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.297 +/* 0x870: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.298 +/* 0x878: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.299 +/* 0x880: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.300 +/* 0x888: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.301 +/* 0x890: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.302 +/* 0x898: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.303 +/* 0x8a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.304 +/* 0x8a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.305 +/* 0x8b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.306 +/* 0x8b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.307 +/* 0x8c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.308 +/* 0x8c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.309 +/* 0x8d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.310 +/* 0x8d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.311 +/* 0x8e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.312 +/* 0x8e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.313 +/* 0x8f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.314 +/* 0x8f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.315 +/* 0x900: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.316 +/* 0x908: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.317 +/* 0x910: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.318 +/* 0x918: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.319 +/* 0x920: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.320 +/* 0x928: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.321 +/* 0x930: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.322 +/* 0x938: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.323 +/* 0x940: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.324 +/* 0x948: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.325 +/* 0x950: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.326 +/* 0x958: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.327 +/* 0x960: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.328 +/* 0x968: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.329 +/* 0x970: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.330 +/* 0x978: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.331 +/* 0x980: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.332 +/* 0x988: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.333 +/* 0x990: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.334 +/* 0x998: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.335 +/* 0x9a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.336 +/* 0x9a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.337 +/* 0x9b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.338 +/* 0x9b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.339 +/* 0x9c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.340 +/* 0x9c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.341 +/* 0x9d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.342 +/* 0x9d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.343 +/* 0x9e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.344 +/* 0x9e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.345 +/* 0x9f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.346 +/* 0x9f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.347 +/* 0xa00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.348 +/* 0xa08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.349 +/* 0xa10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.350 +/* 0xa18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.351 +/* 0xa20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.352 +/* 0xa28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.353 +/* 0xa30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.354 +/* 0xa38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.355 +/* 0xa40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.356 +/* 0xa48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.357 +/* 0xa50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.358 +/* 0xa58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.359 +/* 0xa60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.360 +/* 0xa68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.361 +/* 0xa70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.362 +/* 0xa78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.363 +/* 0xa80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.364 +/* 0xa88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.365 +/* 0xa90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.366 +/* 0xa98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.367 +/* 0xaa0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.368 +/* 0xaa8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.369 +/* 0xab0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.370 +/* 0xab8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.371 +/* 0xac0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.372 +/* 0xac8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.373 +/* 0xad0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.374 +/* 0xad8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.375 +/* 0xae0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.376 +/* 0xae8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.377 +/* 0xaf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.378 +/* 0xaf8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.379 +/* 0xb00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.380 +/* 0xb08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.381 +/* 0xb10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.382 +/* 0xb18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.383 +/* 0xb20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.384 +/* 0xb28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.385 +/* 0xb30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.386 +/* 0xb38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.387 +/* 0xb40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.388 +/* 0xb48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.389 +/* 0xb50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.390 +/* 0xb58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.391 +/* 0xb60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.392 +/* 0xb68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.393 +/* 0xb70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.394 +/* 0xb78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.395 +/* 0xb80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.396 +/* 0xb88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.397 +/* 0xb90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.398 +/* 0xb98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.399 +/* 0xba0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.400 +/* 0xba8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.401 +/* 0xbb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.402 +/* 0xbb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.403 +/* 0xbc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.404 +/* 0xbc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.405 +/* 0xbd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.406 +/* 0xbd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.407 +/* 0xbe0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.408 +/* 0xbe8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.409 +/* 0xbf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.410 +/* 0xbf8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x1e, 0x3f,
  46.411 +/* 0xc00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.412 +/* 0xc08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.413 +/* 0xc10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.414 +/* 0xc18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.415 +/* 0xc20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.416 +/* 0xc28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.417 +/* 0xc30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.418 +/* 0xc38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.419 +/* 0xc40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.420 +/* 0xc48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.421 +/* 0xc50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.422 +/* 0xc58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.423 +/* 0xc60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.424 +/* 0xc68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.425 +/* 0xc70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.426 +/* 0xc78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.427 +/* 0xc80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.428 +/* 0xc88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.429 +/* 0xc90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.430 +/* 0xc98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.431 +/* 0xca0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.432 +/* 0xca8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.433 +/* 0xcb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.434 +/* 0xcb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.435 +/* 0xcc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.436 +/* 0xcc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.437 +/* 0xcd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.438 +/* 0xcd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.439 +/* 0xce0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.440 +/* 0xce8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.441 +/* 0xcf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.442 +/* 0xcf8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.443 +/* 0xd00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.444 +/* 0xd08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.445 +/* 0xd10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.446 +/* 0xd18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.447 +/* 0xd20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.448 +/* 0xd28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.449 +/* 0xd30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.450 +/* 0xd38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.451 +/* 0xd40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.452 +/* 0xd48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.453 +/* 0xd50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.454 +/* 0xd58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.455 +/* 0xd60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.456 +/* 0xd68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.457 +/* 0xd70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.458 +/* 0xd78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.459 +/* 0xd80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.460 +/* 0xd88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.461 +/* 0xd90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.462 +/* 0xd98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.463 +/* 0xda0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.464 +/* 0xda8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.465 +/* 0xdb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.466 +/* 0xdb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.467 +/* 0xdc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.468 +/* 0xdc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.469 +/* 0xdd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.470 +/* 0xdd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.471 +/* 0xde0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.472 +/* 0xde8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.473 +/* 0xdf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  46.474 +/* 0xdf8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x8c, 0x9f,
  46.475 +/* 0xe00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.476 +/* 0xe08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.477 +/* 0xe10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.478 +/* 0xe18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.479 +/* 0xe20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.480 +/* 0xe28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.481 +/* 0xe30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.482 +/* 0xe38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80,
  46.483 +/* 0xe40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.484 +/* 0xe48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.485 +/* 0xe50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  46.486 +/* 0xe58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80,
  46.487 +/* 0xe60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00,
  46.488 +/* 0xe68: */  0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  46.489 +/* 0xe70: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  46.490 +/* 0xe78: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  46.491 +/* 0xe80: */  0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x80, 0x80,
  46.492 +/* 0xe88: */  0x80, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  46.493 +/* 0xe90: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  46.494 +/* 0xe98: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  46.495 +/* 0xea0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  46.496 +/* 0xea8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  46.497 +/* 0xeb0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  46.498 +/* 0xeb8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  46.499 +/* 0xec0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  46.500 +/* 0xec8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  46.501 +/* 0xed0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  46.502 +/* 0xed8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  46.503 +/* 0xee0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  46.504 +/* 0xee8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xc0,
  46.505 +/* 0xef0: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  46.506 +/* 0xef8: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xcf,
  46.507 +/* 0xf00: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  46.508 +/* 0xf08: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  46.509 +/* 0xf10: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  46.510 +/* 0xf18: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  46.511 +/* 0xf20: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  46.512 +/* 0xf28: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  46.513 +/* 0xf30: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  46.514 +/* 0xf38: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  46.515 +/* 0xf40: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  46.516 +/* 0xf48: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  46.517 +/* 0xf50: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  46.518 +/* 0xf58: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  46.519 +/* 0xf60: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  46.520 +/* 0xf68: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0,
  46.521 +/* 0xf70: */  0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0,
  46.522 +/* 0xf78: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe3,
  46.523 +/* 0xf80: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  46.524 +/* 0xf88: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  46.525 +/* 0xf90: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  46.526 +/* 0xf98: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  46.527 +/* 0xfa0: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  46.528 +/* 0xfa8: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  46.529 +/* 0xfb0: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0,
  46.530 +/* 0xfb8: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  46.531 +/* 0xfc0: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  46.532 +/* 0xfc8: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  46.533 +/* 0xfd0: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  46.534 +/* 0xfd8: */  0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8,
  46.535 +/* 0xfe0: */  0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8,
  46.536 +/* 0xfe8: */  0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc,
  46.537 +/* 0xff0: */  0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe,
  46.538 +/* 0xff8: */  0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
  46.539 +};
    47.1 Binary file src/resid-fp/wave8580_PST.dat has changed
    48.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    48.2 +++ b/src/resid-fp/wave8580_PS_.cc	Sun May 11 14:09:13 2014 +0100
    48.3 @@ -0,0 +1,536 @@
    48.4 +//  ---------------------------------------------------------------------------
    48.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    48.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    48.7 +//
    48.8 +//  This program is free software; you can redistribute it and/or modify
    48.9 +//  it under the terms of the GNU General Public License as published by
   48.10 +//  the Free Software Foundation; either version 2 of the License, or
   48.11 +//  (at your option) any later version.
   48.12 +//
   48.13 +//  This program is distributed in the hope that it will be useful,
   48.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   48.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   48.16 +//  GNU General Public License for more details.
   48.17 +//
   48.18 +//  You should have received a copy of the GNU General Public License
   48.19 +//  along with this program; if not, write to the Free Software
   48.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   48.21 +//  ---------------------------------------------------------------------------
   48.22 +
   48.23 +#include "wave.h"
   48.24 +
   48.25 +reg8 WaveformGeneratorFP::wave8580_PS_[] =
   48.26 +{
   48.27 +/* 0x000: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.28 +/* 0x008: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.29 +/* 0x010: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.30 +/* 0x018: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.31 +/* 0x020: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.32 +/* 0x028: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.33 +/* 0x030: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.34 +/* 0x038: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.35 +/* 0x040: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.36 +/* 0x048: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.37 +/* 0x050: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.38 +/* 0x058: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.39 +/* 0x060: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.40 +/* 0x068: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.41 +/* 0x070: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.42 +/* 0x078: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03,
   48.43 +/* 0x080: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.44 +/* 0x088: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.45 +/* 0x090: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.46 +/* 0x098: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.47 +/* 0x0a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.48 +/* 0x0a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.49 +/* 0x0b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.50 +/* 0x0b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
   48.51 +/* 0x0c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.52 +/* 0x0c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.53 +/* 0x0d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.54 +/* 0x0d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.55 +/* 0x0e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.56 +/* 0x0e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.57 +/* 0x0f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.58 +/* 0x0f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f,
   48.59 +/* 0x100: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.60 +/* 0x108: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.61 +/* 0x110: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.62 +/* 0x118: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.63 +/* 0x120: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.64 +/* 0x128: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.65 +/* 0x130: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.66 +/* 0x138: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.67 +/* 0x140: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.68 +/* 0x148: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.69 +/* 0x150: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.70 +/* 0x158: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.71 +/* 0x160: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.72 +/* 0x168: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.73 +/* 0x170: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.74 +/* 0x178: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07,
   48.75 +/* 0x180: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.76 +/* 0x188: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.77 +/* 0x190: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.78 +/* 0x198: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.79 +/* 0x1a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.80 +/* 0x1a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.81 +/* 0x1b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.82 +/* 0x1b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03,
   48.83 +/* 0x1c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.84 +/* 0x1c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.85 +/* 0x1d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.86 +/* 0x1d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
   48.87 +/* 0x1e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.88 +/* 0x1e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.89 +/* 0x1f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.90 +/* 0x1f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x1f,
   48.91 +/* 0x200: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.92 +/* 0x208: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.93 +/* 0x210: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.94 +/* 0x218: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.95 +/* 0x220: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.96 +/* 0x228: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.97 +/* 0x230: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.98 +/* 0x238: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   48.99 +/* 0x240: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.100 +/* 0x248: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.101 +/* 0x250: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.102 +/* 0x258: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.103 +/* 0x260: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.104 +/* 0x268: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.105 +/* 0x270: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.106 +/* 0x278: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03,
  48.107 +/* 0x280: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.108 +/* 0x288: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.109 +/* 0x290: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.110 +/* 0x298: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.111 +/* 0x2a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.112 +/* 0x2a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.113 +/* 0x2b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.114 +/* 0x2b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03,
  48.115 +/* 0x2c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.116 +/* 0x2c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.117 +/* 0x2d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.118 +/* 0x2d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  48.119 +/* 0x2e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.120 +/* 0x2e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.121 +/* 0x2f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.122 +/* 0x2f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f,
  48.123 +/* 0x300: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.124 +/* 0x308: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.125 +/* 0x310: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.126 +/* 0x318: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.127 +/* 0x320: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.128 +/* 0x328: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.129 +/* 0x330: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.130 +/* 0x338: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  48.131 +/* 0x340: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.132 +/* 0x348: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.133 +/* 0x350: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.134 +/* 0x358: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.135 +/* 0x360: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.136 +/* 0x368: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.137 +/* 0x370: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.138 +/* 0x378: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x17,
  48.139 +/* 0x380: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.140 +/* 0x388: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.141 +/* 0x390: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.142 +/* 0x398: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.143 +/* 0x3a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.144 +/* 0x3a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.145 +/* 0x3b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.146 +/* 0x3b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3b,
  48.147 +/* 0x3c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.148 +/* 0x3c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.149 +/* 0x3d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.150 +/* 0x3d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3d,
  48.151 +/* 0x3e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.152 +/* 0x3e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e,
  48.153 +/* 0x3f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f,
  48.154 +/* 0x3f8: */  0x00, 0x0c, 0x1c, 0x3f, 0x1e, 0x3f, 0x3f, 0x3f,
  48.155 +/* 0x400: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.156 +/* 0x408: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.157 +/* 0x410: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.158 +/* 0x418: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.159 +/* 0x420: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.160 +/* 0x428: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.161 +/* 0x430: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.162 +/* 0x438: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.163 +/* 0x440: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.164 +/* 0x448: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.165 +/* 0x450: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.166 +/* 0x458: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.167 +/* 0x460: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.168 +/* 0x468: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.169 +/* 0x470: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.170 +/* 0x478: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03,
  48.171 +/* 0x480: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.172 +/* 0x488: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.173 +/* 0x490: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.174 +/* 0x498: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.175 +/* 0x4a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.176 +/* 0x4a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.177 +/* 0x4b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.178 +/* 0x4b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  48.179 +/* 0x4c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.180 +/* 0x4c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.181 +/* 0x4d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.182 +/* 0x4d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.183 +/* 0x4e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.184 +/* 0x4e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.185 +/* 0x4f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.186 +/* 0x4f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f,
  48.187 +/* 0x500: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.188 +/* 0x508: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.189 +/* 0x510: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.190 +/* 0x518: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.191 +/* 0x520: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.192 +/* 0x528: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.193 +/* 0x530: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.194 +/* 0x538: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  48.195 +/* 0x540: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.196 +/* 0x548: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.197 +/* 0x550: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.198 +/* 0x558: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.199 +/* 0x560: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.200 +/* 0x568: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.201 +/* 0x570: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.202 +/* 0x578: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07,
  48.203 +/* 0x580: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.204 +/* 0x588: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.205 +/* 0x590: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.206 +/* 0x598: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.207 +/* 0x5a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.208 +/* 0x5a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.209 +/* 0x5b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.210 +/* 0x5b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0b,
  48.211 +/* 0x5c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.212 +/* 0x5c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.213 +/* 0x5d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.214 +/* 0x5d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a,
  48.215 +/* 0x5e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.216 +/* 0x5e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5e,
  48.217 +/* 0x5f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5f,
  48.218 +/* 0x5f8: */  0x00, 0x00, 0x00, 0x5f, 0x0c, 0x5f, 0x5f, 0x5f,
  48.219 +/* 0x600: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.220 +/* 0x608: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.221 +/* 0x610: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.222 +/* 0x618: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.223 +/* 0x620: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.224 +/* 0x628: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.225 +/* 0x630: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.226 +/* 0x638: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  48.227 +/* 0x640: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.228 +/* 0x648: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.229 +/* 0x650: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.230 +/* 0x658: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.231 +/* 0x660: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.232 +/* 0x668: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.233 +/* 0x670: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.234 +/* 0x678: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47,
  48.235 +/* 0x680: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.236 +/* 0x688: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.237 +/* 0x690: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.238 +/* 0x698: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.239 +/* 0x6a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.240 +/* 0x6a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.241 +/* 0x6b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.242 +/* 0x6b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43,
  48.243 +/* 0x6c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.244 +/* 0x6c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.245 +/* 0x6d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.246 +/* 0x6d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x65,
  48.247 +/* 0x6e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.248 +/* 0x6e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6e,
  48.249 +/* 0x6f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6f,
  48.250 +/* 0x6f8: */  0x00, 0x40, 0x40, 0x6f, 0x40, 0x6f, 0x6f, 0x6f,
  48.251 +/* 0x700: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.252 +/* 0x708: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.253 +/* 0x710: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.254 +/* 0x718: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.255 +/* 0x720: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.256 +/* 0x728: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.257 +/* 0x730: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.258 +/* 0x738: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x63,
  48.259 +/* 0x740: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.260 +/* 0x748: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.261 +/* 0x750: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.262 +/* 0x758: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x61,
  48.263 +/* 0x760: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
  48.264 +/* 0x768: */  0x00, 0x00, 0x00, 0x40, 0x00, 0x40, 0x40, 0x70,
  48.265 +/* 0x770: */  0x00, 0x00, 0x40, 0x40, 0x40, 0x40, 0x40, 0x70,
  48.266 +/* 0x778: */  0x40, 0x60, 0x60, 0x77, 0x60, 0x77, 0x77, 0x77,
  48.267 +/* 0x780: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.268 +/* 0x788: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
  48.269 +/* 0x790: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x60,
  48.270 +/* 0x798: */  0x00, 0x40, 0x40, 0x60, 0x40, 0x60, 0x60, 0x79,
  48.271 +/* 0x7a0: */  0x00, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x60,
  48.272 +/* 0x7a8: */  0x40, 0x40, 0x40, 0x60, 0x60, 0x60, 0x60, 0x78,
  48.273 +/* 0x7b0: */  0x40, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x78,
  48.274 +/* 0x7b8: */  0x60, 0x70, 0x70, 0x78, 0x70, 0x79, 0x7b, 0x7b,
  48.275 +/* 0x7c0: */  0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x70,
  48.276 +/* 0x7c8: */  0x60, 0x60, 0x60, 0x70, 0x60, 0x70, 0x70, 0x7c,
  48.277 +/* 0x7d0: */  0x60, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x7c,
  48.278 +/* 0x7d8: */  0x70, 0x78, 0x78, 0x7c, 0x78, 0x7c, 0x7c, 0x7d,
  48.279 +/* 0x7e0: */  0x70, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x7c,
  48.280 +/* 0x7e8: */  0x78, 0x7c, 0x7c, 0x7e, 0x7c, 0x7e, 0x7e, 0x7e,
  48.281 +/* 0x7f0: */  0x7c, 0x7c, 0x7c, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f,
  48.282 +/* 0x7f8: */  0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff,
  48.283 +/* 0x800: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.284 +/* 0x808: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.285 +/* 0x810: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.286 +/* 0x818: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.287 +/* 0x820: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.288 +/* 0x828: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.289 +/* 0x830: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.290 +/* 0x838: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.291 +/* 0x840: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.292 +/* 0x848: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.293 +/* 0x850: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.294 +/* 0x858: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.295 +/* 0x860: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.296 +/* 0x868: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.297 +/* 0x870: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.298 +/* 0x878: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03,
  48.299 +/* 0x880: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.300 +/* 0x888: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.301 +/* 0x890: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.302 +/* 0x898: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.303 +/* 0x8a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.304 +/* 0x8a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.305 +/* 0x8b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.306 +/* 0x8b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  48.307 +/* 0x8c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.308 +/* 0x8c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.309 +/* 0x8d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.310 +/* 0x8d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.311 +/* 0x8e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.312 +/* 0x8e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.313 +/* 0x8f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.314 +/* 0x8f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8f,
  48.315 +/* 0x900: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.316 +/* 0x908: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.317 +/* 0x910: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.318 +/* 0x918: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.319 +/* 0x920: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.320 +/* 0x928: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.321 +/* 0x930: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.322 +/* 0x938: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  48.323 +/* 0x940: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.324 +/* 0x948: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.325 +/* 0x950: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.326 +/* 0x958: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.327 +/* 0x960: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.328 +/* 0x968: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.329 +/* 0x970: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.330 +/* 0x978: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x87,
  48.331 +/* 0x980: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.332 +/* 0x988: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.333 +/* 0x990: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.334 +/* 0x998: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.335 +/* 0x9a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.336 +/* 0x9a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.337 +/* 0x9b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.338 +/* 0x9b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83,
  48.339 +/* 0x9c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.340 +/* 0x9c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.341 +/* 0x9d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.342 +/* 0x9d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x8d,
  48.343 +/* 0x9e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  48.344 +/* 0x9e8: */  0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0x8e,
  48.345 +/* 0x9f0: */  0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x8f,
  48.346 +/* 0x9f8: */  0x80, 0x80, 0x80, 0x9f, 0x80, 0x9f, 0x9f, 0x9f,
  48.347 +/* 0xa00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.348 +/* 0xa08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.349 +/* 0xa10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.350 +/* 0xa18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.351 +/* 0xa20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.352 +/* 0xa28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.353 +/* 0xa30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.354 +/* 0xa38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  48.355 +/* 0xa40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.356 +/* 0xa48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.357 +/* 0xa50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.358 +/* 0xa58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.359 +/* 0xa60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.360 +/* 0xa68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  48.361 +/* 0xa70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  48.362 +/* 0xa78: */  0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0x87,
  48.363 +/* 0xa80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.364 +/* 0xa88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.365 +/* 0xa90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.366 +/* 0xa98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  48.367 +/* 0xaa0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.368 +/* 0xaa8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  48.369 +/* 0xab0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  48.370 +/* 0xab8: */  0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x83,
  48.371 +/* 0xac0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.372 +/* 0xac8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  48.373 +/* 0xad0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80,
  48.374 +/* 0xad8: */  0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81,
  48.375 +/* 0xae0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.376 +/* 0xae8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x84,
  48.377 +/* 0xaf0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x87,
  48.378 +/* 0xaf8: */  0x80, 0x80, 0x80, 0x87, 0x80, 0x8f, 0xaf, 0xaf,
  48.379 +/* 0xb00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  48.380 +/* 0xb08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  48.381 +/* 0xb10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  48.382 +/* 0xb18: */  0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.383 +/* 0xb20: */  0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x80,
  48.384 +/* 0xb28: */  0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.385 +/* 0xb30: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.386 +/* 0xb38: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x83,
  48.387 +/* 0xb40: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.388 +/* 0xb48: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.389 +/* 0xb50: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.390 +/* 0xb58: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81,
  48.391 +/* 0xb60: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.392 +/* 0xb68: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xa0,
  48.393 +/* 0xb70: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xa0,
  48.394 +/* 0xb78: */  0x80, 0x80, 0x80, 0xa0, 0x80, 0xa3, 0xb7, 0xb7,
  48.395 +/* 0xb80: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.396 +/* 0xb88: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.397 +/* 0xb90: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.398 +/* 0xb98: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xb1,
  48.399 +/* 0xba0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.400 +/* 0xba8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xb0,
  48.401 +/* 0xbb0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xb0,
  48.402 +/* 0xbb8: */  0x80, 0xa0, 0xa0, 0xb0, 0xa0, 0xb8, 0xb9, 0xbb,
  48.403 +/* 0xbc0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xa0,
  48.404 +/* 0xbc8: */  0x80, 0x80, 0x80, 0xa0, 0x80, 0xa0, 0xa0, 0xb8,
  48.405 +/* 0xbd0: */  0x80, 0xa0, 0xa0, 0xa0, 0xa0, 0xa0, 0xa0, 0xb8,
  48.406 +/* 0xbd8: */  0xa0, 0xb0, 0xb0, 0xb8, 0xb0, 0xbc, 0xbc, 0xbd,
  48.407 +/* 0xbe0: */  0xa0, 0xb0, 0xb0, 0xb0, 0xb0, 0xb8, 0xb8, 0xbc,
  48.408 +/* 0xbe8: */  0xb0, 0xb8, 0xb8, 0xbc, 0xb8, 0xbc, 0xbe, 0xbe,
  48.409 +/* 0xbf0: */  0xb8, 0xbc, 0xbc, 0xbe, 0xbc, 0xbe, 0xbe, 0xbf,
  48.410 +/* 0xbf8: */  0xbe, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf,
  48.411 +/* 0xc00: */  0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80,
  48.412 +/* 0xc08: */  0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80,
  48.413 +/* 0xc10: */  0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.414 +/* 0xc18: */  0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.415 +/* 0xc20: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.416 +/* 0xc28: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.417 +/* 0xc30: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.418 +/* 0xc38: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81,
  48.419 +/* 0xc40: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.420 +/* 0xc48: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.421 +/* 0xc50: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.422 +/* 0xc58: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.423 +/* 0xc60: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.424 +/* 0xc68: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.425 +/* 0xc70: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.426 +/* 0xc78: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc7,
  48.427 +/* 0xc80: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.428 +/* 0xc88: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.429 +/* 0xc90: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.430 +/* 0xc98: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.431 +/* 0xca0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.432 +/* 0xca8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.433 +/* 0xcb0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.434 +/* 0xcb8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xc3,
  48.435 +/* 0xcc0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.436 +/* 0xcc8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0,
  48.437 +/* 0xcd0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0,
  48.438 +/* 0xcd8: */  0x80, 0x80, 0x80, 0xc0, 0x80, 0xc0, 0xc0, 0xc1,
  48.439 +/* 0xce0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0,
  48.440 +/* 0xce8: */  0x80, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  48.441 +/* 0xcf0: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc7,
  48.442 +/* 0xcf8: */  0xc0, 0xc0, 0xc0, 0xc7, 0xc0, 0xcf, 0xcf, 0xcf,
  48.443 +/* 0xd00: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.444 +/* 0xd08: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.445 +/* 0xd10: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.446 +/* 0xd18: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0,
  48.447 +/* 0xd20: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  48.448 +/* 0xd28: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0,
  48.449 +/* 0xd30: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xc0,
  48.450 +/* 0xd38: */  0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc3,
  48.451 +/* 0xd40: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0,
  48.452 +/* 0xd48: */  0x80, 0x80, 0x80, 0xc0, 0x80, 0xc0, 0xc0, 0xc0,
  48.453 +/* 0xd50: */  0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  48.454 +/* 0xd58: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc1,
  48.455 +/* 0xd60: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  48.456 +/* 0xd68: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  48.457 +/* 0xd70: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  48.458 +/* 0xd78: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc1, 0xc7, 0xd7,
  48.459 +/* 0xd80: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  48.460 +/* 0xd88: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  48.461 +/* 0xd90: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  48.462 +/* 0xd98: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  48.463 +/* 0xda0: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  48.464 +/* 0xda8: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xd0,
  48.465 +/* 0xdb0: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xd0,
  48.466 +/* 0xdb8: */  0xc0, 0xc0, 0xc0, 0xd0, 0xc0, 0xd0, 0xd8, 0xdb,
  48.467 +/* 0xdc0: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  48.468 +/* 0xdc8: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xd8,
  48.469 +/* 0xdd0: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xd8,
  48.470 +/* 0xdd8: */  0xc0, 0xc0, 0xc0, 0xd8, 0xd0, 0xd8, 0xd8, 0xdd,
  48.471 +/* 0xde0: */  0xc0, 0xc0, 0xc0, 0xd0, 0xc0, 0xd0, 0xd0, 0xdc,
  48.472 +/* 0xde8: */  0xd0, 0xd8, 0xd8, 0xdc, 0xd8, 0xdc, 0xdc, 0xde,
  48.473 +/* 0xdf0: */  0xd8, 0xdc, 0xdc, 0xde, 0xdc, 0xde, 0xde, 0xdf,
  48.474 +/* 0xdf8: */  0xde, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf,
  48.475 +/* 0xe00: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  48.476 +/* 0xe08: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  48.477 +/* 0xe10: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  48.478 +/* 0xe18: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  48.479 +/* 0xe20: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  48.480 +/* 0xe28: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  48.481 +/* 0xe30: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  48.482 +/* 0xe38: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe3,
  48.483 +/* 0xe40: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  48.484 +/* 0xe48: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  48.485 +/* 0xe50: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0,
  48.486 +/* 0xe58: */  0xc0, 0xc0, 0xc0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe1,
  48.487 +/* 0xe60: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0,
  48.488 +/* 0xe68: */  0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  48.489 +/* 0xe70: */  0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  48.490 +/* 0xe78: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe1, 0xe3, 0xe7,
  48.491 +/* 0xe80: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0,
  48.492 +/* 0xe88: */  0xc0, 0xc0, 0xc0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0,
  48.493 +/* 0xe90: */  0xc0, 0xc0, 0xc0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0,
  48.494 +/* 0xe98: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  48.495 +/* 0xea0: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  48.496 +/* 0xea8: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  48.497 +/* 0xeb0: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  48.498 +/* 0xeb8: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xeb,
  48.499 +/* 0xec0: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  48.500 +/* 0xec8: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  48.501 +/* 0xed0: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  48.502 +/* 0xed8: */  0xe0, 0xe0, 0xe0, 0xe8, 0xe0, 0xe8, 0xe8, 0xed,
  48.503 +/* 0xee0: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xec,
  48.504 +/* 0xee8: */  0xe0, 0xe0, 0xe0, 0xec, 0xe8, 0xec, 0xec, 0xee,
  48.505 +/* 0xef0: */  0xe8, 0xe8, 0xe8, 0xec, 0xec, 0xee, 0xee, 0xef,
  48.506 +/* 0xef8: */  0xec, 0xef, 0xef, 0xef, 0xef, 0xef, 0xef, 0xef,
  48.507 +/* 0xf00: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  48.508 +/* 0xf08: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  48.509 +/* 0xf10: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  48.510 +/* 0xf18: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0,
  48.511 +/* 0xf20: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0,
  48.512 +/* 0xf28: */  0xe0, 0xe0, 0xe0, 0xf0, 0xe0, 0xf0, 0xf0, 0xf0,
  48.513 +/* 0xf30: */  0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  48.514 +/* 0xf38: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf3,
  48.515 +/* 0xf40: */  0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  48.516 +/* 0xf48: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  48.517 +/* 0xf50: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  48.518 +/* 0xf58: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf5,
  48.519 +/* 0xf60: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  48.520 +/* 0xf68: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf4, 0xf4, 0xf6,
  48.521 +/* 0xf70: */  0xf0, 0xf0, 0xf0, 0xf4, 0xf0, 0xf4, 0xf6, 0xf7,
  48.522 +/* 0xf78: */  0xf4, 0xf6, 0xf6, 0xf7, 0xf7, 0xf7, 0xf7, 0xf7,
  48.523 +/* 0xf80: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8,
  48.524 +/* 0xf88: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8,
  48.525 +/* 0xf90: */  0xf0, 0xf0, 0xf0, 0xf8, 0xf0, 0xf8, 0xf8, 0xf8,
  48.526 +/* 0xf98: */  0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf9,
  48.527 +/* 0xfa0: */  0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8,
  48.528 +/* 0xfa8: */  0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xfa,
  48.529 +/* 0xfb0: */  0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xfb,
  48.530 +/* 0xfb8: */  0xf8, 0xfa, 0xfa, 0xfb, 0xfb, 0xfb, 0xfb, 0xfb,
  48.531 +/* 0xfc0: */  0xf8, 0xf8, 0xf8, 0xfc, 0xf8, 0xfc, 0xfc, 0xfc,
  48.532 +/* 0xfc8: */  0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc,
  48.533 +/* 0xfd0: */  0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfd,
  48.534 +/* 0xfd8: */  0xfc, 0xfc, 0xfc, 0xfd, 0xfd, 0xfd, 0xfd, 0xfd,
  48.535 +/* 0xfe0: */  0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe,
  48.536 +/* 0xfe8: */  0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe,
  48.537 +/* 0xff0: */  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
  48.538 +/* 0xff8: */  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
  48.539 +};
    49.1 Binary file src/resid-fp/wave8580_PS_.dat has changed
    50.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    50.2 +++ b/src/resid-fp/wave8580_P_T.cc	Sun May 11 14:09:13 2014 +0100
    50.3 @@ -0,0 +1,536 @@
    50.4 +//  ---------------------------------------------------------------------------
    50.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    50.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    50.7 +//
    50.8 +//  This program is free software; you can redistribute it and/or modify
    50.9 +//  it under the terms of the GNU General Public License as published by
   50.10 +//  the Free Software Foundation; either version 2 of the License, or
   50.11 +//  (at your option) any later version.
   50.12 +//
   50.13 +//  This program is distributed in the hope that it will be useful,
   50.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   50.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   50.16 +//  GNU General Public License for more details.
   50.17 +//
   50.18 +//  You should have received a copy of the GNU General Public License
   50.19 +//  along with this program; if not, write to the Free Software
   50.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   50.21 +//  ---------------------------------------------------------------------------
   50.22 +
   50.23 +#include "wave.h"
   50.24 +
   50.25 +reg8 WaveformGeneratorFP::wave8580_P_T[] =
   50.26 +{
   50.27 +/* 0x000: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.28 +/* 0x008: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.29 +/* 0x010: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.30 +/* 0x018: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.31 +/* 0x020: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.32 +/* 0x028: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.33 +/* 0x030: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.34 +/* 0x038: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.35 +/* 0x040: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.36 +/* 0x048: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.37 +/* 0x050: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.38 +/* 0x058: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.39 +/* 0x060: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.40 +/* 0x068: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.41 +/* 0x070: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.42 +/* 0x078: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.43 +/* 0x080: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.44 +/* 0x088: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.45 +/* 0x090: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.46 +/* 0x098: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.47 +/* 0x0a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.48 +/* 0x0a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.49 +/* 0x0b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.50 +/* 0x0b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.51 +/* 0x0c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.52 +/* 0x0c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.53 +/* 0x0d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.54 +/* 0x0d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.55 +/* 0x0e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.56 +/* 0x0e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.57 +/* 0x0f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.58 +/* 0x0f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07,
   50.59 +/* 0x100: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.60 +/* 0x108: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.61 +/* 0x110: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.62 +/* 0x118: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.63 +/* 0x120: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.64 +/* 0x128: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.65 +/* 0x130: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.66 +/* 0x138: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.67 +/* 0x140: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.68 +/* 0x148: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.69 +/* 0x150: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.70 +/* 0x158: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.71 +/* 0x160: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.72 +/* 0x168: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.73 +/* 0x170: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.74 +/* 0x178: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.75 +/* 0x180: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.76 +/* 0x188: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.77 +/* 0x190: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.78 +/* 0x198: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.79 +/* 0x1a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.80 +/* 0x1a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.81 +/* 0x1b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.82 +/* 0x1b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.83 +/* 0x1c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.84 +/* 0x1c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.85 +/* 0x1d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.86 +/* 0x1d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.87 +/* 0x1e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.88 +/* 0x1e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.89 +/* 0x1f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.90 +/* 0x1f8: */  0x00, 0x00, 0x00, 0x1c, 0x00, 0x3c, 0x3f, 0x3f,
   50.91 +/* 0x200: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.92 +/* 0x208: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.93 +/* 0x210: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.94 +/* 0x218: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.95 +/* 0x220: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.96 +/* 0x228: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.97 +/* 0x230: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.98 +/* 0x238: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   50.99 +/* 0x240: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.100 +/* 0x248: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.101 +/* 0x250: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.102 +/* 0x258: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.103 +/* 0x260: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.104 +/* 0x268: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.105 +/* 0x270: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.106 +/* 0x278: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.107 +/* 0x280: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.108 +/* 0x288: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.109 +/* 0x290: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.110 +/* 0x298: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.111 +/* 0x2a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.112 +/* 0x2a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.113 +/* 0x2b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.114 +/* 0x2b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.115 +/* 0x2c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.116 +/* 0x2c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.117 +/* 0x2d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.118 +/* 0x2d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.119 +/* 0x2e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.120 +/* 0x2e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.121 +/* 0x2f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.122 +/* 0x2f8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x5e, 0x5f,
  50.123 +/* 0x300: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.124 +/* 0x308: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.125 +/* 0x310: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.126 +/* 0x318: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.127 +/* 0x320: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.128 +/* 0x328: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.129 +/* 0x330: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.130 +/* 0x338: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.131 +/* 0x340: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.132 +/* 0x348: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.133 +/* 0x350: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.134 +/* 0x358: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.135 +/* 0x360: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.136 +/* 0x368: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.137 +/* 0x370: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
  50.138 +/* 0x378: */  0x00, 0x00, 0x00, 0x40, 0x40, 0x60, 0x60, 0x6f,
  50.139 +/* 0x380: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.140 +/* 0x388: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.141 +/* 0x390: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.142 +/* 0x398: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
  50.143 +/* 0x3a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.144 +/* 0x3a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40,
  50.145 +/* 0x3b0: */  0x00, 0x00, 0x00, 0x40, 0x40, 0x40, 0x40, 0x60,
  50.146 +/* 0x3b8: */  0x40, 0x40, 0x60, 0x60, 0x60, 0x60, 0x70, 0x77,
  50.147 +/* 0x3c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x40,
  50.148 +/* 0x3c8: */  0x40, 0x40, 0x40, 0x40, 0x40, 0x60, 0x60, 0x60,
  50.149 +/* 0x3d0: */  0x40, 0x40, 0x40, 0x60, 0x60, 0x60, 0x60, 0x70,
  50.150 +/* 0x3d8: */  0x60, 0x60, 0x60, 0x70, 0x70, 0x70, 0x78, 0x7b,
  50.151 +/* 0x3e0: */  0x60, 0x60, 0x60, 0x70, 0x60, 0x70, 0x70, 0x70,
  50.152 +/* 0x3e8: */  0x70, 0x70, 0x70, 0x78, 0x78, 0x78, 0x78, 0x7c,
  50.153 +/* 0x3f0: */  0x78, 0x78, 0x78, 0x7c, 0x78, 0x7c, 0x7c, 0x7e,
  50.154 +/* 0x3f8: */  0x7c, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
  50.155 +/* 0x400: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.156 +/* 0x408: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.157 +/* 0x410: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.158 +/* 0x418: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.159 +/* 0x420: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.160 +/* 0x428: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.161 +/* 0x430: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.162 +/* 0x438: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.163 +/* 0x440: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.164 +/* 0x448: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.165 +/* 0x450: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.166 +/* 0x458: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.167 +/* 0x460: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.168 +/* 0x468: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.169 +/* 0x470: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.170 +/* 0x478: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  50.171 +/* 0x480: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.172 +/* 0x488: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.173 +/* 0x490: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.174 +/* 0x498: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.175 +/* 0x4a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.176 +/* 0x4a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.177 +/* 0x4b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.178 +/* 0x4b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80,
  50.179 +/* 0x4c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.180 +/* 0x4c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  50.181 +/* 0x4d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  50.182 +/* 0x4d8: */  0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.183 +/* 0x4e0: */  0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.184 +/* 0x4e8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.185 +/* 0x4f0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.186 +/* 0x4f8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x8e, 0x9f,
  50.187 +/* 0x500: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.188 +/* 0x508: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.189 +/* 0x510: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.190 +/* 0x518: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  50.191 +/* 0x520: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.192 +/* 0x528: */  0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0x80,
  50.193 +/* 0x530: */  0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.194 +/* 0x538: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.195 +/* 0x540: */  0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0x80,
  50.196 +/* 0x548: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.197 +/* 0x550: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.198 +/* 0x558: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.199 +/* 0x560: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.200 +/* 0x568: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.201 +/* 0x570: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.202 +/* 0x578: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xaf,
  50.203 +/* 0x580: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.204 +/* 0x588: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.205 +/* 0x590: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.206 +/* 0x598: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.207 +/* 0x5a0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.208 +/* 0x5a8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.209 +/* 0x5b0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.210 +/* 0x5b8: */  0x80, 0x80, 0x80, 0xa0, 0xa0, 0xa0, 0xa0, 0xb7,
  50.211 +/* 0x5c0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.212 +/* 0x5c8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xa0,
  50.213 +/* 0x5d0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xa0, 0xa0,
  50.214 +/* 0x5d8: */  0xa0, 0xa0, 0xa0, 0xb0, 0xa0, 0xb0, 0xb0, 0xbb,
  50.215 +/* 0x5e0: */  0xa0, 0xa0, 0xa0, 0xa0, 0xa0, 0xa0, 0xb0, 0xb0,
  50.216 +/* 0x5e8: */  0xa0, 0xb0, 0xb0, 0xb8, 0xb0, 0xb8, 0xb8, 0xbc,
  50.217 +/* 0x5f0: */  0xb0, 0xb8, 0xb8, 0xb8, 0xb8, 0xbc, 0xbc, 0xbe,
  50.218 +/* 0x5f8: */  0xbc, 0xbc, 0xbe, 0xbf, 0xbe, 0xbf, 0xbf, 0xbf,
  50.219 +/* 0x600: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.220 +/* 0x608: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.221 +/* 0x610: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.222 +/* 0x618: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.223 +/* 0x620: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.224 +/* 0x628: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.225 +/* 0x630: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.226 +/* 0x638: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xc0,
  50.227 +/* 0x640: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.228 +/* 0x648: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.229 +/* 0x650: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0,
  50.230 +/* 0x658: */  0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.231 +/* 0x660: */  0x80, 0x80, 0x80, 0xc0, 0x80, 0xc0, 0xc0, 0xc0,
  50.232 +/* 0x668: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.233 +/* 0x670: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.234 +/* 0x678: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xcf,
  50.235 +/* 0x680: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xc0,
  50.236 +/* 0x688: */  0xc0, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.237 +/* 0x690: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.238 +/* 0x698: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.239 +/* 0x6a0: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.240 +/* 0x6a8: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.241 +/* 0x6b0: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.242 +/* 0x6b8: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xd7,
  50.243 +/* 0x6c0: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.244 +/* 0x6c8: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.245 +/* 0x6d0: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.246 +/* 0x6d8: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xd0, 0xd0, 0xd9,
  50.247 +/* 0x6e0: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xd0,
  50.248 +/* 0x6e8: */  0xc0, 0xd0, 0xd0, 0xd0, 0xd0, 0xd8, 0xd8, 0xdc,
  50.249 +/* 0x6f0: */  0xd0, 0xd0, 0xd8, 0xd8, 0xd8, 0xdc, 0xdc, 0xde,
  50.250 +/* 0x6f8: */  0xdc, 0xdc, 0xde, 0xdf, 0xde, 0xdf, 0xdf, 0xdf,
  50.251 +/* 0x700: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.252 +/* 0x708: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.253 +/* 0x710: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.254 +/* 0x718: */  0xc0, 0xc0, 0xc0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0,
  50.255 +/* 0x720: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0,
  50.256 +/* 0x728: */  0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  50.257 +/* 0x730: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  50.258 +/* 0x738: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe7,
  50.259 +/* 0x740: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  50.260 +/* 0x748: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  50.261 +/* 0x750: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  50.262 +/* 0x758: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe8,
  50.263 +/* 0x760: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  50.264 +/* 0x768: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe8, 0xec,
  50.265 +/* 0x770: */  0xe0, 0xe0, 0xe0, 0xe8, 0xe8, 0xe8, 0xec, 0xee,
  50.266 +/* 0x778: */  0xec, 0xec, 0xec, 0xee, 0xee, 0xef, 0xef, 0xef,
  50.267 +/* 0x780: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  50.268 +/* 0x788: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0,
  50.269 +/* 0x790: */  0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  50.270 +/* 0x798: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  50.271 +/* 0x7a0: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  50.272 +/* 0x7a8: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf4,
  50.273 +/* 0x7b0: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf4,
  50.274 +/* 0x7b8: */  0xf0, 0xf4, 0xf4, 0xf6, 0xf6, 0xf7, 0xf7, 0xf7,
  50.275 +/* 0x7c0: */  0xf0, 0xf0, 0xf0, 0xf8, 0xf0, 0xf8, 0xf8, 0xf8,
  50.276 +/* 0x7c8: */  0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8,
  50.277 +/* 0x7d0: */  0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8,
  50.278 +/* 0x7d8: */  0xf8, 0xf8, 0xf8, 0xfa, 0xfa, 0xfb, 0xfb, 0xfb,
  50.279 +/* 0x7e0: */  0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc,
  50.280 +/* 0x7e8: */  0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfd, 0xfd, 0xfd,
  50.281 +/* 0x7f0: */  0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe,
  50.282 +/* 0x7f8: */  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
  50.283 +/* 0x800: */  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
  50.284 +/* 0x808: */  0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc,
  50.285 +/* 0x810: */  0xfd, 0xfd, 0xfd, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc,
  50.286 +/* 0x818: */  0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8,
  50.287 +/* 0x820: */  0xfb, 0xfb, 0xfb, 0xfa, 0xfa, 0xf8, 0xf8, 0xf8,
  50.288 +/* 0x828: */  0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8,
  50.289 +/* 0x830: */  0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8,
  50.290 +/* 0x838: */  0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  50.291 +/* 0x840: */  0xf7, 0xf7, 0xf7, 0xf6, 0xf6, 0xf4, 0xf4, 0xf0,
  50.292 +/* 0x848: */  0xf4, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  50.293 +/* 0x850: */  0xf4, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  50.294 +/* 0x858: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  50.295 +/* 0x860: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  50.296 +/* 0x868: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0,
  50.297 +/* 0x870: */  0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  50.298 +/* 0x878: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  50.299 +/* 0x880: */  0xef, 0xef, 0xef, 0xee, 0xee, 0xec, 0xec, 0xe8,
  50.300 +/* 0x888: */  0xee, 0xec, 0xe8, 0xe8, 0xe8, 0xe0, 0xe0, 0xe0,
  50.301 +/* 0x890: */  0xec, 0xe8, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  50.302 +/* 0x898: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  50.303 +/* 0x8a0: */  0xe8, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  50.304 +/* 0x8a8: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  50.305 +/* 0x8b0: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  50.306 +/* 0x8b8: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  50.307 +/* 0x8c0: */  0xe7, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  50.308 +/* 0x8c8: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  50.309 +/* 0x8d0: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0,
  50.310 +/* 0x8d8: */  0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.311 +/* 0x8e0: */  0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.312 +/* 0x8e8: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.313 +/* 0x8f0: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.314 +/* 0x8f8: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.315 +/* 0x900: */  0xdf, 0xdf, 0xdf, 0xde, 0xdf, 0xde, 0xdc, 0xdc,
  50.316 +/* 0x908: */  0xde, 0xdc, 0xdc, 0xd8, 0xd8, 0xd8, 0xd0, 0xd0,
  50.317 +/* 0x910: */  0xdc, 0xd8, 0xd8, 0xd0, 0xd0, 0xd0, 0xd0, 0xc0,
  50.318 +/* 0x918: */  0xd0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.319 +/* 0x920: */  0xd9, 0xd0, 0xd0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.320 +/* 0x928: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.321 +/* 0x930: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.322 +/* 0x938: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.323 +/* 0x940: */  0xd7, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.324 +/* 0x948: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.325 +/* 0x950: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.326 +/* 0x958: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.327 +/* 0x960: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.328 +/* 0x968: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.329 +/* 0x970: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80,
  50.330 +/* 0x978: */  0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.331 +/* 0x980: */  0xcf, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.332 +/* 0x988: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.333 +/* 0x990: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  50.334 +/* 0x998: */  0xc0, 0xc0, 0xc0, 0x80, 0xc0, 0x80, 0x80, 0x80,
  50.335 +/* 0x9a0: */  0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80,
  50.336 +/* 0x9a8: */  0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.337 +/* 0x9b0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.338 +/* 0x9b8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.339 +/* 0x9c0: */  0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.340 +/* 0x9c8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.341 +/* 0x9d0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.342 +/* 0x9d8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.343 +/* 0x9e0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.344 +/* 0x9e8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.345 +/* 0x9f0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.346 +/* 0x9f8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.347 +/* 0xa00: */  0xbf, 0xbf, 0xbf, 0xbe, 0xbf, 0xbe, 0xbc, 0xbc,
  50.348 +/* 0xa08: */  0xbe, 0xbc, 0xbc, 0xb8, 0xb8, 0xb8, 0xb8, 0xb0,
  50.349 +/* 0xa10: */  0xbc, 0xb8, 0xb8, 0xb0, 0xb8, 0xb0, 0xb0, 0xb0,
  50.350 +/* 0xa18: */  0xb0, 0xb0, 0xa0, 0xa0, 0xa0, 0xa0, 0xa0, 0xa0,
  50.351 +/* 0xa20: */  0xbb, 0xb0, 0xb0, 0xa0, 0xb0, 0xa0, 0xa0, 0xa0,
  50.352 +/* 0xa28: */  0xa0, 0xa0, 0xa0, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.353 +/* 0xa30: */  0xa0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.354 +/* 0xa38: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.355 +/* 0xa40: */  0xb7, 0xb0, 0xa0, 0xa0, 0xa0, 0x80, 0x80, 0x80,
  50.356 +/* 0xa48: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.357 +/* 0xa50: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.358 +/* 0xa58: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.359 +/* 0xa60: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.360 +/* 0xa68: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.361 +/* 0xa70: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.362 +/* 0xa78: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.363 +/* 0xa80: */  0xaf, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.364 +/* 0xa88: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.365 +/* 0xa90: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.366 +/* 0xa98: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.367 +/* 0xaa0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.368 +/* 0xaa8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.369 +/* 0xab0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.370 +/* 0xab8: */  0x80, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00,
  50.371 +/* 0xac0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.372 +/* 0xac8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00,
  50.373 +/* 0xad0: */  0x80, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00,
  50.374 +/* 0xad8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.375 +/* 0xae0: */  0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.376 +/* 0xae8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.377 +/* 0xaf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.378 +/* 0xaf8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.379 +/* 0xb00: */  0x9f, 0x9e, 0x88, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.380 +/* 0xb08: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.381 +/* 0xb10: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  50.382 +/* 0xb18: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00,
  50.383 +/* 0xb20: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00,
  50.384 +/* 0xb28: */  0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.385 +/* 0xb30: */  0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.386 +/* 0xb38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.387 +/* 0xb40: */  0x80, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00,
  50.388 +/* 0xb48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.389 +/* 0xb50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.390 +/* 0xb58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.391 +/* 0xb60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.392 +/* 0xb68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.393 +/* 0xb70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.394 +/* 0xb78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.395 +/* 0xb80: */  0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.396 +/* 0xb88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.397 +/* 0xb90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.398 +/* 0xb98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.399 +/* 0xba0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.400 +/* 0xba8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.401 +/* 0xbb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.402 +/* 0xbb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.403 +/* 0xbc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.404 +/* 0xbc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.405 +/* 0xbd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.406 +/* 0xbd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.407 +/* 0xbe0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.408 +/* 0xbe8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.409 +/* 0xbf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.410 +/* 0xbf8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.411 +/* 0xc00: */  0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7c,
  50.412 +/* 0xc08: */  0x7e, 0x7c, 0x7c, 0x78, 0x7c, 0x78, 0x78, 0x78,
  50.413 +/* 0xc10: */  0x7c, 0x78, 0x78, 0x78, 0x78, 0x70, 0x70, 0x70,
  50.414 +/* 0xc18: */  0x78, 0x70, 0x70, 0x60, 0x70, 0x60, 0x60, 0x60,
  50.415 +/* 0xc20: */  0x7b, 0x78, 0x70, 0x70, 0x70, 0x60, 0x60, 0x60,
  50.416 +/* 0xc28: */  0x70, 0x60, 0x60, 0x60, 0x60, 0x40, 0x40, 0x40,
  50.417 +/* 0xc30: */  0x60, 0x60, 0x60, 0x40, 0x40, 0x40, 0x40, 0x40,
  50.418 +/* 0xc38: */  0x40, 0x40, 0x40, 0x00, 0x40, 0x00, 0x00, 0x00,
  50.419 +/* 0xc40: */  0x77, 0x70, 0x60, 0x60, 0x60, 0x60, 0x40, 0x40,
  50.420 +/* 0xc48: */  0x60, 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x00,
  50.421 +/* 0xc50: */  0x40, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.422 +/* 0xc58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.423 +/* 0xc60: */  0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.424 +/* 0xc68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.425 +/* 0xc70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.426 +/* 0xc78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.427 +/* 0xc80: */  0x6f, 0x64, 0x60, 0x40, 0x40, 0x00, 0x00, 0x00,
  50.428 +/* 0xc88: */  0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.429 +/* 0xc90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.430 +/* 0xc98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.431 +/* 0xca0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.432 +/* 0xca8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.433 +/* 0xcb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.434 +/* 0xcb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.435 +/* 0xcc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.436 +/* 0xcc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.437 +/* 0xcd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.438 +/* 0xcd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.439 +/* 0xce0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.440 +/* 0xce8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.441 +/* 0xcf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.442 +/* 0xcf8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.443 +/* 0xd00: */  0x5f, 0x5e, 0x4c, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.444 +/* 0xd08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.445 +/* 0xd10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.446 +/* 0xd18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.447 +/* 0xd20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.448 +/* 0xd28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.449 +/* 0xd30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.450 +/* 0xd38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.451 +/* 0xd40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.452 +/* 0xd48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.453 +/* 0xd50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.454 +/* 0xd58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.455 +/* 0xd60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.456 +/* 0xd68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.457 +/* 0xd70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.458 +/* 0xd78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.459 +/* 0xd80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.460 +/* 0xd88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.461 +/* 0xd90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.462 +/* 0xd98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.463 +/* 0xda0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.464 +/* 0xda8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.465 +/* 0xdb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.466 +/* 0xdb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.467 +/* 0xdc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.468 +/* 0xdc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.469 +/* 0xdd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.470 +/* 0xdd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.471 +/* 0xde0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.472 +/* 0xde8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.473 +/* 0xdf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.474 +/* 0xdf8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.475 +/* 0xe00: */  0x3f, 0x3f, 0x3e, 0x00, 0x1c, 0x00, 0x00, 0x00,
  50.476 +/* 0xe08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.477 +/* 0xe10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.478 +/* 0xe18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.479 +/* 0xe20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.480 +/* 0xe28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.481 +/* 0xe30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.482 +/* 0xe38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.483 +/* 0xe40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.484 +/* 0xe48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.485 +/* 0xe50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.486 +/* 0xe58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.487 +/* 0xe60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.488 +/* 0xe68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.489 +/* 0xe70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.490 +/* 0xe78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.491 +/* 0xe80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.492 +/* 0xe88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.493 +/* 0xe90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.494 +/* 0xe98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.495 +/* 0xea0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.496 +/* 0xea8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.497 +/* 0xeb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.498 +/* 0xeb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.499 +/* 0xec0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.500 +/* 0xec8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.501 +/* 0xed0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.502 +/* 0xed8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.503 +/* 0xee0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.504 +/* 0xee8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.505 +/* 0xef0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.506 +/* 0xef8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.507 +/* 0xf00: */  0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.508 +/* 0xf08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.509 +/* 0xf10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.510 +/* 0xf18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.511 +/* 0xf20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.512 +/* 0xf28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.513 +/* 0xf30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.514 +/* 0xf38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.515 +/* 0xf40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.516 +/* 0xf48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.517 +/* 0xf50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.518 +/* 0xf58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.519 +/* 0xf60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.520 +/* 0xf68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.521 +/* 0xf70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.522 +/* 0xf78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.523 +/* 0xf80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.524 +/* 0xf88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.525 +/* 0xf90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.526 +/* 0xf98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.527 +/* 0xfa0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.528 +/* 0xfa8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.529 +/* 0xfb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.530 +/* 0xfb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.531 +/* 0xfc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.532 +/* 0xfc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.533 +/* 0xfd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.534 +/* 0xfd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.535 +/* 0xfe0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.536 +/* 0xfe8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.537 +/* 0xff0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.538 +/* 0xff8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  50.539 +};
    51.1 Binary file src/resid-fp/wave8580_P_T.dat has changed
    52.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    52.2 +++ b/src/resid-fp/wave8580__ST.cc	Sun May 11 14:09:13 2014 +0100
    52.3 @@ -0,0 +1,536 @@
    52.4 +//  ---------------------------------------------------------------------------
    52.5 +//  This file is part of reSID, a MOS6581 SID emulator engine.
    52.6 +//  Copyright (C) 2004  Dag Lem <resid@nimrod.no>
    52.7 +//
    52.8 +//  This program is free software; you can redistribute it and/or modify
    52.9 +//  it under the terms of the GNU General Public License as published by
   52.10 +//  the Free Software Foundation; either version 2 of the License, or
   52.11 +//  (at your option) any later version.
   52.12 +//
   52.13 +//  This program is distributed in the hope that it will be useful,
   52.14 +//  but WITHOUT ANY WARRANTY; without even the implied warranty of
   52.15 +//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   52.16 +//  GNU General Public License for more details.
   52.17 +//
   52.18 +//  You should have received a copy of the GNU General Public License
   52.19 +//  along with this program; if not, write to the Free Software
   52.20 +//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   52.21 +//  ---------------------------------------------------------------------------
   52.22 +
   52.23 +#include "wave.h"
   52.24 +
   52.25 +reg8 WaveformGeneratorFP::wave8580__ST[] =
   52.26 +{
   52.27 +/* 0x000: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.28 +/* 0x008: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.29 +/* 0x010: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.30 +/* 0x018: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.31 +/* 0x020: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.32 +/* 0x028: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.33 +/* 0x030: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.34 +/* 0x038: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.35 +/* 0x040: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.36 +/* 0x048: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.37 +/* 0x050: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.38 +/* 0x058: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.39 +/* 0x060: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.40 +/* 0x068: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.41 +/* 0x070: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.42 +/* 0x078: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
   52.43 +/* 0x080: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.44 +/* 0x088: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.45 +/* 0x090: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.46 +/* 0x098: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.47 +/* 0x0a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.48 +/* 0x0a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.49 +/* 0x0b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.50 +/* 0x0b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.51 +/* 0x0c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.52 +/* 0x0c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.53 +/* 0x0d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.54 +/* 0x0d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.55 +/* 0x0e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.56 +/* 0x0e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.57 +/* 0x0f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.58 +/* 0x0f8: */  0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x07,
   52.59 +/* 0x100: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.60 +/* 0x108: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.61 +/* 0x110: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.62 +/* 0x118: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.63 +/* 0x120: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.64 +/* 0x128: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.65 +/* 0x130: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.66 +/* 0x138: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.67 +/* 0x140: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.68 +/* 0x148: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.69 +/* 0x150: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.70 +/* 0x158: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.71 +/* 0x160: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.72 +/* 0x168: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.73 +/* 0x170: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.74 +/* 0x178: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
   52.75 +/* 0x180: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.76 +/* 0x188: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.77 +/* 0x190: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.78 +/* 0x198: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.79 +/* 0x1a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.80 +/* 0x1a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.81 +/* 0x1b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.82 +/* 0x1b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.83 +/* 0x1c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.84 +/* 0x1c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.85 +/* 0x1d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.86 +/* 0x1d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.87 +/* 0x1e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.88 +/* 0x1e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.89 +/* 0x1f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.90 +/* 0x1f8: */  0x0e, 0x0e, 0x0e, 0x0e, 0x0f, 0x0f, 0x0f, 0x0f,
   52.91 +/* 0x200: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.92 +/* 0x208: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.93 +/* 0x210: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.94 +/* 0x218: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.95 +/* 0x220: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.96 +/* 0x228: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.97 +/* 0x230: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.98 +/* 0x238: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   52.99 +/* 0x240: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.100 +/* 0x248: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.101 +/* 0x250: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.102 +/* 0x258: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.103 +/* 0x260: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.104 +/* 0x268: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.105 +/* 0x270: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.106 +/* 0x278: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  52.107 +/* 0x280: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.108 +/* 0x288: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.109 +/* 0x290: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.110 +/* 0x298: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.111 +/* 0x2a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.112 +/* 0x2a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.113 +/* 0x2b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.114 +/* 0x2b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.115 +/* 0x2c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.116 +/* 0x2c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.117 +/* 0x2d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.118 +/* 0x2d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.119 +/* 0x2e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.120 +/* 0x2e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.121 +/* 0x2f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.122 +/* 0x2f8: */  0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x07,
  52.123 +/* 0x300: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.124 +/* 0x308: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.125 +/* 0x310: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.126 +/* 0x318: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.127 +/* 0x320: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.128 +/* 0x328: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.129 +/* 0x330: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.130 +/* 0x338: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.131 +/* 0x340: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.132 +/* 0x348: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.133 +/* 0x350: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.134 +/* 0x358: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.135 +/* 0x360: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.136 +/* 0x368: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.137 +/* 0x370: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.138 +/* 0x378: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  52.139 +/* 0x380: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.140 +/* 0x388: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.141 +/* 0x390: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.142 +/* 0x398: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.143 +/* 0x3a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.144 +/* 0x3a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.145 +/* 0x3b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.146 +/* 0x3b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  52.147 +/* 0x3c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.148 +/* 0x3c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.149 +/* 0x3d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.150 +/* 0x3d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.151 +/* 0x3e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.152 +/* 0x3e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.153 +/* 0x3f0: */  0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c,
  52.154 +/* 0x3f8: */  0x1e, 0x1e, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f,
  52.155 +/* 0x400: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.156 +/* 0x408: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.157 +/* 0x410: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.158 +/* 0x418: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.159 +/* 0x420: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.160 +/* 0x428: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.161 +/* 0x430: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.162 +/* 0x438: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.163 +/* 0x440: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.164 +/* 0x448: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.165 +/* 0x450: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.166 +/* 0x458: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.167 +/* 0x460: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.168 +/* 0x468: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.169 +/* 0x470: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.170 +/* 0x478: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  52.171 +/* 0x480: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.172 +/* 0x488: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.173 +/* 0x490: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.174 +/* 0x498: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.175 +/* 0x4a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.176 +/* 0x4a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.177 +/* 0x4b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.178 +/* 0x4b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.179 +/* 0x4c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.180 +/* 0x4c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.181 +/* 0x4d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.182 +/* 0x4d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.183 +/* 0x4e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.184 +/* 0x4e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.185 +/* 0x4f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.186 +/* 0x4f8: */  0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x07,
  52.187 +/* 0x500: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.188 +/* 0x508: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.189 +/* 0x510: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.190 +/* 0x518: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.191 +/* 0x520: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.192 +/* 0x528: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.193 +/* 0x530: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.194 +/* 0x538: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.195 +/* 0x540: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.196 +/* 0x548: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.197 +/* 0x550: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.198 +/* 0x558: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.199 +/* 0x560: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.200 +/* 0x568: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.201 +/* 0x570: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.202 +/* 0x578: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  52.203 +/* 0x580: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.204 +/* 0x588: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.205 +/* 0x590: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.206 +/* 0x598: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.207 +/* 0x5a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.208 +/* 0x5a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.209 +/* 0x5b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.210 +/* 0x5b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.211 +/* 0x5c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.212 +/* 0x5c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.213 +/* 0x5d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.214 +/* 0x5d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.215 +/* 0x5e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.216 +/* 0x5e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.217 +/* 0x5f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.218 +/* 0x5f8: */  0x0e, 0x0e, 0x0e, 0x0e, 0x0f, 0x0f, 0x0f, 0x1f,
  52.219 +/* 0x600: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.220 +/* 0x608: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.221 +/* 0x610: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.222 +/* 0x618: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.223 +/* 0x620: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.224 +/* 0x628: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.225 +/* 0x630: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.226 +/* 0x638: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.227 +/* 0x640: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.228 +/* 0x648: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.229 +/* 0x650: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.230 +/* 0x658: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.231 +/* 0x660: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.232 +/* 0x668: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.233 +/* 0x670: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.234 +/* 0x678: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  52.235 +/* 0x680: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.236 +/* 0x688: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.237 +/* 0x690: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.238 +/* 0x698: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.239 +/* 0x6a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.240 +/* 0x6a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.241 +/* 0x6b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.242 +/* 0x6b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.243 +/* 0x6c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.244 +/* 0x6c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.245 +/* 0x6d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.246 +/* 0x6d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.247 +/* 0x6e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.248 +/* 0x6e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.249 +/* 0x6f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.250 +/* 0x6f8: */  0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x07,
  52.251 +/* 0x700: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.252 +/* 0x708: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.253 +/* 0x710: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.254 +/* 0x718: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.255 +/* 0x720: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.256 +/* 0x728: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.257 +/* 0x730: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.258 +/* 0x738: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.259 +/* 0x740: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.260 +/* 0x748: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.261 +/* 0x750: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.262 +/* 0x758: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.263 +/* 0x760: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.264 +/* 0x768: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.265 +/* 0x770: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.266 +/* 0x778: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  52.267 +/* 0x780: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.268 +/* 0x788: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.269 +/* 0x790: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.270 +/* 0x798: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.271 +/* 0x7a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.272 +/* 0x7a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.273 +/* 0x7b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.274 +/* 0x7b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  52.275 +/* 0x7c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.276 +/* 0x7c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.277 +/* 0x7d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.278 +/* 0x7d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.279 +/* 0x7e0: */  0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38,
  52.280 +/* 0x7e8: */  0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38,
  52.281 +/* 0x7f0: */  0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3e,
  52.282 +/* 0x7f8: */  0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
  52.283 +/* 0x800: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.284 +/* 0x808: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.285 +/* 0x810: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.286 +/* 0x818: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.287 +/* 0x820: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.288 +/* 0x828: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.289 +/* 0x830: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.290 +/* 0x838: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.291 +/* 0x840: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.292 +/* 0x848: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.293 +/* 0x850: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.294 +/* 0x858: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.295 +/* 0x860: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.296 +/* 0x868: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.297 +/* 0x870: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.298 +/* 0x878: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  52.299 +/* 0x880: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.300 +/* 0x888: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.301 +/* 0x890: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.302 +/* 0x898: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.303 +/* 0x8a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.304 +/* 0x8a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.305 +/* 0x8b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.306 +/* 0x8b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.307 +/* 0x8c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.308 +/* 0x8c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.309 +/* 0x8d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.310 +/* 0x8d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.311 +/* 0x8e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.312 +/* 0x8e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.313 +/* 0x8f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.314 +/* 0x8f8: */  0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x07,
  52.315 +/* 0x900: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.316 +/* 0x908: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.317 +/* 0x910: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.318 +/* 0x918: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.319 +/* 0x920: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.320 +/* 0x928: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.321 +/* 0x930: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.322 +/* 0x938: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.323 +/* 0x940: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.324 +/* 0x948: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.325 +/* 0x950: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.326 +/* 0x958: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.327 +/* 0x960: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.328 +/* 0x968: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.329 +/* 0x970: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.330 +/* 0x978: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  52.331 +/* 0x980: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.332 +/* 0x988: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.333 +/* 0x990: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.334 +/* 0x998: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.335 +/* 0x9a0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.336 +/* 0x9a8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.337 +/* 0x9b0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.338 +/* 0x9b8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.339 +/* 0x9c0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.340 +/* 0x9c8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.341 +/* 0x9d0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.342 +/* 0x9d8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.343 +/* 0x9e0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.344 +/* 0x9e8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.345 +/* 0x9f0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.346 +/* 0x9f8: */  0x0e, 0x0e, 0x0e, 0x0e, 0x0f, 0x0f, 0x0f, 0x0f,
  52.347 +/* 0xa00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.348 +/* 0xa08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.349 +/* 0xa10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.350 +/* 0xa18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.351 +/* 0xa20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.352 +/* 0xa28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.353 +/* 0xa30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.354 +/* 0xa38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.355 +/* 0xa40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.356 +/* 0xa48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.357 +/* 0xa50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.358 +/* 0xa58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.359 +/* 0xa60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.360 +/* 0xa68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.361 +/* 0xa70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.362 +/* 0xa78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  52.363 +/* 0xa80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.364 +/* 0xa88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.365 +/* 0xa90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.366 +/* 0xa98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.367 +/* 0xaa0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.368 +/* 0xaa8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.369 +/* 0xab0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.370 +/* 0xab8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.371 +/* 0xac0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.372 +/* 0xac8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.373 +/* 0xad0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.374 +/* 0xad8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.375 +/* 0xae0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.376 +/* 0xae8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.377 +/* 0xaf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.378 +/* 0xaf8: */  0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x07,
  52.379 +/* 0xb00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.380 +/* 0xb08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.381 +/* 0xb10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.382 +/* 0xb18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.383 +/* 0xb20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.384 +/* 0xb28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.385 +/* 0xb30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.386 +/* 0xb38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.387 +/* 0xb40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.388 +/* 0xb48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.389 +/* 0xb50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.390 +/* 0xb58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.391 +/* 0xb60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.392 +/* 0xb68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.393 +/* 0xb70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.394 +/* 0xb78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  52.395 +/* 0xb80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.396 +/* 0xb88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.397 +/* 0xb90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.398 +/* 0xb98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.399 +/* 0xba0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.400 +/* 0xba8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.401 +/* 0xbb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.402 +/* 0xbb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  52.403 +/* 0xbc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.404 +/* 0xbc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.405 +/* 0xbd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.406 +/* 0xbd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.407 +/* 0xbe0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.408 +/* 0xbe8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.409 +/* 0xbf0: */  0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c,
  52.410 +/* 0xbf8: */  0x1e, 0x1e, 0x1f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f,
  52.411 +/* 0xc00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.412 +/* 0xc08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.413 +/* 0xc10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.414 +/* 0xc18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.415 +/* 0xc20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.416 +/* 0xc28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.417 +/* 0xc30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.418 +/* 0xc38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.419 +/* 0xc40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.420 +/* 0xc48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.421 +/* 0xc50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.422 +/* 0xc58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.423 +/* 0xc60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.424 +/* 0xc68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.425 +/* 0xc70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.426 +/* 0xc78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  52.427 +/* 0xc80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.428 +/* 0xc88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.429 +/* 0xc90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.430 +/* 0xc98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.431 +/* 0xca0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.432 +/* 0xca8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.433 +/* 0xcb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.434 +/* 0xcb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.435 +/* 0xcc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.436 +/* 0xcc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.437 +/* 0xcd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.438 +/* 0xcd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.439 +/* 0xce0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.440 +/* 0xce8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.441 +/* 0xcf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.442 +/* 0xcf8: */  0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x07,
  52.443 +/* 0xd00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.444 +/* 0xd08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.445 +/* 0xd10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.446 +/* 0xd18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.447 +/* 0xd20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.448 +/* 0xd28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.449 +/* 0xd30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.450 +/* 0xd38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.451 +/* 0xd40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.452 +/* 0xd48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.453 +/* 0xd50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.454 +/* 0xd58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.455 +/* 0xd60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.456 +/* 0xd68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.457 +/* 0xd70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.458 +/* 0xd78: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,
  52.459 +/* 0xd80: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.460 +/* 0xd88: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.461 +/* 0xd90: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.462 +/* 0xd98: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.463 +/* 0xda0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.464 +/* 0xda8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.465 +/* 0xdb0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.466 +/* 0xdb8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
  52.467 +/* 0xdc0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.468 +/* 0xdc8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.469 +/* 0xdd0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.470 +/* 0xdd8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.471 +/* 0xde0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.472 +/* 0xde8: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.473 +/* 0xdf0: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.474 +/* 0xdf8: */  0x0e, 0x0e, 0x0e, 0x0e, 0x0f, 0x0f, 0x1f, 0x1f,
  52.475 +/* 0xe00: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.476 +/* 0xe08: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.477 +/* 0xe10: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.478 +/* 0xe18: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.479 +/* 0xe20: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.480 +/* 0xe28: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.481 +/* 0xe30: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.482 +/* 0xe38: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.483 +/* 0xe40: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.484 +/* 0xe48: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.485 +/* 0xe50: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.486 +/* 0xe58: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.487 +/* 0xe60: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.488 +/* 0xe68: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.489 +/* 0xe70: */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  52.490 +/* 0xe78: */  0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x83, 0x83,
  52.491 +/* 0xe80: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  52.492 +/* 0xe88: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  52.493 +/* 0xe90: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  52.494 +/* 0xe98: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  52.495 +/* 0xea0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  52.496 +/* 0xea8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  52.497 +/* 0xeb0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  52.498 +/* 0xeb8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  52.499 +/* 0xec0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  52.500 +/* 0xec8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  52.501 +/* 0xed0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  52.502 +/* 0xed8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  52.503 +/* 0xee0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  52.504 +/* 0xee8: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  52.505 +/* 0xef0: */  0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
  52.506 +/* 0xef8: */  0x80, 0x80, 0x80, 0x80, 0x87, 0x87, 0x87, 0x8f,
  52.507 +/* 0xf00: */  0xc0, 0xe0, 0xe0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0,
  52.508 +/* 0xf08: */  0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  52.509 +/* 0xf10: */  0xc0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  52.510 +/* 0xf18: */  0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
  52.511 +/* 0xf20: */  0xc0, 0xe0, 0xe0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0,
  52.512 +/* 0xf28: */  0xe0, 0xe0, 0xe0, 0xc0, 0xe0, 0xc0, 0xe0, 0xe0,
  52.513 +/* 0xf30: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  52.514 +/* 0xf38: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  52.515 +/* 0xf40: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  52.516 +/* 0xf48: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  52.517 +/* 0xf50: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  52.518 +/* 0xf58: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  52.519 +/* 0xf60: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  52.520 +/* 0xf68: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  52.521 +/* 0xf70: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
  52.522 +/* 0xf78: */  0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe3, 0xe3,
  52.523 +/* 0xf80: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  52.524 +/* 0xf88: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  52.525 +/* 0xf90: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  52.526 +/* 0xf98: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  52.527 +/* 0xfa0: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  52.528 +/* 0xfa8: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  52.529 +/* 0xfb0: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
  52.530 +/* 0xfb8: */  0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf1,
  52.531 +/* 0xfc0: */  0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8,
  52.532 +/* 0xfc8: */  0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8,
  52.533 +/* 0xfd0: */  0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8,
  52.534 +/* 0xfd8: */  0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8,
  52.535 +/* 0xfe0: */  0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc,
  52.536 +/* 0xfe8: */  0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc,
  52.537 +/* 0xff0: */  0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe,
  52.538 +/* 0xff8: */  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
  52.539 +};
    53.1 Binary file src/resid-fp/wave8580__ST.dat has changed
    54.1 --- a/src/resources.h	Sat May 03 13:39:03 2014 +0100
    54.2 +++ b/src/resources.h	Sun May 11 14:09:13 2014 +0100
    54.3 @@ -36,6 +36,7 @@
    54.4  #define IDC_CHECK3 1012
    54.5  #define IDC_CHECK4 1013
    54.6  #define IDC_CHECKGUS 1014
    54.7 +#define IDC_CHECKSSI 1015
    54.8  #define IDC_STATIC 1020
    54.9  #define IDC_EDIT1  1030
   54.10  #define IDC_EDIT2  1031
    55.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    55.2 +++ b/src/sound_resid.cc	Sun May 11 14:09:13 2014 +0100
    55.3 @@ -0,0 +1,108 @@
    55.4 +#include <stdio.h>
    55.5 +#include <string.h>
    55.6 +#include <stdint.h>
    55.7 +#include <stdlib.h>
    55.8 +#include "resid-fp/sid.h"
    55.9 +#include "sound_resid.h"
   55.10 +
   55.11 +typedef struct psid_t
   55.12 +{
   55.13 +        /* resid sid implementation */
   55.14 +        SIDFP *sid;
   55.15 +        int16_t last_sample;
   55.16 +} psid_t;
   55.17 +
   55.18 +psid_t *psid;
   55.19 +
   55.20 +void *sid_init()
   55.21 +{
   55.22 +//        psid_t *psid;
   55.23 +        int c;
   55.24 +        sampling_method method=SAMPLE_INTERPOLATE;
   55.25 +        float cycles_per_sec = 14318180.0 / 16.0;
   55.26 +        
   55.27 +        psid = new psid_t;
   55.28 +//        psid = (psid_t *)malloc(sizeof(sound_t));
   55.29 +        psid->sid = new SIDFP;
   55.30 +        
   55.31 +        psid->sid->set_chip_model(MOS8580FP);
   55.32 +        
   55.33 +        psid->sid->set_voice_nonlinearity(1.0f);
   55.34 +        psid->sid->get_filter().set_distortion_properties(0.f, 0.f, 0.f);
   55.35 +        psid->sid->get_filter().set_type4_properties(6.55f, 20.0f);
   55.36 +
   55.37 +        psid->sid->enable_filter(true);
   55.38 +        psid->sid->enable_external_filter(true);
   55.39 +
   55.40 +        psid->sid->reset();
   55.41 +        
   55.42 +        for (c=0;c<32;c++)
   55.43 +                psid->sid->write(c,0);
   55.44 +                
   55.45 +        if (!psid->sid->set_sampling_parameters((float)cycles_per_sec, method,
   55.46 +                                            (float)48000, 0.9*48000.0/2.0))
   55.47 +                                            {
   55.48 +  //                                                      printf("reSID failed!\n");
   55.49 +                                                }
   55.50 +
   55.51 +        psid->sid->set_chip_model(MOS6581FP);
   55.52 +        psid->sid->set_voice_nonlinearity(0.96f);
   55.53 +        psid->sid->get_filter().set_distortion_properties(3.7e-3f, 2048.f, 1.2e-4f);
   55.54 +
   55.55 +        psid->sid->input(0);
   55.56 +        psid->sid->get_filter().set_type3_properties(1.33e6f, 2.2e9f, 1.0056f, 7e3f);
   55.57 +
   55.58 +        return (void *)psid;
   55.59 +}
   55.60 +
   55.61 +void sid_close(void *p)
   55.62 +{
   55.63 +//        psid_t *psid = (psid_t *)p;
   55.64 +        delete psid->sid;
   55.65 +//        free(psid);
   55.66 +}
   55.67 +
   55.68 +void sid_reset(void *p)
   55.69 +{
   55.70 +//        psid_t *psid = (psid_t *)p;
   55.71 +        int c;
   55.72 +        
   55.73 +        psid->sid->reset();
   55.74 +
   55.75 +        for (c = 0; c < 32; c++)
   55.76 +                psid->sid->write(c, 0);
   55.77 +}
   55.78 +
   55.79 +
   55.80 +uint8_t sid_read(uint16_t addr, void *p)
   55.81 +{
   55.82 +//        psid_t *psid = (psid_t *)p;
   55.83 +        
   55.84 +        return psid->sid->read(addr & 0x1f);
   55.85 +//        return 0xFF;
   55.86 +}
   55.87 +
   55.88 +void sid_write(uint16_t addr, uint8_t val, void *p)
   55.89 +{
   55.90 +//        psid_t *psid = (psid_t *)p;
   55.91 +        
   55.92 +        psid->sid->write(addr & 0x1f,val);
   55.93 +}
   55.94 +
   55.95 +#define CLOCK_DELTA (int)((14318180.0 / 16.0) / 48000.0)
   55.96 +
   55.97 +static void fillbuf2(int& count, int16_t *buf, int len)
   55.98 +{
   55.99 +        int c;
  55.100 +        c = psid->sid->clock(count, buf, len, 1);
  55.101 +        if (!c)
  55.102 +                *buf = psid->last_sample;
  55.103 +        psid->last_sample = *buf;
  55.104 +}
  55.105 +void sid_fillbuf(int16_t *buf, int len, void *p)
  55.106 +{
  55.107 +//        psid_t *psid = (psid_t *)p;
  55.108 +        int x = CLOCK_DELTA;
  55.109 +        
  55.110 +        fillbuf2(x, buf, len);
  55.111 +}
    56.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    56.2 +++ b/src/sound_resid.h	Sun May 11 14:09:13 2014 +0100
    56.3 @@ -0,0 +1,12 @@
    56.4 +#ifdef __cplusplus
    56.5 +extern "C" {
    56.6 +#endif
    56.7 +        void *sid_init();
    56.8 +        void sid_close(void *p);
    56.9 +        void sid_reset(void *p);
   56.10 +        uint8_t sid_read(uint16_t addr, void *p);
   56.11 +        void sid_write(uint16_t addr, uint8_t val, void *p);
   56.12 +        void sid_fillbuf(int16_t *buf, int len, void *p);
   56.13 +#ifdef __cplusplus
   56.14 +}
   56.15 +#endif
    57.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    57.2 +++ b/src/sound_ssi2001.c	Sun May 11 14:09:13 2014 +0100
    57.3 @@ -0,0 +1,79 @@
    57.4 +#include <stdlib.h>
    57.5 +#include "ibm.h"
    57.6 +#include "device.h"
    57.7 +#include "sound.h"
    57.8 +
    57.9 +#include "sound_resid.h"
   57.10 +#include "sound_ssi2001.h"
   57.11 +
   57.12 +typedef struct ssi2001_t
   57.13 +{
   57.14 +        void    *psid;
   57.15 +        int16_t buffer[SOUNDBUFLEN * 2];
   57.16 +        int     pos;
   57.17 +} ssi2001_t;
   57.18 +
   57.19 +static void ssi2001_poll(void *p)
   57.20 +{
   57.21 +        ssi2001_t *ssi2001 = (ssi2001_t *)p;
   57.22 +        
   57.23 +        if (ssi2001->pos >= SOUNDBUFLEN) return;
   57.24 +        
   57.25 +        sid_fillbuf(&ssi2001->buffer[ssi2001->pos], 1, ssi2001->psid);
   57.26 +        ssi2001->pos++;
   57.27 +}
   57.28 +
   57.29 +static void ssi2001_get_buffer(int16_t *buffer, int len, void *p)
   57.30 +{
   57.31 +        ssi2001_t *ssi2001 = (ssi2001_t *)p;
   57.32 +        int c;
   57.33 +
   57.34 +        for (c = 0; c < len * 2; c++)
   57.35 +                buffer[c] += ssi2001->buffer[c >> 1] / 2;
   57.36 +
   57.37 +        ssi2001->pos = 0;
   57.38 +}
   57.39 +
   57.40 +static uint8_t ssi2001_read(uint16_t addr, void *p)
   57.41 +{
   57.42 +        return sid_read(addr, p);
   57.43 +}
   57.44 +
   57.45 +static void ssi2001_write(uint16_t addr, uint8_t val, void *p)
   57.46 +{
   57.47 +        return sid_write(addr, val, p);
   57.48 +}
   57.49 +
   57.50 +void *ssi2001_init()
   57.51 +{
   57.52 +        ssi2001_t *ssi2001 = malloc(sizeof(ssi2001_t));
   57.53 +        memset(ssi2001, 0, sizeof(ssi2001_t));
   57.54 +        
   57.55 +        pclog("ssi2001_init\n");
   57.56 +        ssi2001->psid = sid_init();
   57.57 +        sid_reset(ssi2001->psid);
   57.58 +        io_sethandler(0x0280, 0x0020, ssi2001_read, NULL, NULL, ssi2001_write, NULL, NULL, &ssi2001);
   57.59 +        sound_add_handler(ssi2001_poll, ssi2001_get_buffer, ssi2001);
   57.60 +        return ssi2001;
   57.61 +}
   57.62 +
   57.63 +void ssi2001_close(void *p)
   57.64 +{
   57.65 +        ssi2001_t *ssi2001 = (ssi2001_t *)p;
   57.66 +        
   57.67 +        sid_close(ssi2001->psid);
   57.68 +
   57.69 +        free(ssi2001);
   57.70 +}
   57.71 +
   57.72 +device_t ssi2001_device =
   57.73 +{
   57.74 +        "Innovation SSI-2001",
   57.75 +        0,
   57.76 +        ssi2001_init,
   57.77 +        ssi2001_close,
   57.78 +        NULL,
   57.79 +        NULL,
   57.80 +        NULL,
   57.81 +        NULL
   57.82 +};
    58.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    58.2 +++ b/src/sound_ssi2001.h	Sun May 11 14:09:13 2014 +0100
    58.3 @@ -0,0 +1,1 @@
    58.4 +extern device_t ssi2001_device;
    59.1 --- a/src/win.c	Sat May 03 13:39:03 2014 +0100
    59.2 +++ b/src/win.c	Sun May 11 14:09:13 2014 +0100
    59.3 @@ -600,7 +600,7 @@
    59.4          int c, d;
    59.5          int rom,gfx,mem,fpu;
    59.6          int temp_cpu, temp_cpu_m, temp_model;
    59.7 -        int temp_GAMEBLASTER, temp_GUS, temp_sound_card_current;
    59.8 +        int temp_GAMEBLASTER, temp_GUS, temp_SSI2001, temp_sound_card_current;
    59.9  //        pclog("Dialog msg %i %08X\n",message,message);
   59.10          switch (message)
   59.11          {
   59.12 @@ -697,6 +697,9 @@
   59.13  
   59.14                  h=GetDlgItem(hdlg, IDC_CHECKGUS);
   59.15                  SendMessage(h, BM_SETCHECK, GUS, 0);
   59.16 +
   59.17 +                h=GetDlgItem(hdlg, IDC_CHECKSSI);
   59.18 +                SendMessage(h, BM_SETCHECK, SSI2001, 0);
   59.19                  
   59.20                  h=GetDlgItem(hdlg, IDC_CHECK2);
   59.21                  SendMessage(h, BM_SETCHECK, slowega, 0);
   59.22 @@ -761,10 +764,13 @@
   59.23                          h = GetDlgItem(hdlg, IDC_CHECKGUS);
   59.24                          temp_GUS = SendMessage(h, BM_GETCHECK, 0, 0);
   59.25  
   59.26 +                        h = GetDlgItem(hdlg, IDC_CHECKSSI);
   59.27 +                        temp_SSI2001 = SendMessage(h, BM_GETCHECK, 0, 0);
   59.28 +
   59.29                          h = GetDlgItem(hdlg, IDC_COMBOSND);
   59.30                          temp_sound_card_current = settings_list_to_sound[SendMessage(h, CB_GETCURSEL, 0, 0)];
   59.31  
   59.32 -                        if (temp_model != model || gfx != gfxcard || mem != mem_size || fpu != hasfpu || temp_GAMEBLASTER != GAMEBLASTER || temp_GUS != GUS || temp_sound_card_current != sound_card_current)
   59.33 +                        if (temp_model != model || gfx != gfxcard || mem != mem_size || fpu != hasfpu || temp_GAMEBLASTER != GAMEBLASTER || temp_GUS != GUS || temp_SSI2001 != SSI2001 || temp_sound_card_current != sound_card_current)
   59.34                          {
   59.35                                  if (MessageBox(NULL,"This will reset PCem!\nOkay to continue?","PCem",MB_OKCANCEL)==IDOK)
   59.36                                  {
   59.37 @@ -776,6 +782,7 @@
   59.38                                          cpu = temp_cpu;
   59.39                                          GAMEBLASTER = temp_GAMEBLASTER;
   59.40                                          GUS = temp_GUS;
   59.41 +                                        SSI2001 = temp_SSI2001;
   59.42                                          sound_card_current = temp_sound_card_current;
   59.43                                          
   59.44                                          mem_resize();