curses 1.6.0 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (935) hide show
  1. checksums.yaml +4 -4
  2. data/.devcontainer/Dockerfile +132 -0
  3. data/.devcontainer/devcontainer.json +58 -0
  4. data/.devcontainer/init-firewall.sh +139 -0
  5. data/.github/workflows/gh-pages.yml +4 -4
  6. data/.github/workflows/macos.yml +5 -2
  7. data/.github/workflows/push_gem.yml +7 -2
  8. data/.github/workflows/ubuntu.yml +5 -2
  9. data/.github/workflows/windows.yml +5 -2
  10. data/.gitmodules +3 -3
  11. data/README.md +2 -2
  12. data/curses.gemspec +1 -1
  13. data/ext/curses/extconf.rb +5 -2
  14. data/lib/curses.rb +1 -1
  15. data/vendor/PDCursesMod/.github/workflows/github_actions_build.yml +42 -0
  16. data/vendor/PDCursesMod/.gitignore +47 -0
  17. data/vendor/PDCursesMod/.travis.yml +308 -0
  18. data/vendor/PDCursesMod/CMakeLists.txt +77 -0
  19. data/vendor/PDCursesMod/README.md +60 -0
  20. data/vendor/PDCursesMod/appveyor.yml +300 -0
  21. data/vendor/PDCursesMod/cmake/README.md +71 -0
  22. data/vendor/PDCursesMod/cmake/build_dependencies.cmake +186 -0
  23. data/vendor/PDCursesMod/cmake/build_options.cmake +29 -0
  24. data/vendor/PDCursesMod/cmake/dll_version.cmake +24 -0
  25. data/vendor/PDCursesMod/cmake/gen_config_header.cmake +40 -0
  26. data/vendor/PDCursesMod/cmake/get_version.cmake +17 -0
  27. data/vendor/PDCursesMod/cmake/project_common.cmake +131 -0
  28. data/vendor/PDCursesMod/cmake/sdl2_ttf/CMakeLists.txt +95 -0
  29. data/vendor/PDCursesMod/cmake/version.in.cmake +61 -0
  30. data/vendor/PDCursesMod/cmake/watcom_open_dos16_toolchain.cmake +90 -0
  31. data/vendor/PDCursesMod/cmake/watcom_open_dos32_toolchain.cmake +89 -0
  32. data/vendor/PDCursesMod/cmake/watcom_open_os2v2_toolchain.cmake +88 -0
  33. data/vendor/PDCursesMod/cmake/watcom_open_win32_toolchain.cmake +12 -0
  34. data/vendor/PDCursesMod/common/acs_defs.h +288 -0
  35. data/vendor/PDCursesMod/common/approx.c +163 -0
  36. data/vendor/PDCursesMod/common/beep.c +70 -0
  37. data/vendor/PDCursesMod/common/blink.c +90 -0
  38. data/vendor/PDCursesMod/common/config_curses.c +134 -0
  39. data/vendor/PDCursesMod/common/dos_key.h +59 -0
  40. data/vendor/PDCursesMod/common/dosutil.c +136 -0
  41. data/vendor/PDCursesMod/common/font437.h +386 -0
  42. data/vendor/PDCursesMod/common/icon32.xpm +42 -0
  43. data/vendor/PDCursesMod/common/icon64.xpm +74 -0
  44. data/vendor/PDCursesMod/common/iconbmp.h +24 -0
  45. data/vendor/PDCursesMod/common/libobjs.mif +32 -0
  46. data/vendor/PDCursesMod/common/mouse.c +293 -0
  47. data/vendor/PDCursesMod/common/pdcclip.c +135 -0
  48. data/vendor/PDCursesMod/common/pdccolor.c +223 -0
  49. data/vendor/PDCursesMod/common/pdccolor.h +17 -0
  50. data/vendor/PDCursesMod/common/pdccolor.txt +81 -0
  51. data/vendor/PDCursesMod/common/pdcurses.rc +35 -0
  52. data/vendor/PDCursesMod/common/psf.c +250 -0
  53. data/vendor/PDCursesMod/common/psf.h +13 -0
  54. data/vendor/PDCursesMod/common/psf_wide.h +584 -0
  55. data/vendor/PDCursesMod/common/watcom.mif +224 -0
  56. data/vendor/PDCursesMod/common/winclip.c +151 -0
  57. data/vendor/PDCursesMod/common/xlates.h +142 -0
  58. data/vendor/PDCursesMod/curses.h +1972 -0
  59. data/vendor/PDCursesMod/curspriv.h +295 -0
  60. data/vendor/PDCursesMod/demos/UTF-8-demo.txt +225 -0
  61. data/vendor/PDCursesMod/demos/calendar.c +278 -0
  62. data/vendor/PDCursesMod/demos/curses.priv.h +37 -0
  63. data/vendor/PDCursesMod/demos/dates.txt +2576 -0
  64. data/vendor/PDCursesMod/demos/firework.c +149 -0
  65. data/vendor/PDCursesMod/demos/init_col.c +152 -0
  66. data/vendor/PDCursesMod/demos/mbrot.c +366 -0
  67. data/vendor/PDCursesMod/demos/nctests.mif +299 -0
  68. data/vendor/PDCursesMod/demos/ncurses_cfg.h +100 -0
  69. data/vendor/PDCursesMod/demos/newtest.c +608 -0
  70. data/vendor/PDCursesMod/demos/ozdemo.c +444 -0
  71. data/vendor/PDCursesMod/demos/picsview.c +516 -0
  72. data/vendor/PDCursesMod/demos/ptest.c +315 -0
  73. data/vendor/PDCursesMod/demos/rain.c +161 -0
  74. data/vendor/PDCursesMod/demos/snprintf.c +30 -0
  75. data/vendor/PDCursesMod/demos/speed.c +124 -0
  76. data/vendor/PDCursesMod/demos/test_pan.c +372 -0
  77. data/vendor/PDCursesMod/demos/testcurs.c +1978 -0
  78. data/vendor/PDCursesMod/demos/tui.c +816 -0
  79. data/vendor/PDCursesMod/demos/tui.h +65 -0
  80. data/vendor/PDCursesMod/demos/tuidemo.c +231 -0
  81. data/vendor/PDCursesMod/demos/version.c +66 -0
  82. data/vendor/PDCursesMod/demos/widetest.c +130 -0
  83. data/vendor/PDCursesMod/demos/worm.c +450 -0
  84. data/vendor/PDCursesMod/demos/xmas.c +955 -0
  85. data/vendor/PDCursesMod/docs/HISTORY.md +3850 -0
  86. data/vendor/PDCursesMod/docs/IMPLEMNT.md +321 -0
  87. data/vendor/PDCursesMod/docs/MANUAL.md +3304 -0
  88. data/vendor/PDCursesMod/docs/README.md +51 -0
  89. data/vendor/PDCursesMod/docs/USERS.md +451 -0
  90. data/vendor/PDCursesMod/docs/manext.awk +15 -0
  91. data/vendor/PDCursesMod/docs/mkman.sh +7 -0
  92. data/vendor/PDCursesMod/dos/CMakeLists.txt +54 -0
  93. data/vendor/PDCursesMod/dos/Makefile +85 -0
  94. data/vendor/PDCursesMod/dos/Makefile.bcc +81 -0
  95. data/vendor/PDCursesMod/dos/Makefile.dmc +315 -0
  96. data/vendor/PDCursesMod/dos/Makefile.wcc +44 -0
  97. data/vendor/PDCursesMod/dos/README.md +49 -0
  98. data/vendor/PDCursesMod/dos/pdcclip.c +1 -0
  99. data/vendor/PDCursesMod/dos/pdcdisp.c +164 -0
  100. data/vendor/PDCursesMod/dos/pdcdos.h +173 -0
  101. data/vendor/PDCursesMod/dos/pdcgetsc.c +81 -0
  102. data/vendor/PDCursesMod/dos/pdckbd.c +428 -0
  103. data/vendor/PDCursesMod/dos/pdcscrn.c +707 -0
  104. data/vendor/PDCursesMod/dos/pdcsetsc.c +120 -0
  105. data/vendor/PDCursesMod/dos/pdcutil.c +11 -0
  106. data/vendor/PDCursesMod/dosvga/CMakeLists.txt +54 -0
  107. data/vendor/PDCursesMod/dosvga/Makefile +109 -0
  108. data/vendor/PDCursesMod/dosvga/Makefile.bcc +82 -0
  109. data/vendor/PDCursesMod/dosvga/Makefile.dmc +318 -0
  110. data/vendor/PDCursesMod/dosvga/Makefile.wcc +40 -0
  111. data/vendor/PDCursesMod/dosvga/README.md +58 -0
  112. data/vendor/PDCursesMod/dosvga/cp437.h +184 -0
  113. data/vendor/PDCursesMod/dosvga/font.h +454 -0
  114. data/vendor/PDCursesMod/dosvga/hexize.c +45 -0
  115. data/vendor/PDCursesMod/dosvga/mk_font.c +35 -0
  116. data/vendor/PDCursesMod/dosvga/pdcclip.c +1 -0
  117. data/vendor/PDCursesMod/dosvga/pdcdisp.c +684 -0
  118. data/vendor/PDCursesMod/dosvga/pdcdos.h +201 -0
  119. data/vendor/PDCursesMod/dosvga/pdcgetsc.c +47 -0
  120. data/vendor/PDCursesMod/dosvga/pdckbd.c +484 -0
  121. data/vendor/PDCursesMod/dosvga/pdcscrn.c +1693 -0
  122. data/vendor/PDCursesMod/dosvga/pdcsetsc.c +79 -0
  123. data/vendor/PDCursesMod/dosvga/pdcutil.c +13 -0
  124. data/vendor/PDCursesMod/dosvga/pdcvesa.h +88 -0
  125. data/vendor/PDCursesMod/fb/Makefile +150 -0
  126. data/vendor/PDCursesMod/fb/README.md +52 -0
  127. data/vendor/PDCursesMod/fb/cursor.c +111 -0
  128. data/vendor/PDCursesMod/fb/drm.c +264 -0
  129. data/vendor/PDCursesMod/fb/pdcclip.c +1 -0
  130. data/vendor/PDCursesMod/fb/pdcdisp.c +521 -0
  131. data/vendor/PDCursesMod/fb/pdcfb.h +11 -0
  132. data/vendor/PDCursesMod/fb/pdcgetsc.c +1 -0
  133. data/vendor/PDCursesMod/fb/pdckbd.c +114 -0
  134. data/vendor/PDCursesMod/fb/pdcmouse.c +185 -0
  135. data/vendor/PDCursesMod/fb/pdcscrn.c +539 -0
  136. data/vendor/PDCursesMod/fb/pdcsetsc.c +3 -0
  137. data/vendor/PDCursesMod/fb/pdcutil.c +5 -0
  138. data/vendor/PDCursesMod/gl/CMakeLists.txt +66 -0
  139. data/vendor/PDCursesMod/gl/Makefile +188 -0
  140. data/vendor/PDCursesMod/gl/Makefile.vc +129 -0
  141. data/vendor/PDCursesMod/gl/README.md +134 -0
  142. data/vendor/PDCursesMod/gl/glfuncs.h +159 -0
  143. data/vendor/PDCursesMod/gl/pdcclip.c +93 -0
  144. data/vendor/PDCursesMod/gl/pdcdisp.c +867 -0
  145. data/vendor/PDCursesMod/gl/pdcgetsc.c +30 -0
  146. data/vendor/PDCursesMod/gl/pdcgl.h +51 -0
  147. data/vendor/PDCursesMod/gl/pdckbd.c +548 -0
  148. data/vendor/PDCursesMod/gl/pdcscrn.c +700 -0
  149. data/vendor/PDCursesMod/gl/pdcsetsc.c +99 -0
  150. data/vendor/PDCursesMod/gl/pdcutil.c +35 -0
  151. data/vendor/PDCursesMod/ncurses/CMakeLists.txt +76 -0
  152. data/vendor/PDCursesMod/ncurses/Makefile +38 -0
  153. data/vendor/PDCursesMod/os2/Makefile +150 -0
  154. data/vendor/PDCursesMod/os2/Makefile.bcc +85 -0
  155. data/vendor/PDCursesMod/os2/Makefile.wcc +26 -0
  156. data/vendor/PDCursesMod/os2/iccos2.lrf +49 -0
  157. data/vendor/PDCursesMod/os2/iccos2.mak +260 -0
  158. data/vendor/PDCursesMod/os2/pdcclip.c +172 -0
  159. data/vendor/PDCursesMod/os2/pdcdisp.c +130 -0
  160. data/vendor/PDCursesMod/os2/pdcgetsc.c +52 -0
  161. data/vendor/PDCursesMod/os2/pdckbd.c +435 -0
  162. data/vendor/PDCursesMod/os2/pdcos2.h +21 -0
  163. data/vendor/PDCursesMod/os2/pdcscrn.c +231 -0
  164. data/vendor/PDCursesMod/os2/pdcsetsc.c +110 -0
  165. data/vendor/PDCursesMod/os2/pdcutil.c +51 -0
  166. data/vendor/PDCursesMod/os2gui/.gitignore +1 -0
  167. data/vendor/PDCursesMod/os2gui/CMakeLists.txt +30 -0
  168. data/vendor/PDCursesMod/os2gui/Makefile +139 -0
  169. data/vendor/PDCursesMod/os2gui/Makefile.wcc +32 -0
  170. data/vendor/PDCursesMod/os2gui/README.md +69 -0
  171. data/vendor/PDCursesMod/os2gui/pdcclip.c +165 -0
  172. data/vendor/PDCursesMod/os2gui/pdcdisp.c +2021 -0
  173. data/vendor/PDCursesMod/os2gui/pdcgetsc.c +26 -0
  174. data/vendor/PDCursesMod/os2gui/pdckbd.c +79 -0
  175. data/vendor/PDCursesMod/os2gui/pdcscrn.c +2433 -0
  176. data/vendor/PDCursesMod/os2gui/pdcsetsc.c +115 -0
  177. data/vendor/PDCursesMod/os2gui/pdcutil.c +42 -0
  178. data/vendor/PDCursesMod/os2gui/pdcwin.h +106 -0
  179. data/vendor/PDCursesMod/os2gui/table.py +112 -0
  180. data/vendor/PDCursesMod/os2gui/unitable.h +3933 -0
  181. data/vendor/PDCursesMod/panel.h +41 -0
  182. data/vendor/PDCursesMod/pdcurses/addch.c +838 -0
  183. data/vendor/PDCursesMod/pdcurses/addchstr.c +232 -0
  184. data/vendor/PDCursesMod/pdcurses/addstr.c +245 -0
  185. data/vendor/PDCursesMod/pdcurses/attr.c +430 -0
  186. data/vendor/PDCursesMod/pdcurses/beep.c +78 -0
  187. data/vendor/PDCursesMod/pdcurses/bkgd.c +233 -0
  188. data/vendor/PDCursesMod/pdcurses/border.c +413 -0
  189. data/vendor/PDCursesMod/pdcurses/clear.c +161 -0
  190. data/vendor/PDCursesMod/pdcurses/color.c +761 -0
  191. data/vendor/PDCursesMod/pdcurses/debug.c +157 -0
  192. data/vendor/PDCursesMod/pdcurses/delch.c +96 -0
  193. data/vendor/PDCursesMod/pdcurses/deleteln.c +149 -0
  194. data/vendor/PDCursesMod/pdcurses/getch.c +871 -0
  195. data/vendor/PDCursesMod/pdcurses/getstr.c +487 -0
  196. data/vendor/PDCursesMod/pdcurses/getyx.c +152 -0
  197. data/vendor/PDCursesMod/pdcurses/inch.c +133 -0
  198. data/vendor/PDCursesMod/pdcurses/inchstr.c +217 -0
  199. data/vendor/PDCursesMod/pdcurses/initscr.c +524 -0
  200. data/vendor/PDCursesMod/pdcurses/inopts.c +490 -0
  201. data/vendor/PDCursesMod/pdcurses/insch.c +273 -0
  202. data/vendor/PDCursesMod/pdcurses/insstr.c +268 -0
  203. data/vendor/PDCursesMod/pdcurses/instr.c +253 -0
  204. data/vendor/PDCursesMod/pdcurses/kernel.c +338 -0
  205. data/vendor/PDCursesMod/pdcurses/keyname.c +149 -0
  206. data/vendor/PDCursesMod/pdcurses/mouse.c +469 -0
  207. data/vendor/PDCursesMod/pdcurses/move.c +84 -0
  208. data/vendor/PDCursesMod/pdcurses/outopts.c +283 -0
  209. data/vendor/PDCursesMod/pdcurses/overlay.c +204 -0
  210. data/vendor/PDCursesMod/pdcurses/pad.c +303 -0
  211. data/vendor/PDCursesMod/pdcurses/pairs.txt +94 -0
  212. data/vendor/PDCursesMod/pdcurses/panel.c +551 -0
  213. data/vendor/PDCursesMod/pdcurses/printw.c +180 -0
  214. data/vendor/PDCursesMod/pdcurses/refresh.c +372 -0
  215. data/vendor/PDCursesMod/pdcurses/scanw.c +582 -0
  216. data/vendor/PDCursesMod/pdcurses/scr_dump.c +311 -0
  217. data/vendor/PDCursesMod/pdcurses/scroll.c +115 -0
  218. data/vendor/PDCursesMod/pdcurses/slk.c +660 -0
  219. data/vendor/PDCursesMod/pdcurses/termattr.c +177 -0
  220. data/vendor/PDCursesMod/pdcurses/terminfo.c +243 -0
  221. data/vendor/PDCursesMod/pdcurses/touch.c +255 -0
  222. data/vendor/PDCursesMod/pdcurses/util.c +502 -0
  223. data/vendor/PDCursesMod/pdcurses/window.c +708 -0
  224. data/vendor/PDCursesMod/plan9/README.md +57 -0
  225. data/vendor/PDCursesMod/plan9/header.patch +11 -0
  226. data/vendor/PDCursesMod/plan9/mkfile +103 -0
  227. data/vendor/PDCursesMod/plan9/mkfile_demo +42 -0
  228. data/vendor/PDCursesMod/plan9/pdcclip.c +1 -0
  229. data/vendor/PDCursesMod/plan9/pdcdisp.c +62 -0
  230. data/vendor/PDCursesMod/plan9/pdcgetsc.c +28 -0
  231. data/vendor/PDCursesMod/plan9/pdckbd.c +53 -0
  232. data/vendor/PDCursesMod/plan9/pdcplan9.h +10 -0
  233. data/vendor/PDCursesMod/plan9/pdcscrn.c +103 -0
  234. data/vendor/PDCursesMod/plan9/pdcsetsc.c +51 -0
  235. data/vendor/PDCursesMod/plan9/pdcutil.c +370 -0
  236. data/vendor/PDCursesMod/psffonts/10x20.psf +0 -0
  237. data/vendor/PDCursesMod/psffonts/18x18.psf +0 -0
  238. data/vendor/PDCursesMod/psffonts/4x6.psf +0 -0
  239. data/vendor/PDCursesMod/psffonts/6x12.psf +0 -0
  240. data/vendor/PDCursesMod/psffonts/8x13.psf +0 -0
  241. data/vendor/PDCursesMod/psffonts/9x15.psf +0 -0
  242. data/vendor/PDCursesMod/psffonts/9x18.psf +0 -0
  243. data/vendor/PDCursesMod/psffonts/README +38 -0
  244. data/vendor/PDCursesMod/psffonts/README.md +14 -0
  245. data/vendor/PDCursesMod/psffonts/bmp2psf2.c +130 -0
  246. data/vendor/PDCursesMod/psffonts/cour11x17.psf +0 -0
  247. data/vendor/PDCursesMod/psffonts/cour20x29.psf +0 -0
  248. data/vendor/PDCursesMod/psffonts/default.psf +0 -0
  249. data/vendor/PDCursesMod/psffonts/dosemu.psf +0 -0
  250. data/vendor/PDCursesMod/psffonts/fntcol16/2_hebrew-14.psf +0 -0
  251. data/vendor/PDCursesMod/psffonts/fntcol16/README +285 -0
  252. data/vendor/PDCursesMod/psffonts/fntcol16/antique-14.psf +0 -0
  253. data/vendor/PDCursesMod/psffonts/fntcol16/apeaus-08.psf +0 -0
  254. data/vendor/PDCursesMod/psffonts/fntcol16/apeaus-14.psf +0 -0
  255. data/vendor/PDCursesMod/psffonts/fntcol16/apeaus-16.psf +0 -0
  256. data/vendor/PDCursesMod/psffonts/fntcol16/apls-08.psf +0 -0
  257. data/vendor/PDCursesMod/psffonts/fntcol16/arabdrft-14.psf +0 -0
  258. data/vendor/PDCursesMod/psffonts/fntcol16/arabic-14.psf +0 -0
  259. data/vendor/PDCursesMod/psffonts/fntcol16/arabkufi-14.psf +0 -0
  260. data/vendor/PDCursesMod/psffonts/fntcol16/arabnaf-14.psf +0 -0
  261. data/vendor/PDCursesMod/psffonts/fntcol16/arbnaskh-14.psf +0 -0
  262. data/vendor/PDCursesMod/psffonts/fntcol16/armenian-08.psf +0 -0
  263. data/vendor/PDCursesMod/psffonts/fntcol16/armenian-14.psf +0 -0
  264. data/vendor/PDCursesMod/psffonts/fntcol16/armenian-16.psf +0 -0
  265. data/vendor/PDCursesMod/psffonts/fntcol16/art-16.psf +0 -0
  266. data/vendor/PDCursesMod/psffonts/fntcol16/ascii-14.psf +0 -0
  267. data/vendor/PDCursesMod/psffonts/fntcol16/backward-14.psf +0 -0
  268. data/vendor/PDCursesMod/psffonts/fntcol16/bdeclo-14.psf +0 -0
  269. data/vendor/PDCursesMod/psffonts/fntcol16/bhexall-14.psf +0 -0
  270. data/vendor/PDCursesMod/psffonts/fntcol16/bhexbox-14.psf +0 -0
  271. data/vendor/PDCursesMod/psffonts/fntcol16/bhexhi-14.psf +0 -0
  272. data/vendor/PDCursesMod/psffonts/fntcol16/bhexlo-14.psf +0 -0
  273. data/vendor/PDCursesMod/psffonts/fntcol16/bigserif-14.psf +0 -0
  274. data/vendor/PDCursesMod/psffonts/fntcol16/bigserif-16.psf +0 -0
  275. data/vendor/PDCursesMod/psffonts/fntcol16/bigsf-14.psf +0 -0
  276. data/vendor/PDCursesMod/psffonts/fntcol16/binaryed-14.psf +0 -0
  277. data/vendor/PDCursesMod/psffonts/fntcol16/blcksnsf-10.psf +0 -0
  278. data/vendor/PDCursesMod/psffonts/fntcol16/block-14.psf +0 -0
  279. data/vendor/PDCursesMod/psffonts/fntcol16/bold-14.psf +0 -0
  280. data/vendor/PDCursesMod/psffonts/fntcol16/boxround-14.psf +0 -0
  281. data/vendor/PDCursesMod/psffonts/fntcol16/boxround-16.psf +0 -0
  282. data/vendor/PDCursesMod/psffonts/fntcol16/broadway-14.psf +0 -0
  283. data/vendor/PDCursesMod/psffonts/fntcol16/bthin-14.psf +0 -0
  284. data/vendor/PDCursesMod/psffonts/fntcol16/bway2-14.psf +0 -0
  285. data/vendor/PDCursesMod/psffonts/fntcol16/cafe-10.psf +0 -0
  286. data/vendor/PDCursesMod/psffonts/fntcol16/cafe-12.psf +0 -0
  287. data/vendor/PDCursesMod/psffonts/fntcol16/cntdown-14.psf +0 -0
  288. data/vendor/PDCursesMod/psffonts/fntcol16/cntdown-16.psf +0 -0
  289. data/vendor/PDCursesMod/psffonts/fntcol16/computer-14.psf +0 -0
  290. data/vendor/PDCursesMod/psffonts/fntcol16/copyleft.txt +209 -0
  291. data/vendor/PDCursesMod/psffonts/fntcol16/courier-14.psf +0 -0
  292. data/vendor/PDCursesMod/psffonts/fntcol16/cp111-08.psf +0 -0
  293. data/vendor/PDCursesMod/psffonts/fntcol16/cp111-14.psf +0 -0
  294. data/vendor/PDCursesMod/psffonts/fntcol16/cp111-16.psf +0 -0
  295. data/vendor/PDCursesMod/psffonts/fntcol16/cp111-19.psf +0 -0
  296. data/vendor/PDCursesMod/psffonts/fntcol16/cp112-08.psf +0 -0
  297. data/vendor/PDCursesMod/psffonts/fntcol16/cp112-14.psf +0 -0
  298. data/vendor/PDCursesMod/psffonts/fntcol16/cp112-16.psf +0 -0
  299. data/vendor/PDCursesMod/psffonts/fntcol16/cp112-19.psf +0 -0
  300. data/vendor/PDCursesMod/psffonts/fntcol16/cp113-08.psf +0 -0
  301. data/vendor/PDCursesMod/psffonts/fntcol16/cp113-14.psf +0 -0
  302. data/vendor/PDCursesMod/psffonts/fntcol16/cp113-16.psf +0 -0
  303. data/vendor/PDCursesMod/psffonts/fntcol16/cp113-19.psf +0 -0
  304. data/vendor/PDCursesMod/psffonts/fntcol16/cp437-08.psf +0 -0
  305. data/vendor/PDCursesMod/psffonts/fntcol16/cp437-14.psf +0 -0
  306. data/vendor/PDCursesMod/psffonts/fntcol16/cp437-16.psf +0 -0
  307. data/vendor/PDCursesMod/psffonts/fntcol16/cp437-19.psf +0 -0
  308. data/vendor/PDCursesMod/psffonts/fntcol16/cp437alt-08.psf +0 -0
  309. data/vendor/PDCursesMod/psffonts/fntcol16/cp437bgr-08.psf +0 -0
  310. data/vendor/PDCursesMod/psffonts/fntcol16/cp850-08.psf +0 -0
  311. data/vendor/PDCursesMod/psffonts/fntcol16/cp850-14.psf +0 -0
  312. data/vendor/PDCursesMod/psffonts/fntcol16/cp850-16.psf +0 -0
  313. data/vendor/PDCursesMod/psffonts/fntcol16/cp850-19.psf +0 -0
  314. data/vendor/PDCursesMod/psffonts/fntcol16/cp851-08.psf +0 -0
  315. data/vendor/PDCursesMod/psffonts/fntcol16/cp851-14.psf +0 -0
  316. data/vendor/PDCursesMod/psffonts/fntcol16/cp851-16.psf +0 -0
  317. data/vendor/PDCursesMod/psffonts/fntcol16/cp851-19.psf +0 -0
  318. data/vendor/PDCursesMod/psffonts/fntcol16/cp852-08.psf +0 -0
  319. data/vendor/PDCursesMod/psffonts/fntcol16/cp852-14.psf +0 -0
  320. data/vendor/PDCursesMod/psffonts/fntcol16/cp852-16.psf +0 -0
  321. data/vendor/PDCursesMod/psffonts/fntcol16/cp852-19.psf +0 -0
  322. data/vendor/PDCursesMod/psffonts/fntcol16/cp853-08.psf +0 -0
  323. data/vendor/PDCursesMod/psffonts/fntcol16/cp853-14.psf +0 -0
  324. data/vendor/PDCursesMod/psffonts/fntcol16/cp853-16.psf +0 -0
  325. data/vendor/PDCursesMod/psffonts/fntcol16/cp853-19.psf +0 -0
  326. data/vendor/PDCursesMod/psffonts/fntcol16/cp860-08.psf +0 -0
  327. data/vendor/PDCursesMod/psffonts/fntcol16/cp860-14.psf +0 -0
  328. data/vendor/PDCursesMod/psffonts/fntcol16/cp860-16.psf +0 -0
  329. data/vendor/PDCursesMod/psffonts/fntcol16/cp860-19.psf +0 -0
  330. data/vendor/PDCursesMod/psffonts/fntcol16/cp861-08.psf +0 -0
  331. data/vendor/PDCursesMod/psffonts/fntcol16/cp861-14.psf +0 -0
  332. data/vendor/PDCursesMod/psffonts/fntcol16/cp861-16.psf +0 -0
  333. data/vendor/PDCursesMod/psffonts/fntcol16/cp861-19.psf +0 -0
  334. data/vendor/PDCursesMod/psffonts/fntcol16/cp862-08.psf +0 -0
  335. data/vendor/PDCursesMod/psffonts/fntcol16/cp862-14.psf +0 -0
  336. data/vendor/PDCursesMod/psffonts/fntcol16/cp862-16.psf +0 -0
  337. data/vendor/PDCursesMod/psffonts/fntcol16/cp863-08.psf +0 -0
  338. data/vendor/PDCursesMod/psffonts/fntcol16/cp863-14.psf +0 -0
  339. data/vendor/PDCursesMod/psffonts/fntcol16/cp863-16.psf +0 -0
  340. data/vendor/PDCursesMod/psffonts/fntcol16/cp863-19.psf +0 -0
  341. data/vendor/PDCursesMod/psffonts/fntcol16/cp864-08.psf +0 -0
  342. data/vendor/PDCursesMod/psffonts/fntcol16/cp864-14.psf +0 -0
  343. data/vendor/PDCursesMod/psffonts/fntcol16/cp864-16.psf +0 -0
  344. data/vendor/PDCursesMod/psffonts/fntcol16/cp865-08.psf +0 -0
  345. data/vendor/PDCursesMod/psffonts/fntcol16/cp865-14.psf +0 -0
  346. data/vendor/PDCursesMod/psffonts/fntcol16/cp865-16.psf +0 -0
  347. data/vendor/PDCursesMod/psffonts/fntcol16/cp865-19.psf +0 -0
  348. data/vendor/PDCursesMod/psffonts/fntcol16/cp866-08.psf +0 -0
  349. data/vendor/PDCursesMod/psffonts/fntcol16/cp866-14.psf +0 -0
  350. data/vendor/PDCursesMod/psffonts/fntcol16/cp866-16.psf +0 -0
  351. data/vendor/PDCursesMod/psffonts/fntcol16/cp880-08.psf +0 -0
  352. data/vendor/PDCursesMod/psffonts/fntcol16/cp880-14.psf +0 -0
  353. data/vendor/PDCursesMod/psffonts/fntcol16/cp880-16.psf +0 -0
  354. data/vendor/PDCursesMod/psffonts/fntcol16/cp881-08.psf +0 -0
  355. data/vendor/PDCursesMod/psffonts/fntcol16/cp881-14.psf +0 -0
  356. data/vendor/PDCursesMod/psffonts/fntcol16/cp881-16.psf +0 -0
  357. data/vendor/PDCursesMod/psffonts/fntcol16/cp882-08.psf +0 -0
  358. data/vendor/PDCursesMod/psffonts/fntcol16/cp882-14.psf +0 -0
  359. data/vendor/PDCursesMod/psffonts/fntcol16/cp882-16.psf +0 -0
  360. data/vendor/PDCursesMod/psffonts/fntcol16/cp883-08.psf +0 -0
  361. data/vendor/PDCursesMod/psffonts/fntcol16/cp883-14.psf +0 -0
  362. data/vendor/PDCursesMod/psffonts/fntcol16/cp883-16.psf +0 -0
  363. data/vendor/PDCursesMod/psffonts/fntcol16/cp884-08.psf +0 -0
  364. data/vendor/PDCursesMod/psffonts/fntcol16/cp884-14.psf +0 -0
  365. data/vendor/PDCursesMod/psffonts/fntcol16/cp884-16.psf +0 -0
  366. data/vendor/PDCursesMod/psffonts/fntcol16/cp885-08.psf +0 -0
  367. data/vendor/PDCursesMod/psffonts/fntcol16/cp885-14.psf +0 -0
  368. data/vendor/PDCursesMod/psffonts/fntcol16/cp885-16.psf +0 -0
  369. data/vendor/PDCursesMod/psffonts/fntcol16/cyril2-14.psf +0 -0
  370. data/vendor/PDCursesMod/psffonts/fntcol16/cyril_b-08.psf +0 -0
  371. data/vendor/PDCursesMod/psffonts/fntcol16/cyrill1-08.psf +0 -0
  372. data/vendor/PDCursesMod/psffonts/fntcol16/cyrill1-14.psf +0 -0
  373. data/vendor/PDCursesMod/psffonts/fntcol16/cyrill1-16.psf +0 -0
  374. data/vendor/PDCursesMod/psffonts/fntcol16/cyrill2-08.psf +0 -0
  375. data/vendor/PDCursesMod/psffonts/fntcol16/cyrill2-14.psf +0 -0
  376. data/vendor/PDCursesMod/psffonts/fntcol16/cyrill2-16.psf +0 -0
  377. data/vendor/PDCursesMod/psffonts/fntcol16/cyrill3-08.psf +0 -0
  378. data/vendor/PDCursesMod/psffonts/fntcol16/cyrill3-14.psf +0 -0
  379. data/vendor/PDCursesMod/psffonts/fntcol16/cyrill3-16.psf +0 -0
  380. data/vendor/PDCursesMod/psffonts/fntcol16/cyrillic-14.psf +0 -0
  381. data/vendor/PDCursesMod/psffonts/fntcol16/decorate-16.psf +0 -0
  382. data/vendor/PDCursesMod/psffonts/fntcol16/draw-14.psf +0 -0
  383. data/vendor/PDCursesMod/psffonts/fntcol16/drawhi-14.psf +0 -0
  384. data/vendor/PDCursesMod/psffonts/fntcol16/europe-14.psf +0 -0
  385. data/vendor/PDCursesMod/psffonts/fntcol16/evga-alt-08.psf +0 -0
  386. data/vendor/PDCursesMod/psffonts/fntcol16/evga-alt-09.psf +0 -0
  387. data/vendor/PDCursesMod/psffonts/fntcol16/evga-alt-10.psf +0 -0
  388. data/vendor/PDCursesMod/psffonts/fntcol16/evga-alt-11.psf +0 -0
  389. data/vendor/PDCursesMod/psffonts/fntcol16/evga-alt-12.psf +0 -0
  390. data/vendor/PDCursesMod/psffonts/fntcol16/evga-alt-13.psf +0 -0
  391. data/vendor/PDCursesMod/psffonts/fntcol16/farsi-14.psf +0 -0
  392. data/vendor/PDCursesMod/psffonts/fntcol16/finnish-14.psf +0 -0
  393. data/vendor/PDCursesMod/psffonts/fntcol16/fontorig.txt +308 -0
  394. data/vendor/PDCursesMod/psffonts/fntcol16/fractur-14.psf +0 -0
  395. data/vendor/PDCursesMod/psffonts/fntcol16/future-14.psf +0 -0
  396. data/vendor/PDCursesMod/psffonts/fntcol16/gaelic-14.psf +0 -0
  397. data/vendor/PDCursesMod/psffonts/fntcol16/gaelic1-14.psf +0 -0
  398. data/vendor/PDCursesMod/psffonts/fntcol16/georgian-14.psf +0 -0
  399. data/vendor/PDCursesMod/psffonts/fntcol16/grckssrf-08.psf +0 -0
  400. data/vendor/PDCursesMod/psffonts/fntcol16/grckssrf-14.psf +0 -0
  401. data/vendor/PDCursesMod/psffonts/fntcol16/grckssrf-16.psf +0 -0
  402. data/vendor/PDCursesMod/psffonts/fntcol16/greek-06.psf +0 -0
  403. data/vendor/PDCursesMod/psffonts/fntcol16/greek-07.psf +0 -0
  404. data/vendor/PDCursesMod/psffonts/fntcol16/greek-08.psf +0 -0
  405. data/vendor/PDCursesMod/psffonts/fntcol16/greek-14.psf +0 -0
  406. data/vendor/PDCursesMod/psffonts/fntcol16/greek-16.psf +0 -0
  407. data/vendor/PDCursesMod/psffonts/fntcol16/greek1-14.psf +0 -0
  408. data/vendor/PDCursesMod/psffonts/fntcol16/greek2-14.psf +0 -0
  409. data/vendor/PDCursesMod/psffonts/fntcol16/hack4th-16.psf +0 -0
  410. data/vendor/PDCursesMod/psffonts/fntcol16/handugly-16.psf +0 -0
  411. data/vendor/PDCursesMod/psffonts/fntcol16/handwrit-14.psf +0 -0
  412. data/vendor/PDCursesMod/psffonts/fntcol16/handwrit-16.psf +0 -0
  413. data/vendor/PDCursesMod/psffonts/fntcol16/heb-7bit-16.psf +0 -0
  414. data/vendor/PDCursesMod/psffonts/fntcol16/heb-big-14.psf +0 -0
  415. data/vendor/PDCursesMod/psffonts/fntcol16/heb-bold-16.psf +0 -0
  416. data/vendor/PDCursesMod/psffonts/fntcol16/heb-ktab-14.psf +0 -0
  417. data/vendor/PDCursesMod/psffonts/fntcol16/heb-med-14.psf +0 -0
  418. data/vendor/PDCursesMod/psffonts/fntcol16/heb-snsf-14.psf +0 -0
  419. data/vendor/PDCursesMod/psffonts/fntcol16/hebboldk-16.psf +0 -0
  420. data/vendor/PDCursesMod/psffonts/fntcol16/hebclrgf-14.psf +0 -0
  421. data/vendor/PDCursesMod/psffonts/fntcol16/hebktav1-16.psf +0 -0
  422. data/vendor/PDCursesMod/psffonts/fntcol16/hebktav2-16.psf +0 -0
  423. data/vendor/PDCursesMod/psffonts/fntcol16/heblarge-14.psf +0 -0
  424. data/vendor/PDCursesMod/psffonts/fntcol16/heblarge-16.psf +0 -0
  425. data/vendor/PDCursesMod/psffonts/fntcol16/hebrew-14.psf +0 -0
  426. data/vendor/PDCursesMod/psffonts/fntcol16/hebugly-16.psf +0 -0
  427. data/vendor/PDCursesMod/psffonts/fntcol16/hebyogi-16.psf +0 -0
  428. data/vendor/PDCursesMod/psffonts/fntcol16/hercital-08.psf +0 -0
  429. data/vendor/PDCursesMod/psffonts/fntcol16/hercules-08.psf +0 -0
  430. data/vendor/PDCursesMod/psffonts/fntcol16/hercules-10.psf +0 -0
  431. data/vendor/PDCursesMod/psffonts/fntcol16/hercules-14.psf +0 -0
  432. data/vendor/PDCursesMod/psffonts/fntcol16/history.txt +45 -0
  433. data/vendor/PDCursesMod/psffonts/fntcol16/hollow-14.psf +0 -0
  434. data/vendor/PDCursesMod/psffonts/fntcol16/hrkgreek-14.psf +0 -0
  435. data/vendor/PDCursesMod/psffonts/fntcol16/hylas-14.psf +0 -0
  436. data/vendor/PDCursesMod/psffonts/fntcol16/icons-14.psf +0 -0
  437. data/vendor/PDCursesMod/psffonts/fntcol16/inverted-14.psf +0 -0
  438. data/vendor/PDCursesMod/psffonts/fntcol16/iso-14.psf +0 -0
  439. data/vendor/PDCursesMod/psffonts/fntcol16/iso2-14.psf +0 -0
  440. data/vendor/PDCursesMod/psffonts/fntcol16/iso3-14.psf +0 -0
  441. data/vendor/PDCursesMod/psffonts/fntcol16/iso4-14.psf +0 -0
  442. data/vendor/PDCursesMod/psffonts/fntcol16/italics-14.psf +0 -0
  443. data/vendor/PDCursesMod/psffonts/fntcol16/kana-14.psf +0 -0
  444. data/vendor/PDCursesMod/psffonts/fntcol16/kana-16.psf +0 -0
  445. data/vendor/PDCursesMod/psffonts/fntcol16/lb_large-16.psf +0 -0
  446. data/vendor/PDCursesMod/psffonts/fntcol16/lb_misc-14.psf +0 -0
  447. data/vendor/PDCursesMod/psffonts/fntcol16/lb_ocr-14.psf +0 -0
  448. data/vendor/PDCursesMod/psffonts/fntcol16/lb_ocr-16.psf +0 -0
  449. data/vendor/PDCursesMod/psffonts/fntcol16/lbarabic-14.psf +0 -0
  450. data/vendor/PDCursesMod/psffonts/fntcol16/lbitalic-14.psf +0 -0
  451. data/vendor/PDCursesMod/psffonts/fntcol16/lbitalic-16.psf +0 -0
  452. data/vendor/PDCursesMod/psffonts/fntcol16/lbscript-14.psf +0 -0
  453. data/vendor/PDCursesMod/psffonts/fntcol16/lcd-14.psf +0 -0
  454. data/vendor/PDCursesMod/psffonts/fntcol16/mac-08.psf +0 -0
  455. data/vendor/PDCursesMod/psffonts/fntcol16/macntosh-14.psf +0 -0
  456. data/vendor/PDCursesMod/psffonts/fntcol16/macntosh-16.psf +0 -0
  457. data/vendor/PDCursesMod/psffonts/fntcol16/madrid-10.psf +0 -0
  458. data/vendor/PDCursesMod/psffonts/fntcol16/medieval-14.psf +0 -0
  459. data/vendor/PDCursesMod/psffonts/fntcol16/modern-16.psf +0 -0
  460. data/vendor/PDCursesMod/psffonts/fntcol16/norway-14.psf +0 -0
  461. data/vendor/PDCursesMod/psffonts/fntcol16/norway2-14.psf +0 -0
  462. data/vendor/PDCursesMod/psffonts/fntcol16/old-engl-14.psf +0 -0
  463. data/vendor/PDCursesMod/psffonts/fntcol16/old-engl-16.psf +0 -0
  464. data/vendor/PDCursesMod/psffonts/fntcol16/oldeng-14.psf +0 -0
  465. data/vendor/PDCursesMod/psffonts/fntcol16/oldeng-f-16.psf +0 -0
  466. data/vendor/PDCursesMod/psffonts/fntcol16/pc_6-14.psf +0 -0
  467. data/vendor/PDCursesMod/psffonts/fntcol16/pc_7-14.psf +0 -0
  468. data/vendor/PDCursesMod/psffonts/fntcol16/persian-14.psf +0 -0
  469. data/vendor/PDCursesMod/psffonts/fntcol16/persian-16.psf +0 -0
  470. data/vendor/PDCursesMod/psffonts/fntcol16/police-16.psf +0 -0
  471. data/vendor/PDCursesMod/psffonts/fntcol16/polish-14.psf +0 -0
  472. data/vendor/PDCursesMod/psffonts/fntcol16/polish1-14.psf +0 -0
  473. data/vendor/PDCursesMod/psffonts/fntcol16/pp_roman-16.psf +0 -0
  474. data/vendor/PDCursesMod/psffonts/fntcol16/pp_sser-16.psf +0 -0
  475. data/vendor/PDCursesMod/psffonts/fntcol16/readabl7-16.psf +0 -0
  476. data/vendor/PDCursesMod/psffonts/fntcol16/readabl8-16.psf +0 -0
  477. data/vendor/PDCursesMod/psffonts/fntcol16/readable-08.psf +0 -0
  478. data/vendor/PDCursesMod/psffonts/fntcol16/readable-10.psf +0 -0
  479. data/vendor/PDCursesMod/psffonts/fntcol16/reverse-14.psf +0 -0
  480. data/vendor/PDCursesMod/psffonts/fntcol16/rimrock-10.psf +0 -0
  481. data/vendor/PDCursesMod/psffonts/fntcol16/rmrkbold-14.psf +0 -0
  482. data/vendor/PDCursesMod/psffonts/fntcol16/rom8pix-08.psf +0 -0
  483. data/vendor/PDCursesMod/psffonts/fntcol16/roman-14.psf +0 -0
  484. data/vendor/PDCursesMod/psffonts/fntcol16/roman-16.psf +0 -0
  485. data/vendor/PDCursesMod/psffonts/fntcol16/runic-14.psf +0 -0
  486. data/vendor/PDCursesMod/psffonts/fntcol16/russian-08.psf +0 -0
  487. data/vendor/PDCursesMod/psffonts/fntcol16/russian-14.psf +0 -0
  488. data/vendor/PDCursesMod/psffonts/fntcol16/russian-16.psf +0 -0
  489. data/vendor/PDCursesMod/psffonts/fntcol16/russian1-14.psf +0 -0
  490. data/vendor/PDCursesMod/psffonts/fntcol16/sanserif-14.psf +0 -0
  491. data/vendor/PDCursesMod/psffonts/fntcol16/sanserif-16.psf +0 -0
  492. data/vendor/PDCursesMod/psffonts/fntcol16/script-14.psf +0 -0
  493. data/vendor/PDCursesMod/psffonts/fntcol16/scrwl----16.psf +0 -0
  494. data/vendor/PDCursesMod/psffonts/fntcol16/scrwl~~~-16.psf +0 -0
  495. data/vendor/PDCursesMod/psffonts/fntcol16/security-14.psf +0 -0
  496. data/vendor/PDCursesMod/psffonts/fntcol16/side-10.psf +0 -0
  497. data/vendor/PDCursesMod/psffonts/fntcol16/slant-14.psf +0 -0
  498. data/vendor/PDCursesMod/psffonts/fntcol16/smalcaps-14.psf +0 -0
  499. data/vendor/PDCursesMod/psffonts/fntcol16/smcapnum-14.psf +0 -0
  500. data/vendor/PDCursesMod/psffonts/fntcol16/spranto-14.psf +0 -0
  501. data/vendor/PDCursesMod/psffonts/fntcol16/spranto1-16.psf +0 -0
  502. data/vendor/PDCursesMod/psffonts/fntcol16/spranto2-16.psf +0 -0
  503. data/vendor/PDCursesMod/psffonts/fntcol16/square-12.psf +0 -0
  504. data/vendor/PDCursesMod/psffonts/fntcol16/standard-14.psf +0 -0
  505. data/vendor/PDCursesMod/psffonts/fntcol16/standard-16.psf +0 -0
  506. data/vendor/PDCursesMod/psffonts/fntcol16/stretch-14.psf +0 -0
  507. data/vendor/PDCursesMod/psffonts/fntcol16/subsup-16.psf +0 -0
  508. data/vendor/PDCursesMod/psffonts/fntcol16/super-16.psf +0 -0
  509. data/vendor/PDCursesMod/psffonts/fntcol16/swiss-16.psf +0 -0
  510. data/vendor/PDCursesMod/psffonts/fntcol16/swiss-av-16.psf +0 -0
  511. data/vendor/PDCursesMod/psffonts/fntcol16/swissav2-16.psf +0 -0
  512. data/vendor/PDCursesMod/psffonts/fntcol16/swissbox-16.psf +0 -0
  513. data/vendor/PDCursesMod/psffonts/fntcol16/swissbx2-16.psf +0 -0
  514. data/vendor/PDCursesMod/psffonts/fntcol16/tex-math-14.psf +0 -0
  515. data/vendor/PDCursesMod/psffonts/fntcol16/tex-math-16.psf +0 -0
  516. data/vendor/PDCursesMod/psffonts/fntcol16/thai-14.psf +0 -0
  517. data/vendor/PDCursesMod/psffonts/fntcol16/thin_ss-08.psf +0 -0
  518. data/vendor/PDCursesMod/psffonts/fntcol16/thin_ss-14.psf +0 -0
  519. data/vendor/PDCursesMod/psffonts/fntcol16/thin_ss-16.psf +0 -0
  520. data/vendor/PDCursesMod/psffonts/fntcol16/thinasci-07.psf +0 -0
  521. data/vendor/PDCursesMod/psffonts/fntcol16/thincaps-14.psf +0 -0
  522. data/vendor/PDCursesMod/psffonts/fntcol16/thindemo-14.psf +0 -0
  523. data/vendor/PDCursesMod/psffonts/fntcol16/thinscrp-14.psf +0 -0
  524. data/vendor/PDCursesMod/psffonts/fntcol16/turkish-14.psf +0 -0
  525. data/vendor/PDCursesMod/psffonts/fntcol16/urdu-14.psf +0 -0
  526. data/vendor/PDCursesMod/psffonts/fntcol16/vga-rom-08.psf +0 -0
  527. data/vendor/PDCursesMod/psffonts/fntcol16/vga-rom-14.psf +0 -0
  528. data/vendor/PDCursesMod/psffonts/fntcol16/vga-rom-16.psf +0 -0
  529. data/vendor/PDCursesMod/psffonts/fntcol16/voynich-16.psf +0 -0
  530. data/vendor/PDCursesMod/psffonts/fntcol16/wiggly-16.psf +0 -0
  531. data/vendor/PDCursesMod/psffonts/fntcol16/yugosla-14.psf +0 -0
  532. data/vendor/PDCursesMod/psffonts/lc12x20.psf +0 -0
  533. data/vendor/PDCursesMod/psffonts/makefile +2 -0
  534. data/vendor/PDCursesMod/psffonts/mappings/8859-3.TXT +285 -0
  535. data/vendor/PDCursesMod/psffonts/mappings/APL-ISO-IR-68.TXT +273 -0
  536. data/vendor/PDCursesMod/psffonts/mappings/ATARIST.TXT +320 -0
  537. data/vendor/PDCursesMod/psffonts/mappings/CP1006.TXT +302 -0
  538. data/vendor/PDCursesMod/psffonts/mappings/CP1250.TXT +274 -0
  539. data/vendor/PDCursesMod/psffonts/mappings/CP1251.TXT +274 -0
  540. data/vendor/PDCursesMod/psffonts/mappings/CP1252.TXT +274 -0
  541. data/vendor/PDCursesMod/psffonts/mappings/CP1253.TXT +274 -0
  542. data/vendor/PDCursesMod/psffonts/mappings/CP1254.TXT +274 -0
  543. data/vendor/PDCursesMod/psffonts/mappings/CP1255.TXT +274 -0
  544. data/vendor/PDCursesMod/psffonts/mappings/CP1256.TXT +274 -0
  545. data/vendor/PDCursesMod/psffonts/mappings/CP1257.TXT +274 -0
  546. data/vendor/PDCursesMod/psffonts/mappings/CP1258.TXT +274 -0
  547. data/vendor/PDCursesMod/psffonts/mappings/CP424.TXT +304 -0
  548. data/vendor/PDCursesMod/psffonts/mappings/CP437.TXT +274 -0
  549. data/vendor/PDCursesMod/psffonts/mappings/CP737.TXT +274 -0
  550. data/vendor/PDCursesMod/psffonts/mappings/CP775.TXT +275 -0
  551. data/vendor/PDCursesMod/psffonts/mappings/CP850.TXT +274 -0
  552. data/vendor/PDCursesMod/psffonts/mappings/CP851.TXT +276 -0
  553. data/vendor/PDCursesMod/psffonts/mappings/CP852.TXT +274 -0
  554. data/vendor/PDCursesMod/psffonts/mappings/CP855.TXT +275 -0
  555. data/vendor/PDCursesMod/psffonts/mappings/CP856.TXT +303 -0
  556. data/vendor/PDCursesMod/psffonts/mappings/CP857.TXT +275 -0
  557. data/vendor/PDCursesMod/psffonts/mappings/CP860.TXT +275 -0
  558. data/vendor/PDCursesMod/psffonts/mappings/CP861.TXT +275 -0
  559. data/vendor/PDCursesMod/psffonts/mappings/CP862.TXT +275 -0
  560. data/vendor/PDCursesMod/psffonts/mappings/CP863.TXT +275 -0
  561. data/vendor/PDCursesMod/psffonts/mappings/CP864.TXT +275 -0
  562. data/vendor/PDCursesMod/psffonts/mappings/CP865.TXT +275 -0
  563. data/vendor/PDCursesMod/psffonts/mappings/CP866.TXT +275 -0
  564. data/vendor/PDCursesMod/psffonts/mappings/CP869.TXT +275 -0
  565. data/vendor/PDCursesMod/psffonts/mappings/CP874.TXT +274 -0
  566. data/vendor/PDCursesMod/psffonts/mappings/CP932.TXT +7998 -0
  567. data/vendor/PDCursesMod/psffonts/mappings/CP936.TXT +22065 -0
  568. data/vendor/PDCursesMod/psffonts/mappings/CP949.TXT +17322 -0
  569. data/vendor/PDCursesMod/psffonts/mappings/CP950.TXT +13777 -0
  570. data/vendor/PDCursesMod/psffonts/mappings/IBMGRAPH.TXT +99 -0
  571. data/vendor/PDCursesMod/psffonts/mappings/KOI8-R.TXT +294 -0
  572. data/vendor/PDCursesMod/psffonts/mappings/KOI8-U.TXT +301 -0
  573. data/vendor/PDCursesMod/psffonts/mappings/KPS9566.TXT +17166 -0
  574. data/vendor/PDCursesMod/psffonts/mappings/KZ1048.TXT +294 -0
  575. data/vendor/PDCursesMod/psffonts/mappings/ReadMe.txt +20 -0
  576. data/vendor/PDCursesMod/psffonts/mappings/SGML.TXT +1041 -0
  577. data/vendor/PDCursesMod/psffonts/medieval2.psf +0 -0
  578. data/vendor/PDCursesMod/psffonts/vga11x19.psf +0 -0
  579. data/vendor/PDCursesMod/sdl1/Makefile +140 -0
  580. data/vendor/PDCursesMod/sdl1/README.md +200 -0
  581. data/vendor/PDCursesMod/sdl1/pdcclip.c +1 -0
  582. data/vendor/PDCursesMod/sdl1/pdcdisp.c +462 -0
  583. data/vendor/PDCursesMod/sdl1/pdcgetsc.c +30 -0
  584. data/vendor/PDCursesMod/sdl1/pdckbd.c +417 -0
  585. data/vendor/PDCursesMod/sdl1/pdcscrn.c +396 -0
  586. data/vendor/PDCursesMod/sdl1/pdcsdl.h +34 -0
  587. data/vendor/PDCursesMod/sdl1/pdcsetsc.c +99 -0
  588. data/vendor/PDCursesMod/sdl1/pdcutil.c +34 -0
  589. data/vendor/PDCursesMod/sdl1/sdltest.c +79 -0
  590. data/vendor/PDCursesMod/sdl2/CMakeLists.txt +76 -0
  591. data/vendor/PDCursesMod/sdl2/Makefile +207 -0
  592. data/vendor/PDCursesMod/sdl2/Makefile.vc +132 -0
  593. data/vendor/PDCursesMod/sdl2/README.md +215 -0
  594. data/vendor/PDCursesMod/sdl2/pdcclip.c +93 -0
  595. data/vendor/PDCursesMod/sdl2/pdcdisp.c +536 -0
  596. data/vendor/PDCursesMod/sdl2/pdcgetsc.c +30 -0
  597. data/vendor/PDCursesMod/sdl2/pdckbd.c +540 -0
  598. data/vendor/PDCursesMod/sdl2/pdcscrn.c +529 -0
  599. data/vendor/PDCursesMod/sdl2/pdcsdl.h +46 -0
  600. data/vendor/PDCursesMod/sdl2/pdcsetsc.c +99 -0
  601. data/vendor/PDCursesMod/sdl2/pdcutil.c +35 -0
  602. data/vendor/PDCursesMod/sdl2/sdltest.c +91 -0
  603. data/vendor/PDCursesMod/sdl2/versions.mif +2 -0
  604. data/vendor/PDCursesMod/term.h +48 -0
  605. data/vendor/PDCursesMod/tests/README.md +16 -0
  606. data/vendor/PDCursesMod/tests/brk_test.c +42 -0
  607. data/vendor/PDCursesMod/tests/del_test.c +95 -0
  608. data/vendor/PDCursesMod/tests/focus.c +53 -0
  609. data/vendor/PDCursesMod/tests/ins_del.c +108 -0
  610. data/vendor/PDCursesMod/tests/keytest.c +87 -0
  611. data/vendor/PDCursesMod/tests/naptest.c +43 -0
  612. data/vendor/PDCursesMod/tests/opaque.c +42 -0
  613. data/vendor/PDCursesMod/tests/restart.c +60 -0
  614. data/vendor/PDCursesMod/tests/ripoff.c +141 -0
  615. data/vendor/PDCursesMod/tests/show_col.c +55 -0
  616. data/vendor/PDCursesMod/tests/show_uni.c +163 -0
  617. data/vendor/PDCursesMod/tests/vt0.c +472 -0
  618. data/vendor/PDCursesMod/vt/CMakeLists.txt +35 -0
  619. data/vendor/PDCursesMod/vt/Makefile +204 -0
  620. data/vendor/PDCursesMod/vt/Makefile.bcc +101 -0
  621. data/vendor/PDCursesMod/vt/Makefile.dmc +313 -0
  622. data/vendor/PDCursesMod/vt/Makefile.vc +145 -0
  623. data/vendor/PDCursesMod/vt/Makefile.wcc +48 -0
  624. data/vendor/PDCursesMod/vt/README.md +82 -0
  625. data/vendor/PDCursesMod/vt/pdcclip.c +8 -0
  626. data/vendor/PDCursesMod/vt/pdcdisp.c +424 -0
  627. data/vendor/PDCursesMod/vt/pdckbd.c +603 -0
  628. data/vendor/PDCursesMod/vt/pdcscrn.c +492 -0
  629. data/vendor/PDCursesMod/vt/pdcsetsc.c +158 -0
  630. data/vendor/PDCursesMod/vt/pdcutil.c +85 -0
  631. data/vendor/PDCursesMod/vt/pdcvt.h +25 -0
  632. data/vendor/PDCursesMod/wincon/CMakeLists.txt +29 -0
  633. data/vendor/PDCursesMod/wincon/Makefile +190 -0
  634. data/vendor/PDCursesMod/wincon/Makefile.bcc +87 -0
  635. data/vendor/PDCursesMod/wincon/Makefile.dmc +275 -0
  636. data/vendor/PDCursesMod/wincon/Makefile.vc +132 -0
  637. data/vendor/PDCursesMod/wincon/Makefile.wcc +33 -0
  638. data/vendor/PDCursesMod/wincon/README.md +76 -0
  639. data/vendor/PDCursesMod/wincon/pdcclip.c +6 -0
  640. data/vendor/PDCursesMod/wincon/pdcdisp.c +408 -0
  641. data/vendor/PDCursesMod/wincon/pdcgetsc.c +42 -0
  642. data/vendor/PDCursesMod/wincon/pdckbd.c +778 -0
  643. data/vendor/PDCursesMod/wincon/pdcscrn.c +733 -0
  644. data/vendor/PDCursesMod/wincon/pdcsetsc.c +130 -0
  645. data/vendor/PDCursesMod/wincon/pdcutil.c +38 -0
  646. data/vendor/PDCursesMod/wincon/pdcwin.h +35 -0
  647. data/vendor/PDCursesMod/wingui/CMakeLists.txt +30 -0
  648. data/vendor/PDCursesMod/wingui/Makefile +186 -0
  649. data/vendor/PDCursesMod/wingui/Makefile.bcc +80 -0
  650. data/vendor/PDCursesMod/wingui/Makefile.dmc +314 -0
  651. data/vendor/PDCursesMod/wingui/Makefile.vc +144 -0
  652. data/vendor/PDCursesMod/wingui/Makefile.wcc +32 -0
  653. data/vendor/PDCursesMod/wingui/README.md +92 -0
  654. data/vendor/PDCursesMod/wingui/pdcclip.c +6 -0
  655. data/vendor/PDCursesMod/wingui/pdcdisp.c +576 -0
  656. data/vendor/PDCursesMod/wingui/pdckbd.c +89 -0
  657. data/vendor/PDCursesMod/wingui/pdcscrn.c +2235 -0
  658. data/vendor/PDCursesMod/wingui/pdcsetsc.c +124 -0
  659. data/vendor/PDCursesMod/wingui/pdcutil.c +44 -0
  660. data/vendor/PDCursesMod/wingui/pdcwin.h +85 -0
  661. data/vendor/PDCursesMod/x11/Makefile.in +1047 -0
  662. data/vendor/PDCursesMod/x11/README.md +227 -0
  663. data/vendor/PDCursesMod/x11/aclocal.m4 +553 -0
  664. data/vendor/PDCursesMod/x11/config.guess +1774 -0
  665. data/vendor/PDCursesMod/x11/config.h.in +37 -0
  666. data/vendor/PDCursesMod/x11/config.sub +1907 -0
  667. data/vendor/PDCursesMod/x11/configure +5944 -0
  668. data/vendor/PDCursesMod/x11/configure.ac +175 -0
  669. data/vendor/PDCursesMod/x11/pdcclip.c +254 -0
  670. data/vendor/PDCursesMod/x11/pdcdisp.c +418 -0
  671. data/vendor/PDCursesMod/x11/pdcgetsc.c +28 -0
  672. data/vendor/PDCursesMod/x11/pdckbd.c +743 -0
  673. data/vendor/PDCursesMod/x11/pdcscrn.c +848 -0
  674. data/vendor/PDCursesMod/x11/pdcsetsc.c +108 -0
  675. data/vendor/PDCursesMod/x11/pdcutil.c +41 -0
  676. data/vendor/PDCursesMod/x11/pdcx11.h +82 -0
  677. data/vendor/PDCursesMod/x11/sb.c +331 -0
  678. data/vendor/PDCursesMod/x11/scrlbox.c +348 -0
  679. data/vendor/PDCursesMod/x11/scrlbox.h +47 -0
  680. data/vendor/PDCursesMod/x11/xcurses-config.in +81 -0
  681. data/vendor/PDCursesMod/x11new/Makefile +151 -0
  682. data/vendor/PDCursesMod/x11new/README.md +63 -0
  683. data/vendor/PDCursesMod/x11new/pdcclip.c +221 -0
  684. data/vendor/PDCursesMod/x11new/pdcdisp.c +195 -0
  685. data/vendor/PDCursesMod/x11new/pdcgetsc.c +27 -0
  686. data/vendor/PDCursesMod/x11new/pdckbd.c +722 -0
  687. data/vendor/PDCursesMod/x11new/pdcscrn.c +277 -0
  688. data/vendor/PDCursesMod/x11new/pdcsetsc.c +90 -0
  689. data/vendor/PDCursesMod/x11new/pdcutil.c +38 -0
  690. data/vendor/PDCursesMod/x11new/pdcx11.h +16 -0
  691. metadata +692 -246
  692. data/vendor/PDCurses/.gitignore +0 -47
  693. data/vendor/PDCurses/.travis.yml +0 -49
  694. data/vendor/PDCurses/CMakeLists.txt +0 -68
  695. data/vendor/PDCurses/HISTORY.md +0 -2036
  696. data/vendor/PDCurses/IMPLEMNT.md +0 -327
  697. data/vendor/PDCurses/Makefile +0 -27
  698. data/vendor/PDCurses/README.md +0 -77
  699. data/vendor/PDCurses/acs_defs.h +0 -265
  700. data/vendor/PDCurses/appveyor.yml +0 -218
  701. data/vendor/PDCurses/cmake/README.md +0 -71
  702. data/vendor/PDCurses/cmake/build_dependencies.cmake +0 -178
  703. data/vendor/PDCurses/cmake/build_options.cmake +0 -25
  704. data/vendor/PDCurses/cmake/dll_version.cmake +0 -26
  705. data/vendor/PDCurses/cmake/gen_config_header.cmake +0 -43
  706. data/vendor/PDCurses/cmake/get_version.cmake +0 -17
  707. data/vendor/PDCurses/cmake/project_common.cmake +0 -121
  708. data/vendor/PDCurses/cmake/sdl2_ttf/CMakeLists.txt +0 -83
  709. data/vendor/PDCurses/cmake/version.in.cmake +0 -73
  710. data/vendor/PDCurses/cmake/watcom_open_dos16_toolchain.cmake +0 -96
  711. data/vendor/PDCurses/cmake/watcom_open_dos32_toolchain.cmake +0 -106
  712. data/vendor/PDCurses/cmake/watcom_open_os2v2_toolchain.cmake +0 -105
  713. data/vendor/PDCurses/curses.h +0 -1846
  714. data/vendor/PDCurses/curspriv.h +0 -134
  715. data/vendor/PDCurses/demos/firework.c +0 -144
  716. data/vendor/PDCurses/demos/newtest.c +0 -581
  717. data/vendor/PDCurses/demos/ozdemo.c +0 -447
  718. data/vendor/PDCurses/demos/ptest.c +0 -283
  719. data/vendor/PDCurses/demos/rain.c +0 -157
  720. data/vendor/PDCurses/demos/testcurs.c +0 -1607
  721. data/vendor/PDCurses/demos/tui.c +0 -1048
  722. data/vendor/PDCurses/demos/tui.h +0 -65
  723. data/vendor/PDCurses/demos/tuidemo.c +0 -233
  724. data/vendor/PDCurses/demos/version.c +0 -61
  725. data/vendor/PDCurses/demos/worm.c +0 -432
  726. data/vendor/PDCurses/demos/xmas.c +0 -955
  727. data/vendor/PDCurses/dos/CMakeLists.txt +0 -47
  728. data/vendor/PDCurses/dos/Makefile +0 -105
  729. data/vendor/PDCurses/dos/Makefile.bcc +0 -83
  730. data/vendor/PDCurses/dos/Makefile.dmc +0 -257
  731. data/vendor/PDCurses/dos/Makefile.msc +0 -113
  732. data/vendor/PDCurses/dos/Makefile.wcc +0 -107
  733. data/vendor/PDCurses/dos/README.md +0 -51
  734. data/vendor/PDCurses/dos/bccdos.lrf +0 -9
  735. data/vendor/PDCurses/dos/mscdos.lrf +0 -50
  736. data/vendor/PDCurses/dos/pdcclip.c +0 -132
  737. data/vendor/PDCurses/dos/pdcdisp.c +0 -135
  738. data/vendor/PDCurses/dos/pdcdos.h +0 -194
  739. data/vendor/PDCurses/dos/pdcgetsc.c +0 -98
  740. data/vendor/PDCurses/dos/pdckbd.c +0 -513
  741. data/vendor/PDCurses/dos/pdcscrn.c +0 -785
  742. data/vendor/PDCurses/dos/pdcsetsc.c +0 -101
  743. data/vendor/PDCurses/dos/pdcutil.c +0 -212
  744. data/vendor/PDCurses/libobjs.mif +0 -26
  745. data/vendor/PDCurses/makedist.mif +0 -20
  746. data/vendor/PDCurses/man/Makefile +0 -37
  747. data/vendor/PDCurses/man/README.md +0 -21
  748. data/vendor/PDCurses/man/intro.md +0 -361
  749. data/vendor/PDCurses/man/manext.c +0 -119
  750. data/vendor/PDCurses/man/sdl.md +0 -152
  751. data/vendor/PDCurses/man/sdl2.md +0 -58
  752. data/vendor/PDCurses/man/x11.md +0 -407
  753. data/vendor/PDCurses/ncurses/CMakeLists.txt +0 -66
  754. data/vendor/PDCurses/ncurses/makefile +0 -29
  755. data/vendor/PDCurses/os2/Makefile +0 -132
  756. data/vendor/PDCurses/os2/Makefile.bcc +0 -90
  757. data/vendor/PDCurses/os2/Makefile.wcc +0 -43
  758. data/vendor/PDCurses/os2/iccos2.lrf +0 -50
  759. data/vendor/PDCurses/os2/iccos2.mak +0 -256
  760. data/vendor/PDCurses/os2/pdcclip.c +0 -188
  761. data/vendor/PDCurses/os2/pdcdisp.c +0 -93
  762. data/vendor/PDCurses/os2/pdcgetsc.c +0 -89
  763. data/vendor/PDCurses/os2/pdckbd.c +0 -521
  764. data/vendor/PDCurses/os2/pdcos2.h +0 -55
  765. data/vendor/PDCurses/os2/pdcscrn.c +0 -449
  766. data/vendor/PDCurses/os2/pdcsetsc.c +0 -112
  767. data/vendor/PDCurses/os2/pdcutil.c +0 -52
  768. data/vendor/PDCurses/panel.h +0 -56
  769. data/vendor/PDCurses/pdcurses/addch.c +0 -693
  770. data/vendor/PDCurses/pdcurses/addchstr.c +0 -245
  771. data/vendor/PDCurses/pdcurses/addstr.c +0 -240
  772. data/vendor/PDCurses/pdcurses/attr.c +0 -359
  773. data/vendor/PDCurses/pdcurses/beep.c +0 -68
  774. data/vendor/PDCurses/pdcurses/bkgd.c +0 -223
  775. data/vendor/PDCurses/pdcurses/border.c +0 -411
  776. data/vendor/PDCurses/pdcurses/clear.c +0 -159
  777. data/vendor/PDCurses/pdcurses/color.c +0 -298
  778. data/vendor/PDCurses/pdcurses/debug.c +0 -109
  779. data/vendor/PDCurses/pdcurses/delch.c +0 -96
  780. data/vendor/PDCurses/pdcurses/deleteln.c +0 -211
  781. data/vendor/PDCurses/pdcurses/deprec.c +0 -27
  782. data/vendor/PDCurses/pdcurses/getch.c +0 -417
  783. data/vendor/PDCurses/pdcurses/getstr.c +0 -474
  784. data/vendor/PDCurses/pdcurses/getyx.c +0 -139
  785. data/vendor/PDCurses/pdcurses/inch.c +0 -127
  786. data/vendor/PDCurses/pdcurses/inchstr.c +0 -214
  787. data/vendor/PDCurses/pdcurses/initscr.c +0 -367
  788. data/vendor/PDCurses/pdcurses/inopts.c +0 -324
  789. data/vendor/PDCurses/pdcurses/insch.c +0 -271
  790. data/vendor/PDCurses/pdcurses/insstr.c +0 -264
  791. data/vendor/PDCurses/pdcurses/instr.c +0 -246
  792. data/vendor/PDCurses/pdcurses/kernel.c +0 -259
  793. data/vendor/PDCurses/pdcurses/keyname.c +0 -157
  794. data/vendor/PDCurses/pdcurses/mouse.c +0 -438
  795. data/vendor/PDCurses/pdcurses/move.c +0 -57
  796. data/vendor/PDCurses/pdcurses/outopts.c +0 -159
  797. data/vendor/PDCurses/pdcurses/overlay.c +0 -214
  798. data/vendor/PDCurses/pdcurses/pad.c +0 -260
  799. data/vendor/PDCurses/pdcurses/panel.c +0 -633
  800. data/vendor/PDCurses/pdcurses/printw.c +0 -126
  801. data/vendor/PDCurses/pdcurses/refresh.c +0 -279
  802. data/vendor/PDCurses/pdcurses/scanw.c +0 -578
  803. data/vendor/PDCurses/pdcurses/scr_dump.c +0 -213
  804. data/vendor/PDCurses/pdcurses/scroll.c +0 -101
  805. data/vendor/PDCurses/pdcurses/slk.c +0 -591
  806. data/vendor/PDCurses/pdcurses/termattr.c +0 -182
  807. data/vendor/PDCurses/pdcurses/terminfo.c +0 -217
  808. data/vendor/PDCurses/pdcurses/touch.c +0 -163
  809. data/vendor/PDCurses/pdcurses/util.c +0 -312
  810. data/vendor/PDCurses/pdcurses/window.c +0 -569
  811. data/vendor/PDCurses/sdl1/Makefile +0 -129
  812. data/vendor/PDCurses/sdl1/Makefile.mng +0 -110
  813. data/vendor/PDCurses/sdl1/README.md +0 -31
  814. data/vendor/PDCurses/sdl1/deffont.h +0 -385
  815. data/vendor/PDCurses/sdl1/deficon.h +0 -23
  816. data/vendor/PDCurses/sdl1/pdcclip.c +0 -131
  817. data/vendor/PDCurses/sdl1/pdcdisp.c +0 -373
  818. data/vendor/PDCurses/sdl1/pdcgetsc.c +0 -30
  819. data/vendor/PDCurses/sdl1/pdckbd.c +0 -405
  820. data/vendor/PDCurses/sdl1/pdcscrn.c +0 -414
  821. data/vendor/PDCurses/sdl1/pdcsdl.h +0 -31
  822. data/vendor/PDCurses/sdl1/pdcsetsc.c +0 -64
  823. data/vendor/PDCurses/sdl1/pdcutil.c +0 -40
  824. data/vendor/PDCurses/sdl1/sdltest.c +0 -79
  825. data/vendor/PDCurses/sdl2/CMakeLists.txt +0 -76
  826. data/vendor/PDCurses/sdl2/Makefile +0 -135
  827. data/vendor/PDCurses/sdl2/Makefile.vc +0 -164
  828. data/vendor/PDCurses/sdl2/README.md +0 -34
  829. data/vendor/PDCurses/sdl2/deffont.h +0 -385
  830. data/vendor/PDCurses/sdl2/deficon.h +0 -23
  831. data/vendor/PDCurses/sdl2/pdcclip.c +0 -93
  832. data/vendor/PDCurses/sdl2/pdcdisp.c +0 -534
  833. data/vendor/PDCurses/sdl2/pdcgetsc.c +0 -30
  834. data/vendor/PDCurses/sdl2/pdckbd.c +0 -480
  835. data/vendor/PDCurses/sdl2/pdcscrn.c +0 -443
  836. data/vendor/PDCurses/sdl2/pdcsdl.h +0 -33
  837. data/vendor/PDCurses/sdl2/pdcsetsc.c +0 -67
  838. data/vendor/PDCurses/sdl2/pdcutil.c +0 -39
  839. data/vendor/PDCurses/sdl2/sdltest.c +0 -81
  840. data/vendor/PDCurses/term.h +0 -48
  841. data/vendor/PDCurses/version.mif +0 -7
  842. data/vendor/PDCurses/vt/CMakeLists.txt +0 -28
  843. data/vendor/PDCurses/vt/Makefile +0 -135
  844. data/vendor/PDCurses/vt/Makefile.bcc +0 -111
  845. data/vendor/PDCurses/vt/Makefile.dmc +0 -258
  846. data/vendor/PDCurses/vt/Makefile.vc +0 -144
  847. data/vendor/PDCurses/vt/Makefile.wcc +0 -107
  848. data/vendor/PDCurses/vt/README.md +0 -64
  849. data/vendor/PDCurses/vt/pdcclip.c +0 -20
  850. data/vendor/PDCurses/vt/pdcdisp.c +0 -284
  851. data/vendor/PDCurses/vt/pdckbd.c +0 -394
  852. data/vendor/PDCurses/vt/pdcscrn.c +0 -434
  853. data/vendor/PDCurses/vt/pdcsetsc.c +0 -45
  854. data/vendor/PDCurses/vt/pdcutil.c +0 -43
  855. data/vendor/PDCurses/vt/pdcvt.h +0 -16
  856. data/vendor/PDCurses/watcom.mif +0 -68
  857. data/vendor/PDCurses/wincon/CMakeLists.txt +0 -27
  858. data/vendor/PDCurses/wincon/Makefile.bcc +0 -88
  859. data/vendor/PDCurses/wincon/Makefile.dmc +0 -256
  860. data/vendor/PDCurses/wincon/Makefile.lcc +0 -273
  861. data/vendor/PDCurses/wincon/Makefile.mng +0 -176
  862. data/vendor/PDCurses/wincon/Makefile.vc +0 -144
  863. data/vendor/PDCurses/wincon/Makefile.wcc +0 -51
  864. data/vendor/PDCurses/wincon/README.md +0 -85
  865. data/vendor/PDCurses/wincon/pdcclip.c +0 -174
  866. data/vendor/PDCurses/wincon/pdcdisp.c +0 -143
  867. data/vendor/PDCurses/wincon/pdcgetsc.c +0 -55
  868. data/vendor/PDCurses/wincon/pdckbd.c +0 -786
  869. data/vendor/PDCurses/wincon/pdcscrn.c +0 -717
  870. data/vendor/PDCurses/wincon/pdcsetsc.c +0 -91
  871. data/vendor/PDCurses/wincon/pdcurses.ico +0 -0
  872. data/vendor/PDCurses/wincon/pdcurses.rc +0 -28
  873. data/vendor/PDCurses/wincon/pdcutil.c +0 -41
  874. data/vendor/PDCurses/wincon/pdcwin.h +0 -31
  875. data/vendor/PDCurses/wingui/CMakeLists.txt +0 -27
  876. data/vendor/PDCurses/wingui/Makefile.bcc +0 -85
  877. data/vendor/PDCurses/wingui/Makefile.dmc +0 -259
  878. data/vendor/PDCurses/wingui/Makefile.lcc +0 -273
  879. data/vendor/PDCurses/wingui/Makefile.mng +0 -171
  880. data/vendor/PDCurses/wingui/Makefile.vc +0 -144
  881. data/vendor/PDCurses/wingui/Makefile.wcc +0 -51
  882. data/vendor/PDCurses/wingui/README.md +0 -93
  883. data/vendor/PDCurses/wingui/pdcclip.c +0 -174
  884. data/vendor/PDCurses/wingui/pdcdisp.c +0 -718
  885. data/vendor/PDCurses/wingui/pdckbd.c +0 -143
  886. data/vendor/PDCurses/wingui/pdcscrn.c +0 -2797
  887. data/vendor/PDCurses/wingui/pdcsetsc.c +0 -89
  888. data/vendor/PDCurses/wingui/pdcurses.ico +0 -0
  889. data/vendor/PDCurses/wingui/pdcurses.rc +0 -28
  890. data/vendor/PDCurses/wingui/pdcutil.c +0 -61
  891. data/vendor/PDCurses/wingui/pdcwin.h +0 -122
  892. data/vendor/PDCurses/x11/Makefile.in +0 -754
  893. data/vendor/PDCurses/x11/PDCurses.spec +0 -82
  894. data/vendor/PDCurses/x11/README.md +0 -62
  895. data/vendor/PDCurses/x11/ScrollBox.c +0 -319
  896. data/vendor/PDCurses/x11/ScrollBox.h +0 -51
  897. data/vendor/PDCurses/x11/ScrollBoxP.h +0 -70
  898. data/vendor/PDCurses/x11/aclocal.m4 +0 -994
  899. data/vendor/PDCurses/x11/big_icon.xbm +0 -46
  900. data/vendor/PDCurses/x11/compose.h +0 -201
  901. data/vendor/PDCurses/x11/config.guess +0 -1500
  902. data/vendor/PDCurses/x11/config.h.in +0 -100
  903. data/vendor/PDCurses/x11/config.sub +0 -1616
  904. data/vendor/PDCurses/x11/configure +0 -6700
  905. data/vendor/PDCurses/x11/configure.ac +0 -295
  906. data/vendor/PDCurses/x11/debian/changelog +0 -6
  907. data/vendor/PDCurses/x11/debian/compat +0 -1
  908. data/vendor/PDCurses/x11/debian/control +0 -11
  909. data/vendor/PDCurses/x11/debian/copyright +0 -27
  910. data/vendor/PDCurses/x11/debian/rules +0 -98
  911. data/vendor/PDCurses/x11/little_icon.xbm +0 -14
  912. data/vendor/PDCurses/x11/ncurses_cfg.h +0 -45
  913. data/vendor/PDCurses/x11/pdcclip.c +0 -173
  914. data/vendor/PDCurses/x11/pdcdisp.c +0 -85
  915. data/vendor/PDCurses/x11/pdcgetsc.c +0 -28
  916. data/vendor/PDCurses/x11/pdckbd.c +0 -104
  917. data/vendor/PDCurses/x11/pdcscrn.c +0 -258
  918. data/vendor/PDCurses/x11/pdcsetsc.c +0 -95
  919. data/vendor/PDCurses/x11/pdcutil.c +0 -52
  920. data/vendor/PDCurses/x11/pdcx11.c +0 -316
  921. data/vendor/PDCurses/x11/pdcx11.h +0 -191
  922. data/vendor/PDCurses/x11/sb.c +0 -155
  923. data/vendor/PDCurses/x11/x11.c +0 -3686
  924. data/vendor/PDCurses/x11/xcurses-config.in +0 -81
  925. /data/vendor/{PDCurses → PDCursesMod}/cmake/make_uninstall.cmake +0 -0
  926. /data/vendor/{PDCurses → PDCursesMod}/cmake/resource.in.cmake +0 -0
  927. /data/vendor/{PDCurses → PDCursesMod}/cmake/target_arch.cmake +0 -0
  928. /data/vendor/{PDCurses → PDCursesMod}/demos/README.md +0 -0
  929. /data/vendor/{PDCurses → PDCursesMod}/ncurses/README.md +0 -0
  930. /data/vendor/{PDCurses → PDCursesMod}/os2/CMakeLists.txt +0 -0
  931. /data/vendor/{PDCurses → PDCursesMod}/os2/README.md +0 -0
  932. /data/vendor/{PDCurses → PDCursesMod}/pdcurses/README.md +0 -0
  933. /data/vendor/{PDCurses → PDCursesMod}/vt/pdcgetsc.c +0 -0
  934. /data/vendor/{PDCurses → PDCursesMod}/wingui/pdcgetsc.c +0 -0
  935. /data/vendor/{PDCurses → PDCursesMod}/x11/install-sh +0 -0
