curses 1.2.6 → 1.4.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.
- checksums.yaml +4 -4
- data/.github/workflows/macos.yml +19 -0
- data/.github/workflows/ubuntu.yml +26 -0
- data/.github/workflows/windows.yml +28 -0
- data/.gitmodules +1 -1
- data/.travis.yml +6 -3
- data/History.md +40 -0
- data/README.md +4 -1
- data/Rakefile +0 -83
- data/curses.gemspec +2 -3
- data/ext/curses/curses.c +1271 -151
- data/ext/curses/extconf.rb +140 -17
- data/lib/curses.rb +5 -12
- data/sample/form.rb +52 -0
- data/sample/menu.rb +1 -1
- data/vendor/PDCurses/.gitignore +47 -0
- data/vendor/PDCurses/.travis.yml +49 -0
- data/vendor/PDCurses/CMakeLists.txt +68 -0
- data/vendor/PDCurses/HISTORY.md +2036 -0
- data/vendor/PDCurses/IMPLEMNT.md +327 -0
- data/vendor/PDCurses/README.md +77 -0
- data/vendor/PDCurses/acs_defs.h +265 -0
- data/vendor/PDCurses/appveyor.yml +218 -0
- data/vendor/PDCurses/cmake/README.md +71 -0
- data/vendor/PDCurses/cmake/build_dependencies.cmake +178 -0
- data/vendor/PDCurses/cmake/build_options.cmake +25 -0
- data/vendor/PDCurses/cmake/dll_version.cmake +26 -0
- data/vendor/PDCurses/cmake/gen_config_header.cmake +43 -0
- data/vendor/PDCurses/cmake/get_version.cmake +17 -0
- data/vendor/PDCurses/cmake/make_uninstall.cmake +19 -0
- data/vendor/PDCurses/cmake/project_common.cmake +121 -0
- data/vendor/PDCurses/cmake/resource.in.cmake +52 -0
- data/vendor/PDCurses/cmake/sdl2_ttf/CMakeLists.txt +83 -0
- data/vendor/PDCurses/cmake/target_arch.cmake +36 -0
- data/vendor/PDCurses/cmake/version.in.cmake +73 -0
- data/vendor/PDCurses/cmake/watcom_open_dos16_toolchain.cmake +96 -0
- data/vendor/PDCurses/cmake/watcom_open_dos32_toolchain.cmake +106 -0
- data/vendor/PDCurses/cmake/watcom_open_os2v2_toolchain.cmake +105 -0
- data/vendor/PDCurses/curses.h +1846 -0
- data/vendor/PDCurses/curspriv.h +134 -0
- data/vendor/PDCurses/demos/README.md +25 -0
- data/vendor/PDCurses/demos/firework.c +144 -0
- data/vendor/PDCurses/demos/newtest.c +581 -0
- data/vendor/PDCurses/demos/ozdemo.c +447 -0
- data/vendor/PDCurses/demos/ptest.c +283 -0
- data/vendor/PDCurses/demos/rain.c +157 -0
- data/vendor/PDCurses/demos/testcurs.c +1607 -0
- data/vendor/PDCurses/demos/tui.c +1048 -0
- data/vendor/PDCurses/demos/tui.h +65 -0
- data/vendor/PDCurses/demos/tuidemo.c +233 -0
- data/vendor/PDCurses/demos/version.c +61 -0
- data/vendor/PDCurses/demos/worm.c +432 -0
- data/vendor/PDCurses/demos/xmas.c +955 -0
- data/vendor/PDCurses/dos/CMakeLists.txt +47 -0
- data/vendor/PDCurses/dos/Makefile.bcc +83 -0
- data/vendor/PDCurses/dos/Makefile.dmc +257 -0
- data/vendor/PDCurses/dos/Makefile.msc +113 -0
- data/vendor/PDCurses/dos/Makefile.wcc +107 -0
- data/vendor/PDCurses/dos/README.md +51 -0
- data/vendor/PDCurses/dos/bccdos.lrf +9 -0
- data/vendor/PDCurses/dos/mscdos.lrf +50 -0
- data/vendor/PDCurses/dos/pdcclip.c +132 -0
- data/vendor/PDCurses/dos/pdcdisp.c +135 -0
- data/vendor/PDCurses/dos/pdcdos.h +194 -0
- data/vendor/PDCurses/dos/pdcgetsc.c +98 -0
- data/vendor/PDCurses/dos/pdckbd.c +513 -0
- data/vendor/PDCurses/dos/pdcscrn.c +785 -0
- data/vendor/PDCurses/dos/pdcsetsc.c +101 -0
- data/vendor/PDCurses/dos/pdcutil.c +212 -0
- data/vendor/PDCurses/libobjs.mif +26 -0
- data/vendor/PDCurses/makedist.mif +20 -0
- data/vendor/PDCurses/man/README.md +21 -0
- data/vendor/PDCurses/man/intro.md +361 -0
- data/vendor/PDCurses/man/manext.c +119 -0
- data/vendor/PDCurses/man/sdl.md +152 -0
- data/vendor/PDCurses/man/sdl2.md +58 -0
- data/vendor/PDCurses/man/x11.md +407 -0
- data/vendor/PDCurses/ncurses/CMakeLists.txt +66 -0
- data/vendor/PDCurses/ncurses/README.md +26 -0
- data/vendor/PDCurses/ncurses/makefile +29 -0
- data/vendor/PDCurses/os2/CMakeLists.txt +41 -0
- data/vendor/PDCurses/os2/Makefile.bcc +90 -0
- data/vendor/PDCurses/os2/Makefile.wcc +43 -0
- data/vendor/PDCurses/os2/README.md +43 -0
- data/vendor/PDCurses/os2/iccos2.lrf +50 -0
- data/vendor/PDCurses/os2/iccos2.mak +256 -0
- data/vendor/PDCurses/os2/pdcclip.c +188 -0
- data/vendor/PDCurses/os2/pdcdisp.c +93 -0
- data/vendor/PDCurses/os2/pdcgetsc.c +89 -0
- data/vendor/PDCurses/os2/pdckbd.c +521 -0
- data/vendor/PDCurses/os2/pdcos2.h +55 -0
- data/vendor/PDCurses/os2/pdcscrn.c +449 -0
- data/vendor/PDCurses/os2/pdcsetsc.c +112 -0
- data/vendor/PDCurses/os2/pdcutil.c +52 -0
- data/vendor/PDCurses/panel.h +56 -0
- data/vendor/PDCurses/pdcurses/README.md +25 -0
- data/vendor/PDCurses/pdcurses/addch.c +693 -0
- data/vendor/PDCurses/pdcurses/addchstr.c +245 -0
- data/vendor/PDCurses/pdcurses/addstr.c +240 -0
- data/vendor/PDCurses/pdcurses/attr.c +359 -0
- data/vendor/PDCurses/pdcurses/beep.c +68 -0
- data/vendor/PDCurses/pdcurses/bkgd.c +223 -0
- data/vendor/PDCurses/pdcurses/border.c +411 -0
- data/vendor/PDCurses/pdcurses/clear.c +159 -0
- data/vendor/PDCurses/pdcurses/color.c +298 -0
- data/vendor/PDCurses/pdcurses/debug.c +109 -0
- data/vendor/PDCurses/pdcurses/delch.c +96 -0
- data/vendor/PDCurses/pdcurses/deleteln.c +211 -0
- data/vendor/PDCurses/pdcurses/deprec.c +27 -0
- data/vendor/PDCurses/pdcurses/getch.c +417 -0
- data/vendor/PDCurses/pdcurses/getstr.c +474 -0
- data/vendor/PDCurses/pdcurses/getyx.c +139 -0
- data/vendor/PDCurses/pdcurses/inch.c +127 -0
- data/vendor/PDCurses/pdcurses/inchstr.c +214 -0
- data/vendor/PDCurses/pdcurses/initscr.c +367 -0
- data/vendor/PDCurses/pdcurses/inopts.c +324 -0
- data/vendor/PDCurses/pdcurses/insch.c +271 -0
- data/vendor/PDCurses/pdcurses/insstr.c +264 -0
- data/vendor/PDCurses/pdcurses/instr.c +246 -0
- data/vendor/PDCurses/pdcurses/kernel.c +259 -0
- data/vendor/PDCurses/pdcurses/keyname.c +157 -0
- data/vendor/PDCurses/pdcurses/mouse.c +438 -0
- data/vendor/PDCurses/pdcurses/move.c +57 -0
- data/vendor/PDCurses/pdcurses/outopts.c +159 -0
- data/vendor/PDCurses/pdcurses/overlay.c +214 -0
- data/vendor/PDCurses/pdcurses/pad.c +260 -0
- data/vendor/PDCurses/pdcurses/panel.c +633 -0
- data/vendor/PDCurses/pdcurses/printw.c +126 -0
- data/vendor/PDCurses/pdcurses/refresh.c +279 -0
- data/vendor/PDCurses/pdcurses/scanw.c +578 -0
- data/vendor/PDCurses/pdcurses/scr_dump.c +213 -0
- data/vendor/PDCurses/pdcurses/scroll.c +101 -0
- data/vendor/PDCurses/pdcurses/slk.c +591 -0
- data/vendor/PDCurses/pdcurses/termattr.c +182 -0
- data/vendor/PDCurses/pdcurses/terminfo.c +217 -0
- data/vendor/PDCurses/pdcurses/touch.c +163 -0
- data/vendor/PDCurses/pdcurses/util.c +312 -0
- data/vendor/PDCurses/pdcurses/window.c +569 -0
- data/vendor/PDCurses/sdl1/Makefile.mng +110 -0
- data/vendor/PDCurses/sdl1/README.md +31 -0
- data/vendor/PDCurses/sdl1/deffont.h +385 -0
- data/vendor/PDCurses/sdl1/deficon.h +23 -0
- data/vendor/PDCurses/sdl1/pdcclip.c +131 -0
- data/vendor/PDCurses/sdl1/pdcdisp.c +373 -0
- data/vendor/PDCurses/sdl1/pdcgetsc.c +30 -0
- data/vendor/PDCurses/sdl1/pdckbd.c +405 -0
- data/vendor/PDCurses/sdl1/pdcscrn.c +414 -0
- data/vendor/PDCurses/sdl1/pdcsdl.h +31 -0
- data/vendor/PDCurses/sdl1/pdcsetsc.c +64 -0
- data/vendor/PDCurses/sdl1/pdcutil.c +40 -0
- data/vendor/PDCurses/sdl1/sdltest.c +79 -0
- data/vendor/PDCurses/sdl2/CMakeLists.txt +76 -0
- data/vendor/PDCurses/sdl2/Makefile.vc +164 -0
- data/vendor/PDCurses/sdl2/README.md +34 -0
- data/vendor/PDCurses/sdl2/deffont.h +385 -0
- data/vendor/PDCurses/sdl2/deficon.h +23 -0
- data/vendor/PDCurses/sdl2/pdcclip.c +93 -0
- data/vendor/PDCurses/sdl2/pdcdisp.c +534 -0
- data/vendor/PDCurses/sdl2/pdcgetsc.c +30 -0
- data/vendor/PDCurses/sdl2/pdckbd.c +480 -0
- data/vendor/PDCurses/sdl2/pdcscrn.c +443 -0
- data/vendor/PDCurses/sdl2/pdcsdl.h +33 -0
- data/vendor/PDCurses/sdl2/pdcsetsc.c +67 -0
- data/vendor/PDCurses/sdl2/pdcutil.c +39 -0
- data/vendor/PDCurses/sdl2/sdltest.c +81 -0
- data/vendor/PDCurses/term.h +48 -0
- data/vendor/PDCurses/version.mif +7 -0
- data/vendor/PDCurses/vt/CMakeLists.txt +28 -0
- data/vendor/PDCurses/vt/Makefile.bcc +111 -0
- data/vendor/PDCurses/vt/Makefile.dmc +258 -0
- data/vendor/PDCurses/vt/Makefile.vc +144 -0
- data/vendor/PDCurses/vt/Makefile.wcc +107 -0
- data/vendor/PDCurses/vt/README.md +64 -0
- data/vendor/PDCurses/vt/pdcclip.c +20 -0
- data/vendor/PDCurses/vt/pdcdisp.c +284 -0
- data/vendor/PDCurses/vt/pdcgetsc.c +27 -0
- data/vendor/PDCurses/vt/pdckbd.c +394 -0
- data/vendor/PDCurses/vt/pdcscrn.c +434 -0
- data/vendor/PDCurses/vt/pdcsetsc.c +45 -0
- data/vendor/PDCurses/vt/pdcutil.c +43 -0
- data/vendor/PDCurses/vt/pdcvt.h +16 -0
- data/vendor/PDCurses/watcom.mif +68 -0
- data/vendor/PDCurses/wincon/CMakeLists.txt +27 -0
- data/vendor/PDCurses/wincon/Makefile.bcc +88 -0
- data/vendor/PDCurses/wincon/Makefile.dmc +256 -0
- data/vendor/PDCurses/wincon/Makefile.lcc +273 -0
- data/vendor/PDCurses/wincon/Makefile.mng +176 -0
- data/vendor/PDCurses/wincon/Makefile.vc +144 -0
- data/vendor/PDCurses/wincon/Makefile.wcc +51 -0
- data/vendor/PDCurses/wincon/README.md +85 -0
- data/vendor/PDCurses/wincon/pdcclip.c +174 -0
- data/vendor/PDCurses/wincon/pdcdisp.c +143 -0
- data/vendor/PDCurses/wincon/pdcgetsc.c +55 -0
- data/vendor/PDCurses/wincon/pdckbd.c +786 -0
- data/vendor/PDCurses/wincon/pdcscrn.c +717 -0
- data/vendor/PDCurses/wincon/pdcsetsc.c +91 -0
- data/vendor/PDCurses/wincon/pdcurses.ico +0 -0
- data/vendor/PDCurses/wincon/pdcurses.rc +28 -0
- data/vendor/PDCurses/wincon/pdcutil.c +41 -0
- data/vendor/PDCurses/wincon/pdcwin.h +31 -0
- data/vendor/PDCurses/wingui/CMakeLists.txt +27 -0
- data/vendor/PDCurses/wingui/Makefile.bcc +85 -0
- data/vendor/PDCurses/wingui/Makefile.dmc +259 -0
- data/vendor/PDCurses/wingui/Makefile.lcc +273 -0
- data/vendor/PDCurses/wingui/Makefile.mng +171 -0
- data/vendor/PDCurses/wingui/Makefile.vc +144 -0
- data/vendor/PDCurses/wingui/Makefile.wcc +51 -0
- data/vendor/PDCurses/wingui/README.md +93 -0
- data/vendor/PDCurses/wingui/pdcclip.c +174 -0
- data/vendor/PDCurses/wingui/pdcdisp.c +718 -0
- data/vendor/PDCurses/wingui/pdcgetsc.c +30 -0
- data/vendor/PDCurses/wingui/pdckbd.c +143 -0
- data/vendor/PDCurses/wingui/pdcscrn.c +2797 -0
- data/vendor/PDCurses/wingui/pdcsetsc.c +89 -0
- data/vendor/PDCurses/wingui/pdcurses.ico +0 -0
- data/vendor/PDCurses/wingui/pdcurses.rc +28 -0
- data/vendor/PDCurses/wingui/pdcutil.c +61 -0
- data/vendor/PDCurses/wingui/pdcwin.h +122 -0
- data/vendor/PDCurses/x11/Makefile.in +754 -0
- data/vendor/PDCurses/x11/PDCurses.spec +82 -0
- data/vendor/PDCurses/x11/README.md +62 -0
- data/vendor/PDCurses/x11/ScrollBox.c +319 -0
- data/vendor/PDCurses/x11/ScrollBox.h +51 -0
- data/vendor/PDCurses/x11/ScrollBoxP.h +70 -0
- data/vendor/PDCurses/x11/aclocal.m4 +994 -0
- data/vendor/PDCurses/x11/big_icon.xbm +46 -0
- data/vendor/PDCurses/x11/compose.h +201 -0
- data/vendor/PDCurses/x11/config.guess +1500 -0
- data/vendor/PDCurses/x11/config.h.in +100 -0
- data/vendor/PDCurses/x11/config.sub +1616 -0
- data/vendor/PDCurses/x11/configure +6700 -0
- data/vendor/PDCurses/x11/configure.ac +295 -0
- data/vendor/PDCurses/x11/debian/changelog +6 -0
- data/vendor/PDCurses/x11/debian/compat +1 -0
- data/vendor/PDCurses/x11/debian/control +11 -0
- data/vendor/PDCurses/x11/debian/copyright +27 -0
- data/vendor/PDCurses/x11/debian/rules +98 -0
- data/vendor/PDCurses/x11/install-sh +253 -0
- data/vendor/PDCurses/x11/little_icon.xbm +14 -0
- data/vendor/PDCurses/x11/ncurses_cfg.h +45 -0
- data/vendor/PDCurses/x11/pdcclip.c +173 -0
- data/vendor/PDCurses/x11/pdcdisp.c +85 -0
- data/vendor/PDCurses/x11/pdcgetsc.c +28 -0
- data/vendor/PDCurses/x11/pdckbd.c +104 -0
- data/vendor/PDCurses/x11/pdcscrn.c +258 -0
- data/vendor/PDCurses/x11/pdcsetsc.c +95 -0
- data/vendor/PDCurses/x11/pdcutil.c +52 -0
- data/vendor/PDCurses/x11/pdcx11.c +316 -0
- data/vendor/PDCurses/x11/pdcx11.h +191 -0
- data/vendor/PDCurses/x11/sb.c +155 -0
- data/vendor/PDCurses/x11/x11.c +3686 -0
- data/vendor/PDCurses/x11/xcurses-config.in +81 -0
- metadata +255 -21
| @@ -0,0 +1,107 @@ | |
| 1 | 
            +
            # Watcom WMAKE Makefile for PDCurses library - DOS (16 bit) or DOS/4GW Watcom C/C++ 10.6+
         | 
