gosu 0.7.15 → 0.7.16

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1095) hide show
  1. data/Gosu/Audio.hpp +18 -29
  2. data/Gosu/Bitmap.hpp +1 -1
  3. data/Gosu/Color.hpp +16 -1
  4. data/Gosu/Font.hpp +3 -3
  5. data/Gosu/Graphics.hpp +7 -1
  6. data/Gosu/Image.hpp +4 -4
  7. data/Gosu/TextInput.hpp +10 -2
  8. data/Gosu/Version.hpp +2 -2
  9. data/Gosu/Window.hpp +4 -3
  10. data/GosuImpl/Audio/AudioOpenAL.mm +46 -29
  11. data/GosuImpl/AudioFmod.cpp +58 -61
  12. data/GosuImpl/AudioSDL.cpp +47 -32
  13. data/GosuImpl/Graphics/BitmapColorKey.cpp +1 -1
  14. data/GosuImpl/Graphics/BitmapUtils.cpp +2 -2
  15. data/GosuImpl/Graphics/Color.cpp +12 -0
  16. data/GosuImpl/Graphics/Font.cpp +1 -1
  17. data/GosuImpl/Graphics/Text.cpp +2 -2
  18. data/GosuImpl/Graphics/Texture.cpp +3 -0
  19. data/GosuImpl/ObjGosu/ObjGosu.mm +36 -0
  20. data/GosuImpl/ObjGosu/ObjGosuColor.mm +84 -0
  21. data/GosuImpl/ObjGosu/ObjGosuFont.mm +42 -0
  22. data/GosuImpl/ObjGosu/ObjGosuImage.h +7 -0
  23. data/GosuImpl/ObjGosu/ObjGosuImage.mm +65 -0
  24. data/GosuImpl/ObjGosu/ObjGosuSample.mm +32 -0
  25. data/GosuImpl/ObjGosu/ObjGosuSong.mm +43 -0
  26. data/GosuImpl/ObjGosu/ObjGosuWindow.h +32 -0
  27. data/GosuImpl/ObjGosu/ObjGosuWindow.mm +155 -0
  28. data/GosuImpl/RubyGosu.swg +48 -21
  29. data/GosuImpl/RubyGosuStub.mm +6 -0
  30. data/GosuImpl/RubyGosu_wrap.cxx +358 -195
  31. data/GosuImpl/RubyGosu_wrap.h +9 -0
  32. data/GosuImpl/TextInputMac.mm +10 -4
  33. data/GosuImpl/TextInputWin.cpp +4 -2
  34. data/GosuImpl/TextInputX.cpp +16 -14
  35. data/GosuImpl/WindowMac.mm +33 -23
  36. data/GosuImpl/WindowWin.cpp +22 -16
  37. data/GosuImpl/WindowX.cpp +17 -16
  38. data/Rakefile +38 -12
  39. data/dependencies/libogg/AUTHORS +4 -0
  40. data/dependencies/libogg/CHANGES +33 -0
  41. data/dependencies/libogg/COPYING +28 -0
  42. data/dependencies/libogg/Makefile.am +32 -0
  43. data/dependencies/libogg/Makefile.in +713 -0
  44. data/dependencies/libogg/README +103 -0
  45. data/dependencies/libogg/aclocal.m4 +6807 -0
  46. data/dependencies/libogg/compile +142 -0
  47. data/dependencies/libogg/config.guess +1465 -0
  48. data/dependencies/libogg/config.h.in +70 -0
  49. data/dependencies/libogg/config.sub +1569 -0
  50. data/dependencies/libogg/configure +23018 -0
  51. data/dependencies/libogg/configure.in +301 -0
  52. data/dependencies/libogg/debian/changelog +68 -0
  53. data/dependencies/libogg/debian/control +22 -0
  54. data/dependencies/libogg/debian/copyright +37 -0
  55. data/dependencies/libogg/debian/libogg-dev.docs +1 -0
  56. data/dependencies/libogg/debian/libogg-dev.install +8 -0
  57. data/dependencies/libogg/debian/libogg0.README.Debian +6 -0
  58. data/dependencies/libogg/debian/libogg0.install +1 -0
  59. data/dependencies/libogg/debian/rules +154 -0
  60. data/dependencies/libogg/debian/watch +3 -0
  61. data/dependencies/libogg/depcomp +529 -0
  62. data/dependencies/libogg/doc/Makefile.am +11 -0
  63. data/dependencies/libogg/doc/Makefile.in +518 -0
  64. data/dependencies/libogg/doc/framing.html +431 -0
  65. data/dependencies/libogg/doc/index.html +104 -0
  66. data/dependencies/libogg/doc/libogg/Makefile.am +28 -0
  67. data/dependencies/libogg/doc/libogg/Makefile.in +378 -0
  68. data/dependencies/libogg/doc/libogg/bitpacking.html +99 -0
  69. data/dependencies/libogg/doc/libogg/datastructures.html +59 -0
  70. data/dependencies/libogg/doc/libogg/decoding.html +100 -0
  71. data/dependencies/libogg/doc/libogg/encoding.html +64 -0
  72. data/dependencies/libogg/doc/libogg/general.html +105 -0
  73. data/dependencies/libogg/doc/libogg/index.html +39 -0
  74. data/dependencies/libogg/doc/libogg/ogg_packet.html +75 -0
  75. data/dependencies/libogg/doc/libogg/ogg_packet_clear.html +62 -0
  76. data/dependencies/libogg/doc/libogg/ogg_page.html +74 -0
  77. data/dependencies/libogg/doc/libogg/ogg_page_bos.html +65 -0
  78. data/dependencies/libogg/doc/libogg/ogg_page_checksum_set.html +62 -0
  79. data/dependencies/libogg/doc/libogg/ogg_page_continued.html +64 -0
  80. data/dependencies/libogg/doc/libogg/ogg_page_eos.html +65 -0
  81. data/dependencies/libogg/doc/libogg/ogg_page_granulepos.html +65 -0
  82. data/dependencies/libogg/doc/libogg/ogg_page_packets.html +75 -0
  83. data/dependencies/libogg/doc/libogg/ogg_page_pageno.html +63 -0
  84. data/dependencies/libogg/doc/libogg/ogg_page_serialno.html +63 -0
  85. data/dependencies/libogg/doc/libogg/ogg_page_version.html +63 -0
  86. data/dependencies/libogg/doc/libogg/ogg_stream_clear.html +61 -0
  87. data/dependencies/libogg/doc/libogg/ogg_stream_destroy.html +62 -0
  88. data/dependencies/libogg/doc/libogg/ogg_stream_eos.html +62 -0
  89. data/dependencies/libogg/doc/libogg/ogg_stream_flush.html +67 -0
  90. data/dependencies/libogg/doc/libogg/ogg_stream_init.html +66 -0
  91. data/dependencies/libogg/doc/libogg/ogg_stream_packetin.html +65 -0
  92. data/dependencies/libogg/doc/libogg/ogg_stream_packetout.html +71 -0
  93. data/dependencies/libogg/doc/libogg/ogg_stream_packetpeek.html +85 -0
  94. data/dependencies/libogg/doc/libogg/ogg_stream_pagein.html +67 -0
  95. data/dependencies/libogg/doc/libogg/ogg_stream_pageout.html +66 -0
  96. data/dependencies/libogg/doc/libogg/ogg_stream_reset.html +61 -0
  97. data/dependencies/libogg/doc/libogg/ogg_stream_reset_serialno.html +67 -0
  98. data/dependencies/libogg/doc/libogg/ogg_stream_state.html +121 -0
  99. data/dependencies/libogg/doc/libogg/ogg_sync_buffer.html +67 -0
  100. data/dependencies/libogg/doc/libogg/ogg_sync_clear.html +62 -0
  101. data/dependencies/libogg/doc/libogg/ogg_sync_destroy.html +62 -0
  102. data/dependencies/libogg/doc/libogg/ogg_sync_init.html +63 -0
  103. data/dependencies/libogg/doc/libogg/ogg_sync_pageout.html +79 -0
  104. data/dependencies/libogg/doc/libogg/ogg_sync_pageseek.html +68 -0
  105. data/dependencies/libogg/doc/libogg/ogg_sync_reset.html +63 -0
  106. data/dependencies/libogg/doc/libogg/ogg_sync_state.html +67 -0
  107. data/dependencies/libogg/doc/libogg/ogg_sync_wrote.html +73 -0
  108. data/dependencies/libogg/doc/libogg/oggpack_adv.html +64 -0
  109. data/dependencies/libogg/doc/libogg/oggpack_adv1.html +62 -0
  110. data/dependencies/libogg/doc/libogg/oggpack_bits.html +62 -0
  111. data/dependencies/libogg/doc/libogg/oggpack_buffer.html +66 -0
  112. data/dependencies/libogg/doc/libogg/oggpack_bytes.html +62 -0
  113. data/dependencies/libogg/doc/libogg/oggpack_get_buffer.html +62 -0
  114. data/dependencies/libogg/doc/libogg/oggpack_look.html +66 -0
  115. data/dependencies/libogg/doc/libogg/oggpack_look1.html +63 -0
  116. data/dependencies/libogg/doc/libogg/oggpack_read.html +65 -0
  117. data/dependencies/libogg/doc/libogg/oggpack_read1.html +63 -0
  118. data/dependencies/libogg/doc/libogg/oggpack_readinit.html +64 -0
  119. data/dependencies/libogg/doc/libogg/oggpack_reset.html +62 -0
  120. data/dependencies/libogg/doc/libogg/oggpack_write.html +68 -0
  121. data/dependencies/libogg/doc/libogg/oggpack_writealign.html +65 -0
  122. data/dependencies/libogg/doc/libogg/oggpack_writeclear.html +62 -0
  123. data/dependencies/libogg/doc/libogg/oggpack_writecopy.html +69 -0
  124. data/dependencies/libogg/doc/libogg/oggpack_writeinit.html +62 -0
  125. data/dependencies/libogg/doc/libogg/oggpack_writetrunc.html +65 -0
  126. data/dependencies/libogg/doc/libogg/overview.html +44 -0
  127. data/dependencies/libogg/doc/libogg/reference.html +93 -0
  128. data/dependencies/libogg/doc/libogg/style.css +7 -0
  129. data/dependencies/libogg/doc/libogg/vorbis_comment.html +70 -0
  130. data/dependencies/libogg/doc/libogg/vorbis_info.html +80 -0
  131. data/dependencies/libogg/doc/ogg-multiplex.html +445 -0
  132. data/dependencies/libogg/doc/oggstream.html +234 -0
  133. data/dependencies/libogg/doc/rfc3533.txt +843 -0
  134. data/dependencies/libogg/doc/rfc3534.txt +339 -0
  135. data/dependencies/libogg/doc/stream.png +0 -0
  136. data/dependencies/libogg/doc/vorbisword2.png +0 -0
  137. data/dependencies/libogg/doc/white-ogg.png +0 -0
  138. data/dependencies/libogg/doc/white-xifish.png +0 -0
  139. data/dependencies/libogg/include/Makefile.am +3 -0
  140. data/dependencies/libogg/include/Makefile.in +481 -0
  141. data/dependencies/libogg/include/ogg/Makefile.am +6 -0
  142. data/dependencies/libogg/include/ogg/Makefile.in +428 -0
  143. data/dependencies/libogg/include/ogg/config_types.h.in +11 -0
  144. data/dependencies/libogg/include/ogg/ogg.h +202 -0
  145. data/dependencies/libogg/include/ogg/os_types.h +127 -0
  146. data/dependencies/libogg/install-sh +323 -0
  147. data/dependencies/libogg/libogg.spec +106 -0
  148. data/dependencies/libogg/libogg.spec.in +106 -0
  149. data/dependencies/libogg/ltmain.sh +6426 -0
  150. data/dependencies/libogg/macos/compat/strdup.c +21 -0
  151. data/dependencies/libogg/macos/compat/sys/types.h +1 -0
  152. data/dependencies/libogg/macos/libogg.mcp +0 -0
  153. data/dependencies/libogg/macos/libogg.mcp.exp +64 -0
  154. data/dependencies/libogg/macosx/English.lproj/InfoPlist.strings +0 -0
  155. data/dependencies/libogg/macosx/Info.plist +30 -0
  156. data/dependencies/libogg/macosx/Ogg.xcodeproj/project.pbxproj +303 -0
  157. data/dependencies/libogg/macosx/Ogg_Prefix.pch +5 -0
  158. data/dependencies/libogg/missing +357 -0
  159. data/dependencies/libogg/ogg-uninstalled.pc.in +14 -0
  160. data/dependencies/libogg/ogg.m4 +102 -0
  161. data/dependencies/libogg/ogg.pc.in +14 -0
  162. data/dependencies/libogg/src/Makefile.am +28 -0
  163. data/dependencies/libogg/src/Makefile.in +536 -0
  164. data/dependencies/libogg/src/bitwise.c +784 -0
  165. data/dependencies/libogg/src/framing.c +1800 -0
  166. data/dependencies/libogg/win32/Makefile.am +5 -0
  167. data/dependencies/libogg/win32/Makefile.in +327 -0
  168. data/dependencies/libogg/win32/build_ogg_dynamic.bat +18 -0
  169. data/dependencies/libogg/win32/build_ogg_dynamic_debug.bat +18 -0
  170. data/dependencies/libogg/win32/build_ogg_static.bat +18 -0
  171. data/dependencies/libogg/win32/build_ogg_static_debug.bat +18 -0
  172. data/dependencies/libogg/win32/ogg.def +78 -0
  173. data/dependencies/libogg/win32/ogg.dsw +41 -0
  174. data/dependencies/libogg/win32/ogg_dynamic.dsp +128 -0
  175. data/dependencies/libogg/win32/ogg_static.dsp +108 -0
  176. data/dependencies/libpng/ANNOUNCE +61 -0
  177. data/dependencies/libpng/CHANGES +2173 -0
  178. data/dependencies/libpng/INSTALL +199 -0
  179. data/dependencies/libpng/KNOWNBUG +22 -0
  180. data/dependencies/libpng/LICENSE +109 -0
  181. data/dependencies/libpng/README +264 -0
  182. data/dependencies/libpng/TODO +24 -0
  183. data/dependencies/libpng/Y2KINFO +55 -0
  184. data/dependencies/libpng/configure +13 -0
  185. data/dependencies/libpng/contrib/gregbook/COPYING +340 -0
  186. data/dependencies/libpng/contrib/gregbook/LICENSE +50 -0
  187. data/dependencies/libpng/contrib/gregbook/Makefile.mingw32 +130 -0
  188. data/dependencies/libpng/contrib/gregbook/Makefile.sgi +104 -0
  189. data/dependencies/libpng/contrib/gregbook/Makefile.unx +132 -0
  190. data/dependencies/libpng/contrib/gregbook/Makefile.w32 +113 -0
  191. data/dependencies/libpng/contrib/gregbook/README +186 -0
  192. data/dependencies/libpng/contrib/gregbook/makevms.com +132 -0
  193. data/dependencies/libpng/contrib/gregbook/readpng.c +304 -0
  194. data/dependencies/libpng/contrib/gregbook/readpng.h +88 -0
  195. data/dependencies/libpng/contrib/gregbook/readpng2.c +645 -0
  196. data/dependencies/libpng/contrib/gregbook/readpng2.h +121 -0
  197. data/dependencies/libpng/contrib/gregbook/readppm.c +179 -0
  198. data/dependencies/libpng/contrib/gregbook/rpng-win.c +684 -0
  199. data/dependencies/libpng/contrib/gregbook/rpng-x.c +904 -0
  200. data/dependencies/libpng/contrib/gregbook/rpng2-win.c +1225 -0
  201. data/dependencies/libpng/contrib/gregbook/rpng2-x.c +2127 -0
  202. data/dependencies/libpng/contrib/gregbook/toucan.png +0 -0
  203. data/dependencies/libpng/contrib/gregbook/wpng.c +853 -0
  204. data/dependencies/libpng/contrib/gregbook/writepng.c +392 -0
  205. data/dependencies/libpng/contrib/gregbook/writepng.h +133 -0
  206. data/dependencies/libpng/contrib/pngminim/decoder/README +6 -0
  207. data/dependencies/libpng/contrib/pngminim/decoder/gather.sh +8 -0
  208. data/dependencies/libpng/contrib/pngminim/decoder/makefile.std +44 -0
  209. data/dependencies/libpng/contrib/pngminim/decoder/pngusr.h +67 -0
  210. data/dependencies/libpng/contrib/pngminim/encoder/README +6 -0
  211. data/dependencies/libpng/contrib/pngminim/encoder/dummy_inflate.c +27 -0
  212. data/dependencies/libpng/contrib/pngminim/encoder/gather.sh +9 -0
  213. data/dependencies/libpng/contrib/pngminim/encoder/makefile.std +43 -0
  214. data/dependencies/libpng/contrib/pngminim/encoder/pngusr.h +66 -0
  215. data/dependencies/libpng/contrib/pngminus/README +153 -0
  216. data/dependencies/libpng/contrib/pngminus/makefile.std +65 -0
  217. data/dependencies/libpng/contrib/pngminus/makefile.tc3 +38 -0
  218. data/dependencies/libpng/contrib/pngminus/makevms.com +92 -0
  219. data/dependencies/libpng/contrib/pngminus/png2pnm.bat +41 -0
  220. data/dependencies/libpng/contrib/pngminus/png2pnm.c +430 -0
  221. data/dependencies/libpng/contrib/pngminus/png2pnm.sh +42 -0
  222. data/dependencies/libpng/contrib/pngminus/pngminus.bat +4 -0
  223. data/dependencies/libpng/contrib/pngminus/pngminus.sh +5 -0
  224. data/dependencies/libpng/contrib/pngminus/pnm2png.bat +41 -0
  225. data/dependencies/libpng/contrib/pngminus/pnm2png.c +533 -0
  226. data/dependencies/libpng/contrib/pngminus/pnm2png.sh +42 -0
  227. data/dependencies/libpng/contrib/pngsuite/basn0g01.png +0 -0
  228. data/dependencies/libpng/contrib/pngsuite/basn0g02.png +0 -0
  229. data/dependencies/libpng/contrib/pngsuite/basn0g04.png +0 -0
  230. data/dependencies/libpng/contrib/pngsuite/basn0g08.png +0 -0
  231. data/dependencies/libpng/contrib/pngsuite/basn0g16.png +0 -0
  232. data/dependencies/libpng/contrib/pngsuite/basn2c08.png +0 -0
  233. data/dependencies/libpng/contrib/pngsuite/basn2c16.png +0 -0
  234. data/dependencies/libpng/contrib/pngsuite/basn3p01.png +0 -0
  235. data/dependencies/libpng/contrib/pngsuite/basn3p02.png +0 -0
  236. data/dependencies/libpng/contrib/pngsuite/basn3p04.png +0 -0
  237. data/dependencies/libpng/contrib/pngsuite/basn3p08.png +0 -0
  238. data/dependencies/libpng/contrib/pngsuite/basn4a08.png +0 -0
  239. data/dependencies/libpng/contrib/pngsuite/basn4a16.png +0 -0
  240. data/dependencies/libpng/contrib/pngsuite/basn6a08.png +0 -0
  241. data/dependencies/libpng/contrib/pngsuite/basn6a16.png +0 -0
  242. data/dependencies/libpng/contrib/visupng/PngFile.c +439 -0
  243. data/dependencies/libpng/contrib/visupng/PngFile.h +27 -0
  244. data/dependencies/libpng/contrib/visupng/README.txt +58 -0
  245. data/dependencies/libpng/contrib/visupng/VisualPng.c +961 -0
  246. data/dependencies/libpng/contrib/visupng/VisualPng.dsp +147 -0
  247. data/dependencies/libpng/contrib/visupng/VisualPng.dsw +29 -0
  248. data/dependencies/libpng/contrib/visupng/VisualPng.ico +0 -0
  249. data/dependencies/libpng/contrib/visupng/VisualPng.png +0 -0
  250. data/dependencies/libpng/contrib/visupng/VisualPng.rc +152 -0
  251. data/dependencies/libpng/contrib/visupng/cexcept.h +243 -0
  252. data/dependencies/libpng/contrib/visupng/resource.h +23 -0
  253. data/dependencies/libpng/example.c +814 -0
  254. data/dependencies/libpng/libpng-1.2.29.txt +2906 -0
  255. data/dependencies/libpng/libpng.3 +3680 -0
  256. data/dependencies/libpng/libpngpf.3 +274 -0
  257. data/dependencies/libpng/png.5 +74 -0
  258. data/dependencies/libpng/png.c +798 -0
  259. data/dependencies/libpng/png.h +3569 -0
  260. data/dependencies/libpng/pngbar.jpg +0 -0
  261. data/dependencies/libpng/pngbar.png +0 -0
  262. data/dependencies/libpng/pngconf.h +1481 -0
  263. data/dependencies/libpng/pngerror.c +343 -0
  264. data/dependencies/libpng/pnggccrd.c +103 -0
  265. data/dependencies/libpng/pngget.c +901 -0
  266. data/dependencies/libpng/pngmem.c +608 -0
  267. data/dependencies/libpng/pngnow.png +0 -0
  268. data/dependencies/libpng/pngpread.c +1598 -0
  269. data/dependencies/libpng/pngread.c +1479 -0
  270. data/dependencies/libpng/pngrio.c +167 -0
  271. data/dependencies/libpng/pngrtran.c +4292 -0
  272. data/dependencies/libpng/pngrutil.c +3183 -0
  273. data/dependencies/libpng/pngset.c +1268 -0
  274. data/dependencies/libpng/pngtest.c +1563 -0
  275. data/dependencies/libpng/pngtest.png +0 -0
  276. data/dependencies/libpng/pngtrans.c +662 -0
  277. data/dependencies/libpng/pngvcrd.c +1 -0
  278. data/dependencies/libpng/pngwio.c +234 -0
  279. data/dependencies/libpng/pngwrite.c +1532 -0
  280. data/dependencies/libpng/pngwtran.c +572 -0
  281. data/dependencies/libpng/pngwutil.c +2802 -0
  282. data/dependencies/libpng/projects/beos/x86-shared.proj +0 -0
  283. data/dependencies/libpng/projects/beos/x86-shared.txt +22 -0
  284. data/dependencies/libpng/projects/beos/x86-static.proj +0 -0
  285. data/dependencies/libpng/projects/beos/x86-static.txt +22 -0
  286. data/dependencies/libpng/projects/cbuilder5/libpng.bpf +22 -0
  287. data/dependencies/libpng/projects/cbuilder5/libpng.bpg +25 -0
  288. data/dependencies/libpng/projects/cbuilder5/libpng.bpr +157 -0
  289. data/dependencies/libpng/projects/cbuilder5/libpng.cpp +29 -0
  290. data/dependencies/libpng/projects/cbuilder5/libpng.readme.txt +25 -0
  291. data/dependencies/libpng/projects/cbuilder5/libpngstat.bpf +22 -0
  292. data/dependencies/libpng/projects/cbuilder5/libpngstat.bpr +109 -0
  293. data/dependencies/libpng/projects/cbuilder5/zlib.readme.txt +14 -0
  294. data/dependencies/libpng/projects/netware.txt +6 -0
  295. data/dependencies/libpng/projects/visualc6/README.txt +57 -0
  296. data/dependencies/libpng/projects/visualc6/libpng.dsp +472 -0
  297. data/dependencies/libpng/projects/visualc6/libpng.dsw +59 -0
  298. data/dependencies/libpng/projects/visualc6/pngtest.dsp +314 -0
  299. data/dependencies/libpng/projects/visualc71/PRJ0041.mak +21 -0
  300. data/dependencies/libpng/projects/visualc71/README.txt +57 -0
  301. data/dependencies/libpng/projects/visualc71/README_zlib.txt +44 -0
  302. data/dependencies/libpng/projects/visualc71/libpng.sln +88 -0
  303. data/dependencies/libpng/projects/visualc71/libpng.vcproj +702 -0
  304. data/dependencies/libpng/projects/visualc71/pngtest.vcproj +459 -0
  305. data/dependencies/libpng/projects/visualc71/zlib.vcproj +670 -0
  306. data/dependencies/libpng/projects/wince.txt +6 -0
  307. data/dependencies/libpng/scripts/CMakeLists.txt +210 -0
  308. data/dependencies/libpng/scripts/SCOPTIONS.ppc +7 -0
  309. data/dependencies/libpng/scripts/descrip.mms +52 -0
  310. data/dependencies/libpng/scripts/libpng-config-body.in +96 -0
  311. data/dependencies/libpng/scripts/libpng-config-head.in +21 -0
  312. data/dependencies/libpng/scripts/libpng-config.in +124 -0
  313. data/dependencies/libpng/scripts/libpng.icc +44 -0
  314. data/dependencies/libpng/scripts/libpng.pc-configure.in +10 -0
  315. data/dependencies/libpng/scripts/libpng.pc.in +10 -0
  316. data/dependencies/libpng/scripts/makefile.32sunu +254 -0
  317. data/dependencies/libpng/scripts/makefile.64sunu +254 -0
  318. data/dependencies/libpng/scripts/makefile.acorn +51 -0
  319. data/dependencies/libpng/scripts/makefile.aix +113 -0
  320. data/dependencies/libpng/scripts/makefile.amiga +48 -0
  321. data/dependencies/libpng/scripts/makefile.atari +51 -0
  322. data/dependencies/libpng/scripts/makefile.bc32 +152 -0
  323. data/dependencies/libpng/scripts/makefile.beos +226 -0
  324. data/dependencies/libpng/scripts/makefile.bor +162 -0
  325. data/dependencies/libpng/scripts/makefile.cygwin +299 -0
  326. data/dependencies/libpng/scripts/makefile.darwin +234 -0
  327. data/dependencies/libpng/scripts/makefile.dec +214 -0
  328. data/dependencies/libpng/scripts/makefile.dj2 +55 -0
  329. data/dependencies/libpng/scripts/makefile.elf +275 -0
  330. data/dependencies/libpng/scripts/makefile.freebsd +48 -0
  331. data/dependencies/libpng/scripts/makefile.gcc +79 -0
  332. data/dependencies/libpng/scripts/makefile.gcmmx +271 -0
  333. data/dependencies/libpng/scripts/makefile.hp64 +235 -0
  334. data/dependencies/libpng/scripts/makefile.hpgcc +245 -0
  335. data/dependencies/libpng/scripts/makefile.hpux +232 -0
  336. data/dependencies/libpng/scripts/makefile.ibmc +71 -0
  337. data/dependencies/libpng/scripts/makefile.intel +102 -0
  338. data/dependencies/libpng/scripts/makefile.knr +99 -0
  339. data/dependencies/libpng/scripts/makefile.linux +249 -0
  340. data/dependencies/libpng/scripts/makefile.mingw +289 -0
  341. data/dependencies/libpng/scripts/makefile.mips +83 -0
  342. data/dependencies/libpng/scripts/makefile.msc +86 -0
  343. data/dependencies/libpng/scripts/makefile.ne12bsd +45 -0
  344. data/dependencies/libpng/scripts/makefile.netbsd +45 -0
  345. data/dependencies/libpng/scripts/makefile.nommx +252 -0
  346. data/dependencies/libpng/scripts/makefile.openbsd +73 -0
  347. data/dependencies/libpng/scripts/makefile.os2 +69 -0
  348. data/dependencies/libpng/scripts/makefile.sco +229 -0
  349. data/dependencies/libpng/scripts/makefile.sggcc +242 -0
  350. data/dependencies/libpng/scripts/makefile.sgi +245 -0
  351. data/dependencies/libpng/scripts/makefile.so9 +251 -0
  352. data/dependencies/libpng/scripts/makefile.solaris +249 -0
  353. data/dependencies/libpng/scripts/makefile.solaris-x86 +248 -0
  354. data/dependencies/libpng/scripts/makefile.std +92 -0
  355. data/dependencies/libpng/scripts/makefile.sunos +97 -0
  356. data/dependencies/libpng/scripts/makefile.tc3 +89 -0
  357. data/dependencies/libpng/scripts/makefile.vcawin32 +99 -0
  358. data/dependencies/libpng/scripts/makefile.vcwin32 +99 -0
  359. data/dependencies/libpng/scripts/makefile.watcom +109 -0
  360. data/dependencies/libpng/scripts/makevms.com +144 -0
  361. data/dependencies/libpng/scripts/pngos2.def +257 -0
  362. data/dependencies/libpng/scripts/pngw32.def +238 -0
  363. data/dependencies/libpng/scripts/pngw32.rc +112 -0
  364. data/dependencies/libpng/scripts/smakefile.ppc +30 -0
  365. data/dependencies/libvorbis/AUTHORS +3 -0
  366. data/dependencies/libvorbis/CHANGES +48 -0
  367. data/dependencies/libvorbis/COPYING +28 -0
  368. data/dependencies/libvorbis/Makefile.am +41 -0
  369. data/dependencies/libvorbis/Makefile.in +759 -0
  370. data/dependencies/libvorbis/README +132 -0
  371. data/dependencies/libvorbis/acinclude.m4 +161 -0
  372. data/dependencies/libvorbis/aclocal.m4 +7273 -0
  373. data/dependencies/libvorbis/autogen.sh +127 -0
  374. data/dependencies/libvorbis/config.guess +1500 -0
  375. data/dependencies/libvorbis/config.h.in +78 -0
  376. data/dependencies/libvorbis/config.sub +1616 -0
  377. data/dependencies/libvorbis/configure +22114 -0
  378. data/dependencies/libvorbis/configure.in +246 -0
  379. data/dependencies/libvorbis/depcomp +584 -0
  380. data/dependencies/libvorbis/doc/Makefile +665 -0
  381. data/dependencies/libvorbis/doc/Makefile.am +137 -0
  382. data/dependencies/libvorbis/doc/Makefile.in +665 -0
  383. data/dependencies/libvorbis/doc/Vorbis_I_spec.html +2292 -0
  384. data/dependencies/libvorbis/doc/Vorbis_I_spec.pdf +0 -0
  385. data/dependencies/libvorbis/doc/components.png +0 -0
  386. data/dependencies/libvorbis/doc/draft-ietf-avt-rtp-vorbis-06.txt +1401 -0
  387. data/dependencies/libvorbis/doc/draft-ietf-avt-rtp-vorbis-06.xml +1388 -0
  388. data/dependencies/libvorbis/doc/eightphase.png +0 -0
  389. data/dependencies/libvorbis/doc/evenlsp.png +0 -0
  390. data/dependencies/libvorbis/doc/fish_xiph_org.png +0 -0
  391. data/dependencies/libvorbis/doc/floor1-1.png +0 -0
  392. data/dependencies/libvorbis/doc/floor1-2.png +0 -0
  393. data/dependencies/libvorbis/doc/floor1-3.png +0 -0
  394. data/dependencies/libvorbis/doc/floor1-4.png +0 -0
  395. data/dependencies/libvorbis/doc/floor1_inverse_dB_table.html +154 -0
  396. data/dependencies/libvorbis/doc/floorval.png +0 -0
  397. data/dependencies/libvorbis/doc/fourphase.png +0 -0
  398. data/dependencies/libvorbis/doc/framing.html +431 -0
  399. data/dependencies/libvorbis/doc/helper.html +239 -0
  400. data/dependencies/libvorbis/doc/hufftree-under.png +0 -0
  401. data/dependencies/libvorbis/doc/hufftree.png +0 -0
  402. data/dependencies/libvorbis/doc/index.html +114 -0
  403. data/dependencies/libvorbis/doc/lspmap.png +0 -0
  404. data/dependencies/libvorbis/doc/oddlsp.png +0 -0
  405. data/dependencies/libvorbis/doc/oggstream.html +234 -0
  406. data/dependencies/libvorbis/doc/programming.html +554 -0
  407. data/dependencies/libvorbis/doc/residue-pack.png +0 -0
  408. data/dependencies/libvorbis/doc/residue2.png +0 -0
  409. data/dependencies/libvorbis/doc/squarepolar.png +0 -0
  410. data/dependencies/libvorbis/doc/stereo.html +418 -0
  411. data/dependencies/libvorbis/doc/stream.png +0 -0
  412. data/dependencies/libvorbis/doc/v-comment.html +285 -0
  413. data/dependencies/libvorbis/doc/vorbis-clip.txt +139 -0
  414. data/dependencies/libvorbis/doc/vorbis-errors.txt +103 -0
  415. data/dependencies/libvorbis/doc/vorbis-fidelity.html +180 -0
  416. data/dependencies/libvorbis/doc/vorbis.html +234 -0
  417. data/dependencies/libvorbis/doc/vorbisenc/Makefile +382 -0
  418. data/dependencies/libvorbis/doc/vorbisenc/Makefile.am +9 -0
  419. data/dependencies/libvorbis/doc/vorbisenc/Makefile.in +382 -0
  420. data/dependencies/libvorbis/doc/vorbisenc/changes.html +104 -0
  421. data/dependencies/libvorbis/doc/vorbisenc/examples.html +133 -0
  422. data/dependencies/libvorbis/doc/vorbisenc/index.html +40 -0
  423. data/dependencies/libvorbis/doc/vorbisenc/ov_ectl_ratemanage2_arg.html +92 -0
  424. data/dependencies/libvorbis/doc/vorbisenc/ov_ectl_ratemanage_arg.html +92 -0
  425. data/dependencies/libvorbis/doc/vorbisenc/overview.html +382 -0
  426. data/dependencies/libvorbis/doc/vorbisenc/reference.html +48 -0
  427. data/dependencies/libvorbis/doc/vorbisenc/style.css +7 -0
  428. data/dependencies/libvorbis/doc/vorbisenc/vorbis_encode_ctl.html +169 -0
  429. data/dependencies/libvorbis/doc/vorbisenc/vorbis_encode_init.html +88 -0
  430. data/dependencies/libvorbis/doc/vorbisenc/vorbis_encode_init_vbr.html +81 -0
  431. data/dependencies/libvorbis/doc/vorbisenc/vorbis_encode_setup_init.html +88 -0
  432. data/dependencies/libvorbis/doc/vorbisenc/vorbis_encode_setup_managed.html +102 -0
  433. data/dependencies/libvorbis/doc/vorbisenc/vorbis_encode_setup_vbr.html +90 -0
  434. data/dependencies/libvorbis/doc/vorbisenc/vorbis_info.html +81 -0
  435. data/dependencies/libvorbis/doc/vorbisfile/Makefile +396 -0
  436. data/dependencies/libvorbis/doc/vorbisfile/Makefile.am +23 -0
  437. data/dependencies/libvorbis/doc/vorbisfile/Makefile.in +396 -0
  438. data/dependencies/libvorbis/doc/vorbisfile/OggVorbis_File.html +137 -0
  439. data/dependencies/libvorbis/doc/vorbisfile/callbacks.html +121 -0
  440. data/dependencies/libvorbis/doc/vorbisfile/chaining_example_c.html +90 -0
  441. data/dependencies/libvorbis/doc/vorbisfile/chainingexample.html +175 -0
  442. data/dependencies/libvorbis/doc/vorbisfile/crosslap.html +121 -0
  443. data/dependencies/libvorbis/doc/vorbisfile/datastructures.html +61 -0
  444. data/dependencies/libvorbis/doc/vorbisfile/decoding.html +87 -0
  445. data/dependencies/libvorbis/doc/vorbisfile/example.html +208 -0
  446. data/dependencies/libvorbis/doc/vorbisfile/exampleindex.html +39 -0
  447. data/dependencies/libvorbis/doc/vorbisfile/fileinfo.html +95 -0
  448. data/dependencies/libvorbis/doc/vorbisfile/index.html +49 -0
  449. data/dependencies/libvorbis/doc/vorbisfile/initialization.html +118 -0
  450. data/dependencies/libvorbis/doc/vorbisfile/ov_bitrate.html +72 -0
  451. data/dependencies/libvorbis/doc/vorbisfile/ov_bitrate_instant.html +65 -0
  452. data/dependencies/libvorbis/doc/vorbisfile/ov_callbacks.html +117 -0
  453. data/dependencies/libvorbis/doc/vorbisfile/ov_clear.html +64 -0
  454. data/dependencies/libvorbis/doc/vorbisfile/ov_comment.html +66 -0
  455. data/dependencies/libvorbis/doc/vorbisfile/ov_crosslap.html +100 -0
  456. data/dependencies/libvorbis/doc/vorbisfile/ov_fopen.html +124 -0
  457. data/dependencies/libvorbis/doc/vorbisfile/ov_info.html +64 -0
  458. data/dependencies/libvorbis/doc/vorbisfile/ov_open.html +183 -0
  459. data/dependencies/libvorbis/doc/vorbisfile/ov_open_callbacks.html +147 -0
  460. data/dependencies/libvorbis/doc/vorbisfile/ov_pcm_seek.html +83 -0
  461. data/dependencies/libvorbis/doc/vorbisfile/ov_pcm_seek_lap.html +103 -0
  462. data/dependencies/libvorbis/doc/vorbisfile/ov_pcm_seek_page.html +84 -0
  463. data/dependencies/libvorbis/doc/vorbisfile/ov_pcm_seek_page_lap.html +112 -0
  464. data/dependencies/libvorbis/doc/vorbisfile/ov_pcm_tell.html +63 -0
  465. data/dependencies/libvorbis/doc/vorbisfile/ov_pcm_total.html +67 -0
  466. data/dependencies/libvorbis/doc/vorbisfile/ov_raw_seek.html +83 -0
  467. data/dependencies/libvorbis/doc/vorbisfile/ov_raw_seek_lap.html +110 -0
  468. data/dependencies/libvorbis/doc/vorbisfile/ov_raw_tell.html +65 -0
  469. data/dependencies/libvorbis/doc/vorbisfile/ov_raw_total.html +68 -0
  470. data/dependencies/libvorbis/doc/vorbisfile/ov_read.html +123 -0
  471. data/dependencies/libvorbis/doc/vorbisfile/ov_read_float.html +101 -0
  472. data/dependencies/libvorbis/doc/vorbisfile/ov_seekable.html +63 -0
  473. data/dependencies/libvorbis/doc/vorbisfile/ov_serialnumber.html +67 -0
  474. data/dependencies/libvorbis/doc/vorbisfile/ov_streams.html +64 -0
  475. data/dependencies/libvorbis/doc/vorbisfile/ov_test.html +101 -0
  476. data/dependencies/libvorbis/doc/vorbisfile/ov_test_callbacks.html +111 -0
  477. data/dependencies/libvorbis/doc/vorbisfile/ov_test_open.html +82 -0
  478. data/dependencies/libvorbis/doc/vorbisfile/ov_time_seek.html +82 -0
  479. data/dependencies/libvorbis/doc/vorbisfile/ov_time_seek_lap.html +105 -0
  480. data/dependencies/libvorbis/doc/vorbisfile/ov_time_seek_page.html +83 -0
  481. data/dependencies/libvorbis/doc/vorbisfile/ov_time_seek_page_lap.html +112 -0
  482. data/dependencies/libvorbis/doc/vorbisfile/ov_time_tell.html +63 -0
  483. data/dependencies/libvorbis/doc/vorbisfile/ov_time_total.html +67 -0
  484. data/dependencies/libvorbis/doc/vorbisfile/overview.html +61 -0
  485. data/dependencies/libvorbis/doc/vorbisfile/reference.html +83 -0
  486. data/dependencies/libvorbis/doc/vorbisfile/return.html +77 -0
  487. data/dependencies/libvorbis/doc/vorbisfile/seekexample.html +152 -0
  488. data/dependencies/libvorbis/doc/vorbisfile/seeking.html +107 -0
  489. data/dependencies/libvorbis/doc/vorbisfile/seeking_example_c.html +86 -0
  490. data/dependencies/libvorbis/doc/vorbisfile/seeking_test_c.html +86 -0
  491. data/dependencies/libvorbis/doc/vorbisfile/seekingexample.html +203 -0
  492. data/dependencies/libvorbis/doc/vorbisfile/style.css +7 -0
  493. data/dependencies/libvorbis/doc/vorbisfile/threads.html +50 -0
  494. data/dependencies/libvorbis/doc/vorbisfile/vorbis_comment.html +70 -0
  495. data/dependencies/libvorbis/doc/vorbisfile/vorbis_info.html +80 -0
  496. data/dependencies/libvorbis/doc/vorbisfile/vorbisfile_example_c.html +106 -0
  497. data/dependencies/libvorbis/doc/vorbisword2.png +0 -0
  498. data/dependencies/libvorbis/doc/wait.png +0 -0
  499. data/dependencies/libvorbis/doc/white-ogg.png +0 -0
  500. data/dependencies/libvorbis/doc/white-xifish.png +0 -0
  501. data/dependencies/libvorbis/doc/window1.png +0 -0
  502. data/dependencies/libvorbis/doc/window2.png +0 -0
  503. data/dependencies/libvorbis/doc/xifish.pdf +0 -0
  504. data/dependencies/libvorbis/doc/xml/01-introduction.xml +665 -0
  505. data/dependencies/libvorbis/doc/xml/02-bitpacking.xml +280 -0
  506. data/dependencies/libvorbis/doc/xml/03-codebook.xml +458 -0
  507. data/dependencies/libvorbis/doc/xml/04-codec.xml +711 -0
  508. data/dependencies/libvorbis/doc/xml/05-comment.xml +284 -0
  509. data/dependencies/libvorbis/doc/xml/06-floor0.xml +257 -0
  510. data/dependencies/libvorbis/doc/xml/07-floor1.xml +450 -0
  511. data/dependencies/libvorbis/doc/xml/08-residue.xml +492 -0
  512. data/dependencies/libvorbis/doc/xml/09-helper.xml +211 -0
  513. data/dependencies/libvorbis/doc/xml/10-tables.xml +94 -0
  514. data/dependencies/libvorbis/doc/xml/TODO +28 -0
  515. data/dependencies/libvorbis/doc/xml/Vorbis_I_spec.xml +30 -0
  516. data/dependencies/libvorbis/doc/xml/a1-encapsulation_ogg.xml +201 -0
  517. data/dependencies/libvorbis/doc/xml/a2-encapsulation_rtp.xml +31 -0
  518. data/dependencies/libvorbis/doc/xml/footer.xml +60 -0
  519. data/dependencies/libvorbis/doc/xml/spec-common.xsl +24 -0
  520. data/dependencies/libvorbis/doc/xml/spec-fo.xsl +16 -0
  521. data/dependencies/libvorbis/doc/xml/spec-html.xsl +5 -0
  522. data/dependencies/libvorbis/examples/Makefile +515 -0
  523. data/dependencies/libvorbis/examples/Makefile.am +28 -0
  524. data/dependencies/libvorbis/examples/Makefile.in +515 -0
  525. data/dependencies/libvorbis/examples/chaining_example.c +72 -0
  526. data/dependencies/libvorbis/examples/decoder_example.c +307 -0
  527. data/dependencies/libvorbis/examples/encoder_example.c +253 -0
  528. data/dependencies/libvorbis/examples/frameview.pl +630 -0
  529. data/dependencies/libvorbis/examples/seeking_example.c +256 -0
  530. data/dependencies/libvorbis/examples/vorbisfile_example.c +87 -0
  531. data/dependencies/libvorbis/include/Makefile.am +3 -0
  532. data/dependencies/libvorbis/include/Makefile.in +506 -0
  533. data/dependencies/libvorbis/include/vorbis/Makefile.am +7 -0
  534. data/dependencies/libvorbis/include/vorbis/Makefile.in +426 -0
  535. data/dependencies/libvorbis/include/vorbis/codec.h +241 -0
  536. data/dependencies/libvorbis/include/vorbis/vorbisenc.h +112 -0
  537. data/dependencies/libvorbis/include/vorbis/vorbisfile.h +183 -0
  538. data/dependencies/libvorbis/install-sh +507 -0
  539. data/dependencies/libvorbis/lib/Makefile.am +44 -0
  540. data/dependencies/libvorbis/lib/Makefile.in +706 -0
  541. data/dependencies/libvorbis/lib/analysis.c +121 -0
  542. data/dependencies/libvorbis/lib/backends.h +146 -0
  543. data/dependencies/libvorbis/lib/barkmel.c +64 -0
  544. data/dependencies/libvorbis/lib/bitrate.c +253 -0
  545. data/dependencies/libvorbis/lib/bitrate.h +59 -0
  546. data/dependencies/libvorbis/lib/block.c +993 -0
  547. data/dependencies/libvorbis/lib/books/Makefile.am +3 -0
  548. data/dependencies/libvorbis/lib/books/Makefile.in +506 -0
  549. data/dependencies/libvorbis/lib/books/coupled/Makefile.am +3 -0
  550. data/dependencies/libvorbis/lib/books/coupled/Makefile.in +347 -0
  551. data/dependencies/libvorbis/lib/books/coupled/res_books_stereo.h +20681 -0
  552. data/dependencies/libvorbis/lib/books/floor/Makefile.am +3 -0
  553. data/dependencies/libvorbis/lib/books/floor/Makefile.in +347 -0
  554. data/dependencies/libvorbis/lib/books/floor/floor_books.h +1838 -0
  555. data/dependencies/libvorbis/lib/books/uncoupled/Makefile.am +3 -0
  556. data/dependencies/libvorbis/lib/books/uncoupled/Makefile.in +347 -0
  557. data/dependencies/libvorbis/lib/books/uncoupled/res_books_uncoupled.h +11517 -0
  558. data/dependencies/libvorbis/lib/codebook.c +634 -0
  559. data/dependencies/libvorbis/lib/codebook.h +160 -0
  560. data/dependencies/libvorbis/lib/codec_internal.h +137 -0
  561. data/dependencies/libvorbis/lib/envelope.c +382 -0
  562. data/dependencies/libvorbis/lib/envelope.h +81 -0
  563. data/dependencies/libvorbis/lib/floor0.c +223 -0
  564. data/dependencies/libvorbis/lib/floor1.c +1094 -0
  565. data/dependencies/libvorbis/lib/highlevel.h +57 -0
  566. data/dependencies/libvorbis/lib/info.c +644 -0
  567. data/dependencies/libvorbis/lib/lookup.c +94 -0
  568. data/dependencies/libvorbis/lib/lookup.h +32 -0
  569. data/dependencies/libvorbis/lib/lookup_data.h +189 -0
  570. data/dependencies/libvorbis/lib/lookups.pl +142 -0
  571. data/dependencies/libvorbis/lib/lpc.c +149 -0
  572. data/dependencies/libvorbis/lib/lpc.h +29 -0
  573. data/dependencies/libvorbis/lib/lsp.c +455 -0
  574. data/dependencies/libvorbis/lib/lsp.h +28 -0
  575. data/dependencies/libvorbis/lib/mapping0.c +844 -0
  576. data/dependencies/libvorbis/lib/masking.h +785 -0
  577. data/dependencies/libvorbis/lib/mdct.c +564 -0
  578. data/dependencies/libvorbis/lib/mdct.h +83 -0
  579. data/dependencies/libvorbis/lib/misc.h +52 -0
  580. data/dependencies/libvorbis/lib/modes/Makefile.am +6 -0
  581. data/dependencies/libvorbis/lib/modes/Makefile.in +351 -0
  582. data/dependencies/libvorbis/lib/modes/floor_all.h +248 -0
  583. data/dependencies/libvorbis/lib/modes/psych_11.h +51 -0
  584. data/dependencies/libvorbis/lib/modes/psych_16.h +136 -0
  585. data/dependencies/libvorbis/lib/modes/psych_44.h +666 -0
  586. data/dependencies/libvorbis/lib/modes/psych_8.h +102 -0
  587. data/dependencies/libvorbis/lib/modes/residue_16.h +163 -0
  588. data/dependencies/libvorbis/lib/modes/residue_44.h +294 -0
  589. data/dependencies/libvorbis/lib/modes/residue_44u.h +318 -0
  590. data/dependencies/libvorbis/lib/modes/residue_8.h +109 -0
  591. data/dependencies/libvorbis/lib/modes/setup_11.h +141 -0
  592. data/dependencies/libvorbis/lib/modes/setup_16.h +149 -0
  593. data/dependencies/libvorbis/lib/modes/setup_22.h +128 -0
  594. data/dependencies/libvorbis/lib/modes/setup_32.h +132 -0
  595. data/dependencies/libvorbis/lib/modes/setup_44.h +107 -0
  596. data/dependencies/libvorbis/lib/modes/setup_44u.h +74 -0
  597. data/dependencies/libvorbis/lib/modes/setup_8.h +146 -0
  598. data/dependencies/libvorbis/lib/modes/setup_X.h +226 -0
  599. data/dependencies/libvorbis/lib/os.h +156 -0
  600. data/dependencies/libvorbis/lib/psy.c +1227 -0
  601. data/dependencies/libvorbis/lib/psy.h +186 -0
  602. data/dependencies/libvorbis/lib/psytune.c +524 -0
  603. data/dependencies/libvorbis/lib/registry.c +46 -0
  604. data/dependencies/libvorbis/lib/registry.h +32 -0
  605. data/dependencies/libvorbis/lib/res0.c +919 -0
  606. data/dependencies/libvorbis/lib/scales.h +86 -0
  607. data/dependencies/libvorbis/lib/sharedbook.c +735 -0
  608. data/dependencies/libvorbis/lib/smallft.c +1255 -0
  609. data/dependencies/libvorbis/lib/smallft.h +34 -0
  610. data/dependencies/libvorbis/lib/synthesis.c +170 -0
  611. data/dependencies/libvorbis/lib/tone.c +54 -0
  612. data/dependencies/libvorbis/lib/vorbisenc.c +1184 -0
  613. data/dependencies/libvorbis/lib/vorbisfile.c +2194 -0
  614. data/dependencies/libvorbis/lib/window.c +2136 -0
  615. data/dependencies/libvorbis/lib/window.h +26 -0
  616. data/dependencies/libvorbis/libvorbis.spec +118 -0
  617. data/dependencies/libvorbis/libvorbis.spec.in +118 -0
  618. data/dependencies/libvorbis/ltmain.sh +6871 -0
  619. data/dependencies/libvorbis/macos/compat/strdup.c +21 -0
  620. data/dependencies/libvorbis/macos/compat/sys/types.h +1 -0
  621. data/dependencies/libvorbis/macos/decoder_example.mcp +0 -0
  622. data/dependencies/libvorbis/macos/encoder_example.mcp +0 -0
  623. data/dependencies/libvorbis/macos/libvorbis.mcp +0 -0
  624. data/dependencies/libvorbis/macos/libvorbis.mcp.exp +45 -0
  625. data/dependencies/libvorbis/macos/libvorbisenc.mcp +0 -0
  626. data/dependencies/libvorbis/macos/libvorbisenc.mcp.exp +8 -0
  627. data/dependencies/libvorbis/macos/libvorbisfile.mcp +0 -0
  628. data/dependencies/libvorbis/macos/libvorbisfile.mcp.exp +45 -0
  629. data/dependencies/libvorbis/macos/vorbis.mcp +0 -0
  630. data/dependencies/libvorbis/macosx/English.lproj/InfoPlist.strings +0 -0
  631. data/dependencies/libvorbis/macosx/Info.plist +30 -0
  632. data/dependencies/libvorbis/macosx/Vorbis.xcodeproj/project.pbxproj +893 -0
  633. data/dependencies/libvorbis/missing +367 -0
  634. data/dependencies/libvorbis/symbian/bld.inf +35 -0
  635. data/dependencies/libvorbis/symbian/config.h +54 -0
  636. data/dependencies/libvorbis/symbian/vorbis.mmp +43 -0
  637. data/dependencies/libvorbis/todo.txt +22 -0
  638. data/dependencies/libvorbis/vorbis-uninstalled.pc.in +14 -0
  639. data/dependencies/libvorbis/vorbis.m4 +122 -0
  640. data/dependencies/libvorbis/vorbis.pc.in +14 -0
  641. data/dependencies/libvorbis/vorbisenc-uninstalled.pc.in +14 -0
  642. data/dependencies/libvorbis/vorbisenc.pc.in +14 -0
  643. data/dependencies/libvorbis/vorbisfile-uninstalled.pc.in +14 -0
  644. data/dependencies/libvorbis/vorbisfile.pc.in +14 -0
  645. data/dependencies/libvorbis/vq/16.vqs +77 -0
  646. data/dependencies/libvorbis/vq/16u.vqs +71 -0
  647. data/dependencies/libvorbis/vq/44c-1.vqs +63 -0
  648. data/dependencies/libvorbis/vq/44c0.vqs +65 -0
  649. data/dependencies/libvorbis/vq/44c1.vqs +66 -0
  650. data/dependencies/libvorbis/vq/44c2.vqs +37 -0
  651. data/dependencies/libvorbis/vq/44c3.vqs +36 -0
  652. data/dependencies/libvorbis/vq/44c4.vqs +36 -0
  653. data/dependencies/libvorbis/vq/44c5.vqs +37 -0
  654. data/dependencies/libvorbis/vq/44c6.vqs +37 -0
  655. data/dependencies/libvorbis/vq/44c7.vqs +38 -0
  656. data/dependencies/libvorbis/vq/44c8.vqs +39 -0
  657. data/dependencies/libvorbis/vq/44c9.vqs +37 -0
  658. data/dependencies/libvorbis/vq/44u0.vqs +33 -0
  659. data/dependencies/libvorbis/vq/44u1.vqs +33 -0
  660. data/dependencies/libvorbis/vq/44u2.vqs +32 -0
  661. data/dependencies/libvorbis/vq/44u3.vqs +33 -0
  662. data/dependencies/libvorbis/vq/44u4.vqs +33 -0
  663. data/dependencies/libvorbis/vq/44u5.vqs +35 -0
  664. data/dependencies/libvorbis/vq/44u6.vqs +35 -0
  665. data/dependencies/libvorbis/vq/44u7.vqs +34 -0
  666. data/dependencies/libvorbis/vq/44u8.vqs +35 -0
  667. data/dependencies/libvorbis/vq/44u9.vqs +36 -0
  668. data/dependencies/libvorbis/vq/8.vqs +43 -0
  669. data/dependencies/libvorbis/vq/8u.vqs +41 -0
  670. data/dependencies/libvorbis/vq/Makefile +532 -0
  671. data/dependencies/libvorbis/vq/Makefile.am +34 -0
  672. data/dependencies/libvorbis/vq/Makefile.in +532 -0
  673. data/dependencies/libvorbis/vq/auxpartition.pl +71 -0
  674. data/dependencies/libvorbis/vq/bookutil.c +717 -0
  675. data/dependencies/libvorbis/vq/bookutil.h +43 -0
  676. data/dependencies/libvorbis/vq/build.c +195 -0
  677. data/dependencies/libvorbis/vq/cascade.c +91 -0
  678. data/dependencies/libvorbis/vq/distribution.c +248 -0
  679. data/dependencies/libvorbis/vq/floor_11.vqs +10 -0
  680. data/dependencies/libvorbis/vq/floor_22.vqs +27 -0
  681. data/dependencies/libvorbis/vq/floor_44.vqs +83 -0
  682. data/dependencies/libvorbis/vq/genericdata.c +61 -0
  683. data/dependencies/libvorbis/vq/huffbuild.c +201 -0
  684. data/dependencies/libvorbis/vq/latticebuild.c +177 -0
  685. data/dependencies/libvorbis/vq/latticehint.c +430 -0
  686. data/dependencies/libvorbis/vq/latticepare.c +595 -0
  687. data/dependencies/libvorbis/vq/latticetune.c +164 -0
  688. data/dependencies/libvorbis/vq/localcodebook.h +160 -0
  689. data/dependencies/libvorbis/vq/lspdata.c +157 -0
  690. data/dependencies/libvorbis/vq/make_floor_books.pl +108 -0
  691. data/dependencies/libvorbis/vq/make_residue_books.pl +187 -0
  692. data/dependencies/libvorbis/vq/metrics.c +295 -0
  693. data/dependencies/libvorbis/vq/residue_entropy +58 -0
  694. data/dependencies/libvorbis/vq/residuedata.c +160 -0
  695. data/dependencies/libvorbis/vq/residuesplit.c +282 -0
  696. data/dependencies/libvorbis/vq/run.c +216 -0
  697. data/dependencies/libvorbis/vq/train.c +364 -0
  698. data/dependencies/libvorbis/vq/vqext.h +34 -0
  699. data/dependencies/libvorbis/vq/vqgen.c +567 -0
  700. data/dependencies/libvorbis/vq/vqgen.h +85 -0
  701. data/dependencies/libvorbis/vq/vqsplit.c +612 -0
  702. data/dependencies/libvorbis/vq/vqsplit.h +37 -0
  703. data/dependencies/libvorbis/win32/VS2003/libvorbis/libvorbis.vcproj +467 -0
  704. data/dependencies/libvorbis/win32/VS2003/libvorbisfile/libvorbisfile.def +47 -0
  705. data/dependencies/libvorbis/win32/VS2003/libvorbisfile/libvorbisfile.vcproj +147 -0
  706. data/dependencies/libvorbis/win32/VS2003/vorbisdec/vorbisdec.vcproj +268 -0
  707. data/dependencies/libvorbis/win32/VS2003/vorbisenc/vorbisenc.vcproj +268 -0
  708. data/dependencies/libvorbis/win32/VS2005/libvorbis/libvorbis.vcproj +653 -0
  709. data/dependencies/libvorbis/win32/VS2005/libvorbisfile/libvorbisfile.def +47 -0
  710. data/dependencies/libvorbis/win32/VS2005/libvorbisfile/libvorbisfile.vcproj +219 -0
  711. data/dependencies/libvorbis/win32/VS2005/vorbisdec/vorbisdec.vcproj +389 -0
  712. data/dependencies/libvorbis/win32/VS2005/vorbisenc/vorbisenc.vcproj +390 -0
  713. data/dependencies/libvorbis/win32/build_vorbis_dynamic.bat +19 -0
  714. data/dependencies/libvorbis/win32/build_vorbis_dynamic_debug.bat +19 -0
  715. data/dependencies/libvorbis/win32/build_vorbis_static.bat +19 -0
  716. data/dependencies/libvorbis/win32/build_vorbis_static_debug.bat +19 -0
  717. data/dependencies/libvorbis/win32/build_vorbisenc_dynamic.bat +19 -0
  718. data/dependencies/libvorbis/win32/build_vorbisenc_dynamic_debug.bat +19 -0
  719. data/dependencies/libvorbis/win32/build_vorbisenc_static.bat +19 -0
  720. data/dependencies/libvorbis/win32/build_vorbisenc_static_debug.bat +19 -0
  721. data/dependencies/libvorbis/win32/build_vorbisfile_dynamic.bat +19 -0
  722. data/dependencies/libvorbis/win32/build_vorbisfile_dynamic_debug.bat +19 -0
  723. data/dependencies/libvorbis/win32/build_vorbisfile_static.bat +19 -0
  724. data/dependencies/libvorbis/win32/build_vorbisfile_static_debug.bat +19 -0
  725. data/dependencies/libvorbis/win32/vorbis.def +57 -0
  726. data/dependencies/libvorbis/win32/vorbis.dsw +101 -0
  727. data/dependencies/libvorbis/win32/vorbis_dynamic.dsp +281 -0
  728. data/dependencies/libvorbis/win32/vorbis_static.dsp +257 -0
  729. data/dependencies/libvorbis/win32/vorbisenc.def +13 -0
  730. data/dependencies/libvorbis/win32/vorbisenc_dynamic.dsp +121 -0
  731. data/dependencies/libvorbis/win32/vorbisenc_static.dsp +100 -0
  732. data/dependencies/libvorbis/win32/vorbisfile.def +41 -0
  733. data/dependencies/libvorbis/win32/vorbisfile_dynamic.dsp +119 -0
  734. data/dependencies/libvorbis/win32/vorbisfile_static.dsp +100 -0
  735. data/dependencies/zlib/ChangeLog +855 -0
  736. data/dependencies/zlib/FAQ +339 -0
  737. data/dependencies/zlib/INDEX +51 -0
  738. data/dependencies/zlib/Makefile +154 -0
  739. data/dependencies/zlib/Makefile.in +154 -0
  740. data/dependencies/zlib/README +125 -0
  741. data/dependencies/zlib/adler32.c +149 -0
  742. data/dependencies/zlib/algorithm.txt +209 -0
  743. data/dependencies/zlib/amiga/Makefile.pup +66 -0
  744. data/dependencies/zlib/amiga/Makefile.sas +65 -0
  745. data/dependencies/zlib/as400/bndsrc +132 -0
  746. data/dependencies/zlib/as400/compile.clp +123 -0
  747. data/dependencies/zlib/as400/readme.txt +111 -0
  748. data/dependencies/zlib/as400/zlib.inc +331 -0
  749. data/dependencies/zlib/compress.c +79 -0
  750. data/dependencies/zlib/configure +459 -0
  751. data/dependencies/zlib/contrib/README.contrib +71 -0
  752. data/dependencies/zlib/contrib/ada/buffer_demo.adb +106 -0
  753. data/dependencies/zlib/contrib/ada/mtest.adb +156 -0
  754. data/dependencies/zlib/contrib/ada/read.adb +156 -0
  755. data/dependencies/zlib/contrib/ada/readme.txt +65 -0
  756. data/dependencies/zlib/contrib/ada/test.adb +463 -0
  757. data/dependencies/zlib/contrib/ada/zlib-streams.adb +225 -0
  758. data/dependencies/zlib/contrib/ada/zlib-streams.ads +114 -0
  759. data/dependencies/zlib/contrib/ada/zlib-thin.adb +141 -0
  760. data/dependencies/zlib/contrib/ada/zlib-thin.ads +450 -0
  761. data/dependencies/zlib/contrib/ada/zlib.adb +701 -0
  762. data/dependencies/zlib/contrib/ada/zlib.ads +328 -0
  763. data/dependencies/zlib/contrib/ada/zlib.gpr +20 -0
  764. data/dependencies/zlib/contrib/asm586/README.586 +43 -0
  765. data/dependencies/zlib/contrib/asm586/match.S +364 -0
  766. data/dependencies/zlib/contrib/asm686/README.686 +34 -0
  767. data/dependencies/zlib/contrib/asm686/match.S +329 -0
  768. data/dependencies/zlib/contrib/blast/Makefile +8 -0
  769. data/dependencies/zlib/contrib/blast/README +4 -0
  770. data/dependencies/zlib/contrib/blast/blast.c +444 -0
  771. data/dependencies/zlib/contrib/blast/blast.h +71 -0
  772. data/dependencies/zlib/contrib/blast/test.pk +0 -0
  773. data/dependencies/zlib/contrib/blast/test.txt +1 -0
  774. data/dependencies/zlib/contrib/delphi/ZLib.pas +557 -0
  775. data/dependencies/zlib/contrib/delphi/ZLibConst.pas +11 -0
  776. data/dependencies/zlib/contrib/delphi/readme.txt +76 -0
  777. data/dependencies/zlib/contrib/delphi/zlibd32.mak +93 -0
  778. data/dependencies/zlib/contrib/dotzlib/DotZLib.build +33 -0
  779. data/dependencies/zlib/contrib/dotzlib/DotZLib.chm +0 -0
  780. data/dependencies/zlib/contrib/dotzlib/DotZLib.sln +21 -0
  781. data/dependencies/zlib/contrib/dotzlib/DotZLib/AssemblyInfo.cs +58 -0
  782. data/dependencies/zlib/contrib/dotzlib/DotZLib/ChecksumImpl.cs +202 -0
  783. data/dependencies/zlib/contrib/dotzlib/DotZLib/CircularBuffer.cs +83 -0
  784. data/dependencies/zlib/contrib/dotzlib/DotZLib/CodecBase.cs +198 -0
  785. data/dependencies/zlib/contrib/dotzlib/DotZLib/Deflater.cs +106 -0
  786. data/dependencies/zlib/contrib/dotzlib/DotZLib/DotZLib.cs +288 -0
  787. data/dependencies/zlib/contrib/dotzlib/DotZLib/DotZLib.csproj +141 -0
  788. data/dependencies/zlib/contrib/dotzlib/DotZLib/GZipStream.cs +301 -0
  789. data/dependencies/zlib/contrib/dotzlib/DotZLib/Inflater.cs +105 -0
  790. data/dependencies/zlib/contrib/dotzlib/DotZLib/UnitTests.cs +274 -0
  791. data/dependencies/zlib/contrib/dotzlib/LICENSE_1_0.txt +23 -0
  792. data/dependencies/zlib/contrib/dotzlib/readme.txt +58 -0
  793. data/dependencies/zlib/contrib/infback9/README +1 -0
  794. data/dependencies/zlib/contrib/infback9/infback9.c +608 -0
  795. data/dependencies/zlib/contrib/infback9/infback9.h +37 -0
  796. data/dependencies/zlib/contrib/infback9/inffix9.h +107 -0
  797. data/dependencies/zlib/contrib/infback9/inflate9.h +47 -0
  798. data/dependencies/zlib/contrib/infback9/inftree9.c +323 -0
  799. data/dependencies/zlib/contrib/infback9/inftree9.h +55 -0
  800. data/dependencies/zlib/contrib/inflate86/inffas86.c +1157 -0
  801. data/dependencies/zlib/contrib/inflate86/inffast.S +1368 -0
  802. data/dependencies/zlib/contrib/iostream/test.cpp +24 -0
  803. data/dependencies/zlib/contrib/iostream/zfstream.cpp +329 -0
  804. data/dependencies/zlib/contrib/iostream/zfstream.h +128 -0
  805. data/dependencies/zlib/contrib/iostream2/zstream.h +307 -0
  806. data/dependencies/zlib/contrib/iostream2/zstream_test.cpp +25 -0
  807. data/dependencies/zlib/contrib/iostream3/README +35 -0
  808. data/dependencies/zlib/contrib/iostream3/TODO +17 -0
  809. data/dependencies/zlib/contrib/iostream3/test.cc +50 -0
  810. data/dependencies/zlib/contrib/iostream3/zfstream.cc +479 -0
  811. data/dependencies/zlib/contrib/iostream3/zfstream.h +466 -0
  812. data/dependencies/zlib/contrib/masm686/match.asm +413 -0
  813. data/dependencies/zlib/contrib/masmx64/bld_ml64.bat +2 -0
  814. data/dependencies/zlib/contrib/masmx64/gvmat64.asm +513 -0
  815. data/dependencies/zlib/contrib/masmx64/gvmat64.obj +0 -0
  816. data/dependencies/zlib/contrib/masmx64/inffas8664.c +186 -0
  817. data/dependencies/zlib/contrib/masmx64/inffasx64.asm +392 -0
  818. data/dependencies/zlib/contrib/masmx64/inffasx64.obj +0 -0
  819. data/dependencies/zlib/contrib/masmx64/readme.txt +28 -0
  820. data/dependencies/zlib/contrib/masmx86/bld_ml32.bat +2 -0
  821. data/dependencies/zlib/contrib/masmx86/gvmat32.asm +972 -0
  822. data/dependencies/zlib/contrib/masmx86/gvmat32.obj +0 -0
  823. data/dependencies/zlib/contrib/masmx86/gvmat32c.c +62 -0
  824. data/dependencies/zlib/contrib/masmx86/inffas32.asm +1083 -0
  825. data/dependencies/zlib/contrib/masmx86/inffas32.obj +0 -0
  826. data/dependencies/zlib/contrib/masmx86/mkasm.bat +3 -0
  827. data/dependencies/zlib/contrib/masmx86/readme.txt +21 -0
  828. data/dependencies/zlib/contrib/minizip/ChangeLogUnzip +67 -0
  829. data/dependencies/zlib/contrib/minizip/Makefile +25 -0
  830. data/dependencies/zlib/contrib/minizip/crypt.h +132 -0
  831. data/dependencies/zlib/contrib/minizip/ioapi.c +177 -0
  832. data/dependencies/zlib/contrib/minizip/ioapi.h +75 -0
  833. data/dependencies/zlib/contrib/minizip/iowin32.c +270 -0
  834. data/dependencies/zlib/contrib/minizip/iowin32.h +21 -0
  835. data/dependencies/zlib/contrib/minizip/miniunz.c +585 -0
  836. data/dependencies/zlib/contrib/minizip/minizip.c +420 -0
  837. data/dependencies/zlib/contrib/minizip/mztools.c +281 -0
  838. data/dependencies/zlib/contrib/minizip/mztools.h +31 -0
  839. data/dependencies/zlib/contrib/minizip/unzip.c +1598 -0
  840. data/dependencies/zlib/contrib/minizip/unzip.h +354 -0
  841. data/dependencies/zlib/contrib/minizip/zip.c +1219 -0
  842. data/dependencies/zlib/contrib/minizip/zip.h +235 -0
  843. data/dependencies/zlib/contrib/pascal/example.pas +599 -0
  844. data/dependencies/zlib/contrib/pascal/readme.txt +76 -0
  845. data/dependencies/zlib/contrib/pascal/zlibd32.mak +93 -0
  846. data/dependencies/zlib/contrib/pascal/zlibpas.pas +236 -0
  847. data/dependencies/zlib/contrib/puff/Makefile +8 -0
  848. data/dependencies/zlib/contrib/puff/README +63 -0
  849. data/dependencies/zlib/contrib/puff/puff.c +837 -0
  850. data/dependencies/zlib/contrib/puff/puff.h +31 -0
  851. data/dependencies/zlib/contrib/puff/zeros.raw +0 -0
  852. data/dependencies/zlib/contrib/testzlib/testzlib.c +275 -0
  853. data/dependencies/zlib/contrib/testzlib/testzlib.txt +10 -0
  854. data/dependencies/zlib/contrib/untgz/Makefile +14 -0
  855. data/dependencies/zlib/contrib/untgz/Makefile.msc +17 -0
  856. data/dependencies/zlib/contrib/untgz/untgz.c +674 -0
  857. data/dependencies/zlib/contrib/vstudio/readme.txt +73 -0
  858. data/dependencies/zlib/contrib/vstudio/vc7/miniunz.vcproj +126 -0
  859. data/dependencies/zlib/contrib/vstudio/vc7/minizip.vcproj +126 -0
  860. data/dependencies/zlib/contrib/vstudio/vc7/testzlib.vcproj +126 -0
  861. data/dependencies/zlib/contrib/vstudio/vc7/zlib.rc +32 -0
  862. data/dependencies/zlib/contrib/vstudio/vc7/zlibstat.vcproj +246 -0
  863. data/dependencies/zlib/contrib/vstudio/vc7/zlibvc.def +92 -0
  864. data/dependencies/zlib/contrib/vstudio/vc7/zlibvc.sln +78 -0
  865. data/dependencies/zlib/contrib/vstudio/vc7/zlibvc.vcproj +445 -0
  866. data/dependencies/zlib/contrib/vstudio/vc8/miniunz.vcproj +566 -0
  867. data/dependencies/zlib/contrib/vstudio/vc8/minizip.vcproj +563 -0
  868. data/dependencies/zlib/contrib/vstudio/vc8/testzlib.vcproj +948 -0
  869. data/dependencies/zlib/contrib/vstudio/vc8/testzlibdll.vcproj +567 -0
  870. data/dependencies/zlib/contrib/vstudio/vc8/zlib.rc +32 -0
  871. data/dependencies/zlib/contrib/vstudio/vc8/zlibstat.vcproj +870 -0
  872. data/dependencies/zlib/contrib/vstudio/vc8/zlibvc.def +92 -0
  873. data/dependencies/zlib/contrib/vstudio/vc8/zlibvc.sln +144 -0
  874. data/dependencies/zlib/contrib/vstudio/vc8/zlibvc.vcproj +1219 -0
  875. data/dependencies/zlib/crc32.c +423 -0
  876. data/dependencies/zlib/crc32.h +441 -0
  877. data/dependencies/zlib/deflate.c +1736 -0
  878. data/dependencies/zlib/deflate.h +331 -0
  879. data/dependencies/zlib/example.c +565 -0
  880. data/dependencies/zlib/examples/README.examples +42 -0
  881. data/dependencies/zlib/examples/fitblk.c +233 -0
  882. data/dependencies/zlib/examples/gun.c +693 -0
  883. data/dependencies/zlib/examples/gzappend.c +500 -0
  884. data/dependencies/zlib/examples/gzjoin.c +448 -0
  885. data/dependencies/zlib/examples/gzlog.c +413 -0
  886. data/dependencies/zlib/examples/gzlog.h +58 -0
  887. data/dependencies/zlib/examples/zlib_how.html +523 -0
  888. data/dependencies/zlib/examples/zpipe.c +191 -0
  889. data/dependencies/zlib/examples/zran.c +404 -0
  890. data/dependencies/zlib/gzio.c +1026 -0
  891. data/dependencies/zlib/infback.c +623 -0
  892. data/dependencies/zlib/inffast.c +318 -0
  893. data/dependencies/zlib/inffast.h +11 -0
  894. data/dependencies/zlib/inffixed.h +94 -0
  895. data/dependencies/zlib/inflate.c +1368 -0
  896. data/dependencies/zlib/inflate.h +115 -0
  897. data/dependencies/zlib/inftrees.c +329 -0
  898. data/dependencies/zlib/inftrees.h +55 -0
  899. data/dependencies/zlib/make_vms.com +461 -0
  900. data/dependencies/zlib/minigzip.c +322 -0
  901. data/dependencies/zlib/msdos/Makefile.bor +109 -0
  902. data/dependencies/zlib/msdos/Makefile.dj2 +104 -0
  903. data/dependencies/zlib/msdos/Makefile.emx +69 -0
  904. data/dependencies/zlib/msdos/Makefile.msc +106 -0
  905. data/dependencies/zlib/msdos/Makefile.tc +94 -0
  906. data/dependencies/zlib/old/Makefile.riscos +151 -0
  907. data/dependencies/zlib/old/README +3 -0
  908. data/dependencies/zlib/old/descrip.mms +48 -0
  909. data/dependencies/zlib/old/os2/Makefile.os2 +136 -0
  910. data/dependencies/zlib/old/os2/zlib.def +51 -0
  911. data/dependencies/zlib/old/visual-basic.txt +160 -0
  912. data/dependencies/zlib/old/zlib.html +971 -0
  913. data/dependencies/zlib/projects/README.projects +41 -0
  914. data/dependencies/zlib/projects/visualc6/README.txt +73 -0
  915. data/dependencies/zlib/projects/visualc6/example.dsp +278 -0
  916. data/dependencies/zlib/projects/visualc6/minigzip.dsp +278 -0
  917. data/dependencies/zlib/projects/visualc6/zlib.dsp +609 -0
  918. data/dependencies/zlib/projects/visualc6/zlib.dsw +59 -0
  919. data/dependencies/zlib/qnx/package.qpg +141 -0
  920. data/dependencies/zlib/trees.c +1219 -0
  921. data/dependencies/zlib/trees.h +128 -0
  922. data/dependencies/zlib/uncompr.c +61 -0
  923. data/dependencies/zlib/win32/DLL_FAQ.txt +397 -0
  924. data/dependencies/zlib/win32/Makefile.bor +107 -0
  925. data/dependencies/zlib/win32/Makefile.emx +69 -0
  926. data/dependencies/zlib/win32/Makefile.gcc +141 -0
  927. data/dependencies/zlib/win32/Makefile.msc +126 -0
  928. data/dependencies/zlib/win32/VisualC.txt +3 -0
  929. data/dependencies/zlib/win32/zlib.def +60 -0
  930. data/dependencies/zlib/win32/zlib1.rc +39 -0
  931. data/dependencies/zlib/zconf.h +332 -0
  932. data/dependencies/zlib/zconf.in.h +332 -0
  933. data/dependencies/zlib/zlib.3 +159 -0
  934. data/dependencies/zlib/zlib.h +1357 -0
  935. data/dependencies/zlib/zutil.c +318 -0
  936. data/dependencies/zlib/zutil.h +269 -0
  937. data/examples/ChipmunkIntegration.rb +7 -7
  938. data/examples/CptnRuby.rb +5 -5
  939. data/examples/OpenGLIntegration.rb +6 -6
  940. data/examples/RMagickIntegration.rb +1 -1
  941. data/examples/TextInput.cpp +23 -1
  942. data/examples/TextInput.rb +7 -1
  943. data/examples/Tutorial.cpp +2 -2
  944. data/examples/Tutorial.rb +5 -5
  945. data/lib/gosu/patches.rb +53 -0
  946. data/linux/Makefile.in +3 -2
  947. data/mac/Gosu.xcodeproj/jlnr.pbxuser +461 -349
  948. data/mac/Gosu.xcodeproj/jlnr.perspectivev3 +82 -50
  949. data/mac/Gosu.xcodeproj/project.pbxproj +503 -0
  950. data/reference/cpp/_audio_8hpp.html +0 -3
  951. data/reference/cpp/_audio_8hpp_source.html +95 -103
  952. data/reference/cpp/_bitmap_8hpp_source.html +1 -1
  953. data/reference/cpp/_color_8hpp.html +2 -3
  954. data/reference/cpp/_color_8hpp_source.html +54 -38
  955. data/reference/cpp/_font_8hpp_source.html +6 -6
  956. data/reference/cpp/_graphics_8hpp_source.html +55 -49
  957. data/reference/cpp/_image_8hpp_source.html +7 -7
  958. data/reference/cpp/_text_input_8hpp_source.html +11 -6
  959. data/reference/cpp/_version_8hpp.html +4 -4
  960. data/reference/cpp/_version_8hpp_source.html +2 -2
  961. data/reference/cpp/_window_8hpp_source.html +37 -36
  962. data/reference/cpp/annotated.html +0 -1
  963. data/reference/cpp/class_gosu_1_1_bitmap-members.html +1 -1
  964. data/reference/cpp/class_gosu_1_1_bitmap.html +3 -3
  965. data/reference/cpp/class_gosu_1_1_color-members.html +11 -0
  966. data/reference/cpp/class_gosu_1_1_color.html +212 -1
  967. data/reference/cpp/class_gosu_1_1_font-members.html +3 -3
  968. data/reference/cpp/class_gosu_1_1_font.html +12 -12
  969. data/reference/cpp/class_gosu_1_1_graphics-members.html +1 -1
  970. data/reference/cpp/class_gosu_1_1_graphics.html +5 -5
  971. data/reference/cpp/class_gosu_1_1_image-members.html +3 -3
  972. data/reference/cpp/class_gosu_1_1_image.html +13 -13
  973. data/reference/cpp/class_gosu_1_1_sample-members.html +2 -0
  974. data/reference/cpp/class_gosu_1_1_sample.html +70 -26
  975. data/reference/cpp/class_gosu_1_1_sample_instance.html +1 -1
  976. data/reference/cpp/class_gosu_1_1_song-members.html +3 -0
  977. data/reference/cpp/class_gosu_1_1_song.html +103 -26
  978. data/reference/cpp/class_gosu_1_1_text_input-members.html +2 -1
  979. data/reference/cpp/class_gosu_1_1_text_input.html +31 -4
  980. data/reference/cpp/class_gosu_1_1_window.html +6 -6
  981. data/reference/cpp/classes.html +12 -13
  982. data/reference/cpp/functions.html +3 -3
  983. data/reference/cpp/functions_0x62.html +7 -3
  984. data/reference/cpp/functions_0x63.html +4 -2
  985. data/reference/cpp/functions_0x64.html +6 -6
  986. data/reference/cpp/functions_0x66.html +4 -0
  987. data/reference/cpp/functions_0x67.html +4 -0
  988. data/reference/cpp/functions_0x6e.html +2 -0
  989. data/reference/cpp/functions_0x72.html +4 -2
  990. data/reference/cpp/functions_0x73.html +6 -6
  991. data/reference/cpp/functions_0x75.html +1 -1
  992. data/reference/cpp/functions_0x77.html +5 -3
  993. data/reference/cpp/functions_0x79.html +2 -0
  994. data/reference/cpp/functions_0x7e.html +1 -3
  995. data/reference/cpp/functions_func.html +0 -2
  996. data/reference/cpp/functions_func_0x62.html +1 -1
  997. data/reference/cpp/functions_func_0x64.html +6 -6
  998. data/reference/cpp/functions_func_0x66.html +2 -0
  999. data/reference/cpp/functions_func_0x72.html +1 -1
  1000. data/reference/cpp/functions_func_0x73.html +8 -8
  1001. data/reference/cpp/functions_func_0x75.html +1 -1
  1002. data/reference/cpp/functions_func_0x7e.html +1 -3
  1003. data/reference/cpp/functions_vars.html +22 -0
  1004. data/reference/cpp/hierarchy.html +0 -1
  1005. data/reference/cpp/namespace_gosu.html +2 -8
  1006. data/reference/cpp/namespace_gosu_1_1_colors.html +30 -17
  1007. data/reference/cpp/namespacemembers.html +2 -0
  1008. data/reference/cpp/namespacemembers_vars.html +2 -0
  1009. data/reference/cpp/namespaces.html +1 -1
  1010. data/reference/rdoc/classes/Gosu.html +23 -3
  1011. data/reference/rdoc/classes/Gosu/Color.html +127 -29
  1012. data/reference/rdoc/classes/Gosu/Font.html +31 -21
  1013. data/reference/rdoc/classes/Gosu/GLTexInfo.html +3 -3
  1014. data/reference/rdoc/classes/Gosu/Image.html +52 -37
  1015. data/reference/rdoc/classes/Gosu/Sample.html +19 -13
  1016. data/reference/rdoc/classes/Gosu/SampleInstance.html +29 -19
  1017. data/reference/rdoc/classes/Gosu/Song.html +41 -27
  1018. data/reference/rdoc/classes/Gosu/TextInput.html +42 -3
  1019. data/reference/rdoc/classes/Gosu/Window.html +102 -69
  1020. data/reference/rdoc/classes/Numeric.html +7 -3
  1021. data/reference/rdoc/created.rid +1 -1
  1022. data/reference/rdoc/files/COPYING_txt.html +3 -3
  1023. data/reference/rdoc/files/README_txt.html +3 -3
  1024. data/reference/rdoc/files/reference/Deployment on OS X_rdoc.html +4 -19
  1025. data/reference/rdoc/files/reference/Deployment on Windows_rdoc.html +18 -31
  1026. data/reference/rdoc/files/reference/Drawing with Colors_rdoc.html +3 -3
  1027. data/reference/rdoc/files/reference/Order of Corners_rdoc.html +3 -3
  1028. data/reference/rdoc/files/reference/Tileability_rdoc.html +3 -3
  1029. data/reference/rdoc/files/reference/Z Ordering_rdoc.html +3 -3
  1030. data/reference/rdoc/files/reference/gosu_rb.html +3 -3
  1031. data/reference/rdoc/fr_method_index.html +49 -48
  1032. data/reference/rdoc/index.html +1 -1
  1033. metadata +912 -66
  1034. data/reference/rdoc/classes/Gosu.src/M000003.html +0 -0
  1035. data/reference/rdoc/classes/Gosu.src/M000004.html +0 -0
  1036. data/reference/rdoc/classes/Gosu.src/M000005.html +0 -0
  1037. data/reference/rdoc/classes/Gosu.src/M000006.html +0 -0
  1038. data/reference/rdoc/classes/Gosu.src/M000007.html +0 -0
  1039. data/reference/rdoc/classes/Gosu.src/M000008.html +0 -0
  1040. data/reference/rdoc/classes/Gosu.src/M000009.html +0 -0
  1041. data/reference/rdoc/classes/Gosu.src/M000010.html +0 -0
  1042. data/reference/rdoc/classes/Gosu.src/M000011.html +0 -0
  1043. data/reference/rdoc/classes/Gosu.src/M000012.html +0 -0
  1044. data/reference/rdoc/classes/Gosu/Color.src/M000016.html +0 -0
  1045. data/reference/rdoc/classes/Gosu/Color.src/M000017.html +0 -0
  1046. data/reference/rdoc/classes/Gosu/Color.src/M000018.html +0 -0
  1047. data/reference/rdoc/classes/Gosu/Color.src/M000019.html +0 -0
  1048. data/reference/rdoc/classes/Gosu/Font.src/M000029.html +0 -0
  1049. data/reference/rdoc/classes/Gosu/Font.src/M000030.html +0 -0
  1050. data/reference/rdoc/classes/Gosu/Font.src/M000031.html +0 -0
  1051. data/reference/rdoc/classes/Gosu/Font.src/M000032.html +0 -0
  1052. data/reference/rdoc/classes/Gosu/Font.src/M000033.html +0 -0
  1053. data/reference/rdoc/classes/Gosu/Image.src/M000020.html +0 -0
  1054. data/reference/rdoc/classes/Gosu/Image.src/M000021.html +0 -0
  1055. data/reference/rdoc/classes/Gosu/Image.src/M000022.html +0 -0
  1056. data/reference/rdoc/classes/Gosu/Image.src/M000023.html +0 -0
  1057. data/reference/rdoc/classes/Gosu/Image.src/M000024.html +0 -0
  1058. data/reference/rdoc/classes/Gosu/Image.src/M000025.html +0 -0
  1059. data/reference/rdoc/classes/Gosu/Image.src/M000026.html +0 -0
  1060. data/reference/rdoc/classes/Gosu/Image.src/M000027.html +0 -0
  1061. data/reference/rdoc/classes/Gosu/Image.src/M000028.html +0 -0
  1062. data/reference/rdoc/classes/Gosu/Sample.src/M000013.html +0 -0
  1063. data/reference/rdoc/classes/Gosu/Sample.src/M000014.html +0 -0
  1064. data/reference/rdoc/classes/Gosu/Sample.src/M000015.html +0 -0
  1065. data/reference/rdoc/classes/Gosu/SampleInstance.src/M000051.html +0 -0
  1066. data/reference/rdoc/classes/Gosu/SampleInstance.src/M000052.html +0 -0
  1067. data/reference/rdoc/classes/Gosu/SampleInstance.src/M000053.html +0 -0
  1068. data/reference/rdoc/classes/Gosu/SampleInstance.src/M000054.html +0 -0
  1069. data/reference/rdoc/classes/Gosu/SampleInstance.src/M000055.html +0 -0
  1070. data/reference/rdoc/classes/Gosu/Song.src/M000056.html +0 -0
  1071. data/reference/rdoc/classes/Gosu/Song.src/M000057.html +0 -0
  1072. data/reference/rdoc/classes/Gosu/Song.src/M000058.html +0 -0
  1073. data/reference/rdoc/classes/Gosu/Song.src/M000059.html +0 -0
  1074. data/reference/rdoc/classes/Gosu/Song.src/M000060.html +0 -0
  1075. data/reference/rdoc/classes/Gosu/Song.src/M000061.html +0 -0
  1076. data/reference/rdoc/classes/Gosu/Song.src/M000062.html +0 -0
  1077. data/reference/rdoc/classes/Gosu/Window.src/M000034.html +0 -0
  1078. data/reference/rdoc/classes/Gosu/Window.src/M000035.html +0 -0
  1079. data/reference/rdoc/classes/Gosu/Window.src/M000036.html +0 -0
  1080. data/reference/rdoc/classes/Gosu/Window.src/M000037.html +0 -0
  1081. data/reference/rdoc/classes/Gosu/Window.src/M000038.html +0 -0
  1082. data/reference/rdoc/classes/Gosu/Window.src/M000039.html +0 -0
  1083. data/reference/rdoc/classes/Gosu/Window.src/M000040.html +0 -0
  1084. data/reference/rdoc/classes/Gosu/Window.src/M000041.html +0 -0
  1085. data/reference/rdoc/classes/Gosu/Window.src/M000042.html +0 -0
  1086. data/reference/rdoc/classes/Gosu/Window.src/M000043.html +0 -0
  1087. data/reference/rdoc/classes/Gosu/Window.src/M000044.html +0 -0
  1088. data/reference/rdoc/classes/Gosu/Window.src/M000045.html +0 -0
  1089. data/reference/rdoc/classes/Gosu/Window.src/M000046.html +0 -0
  1090. data/reference/rdoc/classes/Gosu/Window.src/M000047.html +0 -0
  1091. data/reference/rdoc/classes/Gosu/Window.src/M000048.html +0 -0
  1092. data/reference/rdoc/classes/Gosu/Window.src/M000049.html +0 -0
  1093. data/reference/rdoc/classes/Gosu/Window.src/M000050.html +0 -0
  1094. data/reference/rdoc/classes/Numeric.src/M000001.html +0 -0
  1095. data/reference/rdoc/classes/Numeric.src/M000002.html +0 -0