@@ -0,0 +1,867 @@
1
+ /* PDCurses */
2
+
3
+ #include "pdcgl.h"
4
+ #include "glfuncs.h"
5
+
6
+ #include <stdlib.h>
7
+ #include <assert.h>
8
+ #include <string.h>
9
+
10
+ # ifdef PDC_WIDE
11
+ # define USE_UNICODE_ACS_CHARS 1
12
+ # else
13
+ # define USE_UNICODE_ACS_CHARS 0
14
+ # endif
15
+
16
+ # include "../common/acs_defs.h"
17
+ # include "../common/pdccolor.h"
18
+ # include "../common/blink.c"
19
+
20
+ static chtype oldch = (chtype)(-1); /* current attribute */
21
+ static int foregr = -2, backgr = -2; /* current foreground, background */
22
+
23
+ struct color_data
24
+ {
25
+ /* The low three bytes are just the 8-bit RGB channel values. The most
26
+ * significant byte is currently unused.
27
+ */
28
+ Uint32 bg_color;
29
+ /* The most significant 8 bits contain the attribute data. The low three
30
+ * bytes are just the 8-bit RGB channel values.
31
+ */
32
+ Uint32 fg_color;
33
+ };
34
+
35
+ /* We store all of the color pairs in the same format in which we'll also upload
36
+ * them to OpenGL buffers. There's one per character grid cell on screen.
37
+ * They're uploaded in one batch, the entire screen at once. If you want to
38
+ * modify the contents of color_data, you'll also have to update the shaders
39
+ * and vertex attrib arrays in pdcscrn.c!
40
+ */
41
+ static struct color_data* color_grid = NULL;
42
+
43
+ #define BUILD_GLYPH_INDEX(col, row, w) \
44
+ ((Uint32)(col) | (((Uint32)row) << 15u) | (((Uint32)w) << 30u))
45
+
46
+ /* Glyphs are stored in multiple layers, in order to support combining chars.
47
+ * If none are used, there should only ever be one layer. The first layer is
48
+ * always the one with regular characters.
49
+ */
50
+ struct glyph_grid_layer
51
+ {
52
+ /* We track the number of non-empty glyphs in the grid, so that we can know
53
+ * when we can delete the layer.
54
+ */
55
+ Uint32 occupancy;
56
+
57
+ /* The glyph info format is as below:
58
+ * 0-14: character x offset in glyph cache
59
+ * 15-29: character y offset in glyph cache
60
+ * 30-31: Width; 0 = empty, 1 = normal, 2 = fullwidth.
61
+ *
62
+ * See also: BUILD_GLYPH_INDEX
63
+ */
64
+ Uint32* grid;
65
+ };
66
+ static struct glyph_grid_layer* glyph_grid_layers = NULL;
67
+ static int grid_w = 0, grid_h = 0, grid_layers = 0;
68
+ static int cur_render_target_w = 0, cur_render_target_h = 0;
69
+ static int cache_attr_index = 0;
70
+
71
+ static int next_pow_2(int n)
72
+ {
73
+ n--;
74
+ n |= n >> 1;
75
+ n |= n >> 2;
76
+ n |= n >> 4;
77
+ n |= n >> 8;
78
+ n |= n >> 16;
79
+ n++;
80
+ return n;
81
+ }
82
+
83
+ /* This function attempts to double the glyph cache size, but can also evict
84
+ * unused characters out if growing is not an option.
85
+ */
86
+ static void enlarge_glyph_cache( void)
87
+ {
88
+ GLuint new_font_texture = 0;
89
+ int new_glyph_cache_w = 2 * pdc_glyph_cache_w;
90
+ int new_glyph_cache_h = 2 * pdc_glyph_cache_h;
91
+ GLint max_texture_size = 0;
92
+ const float clear_color[4] = {0,0,0,0};
93
+
94
+ if(new_glyph_cache_w == 0 || new_glyph_cache_h == 0)
95
+ {
96
+ new_glyph_cache_h = new_glyph_cache_w = next_pow_2(
97
+ (pdc_fwidth > pdc_fheight ? pdc_fwidth : pdc_fheight) * 16);
98
+ }
99
+
100
+ glGetIntegerv(GL_MAX_TEXTURE_SIZE, &max_texture_size);
101
+ if(
102
+ new_glyph_cache_w > max_texture_size ||
103
+ new_glyph_cache_h > max_texture_size
104
+ ){
105
+ new_glyph_cache_w = max_texture_size;
106
+ new_glyph_cache_h = max_texture_size;
107
+ }
108
+
109
+ glGenTextures(1, &new_font_texture);
110
+ glBindTexture(GL_TEXTURE_2D, new_font_texture);
111
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
112
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
113
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
114
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
115
+ glTexImage2D(
116
+ GL_TEXTURE_2D,
117
+ 0,
118
+ GL_R8,
119
+ new_glyph_cache_w,
120
+ new_glyph_cache_h,
121
+ 0,
122
+ GL_RGBA,
123
+ GL_UNSIGNED_BYTE,
124
+ NULL
125
+ );
126
+
127
+ glBindFramebuffer(GL_FRAMEBUFFER, pdc_tex_fbo);
128
+ glFramebufferTexture(
129
+ GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, new_font_texture, 0);
130
+ glClearBufferfv(GL_COLOR, 0, clear_color);
131
+
132
+ if(pdc_font_texture != 0)
133
+ {
134
+ /* Prepare old texture for re-use */
135
+ glFramebufferTexture(
136
+ GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, pdc_font_texture, 0);
137
+ glReadBuffer(GL_COLOR_ATTACHMENT0);
138
+ }
139
+
140
+ if(
141
+ new_glyph_cache_w != pdc_glyph_cache_w ||
142
+ new_glyph_cache_h != pdc_glyph_cache_h
143
+ ){
144
+ /* Enlarging the texture should be possible if we're here. */
145
+ int new_glyph_row_capacity = new_glyph_cache_h / pdc_fheight;
146
+ pdc_glyph_col_capacity = new_glyph_cache_w / pdc_fwidth;
147
+ int i;
148
+
149
+ if(pdc_font_texture != 0)
150
+ {
151
+ /* Just keep the old data in the lower left corner; that also lets
152
+ * us keep the old row capacities intact.
153
+ */
154
+ glCopyTexSubImage2D(
155
+ GL_TEXTURE_2D,
156
+ 0, 0, 0, 0, 0, pdc_glyph_cache_w, pdc_glyph_cache_h
157
+ );
158
+ }
159
+ pdc_glyph_cache_w = new_glyph_cache_w;
160
+ pdc_glyph_cache_h = new_glyph_cache_h;
161
+ pdc_glyph_start_col = PDC_realloc_array(
162
+ pdc_glyph_start_col,
163
+ new_glyph_row_capacity, sizeof( int));
164
+ for(i = pdc_glyph_row_capacity; i < new_glyph_row_capacity; ++i)
165
+ pdc_glyph_start_col[i] = 0;
166
+
167
+ pdc_glyph_row_capacity = new_glyph_row_capacity;
168
+ }
169
+ else
170
+ {
171
+ bool* visited = calloc(grid_w * grid_h * grid_layers, sizeof(bool));
172
+ int i, attr;
173
+
174
+ /* If we're here, it's not possible to enlarge the texture, so we have
175
+ * to evict everything that's not needed out of the texture. This can
176
+ * be really slow, but at least the output should be fine...
177
+ */
178
+ for(i = 0; i < pdc_glyph_row_capacity; ++i)
179
+ pdc_glyph_start_col[i] = 0;
180
+
181
+ for(attr = 0; attr < 4; ++attr)
182
+ for(i = 0; i < pdc_glyph_cache_size[attr]; ++i)
183
+ {
184
+ Uint32* cached_glyph = pdc_glyph_cache[attr]+i;
185
+ Uint32 old_glyph = *cached_glyph;
186
+ bool used = FALSE;
187
+ int w = old_glyph >> 30;
188
+ int row, j, layer;
189
+ if(old_glyph == 0)
190
+ continue;
191
+
192
+ /* Check if glyph is used in any layer */
193
+ for(layer = 0; layer < grid_layers; ++layer)
194
+ for(j = 0; j < grid_w * grid_h; ++j)
195
+ {
196
+ if(
197
+ glyph_grid_layers[layer].grid[j] == old_glyph &&
198
+ !visited[j + layer * grid_w * grid_h]
199
+ ){
200
+ used = TRUE;
201
+ break;
202
+ }
203
+ }
204
+
205
+ *cached_glyph = 0;
206
+ if(!used) /* Unused glyphs get thrown out. */
207
+ continue;
208
+
209
+ /* Used glyphs are given a new index and copied over. */
210
+ for(row = 0; row < pdc_glyph_row_capacity; ++row)
211
+ {
212
+ int *col = &pdc_glyph_start_col[row];
213
+ if(*col + w <= pdc_glyph_col_capacity)
214
+ {
215
+ *cached_glyph = BUILD_GLYPH_INDEX(*col, row, w);
216
+
217
+ glCopyTexSubImage2D(
218
+ GL_TEXTURE_2D,
219
+ 0,
220
+ (*col)*pdc_fwidth,
221
+ row * pdc_fheight,
222
+ (old_glyph&0x7FFF) * pdc_fwidth,
223
+ (old_glyph>>15&0x7FFF) * pdc_fheight,
224
+ pdc_fwidth * w, pdc_fheight
225
+ );
226
+
227
+ (*col) += w;
228
+ break;
229
+ }
230
+ }
231
+
232
+ /* Update existing uses of the updated glyph */
233
+ for(layer = 0; layer < grid_layers; ++layer)
234
+ for(j = 0; j < grid_w * grid_h; ++j)
235
+ {
236
+ if(
237
+ glyph_grid_layers[layer].grid[j] == old_glyph &&
238
+ !visited[j + layer * grid_w * grid_h]
239
+ ){
240
+ glyph_grid_layers[layer].grid[j] = *cached_glyph;
241
+ visited[j + layer * grid_w * grid_h] = TRUE;
242
+ }
243
+ }
244
+ }
245
+
246
+ free(visited);
247
+ }
248
+ glBindFramebuffer(GL_FRAMEBUFFER, 0);
249
+ if(pdc_font_texture != 0)
250
+ glDeleteTextures(1, &pdc_font_texture);
251
+ pdc_font_texture = new_font_texture;
252
+ }
253
+
254
+ /* Attempts to find an empty slot in the glyph cache of 'w' character widths.
255
+ * (w = 2 for fullwidth, otherwise typically just 1)
256
+ */
257
+ static Uint32 alloc_glyph_cache(int w)
258
+ {
259
+ /* Keep trying until we succeed. */
260
+ for(;;)
261
+ {
262
+ int row;
263
+ /* We try to fill the glyph cache in rows, from bottom to top. */
264
+ for(row = 0; row < pdc_glyph_row_capacity; ++row)
265
+ {
266
+ int *col = &pdc_glyph_start_col[row];
267
+ if(*col+w <= pdc_glyph_col_capacity)
268
+ {
269
+ Uint32 index = BUILD_GLYPH_INDEX(*col, row, w);
270
+ (*col) += w;
271
+ return index;
272
+ }
273
+ }
274
+
275
+ /* If we're here, we failed to allocate the glyph, so we need to enlarge
276
+ * the glyph cache and try again.
277
+ */
278
+ enlarge_glyph_cache();
279
+ }
280
+ }
281
+
282
+ /* This one makes sure that the color and glyph grids are of the correct size
283
+ * and have enough layers. It's a bit complicated, because resizing shouldn't
284
+ * throw existing characters away.
285
+ */
286
+ static void ensure_glyph_grid(int min_layers)
287
+ {
288
+ if(SP->cols != grid_w || SP->lines != grid_h || grid_layers < min_layers)
289
+ {
290
+ int i, j, layer;
291
+ /* Update color grid first */
292
+ struct color_data* new_colors = malloc(
293
+ sizeof(struct color_data) * SP->lines * SP->cols
294
+ );
295
+ for(j = 0; j < SP->lines; ++j)
296
+ {
297
+ i = 0;
298
+ if(j < grid_h && color_grid)
299
+ {
300
+ int w = grid_w < SP->cols ? grid_w : SP->cols;
301
+ memcpy(
302
+ &new_colors[j * SP->cols],
303
+ &color_grid[j * grid_w],
304
+ sizeof(struct color_data) * w
305
+ );
306
+ i = w;
307
+ }
308
+ for(; i < SP->cols; ++i)
309
+ {
310
+ struct color_data* cd = &new_colors[i + j * SP->cols];
311
+ cd->bg_color = 0;
312
+ cd->fg_color = 0;
313
+ }
314
+ }
315
+ free(color_grid);
316
+ color_grid = new_colors;
317
+
318
+ /* Make sure we have enough grid layers */
319
+ if(grid_layers < min_layers)
320
+ {
321
+ glyph_grid_layers = PDC_realloc_array(
322
+ glyph_grid_layers, min_layers,
323
+ sizeof(struct glyph_grid_layer));
324
+ for(layer = grid_layers; layer < min_layers; ++layer)
325
+ {
326
+ glyph_grid_layers[layer].occupancy = 0;
327
+ glyph_grid_layers[layer].grid = NULL;
328
+ }
329
+ grid_layers = min_layers;
330
+ }
331
+
332
+ /* Update the glyph grids on each layer. */
333
+ for(layer = 0; layer < grid_layers; ++layer)
334
+ {
335
+ Uint32* new_glyphs = malloc(sizeof(Uint32) * SP->lines * SP->cols);
336
+ for(j = 0; j < SP->lines; ++j)
337
+ {
338
+ i = 0;
339
+ if(j < grid_h && glyph_grid_layers[layer].grid)
340
+ {
341
+ int w = grid_w < SP->cols ? grid_w : SP->cols;
342
+ memcpy(
343
+ &new_glyphs[j * SP->cols],
344
+ &glyph_grid_layers[layer].grid[j * grid_w],
345
+ sizeof(Uint32) * w
346
+ );
347
+ i = w;
348
+ }
349
+ for(; i < SP->cols; ++i)
350
+ new_glyphs[i + j * SP->cols] = BUILD_GLYPH_INDEX(0, 0, 1);
351
+ }
352
+
353
+ free(glyph_grid_layers[layer].grid);
354
+ glyph_grid_layers[layer].grid = new_glyphs;
355
+ }
356
+
357
+ grid_w = SP->cols;
358
+ grid_h = SP->lines;
359
+ }
360
+ }
361
+
362
+ /* Tries to find unused layers and delete them, so that we don't waste time on
363
+ * unused glyph grids.
364
+ */
365
+ static void shrink_glyph_grid( void)
366
+ {
367
+ int layer;
368
+ for(layer = 1; layer < grid_layers;)
369
+ {
370
+ if(glyph_grid_layers[layer].occupancy != 0)
371
+ {
372
+ ++layer;
373
+ continue;
374
+ }
375
+ free(glyph_grid_layers[layer].grid);
376
+ memmove(
377
+ glyph_grid_layers+layer,
378
+ glyph_grid_layers+layer+1,
379
+ grid_layers-layer-1
380
+ );
381
+ grid_layers--;
382
+ }
383
+ }
384
+
385
+ static Uint32 get_pdc_color( const int color_idx)
386
+ {
387
+ const PACKED_RGB rgb = PDC_get_palette_entry(color_idx > 0 ? color_idx : 0);
388
+ return
389
+ (Uint32)Get_RValue(rgb) |
390
+ (Uint32)Get_GValue(rgb)<<8 |
391
+ (Uint32)Get_BValue(rgb)<<16;
392
+ }
393
+
394
+ static Uint32 get_glyph_texture_index(Uint32 ch32)
395
+ {
396
+ SDL_Color white = {255,255,255,255};
397
+ int *cache_size = &pdc_glyph_cache_size[cache_attr_index];
398
+ Uint32 **cache = &pdc_glyph_cache[cache_attr_index];
399
+
400
+ /* Fullwidth dummy char! 0 makes it stop existing! */
401
+ if(ch32 == 0x110000) return 0;
402
+
403
+ #ifndef PDC_SDL_SUPPLEMENTARY_PLANES_SUPPORT
404
+ /* no support for supplementary planes */
405
+ if (ch32 > 0xffff)
406
+ ch32 = '?';
407
+ #endif
408
+
409
+ if(ch32 < (Uint32)*cache_size && (*cache)[ch32] > 0)
410
+ {
411
+ /* Nice, the character was alreadt cached */
412
+ return (*cache)[ch32];
413
+ }
414
+ else
415
+ {
416
+ /* Here we need to render the character, it's not cached. */
417
+ int w = 0;
418
+ Uint32 index;
419
+ SDL_Surface* surf = NULL;
420
+
421
+ #ifdef PDC_SDL_SUPPLEMENTARY_PLANES_SUPPORT
422
+ surf = TTF_RenderGlyph32_Blended(pdc_ttffont, ch32, white);
423
+ #else
424
+ surf = TTF_RenderGlyph_Blended(pdc_ttffont, (Uint16)ch32, white);
425
+ #endif
426
+ SDL_LockSurface(surf);
427
+ /* Kind-of-fullwidthness-but-not-really: Italics can also overstep
428
+ * and cause w = 2, which should still render completely fine.
429
+ */
430
+ w = (surf->w + pdc_fwidth-1)/pdc_fwidth;
431
+ index = alloc_glyph_cache(w);
432
+ /* The SDL_Surface pitch may not match with the width, so we use this
433
+ * to get glTexSubImage2D to deal with the proper pitch.
434
+ */
435
+ glPixelStorei(
436
+ GL_UNPACK_ROW_LENGTH,
437
+ surf->pitch / surf->format->BytesPerPixel
438
+ );
439
+ glTexSubImage2D(
440
+ GL_TEXTURE_2D,
441
+ 0,
442
+ (index&0x7FFF) * pdc_fwidth,
443
+ (index>>15&0x7FFF) * pdc_fheight,
444
+ surf->w,
445
+ surf->h,
446
+ GL_RGBA,
447
+ GL_UNSIGNED_INT_8_8_8_8,
448
+ surf->pixels
449
+ );
450
+ SDL_UnlockSurface(surf);
451
+ SDL_FreeSurface(surf);
452
+
453
+ if(ch32 >= (Uint32)*cache_size)
454
+ {
455
+ /* Our list of cached glyph indices is too small, so it has to grow
456
+ * too.
457
+ */
458
+ int new_cache_size = *cache_size;
459
+ if(new_cache_size == 0) new_cache_size = 256;
460
+ while((Uint32)new_cache_size < ch32) new_cache_size *= 2;
461
+
462
+ *cache = PDC_realloc_array (*cache, new_cache_size, sizeof(Uint32));
463
+ memset(
464
+ (*cache) + *cache_size, 0,
465
+ sizeof(Uint32)*(new_cache_size - *cache_size)
466
+ );
467
+ *cache_size = new_cache_size;
468
+ }
469
+ (*cache)[ch32] = index;
470
+ return index;
471
+ }
472
+ }
473
+
474
+ #ifdef USING_COMBINING_CHARACTER_SCHEME
475
+ int PDC_expand_combined_characters( const cchar_t c, cchar_t *added);
476
+ #endif
477
+
478
+ static void draw_glyph(
479
+ int y, int x, attr_t attr, Uint32 ch32,
480
+ Uint32 background,
481
+ Uint32 foreground
482
+ ){
483
+ struct color_data* cd;
484
+ #ifdef USING_COMBINING_CHARACTER_SCHEME
485
+ int layer = 0;
486
+ #endif
487
+ int i = x + y * SP->cols;
488
+ Uint32 gl_attrs =
489
+ ((attr & WA_UNDERLINE) ? 1<<2 : 0) |
490
+ ((attr & WA_TOP) ? 1<<3 : 0) |
491
+ ((attr & WA_STRIKEOUT) ? 1<<4 : 0) |
492
+ ((attr & WA_LEFT) ? 1<<5 : 0) |
493
+ ((attr & WA_RIGHT) ? 1<<6 : 0);
494
+ if(y < 0 || y >= SP->lines || x < 0 || x >= SP->cols)
495
+ return;
496
+
497
+ ensure_glyph_grid(1);
498
+ cd = &color_grid[i];
499
+ cd->bg_color = background;
500
+ cd->fg_color = foreground | (gl_attrs << 24);
501
+
502
+ #ifdef USING_COMBINING_CHARACTER_SCHEME
503
+ /* Clear all layers above the base */
504
+ for(layer = 1; layer < grid_layers; ++layer)
505
+ {
506
+ if(glyph_grid_layers[layer].grid[i] != 0)
507
+ {
508
+ glyph_grid_layers[layer].occupancy--;
509
+ glyph_grid_layers[layer].grid[i] = 0;
510
+ }
511
+ }
512
+ layer = 0;
513
+ /* Go through the glyph combo if necessary, putting each on a different
514
+ * layer. */
515
+ while(ch32 > 0x110000)
516
+ {
517
+ layer++;
518
+ ensure_glyph_grid(layer+1);
519
+
520
+ cchar_t added = 0;
521
+ ch32 = PDC_expand_combined_characters(ch32, &added);
522
+ Uint32 glyph_index = get_glyph_texture_index(added);
523
+ if(glyph_index != 0)
524
+ {
525
+ glyph_grid_layers[layer].occupancy++;
526
+ glyph_grid_layers[layer].grid[i] = glyph_index;
527
+ }
528
+ }
529
+ #endif
530
+
531
+ glyph_grid_layers[0].grid[i] = get_glyph_texture_index(ch32);
532
+ }
533
+
534
+ static void draw_cursor(int y, int x, int visibility)
535
+ {
536
+ struct color_data* cd;
537
+ Uint32 gl_attrs = visibility >= 0 && visibility <= 2 ? visibility : 0;
538
+ if(y < 0 || y >= SP->lines || x < 0 || x >= SP->cols)
539
+ return;
540
+
541
+ ensure_glyph_grid(1);
542
+ cd = &color_grid[x + y * SP->cols];
543
+ cd->fg_color |= gl_attrs << 24;
544
+ }
545
+
546
+ /* set the font colors to match the chtype's attribute */
547
+
548
+ static void _set_attr(chtype ch)
549
+ {
550
+ attr_t sysattrs = SP->termattrs;
551
+
552
+ #if defined( PDC_WIDE) && !defined( CHTYPE_16)
553
+ const int bold = (ch & A_BOLD) && (sysattrs & A_BOLD);
554
+ const int italic = (ch & A_ITALIC) && (sysattrs & A_ITALIC);
555
+
556
+ cache_attr_index = (bold ? 1 : 0) | (italic ? 2 : 0);
557
+ TTF_SetFontStyle(
558
+ pdc_ttffont,
559
+ (bold ? TTF_STYLE_BOLD : 0) | (italic ? TTF_STYLE_ITALIC : 0)
560
+ );
561
+ #else
562
+ cache_attr_index = 0;
563
+ TTF_SetFontStyle( pdc_ttffont, 0);
564
+ #endif
565
+
566
+ ch &= (A_COLOR|A_BOLD|A_BLINK|A_REVERSE);
567
+
568
+ if (oldch != ch)
569
+ {
570
+ int newfg, newbg;
571
+
572
+ if (SP->mono)
573
+ return;
574
+
575
+ extended_pair_content(PAIR_NUMBER(ch), &newfg, &newbg);
576
+
577
+ if ((ch & A_BOLD) && !(sysattrs & A_BOLD))
578
+ newfg |= 8;
579
+ if ((ch & A_BLINK) && !(sysattrs & A_BLINK))
580
+ newbg |= 8;
581
+
582
+ if (ch & A_REVERSE)
583
+ {
584
+ int tmp = newfg;
585
+ newfg = newbg;
586
+ newbg = tmp;
587
+ }
588
+
589
+ foregr = newfg;
590
+
591
+ if (newbg != backgr)
592
+ {
593
+ backgr = newbg;
594
+ }
595
+
596
+ oldch = ch;
597
+ }
598
+ }
599
+
600
+ static void _new_packet( attr_t attr, const int lineno, const int x, const int len, const chtype *srcp)
601
+ {
602
+ int j;
603
+ attr_t sysattrs = SP->termattrs;
604
+ const bool blink = SP->blink_state && (attr & A_BLINK) && (sysattrs & A_BLINK);
605
+
606
+ _set_attr(attr);
607
+
608
+ for (j = 0; j < len; j++)
609
+ {
610
+ chtype ch = srcp[j];
611
+
612
+ if( _is_altcharset( ch))
613
+ ch = acs_map[ch & 0x7f];
614
+
615
+ ch &= A_CHARTEXT;
616
+ if( blink)
617
+ ch = ' ';
618
+ draw_glyph(lineno, x+j, attr, ch,
619
+ get_pdc_color(backgr), get_pdc_color(foregr));
620
+ }
621
+ }
622
+
623
+ /* update the given physical line to look like the corresponding line in
624
+ curscr */
625
+
626
+ void PDC_transform_line(int lineno, int x, int len, const chtype *srcp)
627
+ {
628
+ attr_t old_attr;
629
+ int i, j;
630
+ chtype tch;
631
+
632
+ PDC_LOG(("PDC_transform_line() - called: lineno=%d\n", lineno));
633
+ if( SP->drawing_cursor)
634
+ {
635
+ assert( len == 1);
636
+ tch = *srcp;
637
+ if( SP->drawing_cursor == 3) /* hollow box */
638
+ tch ^= A_UNDERLINE | A_TOP | A_LEFT | A_RIGHT;
639
+ if( SP->drawing_cursor == 4) /* caret */
640
+ tch ^= A_LEFT;
641
+ srcp = &tch;
642
+ }
643
+
644
+ old_attr = *srcp & (A_ATTRIBUTES ^ A_ALTCHARSET);
645
+
646
+ for (i = 1, j = 1; j < len; i++, j++)
647
+ {
648
+ const chtype attr = srcp[i] & (A_ATTRIBUTES ^ A_ALTCHARSET);
649
+
650
+ if (attr != old_attr)
651
+ {
652
+ _new_packet(old_attr, lineno, x, i, srcp);
653
+ old_attr = attr;
654
+ srcp += i;
655
+ x += i;
656
+ i = 0;
657
+ }
658
+ }
659
+
660
+ _new_packet(old_attr, lineno, x, i, srcp);
661
+ if( SP->drawing_cursor <= 2)
662
+ draw_cursor( lineno, x, SP->drawing_cursor);
663
+ }
664
+
665
+ void PDC_doupdate(void)
666
+ {
667
+ int w, h;
668
+ SDL_Rect viewport = PDC_get_viewport();
669
+ bool use_render_target = pdc_interpolation_mode == PDC_GL_INTERPOLATE_BILINEAR &&
670
+ pdc_resize_mode != PDC_GL_RESIZE_NORMAL;
671
+ int u_screen_size, u_glyph_size, u_fthick, u_line_color;
672
+ short hcol = SP->line_color;
673
+ int layer;
674
+
675
+ ensure_glyph_grid(1);
676
+
677
+ /* Upload grid buffers at the start, before we queue the commands that need
678
+ * them.
679
+ */
680
+ glBindBuffer(GL_ARRAY_BUFFER, pdc_color_buffer);
681
+ glBufferData(
682
+ GL_ARRAY_BUFFER,
683
+ sizeof(struct color_data) * SP->lines * SP->cols,
684
+ color_grid,
685
+ GL_STREAM_DRAW
686
+ );
687
+ glBindBuffer(GL_ARRAY_BUFFER, pdc_glyph_buffer);
688
+ glBufferData(
689
+ GL_ARRAY_BUFFER,
690
+ sizeof(Uint32) * SP->lines * SP->cols,
691
+ glyph_grid_layers[0].grid,
692
+ GL_STREAM_DRAW
693
+ );
694
+
695
+ SDL_GetWindowSize(pdc_window, &w, &h);
696
+
697
+ glViewport(0, 0, w, h);
698
+ glClearColor(0.0f,0.0f,0.0f,0.0f);
699
+ glClear(GL_COLOR_BUFFER_BIT);
700
+
701
+ if(use_render_target)
702
+ {
703
+ /* For bilinear interpolation, we unfortunately need a temporary render
704
+ * target. If we tried to do interpolation on the glyphs in the shader,
705
+ * their edges would still appear sharp, as they could not blend
706
+ * between cell edges.
707
+ */
708
+ int content_w = SP->cols * pdc_fwidth;
709
+ int content_h = SP->lines * pdc_fheight;
710
+
711
+ if(!pdc_render_target_texture)
712
+ {
713
+ /* Need to allocate the render target texture. */
714
+ glGenTextures(1, &pdc_render_target_texture);
715
+ cur_render_target_w = cur_render_target_h = 0;
716
+ }
717
+
718
+ if(cur_render_target_w != content_w || cur_render_target_h != content_h)
719
+ {
720
+ /* Need to resize the render target texture. */
721
+ glBindTexture(GL_TEXTURE_2D, pdc_render_target_texture);
722
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
723
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
724
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
725
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
726
+ glTexImage2D(
727
+ GL_TEXTURE_2D,
728
+ 0,
729
+ GL_RGBA8,
730
+ content_w,
731
+ content_h,
732
+ 0,
733
+ GL_RGBA,
734
+ GL_UNSIGNED_BYTE,
735
+ NULL
736
+ );
737
+ cur_render_target_w = content_w;
738
+ cur_render_target_h = content_h;
739
+ }
740
+ glBindFramebuffer(GL_FRAMEBUFFER, pdc_tex_fbo);
741
+ glFramebufferTexture(
742
+ GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, pdc_render_target_texture, 0);
743
+
744
+ glViewport(0, 0, content_w, content_h);
745
+ glBindTexture(GL_TEXTURE_2D, pdc_font_texture);
746
+ }
747
+ else
748
+ {
749
+ /* If we're doing nearest-neighbor interpolation, we can just render
750
+ * directly to the default framebuffer.
751
+ */
752
+ if(pdc_render_target_texture)
753
+ {
754
+ /* The user may have disabled bilinear interpolation, so we can
755
+ * just free the render target here since we don't need it anymore.
756
+ */
757
+ glDeleteTextures(1, &pdc_render_target_texture);
758
+ pdc_render_target_texture = 0;
759
+ cur_render_target_w = cur_render_target_h = 0;
760
+ }
761
+
762
+ glViewport(viewport.x, viewport.y, viewport.w, viewport.h);
763
+ }
764
+
765
+ /* Draw background colors */
766
+ glUseProgram(pdc_background_shader_program);
767
+ u_screen_size = glGetUniformLocation(
768
+ pdc_background_shader_program, "screen_size");
769
+ glUniform2i(u_screen_size, SP->cols, SP->lines);
770
+
771
+ u_glyph_size = glGetUniformLocation(
772
+ pdc_background_shader_program, "glyph_size");
773
+ glUniform2i(u_glyph_size, pdc_fwidth, pdc_fheight);
774
+
775
+ glDrawArraysInstanced(GL_TRIANGLES, 0, 6, SP->lines * SP->cols);
776
+
777
+ /* Prepare for drawing foreground glyphs. */
778
+ glUseProgram(pdc_foreground_shader_program);
779
+
780
+ u_screen_size = glGetUniformLocation(
781
+ pdc_foreground_shader_program, "screen_size");
782
+ glUniform2i(u_screen_size, SP->cols, SP->lines);
783
+
784
+ u_glyph_size = glGetUniformLocation(
785
+ pdc_foreground_shader_program, "glyph_size");
786
+ glUniform2i(u_glyph_size, pdc_fwidth, pdc_fheight);
787
+
788
+ u_fthick = glGetUniformLocation(pdc_foreground_shader_program, "fthick");
789
+ glUniform1i(u_fthick, pdc_fthick);
790
+
791
+ u_line_color = glGetUniformLocation(
792
+ pdc_foreground_shader_program, "line_color");
793
+ if(hcol >= 0)
794
+ {
795
+ PACKED_RGB rgb = PDC_get_palette_entry(hcol);
796
+ glUniform3f(u_line_color,
797
+ Get_RValue(rgb)/255.0f,
798
+ Get_GValue(rgb)/255.0f,
799
+ Get_BValue(rgb)/255.0f
800
+ );
801
+ }
802
+ else glUniform3f(u_line_color, -1, -1, -1);
803
+
804
+ /* Draw foreground colors, layer by layer. */
805
+ for(layer = 0; layer < grid_layers; ++layer)
806
+ {
807
+ if(layer != 0)
808
+ {
809
+ /* The first layer had to be uploaded earlier to make sure that we
810
+ * have some data in it for the background shader as well. Which is
811
+ * why we only upload here if the layer isn't the first one.
812
+ */
813
+ glBufferData(
814
+ GL_ARRAY_BUFFER,
815
+ sizeof(Uint32) * SP->lines * SP->cols,
816
+ glyph_grid_layers[layer].grid,
817
+ GL_STREAM_DRAW
818
+ );
819
+ }
820
+ glDrawArraysInstanced(GL_TRIANGLES, 0, 6, SP->lines * SP->cols);
821
+ }
822
+
823
+ if(use_render_target)
824
+ {
825
+ /* Since the bilinear interpolation case was rendering to a texture,
826
+ * we still need to blit that over to the screen.
827
+ */
828
+ glBindFramebuffer(GL_READ_FRAMEBUFFER, pdc_tex_fbo);
829
+ glBindFramebuffer(GL_DRAW_FRAMEBUFFER, 0);
830
+ glBlitFramebuffer(
831
+ 0,
832
+ 0,
833
+ cur_render_target_w,
834
+ cur_render_target_h,
835
+ viewport.x,
836
+ viewport.y,
837
+ viewport.x+viewport.w,
838
+ viewport.y+viewport.h,
839
+ GL_COLOR_BUFFER_BIT,
840
+ GL_LINEAR
841
+ );
842
+ glBindFramebuffer(GL_FRAMEBUFFER, 0);
843
+ }
844
+
845
+ SDL_GL_SwapWindow(pdc_window);
846
+
847
+ shrink_glyph_grid();
848
+ }
849
+
850
+ void PDC_pump_and_peep(void)
851
+ {
852
+ SDL_Event event;
853
+
854
+ int res = SDL_PeepEvents(
855
+ &event, 1, SDL_PEEKEVENT, SDL_FIRSTEVENT, SDL_LASTEVENT);
856
+ if(res > 0)
857
+ {
858
+ if (SDL_WINDOWEVENT == event.type &&
859
+ (SDL_WINDOWEVENT_RESTORED == event.window.event ||
860
+ SDL_WINDOWEVENT_EXPOSED == event.window.event ||
861
+ SDL_WINDOWEVENT_SHOWN == event.window.event))
862
+ {
863
+ SDL_PollEvent(&event);
864
+ PDC_doupdate();
865
+ }
866
+ }
867
+ }