| 2 | 
            +
            #
         | 
| 3 | 
            +
            # Usage: wmake -f [path/]Makefile.wcc [DEBUG=Y] [MODEL=c|h|l|m|s|f]
         | 
| 4 | 
            +
            #        [CROSS=Y|N] [CHTYPE=[-DCHTYPE_16|-DCHTYPE_32]] [target]
         | 
| 5 | 
            +
            #
         | 
| 6 | 
            +
            # where target can be any of:
         | 
| 7 | 
            +
            # [all|demos|pdcurses.lib|testcurs.exe...]
         | 
| 8 | 
            +
            #
         | 
| 9 | 
            +
            # and MODEL specifies the memory model (16-bit compact/huge/large/medium/
         | 
| 10 | 
            +
            # small, or 32-bit flat)
         | 
| 11 | 
            +
            #
         | 
| 12 | 
            +
            # and CROSS=Y (CROSS=N) means to assume we are (are not) cross-compiling
         | 
| 13 | 
            +
            # (default is to auto-detect)
         | 
| 14 | 
            +
            #
         | 
| 15 | 
            +
            # and CHTYPE is an optional compiler flag to set the size of chtype (default
         | 
| 16 | 
            +
            # is 64 bits)
         | 
| 17 | 
            +
             | 
| 18 | 
            +
            # Change the memory MODEL here, if desired
         | 