@@ -0,0 +1,1368 @@
1
+ /*
2
+ * inffast.S is a hand tuned assembler version of:
3
+ *
4
+ * inffast.c -- fast decoding
5
+ * Copyright (C) 1995-2003 Mark Adler
6
+ * For conditions of distribution and use, see copyright notice in zlib.h
7
+ *
8
+ * Copyright (C) 2003 Chris Anderson <christop@charm.net>
9
+ * Please use the copyright conditions above.
10
+ *
11
+ * This version (Jan-23-2003) of inflate_fast was coded and tested under
12
+ * GNU/Linux on a pentium 3, using the gcc-3.2 compiler distribution. On that
13
+ * machine, I found that gzip style archives decompressed about 20% faster than
14
+ * the gcc-3.2 -O3 -fomit-frame-pointer compiled version. Your results will
15
+ * depend on how large of a buffer is used for z_stream.next_in & next_out
16
+ * (8K-32K worked best for my 256K cpu cache) and how much overhead there is in
17
+ * stream processing I/O and crc32/addler32. In my case, this routine used
18
+ * 70% of the cpu time and crc32 used 20%.
19
+ *
20
+ * I am confident that this version will work in the general case, but I have
21
+ * not tested a wide variety of datasets or a wide variety of platforms.
22
+ *
23
+ * Jan-24-2003 -- Added -DUSE_MMX define for slightly faster inflating.
24
+ * It should be a runtime flag instead of compile time flag...
25
+ *
26
+ * Jan-26-2003 -- Added runtime check for MMX support with cpuid instruction.
27
+ * With -DUSE_MMX, only MMX code is compiled. With -DNO_MMX, only non-MMX code
28
+ * is compiled. Without either option, runtime detection is enabled. Runtime
29
+ * detection should work on all modern cpus and the recomended algorithm (flip
30
+ * ID bit on eflags and then use the cpuid instruction) is used in many
31
+ * multimedia applications. Tested under win2k with gcc-2.95 and gas-2.12
32
+ * distributed with cygwin3. Compiling with gcc-2.95 -c inffast.S -o
33
+ * inffast.obj generates a COFF object which can then be linked with MSVC++
34
+ * compiled code. Tested under FreeBSD 4.7 with gcc-2.95.
35
+ *
36
+ * Jan-28-2003 -- Tested Athlon XP... MMX mode is slower than no MMX (and
37
+ * slower than compiler generated code). Adjusted cpuid check to use the MMX
38
+ * code only for Pentiums < P4 until I have more data on the P4. Speed
39
+ * improvment is only about 15% on the Athlon when compared with code generated
40
+ * with MSVC++. Not sure yet, but I think the P4 will also be slower using the
41
+ * MMX mode because many of it's x86 ALU instructions execute in .5 cycles and
42
+ * have less latency than MMX ops. Added code to buffer the last 11 bytes of
43
+ * the input stream since the MMX code grabs bits in chunks of 32, which
44
+ * differs from the inffast.c algorithm. I don't think there would have been
45
+ * read overruns where a page boundary was crossed (a segfault), but there
46
+ * could have been overruns when next_in ends on unaligned memory (unintialized
47
+ * memory read).
48
+ *
49
+ * Mar-13-2003 -- P4 MMX is slightly slower than P4 NO_MMX. I created a C
50
+ * version of the non-MMX code so that it doesn't depend on zstrm and zstate
51
+ * structure offsets which are hard coded in this file. This was last tested
52
+ * with zlib-1.2.0 which is currently in beta testing, newer versions of this
53
+ * and inffas86.c can be found at http://www.eetbeetee.com/zlib/ and
54
+ * http://www.charm.net/~christop/zlib/
55
+ */
56
+
57
+
58
+ /*
59
+ * if you have underscore linking problems (_inflate_fast undefined), try
60
+ * using -DGAS_COFF
61
+ */
62
+ #if ! defined( GAS_COFF ) && ! defined( GAS_ELF )
63
+
64
+ #if defined( WIN32 ) || defined( __CYGWIN__ )
65
+ #define GAS_COFF /* windows object format */
66
+ #else
67
+ #define GAS_ELF
68
+ #endif
69
+
70
+ #endif /* ! GAS_COFF && ! GAS_ELF */
71
+
72
+
73
+ #if defined( GAS_COFF )
74
+
75
+ /* coff externals have underscores */
76
+ #define inflate_fast _inflate_fast
77
+ #define inflate_fast_use_mmx _inflate_fast_use_mmx
78
+
79
+ #endif /* GAS_COFF */
80
+
81
+
82
+ .file "inffast.S"
83
+
84
+ .globl inflate_fast
85
+
86
+ .text
87
+ .align 4,0
88
+ .L_invalid_literal_length_code_msg:
89
+ .string "invalid literal/length code"
90
+
91
+ .align 4,0
92
+ .L_invalid_distance_code_msg:
93
+ .string "invalid distance code"
94
+
95
+ .align 4,0
96
+ .L_invalid_distance_too_far_msg:
97
+ .string "invalid distance too far back"
98
+
99
+ #if ! defined( NO_MMX )
100
+ .align 4,0
101
+ .L_mask: /* mask[N] = ( 1 << N ) - 1 */
102
+ .long 0
103
+ .long 1
104
+ .long 3
105
+ .long 7
106
+ .long 15
107
+ .long 31
108
+ .long 63
109
+ .long 127
110
+ .long 255
111
+ .long 511
112
+ .long 1023
113
+ .long 2047
114
+ .long 4095
115
+ .long 8191
116
+ .long 16383
117
+ .long 32767
118
+ .long 65535
119
+ .long 131071
120
+ .long 262143
121
+ .long 524287
122
+ .long 1048575
123
+ .long 2097151
124
+ .long 4194303
125
+ .long 8388607
126
+ .long 16777215
127
+ .long 33554431
128
+ .long 67108863
129
+ .long 134217727
130
+ .long 268435455
131
+ .long 536870911
132
+ .long 1073741823
133
+ .long 2147483647
134
+ .long 4294967295
135
+ #endif /* NO_MMX */
136
+
137
+ .text
138
+
139
+ /*
140
+ * struct z_stream offsets, in zlib.h
141
+ */
142
+ #define next_in_strm 0 /* strm->next_in */
143
+ #define avail_in_strm 4 /* strm->avail_in */
144
+ #define next_out_strm 12 /* strm->next_out */
145
+ #define avail_out_strm 16 /* strm->avail_out */
146
+ #define msg_strm 24 /* strm->msg */
147
+ #define state_strm 28 /* strm->state */
148
+
149
+ /*
150
+ * struct inflate_state offsets, in inflate.h
151
+ */
152
+ #define mode_state 0 /* state->mode */
153
+ #define wsize_state 32 /* state->wsize */
154
+ #define write_state 40 /* state->write */
155
+ #define window_state 44 /* state->window */
156
+ #define hold_state 48 /* state->hold */
157
+ #define bits_state 52 /* state->bits */
158
+ #define lencode_state 68 /* state->lencode */
159
+ #define distcode_state 72 /* state->distcode */
160
+ #define lenbits_state 76 /* state->lenbits */
161
+ #define distbits_state 80 /* state->distbits */
162
+
163
+ /*
164
+ * inflate_fast's activation record
165
+ */
166
+ #define local_var_size 64 /* how much local space for vars */
167
+ #define strm_sp 88 /* first arg: z_stream * (local_var_size + 24) */
168
+ #define start_sp 92 /* second arg: unsigned int (local_var_size + 28) */
169
+
170
+ /*
171
+ * offsets for local vars on stack
172
+ */
173
+ #define out 60 /* unsigned char* */
174
+ #define window 56 /* unsigned char* */
175
+ #define wsize 52 /* unsigned int */
176
+ #define write 48 /* unsigned int */
177
+ #define in 44 /* unsigned char* */
178
+ #define beg 40 /* unsigned char* */
179
+ #define buf 28 /* char[ 12 ] */
180
+ #define len 24 /* unsigned int */
181
+ #define last 20 /* unsigned char* */
182
+ #define end 16 /* unsigned char* */
183
+ #define dcode 12 /* code* */
184
+ #define lcode 8 /* code* */
185
+ #define dmask 4 /* unsigned int */
186
+ #define lmask 0 /* unsigned int */
187
+
188
+ /*
189
+ * typedef enum inflate_mode consts, in inflate.h
190
+ */
191
+ #define INFLATE_MODE_TYPE 11 /* state->mode flags enum-ed in inflate.h */
192
+ #define INFLATE_MODE_BAD 26
193
+
194
+
195
+ #if ! defined( USE_MMX ) && ! defined( NO_MMX )
196
+
197
+ #define RUN_TIME_MMX
198
+
199
+ #define CHECK_MMX 1
200
+ #define DO_USE_MMX 2
201
+ #define DONT_USE_MMX 3
202
+
203
+ .globl inflate_fast_use_mmx
204
+
205
+ .data
206
+
207
+ .align 4,0
208
+ inflate_fast_use_mmx: /* integer flag for run time control 1=check,2=mmx,3=no */
209
+ .long CHECK_MMX
210
+
211
+ #if defined( GAS_ELF )
212
+ /* elf info */
213
+ .type inflate_fast_use_mmx,@object
214
+ .size inflate_fast_use_mmx,4
215
+ #endif
216
+
217
+ #endif /* RUN_TIME_MMX */
218
+
219
+ #if defined( GAS_COFF )
220
+ /* coff info: scl 2 = extern, type 32 = function */
221
+ .def inflate_fast; .scl 2; .type 32; .endef
222
+ #endif
223
+
224
+ .text
225
+
226
+ .align 32,0x90
227
+ inflate_fast:
228
+ pushl %edi
229
+ pushl %esi
230
+ pushl %ebp
231
+ pushl %ebx
232
+ pushf /* save eflags (strm_sp, state_sp assumes this is 32 bits) */
233
+ subl $local_var_size, %esp
234
+ cld
235
+
236
+ #define strm_r %esi
237
+ #define state_r %edi
238
+
239
+ movl strm_sp(%esp), strm_r
240
+ movl state_strm(strm_r), state_r
241
+
242
+ /* in = strm->next_in;
243
+ * out = strm->next_out;
244
+ * last = in + strm->avail_in - 11;
245
+ * beg = out - (start - strm->avail_out);
246
+ * end = out + (strm->avail_out - 257);
247
+ */
248
+ movl avail_in_strm(strm_r), %edx
249
+ movl next_in_strm(strm_r), %eax
250
+
251
+ addl %eax, %edx /* avail_in += next_in */
252
+ subl $11, %edx /* avail_in -= 11 */
253
+
254
+ movl %eax, in(%esp)
255
+ movl %edx, last(%esp)
256
+
257
+ movl start_sp(%esp), %ebp
258
+ movl avail_out_strm(strm_r), %ecx
259
+ movl next_out_strm(strm_r), %ebx
260
+
261
+ subl %ecx, %ebp /* start -= avail_out */
262
+ negl %ebp /* start = -start */
263
+ addl %ebx, %ebp /* start += next_out */
264
+
265
+ subl $257, %ecx /* avail_out -= 257 */
266
+ addl %ebx, %ecx /* avail_out += out */
267
+
268
+ movl %ebx, out(%esp)
269
+ movl %ebp, beg(%esp)
270
+ movl %ecx, end(%esp)
271
+
272
+ /* wsize = state->wsize;
273
+ * write = state->write;
274
+ * window = state->window;
275
+ * hold = state->hold;
276
+ * bits = state->bits;
277
+ * lcode = state->lencode;
278
+ * dcode = state->distcode;
279
+ * lmask = ( 1 << state->lenbits ) - 1;
280
+ * dmask = ( 1 << state->distbits ) - 1;
281
+ */
282
+
283
+ movl lencode_state(state_r), %eax
284
+ movl distcode_state(state_r), %ecx
285
+
286
+ movl %eax, lcode(%esp)
287
+ movl %ecx, dcode(%esp)
288
+
289
+ movl $1, %eax
290
+ movl lenbits_state(state_r), %ecx
291
+ shll %cl, %eax
292
+ decl %eax
293
+ movl %eax, lmask(%esp)
294
+
295
+ movl $1, %eax
296
+ movl distbits_state(state_r), %ecx
297
+ shll %cl, %eax
298
+ decl %eax
299
+ movl %eax, dmask(%esp)
300
+
301
+ movl wsize_state(state_r), %eax
302
+ movl write_state(state_r), %ecx
303
+ movl window_state(state_r), %edx
304
+
305
+ movl %eax, wsize(%esp)
306
+ movl %ecx, write(%esp)
307
+ movl %edx, window(%esp)
308
+
309
+ movl hold_state(state_r), %ebp
310
+ movl bits_state(state_r), %ebx
311
+
312
+ #undef strm_r
313
+ #undef state_r
314
+
315
+ #define in_r %esi
316
+ #define from_r %esi
317
+ #define out_r %edi
318
+
319
+ movl in(%esp), in_r
320
+ movl last(%esp), %ecx
321
+ cmpl in_r, %ecx
322
+ ja .L_align_long /* if in < last */
323
+
324
+ addl $11, %ecx /* ecx = &in[ avail_in ] */
325
+ subl in_r, %ecx /* ecx = avail_in */
326
+ movl $12, %eax
327
+ subl %ecx, %eax /* eax = 12 - avail_in */
328
+ leal buf(%esp), %edi
329
+ rep movsb /* memcpy( buf, in, avail_in ) */
330
+ movl %eax, %ecx
331
+ xorl %eax, %eax
332
+ rep stosb /* memset( &buf[ avail_in ], 0, 12 - avail_in ) */
333
+ leal buf(%esp), in_r /* in = buf */
334
+ movl in_r, last(%esp) /* last = in, do just one iteration */
335
+ jmp .L_is_aligned
336
+
337
+ /* align in_r on long boundary */
338
+ .L_align_long:
339
+ testl $3, in_r
340
+ jz .L_is_aligned
341
+ xorl %eax, %eax
342
+ movb (in_r), %al
343
+ incl in_r
344
+ movl %ebx, %ecx
345
+ addl $8, %ebx
346
+ shll %cl, %eax
347
+ orl %eax, %ebp
348
+ jmp .L_align_long
349
+
350
+ .L_is_aligned:
351
+ movl out(%esp), out_r
352
+
353
+ #if defined( NO_MMX )
354
+ jmp .L_do_loop
355
+ #endif
356
+
357
+ #if defined( USE_MMX )
358
+ jmp .L_init_mmx
359
+ #endif
360
+
361
+ /*** Runtime MMX check ***/
362
+
363
+ #if defined( RUN_TIME_MMX )
364
+ .L_check_mmx:
365
+ cmpl $DO_USE_MMX, inflate_fast_use_mmx
366
+ je .L_init_mmx
367
+ ja .L_do_loop /* > 2 */
368
+
369
+ pushl %eax
370
+ pushl %ebx
371
+ pushl %ecx
372
+ pushl %edx
373
+ pushf
374
+ movl (%esp), %eax /* copy eflags to eax */
375
+ xorl $0x200000, (%esp) /* try toggling ID bit of eflags (bit 21)
376
+ * to see if cpu supports cpuid...
377
+ * ID bit method not supported by NexGen but
378
+ * bios may load a cpuid instruction and
379
+ * cpuid may be disabled on Cyrix 5-6x86 */
380
+ popf
381
+ pushf
382
+ popl %edx /* copy new eflags to edx */
383
+ xorl %eax, %edx /* test if ID bit is flipped */
384
+ jz .L_dont_use_mmx /* not flipped if zero */
385
+ xorl %eax, %eax
386
+ cpuid
387
+ cmpl $0x756e6547, %ebx /* check for GenuineIntel in ebx,ecx,edx */
388
+ jne .L_dont_use_mmx
389
+ cmpl $0x6c65746e, %ecx
390
+ jne .L_dont_use_mmx
391
+ cmpl $0x49656e69, %edx
392
+ jne .L_dont_use_mmx
393
+ movl $1, %eax
394
+ cpuid /* get cpu features */
395
+ shrl $8, %eax
396
+ andl $15, %eax
397
+ cmpl $6, %eax /* check for Pentium family, is 0xf for P4 */
398
+ jne .L_dont_use_mmx
399
+ testl $0x800000, %edx /* test if MMX feature is set (bit 23) */
400
+ jnz .L_use_mmx
401
+ jmp .L_dont_use_mmx
402
+ .L_use_mmx:
403
+ movl $DO_USE_MMX, inflate_fast_use_mmx
404
+ jmp .L_check_mmx_pop
405
+ .L_dont_use_mmx:
406
+ movl $DONT_USE_MMX, inflate_fast_use_mmx
407
+ .L_check_mmx_pop:
408
+ popl %edx
409
+ popl %ecx
410
+ popl %ebx
411
+ popl %eax
412
+ jmp .L_check_mmx
413
+ #endif
414
+
415
+
416
+ /*** Non-MMX code ***/
417
+
418
+ #if defined ( NO_MMX ) || defined( RUN_TIME_MMX )
419
+
420
+ #define hold_r %ebp
421
+ #define bits_r %bl
422
+ #define bitslong_r %ebx
423
+
424
+ .align 32,0x90
425
+ .L_while_test:
426
+ /* while (in < last && out < end)
427
+ */
428
+ cmpl out_r, end(%esp)
429
+ jbe .L_break_loop /* if (out >= end) */
430
+
431
+ cmpl in_r, last(%esp)
432
+ jbe .L_break_loop
433
+
434
+ .L_do_loop:
435
+ /* regs: %esi = in, %ebp = hold, %bl = bits, %edi = out
436
+ *
437
+ * do {
438
+ * if (bits < 15) {
439
+ * hold |= *((unsigned short *)in)++ << bits;
440
+ * bits += 16
441
+ * }
442
+ * this = lcode[hold & lmask]
443
+ */
444
+ cmpb $15, bits_r
445
+ ja .L_get_length_code /* if (15 < bits) */
446
+
447
+ xorl %eax, %eax
448
+ lodsw /* al = *(ushort *)in++ */
449
+ movb bits_r, %cl /* cl = bits, needs it for shifting */
450
+ addb $16, bits_r /* bits += 16 */
451
+ shll %cl, %eax
452
+ orl %eax, hold_r /* hold |= *((ushort *)in)++ << bits */
453
+
454
+ .L_get_length_code:
455
+ movl lmask(%esp), %edx /* edx = lmask */
456
+ movl lcode(%esp), %ecx /* ecx = lcode */
457
+ andl hold_r, %edx /* edx &= hold */
458
+ movl (%ecx,%edx,4), %eax /* eax = lcode[hold & lmask] */
459
+
460
+ .L_dolen:
461
+ /* regs: %esi = in, %ebp = hold, %bl = bits, %edi = out
462
+ *
463
+ * dolen:
464
+ * bits -= this.bits;
465
+ * hold >>= this.bits
466
+ */
467
+ movb %ah, %cl /* cl = this.bits */
468
+ subb %ah, bits_r /* bits -= this.bits */
469
+ shrl %cl, hold_r /* hold >>= this.bits */
470
+
471
+ /* check if op is a literal
472
+ * if (op == 0) {
473
+ * PUP(out) = this.val;
474
+ * }
475
+ */
476
+ testb %al, %al
477
+ jnz .L_test_for_length_base /* if (op != 0) 45.7% */
478
+
479
+ shrl $16, %eax /* output this.val char */
480
+ stosb
481
+ jmp .L_while_test
482
+
483
+ .L_test_for_length_base:
484
+ /* regs: %esi = in, %ebp = hold, %bl = bits, %edi = out, %edx = len
485
+ *
486
+ * else if (op & 16) {
487
+ * len = this.val
488
+ * op &= 15
489
+ * if (op) {
490
+ * if (op > bits) {
491
+ * hold |= *((unsigned short *)in)++ << bits;
492
+ * bits += 16
493
+ * }
494
+ * len += hold & mask[op];
495
+ * bits -= op;
496
+ * hold >>= op;
497
+ * }
498
+ */
499
+ #define len_r %edx
500
+ movl %eax, len_r /* len = this */
501
+ shrl $16, len_r /* len = this.val */
502
+ movb %al, %cl
503
+
504
+ testb $16, %al
505
+ jz .L_test_for_second_level_length /* if ((op & 16) == 0) 8% */
506
+ andb $15, %cl /* op &= 15 */
507
+ jz .L_save_len /* if (!op) */
508
+ cmpb %cl, bits_r
509
+ jae .L_add_bits_to_len /* if (op <= bits) */
510
+
511
+ movb %cl, %ch /* stash op in ch, freeing cl */
512
+ xorl %eax, %eax
513
+ lodsw /* al = *(ushort *)in++ */
514
+ movb bits_r, %cl /* cl = bits, needs it for shifting */
515
+ addb $16, bits_r /* bits += 16 */
516
+ shll %cl, %eax
517
+ orl %eax, hold_r /* hold |= *((ushort *)in)++ << bits */
518
+ movb %ch, %cl /* move op back to ecx */
519
+
520
+ .L_add_bits_to_len:
521
+ movl $1, %eax
522
+ shll %cl, %eax
523
+ decl %eax
524
+ subb %cl, bits_r
525
+ andl hold_r, %eax /* eax &= hold */
526
+ shrl %cl, hold_r
527
+ addl %eax, len_r /* len += hold & mask[op] */
528
+
529
+ .L_save_len:
530
+ movl len_r, len(%esp) /* save len */
531
+ #undef len_r
532
+
533
+ .L_decode_distance:
534
+ /* regs: %esi = in, %ebp = hold, %bl = bits, %edi = out, %edx = dist
535
+ *
536
+ * if (bits < 15) {
537
+ * hold |= *((unsigned short *)in)++ << bits;
538
+ * bits += 16
539
+ * }
540
+ * this = dcode[hold & dmask];
541
+ * dodist:
542
+ * bits -= this.bits;
543
+ * hold >>= this.bits;
544
+ * op = this.op;
545
+ */
546
+
547
+ cmpb $15, bits_r
548
+ ja .L_get_distance_code /* if (15 < bits) */
549
+
550
+ xorl %eax, %eax
551
+ lodsw /* al = *(ushort *)in++ */
552
+ movb bits_r, %cl /* cl = bits, needs it for shifting */
553
+ addb $16, bits_r /* bits += 16 */
554
+ shll %cl, %eax
555
+ orl %eax, hold_r /* hold |= *((ushort *)in)++ << bits */
556
+
557
+ .L_get_distance_code:
558
+ movl dmask(%esp), %edx /* edx = dmask */
559
+ movl dcode(%esp), %ecx /* ecx = dcode */
560
+ andl hold_r, %edx /* edx &= hold */
561
+ movl (%ecx,%edx,4), %eax /* eax = dcode[hold & dmask] */
562
+
563
+ #define dist_r %edx
564
+ .L_dodist:
565
+ movl %eax, dist_r /* dist = this */
566
+ shrl $16, dist_r /* dist = this.val */
567
+ movb %ah, %cl
568
+ subb %ah, bits_r /* bits -= this.bits */
569
+ shrl %cl, hold_r /* hold >>= this.bits */
570
+
571
+ /* if (op & 16) {
572
+ * dist = this.val
573
+ * op &= 15
574
+ * if (op > bits) {
575
+ * hold |= *((unsigned short *)in)++ << bits;
576
+ * bits += 16
577
+ * }
578
+ * dist += hold & mask[op];
579
+ * bits -= op;
580
+ * hold >>= op;
581
+ */
582
+ movb %al, %cl /* cl = this.op */
583
+
584
+ testb $16, %al /* if ((op & 16) == 0) */
585
+ jz .L_test_for_second_level_dist
586
+ andb $15, %cl /* op &= 15 */
587
+ jz .L_check_dist_one
588
+ cmpb %cl, bits_r
589
+ jae .L_add_bits_to_dist /* if (op <= bits) 97.6% */
590
+
591
+ movb %cl, %ch /* stash op in ch, freeing cl */
592
+ xorl %eax, %eax
593
+ lodsw /* al = *(ushort *)in++ */
594
+ movb bits_r, %cl /* cl = bits, needs it for shifting */
595
+ addb $16, bits_r /* bits += 16 */
596
+ shll %cl, %eax
597
+ orl %eax, hold_r /* hold |= *((ushort *)in)++ << bits */
598
+ movb %ch, %cl /* move op back to ecx */
599
+
600
+ .L_add_bits_to_dist:
601
+ movl $1, %eax
602
+ shll %cl, %eax
603
+ decl %eax /* (1 << op) - 1 */
604
+ subb %cl, bits_r
605
+ andl hold_r, %eax /* eax &= hold */
606
+ shrl %cl, hold_r
607
+ addl %eax, dist_r /* dist += hold & ((1 << op) - 1) */
608
+ jmp .L_check_window
609
+
610
+ .L_check_window:
611
+ /* regs: %esi = from, %ebp = hold, %bl = bits, %edi = out, %edx = dist
612
+ * %ecx = nbytes
613
+ *
614
+ * nbytes = out - beg;
615
+ * if (dist <= nbytes) {
616
+ * from = out - dist;
617
+ * do {
618
+ * PUP(out) = PUP(from);
619
+ * } while (--len > 0) {
620
+ * }
621
+ */
622
+
623
+ movl in_r, in(%esp) /* save in so from can use it's reg */
624
+ movl out_r, %eax
625
+ subl beg(%esp), %eax /* nbytes = out - beg */
626
+
627
+ cmpl dist_r, %eax
628
+ jb .L_clip_window /* if (dist > nbytes) 4.2% */
629
+
630
+ movl len(%esp), %ecx
631
+ movl out_r, from_r
632
+ subl dist_r, from_r /* from = out - dist */
633
+
634
+ subl $3, %ecx
635
+ movb (from_r), %al
636
+ movb %al, (out_r)
637
+ movb 1(from_r), %al
638
+ movb 2(from_r), %dl
639
+ addl $3, from_r
640
+ movb %al, 1(out_r)
641
+ movb %dl, 2(out_r)
642
+ addl $3, out_r
643
+ rep movsb
644
+
645
+ movl in(%esp), in_r /* move in back to %esi, toss from */
646
+ jmp .L_while_test
647
+
648
+ .align 16,0x90
649
+ .L_check_dist_one:
650
+ cmpl $1, dist_r
651
+ jne .L_check_window
652
+ cmpl out_r, beg(%esp)
653
+ je .L_check_window
654
+
655
+ decl out_r
656
+ movl len(%esp), %ecx
657
+ movb (out_r), %al
658
+ subl $3, %ecx
659
+
660
+ movb %al, 1(out_r)
661
+ movb %al, 2(out_r)
662
+ movb %al, 3(out_r)
663
+ addl $4, out_r
664
+ rep stosb
665
+
666
+ jmp .L_while_test
667
+
668
+ .align 16,0x90
669
+ .L_test_for_second_level_length:
670
+ /* else if ((op & 64) == 0) {
671
+ * this = lcode[this.val + (hold & mask[op])];
672
+ * }
673
+ */
674
+ testb $64, %al
675
+ jnz .L_test_for_end_of_block /* if ((op & 64) != 0) */
676
+
677
+ movl $1, %eax
678
+ shll %cl, %eax
679
+ decl %eax
680
+ andl hold_r, %eax /* eax &= hold */
681
+ addl %edx, %eax /* eax += this.val */
682
+ movl lcode(%esp), %edx /* edx = lcode */
683
+ movl (%edx,%eax,4), %eax /* eax = lcode[val + (hold&mask[op])] */
684
+ jmp .L_dolen
685
+
686
+ .align 16,0x90
687
+ .L_test_for_second_level_dist:
688
+ /* else if ((op & 64) == 0) {
689
+ * this = dcode[this.val + (hold & mask[op])];
690
+ * }
691
+ */
692
+ testb $64, %al
693
+ jnz .L_invalid_distance_code /* if ((op & 64) != 0) */
694
+
695
+ movl $1, %eax
696
+ shll %cl, %eax
697
+ decl %eax
698
+ andl hold_r, %eax /* eax &= hold */
699
+ addl %edx, %eax /* eax += this.val */
700
+ movl dcode(%esp), %edx /* edx = dcode */
701
+ movl (%edx,%eax,4), %eax /* eax = dcode[val + (hold&mask[op])] */
702
+ jmp .L_dodist
703
+
704
+ .align 16,0x90
705
+ .L_clip_window:
706
+ /* regs: %esi = from, %ebp = hold, %bl = bits, %edi = out, %edx = dist
707
+ * %ecx = nbytes
708
+ *
709
+ * else {
710
+ * if (dist > wsize) {
711
+ * invalid distance
712
+ * }
713
+ * from = window;
714
+ * nbytes = dist - nbytes;
715
+ * if (write == 0) {
716
+ * from += wsize - nbytes;
717
+ */
718
+ #define nbytes_r %ecx
719
+ movl %eax, nbytes_r
720
+ movl wsize(%esp), %eax /* prepare for dist compare */
721
+ negl nbytes_r /* nbytes = -nbytes */
722
+ movl window(%esp), from_r /* from = window */
723
+
724
+ cmpl dist_r, %eax
725
+ jb .L_invalid_distance_too_far /* if (dist > wsize) */
726
+
727
+ addl dist_r, nbytes_r /* nbytes = dist - nbytes */
728
+ cmpl $0, write(%esp)
729
+ jne .L_wrap_around_window /* if (write != 0) */
730
+
731
+ subl nbytes_r, %eax
732
+ addl %eax, from_r /* from += wsize - nbytes */
733
+
734
+ /* regs: %esi = from, %ebp = hold, %bl = bits, %edi = out, %edx = dist
735
+ * %ecx = nbytes, %eax = len
736
+ *
737
+ * if (nbytes < len) {
738
+ * len -= nbytes;
739
+ * do {
740
+ * PUP(out) = PUP(from);
741
+ * } while (--nbytes);
742
+ * from = out - dist;
743
+ * }
744
+ * }
745
+ */
746
+ #define len_r %eax
747
+ movl len(%esp), len_r
748
+ cmpl nbytes_r, len_r
749
+ jbe .L_do_copy1 /* if (nbytes >= len) */
750
+
751
+ subl nbytes_r, len_r /* len -= nbytes */
752
+ rep movsb
753
+ movl out_r, from_r
754
+ subl dist_r, from_r /* from = out - dist */
755
+ jmp .L_do_copy1
756
+
757
+ cmpl nbytes_r, len_r
758
+ jbe .L_do_copy1 /* if (nbytes >= len) */
759
+
760
+ subl nbytes_r, len_r /* len -= nbytes */
761
+ rep movsb
762
+ movl out_r, from_r
763
+ subl dist_r, from_r /* from = out - dist */
764
+ jmp .L_do_copy1
765
+
766
+ .L_wrap_around_window:
767
+ /* regs: %esi = from, %ebp = hold, %bl = bits, %edi = out, %edx = dist
768
+ * %ecx = nbytes, %eax = write, %eax = len
769
+ *
770
+ * else if (write < nbytes) {
771
+ * from += wsize + write - nbytes;
772
+ * nbytes -= write;
773
+ * if (nbytes < len) {
774
+ * len -= nbytes;
775
+ * do {
776
+ * PUP(out) = PUP(from);
777
+ * } while (--nbytes);
778
+ * from = window;
779
+ * nbytes = write;
780
+ * if (nbytes < len) {
781
+ * len -= nbytes;
782
+ * do {
783
+ * PUP(out) = PUP(from);
784
+ * } while(--nbytes);
785
+ * from = out - dist;
786
+ * }
787
+ * }
788
+ * }
789
+ */
790
+ #define write_r %eax
791
+ movl write(%esp), write_r
792
+ cmpl write_r, nbytes_r
793
+ jbe .L_contiguous_in_window /* if (write >= nbytes) */
794
+
795
+ addl wsize(%esp), from_r
796
+ addl write_r, from_r
797
+ subl nbytes_r, from_r /* from += wsize + write - nbytes */
798
+ subl write_r, nbytes_r /* nbytes -= write */
799
+ #undef write_r
800
+
801
+ movl len(%esp), len_r
802
+ cmpl nbytes_r, len_r
803
+ jbe .L_do_copy1 /* if (nbytes >= len) */
804
+
805
+ subl nbytes_r, len_r /* len -= nbytes */
806
+ rep movsb
807
+ movl window(%esp), from_r /* from = window */
808
+ movl write(%esp), nbytes_r /* nbytes = write */
809
+ cmpl nbytes_r, len_r
810
+ jbe .L_do_copy1 /* if (nbytes >= len) */
811
+
812
+ subl nbytes_r, len_r /* len -= nbytes */
813
+ rep movsb
814
+ movl out_r, from_r
815
+ subl dist_r, from_r /* from = out - dist */
816
+ jmp .L_do_copy1
817
+
818
+ .L_contiguous_in_window:
819
+ /* regs: %esi = from, %ebp = hold, %bl = bits, %edi = out, %edx = dist
820
+ * %ecx = nbytes, %eax = write, %eax = len
821
+ *
822
+ * else {
823
+ * from += write - nbytes;
824
+ * if (nbytes < len) {
825
+ * len -= nbytes;
826
+ * do {
827
+ * PUP(out) = PUP(from);
828
+ * } while (--nbytes);
829
+ * from = out - dist;
830
+ * }
831
+ * }
832
+ */
833
+ #define write_r %eax
834
+ addl write_r, from_r
835
+ subl nbytes_r, from_r /* from += write - nbytes */
836
+ #undef write_r
837
+
838
+ movl len(%esp), len_r
839
+ cmpl nbytes_r, len_r
840
+ jbe .L_do_copy1 /* if (nbytes >= len) */
841
+
842
+ subl nbytes_r, len_r /* len -= nbytes */
843
+ rep movsb
844
+ movl out_r, from_r
845
+ subl dist_r, from_r /* from = out - dist */
846
+
847
+ .L_do_copy1:
848
+ /* regs: %esi = from, %esi = in, %ebp = hold, %bl = bits, %edi = out
849
+ * %eax = len
850
+ *
851
+ * while (len > 0) {
852
+ * PUP(out) = PUP(from);
853
+ * len--;
854
+ * }
855
+ * }
856
+ * } while (in < last && out < end);
857
+ */
858
+ #undef nbytes_r
859
+ #define in_r %esi
860
+ movl len_r, %ecx
861
+ rep movsb
862
+
863
+ movl in(%esp), in_r /* move in back to %esi, toss from */
864
+ jmp .L_while_test
865
+
866
+ #undef len_r
867
+ #undef dist_r
868
+
869
+ #endif /* NO_MMX || RUN_TIME_MMX */
870
+
871
+
872
+ /*** MMX code ***/
873
+
874
+ #if defined( USE_MMX ) || defined( RUN_TIME_MMX )
875
+
876
+ .align 32,0x90
877
+ .L_init_mmx:
878
+ emms
879
+
880
+ #undef bits_r
881
+ #undef bitslong_r
882
+ #define bitslong_r %ebp
883
+ #define hold_mm %mm0
884
+ movd %ebp, hold_mm
885
+ movl %ebx, bitslong_r
886
+
887
+ #define used_mm %mm1
888
+ #define dmask2_mm %mm2
889
+ #define lmask2_mm %mm3
890
+ #define lmask_mm %mm4
891
+ #define dmask_mm %mm5
892
+ #define tmp_mm %mm6
893
+
894
+ movd lmask(%esp), lmask_mm
895
+ movq lmask_mm, lmask2_mm
896
+ movd dmask(%esp), dmask_mm
897
+ movq dmask_mm, dmask2_mm
898
+ pxor used_mm, used_mm
899
+ movl lcode(%esp), %ebx /* ebx = lcode */
900
+ jmp .L_do_loop_mmx
901
+
902
+ .align 32,0x90
903
+ .L_while_test_mmx:
904
+ /* while (in < last && out < end)
905
+ */
906
+ cmpl out_r, end(%esp)
907
+ jbe .L_break_loop /* if (out >= end) */
908
+
909
+ cmpl in_r, last(%esp)
910
+ jbe .L_break_loop
911
+
912
+ .L_do_loop_mmx:
913
+ psrlq used_mm, hold_mm /* hold_mm >>= last bit length */
914
+
915
+ cmpl $32, bitslong_r
916
+ ja .L_get_length_code_mmx /* if (32 < bits) */
917
+
918
+ movd bitslong_r, tmp_mm
919
+ movd (in_r), %mm7
920
+ addl $4, in_r
921
+ psllq tmp_mm, %mm7
922
+ addl $32, bitslong_r
923
+ por %mm7, hold_mm /* hold_mm |= *((uint *)in)++ << bits */
924
+
925
+ .L_get_length_code_mmx:
926
+ pand hold_mm, lmask_mm
927
+ movd lmask_mm, %eax
928
+ movq lmask2_mm, lmask_mm
929
+ movl (%ebx,%eax,4), %eax /* eax = lcode[hold & lmask] */
930
+
931
+ .L_dolen_mmx:
932
+ movzbl %ah, %ecx /* ecx = this.bits */
933
+ movd %ecx, used_mm
934
+ subl %ecx, bitslong_r /* bits -= this.bits */
935
+
936
+ testb %al, %al
937
+ jnz .L_test_for_length_base_mmx /* if (op != 0) 45.7% */
938
+
939
+ shrl $16, %eax /* output this.val char */
940
+ stosb
941
+ jmp .L_while_test_mmx
942
+
943
+ .L_test_for_length_base_mmx:
944
+ #define len_r %edx
945
+ movl %eax, len_r /* len = this */
946
+ shrl $16, len_r /* len = this.val */
947
+
948
+ testb $16, %al
949
+ jz .L_test_for_second_level_length_mmx /* if ((op & 16) == 0) 8% */
950
+ andl $15, %eax /* op &= 15 */
951
+ jz .L_decode_distance_mmx /* if (!op) */
952
+
953
+ psrlq used_mm, hold_mm /* hold_mm >>= last bit length */
954
+ movd %eax, used_mm
955
+ movd hold_mm, %ecx
956
+ subl %eax, bitslong_r
957
+ andl .L_mask(,%eax,4), %ecx
958
+ addl %ecx, len_r /* len += hold & mask[op] */
959
+
960
+ .L_decode_distance_mmx:
961
+ psrlq used_mm, hold_mm /* hold_mm >>= last bit length */
962
+
963
+ cmpl $32, bitslong_r
964
+ ja .L_get_dist_code_mmx /* if (32 < bits) */
965
+
966
+ movd bitslong_r, tmp_mm
967
+ movd (in_r), %mm7
968
+ addl $4, in_r
969
+ psllq tmp_mm, %mm7
970
+ addl $32, bitslong_r
971
+ por %mm7, hold_mm /* hold_mm |= *((uint *)in)++ << bits */
972
+
973
+ .L_get_dist_code_mmx:
974
+ movl dcode(%esp), %ebx /* ebx = dcode */
975
+ pand hold_mm, dmask_mm
976
+ movd dmask_mm, %eax
977
+ movq dmask2_mm, dmask_mm
978
+ movl (%ebx,%eax,4), %eax /* eax = dcode[hold & lmask] */
979
+
980
+ .L_dodist_mmx:
981
+ #define dist_r %ebx
982
+ movzbl %ah, %ecx /* ecx = this.bits */
983
+ movl %eax, dist_r
984
+ shrl $16, dist_r /* dist = this.val */
985
+ subl %ecx, bitslong_r /* bits -= this.bits */
986
+ movd %ecx, used_mm
987
+
988
+ testb $16, %al /* if ((op & 16) == 0) */
989
+ jz .L_test_for_second_level_dist_mmx
990
+ andl $15, %eax /* op &= 15 */
991
+ jz .L_check_dist_one_mmx
992
+
993
+ .L_add_bits_to_dist_mmx:
994
+ psrlq used_mm, hold_mm /* hold_mm >>= last bit length */
995
+ movd %eax, used_mm /* save bit length of current op */
996
+ movd hold_mm, %ecx /* get the next bits on input stream */
997
+ subl %eax, bitslong_r /* bits -= op bits */
998
+ andl .L_mask(,%eax,4), %ecx /* ecx = hold & mask[op] */
999
+ addl %ecx, dist_r /* dist += hold & mask[op] */
1000
+
1001
+ .L_check_window_mmx:
1002
+ movl in_r, in(%esp) /* save in so from can use it's reg */
1003
+ movl out_r, %eax
1004
+ subl beg(%esp), %eax /* nbytes = out - beg */
1005
+
1006
+ cmpl dist_r, %eax
1007
+ jb .L_clip_window_mmx /* if (dist > nbytes) 4.2% */
1008
+
1009
+ movl len_r, %ecx
1010
+ movl out_r, from_r
1011
+ subl dist_r, from_r /* from = out - dist */
1012
+
1013
+ subl $3, %ecx
1014
+ movb (from_r), %al
1015
+ movb %al, (out_r)
1016
+ movb 1(from_r), %al
1017
+ movb 2(from_r), %dl
1018
+ addl $3, from_r
1019
+ movb %al, 1(out_r)
1020
+ movb %dl, 2(out_r)
1021
+ addl $3, out_r
1022
+ rep movsb
1023
+
1024
+ movl in(%esp), in_r /* move in back to %esi, toss from */
1025
+ movl lcode(%esp), %ebx /* move lcode back to %ebx, toss dist */
1026
+ jmp .L_while_test_mmx
1027
+
1028
+ .align 16,0x90
1029
+ .L_check_dist_one_mmx:
1030
+ cmpl $1, dist_r
1031
+ jne .L_check_window_mmx
1032
+ cmpl out_r, beg(%esp)
1033
+ je .L_check_window_mmx
1034
+
1035
+ decl out_r
1036
+ movl len_r, %ecx
1037
+ movb (out_r), %al
1038
+ subl $3, %ecx
1039
+
1040
+ movb %al, 1(out_r)
1041
+ movb %al, 2(out_r)
1042
+ movb %al, 3(out_r)
1043
+ addl $4, out_r
1044
+ rep stosb
1045
+
1046
+ movl lcode(%esp), %ebx /* move lcode back to %ebx, toss dist */
1047
+ jmp .L_while_test_mmx
1048
+
1049
+ .align 16,0x90
1050
+ .L_test_for_second_level_length_mmx:
1051
+ testb $64, %al
1052
+ jnz .L_test_for_end_of_block /* if ((op & 64) != 0) */
1053
+
1054
+ andl $15, %eax
1055
+ psrlq used_mm, hold_mm /* hold_mm >>= last bit length */
1056
+ movd hold_mm, %ecx
1057
+ andl .L_mask(,%eax,4), %ecx
1058
+ addl len_r, %ecx
1059
+ movl (%ebx,%ecx,4), %eax /* eax = lcode[hold & lmask] */
1060
+ jmp .L_dolen_mmx
1061
+
1062
+ .align 16,0x90
1063
+ .L_test_for_second_level_dist_mmx:
1064
+ testb $64, %al
1065
+ jnz .L_invalid_distance_code /* if ((op & 64) != 0) */
1066
+
1067
+ andl $15, %eax
1068
+ psrlq used_mm, hold_mm /* hold_mm >>= last bit length */
1069
+ movd hold_mm, %ecx
1070
+ andl .L_mask(,%eax,4), %ecx
1071
+ movl dcode(%esp), %eax /* ecx = dcode */
1072
+ addl dist_r, %ecx
1073
+ movl (%eax,%ecx,4), %eax /* eax = lcode[hold & lmask] */
1074
+ jmp .L_dodist_mmx
1075
+
1076
+ .align 16,0x90
1077
+ .L_clip_window_mmx:
1078
+ #define nbytes_r %ecx
1079
+ movl %eax, nbytes_r
1080
+ movl wsize(%esp), %eax /* prepare for dist compare */
1081
+ negl nbytes_r /* nbytes = -nbytes */
1082
+ movl window(%esp), from_r /* from = window */
1083
+
1084
+ cmpl dist_r, %eax
1085
+ jb .L_invalid_distance_too_far /* if (dist > wsize) */
1086
+
1087
+ addl dist_r, nbytes_r /* nbytes = dist - nbytes */
1088
+ cmpl $0, write(%esp)
1089
+ jne .L_wrap_around_window_mmx /* if (write != 0) */
1090
+
1091
+ subl nbytes_r, %eax
1092
+ addl %eax, from_r /* from += wsize - nbytes */
1093
+
1094
+ cmpl nbytes_r, len_r
1095
+ jbe .L_do_copy1_mmx /* if (nbytes >= len) */
1096
+
1097
+ subl nbytes_r, len_r /* len -= nbytes */
1098
+ rep movsb
1099
+ movl out_r, from_r
1100
+ subl dist_r, from_r /* from = out - dist */
1101
+ jmp .L_do_copy1_mmx
1102
+
1103
+ cmpl nbytes_r, len_r
1104
+ jbe .L_do_copy1_mmx /* if (nbytes >= len) */
1105
+
1106
+ subl nbytes_r, len_r /* len -= nbytes */
1107
+ rep movsb
1108
+ movl out_r, from_r
1109
+ subl dist_r, from_r /* from = out - dist */
1110
+ jmp .L_do_copy1_mmx
1111
+
1112
+ .L_wrap_around_window_mmx:
1113
+ #define write_r %eax
1114
+ movl write(%esp), write_r
1115
+ cmpl write_r, nbytes_r
1116
+ jbe .L_contiguous_in_window_mmx /* if (write >= nbytes) */
1117
+
1118
+ addl wsize(%esp), from_r
1119
+ addl write_r, from_r
1120
+ subl nbytes_r, from_r /* from += wsize + write - nbytes */
1121
+ subl write_r, nbytes_r /* nbytes -= write */
1122
+ #undef write_r
1123
+
1124
+ cmpl nbytes_r, len_r
1125
+ jbe .L_do_copy1_mmx /* if (nbytes >= len) */
1126
+
1127
+ subl nbytes_r, len_r /* len -= nbytes */
1128
+ rep movsb
1129
+ movl window(%esp), from_r /* from = window */
1130
+ movl write(%esp), nbytes_r /* nbytes = write */
1131
+ cmpl nbytes_r, len_r
1132
+ jbe .L_do_copy1_mmx /* if (nbytes >= len) */
1133
+
1134
+ subl nbytes_r, len_r /* len -= nbytes */
1135
+ rep movsb
1136
+ movl out_r, from_r
1137
+ subl dist_r, from_r /* from = out - dist */
1138
+ jmp .L_do_copy1_mmx
1139
+
1140
+ .L_contiguous_in_window_mmx:
1141
+ #define write_r %eax
1142
+ addl write_r, from_r
1143
+ subl nbytes_r, from_r /* from += write - nbytes */
1144
+ #undef write_r
1145
+
1146
+ cmpl nbytes_r, len_r
1147
+ jbe .L_do_copy1_mmx /* if (nbytes >= len) */
1148
+
1149
+ subl nbytes_r, len_r /* len -= nbytes */
1150
+ rep movsb
1151
+ movl out_r, from_r
1152
+ subl dist_r, from_r /* from = out - dist */
1153
+
1154
+ .L_do_copy1_mmx:
1155
+ #undef nbytes_r
1156
+ #define in_r %esi
1157
+ movl len_r, %ecx
1158
+ rep movsb
1159
+
1160
+ movl in(%esp), in_r /* move in back to %esi, toss from */
1161
+ movl lcode(%esp), %ebx /* move lcode back to %ebx, toss dist */
1162
+ jmp .L_while_test_mmx
1163
+
1164
+ #undef hold_r
1165
+ #undef bitslong_r
1166
+
1167
+ #endif /* USE_MMX || RUN_TIME_MMX */
1168
+
1169
+
1170
+ /*** USE_MMX, NO_MMX, and RUNTIME_MMX from here on ***/
1171
+
1172
+ .L_invalid_distance_code:
1173
+ /* else {
1174
+ * strm->msg = "invalid distance code";
1175
+ * state->mode = BAD;
1176
+ * }
1177
+ */
1178
+ movl $.L_invalid_distance_code_msg, %ecx
1179
+ movl $INFLATE_MODE_BAD, %edx
1180
+ jmp .L_update_stream_state
1181
+
1182
+ .L_test_for_end_of_block:
1183
+ /* else if (op & 32) {
1184
+ * state->mode = TYPE;
1185
+ * break;
1186
+ * }
1187
+ */
1188
+ testb $32, %al
1189
+ jz .L_invalid_literal_length_code /* if ((op & 32) == 0) */
1190
+
1191
+ movl $0, %ecx
1192
+ movl $INFLATE_MODE_TYPE, %edx
1193
+ jmp .L_update_stream_state
1194
+
1195
+ .L_invalid_literal_length_code:
1196
+ /* else {
1197
+ * strm->msg = "invalid literal/length code";
1198
+ * state->mode = BAD;
1199
+ * }
1200
+ */
1201
+ movl $.L_invalid_literal_length_code_msg, %ecx
1202
+ movl $INFLATE_MODE_BAD, %edx
1203
+ jmp .L_update_stream_state
1204
+
1205
+ .L_invalid_distance_too_far:
1206
+ /* strm->msg = "invalid distance too far back";
1207
+ * state->mode = BAD;
1208
+ */
1209
+ movl in(%esp), in_r /* from_r has in's reg, put in back */
1210
+ movl $.L_invalid_distance_too_far_msg, %ecx
1211
+ movl $INFLATE_MODE_BAD, %edx
1212
+ jmp .L_update_stream_state
1213
+
1214
+ .L_update_stream_state:
1215
+ /* set strm->msg = %ecx, strm->state->mode = %edx */
1216
+ movl strm_sp(%esp), %eax
1217
+ testl %ecx, %ecx /* if (msg != NULL) */
1218
+ jz .L_skip_msg
1219
+ movl %ecx, msg_strm(%eax) /* strm->msg = msg */
1220
+ .L_skip_msg:
1221
+ movl state_strm(%eax), %eax /* state = strm->state */
1222
+ movl %edx, mode_state(%eax) /* state->mode = edx (BAD | TYPE) */
1223
+ jmp .L_break_loop
1224
+
1225
+ .align 32,0x90
1226
+ .L_break_loop:
1227
+
1228
+ /*
1229
+ * Regs:
1230
+ *
1231
+ * bits = %ebp when mmx, and in %ebx when non-mmx
1232
+ * hold = %hold_mm when mmx, and in %ebp when non-mmx
1233
+ * in = %esi
1234
+ * out = %edi
1235
+ */
1236
+
1237
+ #if defined( USE_MMX ) || defined( RUN_TIME_MMX )
1238
+
1239
+ #if defined( RUN_TIME_MMX )
1240
+
1241
+ cmpl $DO_USE_MMX, inflate_fast_use_mmx
1242
+ jne .L_update_next_in
1243
+
1244
+ #endif /* RUN_TIME_MMX */
1245
+
1246
+ movl %ebp, %ebx
1247
+
1248
+ .L_update_next_in:
1249
+
1250
+ #endif
1251
+
1252
+ #define strm_r %eax
1253
+ #define state_r %edx
1254
+
1255
+ /* len = bits >> 3;
1256
+ * in -= len;
1257
+ * bits -= len << 3;
1258
+ * hold &= (1U << bits) - 1;
1259
+ * state->hold = hold;
1260
+ * state->bits = bits;
1261
+ * strm->next_in = in;
1262
+ * strm->next_out = out;
1263
+ */
1264
+ movl strm_sp(%esp), strm_r
1265
+ movl %ebx, %ecx
1266
+ movl state_strm(strm_r), state_r
1267
+ shrl $3, %ecx
1268
+ subl %ecx, in_r
1269
+ shll $3, %ecx
1270
+ subl %ecx, %ebx
1271
+ movl out_r, next_out_strm(strm_r)
1272
+ movl %ebx, bits_state(state_r)
1273
+ movl %ebx, %ecx
1274
+
1275
+ leal buf(%esp), %ebx
1276
+ cmpl %ebx, last(%esp)
1277
+ jne .L_buf_not_used /* if buf != last */
1278
+
1279
+ subl %ebx, in_r /* in -= buf */
1280
+ movl next_in_strm(strm_r), %ebx
1281
+ movl %ebx, last(%esp) /* last = strm->next_in */
1282
+ addl %ebx, in_r /* in += strm->next_in */
1283
+ movl avail_in_strm(strm_r), %ebx
1284
+ subl $11, %ebx
1285
+ addl %ebx, last(%esp) /* last = &strm->next_in[ avail_in - 11 ] */
1286
+
1287
+ .L_buf_not_used:
1288
+ movl in_r, next_in_strm(strm_r)
1289
+
1290
+ movl $1, %ebx
1291
+ shll %cl, %ebx
1292
+ decl %ebx
1293
+
1294
+ #if defined( USE_MMX ) || defined( RUN_TIME_MMX )
1295
+
1296
+ #if defined( RUN_TIME_MMX )
1297
+
1298
+ cmpl $DO_USE_MMX, inflate_fast_use_mmx
1299
+ jne .L_update_hold
1300
+
1301
+ #endif /* RUN_TIME_MMX */
1302
+
1303
+ psrlq used_mm, hold_mm /* hold_mm >>= last bit length */
1304
+ movd hold_mm, %ebp
1305
+
1306
+ emms
1307
+
1308
+ .L_update_hold:
1309
+
1310
+ #endif /* USE_MMX || RUN_TIME_MMX */
1311
+
1312
+ andl %ebx, %ebp
1313
+ movl %ebp, hold_state(state_r)
1314
+
1315
+ #define last_r %ebx
1316
+
1317
+ /* strm->avail_in = in < last ? 11 + (last - in) : 11 - (in - last) */
1318
+ movl last(%esp), last_r
1319
+ cmpl in_r, last_r
1320
+ jbe .L_last_is_smaller /* if (in >= last) */
1321
+
1322
+ subl in_r, last_r /* last -= in */
1323
+ addl $11, last_r /* last += 11 */
1324
+ movl last_r, avail_in_strm(strm_r)
1325
+ jmp .L_fixup_out
1326
+ .L_last_is_smaller:
1327
+ subl last_r, in_r /* in -= last */
1328
+ negl in_r /* in = -in */
1329
+ addl $11, in_r /* in += 11 */
1330
+ movl in_r, avail_in_strm(strm_r)
1331
+
1332
+ #undef last_r
1333
+ #define end_r %ebx
1334
+
1335
+ .L_fixup_out:
1336
+ /* strm->avail_out = out < end ? 257 + (end - out) : 257 - (out - end)*/
1337
+ movl end(%esp), end_r
1338
+ cmpl out_r, end_r
1339
+ jbe .L_end_is_smaller /* if (out >= end) */
1340
+
1341
+ subl out_r, end_r /* end -= out */
1342
+ addl $257, end_r /* end += 257 */
1343
+ movl end_r, avail_out_strm(strm_r)
1344
+ jmp .L_done
1345
+ .L_end_is_smaller:
1346
+ subl end_r, out_r /* out -= end */
1347
+ negl out_r /* out = -out */
1348
+ addl $257, out_r /* out += 257 */
1349
+ movl out_r, avail_out_strm(strm_r)
1350
+
1351
+ #undef end_r
1352
+ #undef strm_r
1353
+ #undef state_r
1354
+
1355
+ .L_done:
1356
+ addl $local_var_size, %esp
1357
+ popf
1358
+ popl %ebx
1359
+ popl %ebp
1360
+ popl %esi
1361
+ popl %edi
1362
+ ret
1363
+
1364
+ #if defined( GAS_ELF )
1365
+ /* elf info */
1366
+ .type inflate_fast,@function
1367
+ .size inflate_fast,.-inflate_fast
1368
+ #endif