| 19 | 
            +
            !ifndef MODEL
         | 
| 20 | 
            +
            MODEL		= l
         | 
| 21 | 
            +
            !endif
         | 
| 22 | 
            +
             | 
| 23 | 
            +
            !ifdef %PDCURSES_SRCDIR
         | 
| 24 | 
            +
            PDCURSES_SRCDIR	= $(%PDCURSES_SRCDIR)
         | 
| 25 | 
            +
            !else
         | 
| 26 | 
            +
            PDCURSES_SRCDIR	= ..
         | 
| 27 | 
            +
            !endif
         | 
| 28 | 
            +
             | 
| 29 | 
            +
            !include $(PDCURSES_SRCDIR)/version.mif
         | 
| 30 | 
            +
             | 
| 31 | 
            +
            !ifndef CROSS
         | 
| 32 | 
            +
            !ifeq %SHELL /bin/bash
         | 
| 33 | 
            +
            # assume we are cross-compiling
         | 
| 34 | 
            +
            CROSS		= Y
         | 
| 35 | 
            +
            !endif
         | 
| 36 | 
            +
            !ifeq %SHELL /bin/sh
         | 
| 37 | 
            +
            CROSS		= Y
         | 
| 38 | 
            +
            !endif
         | 
| 39 | 
            +
            !ifeq %SHELL /bin/csh
         | 
| 40 | 
            +
            CROSS		= Y
         | 
| 41 | 
            +
            !endif
         | 
| 42 | 
            +
            !ifeq %SHELL /bin/dash
         | 
| 43 | 
            +
            CROSS		= Y
         | 
| 44 | 
            +
            !endif
         | 
| 45 | 
            +
            !endif
         | 
| 46 | 
            +
             | 
| 47 | 
            +
            osdir		= $(PDCURSES_SRCDIR)/dos
         | 
| 48 | 
            +
            # Open Watcom README strongly recommends setting WATCOM environment variable...
         | 
| 49 | 
            +
            !ifeq CROSS Y
         | 
| 50 | 
            +
            !ifdef %WATCOM
         | 
| 51 | 
            +
            watcomdir	= $(%WATCOM)
         | 
| 52 | 
            +
            !else
         | 
| 53 | 
            +
            watcomdir	= "`which wcc | xargs realpath | xargs dirname`"/..
         | 
| 54 | 
            +
            !endif
         | 
| 55 | 
            +
            !endif
         | 
| 56 | 
            +
             | 
| 57 | 
            +
            !ifneq MODEL f
         | 
| 58 | 
            +
            CC		= wcc
         | 
| 59 | 
            +
            TARGET		= dos
         | 
| 60 | 
            +
            !else
         | 
| 61 | 
            +
            CC		= wcc386
         | 
| 62 | 
            +
            TARGET		= dos4g
         | 
| 63 | 
            +
            !endif
         | 
| 64 | 
            +
             | 
| 65 | 
            +
            CFLAGS		= -bt=$(TARGET) -zq -wx -m$(MODEL) -i=$(PDCURSES_SRCDIR)
         | 
| 66 | 
            +
            CFLAGS		+= $(CHTYPE)
         | 
| 67 | 
            +
            # the README also recommends setting INCLUDE; if absent, we need an extra -i=
         | 
| 68 | 
            +
            !ifndef %INCLUDE
         | 
| 69 | 
            +
            CFLAGS		+= -i=$(watcomdir)/h
         | 
| 70 | 
            +
            !endif
         | 
| 71 | 
            +
             | 
| 72 | 
            +
            !ifeq DEBUG Y
         | 
| 73 | 
            +
            CFLAGS  	+= -d2 -DPDCDEBUG
         | 
| 74 | 
            +
            LDFLAGS 	= D W A op q sys $(TARGET)
         | 
| 75 | 
            +
            !else
         | 
| 76 | 
            +
            CFLAGS  	+= -oneatx
         | 
| 77 | 
            +
            LDFLAGS		= op q sys $(TARGET)
         | 
| 78 | 
            +
            !ifeq CROSS Y
         | 
| 79 | 
            +
            !ifneq MODEL f
         | 
| 80 | 
            +
            LDFLAGS		+= libp $(watcomdir)/lib286/dos\;$(watcomdir)/lib286
         | 
| 81 | 
            +
            !else
         | 
| 82 | 
            +
            LDFLAGS		+= libp $(watcomdir)/lib386/dos\;$(watcomdir)/lib386
         | 
| 83 | 
            +
            !endif
         | 
| 84 | 
            +
            !endif
         | 
| 85 | 
            +
            !endif
         | 
| 86 | 
            +
             | 
| 87 | 
            +
            LIBEXE		= wlib -q -n -t
         | 
| 88 | 
            +
             | 
| 89 | 
            +
            !include $(PDCURSES_SRCDIR)/watcom.mif
         | 
| 90 | 
            +
             | 
| 91 | 
            +
            $(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
         | 
| 92 | 
            +
            	%write wccdos.lrf $(LIBOBJS) $(PDCOBJS)
         | 
| 93 | 
            +
            	$(LIBEXE) $@ @wccdos.lrf
         | 
| 94 | 
            +
            	-$(DEL) wccdos.lrf
         | 
| 95 | 
            +
            	-$(COPY) $(LIBCURSES) panel.lib
         | 
| 96 | 
            +
             | 
| 97 | 
            +
            !ifneq MODEL f
         | 
| 98 | 
            +
            PLATFORM1	= Watcom C++ 16-bit DOS
         | 
| 99 | 
            +
            PLATFORM2	= Open Watcom 1.6 for 16-bit DOS
         | 
| 100 | 
            +
            ARCNAME		= pdc$(VER)16w
         | 
| 101 | 
            +
            !else
         | 
| 102 | 
            +
            PLATFORM1	= Watcom C++ 32-bit DOS
         | 
| 103 | 
            +
            PLATFORM2	= Open Watcom 1.6 for 32-bit DOS
         | 
| 104 | 
            +
            ARCNAME		= pdc$(VER)32w
         | 
| 105 | 
            +
            !endif
         | 
| 106 | 
            +
             | 
| 107 | 
            +
            !include $(PDCURSES_SRCDIR)/makedist.mif
         | 
| @@ -0,0 +1,51 @@ | |
| 1 | 
            +
            PDCurses for DOS
         | 
| 2 | 
            +
            ================
         | 
| 3 | 
            +
             | 
| 4 | 
            +
            This directory contains PDCurses source code files specific to DOS.
         | 
| 5 | 
            +
             | 
| 6 | 
            +
             | 
| 7 | 
            +
            Building
         | 
| 8 | 
            +
            --------
         | 
| 9 | 
            +
             | 
| 10 | 
            +
            - Choose the appropriate makefile for your compiler:
         | 
| 11 | 
            +
             | 
| 12 | 
            +
                    Makefile     - DJGPP V2
         | 
| 13 | 
            +
                    Makefile.bcc - Borland C++ 3.0+
         | 
| 14 | 
            +
                    Makefile.wcc - Open Watcom 1.8+ (16-bit or 32-bit)
         | 
| 15 | 
            +
                    Makefile.dmc - Digital Mars
         | 
| 16 | 
            +
                    Makefile.msc - Microsoft C
         | 
| 17 | 
            +
             | 
| 18 | 
            +
            - For 16-bit compilers, you can change the memory MODEL in the makefile.
         | 
| 19 | 
            +
              (Large model is the default, and recommended.)
         | 
| 20 | 
            +
             | 
| 21 | 
            +
              (For Open Watcom, pass MODEL=f (flat model) to "wmake" in order to use
         | 
| 22 | 
            +
              the 32-bit compiler. Selcting a 16-bit MODEL (e.g. MODEL=l) will
         | 
| 23 | 
            +
              invoke the 16-bit compiler.)
         | 
| 24 | 
            +
             | 
| 25 | 
            +
            - Optionally, you can build in a different directory than the platform
         | 
| 26 | 
            +
              directory by setting PDCURSES_SRCDIR to point to the directory where
         | 
| 27 | 
            +
              you unpacked PDCurses, and changing to your target directory:
         | 
| 28 | 
            +
             | 
| 29 | 
            +
                    set PDCURSES_SRCDIR=c:\pdcurses
         | 
| 30 | 
            +
             | 
| 31 | 
            +
            - Build it:
         | 
| 32 | 
            +
             | 
| 33 | 
            +
                    make -f makefile
         | 
| 34 | 
            +
             | 
| 35 | 
            +
              (For Watcom, use "wmake" instead of "make"; for MSVC, "nmake".) You'll
         | 
| 36 | 
            +
              get the libraries (pdcurses.lib or .a, depending on your compiler; and
         | 
| 37 | 
            +
              panel.lib or .a), the demos (*.exe), and a lot of object files.
         | 
| 38 | 
            +
             | 
| 39 | 
            +
             | 
| 40 | 
            +
            Distribution Status
         | 
| 41 | 
            +
            -------------------
         | 
| 42 | 
            +
             | 
| 43 | 
            +
            The files in this directory are released to the Public Domain.
         | 
| 44 | 
            +
             | 
| 45 | 
            +
             | 
| 46 | 
            +
            Acknowledgements
         | 
| 47 | 
            +
            ----------------
         | 
| 48 | 
            +
             | 
| 49 | 
            +
            Watcom C port was provided by Pieter Kunst <kunst@prl.philips.nl>
         | 
| 50 | 
            +
             | 
| 51 | 
            +
            DJGPP 1.x port was provided by David Nugent <davidn@csource.oz.au>
         | 
| @@ -0,0 +1,9 @@ | |
| 1 | 
            +
            +addch.obj +addchstr.obj +addstr.obj +attr.obj +beep.obj +bkgd.obj &
         | 
| 2 | 
            +
            +border.obj +clear.obj +color.obj +delch.obj +deleteln.obj +deprec.obj &
         | 
| 3 | 
            +
            +getch.obj +getstr.obj +getyx.obj +inch.obj +inchstr.obj +initscr.obj &
         | 
| 4 | 
            +
            +inopts.obj +insch.obj +insstr.obj +instr.obj +kernel.obj +keyname.obj &
         | 
| 5 | 
            +
            +mouse.obj +move.obj +outopts.obj +overlay.obj +pad.obj +panel.obj &
         | 
| 6 | 
            +
            +printw.obj +refresh.obj +scanw.obj +scr_dump.obj +scroll.obj +slk.obj &
         | 
| 7 | 
            +
            +termattr.obj +terminfo.obj +touch.obj +util.obj +window.obj +debug.obj &
         | 
| 8 | 
            +
            +pdcclip.obj +pdcdisp.obj +pdcgetsc.obj +pdckbd.obj +pdcscrn.obj &
         | 
| 9 | 
            +
            +pdcsetsc.obj +pdcutil.obj ,lib.map
         | 
| @@ -0,0 +1,50 @@ | |
| 1 | 
            +
            -+addch.obj &
         | 
| 2 | 
            +
            -+addchstr.obj &
         | 
| 3 | 
            +
            -+addstr.obj &
         | 
| 4 | 
            +
            -+attr.obj &
         | 
| 5 | 
            +
            -+beep.obj &
         | 
| 6 | 
            +
            -+bkgd.obj &
         | 
| 7 | 
            +
            -+border.obj &
         | 
| 8 | 
            +
            -+clear.obj &
         | 
| 9 | 
            +
            -+color.obj &
         | 
| 10 | 
            +
            -+delch.obj &
         | 
| 11 | 
            +
            -+deleteln.obj &
         | 
| 12 | 
            +
            -+deprec.obj &
         | 
| 13 | 
            +
            -+getch.obj &
         | 
| 14 | 
            +
            -+getstr.obj &
         | 
| 15 | 
            +
            -+getyx.obj &
         | 
| 16 | 
            +
            -+inch.obj & 
         | 
| 17 | 
            +
            -+inchstr.obj &
         | 
| 18 | 
            +
            -+initscr.obj &
         | 
| 19 | 
            +
            -+inopts.obj &
         | 
| 20 | 
            +
            -+insch.obj &
         | 
| 21 | 
            +
            -+insstr.obj &
         | 
| 22 | 
            +
            -+instr.obj &
         | 
| 23 | 
            +
            -+kernel.obj &
         | 
| 24 | 
            +
            -+keyname.obj &
         | 
| 25 | 
            +
            -+mouse.obj &
         | 
| 26 | 
            +
            -+move.obj & 
         | 
| 27 | 
            +
            -+outopts.obj &
         | 
| 28 | 
            +
            -+overlay.obj &
         | 
| 29 | 
            +
            -+pad.obj &  
         | 
| 30 | 
            +
            -+panel.obj &
         | 
| 31 | 
            +
            -+printw.obj &
         | 
| 32 | 
            +
            -+refresh.obj &
         | 
| 33 | 
            +
            -+scanw.obj &
         | 
| 34 | 
            +
            -+scr_dump.obj &
         | 
| 35 | 
            +
            -+scroll.obj &
         | 
| 36 | 
            +
            -+slk.obj &  
         | 
| 37 | 
            +
            -+termattr.obj &
         | 
| 38 | 
            +
            -+terminfo.obj &
         | 
| 39 | 
            +
            -+touch.obj &
         | 
| 40 | 
            +
            -+util.obj & 
         | 
| 41 | 
            +
            -+window.obj &
         | 
| 42 | 
            +
            -+debug.obj &
         | 
| 43 | 
            +
            -+pdcclip.obj &
         | 
| 44 | 
            +
            -+pdcdisp.obj &
         | 
| 45 | 
            +
            -+pdcgetsc.obj &
         | 
| 46 | 
            +
            -+pdckbd.obj &
         | 
| 47 | 
            +
            -+pdcscrn.obj &
         | 
| 48 | 
            +
            -+pdcsetsc.obj &
         | 
| 49 | 
            +
            -+pdcutil.obj &
         | 
| 50 | 
            +
            ,lib.map;
         | 
| @@ -0,0 +1,132 @@ | |
| 1 | 
            +
            /* Public Domain Curses */
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            #include "pdcdos.h"
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            #include <stdlib.h>
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            /*man-start**************************************************************
         | 
| 8 | 
            +
             | 
| 9 | 
            +
            clipboard
         | 
| 10 | 
            +
            ---------
         | 
| 11 | 
            +
             | 
| 12 | 
            +
            ### Synopsis
         | 
| 13 | 
            +
             | 
| 14 | 
            +
                int PDC_getclipboard(char **contents, long *length);
         | 
| 15 | 
            +
                int PDC_setclipboard(const char *contents, long length);
         | 
| 16 | 
            +
                int PDC_freeclipboard(char *contents);
         | 
| 17 | 
            +
                int PDC_clearclipboard(void);
         | 
| 18 | 
            +
             | 
| 19 | 
            +
            ### Description
         | 
| 20 | 
            +
             | 
| 21 | 
            +
               PDC_getclipboard() gets the textual contents of the system's
         | 
| 22 | 
            +
               clipboard. This function returns the contents of the clipboard
         | 
| 23 | 
            +
               in the contents argument. It is the responsibilitiy of the
         | 
| 24 | 
            +
               caller to free the memory returned, via PDC_freeclipboard().
         | 
| 25 | 
            +
               The length of the clipboard contents is returned in the length
         | 
| 26 | 
            +
               argument.
         | 
| 27 | 
            +
             | 
| 28 | 
            +
               PDC_setclipboard copies the supplied text into the system's
         | 
| 29 | 
            +
               clipboard, emptying the clipboard prior to the copy.
         | 
| 30 | 
            +
             | 
| 31 | 
            +
               PDC_clearclipboard() clears the internal clipboard.
         | 
| 32 | 
            +
             | 
| 33 | 
            +
            ### Return Values
         | 
| 34 | 
            +
             | 
| 35 | 
            +
                indicator of success/failure of call.
         | 
| 36 | 
            +
                PDC_CLIP_SUCCESS        the call was successful
         | 
| 37 | 
            +
                PDC_CLIP_MEMORY_ERROR   unable to allocate sufficient memory for
         | 
| 38 | 
            +
                                        the clipboard contents
         | 
| 39 | 
            +
                PDC_CLIP_EMPTY          the clipboard contains no text
         | 
| 40 | 
            +
                PDC_CLIP_ACCESS_ERROR   no clipboard support
         | 
| 41 | 
            +
             | 
| 42 | 
            +
            ### Portability
         | 
| 43 | 
            +
                                         X/Open    BSD    SYS V
         | 
| 44 | 
            +
                PDC_getclipboard            -       -       -
         | 
| 45 | 
            +
                PDC_setclipboard            -       -       -
         | 
| 46 | 
            +
                PDC_freeclipboard           -       -       -
         | 
| 47 | 
            +
                PDC_clearclipboard          -       -       -
         | 
| 48 | 
            +
             | 
| 49 | 
            +
            **man-end****************************************************************/
         | 
| 50 | 
            +
             | 
| 51 | 
            +
            /* global clipboard contents, should be NULL if none set */
         | 
| 52 | 
            +
             | 
| 53 | 
            +
            static char *pdc_DOS_clipboard = NULL;
         | 
| 54 | 
            +
             | 
| 55 | 
            +
            int PDC_getclipboard(char **contents, long *length)
         | 
| 56 | 
            +
            {
         | 
| 57 | 
            +
                int len;
         | 
| 58 | 
            +
             | 
| 59 | 
            +
                PDC_LOG(("PDC_getclipboard() - called\n"));
         | 
| 60 | 
            +
             | 
| 61 | 
            +
                if (!pdc_DOS_clipboard)
         | 
| 62 | 
            +
                    return PDC_CLIP_EMPTY;
         | 
| 63 | 
            +
             | 
| 64 | 
            +
                len = strlen(pdc_DOS_clipboard);
         | 
| 65 | 
            +
                if ((*contents = malloc(len + 1)) == NULL)
         | 
| 66 | 
            +
                    return PDC_CLIP_MEMORY_ERROR;
         | 
| 67 | 
            +
             | 
| 68 | 
            +
                strcpy(*contents, pdc_DOS_clipboard);
         | 
| 69 | 
            +
                *length = len;
         | 
| 70 | 
            +
             | 
| 71 | 
            +
                return PDC_CLIP_SUCCESS;
         | 
| 72 | 
            +
            }
         | 
| 73 | 
            +
             | 
| 74 | 
            +
            int PDC_setclipboard(const char *contents, long length)
         | 
| 75 | 
            +
            {
         | 
| 76 | 
            +
                PDC_LOG(("PDC_setclipboard() - called\n"));
         | 
| 77 | 
            +
             | 
| 78 | 
            +
                if (pdc_DOS_clipboard)
         | 
| 79 | 
            +
                {
         | 
| 80 | 
            +
                    free(pdc_DOS_clipboard);
         | 
| 81 | 
            +
                    pdc_DOS_clipboard = NULL;
         | 
| 82 | 
            +
                }
         | 
| 83 | 
            +
             | 
| 84 | 
            +
                if (contents)
         | 
| 85 | 
            +
                {
         | 
| 86 | 
            +
                    if ((pdc_DOS_clipboard = malloc(length + 1)) == NULL)
         | 
| 87 | 
            +
                        return PDC_CLIP_MEMORY_ERROR;
         | 
| 88 | 
            +
             | 
| 89 | 
            +
                    strcpy(pdc_DOS_clipboard, contents);
         | 
| 90 | 
            +
                }
         | 
| 91 | 
            +
             | 
| 92 | 
            +
                return PDC_CLIP_SUCCESS;
         | 
| 93 | 
            +
            }
         | 
| 94 | 
            +
             | 
| 95 | 
            +
            int PDC_freeclipboard(char *contents)
         | 
| 96 | 
            +
            {
         | 
| 97 | 
            +
                PDC_LOG(("PDC_freeclipboard() - called\n"));
         | 
| 98 | 
            +
             | 
| 99 | 
            +
                /* should we also free empty the system clipboard? probably not */
         | 
| 100 | 
            +
             | 
| 101 | 
            +
                if (contents)
         | 
| 102 | 
            +
                {
         | 
| 103 | 
            +
             | 
| 104 | 
            +
                    /* NOTE: We free the memory, but we can not set caller's pointer 
         | 
| 105 | 
            +
                       to NULL, so if caller calls again then will try to access 
         | 
| 106 | 
            +
                       free'd memory.  We 1st overwrite memory with a string so if 
         | 
| 107 | 
            +
                       caller tries to use free memory they won't get what they 
         | 
| 108 | 
            +
                       expect & hopefully notice. */
         | 
| 109 | 
            +
             | 
| 110 | 
            +
                    /* memset(contents, 0xFD, strlen(contents)); */
         | 
| 111 | 
            +
             | 
| 112 | 
            +
                    if (strlen(contents) >= strlen("PDCURSES"))
         | 
| 113 | 
            +
                        strcpy(contents, "PDCURSES");
         | 
| 114 | 
            +
             | 
| 115 | 
            +
                    free(contents);
         | 
| 116 | 
            +
                }
         | 
| 117 | 
            +
             | 
| 118 | 
            +
                return PDC_CLIP_SUCCESS;
         | 
| 119 | 
            +
            }
         | 
| 120 | 
            +
             | 
| 121 | 
            +
            int PDC_clearclipboard(void)
         | 
| 122 | 
            +
            {
         | 
| 123 | 
            +
                PDC_LOG(("PDC_clearclipboard() - called\n"));
         | 
| 124 | 
            +
             | 
| 125 | 
            +
                if (pdc_DOS_clipboard) 
         | 
| 126 | 
            +
                {
         | 
| 127 | 
            +
                    free(pdc_DOS_clipboard);
         | 
| 128 | 
            +
                    pdc_DOS_clipboard = NULL;
         | 
| 129 | 
            +
                }
         | 
| 130 | 
            +
             | 
| 131 | 
            +
                return PDC_CLIP_SUCCESS;
         | 
| 132 | 
            +
            }
         | 
| @@ -0,0 +1,135 @@ | |
| 1 | 
            +
            /* Public Domain Curses */
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            #include "pdcdos.h"
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            /* ACS definitions originally by jshumate@wrdis01.robins.af.mil -- these
         | 
| 6 | 
            +
               match code page 437 and compatible pages (CP850, CP852, etc.) */
         | 
| 7 | 
            +
             | 
| 8 | 
            +
            #ifdef CHTYPE_LONG
         | 
| 9 | 
            +
               #define USE_UNICODE_ACS_CHARS 0
         | 
| 10 | 
            +
               #include "acs_defs.h"
         | 
| 11 | 
            +
            #endif
         | 
| 12 | 
            +
             | 
| 13 | 
            +
            #ifdef __PACIFIC__
         | 
| 14 | 
            +
            void movedata(unsigned sseg, unsigned soff, unsigned dseg,
         | 
| 15 | 
            +
                          unsigned doff, unsigned n)
         | 
| 16 | 
            +
            {
         | 
| 17 | 
            +
                far char *src = MK_FP(sseg, soff);
         | 
| 18 | 
            +
                far char *dst = MK_FP(dseg, doff);
         | 
| 19 | 
            +
             | 
| 20 | 
            +
                while (n--)
         | 
| 21 | 
            +
                    *dst++ = *src++;
         | 
| 22 | 
            +
            }
         | 
| 23 | 
            +
            #endif
         | 
| 24 | 
            +
             | 
| 25 | 
            +
            /* position hardware cursor at (y, x) */
         | 
| 26 | 
            +
             | 
| 27 | 
            +
            void PDC_gotoyx(int row, int col)
         | 
| 28 | 
            +
            {
         | 
| 29 | 
            +
                PDCREGS regs;
         | 
| 30 | 
            +
             | 
| 31 | 
            +
                PDC_LOG(("PDC_gotoyx() - called: row %d col %d\n", row, col));
         | 
| 32 | 
            +
             | 
| 33 | 
            +
                regs.h.ah = 0x02;
         | 
| 34 | 
            +
                regs.h.bh = 0;
         | 
| 35 | 
            +
                regs.h.dh = (unsigned char) row;
         | 
| 36 | 
            +
                regs.h.dl = (unsigned char) col;
         | 
| 37 | 
            +
                PDCINT(0x10, regs);
         | 
| 38 | 
            +
            }
         | 
| 39 | 
            +
             | 
| 40 | 
            +
            /* update the given physical line to look like the corresponding line in
         | 
| 41 | 
            +
               curscr */
         | 
| 42 | 
            +
             | 
| 43 | 
            +
            /* NOTE:  the original indexing into pdc_atrtab[] relied on three or five
         | 
| 44 | 
            +
               attribute bits in 'chtype' being adjacent to the color bits.  Such is
         | 
| 45 | 
            +
               not the case for 64-bit chtypes (CHTYPE_LONG == 2),  so we have to do
         | 
| 46 | 
            +
               additional bit-fiddling for that situation.  Code is similar in Win32
         | 
| 47 | 
            +
               and DOS flavors.  (BJG) */
         | 
| 48 | 
            +
             | 
| 49 | 
            +
            void PDC_transform_line(int lineno, int x, int len, const chtype *srcp)
         | 
| 50 | 
            +
            {
         | 
| 51 | 
            +
                int j;
         | 
| 52 | 
            +
             | 
| 53 | 
            +
                PDC_LOG(("PDC_transform_line() - called: line %d\n", lineno));
         | 
| 54 | 
            +
             | 
| 55 | 
            +
                if (pdc_direct_video)
         | 
| 56 | 
            +
                {
         | 
| 57 | 
            +
            #if SMALL || MEDIUM
         | 
| 58 | 
            +
            # ifndef __PACIFIC__
         | 
| 59 | 
            +
                    struct SREGS segregs;
         | 
| 60 | 
            +
            # endif
         | 
| 61 | 
            +
                    int ds;
         | 
| 62 | 
            +
            #endif
         | 
| 63 | 
            +
                    /* this should be enough for the maximum width of a screen */
         | 
| 64 | 
            +
             | 
| 65 | 
            +
                    struct {unsigned char text, attr;} temp_line[256];
         | 
| 66 | 
            +
             | 
| 67 | 
            +
                    /* replace the attribute part of the chtype with the actual
         | 
| 68 | 
            +
                       color value for each chtype in the line */
         | 
| 69 | 
            +
             | 
| 70 | 
            +
                    for (j = 0; j < len; j++)
         | 
| 71 | 
            +
                    {
         | 
| 72 | 
            +
                        chtype ch = srcp[j];
         | 
| 73 | 
            +
             | 
| 74 | 
            +
            #if defined( CHTYPE_LONG) && (CHTYPE_LONG >= 2)
         | 
| 75 | 
            +
                        temp_line[j].attr = pdc_atrtab[((ch >> PDC_ATTR_SHIFT) & 0x1f)
         | 
| 76 | 
            +
                                 | (((ch >> PDC_COLOR_SHIFT) & 0xff) << 5)];
         | 
| 77 | 
            +
            #else
         | 
| 78 | 
            +
                        temp_line[j].attr = pdc_atrtab[ch >> PDC_ATTR_SHIFT];
         | 
| 79 | 
            +
            #endif
         | 
| 80 | 
            +
             | 
| 81 | 
            +
            #ifdef CHTYPE_LONG
         | 
| 82 | 
            +
                        if (ch & A_ALTCHARSET && !(ch & 0xff80))
         | 
| 83 | 
            +
                            ch = acs_map[ch & 0x7f];
         | 
| 84 | 
            +
            #endif
         | 
| 85 | 
            +
                        temp_line[j].text = ch & 0xff;
         | 
| 86 | 
            +
                    }
         | 
| 87 | 
            +
             | 
| 88 | 
            +
            #ifdef __DJGPP__
         | 
| 89 | 
            +
                    dosmemput(temp_line, len * 2,
         | 
| 90 | 
            +
                              (unsigned long)_FAR_POINTER(pdc_video_seg,
         | 
| 91 | 
            +
                              pdc_video_ofs + (lineno * curscr->_maxx + x) * 2));
         | 
| 92 | 
            +
            #else
         | 
| 93 | 
            +
            # if SMALL || MEDIUM
         | 
| 94 | 
            +
            #  ifdef __PACIFIC__
         | 
| 95 | 
            +
                    ds = FP_SEG((void far *) temp_line);
         | 
| 96 | 
            +
            #  else
         | 
| 97 | 
            +
                    segread(&segregs);
         | 
| 98 | 
            +
                    ds = segregs.ds;
         | 
| 99 | 
            +
            #  endif
         | 
| 100 | 
            +
                    movedata(ds, (int)temp_line, pdc_video_seg,
         | 
| 101 | 
            +
                             pdc_video_ofs + (lineno * curscr->_maxx + x) * 2, len * 2);
         | 
| 102 | 
            +
            # else
         | 
| 103 | 
            +
                    memcpy((void *)_FAR_POINTER(pdc_video_seg,
         | 
| 104 | 
            +
                           pdc_video_ofs + (lineno * curscr->_maxx + x) * 2),
         | 
| 105 | 
            +
                           temp_line, len * 2);
         | 
| 106 | 
            +
            # endif
         | 
| 107 | 
            +
            #endif
         | 
| 108 | 
            +
             | 
| 109 | 
            +
                }
         | 
| 110 | 
            +
                else
         | 
| 111 | 
            +
                    for (j = 0; j < len;)
         | 
| 112 | 
            +
                    {
         | 
| 113 | 
            +
                        PDCREGS regs;
         | 
| 114 | 
            +
                        unsigned short count = 1;
         | 
| 115 | 
            +
                        chtype ch = srcp[j];
         | 
| 116 | 
            +
             | 
| 117 | 
            +
                        while ((j + count < len) && (ch == srcp[j + count]))
         | 
| 118 | 
            +
                            count++;
         | 
| 119 | 
            +
             | 
| 120 | 
            +
                        PDC_gotoyx(lineno, j + x);
         | 
| 121 | 
            +
             | 
| 122 | 
            +
                        regs.h.ah = 0x09;
         | 
| 123 | 
            +
                        regs.W.bx = pdc_atrtab[ch >> PDC_ATTR_SHIFT];
         | 
| 124 | 
            +
                        regs.W.cx = count;
         | 
| 125 | 
            +
            #ifdef CHTYPE_LONG
         | 
| 126 | 
            +
                        if (ch & A_ALTCHARSET && !(ch & 0xff80))
         | 
| 127 | 
            +
                            ch = acs_map[ch & 0x7f];
         | 
| 128 | 
            +
            #endif
         | 
| 129 | 
            +
                        regs.h.al = (unsigned char) (ch & 0xff);
         | 
| 130 | 
            +
             | 
| 131 | 
            +
                        PDCINT(0x10, regs);
         | 
| 132 | 
            +
             | 
| 133 | 
            +
                        j += count;
         | 
| 134 | 
            +
                    }
         | 
| 135 | 
            +
            }
         |