summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Franzke <benjaminfranzke@googlemail.com>2013-01-15 08:46:13 +0100
committerBenjamin Franzke <benjaminfranzke@googlemail.com>2013-01-15 08:46:13 +0100
commit7fe60435bce6595a9c58a9bfd8244d74b5320e96 (patch)
tree1ac714a916e02fc90901ddac8bc2a3c6d051d28c
downloaddirectfb-voodoo-7fe60435bce6595a9c58a9bfd8244d74b5320e96.zip
directfb-voodoo-7fe60435bce6595a9c58a9bfd8244d74b5320e96.tar.gz
directfb-voodoo-7fe60435bce6595a9c58a9bfd8244d74b5320e96.tar.bz2
Import DirectFB141_2k11R3_beta5
-rwxr-xr-x.directfbrc13
-rwxr-xr-x.directfbrc.jsapp12
-rwxr-xr-x.directfbrc.plfapp4
-rwxr-xr-x.fusiondalerc6
-rwxr-xr-xConfigGeneric/config.h29
-rwxr-xr-xConfigGeneric/direct/build.h39
-rwxr-xr-xConfigGeneric/fusion/build.h36
-rwxr-xr-xConfig_x11/config.h30
-rwxr-xr-xConfig_x11/direct/build.h39
-rwxr-xr-xConfig_x11/fusion/build.h36
-rwxr-xr-xConfig_x11/makefile106
-rwxr-xr-xJointSpace_License.pdfbin0 -> 71054 bytes
-rwxr-xr-xJslib/jslibrc/jslibrc_client.c653
-rwxr-xr-xJslib/jslibrc/jslibrc_client.h60
-rwxr-xr-xJslib/jslibrc/jslibrc_types.h431
-rwxr-xr-xJslib/tools/remco.c326
-rwxr-xr-xJslib/tools/remco2k11.c323
-rwxr-xr-xLICENSE.TXT511
-rwxr-xr-xREADME.TXT95
-rwxr-xr-xSource/++DFB/++dfb-config95
-rwxr-xr-xSource/++DFB/++dfb-config.in95
-rwxr-xr-xSource/++DFB/++dfb.pc11
-rwxr-xr-xSource/++DFB/++dfb.pc.in11
-rwxr-xr-xSource/++DFB/++dfb.spec71
-rwxr-xr-xSource/++DFB/++dfb.spec.in71
-rwxr-xr-xSource/++DFB/++dfb/++dfb_internal.h38
-rwxr-xr-xSource/++DFB/++dfb/MULTIO1
-rwxr-xr-xSource/++DFB/++dfb/Makefile529
-rwxr-xr-xSource/++DFB/++dfb/Makefile.am27
-rwxr-xr-xSource/++DFB/++dfb/Makefile.in529
-rwxr-xr-xSource/++DFB/++dfb/idirectfb.cpp232
-rwxr-xr-xSource/++DFB/++dfb/idirectfbdatabuffer.cpp137
-rwxr-xr-xSource/++DFB/++dfb/idirectfbdisplaylayer.cpp256
-rwxr-xr-xSource/++DFB/++dfb/idirectfbeventbuffer.cpp114
-rwxr-xr-xSource/++DFB/++dfb/idirectfbfont.cpp123
-rwxr-xr-xSource/++DFB/++dfb/idirectfbimageprovider.cpp50
-rwxr-xr-xSource/++DFB/++dfb/idirectfbinputdevice.cpp125
-rwxr-xr-xSource/++DFB/++dfb/idirectfbpalette.cpp76
-rwxr-xr-xSource/++DFB/++dfb/idirectfbscreen.cpp141
-rwxr-xr-xSource/++DFB/++dfb/idirectfbsurface.cpp466
-rwxr-xr-xSource/++DFB/++dfb/idirectfbvideoprovider.cpp139
-rwxr-xr-xSource/++DFB/++dfb/idirectfbwindow.cpp251
-rwxr-xr-xSource/++DFB/++dfb/ppdfb.cpp87
-rwxr-xr-xSource/++DFB/.DESTDIR1
-rwxr-xr-xSource/++DFB/AUTHORS1
-rwxr-xr-xSource/++DFB/COPYING0
-rwxr-xr-xSource/++DFB/ChangeLog527
-rwxr-xr-xSource/++DFB/INSTALL237
-rwxr-xr-xSource/++DFB/LockRectangle.diff32
-rwxr-xr-xSource/++DFB/Makefile711
-rwxr-xr-xSource/++DFB/Makefile.am6
-rwxr-xr-xSource/++DFB/Makefile.in711
-rwxr-xr-xSource/++DFB/NEWS0
-rwxr-xr-xSource/++DFB/README98
-rwxr-xr-xSource/++DFB/aclocal.m47742
-rwxr-xr-xSource/++DFB/autogen.sh138
-rwxr-xr-xSource/++DFB/boot1
-rwxr-xr-xSource/++DFB/boot.bcm13
-rwxr-xr-xSource/++DFB/boot.log146
-rwxr-xr-xSource/++DFB/boot.sh772313
-rwxr-xr-xSource/++DFB/config.guess1516
-rwxr-xr-xSource/++DFB/config.h53
-rwxr-xr-xSource/++DFB/config.h.in52
-rwxr-xr-xSource/++DFB/config.log912
-rwxr-xr-xSource/++DFB/config.status1100
-rwxr-xr-xSource/++DFB/config.sub1626
-rwxr-xr-xSource/++DFB/configure23406
-rwxr-xr-xSource/++DFB/configure.in73
-rwxr-xr-xSource/++DFB/depcomp589
-rwxr-xr-xSource/++DFB/dok.diff378
-rwxr-xr-xSource/++DFB/examples/Makefile657
-rwxr-xr-xSource/++DFB/examples/Makefile.am33
-rwxr-xr-xSource/++DFB/examples/Makefile.in657
-rwxr-xr-xSource/++DFB/examples/dfbapp.cpp173
-rwxr-xr-xSource/++DFB/examples/dfbapp.h65
-rwxr-xr-xSource/++DFB/examples/dfbimage.cpp142
-rwxr-xr-xSource/++DFB/examples/dfbimage.h61
-rwxr-xr-xSource/++DFB/examples/dfbplay.cpp172
-rwxr-xr-xSource/++DFB/examples/dfbshow.cpp113
-rwxr-xr-xSource/++DFB/examples/dfbswitch.cpp129
-rwxr-xr-xSource/++DFB/examples/simple.cpp106
-rwxr-xr-xSource/++DFB/examples/tests/Makefile569
-rwxr-xr-xSource/++DFB/examples/tests/Makefile.am14
-rwxr-xr-xSource/++DFB/examples/tests/Makefile.in569
-rwxr-xr-xSource/++DFB/examples/tests/data/Makefile346
-rwxr-xr-xSource/++DFB/examples/tests/data/Makefile.am9
-rwxr-xr-xSource/++DFB/examples/tests/data/Makefile.in346
-rwxr-xr-xSource/++DFB/examples/tests/data/test32x32.bmpbin0 -> 3126 bytes
-rwxr-xr-xSource/++DFB/examples/tests/data/test32x32.dfiffbin0 -> 4120 bytes
-rwxr-xr-xSource/++DFB/examples/tests/data/test32x32.gifbin0 -> 805 bytes
-rwxr-xr-xSource/++DFB/examples/tests/data/test32x32.jpegbin0 -> 978 bytes
-rwxr-xr-xSource/++DFB/examples/tests/data/test32x32.pngbin0 -> 1475 bytes
-rwxr-xr-xSource/++DFB/examples/tests/data/test32x32.ppmbin0 -> 3130 bytes
-rwxr-xr-xSource/++DFB/examples/tests/data/test32x32.tifbin0 -> 2228 bytes
-rwxr-xr-xSource/++DFB/examples/tests/data/test32x32x16.dfiffbin0 -> 2072 bytes
-rwxr-xr-xSource/++DFB/examples/tests/images.cpp129
-rwxr-xr-xSource/++DFB/font_rotation.patch53
-rwxr-xr-xSource/++DFB/include/++dfb.h453
-rwxr-xr-xSource/++DFB/include/Makefile429
-rwxr-xr-xSource/++DFB/include/Makefile.am20
-rwxr-xr-xSource/++DFB/include/Makefile.in429
-rwxr-xr-xSource/++DFB/include/idirectfb.h97
-rwxr-xr-xSource/++DFB/include/idirectfbdatabuffer.h73
-rwxr-xr-xSource/++DFB/include/idirectfbdisplaylayer.h122
-rwxr-xr-xSource/++DFB/include/idirectfbeventbuffer.h71
-rwxr-xr-xSource/++DFB/include/idirectfbfont.h84
-rwxr-xr-xSource/++DFB/include/idirectfbimageprovider.h58
-rwxr-xr-xSource/++DFB/include/idirectfbinputdevice.h67
-rwxr-xr-xSource/++DFB/include/idirectfbpalette.h68
-rwxr-xr-xSource/++DFB/include/idirectfbscreen.h103
-rwxr-xr-xSource/++DFB/include/idirectfbsurface.h211
-rwxr-xr-xSource/++DFB/include/idirectfbvideoprovider.h77
-rwxr-xr-xSource/++DFB/include/idirectfbwindow.h117
-rwxr-xr-xSource/++DFB/inst1
-rwxr-xr-xSource/++DFB/install-sh519
-rwxr-xr-xSource/++DFB/libtool7941
-rwxr-xr-xSource/++DFB/ltmain.sh6964
-rwxr-xr-xSource/++DFB/missing367
-rwxr-xr-xSource/++DFB/stamp-h11
-rwxr-xr-xSource/DiVine/AUTHORS1
-rwxr-xr-xSource/DiVine/COPYING504
-rwxr-xr-xSource/DiVine/ChangeLog256
-rwxr-xr-xSource/DiVine/INSTALL237
-rwxr-xr-xSource/DiVine/Makefile.am6
-rwxr-xr-xSource/DiVine/Makefile.in710
-rwxr-xr-xSource/DiVine/NEWS0
-rwxr-xr-xSource/DiVine/README11
-rwxr-xr-xSource/DiVine/aclocal.m47561
-rwxr-xr-xSource/DiVine/autogen.sh138
-rwxr-xr-xSource/DiVine/boot1
-rwxr-xr-xSource/DiVine/boot.log140
-rwxr-xr-xSource/DiVine/config.guess1526
-rwxr-xr-xSource/DiVine/config.h.in58
-rwxr-xr-xSource/DiVine/config.sub1658
-rwxr-xr-xSource/DiVine/configure21812
-rwxr-xr-xSource/DiVine/configure.in139
-rwxr-xr-xSource/DiVine/depcomp589
-rwxr-xr-xSource/DiVine/divine-config.in95
-rwxr-xr-xSource/DiVine/divine.pc.in10
-rwxr-xr-xSource/DiVine/driver/Makefile.am13
-rwxr-xr-xSource/DiVine/driver/Makefile.in488
-rwxr-xr-xSource/DiVine/driver/divine.c245
-rwxr-xr-xSource/DiVine/examples/Makefile.am26
-rwxr-xr-xSource/DiVine/examples/Makefile.in506
-rwxr-xr-xSource/DiVine/examples/divine-test.c38
-rwxr-xr-xSource/DiVine/examples/scroll_circle.spooky7
-rwxr-xr-xSource/DiVine/examples/scroll_diagonal.spooky12
-rwxr-xr-xSource/DiVine/examples/scroll_vertical.spooky10
-rwxr-xr-xSource/DiVine/examples/spooky.c386
-rwxr-xr-xSource/DiVine/include/Makefile.am6
-rwxr-xr-xSource/DiVine/include/Makefile.in418
-rwxr-xr-xSource/DiVine/include/divine.h136
-rwxr-xr-xSource/DiVine/install-sh519
-rwxr-xr-xSource/DiVine/lib/Makefile.am16
-rwxr-xr-xSource/DiVine/lib/Makefile.in496
-rwxr-xr-xSource/DiVine/lib/divine.c363
-rwxr-xr-xSource/DiVine/lib/idivine.c147
-rwxr-xr-xSource/DiVine/lib/idivine.h50
-rwxr-xr-xSource/DiVine/ltmain.sh6964
-rwxr-xr-xSource/DiVine/missing367
-rwxr-xr-xSource/DiVine/proxy/Makefile.am3
-rwxr-xr-xSource/DiVine/proxy/Makefile.in497
-rwxr-xr-xSource/DiVine/proxy/dispatcher/Makefile.am34
-rwxr-xr-xSource/DiVine/proxy/dispatcher/Makefile.in533
-rwxr-xr-xSource/DiVine/proxy/dispatcher/idivine_dispatcher.c219
-rwxr-xr-xSource/DiVine/proxy/dispatcher/idivine_dispatcher.h40
-rwxr-xr-xSource/DiVine/proxy/requestor/Makefile.am34
-rwxr-xr-xSource/DiVine/proxy/requestor/Makefile.in533
-rwxr-xr-xSource/DiVine/proxy/requestor/idivine_requestor.c197
-rwxr-xr-xSource/DiVine/rules/Makefile.am1
-rwxr-xr-xSource/DiVine/rules/Makefile.in339
-rwxr-xr-xSource/DiVine/rules/libobject.make9
-rwxr-xr-xSource/DirectFB/AUTHORS29
-rwxr-xr-xSource/DirectFB/COPYING504
-rwxr-xr-xSource/DirectFB/ChangeLog37587
-rwxr-xr-xSource/DirectFB/INSTALL237
-rwxr-xr-xSource/DirectFB/Makefile.am60
-rwxr-xr-xSource/DirectFB/Makefile.in811
-rwxr-xr-xSource/DirectFB/NEWS3626
-rwxr-xr-xSource/DirectFB/README437
-rwxr-xr-xSource/DirectFB/TODO63
-rwxr-xr-xSource/DirectFB/aclocal.m47776
-rwxr-xr-xSource/DirectFB/autogen.sh147
-rwxr-xr-xSource/DirectFB/compile142
-rwxr-xr-xSource/DirectFB/config.guess1516
-rwxr-xr-xSource/DirectFB/config.h.in161
-rwxr-xr-xSource/DirectFB/config.sub1626
-rwxr-xr-xSource/DirectFB/configure30851
-rwxr-xr-xSource/DirectFB/configure.in1797
-rwxr-xr-xSource/DirectFB/data/Makefile.am7
-rwxr-xr-xSource/DirectFB/data/Makefile.in431
-rwxr-xr-xSource/DirectFB/data/cursor.datbin0 -> 6400 bytes
-rwxr-xr-xSource/DirectFB/depcomp589
-rwxr-xr-xSource/DirectFB/directfb-config.in315
-rwxr-xr-xSource/DirectFB/directfb-internal.pc.in11
-rwxr-xr-xSource/DirectFB/directfb.pc.in12
-rwxr-xr-xSource/DirectFB/directfb.spec118
-rwxr-xr-xSource/DirectFB/directfb.spec.in118
-rwxr-xr-xSource/DirectFB/docs/Makefile.am40
-rwxr-xr-xSource/DirectFB/docs/Makefile.in691
-rwxr-xr-xSource/DirectFB/docs/README.screenshots58
-rwxr-xr-xSource/DirectFB/docs/dfbg.1.in54
-rwxr-xr-xSource/DirectFB/docs/directfb-csource.1.in79
-rwxr-xr-xSource/DirectFB/docs/directfbrc.5.in583
-rwxr-xr-xSource/DirectFB/docs/html/Makefile.am16
-rwxr-xr-xSource/DirectFB/docs/html/Makefile.in414
-rwxr-xr-xSource/DirectFB/docs/html/dfb_logo-alpha.pngbin0 -> 12919 bytes
-rwxr-xr-xSource/DirectFB/fb.modes90
-rwxr-xr-xSource/DirectFB/gfxdrivers/Makefile.am151
-rwxr-xr-xSource/DirectFB/gfxdrivers/Makefile.in622
-rwxr-xr-xSource/DirectFB/gfxdrivers/ati128/Makefile.am41
-rwxr-xr-xSource/DirectFB/gfxdrivers/ati128/Makefile.in603
-rwxr-xr-xSource/DirectFB/gfxdrivers/ati128/ati128.c842
-rwxr-xr-xSource/DirectFB/gfxdrivers/ati128/ati128.h76
-rwxr-xr-xSource/DirectFB/gfxdrivers/ati128/ati128_overlay.c447
-rwxr-xr-xSource/DirectFB/gfxdrivers/ati128/ati128_state.c314
-rwxr-xr-xSource/DirectFB/gfxdrivers/ati128/ati128_state.h62
-rwxr-xr-xSource/DirectFB/gfxdrivers/ati128/mmio.h121
-rwxr-xr-xSource/DirectFB/gfxdrivers/ati128/regs.h919
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/Makefile.am47
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/Makefile.in619
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/mmio.h43
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/regs2d.h197
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/regs3d.h1641
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/uc_accel.c504
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/uc_accel.h119
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/uc_fifo.c198
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/uc_fifo.h268
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/uc_hw.h93
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/uc_hwmap.c357
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/uc_hwset.c419
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/uc_overlay.c320
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/uc_overlay.h85
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/uc_ovl_hwmap.c560
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/uc_ovl_hwset.c266
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/uc_primary.c176
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/uc_state.c269
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/uc_state.h68
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/unichrome.c548
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/unichrome.h140
-rwxr-xr-xSource/DirectFB/gfxdrivers/cle266/vidregs.h498
-rwxr-xr-xSource/DirectFB/gfxdrivers/cyber5k/Makefile.am41
-rwxr-xr-xSource/DirectFB/gfxdrivers/cyber5k/Makefile.in607
-rwxr-xr-xSource/DirectFB/gfxdrivers/cyber5k/cyber5k.c824
-rwxr-xr-xSource/DirectFB/gfxdrivers/cyber5k/cyber5k.h63
-rwxr-xr-xSource/DirectFB/gfxdrivers/cyber5k/cyber5k_alpha.c260
-rwxr-xr-xSource/DirectFB/gfxdrivers/cyber5k/cyber5k_alpha.h64
-rwxr-xr-xSource/DirectFB/gfxdrivers/cyber5k/cyber5k_overlay.c376
-rwxr-xr-xSource/DirectFB/gfxdrivers/cyber5k/cyber5k_overlay.h92
-rwxr-xr-xSource/DirectFB/gfxdrivers/cyber5k/cyber5k_underlay.c301
-rwxr-xr-xSource/DirectFB/gfxdrivers/cyber5k/mmio.h126
-rwxr-xr-xSource/DirectFB/gfxdrivers/cyber5k/regs.h387
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/Makefile.am77
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/Makefile.in771
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/Makefile.kernel6
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/c64xdump.c117
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/davinci_2d.c1050
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/davinci_2d.h79
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/davinci_c64x.c2053
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/davinci_c64x.h935
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/davinci_gfxdriver.c343
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/davinci_gfxdriver.h169
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/davinci_osd.c681
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/davinci_osd.h53
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/davinci_osd_pool.c394
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/davinci_osd_pool.h39
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/davinci_screen.c124
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/davinci_screen.h39
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/davinci_video.c744
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/davinci_video.h58
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/davinci_video_pool.c393
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/davinci_video_pool.h39
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/davincifb.h581
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/directfbrc56
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/kernel-module/Makefile34
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/kernel-module/c64x/Makefile2
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/kernel-module/c64x/c64x.c507
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/kernel-module/include/linux/c64x.h281
-rwxr-xr-xSource/DirectFB/gfxdrivers/davinci/patches/ti-davinci-2.6.10-mvl401-fbio_set_start.patch123
-rwxr-xr-xSource/DirectFB/gfxdrivers/ep9x/Makefile.am33
-rwxr-xr-xSource/DirectFB/gfxdrivers/ep9x/Makefile.in595
-rwxr-xr-xSource/DirectFB/gfxdrivers/ep9x/ep9x.c474
-rwxr-xr-xSource/DirectFB/gfxdrivers/ep9x/ep9x.h87
-rwxr-xr-xSource/DirectFB/gfxdrivers/gl/Makefile.am36
-rwxr-xr-xSource/DirectFB/gfxdrivers/gl/Makefile.in598
-rwxr-xr-xSource/DirectFB/gfxdrivers/gl/gl_2d.c928
-rwxr-xr-xSource/DirectFB/gfxdrivers/gl/gl_2d.h93
-rwxr-xr-xSource/DirectFB/gfxdrivers/gl/gl_gfxdriver.c217
-rwxr-xr-xSource/DirectFB/gfxdrivers/gl/gl_gfxdriver.h63
-rwxr-xr-xSource/DirectFB/gfxdrivers/i810/Makefile.am35
-rwxr-xr-xSource/DirectFB/gfxdrivers/i810/Makefile.in597
-rwxr-xr-xSource/DirectFB/gfxdrivers/i810/i810.c1044
-rwxr-xr-xSource/DirectFB/gfxdrivers/i810/i810.h832
-rwxr-xr-xSource/DirectFB/gfxdrivers/i810/i810_overlay.c598
-rwxr-xr-xSource/DirectFB/gfxdrivers/i830/Makefile.am35
-rwxr-xr-xSource/DirectFB/gfxdrivers/i830/Makefile.in597
-rwxr-xr-xSource/DirectFB/gfxdrivers/i830/i830.c635
-rwxr-xr-xSource/DirectFB/gfxdrivers/i830/i830.h406
-rwxr-xr-xSource/DirectFB/gfxdrivers/i830/i830_overlay.c807
-rwxr-xr-xSource/DirectFB/gfxdrivers/mach64/Makefile.am39
-rwxr-xr-xSource/DirectFB/gfxdrivers/mach64/Makefile.in603
-rwxr-xr-xSource/DirectFB/gfxdrivers/mach64/mach64.c1640
-rwxr-xr-xSource/DirectFB/gfxdrivers/mach64/mach64.h120
-rwxr-xr-xSource/DirectFB/gfxdrivers/mach64/mach64_overlay.c724
-rwxr-xr-xSource/DirectFB/gfxdrivers/mach64/mach64_state.c654
-rwxr-xr-xSource/DirectFB/gfxdrivers/mach64/mach64_state.h90
-rwxr-xr-xSource/DirectFB/gfxdrivers/mach64/mmio.h198
-rwxr-xr-xSource/DirectFB/gfxdrivers/mach64/regs.h883
-rwxr-xr-xSource/DirectFB/gfxdrivers/matrox/Makefile.am47
-rwxr-xr-xSource/DirectFB/gfxdrivers/matrox/Makefile.in618
-rwxr-xr-xSource/DirectFB/gfxdrivers/matrox/matrox.c2930
-rwxr-xr-xSource/DirectFB/gfxdrivers/matrox/matrox.h157
-rwxr-xr-xSource/DirectFB/gfxdrivers/matrox/matrox_3d.c627
-rwxr-xr-xSource/DirectFB/gfxdrivers/matrox/matrox_3d.h36
-rwxr-xr-xSource/DirectFB/gfxdrivers/matrox/matrox_bes.c783
-rwxr-xr-xSource/DirectFB/gfxdrivers/matrox/matrox_crtc2.c751
-rwxr-xr-xSource/DirectFB/gfxdrivers/matrox/matrox_maven.c785
-rwxr-xr-xSource/DirectFB/gfxdrivers/matrox/matrox_maven.h64
-rwxr-xr-xSource/DirectFB/gfxdrivers/matrox/matrox_screen_crtc2.c279
-rwxr-xr-xSource/DirectFB/gfxdrivers/matrox/matrox_spic.c314
-rwxr-xr-xSource/DirectFB/gfxdrivers/matrox/matrox_state.c810
-rwxr-xr-xSource/DirectFB/gfxdrivers/matrox/matrox_state.h70
-rwxr-xr-xSource/DirectFB/gfxdrivers/matrox/mmio.h118
-rwxr-xr-xSource/DirectFB/gfxdrivers/matrox/regs.h454
-rwxr-xr-xSource/DirectFB/gfxdrivers/neomagic/Makefile.am35
-rwxr-xr-xSource/DirectFB/gfxdrivers/neomagic/Makefile.in601
-rwxr-xr-xSource/DirectFB/gfxdrivers/neomagic/neo2200.c570
-rwxr-xr-xSource/DirectFB/gfxdrivers/neomagic/neo_overlay.c349
-rwxr-xr-xSource/DirectFB/gfxdrivers/neomagic/neomagic.c223
-rwxr-xr-xSource/DirectFB/gfxdrivers/neomagic/neomagic.h147
-rwxr-xr-xSource/DirectFB/gfxdrivers/nsc/Makefile.am40
-rwxr-xr-xSource/DirectFB/gfxdrivers/nsc/Makefile.in714
-rwxr-xr-xSource/DirectFB/gfxdrivers/nsc/include/Makefile.am5
-rwxr-xr-xSource/DirectFB/gfxdrivers/nsc/include/Makefile.in403
-rwxr-xr-xSource/DirectFB/gfxdrivers/nsc/include/gfx_regs.h1733
-rwxr-xr-xSource/DirectFB/gfxdrivers/nsc/include/gfx_type.h426
-rwxr-xr-xSource/DirectFB/gfxdrivers/nsc/include/nsc_galproto.h1987
-rwxr-xr-xSource/DirectFB/gfxdrivers/nsc/include/pnl_defs.h201
-rwxr-xr-xSource/DirectFB/gfxdrivers/nsc/nsc.c592
-rwxr-xr-xSource/DirectFB/gfxdrivers/nsc/nsc_galfns.c4905
-rwxr-xr-xSource/DirectFB/gfxdrivers/nvidia/Makefile.am45
-rwxr-xr-xSource/DirectFB/gfxdrivers/nvidia/Makefile.in614
-rwxr-xr-xSource/DirectFB/gfxdrivers/nvidia/nvidia.c2046
-rwxr-xr-xSource/DirectFB/gfxdrivers/nvidia/nvidia.h238
-rwxr-xr-xSource/DirectFB/gfxdrivers/nvidia/nvidia_2d.c549
-rwxr-xr-xSource/DirectFB/gfxdrivers/nvidia/nvidia_2d.h48
-rwxr-xr-xSource/DirectFB/gfxdrivers/nvidia/nvidia_3d.c522
-rwxr-xr-xSource/DirectFB/gfxdrivers/nvidia/nvidia_3d.h36
-rwxr-xr-xSource/DirectFB/gfxdrivers/nvidia/nvidia_accel.h246
-rwxr-xr-xSource/DirectFB/gfxdrivers/nvidia/nvidia_objects.h160
-rwxr-xr-xSource/DirectFB/gfxdrivers/nvidia/nvidia_overlay.c566
-rwxr-xr-xSource/DirectFB/gfxdrivers/nvidia/nvidia_primary.c189
-rwxr-xr-xSource/DirectFB/gfxdrivers/nvidia/nvidia_regs.h1636
-rwxr-xr-xSource/DirectFB/gfxdrivers/nvidia/nvidia_state.c730
-rwxr-xr-xSource/DirectFB/gfxdrivers/nvidia/nvidia_state.h58
-rwxr-xr-xSource/DirectFB/gfxdrivers/omap/Makefile.am34
-rwxr-xr-xSource/DirectFB/gfxdrivers/omap/Makefile.in598
-rwxr-xr-xSource/DirectFB/gfxdrivers/omap/omap.c142
-rwxr-xr-xSource/DirectFB/gfxdrivers/omap/omap.h48
-rwxr-xr-xSource/DirectFB/gfxdrivers/omap/omap_primary.c102
-rwxr-xr-xSource/DirectFB/gfxdrivers/omap/omapfb.h163
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/Makefile.am52
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/Makefile.in625
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/r100_3d.c523
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/r100_state.c954
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/r200_3d.c508
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/r200_state.c985
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/r300_3d.c492
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/r300_program.h151
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/r300_state.c1103
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/radeon.c1753
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/radeon.h224
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/radeon_2d.c397
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/radeon_2d.h38
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/radeon_3d.h81
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/radeon_chipsets.h169
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/radeon_crtc1.c171
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/radeon_crtc2.c1011
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/radeon_mmio.h163
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/radeon_overlay.c983
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/radeon_regs.h4364
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/radeon_state.h160
-rwxr-xr-xSource/DirectFB/gfxdrivers/radeon/vertex_shader.h83
-rwxr-xr-xSource/DirectFB/gfxdrivers/savage/Makefile.am45
-rwxr-xr-xSource/DirectFB/gfxdrivers/savage/Makefile.in611
-rwxr-xr-xSource/DirectFB/gfxdrivers/savage/mmio.h98
-rwxr-xr-xSource/DirectFB/gfxdrivers/savage/savage.c346
-rwxr-xr-xSource/DirectFB/gfxdrivers/savage/savage.h145
-rwxr-xr-xSource/DirectFB/gfxdrivers/savage/savage2000.c199
-rwxr-xr-xSource/DirectFB/gfxdrivers/savage/savage2000.h105
-rwxr-xr-xSource/DirectFB/gfxdrivers/savage/savage3d.c561
-rwxr-xr-xSource/DirectFB/gfxdrivers/savage/savage3d.h121
-rwxr-xr-xSource/DirectFB/gfxdrivers/savage/savage4.c599
-rwxr-xr-xSource/DirectFB/gfxdrivers/savage/savage4.h146
-rwxr-xr-xSource/DirectFB/gfxdrivers/savage/savage_bci.h208
-rwxr-xr-xSource/DirectFB/gfxdrivers/savage/savage_streams_old.c916
-rwxr-xr-xSource/DirectFB/gfxdrivers/savage/savage_streams_old.h142
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/Makefile.am80
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/Makefile.in726
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/Makefile.kernel61
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/README.sh7722172
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/directfbrc.sh772210
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/directfbrc.sh772310
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/kernel-module/Makefile3
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/kernel-module/sh7722.c1192
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/kernel-module/sh7722.h21
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/kernel-module/sh7723.c566
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/kernel-module/sh7723.h21
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/kernel-module/sh772x_driver.c82
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/kernel-module/sh772x_gfx.h105
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/sh7722.c490
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/sh7722.h131
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/sh7722_blt.c2013
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/sh7722_blt.h214
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/sh7722_jpeg.c395
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/sh7722_jpeglib.c1654
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/sh7722_jpeglib.h47
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/sh7722_jpegtool.c142
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/sh7722_layer.c529
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/sh7722_layer.h11
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/sh7722_lcd.c172
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/sh7722_lcd.h17
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/sh7722_multi.c412
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/sh7722_multi.h11
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/sh7722_regs.h624
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/sh7722_screen.c85
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/sh7722_screen.h9
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/sh7722_types.h136
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/sh7723_blt.c890
-rwxr-xr-xSource/DirectFB/gfxdrivers/sh772x/sh7723_blt.h239
-rwxr-xr-xSource/DirectFB/gfxdrivers/sis315/Makefile.am42
-rwxr-xr-xSource/DirectFB/gfxdrivers/sis315/Makefile.in607
-rwxr-xr-xSource/DirectFB/gfxdrivers/sis315/sis315.c355
-rwxr-xr-xSource/DirectFB/gfxdrivers/sis315/sis315.h59
-rwxr-xr-xSource/DirectFB/gfxdrivers/sis315/sis315_accel.c250
-rwxr-xr-xSource/DirectFB/gfxdrivers/sis315/sis315_accel.h32
-rwxr-xr-xSource/DirectFB/gfxdrivers/sis315/sis315_compat.h89
-rwxr-xr-xSource/DirectFB/gfxdrivers/sis315/sis315_mmio.c51
-rwxr-xr-xSource/DirectFB/gfxdrivers/sis315/sis315_mmio.h37
-rwxr-xr-xSource/DirectFB/gfxdrivers/sis315/sis315_regs.h161
-rwxr-xr-xSource/DirectFB/gfxdrivers/sis315/sis315_state.c164
-rwxr-xr-xSource/DirectFB/gfxdrivers/sis315/sis315_state.h34
-rwxr-xr-xSource/DirectFB/gfxdrivers/tdfx/Makefile.am34
-rwxr-xr-xSource/DirectFB/gfxdrivers/tdfx/Makefile.in595
-rwxr-xr-xSource/DirectFB/gfxdrivers/tdfx/tdfx.c884
-rwxr-xr-xSource/DirectFB/gfxdrivers/tdfx/tdfx.h250
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/Makefile.am50
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/Makefile.in626
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/mmio.h43
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/regs2d.h197
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/regs3d.h1642
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/uc_accel.c578
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/uc_accel.h123
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/uc_fifo.c198
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/uc_fifo.h268
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/uc_hw.h105
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/uc_hwmap.c362
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/uc_hwset.c446
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/uc_ioctl.h35
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/uc_overlay.c405
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/uc_overlay.h98
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/uc_ovl_hwmap.c609
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/uc_ovl_hwset.c283
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/uc_primary.c182
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/uc_probe.h42
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/uc_spic.c193
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/uc_state.c350
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/uc_state.h68
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/unichrome.c596
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/unichrome.h151
-rwxr-xr-xSource/DirectFB/gfxdrivers/unichrome/vidregs.h499
-rwxr-xr-xSource/DirectFB/gfxdrivers/vmware/Makefile.am36
-rwxr-xr-xSource/DirectFB/gfxdrivers/vmware/Makefile.in598
-rwxr-xr-xSource/DirectFB/gfxdrivers/vmware/vmware_2d.c402
-rwxr-xr-xSource/DirectFB/gfxdrivers/vmware/vmware_2d.h67
-rwxr-xr-xSource/DirectFB/gfxdrivers/vmware/vmware_gfxdriver.c128
-rwxr-xr-xSource/DirectFB/gfxdrivers/vmware/vmware_gfxdriver.h58
-rwxr-xr-xSource/DirectFB/include/Makefile.am119
-rwxr-xr-xSource/DirectFB/include/Makefile.in590
-rwxr-xr-xSource/DirectFB/include/dfb_types.h46
-rwxr-xr-xSource/DirectFB/include/dfiff.h60
-rwxr-xr-xSource/DirectFB/include/dgiff.h101
-rwxr-xr-xSource/DirectFB/include/directfb.h6642
-rwxr-xr-xSource/DirectFB/include/directfb_keyboard.h820
-rwxr-xr-xSource/DirectFB/include/directfb_keynames.h639
-rwxr-xr-xSource/DirectFB/include/directfb_strings.h474
-rwxr-xr-xSource/DirectFB/include/directfb_util.h612
-rwxr-xr-xSource/DirectFB/include/directfb_version.h38
-rwxr-xr-xSource/DirectFB/include/directfb_version.h.in38
-rwxr-xr-xSource/DirectFB/include/directfb_windows.h240
-rwxr-xr-xSource/DirectFB/include/directfbgl.h118
-rwxr-xr-xSource/DirectFB/inputdrivers/Makefile.am98
-rwxr-xr-xSource/DirectFB/inputdrivers/Makefile.in597
-rwxr-xr-xSource/DirectFB/inputdrivers/dbox2remote/Makefile.am31
-rwxr-xr-xSource/DirectFB/inputdrivers/dbox2remote/Makefile.in598
-rwxr-xr-xSource/DirectFB/inputdrivers/dbox2remote/dbox2remote.c340
-rwxr-xr-xSource/DirectFB/inputdrivers/dreamboxremote/Makefile.am31
-rwxr-xr-xSource/DirectFB/inputdrivers/dreamboxremote/Makefile.in598
-rwxr-xr-xSource/DirectFB/inputdrivers/dreamboxremote/dreamboxremote.c329
-rwxr-xr-xSource/DirectFB/inputdrivers/dynapro/Makefile.am30
-rwxr-xr-xSource/DirectFB/inputdrivers/dynapro/Makefile.in592
-rwxr-xr-xSource/DirectFB/inputdrivers/dynapro/dynapro.c356
-rwxr-xr-xSource/DirectFB/inputdrivers/elo/Makefile.am31
-rwxr-xr-xSource/DirectFB/inputdrivers/elo/Makefile.in592
-rwxr-xr-xSource/DirectFB/inputdrivers/elo/elo.c539
-rwxr-xr-xSource/DirectFB/inputdrivers/gunze/Makefile.am30
-rwxr-xr-xSource/DirectFB/inputdrivers/gunze/Makefile.in592
-rwxr-xr-xSource/DirectFB/inputdrivers/gunze/gunze.c576
-rwxr-xr-xSource/DirectFB/inputdrivers/h3600_ts/Makefile.am31
-rwxr-xr-xSource/DirectFB/inputdrivers/h3600_ts/Makefile.in593
-rwxr-xr-xSource/DirectFB/inputdrivers/h3600_ts/h3600_ts.c239
-rwxr-xr-xSource/DirectFB/inputdrivers/joystick/Makefile.am31
-rwxr-xr-xSource/DirectFB/inputdrivers/joystick/Makefile.in594
-rwxr-xr-xSource/DirectFB/inputdrivers/joystick/joystick.c279
-rwxr-xr-xSource/DirectFB/inputdrivers/keyboard/Makefile.am33
-rwxr-xr-xSource/DirectFB/inputdrivers/keyboard/Makefile.in596
-rwxr-xr-xSource/DirectFB/inputdrivers/keyboard/keyboard.c524
-rwxr-xr-xSource/DirectFB/inputdrivers/linux_input/Makefile.am34
-rwxr-xr-xSource/DirectFB/inputdrivers/linux_input/Makefile.in601
-rwxr-xr-xSource/DirectFB/inputdrivers/linux_input/input_fake.h84
-rwxr-xr-xSource/DirectFB/inputdrivers/linux_input/linux_input.c1994
-rwxr-xr-xSource/DirectFB/inputdrivers/lirc/Makefile.am32
-rwxr-xr-xSource/DirectFB/inputdrivers/lirc/Makefile.in593
-rwxr-xr-xSource/DirectFB/inputdrivers/lirc/lirc.c353
-rwxr-xr-xSource/DirectFB/inputdrivers/mutouch/Makefile.am30
-rwxr-xr-xSource/DirectFB/inputdrivers/mutouch/Makefile.in590
-rwxr-xr-xSource/DirectFB/inputdrivers/mutouch/mutouch.c615
-rwxr-xr-xSource/DirectFB/inputdrivers/penmount/Makefile.am29
-rwxr-xr-xSource/DirectFB/inputdrivers/penmount/Makefile.in591
-rwxr-xr-xSource/DirectFB/inputdrivers/penmount/penmount.c363
-rwxr-xr-xSource/DirectFB/inputdrivers/ps2mouse/Makefile.am31
-rwxr-xr-xSource/DirectFB/inputdrivers/ps2mouse/Makefile.in594
-rwxr-xr-xSource/DirectFB/inputdrivers/ps2mouse/ps2mouse.c576
-rwxr-xr-xSource/DirectFB/inputdrivers/serialmouse/Makefile.am30
-rwxr-xr-xSource/DirectFB/inputdrivers/serialmouse/Makefile.in595
-rwxr-xr-xSource/DirectFB/inputdrivers/serialmouse/serialmouse.c572
-rwxr-xr-xSource/DirectFB/inputdrivers/sonypi/Makefile.am31
-rwxr-xr-xSource/DirectFB/inputdrivers/sonypi/Makefile.in592
-rwxr-xr-xSource/DirectFB/inputdrivers/sonypi/sonypi.c265
-rwxr-xr-xSource/DirectFB/inputdrivers/tslib/Makefile.am33
-rwxr-xr-xSource/DirectFB/inputdrivers/tslib/Makefile.in605
-rwxr-xr-xSource/DirectFB/inputdrivers/tslib/tslib.c292
-rwxr-xr-xSource/DirectFB/inputdrivers/ucb1x00_ts/Makefile.am31
-rwxr-xr-xSource/DirectFB/inputdrivers/ucb1x00_ts/Makefile.in594
-rwxr-xr-xSource/DirectFB/inputdrivers/ucb1x00_ts/ucb1x00_ts.c361
-rwxr-xr-xSource/DirectFB/inputdrivers/wm97xx_ts/Makefile.am31
-rwxr-xr-xSource/DirectFB/inputdrivers/wm97xx_ts/Makefile.in593
-rwxr-xr-xSource/DirectFB/inputdrivers/wm97xx_ts/wm97xx_ts.c260
-rwxr-xr-xSource/DirectFB/inputdrivers/zytronic/Makefile.am30
-rwxr-xr-xSource/DirectFB/inputdrivers/zytronic/Makefile.in591
-rwxr-xr-xSource/DirectFB/inputdrivers/zytronic/zytronic.c628
-rwxr-xr-xSource/DirectFB/install-sh519
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBFont/Makefile.am77
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBFont/Makefile.in648
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBFont/default_font.h623
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBFont/idirectfbfont_default.c322
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBFont/idirectfbfont_dgiff.c364
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBFont/idirectfbfont_ft2.c949
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBFont/idirectfbfont_lino.c1324
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBImageProvider/Makefile.am82
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBImageProvider/Makefile.in683
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBImageProvider/idirectfbimageprovider_dfiff.c374
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBImageProvider/idirectfbimageprovider_gif.c924
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBImageProvider/idirectfbimageprovider_jpeg.c640
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBImageProvider/idirectfbimageprovider_png.c868
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBVideoProvider/Makefile.am57
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBVideoProvider/Makefile.in635
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBVideoProvider/idirectfbvideoprovider_gif.c1075
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBVideoProvider/idirectfbvideoprovider_v4l.c1523
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBVideoProvider/videodev.h353
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBVideoProvider/videodev2.h897
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBWindows/idirectfbwindows_default.c339
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBWindows/idirectfbwindows_default.h50
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBWindows/idirectfbwindows_dispatcher.c325
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBWindows/idirectfbwindows_dispatcher.h53
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBWindows/idirectfbwindows_requestor.c365
-rwxr-xr-xSource/DirectFB/interfaces/IDirectFBWindows/idirectfbwindows_requestor.h58
-rwxr-xr-xSource/DirectFB/interfaces/Makefile.am6
-rwxr-xr-xSource/DirectFB/interfaces/Makefile.in560
-rwxr-xr-xSource/DirectFB/lib/Makefile.am7
-rwxr-xr-xSource/DirectFB/lib/Makefile.in557
-rwxr-xr-xSource/DirectFB/lib/direct/Makefile.am138
-rwxr-xr-xSource/DirectFB/lib/direct/Makefile.in769
-rwxr-xr-xSource/DirectFB/lib/direct/armasm_memcpy.S421
-rwxr-xr-xSource/DirectFB/lib/direct/armasm_memcpy.h32
-rwxr-xr-xSource/DirectFB/lib/direct/build.h.in51
-rwxr-xr-xSource/DirectFB/lib/direct/clock.c135
-rwxr-xr-xSource/DirectFB/lib/direct/clock.h45
-rwxr-xr-xSource/DirectFB/lib/direct/conf.c348
-rwxr-xr-xSource/DirectFB/lib/direct/conf.h92
-rwxr-xr-xSource/DirectFB/lib/direct/debug.c430
-rwxr-xr-xSource/DirectFB/lib/direct/debug.h287
-rwxr-xr-xSource/DirectFB/lib/direct/direct.c197
-rwxr-xr-xSource/DirectFB/lib/direct/direct.h49
-rwxr-xr-xSource/DirectFB/lib/direct/direct.pc.in13
-rwxr-xr-xSource/DirectFB/lib/direct/fastlz.c97
-rwxr-xr-xSource/DirectFB/lib/direct/fastlz.h52
-rwxr-xr-xSource/DirectFB/lib/direct/flz.c555
-rwxr-xr-xSource/DirectFB/lib/direct/flz.h100
-rwxr-xr-xSource/DirectFB/lib/direct/hash.c268
-rwxr-xr-xSource/DirectFB/lib/direct/hash.h61
-rwxr-xr-xSource/DirectFB/lib/direct/interface.c474
-rwxr-xr-xSource/DirectFB/lib/direct/interface.h215
-rwxr-xr-xSource/DirectFB/lib/direct/interface_implementation.h91
-rwxr-xr-xSource/DirectFB/lib/direct/list.c35
-rwxr-xr-xSource/DirectFB/lib/direct/list.h224
-rwxr-xr-xSource/DirectFB/lib/direct/log.c414
-rwxr-xr-xSource/DirectFB/lib/direct/log.h89
-rwxr-xr-xSource/DirectFB/lib/direct/mem.c350
-rwxr-xr-xSource/DirectFB/lib/direct/mem.h84
-rwxr-xr-xSource/DirectFB/lib/direct/memcpy.c265
-rwxr-xr-xSource/DirectFB/lib/direct/memcpy.h51
-rwxr-xr-xSource/DirectFB/lib/direct/messages.c215
-rwxr-xr-xSource/DirectFB/lib/direct/messages.h173
-rwxr-xr-xSource/DirectFB/lib/direct/modules.c463
-rwxr-xr-xSource/DirectFB/lib/direct/modules.h95
-rwxr-xr-xSource/DirectFB/lib/direct/ppc_asm.h115
-rwxr-xr-xSource/DirectFB/lib/direct/ppcasm_memcpy.S77
-rwxr-xr-xSource/DirectFB/lib/direct/ppcasm_memcpy.h7
-rwxr-xr-xSource/DirectFB/lib/direct/ppcasm_memcpy_cachable.S180
-rwxr-xr-xSource/DirectFB/lib/direct/serial.h118
-rwxr-xr-xSource/DirectFB/lib/direct/signals.c480
-rwxr-xr-xSource/DirectFB/lib/direct/signals.h70
-rwxr-xr-xSource/DirectFB/lib/direct/stream.c2286
-rwxr-xr-xSource/DirectFB/lib/direct/stream.h129
-rwxr-xr-xSource/DirectFB/lib/direct/system.c68
-rwxr-xr-xSource/DirectFB/lib/direct/system.h40
-rwxr-xr-xSource/DirectFB/lib/direct/thread.c795
-rwxr-xr-xSource/DirectFB/lib/direct/thread.h168
-rwxr-xr-xSource/DirectFB/lib/direct/trace.c676
-rwxr-xr-xSource/DirectFB/lib/direct/trace.h98
-rwxr-xr-xSource/DirectFB/lib/direct/tree.c307
-rwxr-xr-xSource/DirectFB/lib/direct/tree.h67
-rwxr-xr-xSource/DirectFB/lib/direct/types.h169
-rwxr-xr-xSource/DirectFB/lib/direct/utf8.c36
-rwxr-xr-xSource/DirectFB/lib/direct/utf8.h80
-rwxr-xr-xSource/DirectFB/lib/direct/util.c519
-rwxr-xr-xSource/DirectFB/lib/direct/util.h330
-rwxr-xr-xSource/DirectFB/lib/fusion/Makefile.am100
-rwxr-xr-xSource/DirectFB/lib/fusion/Makefile.in804
-rwxr-xr-xSource/DirectFB/lib/fusion/arena.c566
-rwxr-xr-xSource/DirectFB/lib/fusion/arena.h62
-rwxr-xr-xSource/DirectFB/lib/fusion/build.h.in36
-rwxr-xr-xSource/DirectFB/lib/fusion/call.c581
-rwxr-xr-xSource/DirectFB/lib/fusion/call.h74
-rwxr-xr-xSource/DirectFB/lib/fusion/conf.c113
-rwxr-xr-xSource/DirectFB/lib/fusion/conf.h55
-rwxr-xr-xSource/DirectFB/lib/fusion/fusion.c2658
-rwxr-xr-xSource/DirectFB/lib/fusion/fusion.h142
-rwxr-xr-xSource/DirectFB/lib/fusion/fusion.pc.in11
-rwxr-xr-xSource/DirectFB/lib/fusion/fusion_internal.h185
-rwxr-xr-xSource/DirectFB/lib/fusion/hash.c560
-rwxr-xr-xSource/DirectFB/lib/fusion/hash.h179
-rwxr-xr-xSource/DirectFB/lib/fusion/lock.c687
-rwxr-xr-xSource/DirectFB/lib/fusion/lock.h122
-rwxr-xr-xSource/DirectFB/lib/fusion/object.c640
-rwxr-xr-xSource/DirectFB/lib/fusion/object.h279
-rwxr-xr-xSource/DirectFB/lib/fusion/property.c530
-rwxr-xr-xSource/DirectFB/lib/fusion/property.h114
-rwxr-xr-xSource/DirectFB/lib/fusion/protocol.h119
-rwxr-xr-xSource/DirectFB/lib/fusion/reactor.c1868
-rwxr-xr-xSource/DirectFB/lib/fusion/reactor.h197
-rwxr-xr-xSource/DirectFB/lib/fusion/ref.c849
-rwxr-xr-xSource/DirectFB/lib/fusion/ref.h134
-rwxr-xr-xSource/DirectFB/lib/fusion/shm/Makefile.am31
-rwxr-xr-xSource/DirectFB/lib/fusion/shm/Makefile.in565
-rwxr-xr-xSource/DirectFB/lib/fusion/shm/fake.c163
-rwxr-xr-xSource/DirectFB/lib/fusion/shm/heap.c802
-rwxr-xr-xSource/DirectFB/lib/fusion/shm/pool.c954
-rwxr-xr-xSource/DirectFB/lib/fusion/shm/pool.h69
-rwxr-xr-xSource/DirectFB/lib/fusion/shm/shm.c337
-rwxr-xr-xSource/DirectFB/lib/fusion/shm/shm.h48
-rwxr-xr-xSource/DirectFB/lib/fusion/shm/shm_internal.h264
-rwxr-xr-xSource/DirectFB/lib/fusion/shmalloc.c679
-rwxr-xr-xSource/DirectFB/lib/fusion/shmalloc.h124
-rwxr-xr-xSource/DirectFB/lib/fusion/types.h87
-rwxr-xr-xSource/DirectFB/lib/fusion/vector.c230
-rwxr-xr-xSource/DirectFB/lib/fusion/vector.h164
-rwxr-xr-xSource/DirectFB/lib/voodoo/Makefile.am82
-rwxr-xr-xSource/DirectFB/lib/voodoo/Makefile.in666
-rwxr-xr-xSource/DirectFB/lib/voodoo/app.h66
-rwxr-xr-xSource/DirectFB/lib/voodoo/build.h.in34
-rwxr-xr-xSource/DirectFB/lib/voodoo/client.c208
-rwxr-xr-xSource/DirectFB/lib/voodoo/client.h44
-rwxr-xr-xSource/DirectFB/lib/voodoo/compat.h8
-rwxr-xr-xSource/DirectFB/lib/voodoo/conf.c253
-rwxr-xr-xSource/DirectFB/lib/voodoo/conf.h58
-rwxr-xr-xSource/DirectFB/lib/voodoo/connection.cpp70
-rwxr-xr-xSource/DirectFB/lib/voodoo/connection.h60
-rwxr-xr-xSource/DirectFB/lib/voodoo/connection_link.cpp331
-rwxr-xr-xSource/DirectFB/lib/voodoo/connection_link.h106
-rwxr-xr-xSource/DirectFB/lib/voodoo/connection_packet.cpp368
-rwxr-xr-xSource/DirectFB/lib/voodoo/connection_packet.h61
-rwxr-xr-xSource/DirectFB/lib/voodoo/connection_packet_old.cpp433
-rwxr-xr-xSource/DirectFB/lib/voodoo/connection_packet_old.h87
-rwxr-xr-xSource/DirectFB/lib/voodoo/connection_raw.cpp341
-rwxr-xr-xSource/DirectFB/lib/voodoo/connection_raw.h60
-rwxr-xr-xSource/DirectFB/lib/voodoo/dispatcher.cpp231
-rwxr-xr-xSource/DirectFB/lib/voodoo/dispatcher.h71
-rwxr-xr-xSource/DirectFB/lib/voodoo/instance.cpp107
-rwxr-xr-xSource/DirectFB/lib/voodoo/instance.h61
-rwxr-xr-xSource/DirectFB/lib/voodoo/interface.c114
-rwxr-xr-xSource/DirectFB/lib/voodoo/interface.h52
-rwxr-xr-xSource/DirectFB/lib/voodoo/internal.h40
-rwxr-xr-xSource/DirectFB/lib/voodoo/ivoodooplayer.c247
-rwxr-xr-xSource/DirectFB/lib/voodoo/ivoodooplayer.h74
-rwxr-xr-xSource/DirectFB/lib/voodoo/ivoodooplayer_dispatcher.c359
-rwxr-xr-xSource/DirectFB/lib/voodoo/ivoodooplayer_dispatcher.h41
-rwxr-xr-xSource/DirectFB/lib/voodoo/ivoodooplayer_requestor.c330
-rwxr-xr-xSource/DirectFB/lib/voodoo/link.h78
-rwxr-xr-xSource/DirectFB/lib/voodoo/manager.cpp937
-rwxr-xr-xSource/DirectFB/lib/voodoo/manager.h279
-rwxr-xr-xSource/DirectFB/lib/voodoo/manager_c.cpp553
-rwxr-xr-xSource/DirectFB/lib/voodoo/message.h258
-rwxr-xr-xSource/DirectFB/lib/voodoo/mutex.c105
-rwxr-xr-xSource/DirectFB/lib/voodoo/mutex.h142
-rwxr-xr-xSource/DirectFB/lib/voodoo/packet.h285
-rwxr-xr-xSource/DirectFB/lib/voodoo/play.c935
-rwxr-xr-xSource/DirectFB/lib/voodoo/play.h146
-rwxr-xr-xSource/DirectFB/lib/voodoo/play_internal.h89
-rwxr-xr-xSource/DirectFB/lib/voodoo/play_server.c430
-rwxr-xr-xSource/DirectFB/lib/voodoo/play_server.h79
-rwxr-xr-xSource/DirectFB/lib/voodoo/server.c459
-rwxr-xr-xSource/DirectFB/lib/voodoo/server.h52
-rwxr-xr-xSource/DirectFB/lib/voodoo/types.h97
-rwxr-xr-xSource/DirectFB/lib/voodoo/unix/interfaces_unix.c237
-rwxr-xr-xSource/DirectFB/lib/voodoo/unix/link_unix.c567
-rwxr-xr-xSource/DirectFB/lib/voodoo/unix/link_unix_1408limit.c422
-rwxr-xr-xSource/DirectFB/lib/voodoo/voodoo.pc.in11
-rwxr-xr-xSource/DirectFB/lib/voodoo/waitqueue.h117
-rwxr-xr-xSource/DirectFB/ltmain.sh6964
-rwxr-xr-xSource/DirectFB/m4/as-ac-expand.m443
-rwxr-xr-xSource/DirectFB/missing367
-rwxr-xr-xSource/DirectFB/patches/Makefile.am16
-rwxr-xr-xSource/DirectFB/patches/Makefile.in412
-rwxr-xr-xSource/DirectFB/patches/README.davincifb2
-rwxr-xr-xSource/DirectFB/patches/README.fusion1
-rwxr-xr-xSource/DirectFB/patches/README.matroxfb-vsync-irq-patch4
-rwxr-xr-xSource/DirectFB/patches/README.savagefb13
-rwxr-xr-xSource/DirectFB/patches/davincifb-triple-osd0-2.6.10.patch.bz2bin0 -> 585 bytes
-rwxr-xr-xSource/DirectFB/patches/matroxfb-full-memory-linux-2.4.21-rc2.patch.bz2bin0 -> 510 bytes
-rwxr-xr-xSource/DirectFB/patches/matroxfb-g400-clock-2.4.22.patch.bz2bin0 -> 1995 bytes
-rwxr-xr-xSource/DirectFB/patches/matroxfb-vsync-irq-2.4.20.patch.bz2bin0 -> 2076 bytes
-rwxr-xr-xSource/DirectFB/patches/matroxfb-vsync-irq-2.4.21-pre6.patch.bz2bin0 -> 2094 bytes
-rwxr-xr-xSource/DirectFB/patches/savagefb-0.3.2-linux-2.4.26.patch.bz2bin0 -> 17886 bytes
-rwxr-xr-xSource/DirectFB/patches/savagefb-0.4.0-linux-2.4.19.patch.bz2bin0 -> 19306 bytes
-rwxr-xr-xSource/DirectFB/patches/savagefb-0.4.0-linux-2.4.21-rc2.patch.bz2bin0 -> 19342 bytes
-rwxr-xr-xSource/DirectFB/patches/vmwarefb-0.7.0-linux-2.4.22.patch.bz2bin0 -> 13892 bytes
-rwxr-xr-xSource/DirectFB/proxy/Makefile.am3
-rwxr-xr-xSource/DirectFB/proxy/Makefile.in556
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/Makefile.am124
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/Makefile.in1402
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfb_dispatcher.c1305
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfb_dispatcher.h110
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbdatabuffer_dispatcher.c673
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbdatabuffer_dispatcher.h47
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbdisplaylayer_dispatcher.c900
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbdisplaylayer_dispatcher.h79
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbeventbuffer_dispatcher.c272
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbeventbuffer_dispatcher.h63
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbfont_dispatcher.c532
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbfont_dispatcher.h43
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbfoo_dispatcher.c194
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbfoo_dispatcher.h48
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbimageprovider_dispatcher.c296
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbimageprovider_dispatcher.h39
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbinputdevice_dispatcher.c635
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbinputdevice_dispatcher.h60
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbpalette_dispatcher.c408
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbpalette_dispatcher.h41
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbscreen_dispatcher.c572
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbscreen_dispatcher.h58
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbsurface_dispatcher.c2149
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbsurface_dispatcher.h93
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbwindow_dispatcher.c1391
-rwxr-xr-xSource/DirectFB/proxy/dispatcher/idirectfbwindow_dispatcher.h104
-rwxr-xr-xSource/DirectFB/proxy/requestor/Makefile.am125
-rwxr-xr-xSource/DirectFB/proxy/requestor/Makefile.in1401
-rwxr-xr-xSource/DirectFB/proxy/requestor/idirectfb_requestor.c1045
-rwxr-xr-xSource/DirectFB/proxy/requestor/idirectfbdatabuffer_requestor.c484
-rwxr-xr-xSource/DirectFB/proxy/requestor/idirectfbdisplaylayer_requestor.c721
-rwxr-xr-xSource/DirectFB/proxy/requestor/idirectfbdisplaylayer_requestor.h47
-rwxr-xr-xSource/DirectFB/proxy/requestor/idirectfbeventbuffer_requestor.c300
-rwxr-xr-xSource/DirectFB/proxy/requestor/idirectfbeventbuffer_requestor.h54
-rwxr-xr-xSource/DirectFB/proxy/requestor/idirectfbfont_requestor.c530
-rwxr-xr-xSource/DirectFB/proxy/requestor/idirectfbfont_requestor.h47
-rwxr-xr-xSource/DirectFB/proxy/requestor/idirectfbfoo_requestor.c135
-rwxr-xr-xSource/DirectFB/proxy/requestor/idirectfbfoo_requestor.h45
-rwxr-xr-xSource/DirectFB/proxy/requestor/idirectfbimageprovider_requestor.c264
-rwxr-xr-xSource/DirectFB/proxy/requestor/idirectfbinputdevice_requestor.c469
-rwxr-xr-xSource/DirectFB/proxy/requestor/idirectfbinputdevice_requestor.h45
-rwxr-xr-xSource/DirectFB/proxy/requestor/idirectfbpalette_requestor.c335
-rwxr-xr-xSource/DirectFB/proxy/requestor/idirectfbpalette_requestor.h45
-rwxr-xr-xSource/DirectFB/proxy/requestor/idirectfbscreen_requestor.c524
-rwxr-xr-xSource/DirectFB/proxy/requestor/idirectfbsurface_requestor.c1852
-rwxr-xr-xSource/DirectFB/proxy/requestor/idirectfbsurface_requestor.h80
-rwxr-xr-xSource/DirectFB/proxy/requestor/idirectfbwindow_requestor.c1120
-rwxr-xr-xSource/DirectFB/proxy/requestor/idirectfbwindow_requestor.h47
-rwxr-xr-xSource/DirectFB/rules/Makefile.am1
-rwxr-xr-xSource/DirectFB/rules/Makefile.in398
-rwxr-xr-xSource/DirectFB/rules/libobject.make9
-rwxr-xr-xSource/DirectFB/rules/nmfile.make11
-rwxr-xr-xSource/DirectFB/src/Makefile.am73
-rwxr-xr-xSource/DirectFB/src/Makefile.in745
-rwxr-xr-xSource/DirectFB/src/core/Makefile.am84
-rwxr-xr-xSource/DirectFB/src/core/Makefile.in648
-rwxr-xr-xSource/DirectFB/src/core/clipboard.c298
-rwxr-xr-xSource/DirectFB/src/core/clipboard.h53
-rwxr-xr-xSource/DirectFB/src/core/colorhash.c366
-rwxr-xr-xSource/DirectFB/src/core/colorhash.h54
-rwxr-xr-xSource/DirectFB/src/core/core.c1160
-rwxr-xr-xSource/DirectFB/src/core/core.h162
-rwxr-xr-xSource/DirectFB/src/core/core_parts.c202
-rwxr-xr-xSource/DirectFB/src/core/core_parts.h131
-rwxr-xr-xSource/DirectFB/src/core/core_system.h141
-rwxr-xr-xSource/DirectFB/src/core/coredefs.h48
-rwxr-xr-xSource/DirectFB/src/core/coretypes.h89
-rwxr-xr-xSource/DirectFB/src/core/fonts.c660
-rwxr-xr-xSource/DirectFB/src/core/fonts.h250
-rwxr-xr-xSource/DirectFB/src/core/gfxcard.c2921
-rwxr-xr-xSource/DirectFB/src/core/gfxcard.h470
-rwxr-xr-xSource/DirectFB/src/core/graphics_driver.h86
-rwxr-xr-xSource/DirectFB/src/core/input.c2668
-rwxr-xr-xSource/DirectFB/src/core/input.h203
-rwxr-xr-xSource/DirectFB/src/core/input_driver.h103
-rwxr-xr-xSource/DirectFB/src/core/layer_context.c1947
-rwxr-xr-xSource/DirectFB/src/core/layer_context.h149
-rwxr-xr-xSource/DirectFB/src/core/layer_control.c589
-rwxr-xr-xSource/DirectFB/src/core/layer_control.h72
-rwxr-xr-xSource/DirectFB/src/core/layer_region.c1129
-rwxr-xr-xSource/DirectFB/src/core/layer_region.h100
-rwxr-xr-xSource/DirectFB/src/core/layers.c640
-rwxr-xr-xSource/DirectFB/src/core/layers.h359
-rwxr-xr-xSource/DirectFB/src/core/layers_internal.h196
-rwxr-xr-xSource/DirectFB/src/core/local_surface_pool.c313
-rwxr-xr-xSource/DirectFB/src/core/palette.c317
-rwxr-xr-xSource/DirectFB/src/core/palette.h106
-rwxr-xr-xSource/DirectFB/src/core/prealloc_surface_pool.c192
-rwxr-xr-xSource/DirectFB/src/core/screen.c540
-rwxr-xr-xSource/DirectFB/src/core/screen.h122
-rwxr-xr-xSource/DirectFB/src/core/screens.c591
-rwxr-xr-xSource/DirectFB/src/core/screens.h263
-rwxr-xr-xSource/DirectFB/src/core/screens_internal.h81
-rwxr-xr-xSource/DirectFB/src/core/shared_surface_pool.c227
-rwxr-xr-xSource/DirectFB/src/core/state.c416
-rwxr-xr-xSource/DirectFB/src/core/state.h362
-rwxr-xr-xSource/DirectFB/src/core/surface.c768
-rwxr-xr-xSource/DirectFB/src/core/surface.h446
-rwxr-xr-xSource/DirectFB/src/core/surface_buffer.c1206
-rwxr-xr-xSource/DirectFB/src/core/surface_buffer.h257
-rwxr-xr-xSource/DirectFB/src/core/surface_core.c214
-rwxr-xr-xSource/DirectFB/src/core/surface_pool.c1263
-rwxr-xr-xSource/DirectFB/src/core/surface_pool.h272
-rwxr-xr-xSource/DirectFB/src/core/surface_pool_bridge.c531
-rwxr-xr-xSource/DirectFB/src/core/surface_pool_bridge.h187
-rwxr-xr-xSource/DirectFB/src/core/system.c464
-rwxr-xr-xSource/DirectFB/src/core/system.h258
-rwxr-xr-xSource/DirectFB/src/core/windows.c1908
-rwxr-xr-xSource/DirectFB/src/core/windows.h316
-rwxr-xr-xSource/DirectFB/src/core/windows_internal.h211
-rwxr-xr-xSource/DirectFB/src/core/windowstack.c998
-rwxr-xr-xSource/DirectFB/src/core/windowstack.h105
-rwxr-xr-xSource/DirectFB/src/core/wm.c1440
-rwxr-xr-xSource/DirectFB/src/core/wm.h468
-rwxr-xr-xSource/DirectFB/src/core/wm_module.h274
-rwxr-xr-xSource/DirectFB/src/directfb.c311
-rwxr-xr-xSource/DirectFB/src/display/Makefile.am30
-rwxr-xr-xSource/DirectFB/src/display/Makefile.in570
-rwxr-xr-xSource/DirectFB/src/display/idirectfbdisplaylayer.c1076
-rwxr-xr-xSource/DirectFB/src/display/idirectfbdisplaylayer.h43
-rwxr-xr-xSource/DirectFB/src/display/idirectfbpalette.c365
-rwxr-xr-xSource/DirectFB/src/display/idirectfbpalette.h51
-rwxr-xr-xSource/DirectFB/src/display/idirectfbscreen.c722
-rwxr-xr-xSource/DirectFB/src/display/idirectfbscreen.h42
-rwxr-xr-xSource/DirectFB/src/display/idirectfbsurface.c2841
-rwxr-xr-xSource/DirectFB/src/display/idirectfbsurface.h123
-rwxr-xr-xSource/DirectFB/src/display/idirectfbsurface_layer.c244
-rwxr-xr-xSource/DirectFB/src/display/idirectfbsurface_layer.h57
-rwxr-xr-xSource/DirectFB/src/display/idirectfbsurface_window.c353
-rwxr-xr-xSource/DirectFB/src/display/idirectfbsurface_window.h48
-rwxr-xr-xSource/DirectFB/src/gfx/Makefile.am29
-rwxr-xr-xSource/DirectFB/src/gfx/Makefile.in676
-rwxr-xr-xSource/DirectFB/src/gfx/clip.c379
-rwxr-xr-xSource/DirectFB/src/gfx/clip.h125
-rwxr-xr-xSource/DirectFB/src/gfx/convert.c1427
-rwxr-xr-xSource/DirectFB/src/gfx/convert.h562
-rwxr-xr-xSource/DirectFB/src/gfx/generic/Makefile.am62
-rwxr-xr-xSource/DirectFB/src/gfx/generic/Makefile.in602
-rwxr-xr-xSource/DirectFB/src/gfx/generic/duffs_device.h89
-rwxr-xr-xSource/DirectFB/src/gfx/generic/generic.c9161
-rwxr-xr-xSource/DirectFB/src/gfx/generic/generic.h174
-rwxr-xr-xSource/DirectFB/src/gfx/generic/generic_64.h207
-rwxr-xr-xSource/DirectFB/src/gfx/generic/generic_dummy.c94
-rwxr-xr-xSource/DirectFB/src/gfx/generic/generic_mmx.h659
-rwxr-xr-xSource/DirectFB/src/gfx/generic/stretch_hvx_16.h469
-rwxr-xr-xSource/DirectFB/src/gfx/generic/stretch_hvx_32.h174
-rwxr-xr-xSource/DirectFB/src/gfx/generic/stretch_hvx_8.h149
-rwxr-xr-xSource/DirectFB/src/gfx/generic/stretch_hvx_88.h152
-rwxr-xr-xSource/DirectFB/src/gfx/generic/stretch_hvx_N.h121
-rwxr-xr-xSource/DirectFB/src/gfx/generic/stretch_up_down_16.h68
-rwxr-xr-xSource/DirectFB/src/gfx/generic/stretch_up_down_32.h68
-rwxr-xr-xSource/DirectFB/src/gfx/generic/stretch_up_down_32_indexed.h82
-rwxr-xr-xSource/DirectFB/src/gfx/generic/stretch_up_down_8.h72
-rwxr-xr-xSource/DirectFB/src/gfx/generic/stretch_up_down_88.h72
-rwxr-xr-xSource/DirectFB/src/gfx/generic/stretch_up_down_table.h59
-rwxr-xr-xSource/DirectFB/src/gfx/generic/template_acc_16.h382
-rwxr-xr-xSource/DirectFB/src/gfx/generic/template_acc_32.h261
-rwxr-xr-xSource/DirectFB/src/gfx/generic/template_colorkey_16.h369
-rwxr-xr-xSource/DirectFB/src/gfx/generic/template_colorkey_32.h206
-rwxr-xr-xSource/DirectFB/src/gfx/generic/yuvtbl-gen.c199
-rwxr-xr-xSource/DirectFB/src/gfx/generic/yuvtbl.h296
-rwxr-xr-xSource/DirectFB/src/gfx/util.c270
-rwxr-xr-xSource/DirectFB/src/gfx/util.h42
-rwxr-xr-xSource/DirectFB/src/idirectfb.c1965
-rwxr-xr-xSource/DirectFB/src/idirectfb.h89
-rwxr-xr-xSource/DirectFB/src/input/Makefile.am22
-rwxr-xr-xSource/DirectFB/src/input/Makefile.in556
-rwxr-xr-xSource/DirectFB/src/input/idirectfbinputbuffer.c1121
-rwxr-xr-xSource/DirectFB/src/input/idirectfbinputbuffer.h56
-rwxr-xr-xSource/DirectFB/src/input/idirectfbinputdevice.c446
-rwxr-xr-xSource/DirectFB/src/input/idirectfbinputdevice.h40
-rwxr-xr-xSource/DirectFB/src/media/Makefile.am29
-rwxr-xr-xSource/DirectFB/src/media/Makefile.in570
-rwxr-xr-xSource/DirectFB/src/media/idirectfbdatabuffer.c264
-rwxr-xr-xSource/DirectFB/src/media/idirectfbdatabuffer.h104
-rwxr-xr-xSource/DirectFB/src/media/idirectfbdatabuffer_file.c297
-rwxr-xr-xSource/DirectFB/src/media/idirectfbdatabuffer_memory.c266
-rwxr-xr-xSource/DirectFB/src/media/idirectfbdatabuffer_streamed.c529
-rwxr-xr-xSource/DirectFB/src/media/idirectfbfont.c965
-rwxr-xr-xSource/DirectFB/src/media/idirectfbfont.h82
-rwxr-xr-xSource/DirectFB/src/media/idirectfbimageprovider.c167
-rwxr-xr-xSource/DirectFB/src/media/idirectfbimageprovider.h48
-rwxr-xr-xSource/DirectFB/src/media/idirectfbvideoprovider.c387
-rwxr-xr-xSource/DirectFB/src/media/idirectfbvideoprovider.h54
-rwxr-xr-xSource/DirectFB/src/misc/Makefile.am29
-rwxr-xr-xSource/DirectFB/src/misc/Makefile.in564
-rwxr-xr-xSource/DirectFB/src/misc/conf.c1947
-rwxr-xr-xSource/DirectFB/src/misc/conf.h287
-rwxr-xr-xSource/DirectFB/src/misc/dither565.h211
-rwxr-xr-xSource/DirectFB/src/misc/gfx_util.c964
-rwxr-xr-xSource/DirectFB/src/misc/gfx_util.h48
-rwxr-xr-xSource/DirectFB/src/misc/util.c471
-rwxr-xr-xSource/DirectFB/src/misc/util.h34
-rwxr-xr-xSource/DirectFB/src/windows/Makefile.am20
-rwxr-xr-xSource/DirectFB/src/windows/Makefile.in552
-rwxr-xr-xSource/DirectFB/src/windows/idirectfbwindow.c1446
-rwxr-xr-xSource/DirectFB/src/windows/idirectfbwindow.h44
-rwxr-xr-xSource/DirectFB/systems/Makefile.am40
-rwxr-xr-xSource/DirectFB/systems/Makefile.in568
-rwxr-xr-xSource/DirectFB/systems/devmem/Makefile.am40
-rwxr-xr-xSource/DirectFB/systems/devmem/Makefile.in628
-rwxr-xr-xSource/DirectFB/systems/devmem/devmem.c374
-rwxr-xr-xSource/DirectFB/systems/devmem/devmem.h60
-rwxr-xr-xSource/DirectFB/systems/devmem/devmem_surface_pool.c394
-rwxr-xr-xSource/DirectFB/systems/devmem/surfacemanager.c575
-rwxr-xr-xSource/DirectFB/systems/devmem/surfacemanager.h110
-rwxr-xr-xSource/DirectFB/systems/fbdev/Makefile.am48
-rwxr-xr-xSource/DirectFB/systems/fbdev/Makefile.in637
-rwxr-xr-xSource/DirectFB/systems/fbdev/agp.c511
-rwxr-xr-xSource/DirectFB/systems/fbdev/agp.h53
-rwxr-xr-xSource/DirectFB/systems/fbdev/fb.h366
-rwxr-xr-xSource/DirectFB/systems/fbdev/fbdev.c2782
-rwxr-xr-xSource/DirectFB/systems/fbdev/fbdev.h142
-rwxr-xr-xSource/DirectFB/systems/fbdev/fbdev_surface_pool.c423
-rwxr-xr-xSource/DirectFB/systems/fbdev/surfacemanager.c617
-rwxr-xr-xSource/DirectFB/systems/fbdev/surfacemanager.h117
-rwxr-xr-xSource/DirectFB/systems/fbdev/vt.c675
-rwxr-xr-xSource/DirectFB/systems/fbdev/vt.h83
-rwxr-xr-xSource/DirectFB/systems/osx/Makefile.am59
-rwxr-xr-xSource/DirectFB/systems/osx/Makefile.in685
-rwxr-xr-xSource/DirectFB/systems/osx/osx.c263
-rwxr-xr-xSource/DirectFB/systems/osx/osx.h43
-rwxr-xr-xSource/DirectFB/systems/osx/osxinput.c311
-rwxr-xr-xSource/DirectFB/systems/osx/primary.c623
-rwxr-xr-xSource/DirectFB/systems/osx/primary.h49
-rwxr-xr-xSource/DirectFB/systems/sdl/Makefile.am86
-rwxr-xr-xSource/DirectFB/systems/sdl/Makefile.in773
-rwxr-xr-xSource/DirectFB/systems/sdl/primary.c669
-rwxr-xr-xSource/DirectFB/systems/sdl/primary.h49
-rwxr-xr-xSource/DirectFB/systems/sdl/sdl.c396
-rwxr-xr-xSource/DirectFB/systems/sdl/sdl.h70
-rwxr-xr-xSource/DirectFB/systems/sdl/sdl_surface_pool.c349
-rwxr-xr-xSource/DirectFB/systems/sdl/sdlgfx.c302
-rwxr-xr-xSource/DirectFB/systems/sdl/sdlinput.c571
-rwxr-xr-xSource/DirectFB/systems/vnc/Makefile.am55
-rwxr-xr-xSource/DirectFB/systems/vnc/Makefile.in682
-rwxr-xr-xSource/DirectFB/systems/vnc/primary.c993
-rwxr-xr-xSource/DirectFB/systems/vnc/primary.h50
-rwxr-xr-xSource/DirectFB/systems/vnc/vnc.c313
-rwxr-xr-xSource/DirectFB/systems/vnc/vnc.h86
-rwxr-xr-xSource/DirectFB/systems/vnc/vncinput.c128
-rwxr-xr-xSource/DirectFB/systems/x11/Makefile.am63
-rwxr-xr-xSource/DirectFB/systems/x11/Makefile.in624
-rwxr-xr-xSource/DirectFB/systems/x11/README11
-rwxr-xr-xSource/DirectFB/systems/x11/glx_surface_pool.c838
-rwxr-xr-xSource/DirectFB/systems/x11/glx_surface_pool.h79
-rwxr-xr-xSource/DirectFB/systems/x11/primary.c664
-rwxr-xr-xSource/DirectFB/systems/x11/primary.h39
-rwxr-xr-xSource/DirectFB/systems/x11/surfacemanager.c559
-rwxr-xr-xSource/DirectFB/systems/x11/surfacemanager.h110
-rwxr-xr-xSource/DirectFB/systems/x11/vpsmem_surface_pool.c421
-rwxr-xr-xSource/DirectFB/systems/x11/vpsmem_surface_pool.h37
-rwxr-xr-xSource/DirectFB/systems/x11/x11.c570
-rwxr-xr-xSource/DirectFB/systems/x11/x11.h116
-rwxr-xr-xSource/DirectFB/systems/x11/x11_surface_pool.c369
-rwxr-xr-xSource/DirectFB/systems/x11/x11_surface_pool.h47
-rwxr-xr-xSource/DirectFB/systems/x11/x11_surface_pool_bridge.c331
-rwxr-xr-xSource/DirectFB/systems/x11/x11_surface_pool_bridge.h37
-rwxr-xr-xSource/DirectFB/systems/x11/x11image.c231
-rwxr-xr-xSource/DirectFB/systems/x11/x11image.h76
-rwxr-xr-xSource/DirectFB/systems/x11/x11input.c768
-rwxr-xr-xSource/DirectFB/systems/x11/x11types.h35
-rwxr-xr-xSource/DirectFB/systems/x11/xwindow.c294
-rwxr-xr-xSource/DirectFB/systems/x11/xwindow.h77
-rwxr-xr-xSource/DirectFB/tests/Makefile.am58
-rwxr-xr-xSource/DirectFB/tests/Makefile.in612
-rwxr-xr-xSource/DirectFB/tests/dfbtest_blit.c316
-rwxr-xr-xSource/DirectFB/tests/dfbtest_font.c206
-rwxr-xr-xSource/DirectFB/tests/dfbtest_reinit.c72
-rwxr-xr-xSource/DirectFB/tests/dfbtest_scale.c156
-rwxr-xr-xSource/DirectFB/tests/dfbtest_window.c1241
-rwxr-xr-xSource/DirectFB/tests/dfbtest_windows_watcher.c227
-rwxr-xr-xSource/DirectFB/tests/dfbtest_write.c162
-rwxr-xr-xSource/DirectFB/tests/direct_stream.c139
-rwxr-xr-xSource/DirectFB/tests/direct_test.c119
-rwxr-xr-xSource/DirectFB/tests/fusion_fork.c172
-rwxr-xr-xSource/DirectFB/tests/fusion_reactor.c199
-rwxr-xr-xSource/DirectFB/tests/fusion_skirmish.c131
-rwxr-xr-xSource/DirectFB/tests/fusion_stream.c545
-rwxr-xr-xSource/DirectFB/tests/smiley_test.c215
-rwxr-xr-xSource/DirectFB/tools/Makefile.am109
-rwxr-xr-xSource/DirectFB/tools/Makefile.in760
-rwxr-xr-xSource/DirectFB/tools/README24
-rwxr-xr-xSource/DirectFB/tools/application.lst15
-rwxr-xr-xSource/DirectFB/tools/dfbdump.c928
-rwxr-xr-xSource/DirectFB/tools/dfbfx.c630
-rwxr-xr-xSource/DirectFB/tools/dfbg.c280
-rwxr-xr-xSource/DirectFB/tools/dfbinfo.c605
-rwxr-xr-xSource/DirectFB/tools/dfbinput.c331
-rwxr-xr-xSource/DirectFB/tools/dfbinspector.c288
-rwxr-xr-xSource/DirectFB/tools/dfblayer.c625
-rwxr-xr-xSource/DirectFB/tools/dfbmaster.c68
-rwxr-xr-xSource/DirectFB/tools/dfbpenmount.c228
-rwxr-xr-xSource/DirectFB/tools/dfbproxy.c162
-rwxr-xr-xSource/DirectFB/tools/dfbscreen.c660
-rwxr-xr-xSource/DirectFB/tools/directfb-csource.c894
-rwxr-xr-xSource/DirectFB/tools/fusion_bench.c537
-rwxr-xr-xSource/DirectFB/tools/gendoc.pl936
-rwxr-xr-xSource/DirectFB/tools/mkdfiff.c444
-rwxr-xr-xSource/DirectFB/tools/mkdgiff.c616
-rwxr-xr-xSource/DirectFB/tools/mkdgifft.cpp1043
-rwxr-xr-xSource/DirectFB/tools/mknames.sh33
-rwxr-xr-xSource/DirectFB/tools/raw15toraw24.c61
-rwxr-xr-xSource/DirectFB/tools/raw16toraw24.c61
-rwxr-xr-xSource/DirectFB/tools/raw32toraw24.c63
-rwxr-xr-xSource/DirectFB/tools/voodooplay.c164
-rwxr-xr-xSource/DirectFB/tools/voodooplay_client.c317
-rwxr-xr-xSource/DirectFB/tools/voodooplay_server.c318
-rwxr-xr-xSource/DirectFB/wm/Makefile.am9
-rwxr-xr-xSource/DirectFB/wm/Makefile.in558
-rwxr-xr-xSource/DirectFB/wm/default/Makefile.am33
-rwxr-xr-xSource/DirectFB/wm/default/Makefile.in595
-rwxr-xr-xSource/DirectFB/wm/default/default.c4073
-rwxr-xr-xSource/DirectFB/wm/unique/Makefile.am150
-rwxr-xr-xSource/DirectFB/wm/unique/Makefile.in979
-rwxr-xr-xSource/DirectFB/wm/unique/classes/Makefile.am22
-rwxr-xr-xSource/DirectFB/wm/unique/classes/Makefile.in527
-rwxr-xr-xSource/DirectFB/wm/unique/classes/foo.c232
-rwxr-xr-xSource/DirectFB/wm/unique/classes/frame.c53
-rwxr-xr-xSource/DirectFB/wm/unique/classes/root.c206
-rwxr-xr-xSource/DirectFB/wm/unique/classes/window.c165
-rwxr-xr-xSource/DirectFB/wm/unique/context.c711
-rwxr-xr-xSource/DirectFB/wm/unique/context.h134
-rwxr-xr-xSource/DirectFB/wm/unique/data/Makefile.am31
-rwxr-xr-xSource/DirectFB/wm/unique/data/Makefile.in420
-rwxr-xr-xSource/DirectFB/wm/unique/data/foo_e.pngbin0 -> 121 bytes
-rwxr-xr-xSource/DirectFB/wm/unique/data/foo_n.pngbin0 -> 173 bytes
-rwxr-xr-xSource/DirectFB/wm/unique/data/foo_ne.pngbin0 -> 697 bytes
-rwxr-xr-xSource/DirectFB/wm/unique/data/foo_nw.pngbin0 -> 530 bytes
-rwxr-xr-xSource/DirectFB/wm/unique/data/foo_s.pngbin0 -> 169 bytes
-rwxr-xr-xSource/DirectFB/wm/unique/data/foo_se.pngbin0 -> 782 bytes
-rwxr-xr-xSource/DirectFB/wm/unique/data/foo_sw.pngbin0 -> 644 bytes
-rwxr-xr-xSource/DirectFB/wm/unique/data/foo_w.pngbin0 -> 101 bytes
-rwxr-xr-xSource/DirectFB/wm/unique/decoration.c190
-rwxr-xr-xSource/DirectFB/wm/unique/decoration.h132
-rwxr-xr-xSource/DirectFB/wm/unique/device.c495
-rwxr-xr-xSource/DirectFB/wm/unique/device.h139
-rwxr-xr-xSource/DirectFB/wm/unique/devices/Makefile.am21
-rwxr-xr-xSource/DirectFB/wm/unique/devices/Makefile.in525
-rwxr-xr-xSource/DirectFB/wm/unique/devices/keyboard.c192
-rwxr-xr-xSource/DirectFB/wm/unique/devices/pointer.c259
-rwxr-xr-xSource/DirectFB/wm/unique/devices/wheel.c182
-rwxr-xr-xSource/DirectFB/wm/unique/input_channel.c206
-rwxr-xr-xSource/DirectFB/wm/unique/input_channel.h74
-rwxr-xr-xSource/DirectFB/wm/unique/input_events.h114
-rwxr-xr-xSource/DirectFB/wm/unique/input_switch.c776
-rwxr-xr-xSource/DirectFB/wm/unique/input_switch.h78
-rwxr-xr-xSource/DirectFB/wm/unique/internal.h378
-rwxr-xr-xSource/DirectFB/wm/unique/stret.c837
-rwxr-xr-xSource/DirectFB/wm/unique/stret.h155
-rwxr-xr-xSource/DirectFB/wm/unique/stret_iteration.c209
-rwxr-xr-xSource/DirectFB/wm/unique/stret_iteration.h68
-rwxr-xr-xSource/DirectFB/wm/unique/stret_test.c153
-rwxr-xr-xSource/DirectFB/wm/unique/test_color.c221
-rwxr-xr-xSource/DirectFB/wm/unique/test_foo.c288
-rwxr-xr-xSource/DirectFB/wm/unique/types.h53
-rwxr-xr-xSource/DirectFB/wm/unique/unique.c1064
-rwxr-xr-xSource/DirectFB/wm/unique/uniquewm.c451
-rwxr-xr-xSource/DirectFB/wm/unique/uniquewm.h48
-rwxr-xr-xSource/DirectFB/wm/unique/uwmdump.c267
-rwxr-xr-xSource/DirectFB/wm/unique/window.c1525
-rwxr-xr-xSource/DirectFB/wm/unique/window.h135
-rwxr-xr-xSource/FusionDale/AUTHORS1
-rwxr-xr-xSource/FusionDale/COPYING504
-rwxr-xr-xSource/FusionDale/ChangeLog0
-rwxr-xr-xSource/FusionDale/INSTALL0
-rwxr-xr-xSource/FusionDale/Makefile.am15
-rwxr-xr-xSource/FusionDale/Makefile.in696
-rwxr-xr-xSource/FusionDale/NEWS0
-rwxr-xr-xSource/FusionDale/README27
-rwxr-xr-xSource/FusionDale/TODO0
-rwxr-xr-xSource/FusionDale/aclocal.m47584
-rwxr-xr-xSource/FusionDale/autogen.sh147
-rwxr-xr-xSource/FusionDale/config.guess1516
-rwxr-xr-xSource/FusionDale/config.h.in74
-rwxr-xr-xSource/FusionDale/config.sub1626
-rwxr-xr-xSource/FusionDale/configure23760
-rwxr-xr-xSource/FusionDale/configure.in227
-rwxr-xr-xSource/FusionDale/depcomp589
-rwxr-xr-xSource/FusionDale/docs/Makefile.am3
-rwxr-xr-xSource/FusionDale/docs/Makefile.in501
-rwxr-xr-xSource/FusionDale/docs/html/Makefile.am14
-rwxr-xr-xSource/FusionDale/docs/html/Makefile.in357
-rwxr-xr-xSource/FusionDale/docs/html/dfb_logo-alpha.pngbin0 -> 12919 bytes
-rwxr-xr-xSource/FusionDale/docs/html/directfb.pngbin0 -> 2152 bytes
-rwxr-xr-xSource/FusionDale/examples/Makefile.am25
-rwxr-xr-xSource/FusionDale/examples/Makefile.in534
-rwxr-xr-xSource/FusionDale/examples/data_test.c91
-rwxr-xr-xSource/FusionDale/examples/fd_client.c85
-rwxr-xr-xSource/FusionDale/examples/fd_proxy.c213
-rwxr-xr-xSource/FusionDale/examples/fdmaster.c53
-rwxr-xr-xSource/FusionDale/examples/simple.c130
-rwxr-xr-xSource/FusionDale/examples/t2_receiver.c106
-rwxr-xr-xSource/FusionDale/examples/t2_sender.c75
-rwxr-xr-xSource/FusionDale/fusiondale.pc.in11
-rwxr-xr-xSource/FusionDale/include/Makefile.am8
-rwxr-xr-xSource/FusionDale/include/Makefile.in425
-rwxr-xr-xSource/FusionDale/include/fusiondale.h568
-rwxr-xr-xSource/FusionDale/include/fusiondale_util.h184
-rwxr-xr-xSource/FusionDale/include/fusiondale_version.h11
-rwxr-xr-xSource/FusionDale/include/fusiondale_version.h.in33
-rwxr-xr-xSource/FusionDale/install-sh519
-rwxr-xr-xSource/FusionDale/ltmain.sh6964
-rwxr-xr-xSource/FusionDale/missing367
-rwxr-xr-xSource/FusionDale/proxy/Makefile.am3
-rwxr-xr-xSource/FusionDale/proxy/dispatcher/Makefile.am34
-rwxr-xr-xSource/FusionDale/proxy/dispatcher/icoma_dispatcher.c224
-rwxr-xr-xSource/FusionDale/proxy/dispatcher/icoma_dispatcher.h38
-rwxr-xr-xSource/FusionDale/proxy/dispatcher/icomacomponent_dispatcher.c376
-rwxr-xr-xSource/FusionDale/proxy/dispatcher/icomacomponent_dispatcher.h45
-rwxr-xr-xSource/FusionDale/proxy/dispatcher/ifusiondale_dispatcher.c223
-rwxr-xr-xSource/FusionDale/proxy/dispatcher/ifusiondale_dispatcher.h41
-rwxr-xr-xSource/FusionDale/proxy/requestor/Makefile.am34
-rwxr-xr-xSource/FusionDale/proxy/requestor/icoma_requestor.c272
-rwxr-xr-xSource/FusionDale/proxy/requestor/icoma_requestor.h58
-rwxr-xr-xSource/FusionDale/proxy/requestor/icomacomponent_requestor.c339
-rwxr-xr-xSource/FusionDale/proxy/requestor/ifusiondale_requestor.c182
-rwxr-xr-xSource/FusionDale/src/Makefile.am54
-rwxr-xr-xSource/FusionDale/src/Makefile.in645
-rwxr-xr-xSource/FusionDale/src/coma/Makefile.am32
-rwxr-xr-xSource/FusionDale/src/coma/Makefile.in518
-rwxr-xr-xSource/FusionDale/src/coma/coma.c750
-rwxr-xr-xSource/FusionDale/src/coma/coma.h111
-rwxr-xr-xSource/FusionDale/src/coma/coma_types.h35
-rwxr-xr-xSource/FusionDale/src/coma/component.c352
-rwxr-xr-xSource/FusionDale/src/coma/component.h105
-rwxr-xr-xSource/FusionDale/src/coma/icoma.c209
-rwxr-xr-xSource/FusionDale/src/coma/icoma.h47
-rwxr-xr-xSource/FusionDale/src/coma/icomacomponent.c340
-rwxr-xr-xSource/FusionDale/src/coma/icomacomponent.h60
-rwxr-xr-xSource/FusionDale/src/coma/policy.c206
-rwxr-xr-xSource/FusionDale/src/coma/policy.h53
-rwxr-xr-xSource/FusionDale/src/coma/thread.c96
-rwxr-xr-xSource/FusionDale/src/coma/thread.h66
-rwxr-xr-xSource/FusionDale/src/core/Makefile.am26
-rwxr-xr-xSource/FusionDale/src/core/Makefile.in509
-rwxr-xr-xSource/FusionDale/src/core/dale_core.c578
-rwxr-xr-xSource/FusionDale/src/core/dale_core.h72
-rwxr-xr-xSource/FusionDale/src/core/dale_types.h38
-rwxr-xr-xSource/FusionDale/src/core/messenger.c305
-rwxr-xr-xSource/FusionDale/src/core/messenger.h160
-rwxr-xr-xSource/FusionDale/src/core/messenger_port.c939
-rwxr-xr-xSource/FusionDale/src/core/messenger_port.h137
-rwxr-xr-xSource/FusionDale/src/fusiondale.c216
-rwxr-xr-xSource/FusionDale/src/ifusiondale.c228
-rwxr-xr-xSource/FusionDale/src/ifusiondale.h45
-rwxr-xr-xSource/FusionDale/src/messenger/Makefile.am14
-rwxr-xr-xSource/FusionDale/src/messenger/Makefile.in464
-rwxr-xr-xSource/FusionDale/src/messenger/ifusiondalemessenger.c372
-rwxr-xr-xSource/FusionDale/src/messenger/ifusiondalemessenger.h48
-rwxr-xr-xSource/FusionDale/src/misc/Makefile.am16
-rwxr-xr-xSource/FusionDale/src/misc/Makefile.in464
-rwxr-xr-xSource/FusionDale/src/misc/dale_config.c377
-rwxr-xr-xSource/FusionDale/src/misc/dale_config.h64
-rwxr-xr-xSource/FusionDale/tools/Makefile.am15
-rwxr-xr-xSource/FusionDale/tools/Makefile.in488
-rwxr-xr-xSource/FusionDale/tools/fddump.c225
-rwxr-xr-xSource/FusionDale/tools/gendoc.pl921
-rwxr-xr-xSource/SaWMan/AUTHORS1
-rwxr-xr-xSource/SaWMan/COPYING504
-rwxr-xr-xSource/SaWMan/ChangeLog814
-rwxr-xr-xSource/SaWMan/INSTALL237
-rwxr-xr-xSource/SaWMan/Makefile.am7
-rwxr-xr-xSource/SaWMan/Makefile.in685
-rwxr-xr-xSource/SaWMan/NEWS0
-rwxr-xr-xSource/SaWMan/README73
-rwxr-xr-xSource/SaWMan/aclocal.m47584
-rwxr-xr-xSource/SaWMan/config.guess1516
-rwxr-xr-xSource/SaWMan/config.h.in62
-rwxr-xr-xSource/SaWMan/config.sub1626
-rwxr-xr-xSource/SaWMan/configure23508
-rwxr-xr-xSource/SaWMan/configure.in165
-rwxr-xr-xSource/SaWMan/depcomp589
-rwxr-xr-xSource/SaWMan/include/Makefile.am7
-rwxr-xr-xSource/SaWMan/include/Makefile.in419
-rwxr-xr-xSource/SaWMan/include/sawman.h519
-rwxr-xr-xSource/SaWMan/include/sawman_types.h43
-rwxr-xr-xSource/SaWMan/install-sh519
-rwxr-xr-xSource/SaWMan/ltmain.sh6964
-rwxr-xr-xSource/SaWMan/missing367
-rwxr-xr-xSource/SaWMan/rules/libobject.make9
-rwxr-xr-xSource/SaWMan/samples/Makefile.am18
-rwxr-xr-xSource/SaWMan/samples/Makefile.in499
-rwxr-xr-xSource/SaWMan/samples/sample1.c135
-rwxr-xr-xSource/SaWMan/samples/testman.c851
-rwxr-xr-xSource/SaWMan/samples/testrun.c90
-rwxr-xr-xSource/SaWMan/sawman.pc.in11
-rwxr-xr-xSource/SaWMan/src/Makefile.am62
-rwxr-xr-xSource/SaWMan/src/Makefile.in538
-rwxr-xr-xSource/SaWMan/src/isawman.c343
-rwxr-xr-xSource/SaWMan/src/isawman.h61
-rwxr-xr-xSource/SaWMan/src/isawmanmanager.c718
-rwxr-xr-xSource/SaWMan/src/isawmanmanager.h48
-rwxr-xr-xSource/SaWMan/src/sawman.c3522
-rwxr-xr-xSource/SaWMan/src/sawman_config.c512
-rwxr-xr-xSource/SaWMan/src/sawman_config.h76
-rwxr-xr-xSource/SaWMan/src/sawman_draw.c677
-rwxr-xr-xSource/SaWMan/src/sawman_draw.h55
-rwxr-xr-xSource/SaWMan/src/sawman_internal.h573
-rwxr-xr-xSource/SaWMan/tools/Makefile.am15
-rwxr-xr-xSource/SaWMan/tools/Makefile.in483
-rwxr-xr-xSource/SaWMan/tools/swmdump.c459
-rwxr-xr-xSource/SaWMan/wm/Makefile.am3
-rwxr-xr-xSource/SaWMan/wm/Makefile.in498
-rwxr-xr-xSource/SaWMan/wm/sawman/Makefile.am32
-rwxr-xr-xSource/SaWMan/wm/sawman/Makefile.in535
-rwxr-xr-xSource/SaWMan/wm/sawman/sawman_wm.c3590
-rwxr-xr-xSource/linux-fusion-8.1.1.tar.gzbin0 -> 254214 bytes
-rwxr-xr-xSource/linux-fusion-8.1.2.tar.gzbin0 -> 256579 bytes
-rwxr-xr-xSource/linux-fusion.patch632
-rwxr-xr-xSource/linux-fusion_8.1.2.patch541
-rwxr-xr-x_install.sh89
-rwxr-xr-x_install812.sh89
-rwxr-xr-x_installsingleso.sh126
-rwxr-xr-x_installsingleso812.sh126
-rwxr-xr-xbuild-package-macos.sh79
-rwxr-xr-xbuild-package.sh79
-rwxr-xr-xbuild_for_android.sh7
-rwxr-xr-xbuild_for_iphoneos_30.sh134
-rwxr-xr-xbuild_for_iphoneos_42.sh134
-rwxr-xr-xcreatepatch.sh19
-rwxr-xr-xdirectfbrc15
-rwxr-xr-xforceremove.sh32
-rwxr-xr-xgenerateinc.sh35
-rwxr-xr-xinstall.sh57
-rwxr-xr-xinstall812.sh55
-rwxr-xr-xinstallsingleso.sh102
-rwxr-xr-xinstallsingleso812.sh102
-rwxr-xr-xmakefile589
-rwxr-xr-xmakefile.voodoo434
-rwxr-xr-xmakefile.voodoo.android457
-rwxr-xr-xmakefile.voodoo.cygwin435
-rwxr-xr-xmakefile.voodoo.dslinux434
-rwxr-xr-xmakefile.voodoo.iphone433
-rwxr-xr-xmakefile.voodoo.macos435
-rwxr-xr-xmakefile.voodoo.netusg2010
-rwxr-xr-xmklinks.sh45
-rwxr-xr-xpkgconfig/direct.pc13
-rwxr-xr-xpkgconfig/directfb-internal.pc11
-rwxr-xr-xpkgconfig/directfb.pc12
-rwxr-xr-xpkgconfig/divine.pc10
-rwxr-xr-xpkgconfig/fusion.pc11
-rwxr-xr-xpkgconfig/fusiondale.pc11
-rwxr-xr-xpkgconfig/sawman.pc11
-rwxr-xr-xpkgconfig/voodoo.pc11
-rwxr-xr-xtest.sh35
-rwxr-xr-xuninstall.sh40
-rwxr-xr-xuninstall812.sh40
1298 files changed, 696549 insertions, 0 deletions
diff --git a/.directfbrc b/.directfbrc
new file mode 100755
index 0000000..5c1a158
--- /dev/null
+++ b/.directfbrc
@@ -0,0 +1,13 @@
+no-cursor
+system=x11
+wm=sawman
+font-format = A8
+
+#layer-size = 852x480
+#layer-size = 640x480
+layer-size = 320x240
+layer-format = ARGB
+layer-buffer-mode = frontonly
+#layer-buffer-mode = backvideo
+layer-stacking = lower,middle,upper
+layer-bg-color = 000900
diff --git a/.directfbrc.jsapp b/.directfbrc.jsapp
new file mode 100755
index 0000000..a02963a
--- /dev/null
+++ b/.directfbrc.jsapp
@@ -0,0 +1,12 @@
+player-name = jointSPACESim
+player-vendor = Philips
+player-model = 2k10
+
+thread-scheduler = other
+thread-priority = -20
+
+proxy-memory-max = 4000
+proxy-surface-max = 1800
+proxy-layer-mask = 1
+proxy-stacking-mask = 5
+#bits means: lower/upper/middle \ No newline at end of file
diff --git a/.directfbrc.plfapp b/.directfbrc.plfapp
new file mode 100755
index 0000000..774d4c1
--- /dev/null
+++ b/.directfbrc.plfapp
@@ -0,0 +1,4 @@
+# ceplf is going to be the sole master of the system.
+# override of directfbrc.
+no-force-slave
+
diff --git a/.fusiondalerc b/.fusiondalerc
new file mode 100755
index 0000000..f3bfbd6
--- /dev/null
+++ b/.fusiondalerc
@@ -0,0 +1,6 @@
+coma-allow
+#coma-allow = "AV Platform/Tuner"
+#coma-allow = "IPC_plfapiinfra/CPlatformApiInfrastructure"
+
+
+
diff --git a/ConfigGeneric/config.h b/ConfigGeneric/config.h
new file mode 100755
index 0000000..6e69559
--- /dev/null
+++ b/ConfigGeneric/config.h
@@ -0,0 +1,29 @@
+#define DIRECTFB_VERSION "1.4.0"
+#define FUSIONDALE_VERSION "0.1.0"
+#define HAVE_ASM_PAGE_H 1
+#define HAVE_DECL_PTHREAD_MUTEX_RECURSIVE 1
+#define HAVE_DECL_PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP 1
+#define HAVE_DLFCN_H 1
+#define HAVE_INTTYPES_H 1
+#define HAVE_LIBDL 1
+#define HAVE_LIBPTHREAD 1
+#undef HAVE_LINUX_UNISTD_H
+#define HAVE_MEMORY_H 1
+#define HAVE_STDBOOL_H 1
+#define HAVE_STDINT_H 1
+#define HAVE_STDLIB_H 1
+#define HAVE_STRINGS_H 1
+#define HAVE_STRING_H 1
+#define HAVE_SYS_STAT_H 1
+#define HAVE_SYS_TYPES_H 1
+#define HAVE_UNISTD_H 1
+#define HAVE_INPUT_ABSINFO 1
+#define PACKAGE_BUGREPORT ""
+#define PACKAGE_NAME ""
+#define PACKAGE_STRING ""
+#define PACKAGE_TARNAME ""
+#define PACKAGE_VERSION ""
+#define SIZEOF_INT 4
+#define SIZEOF_LONG 4
+#define SIZEOF_LONG_LONG 8
+#define STDC_HEADERS 1
diff --git a/ConfigGeneric/direct/build.h b/ConfigGeneric/direct/build.h
new file mode 100755
index 0000000..8ae1eeb
--- /dev/null
+++ b/ConfigGeneric/direct/build.h
@@ -0,0 +1,39 @@
+/*
+ (c) Copyright 2000-2002 convergence integrated media GmbH.
+ (c) Copyright 2002-2004 convergence GmbH.
+
+ All rights reserved.
+
+ Written by Denis Oliver Kropp <dok@directfb.org>,
+ Andreas Hundt <andi@fischlustig.de>,
+ Sven Neumann <neo@directfb.org> and
+ Ville Syrjälä <syrjala@sci.fi>.
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+*/
+
+#ifndef __DIRECT__BUILD_H__
+#define __DIRECT__BUILD_H__
+
+#define DIRECT_BUILD_DEBUG (ENABLE_DEBUG)
+#define DIRECT_BUILD_DEBUGS (1)
+#define DIRECT_BUILD_TRACE (ENABLE_TRACE)
+#define DIRECT_BUILD_TEXT (1)
+#define DIRECT_BUILD_GETTID (1)
+#define DIRECT_BUILD_NETWORK (0)
+#define DIRECT_BUILD_STDBOOL (1)
+#endif
+
diff --git a/ConfigGeneric/fusion/build.h b/ConfigGeneric/fusion/build.h
new file mode 100755
index 0000000..4bbf6c4
--- /dev/null
+++ b/ConfigGeneric/fusion/build.h
@@ -0,0 +1,36 @@
+/*
+ (c) Copyright 2000-2002 convergence integrated media GmbH.
+ (c) Copyright 2002-2004 convergence GmbH.
+
+ All rights reserved.
+
+ Written by Denis Oliver Kropp <dok@directfb.org>,
+ Andreas Hundt <andi@fischlustig.de>,
+ Sven Neumann <neo@directfb.org> and
+ Ville Syrjälä <syrjala@sci.fi>.
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+*/
+
+#ifndef __FUSION__BUILD_H__
+#define __FUSION__BUILD_H__
+
+#define FUSION_BUILD_MULTI (0)
+#define FUSION_MESSAGE_SIZE (65536)
+#define FUSION_BUILD_KERNEL (0)
+
+#endif
+
diff --git a/Config_x11/config.h b/Config_x11/config.h
new file mode 100755
index 0000000..ff2f76a
--- /dev/null
+++ b/Config_x11/config.h
@@ -0,0 +1,30 @@
+#define ARCH_MIPS
+#define DIRECTFB_VERSION "1.4.0"
+#define FUSIONDALE_VERSION "0.1.0"
+#define HAVE_ASM_PAGE_H 1
+#define HAVE_DECL_PTHREAD_MUTEX_RECURSIVE 1
+#define HAVE_DECL_PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP 1
+#define HAVE_DLFCN_H 1
+#define HAVE_INTTYPES_H 1
+#define HAVE_LIBDL 1
+#define HAVE_LIBPTHREAD 1
+#define HAVE_LINUX_UNISTD_H 1
+#define HAVE_MEMORY_H 1
+#define HAVE_STDBOOL_H 1
+#define HAVE_STDINT_H 1
+#define HAVE_STDLIB_H 1
+#define HAVE_STRINGS_H 1
+#define HAVE_STRING_H 1
+#define HAVE_SYS_STAT_H 1
+#define HAVE_SYS_TYPES_H 1
+#define HAVE_UNISTD_H 1
+#define HAVE_INPUT_ABSINFO 1
+#define PACKAGE_BUGREPORT ""
+#define PACKAGE_NAME ""
+#define PACKAGE_STRING ""
+#define PACKAGE_TARNAME ""
+#define PACKAGE_VERSION ""
+#define SIZEOF_INT 4
+#define SIZEOF_LONG 4
+#define SIZEOF_LONG_LONG 8
+#define STDC_HEADERS 1
diff --git a/Config_x11/direct/build.h b/Config_x11/direct/build.h
new file mode 100755
index 0000000..139e797
--- /dev/null
+++ b/Config_x11/direct/build.h
@@ -0,0 +1,39 @@
+/*
+ (c) Copyright 2000-2002 convergence integrated media GmbH.
+ (c) Copyright 2002-2004 convergence GmbH.
+
+ All rights reserved.
+
+ Written by Denis Oliver Kropp <dok@directfb.org>,
+ Andreas Hundt <andi@fischlustig.de>,
+ Sven Neumann <neo@directfb.org> and
+ Ville Syrjälä <syrjala@sci.fi>.
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+*/
+
+#ifndef __DIRECT__BUILD_H__
+#define __DIRECT__BUILD_H__
+
+#define DIRECT_BUILD_DEBUG (ENABLE_DEBUG)
+#define DIRECT_BUILD_DEBUGS (ENABLE_DEBUG)
+#define DIRECT_BUILD_TRACE (ENABLE_TRACE)
+#define DIRECT_BUILD_TEXT (1)
+#define DIRECT_BUILD_GETTID (1)
+#define DIRECT_BUILD_NETWORK (0)
+#define DIRECT_BUILD_STDBOOL (1)
+#endif
+
diff --git a/Config_x11/fusion/build.h b/Config_x11/fusion/build.h
new file mode 100755
index 0000000..af9ba26
--- /dev/null
+++ b/Config_x11/fusion/build.h
@@ -0,0 +1,36 @@
+/*
+ (c) Copyright 2000-2002 convergence integrated media GmbH.
+ (c) Copyright 2002-2004 convergence GmbH.
+
+ All rights reserved.
+
+ Written by Denis Oliver Kropp <dok@directfb.org>,
+ Andreas Hundt <andi@fischlustig.de>,
+ Sven Neumann <neo@directfb.org> and
+ Ville Syrjälä <syrjala@sci.fi>.
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+*/
+
+#ifndef __FUSION__BUILD_H__
+#define __FUSION__BUILD_H__
+
+#define FUSION_BUILD_MULTI (1)
+#define FUSION_MESSAGE_SIZE (65536)
+#define FUSION_BUILD_KERNEL (1)
+
+#endif
+
diff --git a/Config_x11/makefile b/Config_x11/makefile
new file mode 100755
index 0000000..4255025
--- /dev/null
+++ b/Config_x11/makefile
@@ -0,0 +1,106 @@
+# X11 Config makefile specifics.
+
+# Global setup
+PHILIPS = $(TOP)/Philips
+DIRECTFBTOP = $(TOP)/../..
+
+DESTDIR = /opt/root520
+prefix = /home
+bindir = /home
+datadir = /usr/data
+libdir = /lib
+sysconfdir = /etc
+
+#
+# Toolchain location
+#CC := /cygdrive/c/MontaVista/opt/montavista/pro/devkit/mips/fp_le/bin/mips_fp_le-gcc
+#LD := /cygdrive/c/MontaVista/opt/montavista/pro/devkit/mips/fp_le/bin/mips_fp_le-ld
+CC := gcc
+LD := ld
+nm := nm
+
+LIBS += -lXext
+LIBS += `pkg-config x11 --libs`
+LIBS += `pkg-config xext --libs`
+LIBS += `pkg-config freetype2 --libs`
+LIBS += `pkg-config libpng --libs`
+
+#
+# Configuration
+CPPFLAGS += -DHAVE_FUSIONDALE -DLINUX_2_6 -DPAGE_SHIFT=12 -DPIC #-DLINUX_INPUT_USE_FBDEV #-DHAS_CURSOR_BUG -DDFB_INPUTDRIVER_HAS_SENSITIVITY
+#-Werror -DSAWMAN_NO_LAYER_DST_WINDOW
+
+#
+# Compiler flags
+ifeq ($(DEBUG),yes)
+CFLAGS += -g -ggdb -O1 -fno-omit-frame-pointer
+else
+CFLAGS += -g -ggdb -O2 -ffast-math -fno-omit-frame-pointer
+#CFLAGS += -g -ggdb -O2 -ffast-math -fomit-frame-pointer -march=r4400
+endif
+# -Werror
+
+INCLUDES += `pkg-config x11 --cflags`
+INCLUDES += `pkg-config xext --cflags`
+INCLUDES += `pkg-config freetype2 --cflags`
+
+#
+# CE files (temporary)
+INCLUDES += -I$(SOURCE)/FusionDale/src/core
+INCLUDES += -I$(TOP)/../iType/product/source/common
+INCLUDES += -I$(TOP)/../iType/product/source/adf
+INCLUDES += -I$(TOP)/../iType/product/source/port/tv543
+LDFLAGS += -L$(TOP)/../iType/product/builds/linux/itype/debug
+
+#
+# Different modules, drivers etc.
+FT2MODULEOBJECTS = \
+ $(SOURCE)/DirectFB/interfaces/IDirectFBFont/idirectfbfont_ft2.o
+ITYPEMODULEOBJECTS = \
+ $(SOURCE)/DirectFB/interfaces/IDirectFBFont/idirectfbfont_lino.o
+DGIFFMODULEOBJECTS = \
+ $(SOURCE)/DirectFB/interfaces/IDirectFBFont/idirectfbfont_dgiff.o
+PNGMODULEOBJECTS = \
+ $(SOURCE)/DirectFB/interfaces/IDirectFBImageProvider/idirectfbimageprovider_png.o
+JPEGMODULEOBJECTS = \
+ $(SOURCE)/DirectFB/interfaces/IDirectFBImageProvider/idirectfbimageprovider_jpeg.o
+
+OBJECTS = \
+ $(SOURCE)/DirectFB/interfaces/IDirectFBFont/idirectfbfont_dgiff.o \
+ $(SOURCE)/DirectFB/interfaces/IDirectFBImageProvider/idirectfbimageprovider_dfiff.o \
+ $(SOURCE)/DirectFB/interfaces/IDirectFBImageProvider/idirectfbimageprovider_gif.o \
+ $(SOURCE)/DirectFB/inputdrivers/linux_input/linux_input.o \
+ $(SOURCE)/DirectFB/systems/x11/x11.o \
+ $(SOURCE)/DirectFB/systems/x11/x11image.o \
+ $(SOURCE)/DirectFB/systems/x11/xwindow.o \
+ $(SOURCE)/DirectFB/systems/x11/x11input.o \
+ $(SOURCE)/DirectFB/systems/x11/x11_surface_pool.o \
+ $(SOURCE)/DirectFB/systems/x11/vpsmem_surface_pool.o \
+ $(SOURCE)/DirectFB/systems/x11/surfacemanager.o \
+ $(SOURCE)/DirectFB/systems/x11/primary.o
+
+TOOLS = \
+ $(SOURCE)/DirectFB/tools/dfbproxy \
+ $(SOURCE)/DirectFB/tools/dfbinput \
+ $(SOURCE)/DirectFB/tests/dfbtest_font \
+ $(SOURCE)/DirectFB/tests/smiley_test
+
+
+
+clean::
+
+install::
+ @(if test -z "$(DESTDIR)"; then echo "**** DESTDIR not set! ****"; exit 1; fi)
+ install -d $(DESTDIR)$(datadir)
+ install -d $(DESTDIR)$(datadir)/df_neo
+ install -d $(DESTDIR)$(datadir)/shopfloor
+ install -d $(DESTDIR)$(datadir)/quip
+ install -d $(DESTDIR)$(sysconfdir)
+ install -c -m 644 $(PHILIPS)/Tools/data/*.{gif,jpg,png,ttf} $(DESTDIR)$(datadir)/
+ install -c -m 644 $(PHILIPS)/Tools/data/df_neo/*.{jpg,png} $(DESTDIR)$(datadir)/df_neo/
+ install -c -m 644 $(PHILIPS)/Tools/data/quip/*.{dfiff,png,quip} $(DESTDIR)$(datadir)/quip/
+ install -c -m 644 $(PHILIPS)/Tools/data/shopfloor/*.{png,sfa} $(DESTDIR)$(datadir)/shopfloor/
+ install -c -m 644 $(PHILIPS)/Config/directfbrc* $(DESTDIR)$(sysconfdir)
+ install -c -m 644 $(PHILIPS)/Config/fusiondalerc* $(DESTDIR)$(sysconfdir)
+ install -c -m 644 $(PHILIPS)/Config/sawmanrc $(DESTDIR)$(sysconfdir)
+
diff --git a/JointSpace_License.pdf b/JointSpace_License.pdf
new file mode 100755
index 0000000..3f2af8a
--- /dev/null
+++ b/JointSpace_License.pdf
Binary files differ
diff --git a/Jslib/jslibrc/jslibrc_client.c b/Jslib/jslibrc/jslibrc_client.c
new file mode 100755
index 0000000..b942a38
--- /dev/null
+++ b/Jslib/jslibrc/jslibrc_client.c
@@ -0,0 +1,653 @@
+#include <jslibrc_client.h>
+#include <divine.h>
+
+
+
+#define DFBCHECK(x...) \
+do { \
+ DFBResult err; \
+ err = x; \
+ if (err != DFB_OK) { \
+ printf ("Fail!! err!=DFB_OK"); \
+ DirectFBError (#x, err); \
+ } \
+} while(0);
+
+
+#define HK_HOMESCREEN DIKS_CUSTOM36
+#define HK_MEDIA DIKS_CUSTOM20
+#define HK_TELETEXT DIKS_CUSTOM17
+#define HK_HTML DIKS_CUSTOM19
+#define HK_DFU DIKS_CUSTOM49
+#define HK_REMOTEAPP DIKS_CUSTOM97
+#define HK_EXPERIENCE DIKS_CUSTOM58
+
+#define DFB_RAW_KEY DIKS_CUSTOM31
+#define DFB_AMBILIGHT DIKS_CUSTOM33
+#define DFB_BATTERY_LOW DIKS_CUSTOM94
+#define DFB_3D DIKS_CUSTOM110
+
+/*added by Vivek to solve brg36mgr#235014 */
+
+#define DFB_NETTV DIKS_CUSTOM19
+#define DFB_MEDIA_CB DIKS_CUSTOM20
+#define DFB_MEDIA_DLNA DIKS_CUSTOM21
+#define DFB_LKB_TACT DIKS_CUSTOM32
+#define DFB_EXPERIENCE DIKS_CUSTOM58
+#define DFB_MUTE DIKS_CUSTOM93
+#define DFB_DEALERRC DIKS_CUSTOM111
+#define DFB_DEALERRC_DEMO DIKS_CUSTOM112
+
+
+
+#define NOTRCSOURCEMASK 0x20
+
+#define MAX_NR_OF_ELEMENTS( a, b ) ( sizeof( a ) / sizeof( b ) )
+
+
+typedef enum{
+ MEDIA_USB,
+ MEDIA_Network,
+ MEDIA_Scenea,
+ MEDIA_DRM
+} EnumMediaStart;
+
+
+static IDiVine *divine = NULL;
+
+static DFBInputDeviceKeySymbol Rc5Sys0TranslateTable[0x80] =
+{
+ /**********************/
+ /* SYSTEM CODE 0x00 */
+ /**********************/
+ /****************************************************************************************************************************************************************************/
+ /* * 0x00 / 0x08 0x01 / 0x09 0x02 / 0x0A 0x03 / 0x0B 0x04 / 0x0C 0x05 / 0x0D 0x06 / 0x0E 0x07 / 0x0F */
+ /****************************************************************************************************************************************************************************/
+ /* 0x00 */ DIKS_0, DIKS_1, DIKS_2, DIKS_3, DIKS_4, DIKS_5, DIKS_6, DIKS_7,
+ /* */ DIKS_8, DIKS_9, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_POWER, DIKS_MUTE, DFB_RAW_KEY, DIKS_INFO,
+ /* 0x10 */ DIKS_VOLUME_UP, DIKS_VOLUME_DOWN, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* 0x20 */ DIKS_CHANNEL_UP, DIKS_CHANNEL_DOWN, DIKS_PREVIOUS, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* 0x30 */ DFB_RAW_KEY, DFB_RAW_KEY, DIKS_REWIND, DFB_RAW_KEY, DIKS_FASTFORWARD, DIKS_PLAYPAUSE, DIKS_STOP, DIKS_RECORD,
+ /* */ DIKS_NEXT, DIKS_F2, DIKS_SUBTITLE, DFB_RAW_KEY, DIKS_TEXT, DIKS_POWER2, DFB_RAW_KEY, DIKS_TUNER,
+ /* 0x40 */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_AMBILIGHT,
+ /* */ DFB_RAW_KEY, DFB_AMBILIGHT, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* 0x50 */ DIKS_CURSOR_UP, DIKS_CURSOR_DOWN, DIKS_MENU, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_CURSOR_LEFT, DIKS_CURSOR_RIGHT, DIKS_OK,
+ /* */ DIKS_MODE, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* 0x60 */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_RED, DIKS_GREEN, DIKS_YELLOW, DIKS_BLUE, DFB_RAW_KEY,
+ /* 0x70 */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_ZOOM, DFB_RAW_KEY
+ /****************************************************************************************************************************************************************************/
+};
+
+
+/* sync'ed the table of TV side to fix the issue brg36mgr#235014 , vivek*/
+static DFBInputDeviceKeySymbol Rc5Sys3TranslateTable[0x80] =
+{
+ /**********************/
+ /* SYSTEM CODE 0x03 */
+ /**********************/
+ /****************************************************************************************************************************************************************************/
+ /* * 0x00 / 0x08 0x01 / 0x09 0x02 / 0x0A 0x03 / 0x0B 0x04 / 0x0C 0x05 / 0x0D 0x06 / 0x0E 0x07 / 0x0F */
+ /****************************************************************************************************************************************************************************/
+ /* 0x00 */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_F1, DIKS_F12, DIKS_F6, DIKS_F7,
+ /* */ DIKS_F8, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* 0x10 */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_MEDIA_CB, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* 0x20 */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DFB_AMBILIGHT, DFB_AMBILIGHT, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_EPG, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* 0x30 */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DIKS_F3, DIKS_F4, DIKS_F12, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_ZOOM, DIKS_ZOOM, DFB_RAW_KEY,
+ /* 0x40 */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DIKS_TUNER, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* 0x50 */ DIKS_ZOOM, DIKS_ZOOM, DFB_RAW_KEY, DIKS_ZOOM, DFB_RAW_KEY, DIKS_ZOOM, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* 0x60 */ DFB_MEDIA_DLNA, DFB_NETTV, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* 0x70 */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_ZOOM, DIKS_ZOOM, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_F5, DFB_RAW_KEY, DIKS_ZOOM, DIKS_ZOOM, DFB_RAW_KEY
+ /****************************************************************************************************************************************************************************/
+};
+
+static DFBInputDeviceKeySymbol Rc6TranslateTable[0x100] =
+{
+ /****************************************************************************************************************************************************************************/
+ /* * 0x00 / 0x08 0x01 / 0x09 0x02 / 0x0A 0x03 / 0x0B 0x04 / 0x0C 0x05 / 0x0D 0x06 / 0x0E 0x07 / 0x0F */
+ /****************************************************************************************************************************************************************************/
+ /* 0x00 */ DIKS_0, DIKS_1, DIKS_2, DIKS_3, DIKS_4, DIKS_5, DIKS_6, DIKS_7,
+ /* */ DIKS_8, DIKS_9, DIKS_PREVIOUS, DFB_RAW_KEY, DIKS_POWER, DIKS_MUTE, DFB_RAW_KEY, DIKS_INFO,
+ /* 0x10 */ DIKS_VOLUME_UP, DIKS_VOLUME_DOWN, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_CHANNEL_UP, DIKS_CHANNEL_DOWN,
+ /* 0x20 */ DIKS_CHANNEL_UP, DIKS_CHANNEL_DOWN, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DIKS_FASTFORWARD, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_REWIND, DIKS_PLAYPAUSE, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* 0x30 */ DIKS_PLAYPAUSE, DIKS_STOP, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_STOP, DIKS_RECORD,
+ /* */ DIKS_NEXT, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_TEXT, DIKS_POWER2, DFB_RAW_KEY, DIKS_TUNER,
+ /* 0x40 */ DIKS_OPTION, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_SUBTITLE, DFB_RAW_KEY,
+ /* */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_PAGE_DOWN, DIKS_PAGE_UP, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* 0x50 */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_MENU, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DIKS_CURSOR_UP, DIKS_CURSOR_DOWN, DIKS_CURSOR_LEFT, DIKS_CURSOR_RIGHT, DIKS_OK, DIKS_MODE, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* 0x60 */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_RED, DIKS_GREEN, DIKS_YELLOW,
+ /* 0x70 */ DIKS_BLUE, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_SUBTITLE, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* 0x80 */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_AMBILIGHT,
+ /* 0x90 */ HK_EXPERIENCE, DFB_AMBILIGHT, DFB_AMBILIGHT, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_TUNER,
+ /* 0xA0 */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* 0xB0 */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_3D, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, HK_HTML, DFB_RAW_KEY,
+ /* 0xC0 */ DFB_RAW_KEY, DIKS_PLAYPAUSE, DFB_RAW_KEY, DFB_BATTERY_LOW, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_EPG, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* 0xD0 */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DFB_RAW_KEY, DIKS_PERIOD, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* 0xE0 */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* 0xF0 */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DIKS_ZOOM, DFB_RAW_KEY, DFB_RAW_KEY,
+ /* */ DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY, DFB_RAW_KEY
+ /****************************************************************************************************************************************************************************/
+};
+
+
+
+static int TranslateKey( int *source, int *system, int *command, DFBInputDeviceKeySymbol *symbol )
+{
+ int translated = 0;
+
+ switch ( *source )
+ {
+ case keySourceRc5:
+ if (
+ ( *system == 0 ) &&
+ ( *command >= 0 ) &&
+ ( *command < ( MAX_NR_OF_ELEMENTS( Rc5Sys0TranslateTable, DFBInputDeviceKeySymbol ) ) )
+ )
+ {
+ *symbol = Rc5Sys0TranslateTable[*command];
+ translated = 1;
+ }
+ else if (
+ ( *system == 3 ) &&
+ ( *command >= 0 ) &&
+ ( *command < ( MAX_NR_OF_ELEMENTS( Rc5Sys3TranslateTable, DFBInputDeviceKeySymbol ) ) )
+ )
+ {
+ *symbol = Rc5Sys3TranslateTable[*command];
+ translated = 1;
+ }
+ break;
+
+ case keySourceRc6:
+ if (
+ ( *system < 2 ) &&
+ ( *command >= 0 ) &&
+ ( *command < ( MAX_NR_OF_ELEMENTS( Rc6TranslateTable, DFBInputDeviceKeySymbol ) ) )
+ )
+ {
+ *symbol = Rc6TranslateTable[*command];
+ translated = 1;
+ }
+ break;
+
+ default:
+ /* unrecognized source: no translation */
+ break;
+ }
+
+ if( !translated )
+ {
+ printf( ( "Key could not be translated, passing DFB_RAW_KEY instead!\n" ) );
+
+ *symbol = DFB_RAW_KEY;
+ translated = 1;
+ }
+
+ return( translated );
+}
+
+static int SendKeyDown(int keyname,int src,int sys,int cmd, int modifier )
+{
+ DFBInputEvent event;
+ unsigned long key_code;
+ if (divine)
+ {
+ key_code = (((unsigned int)src & 0xff) << 24) | (((unsigned int)sys & 0xff) << 16) | ((unsigned int)cmd & 0xffff);
+
+ event.clazz = DFEC_INPUT;
+ event.type = DIET_KEYPRESS;
+ event.key_code = key_code;
+ event.key_symbol = keyname;
+ event.flags = DIEF_KEYCODE | DIEF_KEYSYMBOL;
+ if (modifier)
+ {
+ event.flags |= DIEF_MODIFIERS;
+ event.modifiers = modifier;
+ }
+ DFBCHECK(divine->SendEvent (divine, &event));
+ }
+
+ return 1;
+}
+
+static int SendKeyUp(int keyname,int src,int sys,int cmd, int modifier )
+{
+ DFBInputEvent event;
+ unsigned long key_code;
+ if (divine)
+ {
+ key_code = (((unsigned int)src & 0xff) << 24) | (((unsigned int)sys & 0xff) << 16) | ((unsigned int)cmd & 0xffff);
+
+ event.clazz = DFEC_INPUT;
+ event.type = DIET_KEYRELEASE;
+ event.key_code = key_code;
+ event.key_symbol = keyname;
+ event.flags = DIEF_KEYCODE | DIEF_KEYSYMBOL;
+ if (modifier)
+ {
+ event.flags |= DIEF_MODIFIERS;
+ event.modifiers = modifier;
+ }
+ DFBCHECK(divine->SendEvent (divine, &event));
+ }
+
+ return 1;
+}
+
+static int SendKeyHK(int keyname,int src,int sys,int cmd, int modifier )
+{
+ unsigned long key_code;
+ DFBInputEvent event;
+ int dfb_ret;
+ int ret = 0;
+ if (divine)
+ {
+ src |= NOTRCSOURCEMASK;
+ key_code = (((unsigned int)src & 0xff) << 24) | (((unsigned int)sys & 0xff) << 16) | ((unsigned int)cmd & 0xffff);
+
+ event.clazz = DFEC_INPUT;
+ event.type = DIET_KEYPRESS;
+ event.key_code = key_code;
+ event.key_symbol = keyname;
+ event.flags = DIEF_KEYCODE | DIEF_KEYSYMBOL;
+ if (modifier)
+ {
+ event.flags |= DIEF_MODIFIERS;
+ event.modifiers = modifier;
+ }
+ dfb_ret = divine->SendEvent (divine, &event);
+ printf("ReturnKey retval = %d\n", dfb_ret );
+ ret = 1;
+ }
+
+ return ret;
+}
+
+
+
+
+
+int
+jslibrc_Init( int *argc, char **argv[] )
+{
+ DFBResult ret;
+
+ ret = DiVineInit( argc, argv );
+ if (ret) {
+ return ret;
+ }
+
+ ret = DiVineCreate( &divine );
+ if (ret) {
+ return ret;
+ }
+
+ return 0;
+}
+
+void
+jslibrc_Exit( void )
+{
+ if (divine) {
+ divine->Release(divine);
+ divine = NULL;
+ }
+}
+
+void
+jslibrc_KeyDown( int src, int sys, int cmd )
+{
+ DFBInputDeviceKeySymbol symbol = 0;
+
+ if ( TranslateKey( &src, &sys, &cmd, &symbol ) )
+ {
+ SendKeyDown(symbol, src, sys, cmd, 0);
+ }
+}
+
+void
+jslibrc_KeyUp( int src, int sys, int cmd )
+{
+ DFBInputDeviceKeySymbol symbol = 0;
+
+ if ( TranslateKey( &src, &sys, &cmd, &symbol ) )
+ {
+ SendKeyUp(symbol, src, sys, cmd, 0);
+ }
+}
+
+
+
+int
+jslibrc_RequestActivity( amLib_EnumActivityId act, amLib_EnumActivation mode, int cookie )
+{
+ switch(act)
+ {
+ case amLib_ACT_HomeScreen:
+ SendKeyHK(HK_HOMESCREEN, 0, 0, mode, 0);
+ break;
+ case amLib_ACT_WatchTV:
+// key_KeyDown( source, system, command );
+ SendKeyHK(DIKS_TUNER, 3, 0, mode, 0);
+ break;
+ case amLib_ACT_BrowseUSB:
+ SendKeyHK(HK_MEDIA, MEDIA_USB,0,mode, 0);
+ break;
+ case amLib_ACT_BrowseDLNA:
+ SendKeyHK(HK_MEDIA, MEDIA_Network,0,mode, 0);
+ break;
+ case amLib_ACT_NetTV:
+ SendKeyHK(HK_HTML, 0, 0, mode, 0);
+ break;
+ case amLib_ACT_Dfu:
+ SendKeyHK(HK_DFU, 0, 0, mode, 0);
+ break;
+ case amLib_ACT_Teletext:
+ SendKeyHK(HK_TELETEXT, 0, 0, mode, 0);
+ break;
+ case amLib_ACT_RemoteApp:
+ SendKeyHK(HK_REMOTEAPP, 0, 0, mode, 0);
+ break;
+ default:
+ break;
+ }
+}
+
+
+
+void
+jslibrc_KeyDownEx( int src, int sys, int cmd )
+{
+ DFBInputDeviceKeySymbol symbol = 0;
+
+ if ( TranslateKey( &src, &sys, &cmd, &symbol ) )
+ {
+ SendKeyDown(symbol, src, sys, cmd, DIMM_HYPER);
+ }
+}
+
+void
+jslibrc_KeyUpEx( int src, int sys, int cmd )
+{
+ DFBInputDeviceKeySymbol symbol = 0;
+
+ if ( TranslateKey( &src, &sys, &cmd, &symbol ) )
+ {
+ SendKeyUp(symbol, src, sys, cmd, DIMM_HYPER);
+ }
+}
+
+int
+jslibrc_RequestActivityEx( amLib_EnumActivityId act, amLib_EnumActivation mode, int cookie )
+{
+ switch(act)
+ {
+ case amLib_ACT_HomeScreen:
+ SendKeyHK(HK_HOMESCREEN, 0, 0, mode, DIMM_HYPER);
+ break;
+ case amLib_ACT_WatchTV:
+// key_KeyDown( source, system, command );
+ SendKeyHK(DIKS_TUNER, 3, 0, mode, DIMM_HYPER);
+ break;
+ case amLib_ACT_BrowseUSB:
+ SendKeyHK(HK_MEDIA, MEDIA_USB,0,mode, DIMM_HYPER);
+ break;
+ case amLib_ACT_BrowseDLNA:
+ SendKeyHK(HK_MEDIA, MEDIA_Network,0,mode, DIMM_HYPER);
+ break;
+ case amLib_ACT_NetTV:
+ SendKeyHK(HK_HTML, 0, 0, mode, DIMM_HYPER);
+ break;
+ case amLib_ACT_Dfu:
+ SendKeyHK(HK_DFU, 0, 0, mode, DIMM_HYPER);
+ break;
+ case amLib_ACT_Teletext:
+ SendKeyHK(HK_TELETEXT, 0, 0, mode, DIMM_HYPER);
+ break;
+ case amLib_ACT_RemoteApp:
+ SendKeyHK(HK_REMOTEAPP, 0, 0, mode, DIMM_HYPER);
+ break;
+ default:
+ break;
+ }
+}
+
+void
+jslibrc_HIDKeyDown( int keycode )
+{
+ DFBInputEvent event;
+ int dfb_ret;
+
+ if (divine)
+ {
+ event.clazz = DFEC_INPUT;
+ event.type = DIET_KEYPRESS;
+ event.flags = DIEF_KEYID;
+ event.key_id = keycode;
+ dfb_ret = divine->SendEvent (divine, &event);
+ }
+}
+
+void
+jslibrc_HIDKeyUp( int keycode )
+{
+ DFBInputEvent event;
+ int dfb_ret;
+
+ if (divine)
+ {
+ event.clazz = DFEC_INPUT;
+ event.type = DIET_KEYRELEASE;
+ event.flags = DIEF_KEYID;
+ event.key_id = keycode;
+ dfb_ret = divine->SendEvent (divine, &event);
+ }
+}
+
+int
+jslibrc_HIDKeyDownEx( int keycode )
+{
+ DFBInputEvent event;
+ int dfb_ret = -1;
+
+ if (divine)
+ {
+ event.clazz = DFEC_INPUT;
+ event.type = DIET_KEYPRESS;
+ event.flags = DIEF_KEYSYMBOL;
+ event.key_symbol = keycode;
+ dfb_ret = divine->SendEvent(divine, &event);
+ }
+ return dfb_ret;
+}
+
+int
+jslibrc_HIDKeyUpEx( int keycode )
+{
+ DFBInputEvent event;
+ int dfb_ret = -1;
+
+ if (divine)
+ {
+ event.clazz = DFEC_INPUT;
+ event.type = DIET_KEYRELEASE;
+ event.flags = DIEF_KEYSYMBOL;
+ event.key_symbol = keycode;
+ dfb_ret = divine->SendEvent(divine, &event);
+ }
+ return dfb_ret;
+}
+
+void
+jslibrc_HidMouseMoveAbs ( int x, int y, int xmin, int xmax, int ymin, int ymax )
+{
+ DFBInputEvent event;
+ int dfb_ret;
+
+ if (divine)
+ {
+ event.clazz = DFEC_INPUT;
+ event.type = DIET_AXISMOTION;
+ event.flags = DIEF_TIMESTAMP;
+ gettimeofday( &event.timestamp, NULL );
+ event.flags |= DIEF_AXISABS | DIEF_MIN | DIEF_MAX;
+ event.axis = DIAI_X;
+ event.min = xmin;
+ event.max = xmax;
+ event.axisabs = x;
+ dfb_ret = divine->SendEvent (divine, &event);
+ event.axis = DIAI_Y;
+ event.min = ymin;
+ event.max = ymax;
+ event.axisabs = y;
+ dfb_ret = divine->SendEvent (divine, &event);
+ }
+}
+
+void
+jslibrc_HidMouseMoveRel ( int dx, int dy, int sensitivity )
+{
+ DFBInputEvent event;
+ int dfb_ret;
+
+ if (divine)
+ {
+ event.clazz = DFEC_INPUT;
+ event.type = DIET_AXISMOTION;
+ event.flags = DIEF_TIMESTAMP;
+ gettimeofday( &event.timestamp, NULL );
+ event.flags |= DIEF_AXISREL;
+ event.axis = DIAI_X;
+ event.axisrel = dx*sensitivity;
+ dfb_ret = divine->SendEvent (divine, &event);
+ event.axis = DIAI_Y;
+ event.axisrel = dy*sensitivity;
+ dfb_ret = divine->SendEvent (divine, &event);
+ }
+}
+
+void
+jslibrc_HidMouseMoveAbsEx ( int x, int y )
+{
+ DFBInputEvent event;
+ int dfb_ret;
+
+ if (divine)
+ {
+ event.clazz = DFEC_INPUT;
+ event.type = DIET_AXISMOTION;
+ event.flags = DIEF_AXISABS;
+ event.axis = DIAI_X;
+ event.axisabs = x;
+ dfb_ret = divine->SendEvent (divine, &event);
+ event.axis = DIAI_Y;
+ event.axisabs = y;
+ dfb_ret = divine->SendEvent (divine, &event);
+ }
+}
+
+void
+jslibrc_HidMouseMoveRelEx ( int dx, int dy)
+{
+ DFBInputEvent event;
+ int dfb_ret;
+
+ if (divine)
+ {
+ event.clazz = DFEC_INPUT;
+ event.type = DIET_AXISMOTION;
+ event.flags = DIEF_AXISREL;
+ event.axis = DIAI_X;
+ event.axisrel = dx;
+ dfb_ret = divine->SendEvent (divine, &event);
+ event.axis = DIAI_Y;
+ event.axisrel = dy;
+ dfb_ret = divine->SendEvent (divine, &event);
+ }
+}
+
+void
+jslibrc_HidMouseButtonDown ( int button )
+{
+ DFBInputEvent event;
+ int dfb_ret;
+
+ if (divine)
+ {
+ event.clazz = DFEC_INPUT;
+ event.type = DIET_BUTTONPRESS;
+ event.flags = DIEF_NONE;
+ event.button = DIBI_FIRST;
+ dfb_ret = divine->SendEvent (divine, &event);
+ }
+}
+
+void
+jslibrc_HidMouseButtonUp( int button )
+{
+ DFBInputEvent event;
+ int dfb_ret;
+
+ if (divine)
+ {
+ event.clazz = DFEC_INPUT;
+ event.type = DIET_BUTTONRELEASE;
+ event.flags = DIEF_NONE;;
+ event.button = DIBI_FIRST;
+ dfb_ret = divine->SendEvent (divine, &event);
+ }
+}
+
+void
+jslibrc_HidMouseButtonDownEx ( int button )
+{
+ DFBInputEvent event;
+ int dfb_ret;
+
+ if (divine)
+ {
+ event.clazz = DFEC_INPUT;
+ event.type = DIET_BUTTONPRESS;
+ event.flags = 0;
+ event.button = DIBI_FIRST;
+ dfb_ret = divine->SendEvent (divine, &event);
+ }
+}
+
+void
+jslibrc_HidMouseButtonUpEx( int button )
+{
+ DFBInputEvent event;
+ int dfb_ret;
+
+ if (divine)
+ {
+ event.clazz = DFEC_INPUT;
+ event.type = DIET_BUTTONRELEASE;
+ event.flags = 0;
+ event.button = DIBI_FIRST;
+ dfb_ret = divine->SendEvent (divine, &event);
+ }
+} \ No newline at end of file
diff --git a/Jslib/jslibrc/jslibrc_client.h b/Jslib/jslibrc/jslibrc_client.h
new file mode 100755
index 0000000..c1d9c15
--- /dev/null
+++ b/Jslib/jslibrc/jslibrc_client.h
@@ -0,0 +1,60 @@
+
+/*
+ * Copyright © 2009, Koninklijke Philips Electronics N.V.
+ * All rights reserved.
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * - Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * - Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * - Neither the name of the Koninklijke Philips Electronics N.V. nor the
+ * names of its contributors may be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
+ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#ifndef __JSLIBRC_CLIENT__
+#define __JSLIBRC_CLIENT__
+
+#include <jslibrc_types.h>
+
+
+int jslibrc_Init( int *argc, char **argv[] );
+void jslibrc_Exit( void );
+
+void jslibrc_KeyDown( int src, int sys, int cmd );
+void jslibrc_KeyUp ( int src, int sys, int cmd );
+int jslibrc_RequestActivity( amLib_EnumActivityId act, amLib_EnumActivation mode, int cookie );
+/* To be used from 2k11 TV models onward */
+void jslibrc_KeyDownEx( int src, int sys, int cmd );
+void jslibrc_KeyUpEx ( int src, int sys, int cmd );
+int jslibrc_RequestActivityEx( amLib_EnumActivityId act, amLib_EnumActivation mode, int cookie );
+void jslibrc_HIDKeyDown( int keycode );
+void jslibrc_HIDKeyUp( int keycode );
+int jslibrc_HIDKeyDownEx( int keycode );
+int jslibrc_HIDKeyUpEx( int keycode );
+void jslibrc_HidMouseMoveAbs ( int x, int y, int xmin, int xmax, int ymin, int ymax );
+void jslibrc_HidMouseMoveRel ( int dx, int dy, int sensitivity );
+void jslibrc_HidMouseMoveAbsEx ( int x, int y );
+void jslibrc_HidMouseMoveRelEx ( int dx, int dy );
+void jslibrc_HidMouseButtonDown ( int button );
+void jslibrc_HidMouseButtonUp( int button );
+void jslibrc_HidMouseButtonDownEx ( int button );
+void jslibrc_HidMouseButtonUpEx( int button );
+
+#endif
+
diff --git a/Jslib/jslibrc/jslibrc_types.h b/Jslib/jslibrc/jslibrc_types.h
new file mode 100755
index 0000000..9757abe
--- /dev/null
+++ b/Jslib/jslibrc/jslibrc_types.h
@@ -0,0 +1,431 @@
+#ifndef __JSLIBRC_TYPES__
+#define __JSLIBRC_TYPES__
+
+
+/* Rc5 System 0 raw key codes ----------------------*/
+#define rc5S0Digit0 0
+#define rc5S0Digit1 1
+#define rc5S0Digit2 2
+#define rc5S0Digit3 3
+#define rc5S0Digit4 4
+#define rc5S0Digit5 5
+#define rc5S0Digit6 6
+#define rc5S0Digit7 7
+#define rc5S0Digit8 8
+#define rc5S0Digit9 9
+#define rc5S0123Digits 10
+#define rc5S0ChannelProgramFrequency 11
+#define rc5S0Standby 12
+#define rc5S0MasterMuteDemute 13
+#define rc5S0PersonalPreference 14
+#define rc5S0Display 15
+#define rc5S0MasterVolumeUp 16
+#define rc5S0MasterVolumeDown 17
+#define rc5S0MasterBrightnessUp 18
+#define rc5S0MasterBrightnessDown 19
+#define rc5S0MasterSaturationUp 20
+#define rc5S0MasterSaturationDown 21
+#define rc5S0MasterBassUp 22
+#define rc5S0MasterBassDown 23
+#define rc5S0MasterTrebleUp 24
+#define rc5S0MasterTrebleDown 25
+#define rc5S0MasterBalanceRight 26
+#define rc5S0MasterBalanceLeft 27
+#define rc5S0ContrastUp 28
+#define rc5S0ContrastDown 29
+#define rc5S0SearchUp 30
+#define rc5S0TintHueDown 31
+#define rc5S0ChannelProgramUp 32
+#define rc5S0ChannelProgramDown 33
+#define rc5S0AlternateChannel 34
+#define rc5S0SoundSelect 35
+#define rc5S0SpatialStereo 36
+#define rc5S0StereoMono 37
+#define rc5S0Sleeptimer 38
+#define rc5S0TintHueUp 39
+#define rc5S0RfSwitch 40
+#define rc5S0StoreExecute 41
+#define rc5S0Time 42
+#define rc5S0ScanForward 43
+#define rc5S0Decrement 44
+#define rc5S0Cancel 45
+#define rc5S0SecondaryControlMenu 46
+#define rc5S0ShowClock 47
+#define rc5S0Pause 48
+#define rc5S0EraseCorrect 49
+#define rc5S0Rewind 50
+#define rc5S0GoTo 51
+#define rc5S0Wind 52
+#define rc5S0Play 53
+#define rc5S0Stop 54
+#define rc5S0Record 55
+#define rc5S0External1 56
+#define rc5S0External2 57
+#define rc5S0ClosedCaptioning 58
+#define rc5S0ViewDataAdvance 59
+#define rc5S0TxtSubmode 60
+#define rc5S0SystemStandby 61
+#define rc5S0Crispener 62
+#define rc5S0SystemSelect 63
+#define rc5S0SurroundSoundScroll 64
+/* define rc5S0... 65 */
+/* define rc5S0... 66 */
+#define rc5S0PipReplay 67
+#define rc5S0PipClear 68
+#define rc5S0PipSlowMotion 69
+#define rc5S0SpeechMusic 70
+#define rc5S0DimDown 71
+#define rc5S0RfLocator 72
+#define rc5S0Increment 73
+#define rc5S0Help 74
+#define rc5S0TunerAb 75
+#define rc5S0PcTv 76
+#define rc5S0LinearIncrement 77
+#define rc5S0LinearDecrement 78
+#define rc5S0SoundScroll 79
+#define rc5S0StepUp 80
+#define rc5S0StepDown 81
+#define rc5S0MenuOn 82
+#define rc5S0MenuOff 83
+#define rc5S0DisplayAvSystemStatus 84
+#define rc5S0StepLeft 85
+#define rc5S0StepRight 86
+#define rc5S0Acknowledge 87
+#define rc5S0PipPopOff 88
+#define rc5S0PipShift 89
+#define rc5S0PipMainSwap 90
+#define rc5S0StrobeOnOff 91
+#define rc5S0MultiStrobe 92
+#define rc5S0MainFreezed 93
+#define rc5S0MultiScanPip 94
+#define rc5S0PipSelect 95
+#define rc5S0MosaicMultiPip 96
+#define rc5S0PictureDigitalNoiseReduction 97
+#define rc5S0MainStored 98
+#define rc5S0PipStrobe 99
+#define rc5S0RecallMain 100
+#define rc5S0PipFreeze 101
+#define rc5S0PipStepUp 102
+#define rc5S0PipStepDown 103
+#define rc5S0PipSize 104
+#define rc5S0PictureScroll 105
+#define rc5S0ActuartorOnOff 106
+#define rc5S0Red 107
+#define rc5S0Green 108
+#define rc5S0Yellow 109
+#define rc5S0Cyan 110
+#define rc5S0IndexWhiteCancel 111
+#define rc5S0Next 112
+#define rc5S0Previous 113
+#define rc5S0LearningUp 114
+#define rc5S0LearningDown 115
+#define rc5S0ZoomPlus 116
+#define rc5S0SubtitleReposition 117
+#define rc5S0SubMode 118
+#define rc5S0OptionSubMode 119
+#define rc5S0ChannelGuide 120
+#define rc5S0SmartChannel 121
+#define rc5S0StoreOpenClose 122
+#define rc5S0Connect 123
+#define rc5S0Disconnect 124
+#define rc5S0ZoomMinus 125
+#define rc5S0MovieExpand 126
+#define rc5S0ParentalAccess 127
+
+
+/* Rc6 System 0 raw key codes ----------------------*/
+#define rc6S0Digit0 0
+#define rc6S0Digit1 1
+#define rc6S0Digit2 2
+#define rc6S0Digit3 3
+#define rc6S0Digit4 4
+#define rc6S0Digit5 5
+#define rc6S0Digit6 6
+#define rc6S0Digit7 7
+#define rc6S0Digit8 8
+#define rc6S0Digit9 9
+#define rc6S0PreviousProgram 10
+/* define rc6S0... 11 */
+#define rc6S0Standby 12
+#define rc6S0MuteDemute 13
+#define rc6S0PersonalPreference 14
+#define rc6S0Display 15
+#define rc6S0VolumeUp 16
+#define rc6S0VolumeDown 17
+#define rc6S0BrightnessUp 18
+#define rc6S0BrightnessDown 19
+#define rc6S0SaturationUp 20
+#define rc6S0SaturationDown 21
+#define rc6S0BassUp 22
+#define rc6S0BassDown 23
+#define rc6S0TrebleUp 24
+#define rc6S0TrebleDown 25
+#define rc6S0BalanceRight 26
+#define rc6S0BalanceLeft 27
+#define rc6S0CtrlLastPosition 28
+/* define rc6S0... 29 */
+#define rc6S0SearchUp 30
+#define rc6S0SearchDown 31
+#define rc6S0Next 32
+#define rc6S0Previous 33
+/* define rc6S0... 34 */
+/* define rc6S0... 35 */
+/* define rc6S0... 36 */
+/* define rc6S0... 37 */
+/* define rc6S0... 38 */
+/* define rc6S0... 39 */
+#define rc6S0FastForward 40
+/* define rc6S0... 41 */
+/* define rc6S0... 42 */
+#define rc6S0ScanReverse 43
+#define rc6S0Play 44
+/* define rc6S0... 45 */
+/* define rc6S0... 46 */
+/* define rc6S0... 47 */
+/* define rc6S0... 48 */
+#define rc6S0Stop 49
+/* define rc6S0... 50 */
+/* define rc6S0... 51 */
+/* define rc6S0... 52 */
+/* define rc6S0... 53 */
+/* define rc6S0... 54 */
+#define rc6S0Record 55
+#define rc6S0External1 56
+#define rc6S0External2 57
+/* define rc6S0... 58 */
+#define rc6S0AbProgram 59
+#define rc6S0TxtSubmode 60
+#define rc6S0SystemStandby 61
+/* define rc6S0... 62 */
+#define rc6S0SystemSelect 63
+#define rc6S0ContextualOptions 64
+/* define rc6S0... 65 */
+/* define rc6S0... 66 */
+/* define rc6S0... 67 */
+/* define rc6S0... 68 */
+#define rc6S0StoreOpenClose 69
+#define rc6S0ClosedCaptioning 70
+#define rc6S0Sleeptimer 71
+/* define rc6S0... 72 */
+/* define rc6S0... 73 */
+#define rc6S0PictureNumberTime 74
+#define rc6S0TvTextSubtitle 75
+/* define rc6S0... 76 */
+/* define rc6S0... 77 */
+#define rc6S0SoundSelect 78
+#define rc6S0SpatialStereo 79
+#define rc6S0StereoMono 80
+#define rc6S0SoundScroll 81
+#define rc6S0SurroundSound 82
+#define rc6S0SurroundSoundScroll 83
+#define rc6S0MenuOn 84
+#define rc6S0MenuOff 85
+/* define rc6S0... 86 */
+/* define rc6S0... 87 */
+#define rc6S0StepUp 88
+#define rc6S0StepDown 89
+#define rc6S0StepLeft 90
+#define rc6S0StepRight 91
+#define rc6S0Acknowledge 92
+#define rc6S0PipOnOff 93
+#define rc6S0PipSelect 94
+#define rc6S0PipShift 95
+#define rc6S0PipSize 96
+#define rc6S0PipStepDown 97
+#define rc6S0PipStepUp 98
+#define rc6S0PipMainSwap 99
+#define rc6S0PipFreeze 100
+#define rc6S0PipStrobe 101
+#define rc6S0MosaicMultiPip 102
+#define rc6S0MainFreezed 103
+#define rc6S0MainStored 104
+/* define rc6S0... 105 */
+/* define rc6S0... 106 */
+/* define rc6S0... 107 */
+/* define rc6S0... 108 */
+#define rc6S0Red 109
+#define rc6S0Green 110
+#define rc6S0Yellow 111
+#define rc6S0Cyan 112
+#define rc6S0IndexWhite 113
+/* define rc6S0... 114 */
+/* define rc6S0... 115 */
+/* define rc6S0... 116 */
+#define rc6S0TimerSet 117
+/* define rc6S0... 118 */
+/* define rc6S0... 119 */
+#define rc6S0Preset10 120
+#define rc6S0Preset11 121
+#define rc6S0Preset12 122
+#define rc6S0Preset13 123
+#define rc6S0Preset14 124
+#define rc6S0Preset15 125
+#define rc6S0Preset16 126
+#define rc6S0Time 127
+/* define rc6S0... 128 */
+#define rc6S0Help 129
+#define rc6S0DefaultMenuSelect 130
+/* define rc6S0... 131 */
+#define rc6S0FavouriteMode 132
+#define rc6S0SwivelMode 133
+#define rc6S0External3 134
+#define rc6S0External4 135
+#define rc6S0External5 136
+/* define rc6S0... 137 */
+#define rc6S0VideoVgaSelect 138
+#define rc6S0NextSource 139
+#define rc6S0BacklightUp 140
+#define rc6S0BacklightDown 141
+#define rc6S0HdAtHome 142
+#define rc6S0AmbLightOnOffDim 143
+#define rc6S0AmbLightMode 144
+#define rc6S0AmbilightBrightnessUp 145
+#define rc6S0AmbilightBrightnessDown 146
+/* define rc6S0... 147 */
+/* define rc6S0... 148 */
+/* define rc6S0... 149 */
+#define rc6S0Smart 150
+#define rc6S0SoftKey1A 151
+#define rc6S0SoftKey1B 152
+#define rc6S0SoftKey2A 153
+#define rc6S0SoftKey2B 154
+#define rc6S0SoftKey3A 155
+#define rc6S0SoftKey3B 156
+#define rc6S0Smiley 157
+#define rc6S0Frownie 158
+/* define rc6S0... 159 */
+/* define rc6S0... 160 */
+/* define rc6S0... 161 */
+/* define rc6S0... 162 */
+#define rc6S0AvMute 163
+/* define rc6S0... 164 */
+/* define rc6S0... 165 */
+/* define rc6S0... 166 */
+/* define rc6S0... 167 */
+/* define rc6S0... 168 */
+/* define rc6S0... 169 */
+/* define rc6S0... 170 */
+/* define rc6S0... 171 */
+/* define rc6S0... 172 */
+/* define rc6S0... 173 */
+/* define rc6S0... 174 */
+/* define rc6S0... 175 */
+#define rc6S0MainSubmode 176
+#define rc6S0Resume 177
+/* define rc6S0... 178 */
+/* define rc6S0... 179 */
+/* define rc6S0... 180 */
+/* define rc6S0... 181 */
+/* define rc6S0... 182 */
+/* define rc6S0... 183 */
+/* define rc6S0... 184 */
+/* define rc6S0... 185 */
+/* define rc6S0... 186 */
+/* define rc6S0... 187 */
+/* define rc6S0... 188 */
+/* define rc6S0... 189 */
+#define rc6S0DisplayBrowser 190
+/* define rc6S0... 191 */
+#define rc6S0AnalogueDigital 192
+#define rc6S0DigitalSetupMenu 193
+#define rc6S0OneTouchHomeCinema 194
+#define rc6S0BatteryLow 195
+#define rc6S0CursorUpRight 196
+#define rc6S0CursorUpLeft 197
+#define rc6S0CursorDownRight 198
+#define rc6S0CursorDownLeft 199
+#define rc6S0Digit100 200
+#define rc6S0RotCabClockwise 201
+#define rc6S0CenterCabinet 202
+#define rc6S0RotCabAntiClockwise 203
+#define rc6S0EpgGuide 204
+#define rc6S0ToggleStandby 205
+#define rc6S0PageUp 206
+#define rc6S0PageDown 207
+#define rc6S0DigitalPictureMenu 208
+#define rc6S0StartPage 209
+#define rc6S0FavouritesList 210
+#define rc6S0MarkListitem 211
+/* define rc6S0... 212 */
+#define rc6S0SubmodeSystemMenu 213
+#define rc6S0ZoomOnOff 214
+#define rc6S0CableMode 215
+#define rc6S0WideScreen 216
+#define rc6S0Dot 217
+#define rc6S0SpeechMusic 218
+#define rc6S0Options 219
+#define rc6S0RfSwitch 220
+#define rc6S0ActuatorOnOff 221
+#define rc6S0Learn1 222
+#define rc6S0Learn2 223
+#define rc6S0CancelPicture 224
+#define rc6S0Enter 225
+#define rc6S0Exchange 226
+#define rc6S0TxtTv 227
+#define rc6S0NewsFlash 228
+#define rc6S0RowZero 229
+#define rc6S0SequenceOut 230
+#define rc6S0LargeTopBottomNormal 231
+#define rc6S0StepPageDown 232
+#define rc6S0StepPageUp 233
+#define rc6S0RevealConceal 234
+#define rc6S0PageHold 235
+#define rc6S0Index 236
+#define rc6S0RadioChannelDown 237
+#define rc6S0RadioChannelUp 238
+#define rc6S0PayTvChannelDown 239
+#define rc6S0PayTvChannelUp 240
+#define rc6S0TiltForward 241
+#define rc6S0TiltBackward 242
+#define rc6S0VideoPp 243
+#define rc6S0AudioPp 244
+#define rc6S0MovieExpand 245
+#define rc6S0ZoomMinus 246
+#define rc6S0ZoomPlus 247
+#define rc6S0ShowClock 248
+#define rc6S0PictureDigitalNoiseReduction 249
+#define rc6S0Crispener 250
+#define rc6S0ContrastDown 251
+#define rc6S0ContrastUp 252
+#define rc6S0TintHueDown 253
+#define rc6S0TintHueUp 254
+#define rc6S0Wysiwyr 255
+
+
+
+#define keySourceLkb 1
+#define keySourceRc5 2
+#define keySourceRc6 3
+
+
+typedef enum{
+ amLib_ACT_Toggle,
+ amLib_ACT_Start,
+ amLib_ACT_Stop,
+ amLib_ACT_StartNoFocus
+} amLib_EnumActivation;
+
+typedef enum{
+ amLib_ACT_HomeScreen,
+ amLib_ACT_NetTV,
+ amLib_ACT_BrowseUSB,
+ amLib_ACT_BrowseDLNA,
+ amLib_ACT_WatchTV,
+ amLib_ACT_WatchSatellite,
+ amLib_ACT_WatchExt,
+ amLib_ACT_MultiApp,
+ amLib_ACT_VideoStore,
+ amLib_ACT_Dfu,
+ amLib_ACT_Teletext,
+ amLib_ACT_Epg,
+ amLib_ACT_Esticker,
+ amLib_ACT_Mhp,
+ amLib_ACT_Upgrade,
+ amLib_ACT_LoadingAnimation,
+ amLib_ACT_Widgets,
+ amLib_ACT_RemoteApp
+} amLib_EnumActivityId;
+
+
+#endif
+
diff --git a/Jslib/tools/remco.c b/Jslib/tools/remco.c
new file mode 100755
index 0000000..9f3441f
--- /dev/null
+++ b/Jslib/tools/remco.c
@@ -0,0 +1,326 @@
+/*
+ * Copyright © 2009, Koninklijke Philips Electronics N.V.
+ * All rights reserved.
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * - Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * - Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * - Neither the name of the Koninklijke Philips Electronics N.V. nor the
+ * names of its contributors may be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
+ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <direct/util.h>
+#include <jslibrc_client.h>
+//#include <directfb_keyboard.h>
+
+
+/**************************************
+* Local macros/typedef
+**************************************/
+#define LINE_LENGTH 256
+#define FILENAME_LENGTH 128
+
+// Local enumeration for Hotkeys
+#define HK_HOMESCREEN_START (0x1000+1)
+#define HK_HOMESCREEN_STOP (0x1000+2)
+#define HK_WATCHTV_START (0x1000+3)
+#define HK_WATCHTV_STOP (0x1000+4)
+#define HK_CB_USB_START (0x1000+5)
+#define HK_CB_USB_STOP (0x1000+6)
+#define HK_CB_DLNA_START (0x1000+7)
+#define HK_CB_DLNA_STOP (0x1000+8)
+#define HK_NETTV_START (0x1000+9)
+#define HK_NETTV_STOP (0x1000+10)
+#define HK_DFU_START (0x1000+11)
+#define HK_DFU_STOP (0x1000+12)
+#define HK_TELETEXT_START (0x1000+13)
+#define HK_TELETEXT_STOP (0x1000+14)
+#define HK_REMOTEAPP_START (0x1000+15)
+#define HK_REMOTEAPP_STOP (0x1000+16)
+
+
+/***************************************
+* Local data
+***************************************/
+static void * rcButtonMatrix[]={
+ (void *)"Red",(void *)"Green",(void *)"Yellow",(void *)"Blue",(void *)"Standby",
+ (void *)NULL, (void *)"Back", (void *)"Home", (void *)"Options",(void *)NULL,
+ (void *)NULL, (void *)NULL, (void *)"Up", (void *)NULL, (void *)NULL,
+ (void *)"Mute", (void *)"Left", (void *)"OK", (void *)"Right",(void *)NULL,
+ (void *)"VolUp",(void *)NULL, (void *)"Down", (void *)NULL, (void *)"PgUp",
+ (void *)"VolDn",(void *)"1", (void *)"2", (void *)"3", (void *)"PgDn",
+ (void *)NULL, (void *)"4", (void *)"5", (void *)"6", (void *)NULL,
+ (void *)NULL, (void *)"7", (void *)"8", (void *)"9", (void *)NULL,
+ (void *)NULL, (void *)"Subt.",(void *)"0", (void *)"Source",(void *)NULL,
+ (void *)NULL, (void *)"EPG", (void *)"Ambi", (void *)"Info",(void *)NULL,
+ (void *)"HK_HOMESCREEN_START", (void *)"HK_WATCHTV_START", (void *)"HK_CB_USB_START", (void *)"HK_CB_DLNA_START", (void *)"HK_NETTV_START",
+ (void *)"HK_DFU_START", (void *)"HK_TELETEXT_START", (void *)"HK_REMOTEAPP_START", (void *)NULL, (void *)NULL,
+ (void *)"HK_HOMESCREEN_STOP", (void *)"HK_WATCHTV_STOP", (void *)"HK_CB_USB_STOP", (void *)"HK_CB_DLNA_STOP", (void *)"HK_NETTV_STOP",
+ (void *)"HK_DFU_STOP", (void *)"HK_TELETEXT_STOP", (void *)"HK_REMOTEAPP_STOP", (void *)NULL, (void *)NULL };
+
+static int rcButtonMapping[]={
+ rc6S0Red, rc6S0Green, rc6S0Yellow, rc6S0Cyan, rc6S0Standby,
+ -1, rc6S0PreviousProgram, rc6S0MenuOn, rc6S0Options, -1,
+ -1, -1, rc6S0StepUp, -1, -1,
+ rc6S0MuteDemute, rc6S0StepLeft, rc6S0Acknowledge, rc6S0StepRight, -1,
+ rc6S0VolumeUp, -1, rc6S0StepDown, -1, rc6S0Next,
+ rc6S0VolumeDown, 1, 2, 3, rc6S0Previous,
+ -1, 4, 5, 6, -1,
+ -1, 7, 8, 9, -1,
+ -1, rc6S0TvTextSubtitle, 0, rc6S0NextSource, -1,
+ -1, rc6S0EpgGuide, rc6S0AmbLightOnOffDim, rc6S0Display, -1,
+ HK_HOMESCREEN_START, HK_WATCHTV_START, HK_CB_USB_START, HK_CB_DLNA_START, HK_NETTV_START,
+ HK_DFU_START, HK_TELETEXT_START, HK_REMOTEAPP_START, -1, -1,
+ HK_HOMESCREEN_STOP, HK_WATCHTV_STOP, HK_CB_USB_STOP, HK_CB_DLNA_STOP, HK_NETTV_STOP,
+ HK_DFU_STOP, HK_TELETEXT_STOP, HK_REMOTEAPP_STOP, -1, -1 };
+
+
+
+/***************************************
+* Local procedures
+***************************************/
+static int IsNumStr(const char * pStr)
+{
+ if (*pStr == '-' || *pStr == '+') pStr++;
+ return (*pStr >= '0' && *pStr <= '9');
+}
+
+static int ReadDimsArg(const char * pArg, int * width, int * height)
+{
+ int nWidth=1;
+ int nHeight=1;
+
+ if (IsNumStr(pArg)) nWidth = strtol(pArg, (char **) &pArg, 10); else return 0;
+ if ('x' == *pArg++ && IsNumStr(pArg)) nHeight = strtol(pArg, (char **) &pArg, 10); else return 0;
+ if (*pArg != '\0') return 0;
+ if (nWidth <= 0 || nHeight <= 0) return 0;
+ *width = nWidth;
+ *height = nHeight;
+ return 1;
+}
+
+static int ReadNumberArg(const char * pArg, int * value)
+{
+ int val=0;
+
+ if (IsNumStr(pArg)) val = strtol(pArg, (char **) &pArg, 10); else return 0;
+ *value = val;
+ return 1;
+}
+
+
+static int
+LookupCommand( const char *name )
+{
+ int i;
+
+ for (i=0; i<D_ARRAY_SIZE(rcButtonMatrix); i++) {
+ if (!rcButtonMatrix[i])
+ continue;
+
+ if (!strncasecmp( name, rcButtonMatrix[i], strlen(name) ))
+ return rcButtonMapping[i];
+ }
+
+ return 0;
+}
+
+
+static void
+CleanLine( char *line )
+{
+ while ( (*line != '\r') && (*line != '\n') && (*line != ';'))
+ {
+ line++;
+ }
+ *line = 0;
+}
+
+
+static void
+ExecuteCommand(int command)
+{
+ switch(command)
+ {
+ case HK_HOMESCREEN_START:
+ jslibrc_RequestActivity( amLib_ACT_HomeScreen, amLib_ACT_Start, 0 );
+ break;
+ case HK_HOMESCREEN_STOP:
+ jslibrc_RequestActivity( amLib_ACT_HomeScreen, amLib_ACT_Stop, 0 );
+ break;
+ case HK_WATCHTV_START:
+ jslibrc_RequestActivity( amLib_ACT_WatchTV, amLib_ACT_Start, 0 );
+ break;
+ case HK_WATCHTV_STOP:
+ jslibrc_RequestActivity( amLib_ACT_WatchTV, amLib_ACT_Stop, 0 );
+ break;
+ case HK_CB_USB_START:
+ jslibrc_RequestActivity( amLib_ACT_BrowseUSB, amLib_ACT_Start, 0 );
+ break;
+ case HK_CB_USB_STOP:
+ jslibrc_RequestActivity( amLib_ACT_BrowseUSB, amLib_ACT_Stop, 0 );
+ break;
+ case HK_CB_DLNA_START:
+ jslibrc_RequestActivity( amLib_ACT_BrowseDLNA, amLib_ACT_Start, 0 );
+ break;
+ case HK_CB_DLNA_STOP:
+ jslibrc_RequestActivity( amLib_ACT_BrowseDLNA, amLib_ACT_Stop, 0 );
+ break;
+ case HK_NETTV_START:
+ jslibrc_RequestActivity( amLib_ACT_NetTV, amLib_ACT_Start, 0 );
+ break;
+ case HK_NETTV_STOP:
+ jslibrc_RequestActivity( amLib_ACT_NetTV, amLib_ACT_Stop, 0 );
+ break;
+ case HK_DFU_START:
+ jslibrc_RequestActivity( amLib_ACT_Dfu, amLib_ACT_Start, 0 );
+ break;
+ case HK_DFU_STOP:
+ jslibrc_RequestActivity( amLib_ACT_Dfu, amLib_ACT_Stop, 0 );
+ break;
+ case HK_TELETEXT_START:
+ jslibrc_RequestActivity( amLib_ACT_Teletext, amLib_ACT_Start, 0 );
+ break;
+ case HK_TELETEXT_STOP:
+ jslibrc_RequestActivity( amLib_ACT_Teletext, amLib_ACT_Stop, 0 );
+ break;
+ case HK_REMOTEAPP_START:
+ jslibrc_RequestActivity( amLib_ACT_RemoteApp, amLib_ACT_Start, 0 );
+ break;
+ case HK_REMOTEAPP_STOP:
+ jslibrc_RequestActivity( amLib_ACT_RemoteApp, amLib_ACT_Stop, 0 );
+ break;
+ default:
+ jslibrc_KeyDown( keySourceRc6, 0, command );
+ jslibrc_KeyUp( keySourceRc6, 0, command );
+// jslibrc_HIDKeyDown( DIKI_O );
+// jslibrc_HIDKeyUp( DIKI_O );
+ break;
+ }
+}
+
+
+/***************************************
+* Main procedure
+***************************************/
+int
+main (int argc, char *argv[])
+{
+ int i,k;
+ int bParseOK = 1;
+ char filename[FILENAME_LENGTH]={'\0'};
+ char line[LINE_LENGTH+1];
+ int timeout;
+ FILE *f;
+
+ jslibrc_Init( &argc, &argv );
+
+ // Print ussage
+ printf("\n\n");
+ printf("Usage: remco [--keycommandfile <file>] keycommand keycommand ...\n\n");
+ printf("Supported key commands:\n");
+ k=0;
+ for (i=0; i<D_ARRAY_SIZE(rcButtonMatrix); i++) {
+ if (!rcButtonMatrix[i])
+ continue;
+ printf("'%s' ", rcButtonMatrix[i]);
+ k++;
+ if ( !(k%4) ) printf("\n");
+ }
+ printf("\n\n");
+
+
+ // Parse arguments
+ for (i = 1; i < argc && bParseOK; i++)
+ {
+ const char * pArg = argv[i];
+ if ('-' == *pArg++ && '-' == *pArg++)
+ {
+ if ((0 == strcmp(pArg, "keycommandfile")) && (i + 1 < argc))
+ {
+ strncpy (filename, argv[i+1], sizeof(filename) );
+ printf("Reading commands from %s\n\n", filename);
+ }
+ else
+ {
+ bParseOK = 0;
+ }
+ }
+ }
+ if (!bParseOK) exit;
+
+
+ if (filename[0])
+ {
+ // Use file as input
+ if (f = fopen(filename,"r"))
+ {
+ while (fgets(line, LINE_LENGTH, f))
+ {
+ if ( (line[0] != 0) && (line[0] != ';') && (line[0] != '#') )
+ {
+ CleanLine(line);
+ printf("%s\n", line);
+ if (!strncmp(line, "sleep", 5))
+ {
+ sscanf(&line[5], "%d", &timeout);
+ sleep(timeout);
+ }
+ else
+ {
+ int command = LookupCommand(line);
+ if (command == -1)
+ {
+ printf( "Unknown key command '%s'\n", line );
+ continue;
+ }
+ ExecuteCommand(command);
+ }
+ }
+ }
+ fclose(f);
+ }
+ else
+ {
+ printf( "File not found!\n");
+ }
+ }
+ else
+ {
+ // Use ARGVs
+ for (i=1; i<argc; i++)
+ {
+ int command = LookupCommand( argv[i] );
+ if (command == -1)
+ {
+ printf( "Unknown key command '%s'!\n", argv[i] );
+ continue;
+ }
+ ExecuteCommand(command);
+ }
+ }
+
+ jslibrc_Exit();
+
+ return 0;
+}
+
diff --git a/Jslib/tools/remco2k11.c b/Jslib/tools/remco2k11.c
new file mode 100755
index 0000000..942ef2c
--- /dev/null
+++ b/Jslib/tools/remco2k11.c
@@ -0,0 +1,323 @@
+/*
+ * Copyright © 2009, Koninklijke Philips Electronics N.V.
+ * All rights reserved.
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * - Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * - Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * - Neither the name of the Koninklijke Philips Electronics N.V. nor the
+ * names of its contributors may be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
+ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <direct/util.h>
+#include <jslibrc_client.h>
+
+
+/**************************************
+* Local macros/typedef
+**************************************/
+#define LINE_LENGTH 256
+#define FILENAME_LENGTH 128
+
+// Local enumeration for Hotkeys
+#define HK_HOMESCREEN_START (0x1000+1)
+#define HK_HOMESCREEN_STOP (0x1000+2)
+#define HK_WATCHTV_START (0x1000+3)
+#define HK_WATCHTV_STOP (0x1000+4)
+#define HK_CB_USB_START (0x1000+5)
+#define HK_CB_USB_STOP (0x1000+6)
+#define HK_CB_DLNA_START (0x1000+7)
+#define HK_CB_DLNA_STOP (0x1000+8)
+#define HK_NETTV_START (0x1000+9)
+#define HK_NETTV_STOP (0x1000+10)
+#define HK_DFU_START (0x1000+11)
+#define HK_DFU_STOP (0x1000+12)
+#define HK_TELETEXT_START (0x1000+13)
+#define HK_TELETEXT_STOP (0x1000+14)
+#define HK_REMOTEAPP_START (0x1000+15)
+#define HK_REMOTEAPP_STOP (0x1000+16)
+
+
+/***************************************
+* Local data
+***************************************/
+static void * rcButtonMatrix[]={
+ (void *)"Red",(void *)"Green",(void *)"Yellow",(void *)"Blue",(void *)"Standby",
+ (void *)NULL, (void *)"Back", (void *)"Home", (void *)"Options",(void *)NULL,
+ (void *)NULL, (void *)NULL, (void *)"Up", (void *)NULL, (void *)NULL,
+ (void *)"Mute", (void *)"Left", (void *)"OK", (void *)"Right",(void *)NULL,
+ (void *)"VolUp",(void *)NULL, (void *)"Down", (void *)NULL, (void *)"PgUp",
+ (void *)"VolDn",(void *)"1", (void *)"2", (void *)"3", (void *)"PgDn",
+ (void *)NULL, (void *)"4", (void *)"5", (void *)"6", (void *)NULL,
+ (void *)NULL, (void *)"7", (void *)"8", (void *)"9", (void *)NULL,
+ (void *)NULL, (void *)"Subt.",(void *)"0", (void *)"Source",(void *)NULL,
+ (void *)NULL, (void *)"EPG", (void *)"Ambi", (void *)"Info",(void *)NULL,
+ (void *)"HK_HOMESCREEN_START", (void *)"HK_WATCHTV_START", (void *)"HK_CB_USB_START", (void *)"HK_CB_DLNA_START", (void *)"HK_NETTV_START",
+ (void *)"HK_DFU_START", (void *)"HK_TELETEXT_START", (void *)"HK_REMOTEAPP_START", (void *)NULL, (void *)NULL,
+ (void *)"HK_HOMESCREEN_STOP", (void *)"HK_WATCHTV_STOP", (void *)"HK_CB_USB_STOP", (void *)"HK_CB_DLNA_STOP", (void *)"HK_NETTV_STOP",
+ (void *)"HK_DFU_STOP", (void *)"HK_TELETEXT_STOP", (void *)"HK_REMOTEAPP_STOP", (void *)NULL, (void *)NULL };
+
+static int rcButtonMapping[]={
+ rc6S0Red, rc6S0Green, rc6S0Yellow, rc6S0Cyan, rc6S0Standby,
+ -1, rc6S0PreviousProgram, rc6S0MenuOn, rc6S0Options, -1,
+ -1, -1, rc6S0StepUp, -1, -1,
+ rc6S0MuteDemute, rc6S0StepLeft, rc6S0Acknowledge, rc6S0StepRight, -1,
+ rc6S0VolumeUp, -1, rc6S0StepDown, -1, rc6S0Next,
+ rc6S0VolumeDown, 1, 2, 3, rc6S0Previous,
+ -1, 4, 5, 6, -1,
+ -1, 7, 8, 9, -1,
+ -1, rc6S0TvTextSubtitle, 0, rc6S0NextSource, -1,
+ -1, rc6S0EpgGuide, rc6S0AmbLightOnOffDim, rc6S0Display, -1,
+ HK_HOMESCREEN_START, HK_WATCHTV_START, HK_CB_USB_START, HK_CB_DLNA_START, HK_NETTV_START,
+ HK_DFU_START, HK_TELETEXT_START, HK_REMOTEAPP_START, -1, -1,
+ HK_HOMESCREEN_STOP, HK_WATCHTV_STOP, HK_CB_USB_STOP, HK_CB_DLNA_STOP, HK_NETTV_STOP,
+ HK_DFU_STOP, HK_TELETEXT_STOP, HK_REMOTEAPP_STOP, -1, -1 };
+
+
+
+/***************************************
+* Local procedures
+***************************************/
+static int IsNumStr(const char * pStr)
+{
+ if (*pStr == '-' || *pStr == '+') pStr++;
+ return (*pStr >= '0' && *pStr <= '9');
+}
+
+static int ReadDimsArg(const char * pArg, int * width, int * height)
+{
+ int nWidth=1;
+ int nHeight=1;
+
+ if (IsNumStr(pArg)) nWidth = strtol(pArg, (char **) &pArg, 10); else return 0;
+ if ('x' == *pArg++ && IsNumStr(pArg)) nHeight = strtol(pArg, (char **) &pArg, 10); else return 0;
+ if (*pArg != '\0') return 0;
+ if (nWidth <= 0 || nHeight <= 0) return 0;
+ *width = nWidth;
+ *height = nHeight;
+ return 1;
+}
+
+static int ReadNumberArg(const char * pArg, int * value)
+{
+ int val=0;
+
+ if (IsNumStr(pArg)) val = strtol(pArg, (char **) &pArg, 10); else return 0;
+ *value = val;
+ return 1;
+}
+
+
+static int
+LookupCommand( const char *name )
+{
+ int i;
+
+ for (i=0; i<D_ARRAY_SIZE(rcButtonMatrix); i++) {
+ if (!rcButtonMatrix[i])
+ continue;
+
+ if (!strncasecmp( name, rcButtonMatrix[i], strlen(name) ))
+ return rcButtonMapping[i];
+ }
+
+ return 0;
+}
+
+
+static void
+CleanLine( char *line )
+{
+ while ( (*line != '\r') && (*line != '\n') && (*line != ';'))
+ {
+ line++;
+ }
+ *line = 0;
+}
+
+
+static void
+ExecuteCommand(int command)
+{
+ switch(command)
+ {
+ case HK_HOMESCREEN_START:
+ jslibrc_RequestActivityEx( amLib_ACT_HomeScreen, amLib_ACT_Start, 0 );
+ break;
+ case HK_HOMESCREEN_STOP:
+ jslibrc_RequestActivityEx( amLib_ACT_HomeScreen, amLib_ACT_Stop, 0 );
+ break;
+ case HK_WATCHTV_START:
+ jslibrc_RequestActivityEx( amLib_ACT_WatchTV, amLib_ACT_Start, 0 );
+ break;
+ case HK_WATCHTV_STOP:
+ jslibrc_RequestActivityEx( amLib_ACT_WatchTV, amLib_ACT_Stop, 0 );
+ break;
+ case HK_CB_USB_START:
+ jslibrc_RequestActivityEx( amLib_ACT_BrowseUSB, amLib_ACT_Start, 0 );
+ break;
+ case HK_CB_USB_STOP:
+ jslibrc_RequestActivityEx( amLib_ACT_BrowseUSB, amLib_ACT_Stop, 0 );
+ break;
+ case HK_CB_DLNA_START:
+ jslibrc_RequestActivityEx( amLib_ACT_BrowseDLNA, amLib_ACT_Start, 0 );
+ break;
+ case HK_CB_DLNA_STOP:
+ jslibrc_RequestActivityEx( amLib_ACT_BrowseDLNA, amLib_ACT_Stop, 0 );
+ break;
+ case HK_NETTV_START:
+ jslibrc_RequestActivityEx( amLib_ACT_NetTV, amLib_ACT_Start, 0 );
+ break;
+ case HK_NETTV_STOP:
+ jslibrc_RequestActivityEx( amLib_ACT_NetTV, amLib_ACT_Stop, 0 );
+ break;
+ case HK_DFU_START:
+ jslibrc_RequestActivityEx( amLib_ACT_Dfu, amLib_ACT_Start, 0 );
+ break;
+ case HK_DFU_STOP:
+ jslibrc_RequestActivityEx( amLib_ACT_Dfu, amLib_ACT_Stop, 0 );
+ break;
+ case HK_TELETEXT_START:
+ jslibrc_RequestActivityEx( amLib_ACT_Teletext, amLib_ACT_Start, 0 );
+ break;
+ case HK_TELETEXT_STOP:
+ jslibrc_RequestActivityEx( amLib_ACT_Teletext, amLib_ACT_Stop, 0 );
+ break;
+ case HK_REMOTEAPP_START:
+ jslibrc_RequestActivityEx( amLib_ACT_RemoteApp, amLib_ACT_Start, 0 );
+ break;
+ case HK_REMOTEAPP_STOP:
+ jslibrc_RequestActivityEx( amLib_ACT_RemoteApp, amLib_ACT_Stop, 0 );
+ break;
+ default:
+ jslibrc_KeyDownEx( keySourceRc6, 0, command );
+ jslibrc_KeyUpEx( keySourceRc6, 0, command );
+ break;
+ }
+}
+
+
+/***************************************
+* Main procedure
+***************************************/
+int
+main (int argc, char *argv[])
+{
+ int i,k;
+ int bParseOK = 1;
+ char filename[FILENAME_LENGTH]={'\0'};
+ char line[LINE_LENGTH+1];
+ int timeout;
+ FILE *f;
+
+ jslibrc_Init( &argc, &argv );
+
+ // Print ussage
+ printf("\n\n");
+ printf("Usage: remco [--keycommandfile <file>] keycommand keycommand ...\n\n");
+ printf("Supported key commands:\n");
+ k=0;
+ for (i=0; i<D_ARRAY_SIZE(rcButtonMatrix); i++) {
+ if (!rcButtonMatrix[i])
+ continue;
+ printf("'%s' ", rcButtonMatrix[i]);
+ k++;
+ if ( !(k%4) ) printf("\n");
+ }
+ printf("\n\n");
+
+
+ // Parse arguments
+ for (i = 1; i < argc && bParseOK; i++)
+ {
+ const char * pArg = argv[i];
+ if ('-' == *pArg++ && '-' == *pArg++)
+ {
+ if ((0 == strcmp(pArg, "keycommandfile")) && (i + 1 < argc))
+ {
+ strncpy (filename, argv[i+1], sizeof(filename) );
+ printf("Reading commands from %s\n\n", filename);
+ }
+ else
+ {
+ bParseOK = 0;
+ }
+ }
+ }
+ if (!bParseOK) exit;
+
+
+ if (filename[0])
+ {
+ // Use file as input
+ if (f = fopen(filename,"r"))
+ {
+ while (fgets(line, LINE_LENGTH, f))
+ {
+ if ( (line[0] != 0) && (line[0] != ';') && (line[0] != '#') )
+ {
+ CleanLine(line);
+ printf("%s\n", line);
+ if (!strncmp(line, "sleep", 5))
+ {
+ sscanf(&line[5], "%d", &timeout);
+ sleep(timeout);
+ }
+ else
+ {
+ int command = LookupCommand(line);
+ if (command == -1)
+ {
+ printf( "Unknown key command '%s'\n", line );
+ continue;
+ }
+ ExecuteCommand(command);
+ }
+ }
+ }
+ fclose(f);
+ }
+ else
+ {
+ printf( "File not found!\n");
+ }
+ }
+ else
+ {
+ // Use ARGVs
+ for (i=1; i<argc; i++)
+ {
+ int command = LookupCommand( argv[i] );
+ if (command == -1)
+ {
+ printf( "Unknown key command '%s'!\n", argv[i] );
+ continue;
+ }
+ ExecuteCommand(command);
+ }
+ }
+
+ jslibrc_Exit();
+
+ return 0;
+}
+
diff --git a/LICENSE.TXT b/LICENSE.TXT
new file mode 100755
index 0000000..928b25b
--- /dev/null
+++ b/LICENSE.TXT
@@ -0,0 +1,511 @@
+Individual files may be released under different licenses, check the headers of the file to know which license is applying.
+
+For some files, the LGPL license applies, full license text of which can be found below.
+
+_____________________________________________________
+
+
+ GNU LESSER GENERAL PUBLIC LICENSE
+ Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+ 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the Lesser GPL. It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+ This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it. You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations below.
+
+ When we speak of free software, we are referring to freedom of use,
+not price. Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+ To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights. These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+ For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you. You must make sure that they, too, receive or can get the source
+code. If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it. And you must show them these terms so they know their rights.
+
+ We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+ To protect each distributor, we want to make it very clear that
+there is no warranty for the free library. Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+
+ Finally, software patents pose a constant threat to the existence of
+any free program. We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder. Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+ Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License. This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License. We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+ When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library. The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom. The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+ We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License. It also provides other free software developers Less
+of an advantage over competing non-free programs. These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries. However, the Lesser license provides advantages in certain
+special circumstances.
+
+ For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it becomes
+a de-facto standard. To achieve this, non-free programs must be
+allowed to use the library. A more frequent case is that a free
+library does the same job as widely used non-free libraries. In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+ In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software. For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+ Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+ The precise terms and conditions for copying, distribution and
+modification follow. Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library". The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+
+ GNU LESSER GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+ A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+ The "Library", below, refers to any such software library or work
+which has been distributed under these terms. A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language. (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+ "Source code" for a work means the preferred form of the work for
+making modifications to it. For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control compilation
+and installation of the library.
+
+ Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it). Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+
+ 1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+ You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+ 2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) The modified work must itself be a software library.
+
+ b) You must cause the files modified to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ c) You must cause the whole of the work to be licensed at no
+ charge to all third parties under the terms of this License.
+
+ d) If a facility in the modified Library refers to a function or a
+ table of data to be supplied by an application program that uses
+ the facility, other than as an argument passed when the facility
+ is invoked, then you must make a good faith effort to ensure that,
+ in the event an application does not supply such function or
+ table, the facility still operates, and performs whatever part of
+ its purpose remains meaningful.
+
+ (For example, a function in a library to compute square roots has
+ a purpose that is entirely well-defined independent of the
+ application. Therefore, Subsection 2d requires that any
+ application-supplied function or table used by this function must
+ be optional: if the application does not supply it, the square
+ root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library. To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License. (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.) Do not make any other change in
+these notices.
+
+ Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+ This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+ 4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+ If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library". Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+ However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library". The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+ When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library. The
+threshold for this to be true is not precisely defined by law.
+
+ If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work. (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+ Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+
+ 6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+ You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License. You must supply a copy of this License. If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License. Also, you must do one
+of these things:
+
+ a) Accompany the work with the complete corresponding
+ machine-readable source code for the Library including whatever
+ changes were used in the work (which must be distributed under
+ Sections 1 and 2 above); and, if the work is an executable linked
+ with the Library, with the complete machine-readable "work that
+ uses the Library", as object code and/or source code, so that the
+ user can modify the Library and then relink to produce a modified
+ executable containing the modified Library. (It is understood
+ that the user who changes the contents of definitions files in the
+ Library will not necessarily be able to recompile the application
+ to use the modified definitions.)
+
+ b) Use a suitable shared library mechanism for linking with the
+ Library. A suitable mechanism is one that (1) uses at run time a
+ copy of the library already present on the user's computer system,
+ rather than copying library functions into the executable, and (2)
+ will operate properly with a modified version of the library, if
+ the user installs one, as long as the modified version is
+ interface-compatible with the version that the work was made with.
+
+ c) Accompany the work with a written offer, valid for at
+ least three years, to give the same user the materials
+ specified in Subsection 6a, above, for a charge no more
+ than the cost of performing this distribution.
+
+ d) If distribution of the work is made by offering access to copy
+ from a designated place, offer equivalent access to copy the above
+ specified materials from the same place.
+
+ e) Verify that the user has already received a copy of these
+ materials or that you have already sent this user a copy.
+
+ For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it. However, as a special exception,
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+ It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system. Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+
+ 7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+ a) Accompany the combined library with a copy of the same work
+ based on the Library, uncombined with any other library
+ facilities. This must be distributed under the terms of the
+ Sections above.
+
+ b) Give prominent notice with the combined library of the fact
+ that part of it is a work based on the Library, and explaining
+ where to find the accompanying uncombined form of the same work.
+
+ 8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License. Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License. However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+ 9. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Library or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+ 10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties with
+this License.
+
+ 11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all. For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply,
+and the section as a whole is intended to apply in other circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License may add
+an explicit geographical distribution limitation excluding those countries,
+so that distribution is permitted only in or among countries not thus
+excluded. In such case, this License incorporates the limitation as if
+written in the body of this License.
+
+ 13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation. If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+
+ 14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission. For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this. Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+ NO WARRANTY
+
+ 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Libraries
+
+ If you develop a new library, and you want it to be of the greatest
+possible use to the public, we recommend making it free software that
+everyone can redistribute and change. You can do so by permitting
+redistribution under these terms (or, alternatively, under the terms of the
+ordinary General Public License).
+
+ To apply these terms, attach the following notices to the library. It is
+safest to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least the
+"copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the library's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+Also add information on how to contact you by electronic and paper mail.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the library, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the
+ library `Frob' (a library for tweaking knobs) written by James Random Hacker.
+
+ <signature of Ty Coon>, 1 April 1990
+ Ty Coon, President of Vice
+
+That's all there is to it!
+
+
diff --git a/README.TXT b/README.TXT
new file mode 100755
index 0000000..dd50d2e
--- /dev/null
+++ b/README.TXT
@@ -0,0 +1,95 @@
+This package includes the jointSPACE remote application SDK in source format.
+It allows you to port the SDK to new architectures or simply recompile it for the supported ones.
+
+Architecture currently supported are:
+- linux (X86 or other platforms)
+- cygwin (X86)
+- macos (Apple Mac)
+- dslinux (NDS)
+- Apple iOS (iPhone, iPod, iPad...)
+- Android
+
+The SDK includes all what you need to create native TV Remote Applications on remote devices:
+header and librarie files.
+
+
+Building
+--------
+Compile the SDK libraries (libdirectfb.o...):
+ make -f makefile.voodoo.<architecture>
+
+For Android and iPhone, don't do the above but use the dedicated build script instead:
+e.g. for Android :
+1) set the variable NDK_PATH inside "build_for_android.sh" to the absolute location where your android NDK is installed.
+ You need to install "android-ndk-r4-windows-crystax-4" to compile (from SDK V1.3.1 onward)
+2) Insure that the line containing -DVOODOO_PLAY_FAKE=1 is uncommented.
+ Some phones are unable to receive UDP message which makes the jointSPACE
+ discovery mechanism not working at all. This patch allows at least to detect
+ directfb capable device (e.g. jointSPACE TV) but won't allow to identify
+ the device as such (friendly name). We hope that can be fixed soon.
+ Some Android devices don't have that issue and don't need that change (best is to try with and without)
+3)./build_for_android.sh
+
+
+
+Create the "DirectFB_Voodoo" package containing the SDK libraries and header files.
+ make -f makefile.voodoo.<architecture> package
+
+
+
+
+Typical issues:
+- $CC or $LD not reachable: adapt your $PATH
+- pthread development files not installed
+- incompatible shell: build-package.sh rely on bash being installed as /bin/sh.
+- wrong permissions: chmod a+rwx build-package.sh.
+- problems to generate DirectFB_Voodoo.tar.gz: this step might fail if your system does not support tar ball generation.
+
+
+Installing
+----------
+Copy "DirectFB_Voodoo" (generated directory) where your remote application samples will be developped (typically you will
+create a subdirectory next to "DirectFB_Voodoo" for each sample you will create)
+
+For Android, refer to this directory from the SDK jni makefile (Android.mk)
+
+
+History:
+-------
+V1.3.1_beta5: 2012-12-21
+Changes:
+ - Added support for few RC keys in jslibrc for 2k13 products
+
+V1.3.1_beta4: 2012-11-6
+Changes:
+ - Fixed voodoo player problem: "Once the app goes into background, tv disconnects".
+
+ V1.3.1_beta3: 2012-05-20
+Changes:
+ - fixed jslibrc HID events and 2k12 products
+ - Minor android fixes
+
+V1.3.1_beta2: 2011-10-31
+Changes:
+ - Extended jslibrc with HID events support and 2k11 RC API (xxxEx)
+ - Minor fixes
+ - note: requires min gcc 4.3 (macos, cygwin...)
+
+V1.3.1_beta1: 2011-08-31
+Changes:
+ - jslibrc extended to 2k11 functionalities
+ - Adapted RC6 tables for 2k11H2 sets
+
+V1.3.1: 2011-06-20
+Creation: (New baseline for 2k11R3 supporting compression and new features)
+ - Compressed and raw connection support (redesigned)
+ - fix HW cursor and few other problems
+
+
+
+
+
+
+
+
+
diff --git a/Source/++DFB/++dfb-config b/Source/++DFB/++dfb-config
new file mode 100755
index 0000000..99035d4
--- /dev/null
+++ b/Source/++DFB/++dfb-config
@@ -0,0 +1,95 @@
+#!/bin/sh
+
+prefix=/usr/local
+exec_prefix=${prefix}
+exec_prefix_set=no
+
+usage()
+{
+ cat <<EOF
+Usage: ++dfb-config [OPTIONS] [LIBRARIES]
+Options:
+ [--prefix[=DIR]]
+ [--exec-prefix[=DIR]]
+ [--version]
+ [--libs]
+ [--cflags]
+Libraries:
+ ++dfb
+EOF
+ exit $1
+}
+
+if test $# -eq 0; then
+ usage 1 1>&2
+fi
+
+lib_dfbpp=yes
+
+while test $# -gt 0; do
+ case "$1" in
+ -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
+ *) optarg= ;;
+ esac
+
+ case $1 in
+ --prefix=*)
+ prefix=$optarg
+ if test $exec_prefix_set = no ; then
+ exec_prefix=$optarg
+ fi
+ ;;
+ --prefix)
+ echo_prefix=yes
+ ;;
+ --exec-prefix=*)
+ exec_prefix=$optarg
+ exec_prefix_set=yes
+ ;;
+ --exec-prefix)
+ echo_exec_prefix=yes
+ ;;
+ --version)
+ echo 1.4.2
+ ;;
+ --cflags)
+ echo_cflags=yes
+ ;;
+ --libs)
+ echo_libs=yes
+ ;;
+ ++dfb)
+ lib_dfbpp=yes
+ ;;
+ *)
+ usage 1 1>&2
+ ;;
+ esac
+ shift
+done
+
+if test "$echo_prefix" = "yes"; then
+ echo $prefix
+fi
+
+if test "$echo_exec_prefix" = "yes"; then
+ echo $exec_prefix
+fi
+
+if test "$echo_cflags" = "yes"; then
+ if test ${prefix}/include != /usr/include ; then
+ includes="-I${prefix}/include/++dfb -D_GNU_SOURCE -finstrument-functions -D_REENTRANT -I/usr/local/include/directfb-internal -I/usr/local/include/directfb "
+ fi
+ echo $includes
+fi
+
+if test "$echo_libs" = "yes"; then
+ libs=-L${exec_prefix}/lib
+
+ if test "$lib_dfbpp" = "yes"; then
+ libs="$libs -l++dfb -L/usr/local/lib -ldirectfb -lfusion -ldirect -lpthread "
+ fi
+
+ echo $libs
+fi
+
diff --git a/Source/++DFB/++dfb-config.in b/Source/++DFB/++dfb-config.in
new file mode 100755
index 0000000..61e9723
--- /dev/null
+++ b/Source/++DFB/++dfb-config.in
@@ -0,0 +1,95 @@
+#!/bin/sh
+
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+exec_prefix_set=no
+
+usage()
+{
+ cat <<EOF
+Usage: ++dfb-config [OPTIONS] [LIBRARIES]
+Options:
+ [--prefix[=DIR]]
+ [--exec-prefix[=DIR]]
+ [--version]
+ [--libs]
+ [--cflags]
+Libraries:
+ ++dfb
+EOF
+ exit $1
+}
+
+if test $# -eq 0; then
+ usage 1 1>&2
+fi
+
+lib_dfbpp=yes
+
+while test $# -gt 0; do
+ case "$1" in
+ -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
+ *) optarg= ;;
+ esac
+
+ case $1 in
+ --prefix=*)
+ prefix=$optarg
+ if test $exec_prefix_set = no ; then
+ exec_prefix=$optarg
+ fi
+ ;;
+ --prefix)
+ echo_prefix=yes
+ ;;
+ --exec-prefix=*)
+ exec_prefix=$optarg
+ exec_prefix_set=yes
+ ;;
+ --exec-prefix)
+ echo_exec_prefix=yes
+ ;;
+ --version)
+ echo @DIRECTFB_MAJOR_VERSION@.@DIRECTFB_MINOR_VERSION@.@DIRECTFB_MICRO_VERSION@
+ ;;
+ --cflags)
+ echo_cflags=yes
+ ;;
+ --libs)
+ echo_libs=yes
+ ;;
+ ++dfb)
+ lib_dfbpp=yes
+ ;;
+ *)
+ usage 1 1>&2
+ ;;
+ esac
+ shift
+done
+
+if test "$echo_prefix" = "yes"; then
+ echo $prefix
+fi
+
+if test "$echo_exec_prefix" = "yes"; then
+ echo $exec_prefix
+fi
+
+if test "$echo_cflags" = "yes"; then
+ if test @includedir@ != /usr/include ; then
+ includes="-I@includedir@/++dfb @DIRECTFB_CFLAGS@"
+ fi
+ echo $includes
+fi
+
+if test "$echo_libs" = "yes"; then
+ libs=-L@libdir@
+
+ if test "$lib_dfbpp" = "yes"; then
+ libs="$libs -l++dfb @DIRECTFB_LIBS@"
+ fi
+
+ echo $libs
+fi
+
diff --git a/Source/++DFB/++dfb.pc b/Source/++DFB/++dfb.pc
new file mode 100755
index 0000000..d02c381
--- /dev/null
+++ b/Source/++DFB/++dfb.pc
@@ -0,0 +1,11 @@
+prefix=/usr/local
+exec_prefix=${prefix}
+libdir=${exec_prefix}/lib
+includedir=${prefix}/include
+
+Name: ++DFB
+Description: C++ binding for DirectFB, a graphics and windowing library on Linux framebuffer
+Requires: directfb
+Version: 1.4.2
+Libs: -L${libdir} -l++dfb
+Cflags: -I${includedir}/++dfb
diff --git a/Source/++DFB/++dfb.pc.in b/Source/++DFB/++dfb.pc.in
new file mode 100755
index 0000000..74d4eb5
--- /dev/null
+++ b/Source/++DFB/++dfb.pc.in
@@ -0,0 +1,11 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: ++DFB
+Description: C++ binding for DirectFB, a graphics and windowing library on Linux framebuffer
+Requires: directfb
+Version: @DIRECTFB_VERSION@
+Libs: -L${libdir} -l++dfb
+Cflags: -I${includedir}/++dfb
diff --git a/Source/++DFB/++dfb.spec b/Source/++DFB/++dfb.spec
new file mode 100755
index 0000000..4ffd78b
--- /dev/null
+++ b/Source/++DFB/++dfb.spec
@@ -0,0 +1,71 @@
+%define name ++dfb
+%define version 1.4.2
+%define oname ++DFB
+%define libname lib%name
+%define _unpackaged_files_terminate_build 0
+
+Summary: Hardware graphics acceleration library
+Name: %name
+Version: %version
+Release: 1
+License: LGPL
+Group: System/Libraries
+Source0: %{oname}-%{version}.tar.gz
+URL: http://www.directfb.org/
+BuildRequires: libdirectfb-devel >= 1.4.2
+BuildRoot: %{_tmppath}/%{name}-%{version}
+
+%description
+%oname - C++ API for DirectFB
+
+%package -n %libname
+Summary: Shared library part of %oname
+Group: System/Libraries
+Requires: libdirectfb >= 1.4.2
+
+%description -n %libname
+%oname - C++ API for DirectFB
+
+%package -n %libname-devel
+Group: Development/C++
+Summary: Header files for compiling %oname applications
+Requires: %{libname} = %{version}-%release
+Provides: lib%name-devel = %version-%release
+
+%description -n %libname-devel
+%oname header files needed for building applications based on %oname.
+
+%prep
+%setup -q -n %oname-%version
+
+%build
+%configure
+
+make
+
+%install
+rm -rf $RPM_BUILD_ROOT
+make DESTDIR=%{buildroot} install
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post -n %libname -p /sbin/ldconfig
+%postun -n %libname -p /sbin/ldconfig
+
+%files -n %libname
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/lib*.so.*
+%{_libdir}/lib++dfb-*
+
+%files -n %libname-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/*++dfb-config
+%{_includedir}/++dfb
+%{_libdir}/pkgconfig/*
+%{_libdir}/*.la
+%{_libdir}/*.so
+
+%changelog
+* Mon Jan 08 2007 Mark Adams <mark147m@gmail.com> 0.9.26
+- initial package
diff --git a/Source/++DFB/++dfb.spec.in b/Source/++DFB/++dfb.spec.in
new file mode 100755
index 0000000..6d8db0d
--- /dev/null
+++ b/Source/++DFB/++dfb.spec.in
@@ -0,0 +1,71 @@
+%define name ++dfb
+%define version @VERSION@
+%define oname ++DFB
+%define libname lib%name
+%define _unpackaged_files_terminate_build 0
+
+Summary: Hardware graphics acceleration library
+Name: %name
+Version: %version
+Release: 1
+License: LGPL
+Group: System/Libraries
+Source0: %{oname}-%{version}.tar.gz
+URL: http://www.directfb.org/
+BuildRequires: libdirectfb-devel >= @VERSION@
+BuildRoot: %{_tmppath}/%{name}-%{version}
+
+%description
+%oname - C++ API for DirectFB
+
+%package -n %libname
+Summary: Shared library part of %oname
+Group: System/Libraries
+Requires: libdirectfb >= @VERSION@
+
+%description -n %libname
+%oname - C++ API for DirectFB
+
+%package -n %libname-devel
+Group: Development/C++
+Summary: Header files for compiling %oname applications
+Requires: %{libname} = %{version}-%release
+Provides: lib%name-devel = %version-%release
+
+%description -n %libname-devel
+%oname header files needed for building applications based on %oname.
+
+%prep
+%setup -q -n %oname-%version
+
+%build
+%configure
+
+make
+
+%install
+rm -rf $RPM_BUILD_ROOT
+make DESTDIR=%{buildroot} install
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post -n %libname -p /sbin/ldconfig
+%postun -n %libname -p /sbin/ldconfig
+
+%files -n %libname
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/lib*.so.*
+%{_libdir}/lib++dfb-*
+
+%files -n %libname-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/*++dfb-config
+%{_includedir}/++dfb
+%{_libdir}/pkgconfig/*
+%{_libdir}/*.la
+%{_libdir}/*.so
+
+%changelog
+* Mon Jan 08 2007 Mark Adams <mark147m@gmail.com> 0.9.26
+- initial package
diff --git a/Source/++DFB/++dfb/++dfb_internal.h b/Source/++DFB/++dfb/++dfb_internal.h
new file mode 100755
index 0000000..eff719e
--- /dev/null
+++ b/Source/++DFB/++dfb/++dfb_internal.h
@@ -0,0 +1,38 @@
+/*
+ (c) Copyright 2000-2002 convergence integrated media GmbH.
+ All rights reserved.
+
+ Written by Denis Oliver Kropp <dok@convergence.de>,
+ Andreas Hundt <andi@convergence.de> and
+ Sven Neumann <sven@convergence.de>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+*/
+
+#ifndef DFBPP_INTERNAL_H
+#define DFBPP_INTERNAL_H
+
+#define DFBCHECK(x...) \
+ do { \
+ DFBResult ret = (x); \
+ \
+ if (ret) \
+ throw new DFBException (__PRETTY_FUNCTION__, ret); \
+ } while (0);
+
+
+#endif
+
diff --git a/Source/++DFB/++dfb/MULTIO b/Source/++DFB/++dfb/MULTIO
new file mode 100755
index 0000000..4b4305e
--- /dev/null
+++ b/Source/++DFB/++dfb/MULTIO
@@ -0,0 +1 @@
+arm_v5t_le-g++ *.cpp -I../../++DFB/include -I /home/dok/Telio/multio/client/build/local/sysroot/armv5tl-montavista-linuxeabi/usr/include/directfb -I /home/dok/Telio/multio/client/Kernel/linux-fusion/linux/include -DDATADIR=\"/usr/share/DFBInspector\" -L/home/dok/Telio/multio/client/build/local/sysroot/armv5tl-montavista-linuxeabi/usr/lib -ldirectfb -lfusion -ldirect -lpng -lfreetype -ljpeg -lz -lpthread -ldl -shared -o lib++dfb.so
diff --git a/Source/++DFB/++dfb/Makefile b/Source/++DFB/++dfb/Makefile
new file mode 100755
index 0000000..7a01818
--- /dev/null
+++ b/Source/++DFB/++dfb/Makefile
@@ -0,0 +1,529 @@
+# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# ++dfb/Makefile. Generated from Makefile.in by configure.
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+
+
+
+pkgdatadir = $(datadir)/++DFB
+pkglibdir = $(libdir)/++DFB
+pkgincludedir = $(includedir)/++DFB
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = x86_64-unknown-linux-gnu
+host_triplet = x86_64-unknown-linux-gnu
+subdir = ++dfb
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.in
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(libdir)"
+libLTLIBRARIES_INSTALL = $(INSTALL)
+LTLIBRARIES = $(lib_LTLIBRARIES)
+lib__dfb_la_DEPENDENCIES =
+am_lib__dfb_la_OBJECTS = ppdfb.lo idirectfb.lo idirectfbdatabuffer.lo \
+ idirectfbdisplaylayer.lo idirectfbeventbuffer.lo \
+ idirectfbfont.lo idirectfbimageprovider.lo \
+ idirectfbinputdevice.lo idirectfbpalette.lo idirectfbscreen.lo \
+ idirectfbsurface.lo idirectfbvideoprovider.lo \
+ idirectfbwindow.lo
+lib__dfb_la_OBJECTS = $(am_lib__dfb_la_OBJECTS)
+lib__dfb_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
+ $(CXXFLAGS) $(lib__dfb_la_LDFLAGS) $(LDFLAGS) -o $@
+DEFAULT_INCLUDES = -I. -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
+LTCXXCOMPILE = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
+CXXLD = $(CXX)
+CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
+ $(LDFLAGS) -o $@
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
+ $(LDFLAGS) -o $@
+SOURCES = $(lib__dfb_la_SOURCES)
+DIST_SOURCES = $(lib__dfb_la_SOURCES)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = ${SHELL} /home/dok/cvs/directfb/++DFB/missing --run aclocal-1.10
+AMTAR = ${SHELL} /home/dok/cvs/directfb/++DFB/missing --run tar
+AR = ar
+AUTOCONF = ${SHELL} /home/dok/cvs/directfb/++DFB/missing --run autoconf
+AUTOHEADER = ${SHELL} /home/dok/cvs/directfb/++DFB/missing --run autoheader
+AUTOMAKE = ${SHELL} /home/dok/cvs/directfb/++DFB/missing --run automake-1.10
+AWK = gawk
+CC = gcc
+CCDEPMODE = depmode=gcc3
+CFLAGS = -g -O2
+CPP = gcc -E
+CPPFLAGS =
+CXX = g++
+CXXCPP = g++ -E
+CXXDEPMODE = depmode=gcc3
+CXXFLAGS = -g -O2
+CYGPATH_W = echo
+DEFS = -DHAVE_CONFIG_H
+DEPDIR = .deps
+DIRECTFB_BINARY_AGE = 0
+DIRECTFB_CFLAGS = -D_GNU_SOURCE -finstrument-functions -D_REENTRANT -I/usr/local/include/directfb-internal -I/usr/local/include/directfb
+DIRECTFB_INTERFACE_AGE = 0
+DIRECTFB_LIBS = -L/usr/local/lib -ldirectfb -lfusion -ldirect -lpthread
+DIRECTFB_MAJOR_VERSION = 1
+DIRECTFB_MICRO_VERSION = 2
+DIRECTFB_MINOR_VERSION = 4
+DIRECTFB_VERSION = 1.4.2
+DSYMUTIL =
+ECHO = echo
+ECHO_C =
+ECHO_N = -n
+ECHO_T =
+EGREP = /bin/grep -E
+EXEEXT =
+F77 = gfortran
+FFLAGS = -g -O2
+GREP = /bin/grep
+INSTALL = /usr/bin/install -c
+INSTALL_DATA = ${INSTALL} -m 644
+INSTALL_PROGRAM = ${INSTALL}
+INSTALL_SCRIPT = ${INSTALL}
+INSTALL_STRIP_PROGRAM = $(install_sh) -c -s
+LDFLAGS =
+LIBOBJS =
+LIBS =
+LIBTOOL = $(SHELL) $(top_builddir)/libtool
+LN_S = ln -s
+LTLIBOBJS =
+LT_AGE = 0
+LT_CURRENT = 2
+LT_RELEASE = 1.4
+LT_REVISION = 0
+MAINT = #
+MAKEINFO = ${SHELL} /home/dok/cvs/directfb/++DFB/missing --run makeinfo
+MKDIR_P = /bin/mkdir -p
+NMEDIT =
+OBJEXT = o
+PACKAGE = ++DFB
+PACKAGE_BUGREPORT =
+PACKAGE_NAME =
+PACKAGE_STRING =
+PACKAGE_TARNAME =
+PACKAGE_VERSION =
+PATH_SEPARATOR = :
+PKG_CONFIG = /usr/bin/pkg-config
+RANLIB = ranlib
+SED = /bin/sed
+SET_MAKE =
+SHELL = /bin/sh
+STRIP = strip
+VERSION = 1.4.2
+abs_builddir = /home/dok/cvs/directfb/++DFB/++dfb
+abs_srcdir = /home/dok/cvs/directfb/++DFB/++dfb
+abs_top_builddir = /home/dok/cvs/directfb/++DFB
+abs_top_srcdir = /home/dok/cvs/directfb/++DFB
+ac_ct_CC = gcc
+ac_ct_CXX = g++
+ac_ct_F77 = gfortran
+am__include = include
+am__leading_dot = .
+am__quote =
+am__tar = ${AMTAR} chof - "$$tardir"
+am__untar = ${AMTAR} xf -
+bindir = ${exec_prefix}/bin
+build = x86_64-unknown-linux-gnu
+build_alias =
+build_cpu = x86_64
+build_os = linux-gnu
+build_vendor = unknown
+builddir = .
+datadir = ${datarootdir}
+datarootdir = ${prefix}/share
+docdir = ${datarootdir}/doc/${PACKAGE}
+dvidir = ${docdir}
+exec_prefix = ${prefix}
+host = x86_64-unknown-linux-gnu
+host_alias =
+host_cpu = x86_64
+host_os = linux-gnu
+host_vendor = unknown
+htmldir = ${docdir}
+includedir = ${prefix}/include
+infodir = ${datarootdir}/info
+install_sh = $(SHELL) /home/dok/cvs/directfb/++DFB/install-sh
+libdir = ${exec_prefix}/lib
+libexecdir = ${exec_prefix}/libexec
+localedir = ${datarootdir}/locale
+localstatedir = ${prefix}/var
+mandir = ${datarootdir}/man
+mkdir_p = /bin/mkdir -p
+oldincludedir = /usr/include
+pdfdir = ${docdir}
+prefix = /usr/local
+program_transform_name = s,x,x,
+psdir = ${docdir}
+sbindir = ${exec_prefix}/sbin
+sharedstatedir = ${prefix}/com
+srcdir = .
+sysconfdir = ${prefix}/etc
+target_alias =
+top_builddir = ..
+top_srcdir = ..
+INCLUDES = \
+ -I$(top_srcdir)/include \
+ -D_GNU_SOURCE -finstrument-functions -D_REENTRANT -I/usr/local/include/directfb-internal -I/usr/local/include/directfb -Wall
+
+lib_LTLIBRARIES = lib++dfb.la
+lib__dfb_la_SOURCES = \
+ ppdfb.cpp \
+ ++dfb_internal.h \
+ idirectfb.cpp \
+ idirectfbdatabuffer.cpp \
+ idirectfbdisplaylayer.cpp \
+ idirectfbeventbuffer.cpp \
+ idirectfbfont.cpp \
+ idirectfbimageprovider.cpp \
+ idirectfbinputdevice.cpp \
+ idirectfbpalette.cpp \
+ idirectfbscreen.cpp \
+ idirectfbsurface.cpp \
+ idirectfbvideoprovider.cpp \
+ idirectfbwindow.cpp
+
+lib__dfb_la_LIBADD = -L/usr/local/lib -ldirectfb -lfusion -ldirect -lpthread
+lib__dfb_la_LDFLAGS = \
+ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
+ -release $(LT_RELEASE)
+
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .cpp .lo .o .obj
+$(srcdir)/Makefile.in: # $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu ++dfb/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --gnu ++dfb/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: # $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): # $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+install-libLTLIBRARIES: $(lib_LTLIBRARIES)
+ @$(NORMAL_INSTALL)
+ test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
+ @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
+ if test -f $$p; then \
+ f=$(am__strip_dir) \
+ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
+ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
+ else :; fi; \
+ done
+
+uninstall-libLTLIBRARIES:
+ @$(NORMAL_UNINSTALL)
+ @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
+ p=$(am__strip_dir) \
+ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$p'"; \
+ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$p"; \
+ done
+
+clean-libLTLIBRARIES:
+ -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
+ @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
+ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
+ test "$$dir" != "$$p" || dir=.; \
+ echo "rm -f \"$${dir}/so_locations\""; \
+ rm -f "$${dir}/so_locations"; \
+ done
+lib++dfb.la: $(lib__dfb_la_OBJECTS) $(lib__dfb_la_DEPENDENCIES)
+ $(lib__dfb_la_LINK) -rpath $(libdir) $(lib__dfb_la_OBJECTS) $(lib__dfb_la_LIBADD) $(LIBS)
+
+mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
+
+distclean-compile:
+ -rm -f *.tab.c
+
+include ./$(DEPDIR)/idirectfb.Plo
+include ./$(DEPDIR)/idirectfbdatabuffer.Plo
+include ./$(DEPDIR)/idirectfbdisplaylayer.Plo
+include ./$(DEPDIR)/idirectfbeventbuffer.Plo
+include ./$(DEPDIR)/idirectfbfont.Plo
+include ./$(DEPDIR)/idirectfbimageprovider.Plo
+include ./$(DEPDIR)/idirectfbinputdevice.Plo
+include ./$(DEPDIR)/idirectfbpalette.Plo
+include ./$(DEPDIR)/idirectfbscreen.Plo
+include ./$(DEPDIR)/idirectfbsurface.Plo
+include ./$(DEPDIR)/idirectfbvideoprovider.Plo
+include ./$(DEPDIR)/idirectfbwindow.Plo
+include ./$(DEPDIR)/ppdfb.Plo
+
+.cpp.o:
+ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+# source='$<' object='$@' libtool=no \
+# DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) \
+# $(CXXCOMPILE) -c -o $@ $<
+
+.cpp.obj:
+ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+# source='$<' object='$@' libtool=no \
+# DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) \
+# $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+
+.cpp.lo:
+ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+# source='$<' object='$@' libtool=yes \
+# DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) \
+# $(LTCXXCOMPILE) -c -o $@ $<
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$tags $$unique; \
+ fi
+ctags: CTAGS
+CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$tags $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && cd $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) $$here
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ fi; \
+ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+ else \
+ test -f $(distdir)/$$file \
+ || cp -p $$d/$$file $(distdir)/$$file \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-am
+all-am: Makefile $(LTLIBRARIES)
+installdirs:
+ for dir in "$(DESTDIR)$(libdir)"; do \
+ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
+ mostlyclean-am
+
+distclean: distclean-am
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+ distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-exec-am: install-libLTLIBRARIES
+
+install-html: install-html-am
+
+install-info: install-info-am
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-ps: install-ps-am
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+ mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-libLTLIBRARIES
+
+.MAKE: install-am install-strip
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+ clean-libLTLIBRARIES clean-libtool ctags distclean \
+ distclean-compile distclean-generic distclean-libtool \
+ distclean-tags distdir dvi dvi-am html html-am info info-am \
+ install install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am \
+ install-libLTLIBRARIES install-man install-pdf install-pdf-am \
+ install-ps install-ps-am install-strip installcheck \
+ installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-compile \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ tags uninstall uninstall-am uninstall-libLTLIBRARIES
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Source/++DFB/++dfb/Makefile.am b/Source/++DFB/++dfb/Makefile.am
new file mode 100755
index 0000000..7521166
--- /dev/null
+++ b/Source/++DFB/++dfb/Makefile.am
@@ -0,0 +1,27 @@
+INCLUDES = \
+ -I$(top_srcdir)/include \
+ @DIRECTFB_CFLAGS@ -Wall
+
+lib_LTLIBRARIES = lib++dfb.la
+
+lib__dfb_la_SOURCES = \
+ ppdfb.cpp \
+ ++dfb_internal.h \
+ idirectfb.cpp \
+ idirectfbdatabuffer.cpp \
+ idirectfbdisplaylayer.cpp \
+ idirectfbeventbuffer.cpp \
+ idirectfbfont.cpp \
+ idirectfbimageprovider.cpp \
+ idirectfbinputdevice.cpp \
+ idirectfbpalette.cpp \
+ idirectfbscreen.cpp \
+ idirectfbsurface.cpp \
+ idirectfbvideoprovider.cpp \
+ idirectfbwindow.cpp
+
+lib__dfb_la_LIBADD = @DIRECTFB_LIBS@
+
+lib__dfb_la_LDFLAGS = \
+ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
+ -release $(LT_RELEASE)
diff --git a/Source/++DFB/++dfb/Makefile.in b/Source/++DFB/++dfb/Makefile.in
new file mode 100755
index 0000000..840e23e
--- /dev/null
+++ b/Source/++DFB/++dfb/Makefile.in
@@ -0,0 +1,529 @@
+# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = ++dfb
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.in
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(libdir)"
+libLTLIBRARIES_INSTALL = $(INSTALL)
+LTLIBRARIES = $(lib_LTLIBRARIES)
+lib__dfb_la_DEPENDENCIES =
+am_lib__dfb_la_OBJECTS = ppdfb.lo idirectfb.lo idirectfbdatabuffer.lo \
+ idirectfbdisplaylayer.lo idirectfbeventbuffer.lo \
+ idirectfbfont.lo idirectfbimageprovider.lo \
+ idirectfbinputdevice.lo idirectfbpalette.lo idirectfbscreen.lo \
+ idirectfbsurface.lo idirectfbvideoprovider.lo \
+ idirectfbwindow.lo
+lib__dfb_la_OBJECTS = $(am_lib__dfb_la_OBJECTS)
+lib__dfb_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
+ $(CXXFLAGS) $(lib__dfb_la_LDFLAGS) $(LDFLAGS) -o $@
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
+LTCXXCOMPILE = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
+CXXLD = $(CXX)
+CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
+ $(LDFLAGS) -o $@
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
+ $(LDFLAGS) -o $@
+SOURCES = $(lib__dfb_la_SOURCES)
+DIST_SOURCES = $(lib__dfb_la_SOURCES)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AR = @AR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DIRECTFB_BINARY_AGE = @DIRECTFB_BINARY_AGE@
+DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@
+DIRECTFB_INTERFACE_AGE = @DIRECTFB_INTERFACE_AGE@
+DIRECTFB_LIBS = @DIRECTFB_LIBS@
+DIRECTFB_MAJOR_VERSION = @DIRECTFB_MAJOR_VERSION@
+DIRECTFB_MICRO_VERSION = @DIRECTFB_MICRO_VERSION@
+DIRECTFB_MINOR_VERSION = @DIRECTFB_MINOR_VERSION@
+DIRECTFB_VERSION = @DIRECTFB_VERSION@
+DSYMUTIL = @DSYMUTIL@
+ECHO = @ECHO@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+F77 = @F77@
+FFLAGS = @FFLAGS@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+LT_AGE = @LT_AGE@
+LT_CURRENT = @LT_CURRENT@
+LT_RELEASE = @LT_RELEASE@
+LT_REVISION = @LT_REVISION@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MKDIR_P = @MKDIR_P@
+NMEDIT = @NMEDIT@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PKG_CONFIG = @PKG_CONFIG@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_F77 = @ac_ct_F77@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+INCLUDES = \
+ -I$(top_srcdir)/include \
+ @DIRECTFB_CFLAGS@ -Wall
+
+lib_LTLIBRARIES = lib++dfb.la
+lib__dfb_la_SOURCES = \
+ ppdfb.cpp \
+ ++dfb_internal.h \
+ idirectfb.cpp \
+ idirectfbdatabuffer.cpp \
+ idirectfbdisplaylayer.cpp \
+ idirectfbeventbuffer.cpp \
+ idirectfbfont.cpp \
+ idirectfbimageprovider.cpp \
+ idirectfbinputdevice.cpp \
+ idirectfbpalette.cpp \
+ idirectfbscreen.cpp \
+ idirectfbsurface.cpp \
+ idirectfbvideoprovider.cpp \
+ idirectfbwindow.cpp
+
+lib__dfb_la_LIBADD = @DIRECTFB_LIBS@
+lib__dfb_la_LDFLAGS = \
+ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
+ -release $(LT_RELEASE)
+
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .cpp .lo .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu ++dfb/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --gnu ++dfb/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+install-libLTLIBRARIES: $(lib_LTLIBRARIES)
+ @$(NORMAL_INSTALL)
+ test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
+ @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
+ if test -f $$p; then \
+ f=$(am__strip_dir) \
+ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
+ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
+ else :; fi; \
+ done
+
+uninstall-libLTLIBRARIES:
+ @$(NORMAL_UNINSTALL)
+ @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
+ p=$(am__strip_dir) \
+ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$p'"; \
+ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$p"; \
+ done
+
+clean-libLTLIBRARIES:
+ -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
+ @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
+ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
+ test "$$dir" != "$$p" || dir=.; \
+ echo "rm -f \"$${dir}/so_locations\""; \
+ rm -f "$${dir}/so_locations"; \
+ done
+lib++dfb.la: $(lib__dfb_la_OBJECTS) $(lib__dfb_la_DEPENDENCIES)
+ $(lib__dfb_la_LINK) -rpath $(libdir) $(lib__dfb_la_OBJECTS) $(lib__dfb_la_LIBADD) $(LIBS)
+
+mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
+
+distclean-compile:
+ -rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/idirectfb.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/idirectfbdatabuffer.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/idirectfbdisplaylayer.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/idirectfbeventbuffer.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/idirectfbfont.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/idirectfbimageprovider.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/idirectfbinputdevice.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/idirectfbpalette.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/idirectfbscreen.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/idirectfbsurface.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/idirectfbvideoprovider.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/idirectfbwindow.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ppdfb.Plo@am__quote@
+
+.cpp.o:
+@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
+
+.cpp.obj:
+@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+
+.cpp.lo:
+@am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $<
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$tags $$unique; \
+ fi
+ctags: CTAGS
+CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$tags $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && cd $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) $$here
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ fi; \
+ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+ else \
+ test -f $(distdir)/$$file \
+ || cp -p $$d/$$file $(distdir)/$$file \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-am
+all-am: Makefile $(LTLIBRARIES)
+installdirs:
+ for dir in "$(DESTDIR)$(libdir)"; do \
+ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
+ mostlyclean-am
+
+distclean: distclean-am
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+ distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-exec-am: install-libLTLIBRARIES
+
+install-html: install-html-am
+
+install-info: install-info-am
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-ps: install-ps-am
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+ mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-libLTLIBRARIES
+
+.MAKE: install-am install-strip
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+ clean-libLTLIBRARIES clean-libtool ctags distclean \
+ distclean-compile distclean-generic distclean-libtool \
+ distclean-tags distdir dvi dvi-am html html-am info info-am \
+ install install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am \
+ install-libLTLIBRARIES install-man install-pdf install-pdf-am \
+ install-ps install-ps-am install-strip installcheck \
+ installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-compile \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ tags uninstall uninstall-am uninstall-libLTLIBRARIES
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Source/++DFB/++dfb/idirectfb.cpp b/Source/++DFB/++dfb/idirectfb.cpp
new file mode 100755
index 0000000..87c812c
--- /dev/null
+++ b/Source/++DFB/++dfb/idirectfb.cpp
@@ -0,0 +1,232 @@
+/*
+ (c) Copyright 2000-2002 convergence integrated media GmbH.
+ All rights reserved.
+
+ Written by Denis Oliver Kropp <dok@convergence.de>,
+ Andreas Hundt <andi@convergence.de> and
+ Sven Neumann <sven@convergence.de>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+*/
+
+#include "++dfb.h"
+#include "++dfb_internal.h"
+
+void IDirectFB::SetCooperativeLevel (DFBCooperativeLevel level)
+{
+ DFBCHECK( iface->SetCooperativeLevel (iface, level) );
+}
+
+void IDirectFB::SetVideoMode (unsigned int width,
+ unsigned int height,
+ unsigned int bpp)
+{
+ DFBCHECK( iface->SetVideoMode (iface, width, height, bpp) );
+}
+
+void IDirectFB::GetDeviceDescription (DFBGraphicsDeviceDescription *desc)
+{
+ DFBCHECK( iface->GetDeviceDescription (iface, desc) );
+}
+
+void IDirectFB::EnumVideoModes (DFBVideoModeCallback callback,
+ void *callbackdata)
+{
+ DFBCHECK( iface->EnumVideoModes (iface, callback, callbackdata) );
+}
+
+IDirectFBSurface IDirectFB::CreateSurface (DFBSurfaceDescription &desc) const
+{
+ IDirectFBSurface_C *idirectfbsurface;
+
+ DFBCHECK( iface->CreateSurface (iface, &desc, &idirectfbsurface) );
+
+ return IDirectFBSurface (idirectfbsurface);
+}
+
+IDirectFBPalette IDirectFB::CreatePalette (DFBPaletteDescription &desc)
+{
+ IDirectFBPalette_C *idirectfbpalette;
+
+ DFBCHECK( iface->CreatePalette (iface, &desc, &idirectfbpalette) );
+
+ return IDirectFBPalette (idirectfbpalette);
+}
+
+void IDirectFB::EnumDisplayLayers (DFBDisplayLayerCallback callback,
+ void *callbackdata)
+{
+ DFBCHECK( iface->EnumDisplayLayers (iface, callback, callbackdata) );
+}
+
+
+IDirectFBScreen IDirectFB::GetScreen (DFBScreenID screen_id)
+{
+ IDirectFBScreen_C *idirectfbscreen;
+
+ DFBCHECK( iface->GetScreen (iface, screen_id, &idirectfbscreen) );
+
+ return IDirectFBScreen (idirectfbscreen);
+}
+
+void IDirectFB::EnumScreens (DFBScreenCallback callback,
+ void *callbackdata)
+{
+ DFBCHECK( iface->EnumScreens (iface, callback, callbackdata) );
+}
+
+
+IDirectFBDisplayLayer IDirectFB::GetDisplayLayer (DFBDisplayLayerID layer_id)
+{
+ IDirectFBDisplayLayer_C *idirectfbdisplaylayer;
+
+ DFBCHECK( iface->GetDisplayLayer (iface, layer_id, &idirectfbdisplaylayer) );
+
+ return IDirectFBDisplayLayer (idirectfbdisplaylayer);
+}
+
+void IDirectFB::EnumInputDevices (DFBInputDeviceCallback callback,
+ void *callbackdata) const
+{
+ DFBCHECK( iface->EnumInputDevices (iface, callback, callbackdata) );
+}
+
+IDirectFBInputDevice IDirectFB::GetInputDevice (DFBInputDeviceID device_id) const
+{
+ IDirectFBInputDevice_C *idirectfbinputdevice;
+
+ DFBCHECK( iface->GetInputDevice (iface, device_id, &idirectfbinputdevice) );
+
+ return IDirectFBInputDevice (idirectfbinputdevice);
+}
+
+IDirectFBEventBuffer IDirectFB::CreateEventBuffer () const
+{
+ IDirectFBEventBuffer_C *idirectfbeventbuffer;
+
+ DFBCHECK( iface->CreateEventBuffer (iface, &idirectfbeventbuffer) );
+
+ static IDirectFBEventBuffer *buffer = new IDirectFBEventBuffer (idirectfbeventbuffer);
+ return *buffer;
+// return IDirectFBEventBuffer (idirectfbeventbuffer);
+}
+
+IDirectFBEventBuffer IDirectFB::CreateInputEventBuffer (DFBInputDeviceCapabilities caps,
+ DFBBoolean global)
+{
+ IDirectFBEventBuffer_C *idirectfbeventbuffer;
+
+ DFBCHECK( iface->CreateInputEventBuffer (iface, caps, global,
+ &idirectfbeventbuffer) );
+
+ return IDirectFBEventBuffer (idirectfbeventbuffer);
+}
+
+IDirectFBImageProvider IDirectFB::CreateImageProvider (const char *filename) const
+{
+ IDirectFBImageProvider_C *idirectfbimageprovider;
+
+ DFBCHECK( iface->CreateImageProvider (iface, filename, &idirectfbimageprovider) );
+
+ return IDirectFBImageProvider (idirectfbimageprovider);
+}
+
+IDirectFBVideoProvider IDirectFB::CreateVideoProvider (const char *filename)
+{
+ IDirectFBVideoProvider_C *idirectfbvideoprovider;
+
+ DFBCHECK( iface->CreateVideoProvider (iface, filename, &idirectfbvideoprovider) );
+
+ return IDirectFBVideoProvider (idirectfbvideoprovider);
+}
+
+IDirectFBFont IDirectFB::CreateFont (const char *filename,
+ DFBFontDescription &desc) const
+{
+ IDirectFBFont_C *idirectfbfont;
+
+ DFBCHECK( iface->CreateFont (iface, filename, &desc, &idirectfbfont) );
+
+ return IDirectFBFont (idirectfbfont);
+}
+
+IDirectFBDataBuffer IDirectFB::CreateDataBuffer (DFBDataBufferDescription &desc)
+{
+ IDirectFBDataBuffer_C *idirectfbdatabuffer;
+
+ DFBCHECK( iface->CreateDataBuffer (iface, &desc, &idirectfbdatabuffer) );
+
+ return IDirectFBDataBuffer (idirectfbdatabuffer);
+}
+
+struct timeval IDirectFB::SetClipboardData (const char *mime_type,
+ const void *data,
+ unsigned int size)
+{
+ struct timeval timestamp;
+
+ DFBCHECK( iface->SetClipboardData (iface, mime_type, data, size, &timestamp) );
+
+ return timestamp;
+}
+
+void IDirectFB::GetClipboardData (char **mime_type,
+ void **data,
+ unsigned int *size)
+{
+ DFBCHECK( iface->GetClipboardData (iface, mime_type, data, size) );
+}
+
+struct timeval IDirectFB::GetClipboardTimeStamp()
+{
+ struct timeval timestamp;
+
+ DFBCHECK( iface->GetClipboardTimeStamp (iface, &timestamp) );
+
+ return timestamp;
+}
+
+void IDirectFB::Suspend()
+{
+ DFBCHECK( iface->Suspend (iface) );
+}
+
+void IDirectFB::Resume()
+{
+ DFBCHECK( iface->Resume (iface) );
+}
+
+void IDirectFB::WaitIdle()
+{
+ DFBCHECK( iface->WaitIdle (iface) );
+}
+
+void IDirectFB::WaitForSync()
+{
+ DFBCHECK( iface->WaitForSync (iface) );
+}
+
+void *IDirectFB::GetInterface (const char *type,
+ const char *implementation,
+ void *arg)
+{
+ void *interface;
+
+ DFBCHECK( iface->GetInterface (iface, type, implementation, arg, &interface) );
+
+ return interface;
+}
+
diff --git a/Source/++DFB/++dfb/idirectfbdatabuffer.cpp b/Source/++DFB/++dfb/idirectfbdatabuffer.cpp
new file mode 100755
index 0000000..eca305b
--- /dev/null
+++ b/Source/++DFB/++dfb/idirectfbdatabuffer.cpp
@@ -0,0 +1,137 @@
+/*
+ (c) Copyright 2000-2002 convergence integrated media GmbH.
+ All rights reserved.
+
+ Written by Denis Oliver Kropp <dok@convergence.de>,
+ Andreas Hundt <andi@convergence.de> and
+ Sven Neumann <sven@convergence.de>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+*/
+
+#include "++dfb.h"
+#include "++dfb_internal.h"
+
+void IDirectFBDataBuffer::Flush()
+{
+ DFBCHECK( iface->Flush (iface) );
+}
+
+void IDirectFBDataBuffer::Finish()
+{
+ DFBCHECK( iface->Finish (iface) );
+}
+
+void IDirectFBDataBuffer::SeekTo (unsigned int offset)
+{
+ DFBCHECK( iface->SeekTo (iface, offset) );
+}
+
+unsigned int IDirectFBDataBuffer::GetPosition ()
+{
+ unsigned int position;
+
+ DFBCHECK( iface->GetPosition (iface, &position) );
+
+ return position;
+}
+
+unsigned int IDirectFBDataBuffer::GetLength ()
+{
+ unsigned int length;
+
+ DFBCHECK( iface->GetLength (iface, &length) );
+
+ return length;
+}
+
+void IDirectFBDataBuffer::WaitForData (unsigned int length)
+{
+ DFBCHECK( iface->WaitForData (iface, length) );
+}
+
+void IDirectFBDataBuffer::WaitForDataWithTimeout (unsigned int length,
+ unsigned int seconds,
+ unsigned int milli_seconds)
+{
+ DFBCHECK( iface->WaitForDataWithTimeout (iface, length, seconds, milli_seconds) );
+}
+
+unsigned int IDirectFBDataBuffer::GetData (unsigned int length,
+ void *data)
+{
+ DFBResult ret;
+ unsigned int read_length = 0;
+
+ ret = iface->GetData (iface, length, data, &read_length);
+
+ if (ret != DFB_OK && ret != DFB_BUFFEREMPTY)
+ throw new DFBException (__PRETTY_FUNCTION__, ret);
+
+ return read_length;
+}
+
+unsigned int IDirectFBDataBuffer::PeekData (unsigned int length,
+ int offset,
+ void *data)
+{
+ DFBResult ret;
+ unsigned int read_length = 0;
+
+ ret = iface->PeekData (iface, length, offset, data, &read_length);
+
+ if (ret != DFB_OK && ret != DFB_BUFFEREMPTY)
+ throw new DFBException (__PRETTY_FUNCTION__, ret);
+
+ return read_length;
+}
+
+bool IDirectFBDataBuffer::HasData ()
+{
+ DFBResult ret;
+
+ ret = iface->HasData (iface);
+
+ if (ret != DFB_OK && ret != DFB_BUFFEREMPTY)
+ throw new DFBException (__PRETTY_FUNCTION__, ret);
+
+ return (ret == DFB_OK);
+}
+
+void IDirectFBDataBuffer::PutData (const void *data,
+ unsigned int length)
+{
+ DFBCHECK( iface->PutData (iface, data, length) );
+}
+
+IDirectFBImageProvider IDirectFBDataBuffer::CreateImageProvider ()
+{
+ IDirectFBImageProvider_C *idirectfbimageprovider;
+
+ DFBCHECK( iface->CreateImageProvider (iface, &idirectfbimageprovider) );
+
+ return IDirectFBImageProvider (idirectfbimageprovider);
+}
+
+IDirectFBVideoProvider IDirectFBDataBuffer::CreateVideoProvider ()
+{
+ IDirectFBVideoProvider_C *idirectfbvideoprovider;
+
+ DFBCHECK( iface->CreateVideoProvider (iface, &idirectfbvideoprovider) );
+
+ return IDirectFBVideoProvider (idirectfbvideoprovider);
+}
+
diff --git a/Source/++DFB/++dfb/idirectfbdisplaylayer.cpp b/Source/++DFB/++dfb/idirectfbdisplaylayer.cpp
new file mode 100755
index 0000000..e95ed1b
--- /dev/null
+++ b/Source/++DFB/++dfb/idirectfbdisplaylayer.cpp
@@ -0,0 +1,256 @@
+/*
+ (c) Copyright 2000-2002 convergence integrated media GmbH.
+ All rights reserved.
+
+ Written by Denis Oliver Kropp <dok@convergence.de>,
+ Andreas Hundt <andi@convergence.de> and
+ Sven Neumann <sven@convergence.de>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+*/
+
+#include "++dfb.h"
+#include "++dfb_internal.h"
+
+DFBDisplayLayerID IDirectFBDisplayLayer::GetID()
+{
+ DFBDisplayLayerID layer_id;
+
+ DFBCHECK( iface->GetID (iface, &layer_id) );
+
+ return layer_id;
+}
+
+DFBDisplayLayerDescription IDirectFBDisplayLayer::GetDescription()
+{
+ DFBDisplayLayerDescription desc;
+
+ DFBCHECK( iface->GetDescription (iface, &desc) );
+
+ return desc;
+}
+
+void IDirectFBDisplayLayer::GetSourceDescriptions (DFBDisplayLayerSourceDescription *desc)
+{
+ DFBCHECK( iface->GetSourceDescriptions (iface, desc) );
+}
+
+IDirectFBSurface IDirectFBDisplayLayer::GetSurface()
+{
+ IDirectFBSurface_C *idirectfbsurface;
+
+ DFBCHECK( iface->GetSurface (iface, &idirectfbsurface) );
+
+ return IDirectFBSurface (idirectfbsurface);
+}
+
+IDirectFBScreen IDirectFBDisplayLayer::GetScreen()
+{
+ IDirectFBScreen_C *idirectfbscreen;
+
+ DFBCHECK( iface->GetScreen (iface, &idirectfbscreen) );
+
+ return IDirectFBScreen (idirectfbscreen);
+}
+
+void IDirectFBDisplayLayer::SetCooperativeLevel (DFBDisplayLayerCooperativeLevel level)
+{
+ DFBCHECK( iface->SetCooperativeLevel (iface, level) );
+}
+
+void IDirectFBDisplayLayer::SetOpacity (u8 opacity)
+{
+ DFBCHECK( iface->SetOpacity (iface, opacity) );
+}
+
+void IDirectFBDisplayLayer::SetSourceRectangle (int x,
+ int y,
+ int width,
+ int height)
+{
+ DFBCHECK( iface->SetSourceRectangle (iface, x, y, width, height) );
+}
+
+void IDirectFBDisplayLayer::SetScreenLocation (float x,
+ float y,
+ float width,
+ float height)
+{
+ DFBCHECK( iface->SetScreenLocation (iface, x, y, width, height) );
+}
+
+void IDirectFBDisplayLayer::SetScreenPosition (int x,
+ int y)
+{
+ DFBCHECK( iface->SetScreenPosition (iface, x, y) );
+}
+
+void IDirectFBDisplayLayer::SetScreenRectangle (int x,
+ int y,
+ int width,
+ int height)
+{
+ DFBCHECK( iface->SetScreenRectangle (iface, x, y, width, height) );
+}
+
+void IDirectFBDisplayLayer::SetClipRegions (const DFBRegion *regions,
+ int num_regions,
+ DFBBoolean positive)
+{
+ DFBCHECK( iface->SetClipRegions (iface, regions, num_regions, positive) );
+}
+
+void IDirectFBDisplayLayer::SetSrcColorKey (u8 r, u8 g, u8 b)
+{
+ DFBCHECK( iface->SetSrcColorKey (iface, r, g, b) );
+}
+
+void IDirectFBDisplayLayer::SetDstColorKey (u8 r, u8 g, u8 b)
+{
+ DFBCHECK( iface->SetDstColorKey (iface, r, g, b) );
+}
+
+int IDirectFBDisplayLayer::GetLevel()
+{
+ int level;
+
+ DFBCHECK( iface->GetLevel (iface, &level) );
+
+ return level;
+}
+
+void IDirectFBDisplayLayer::SetLevel (int level)
+{
+ DFBCHECK( iface->SetLevel (iface, level) );
+}
+
+int IDirectFBDisplayLayer::GetCurrentOutputField()
+{
+ int field;
+
+ DFBCHECK( iface->GetCurrentOutputField (iface, &field) );
+
+ return field;
+}
+
+void IDirectFBDisplayLayer::SetFieldParity (int field)
+{
+ DFBCHECK( iface->SetFieldParity (iface, field) );
+}
+
+void IDirectFBDisplayLayer::WaitForSync()
+{
+ DFBCHECK( iface->WaitForSync (iface) );
+}
+
+void IDirectFBDisplayLayer::GetConfiguration (DFBDisplayLayerConfig *config)
+{
+ DFBCHECK( iface->GetConfiguration (iface, config) );
+}
+
+void IDirectFBDisplayLayer::TestConfiguration (DFBDisplayLayerConfig &config,
+ DFBDisplayLayerConfigFlags *failed)
+{
+ DFBCHECK( iface->TestConfiguration (iface, &config, failed) );
+}
+
+void IDirectFBDisplayLayer::SetConfiguration (DFBDisplayLayerConfig &config)
+{
+ DFBCHECK( iface->SetConfiguration (iface, &config) );
+}
+
+void IDirectFBDisplayLayer::SetBackgroundMode (DFBDisplayLayerBackgroundMode mode)
+{
+ DFBCHECK( iface->SetBackgroundMode (iface, mode) );
+}
+
+void IDirectFBDisplayLayer::SetBackgroundImage (IDirectFBSurface *surface)
+{
+ DFBCHECK( iface->SetBackgroundImage (iface, surface->get_iface()) );
+}
+
+void IDirectFBDisplayLayer::SetBackgroundColor (u8 r, u8 g, u8 b, u8 a)
+{
+ DFBCHECK( iface->SetBackgroundColor (iface, r, g, b, a) );
+}
+
+void IDirectFBDisplayLayer::GetColorAdjustment (DFBColorAdjustment *adj)
+{
+ DFBCHECK( iface->GetColorAdjustment (iface, adj) );
+}
+
+void IDirectFBDisplayLayer::SetColorAdjustment (DFBColorAdjustment &adj)
+{
+ DFBCHECK( iface->SetColorAdjustment (iface, &adj) );
+}
+
+IDirectFBWindow IDirectFBDisplayLayer::CreateWindow (DFBWindowDescription &desc)
+{
+ IDirectFBWindow_C *idirectfbwindow;
+
+ DFBCHECK( iface->CreateWindow (iface, &desc, &idirectfbwindow) );
+
+ return IDirectFBWindow (idirectfbwindow);
+}
+
+IDirectFBWindow IDirectFBDisplayLayer::GetWindow (DFBWindowID window_id)
+{
+ IDirectFBWindow_C *idirectfbwindow;
+
+ DFBCHECK( iface->GetWindow (iface, window_id, &idirectfbwindow) );
+
+ return IDirectFBWindow (idirectfbwindow);
+}
+
+void IDirectFBDisplayLayer::EnableCursor (bool enable)
+{
+ DFBCHECK( iface->EnableCursor (iface, enable) );
+}
+
+void IDirectFBDisplayLayer::GetCursorPosition (int *x, int *y)
+{
+ DFBCHECK( iface->GetCursorPosition (iface, x, y) );
+}
+
+void IDirectFBDisplayLayer::WarpCursor (int x, int y)
+{
+ DFBCHECK( iface->WarpCursor (iface, x, y) );
+}
+
+void IDirectFBDisplayLayer::SetCursorAcceleration (int numerator,
+ int denominator,
+ int threshold)
+{
+ DFBCHECK( iface->SetCursorAcceleration (iface, numerator, denominator, threshold) );
+}
+
+void IDirectFBDisplayLayer::SetCursorShape (IDirectFBSurface *shape,
+ int hot_x,
+ int hot_y)
+{
+ DFBCHECK( iface->SetCursorShape (iface, shape->get_iface(), hot_x, hot_y) );
+}
+
+void IDirectFBDisplayLayer::SetCursorOpacity (u8 opacity)
+{
+ DFBCHECK( iface->SetCursorOpacity (iface, opacity) );
+}
+
+void IDirectFBDisplayLayer::SwitchContext (DFBBoolean exclusive)
+{
+ DFBCHECK( iface->SwitchContext (iface, exclusive) );
+}
+
diff --git a/Source/++DFB/++dfb/idirectfbeventbuffer.cpp b/Source/++DFB/++dfb/idirectfbeventbuffer.cpp
new file mode 100755
index 0000000..e0f25ca
--- /dev/null
+++ b/Source/++DFB/++dfb/idirectfbeventbuffer.cpp
@@ -0,0 +1,114 @@
+/*
+ (c) Copyright 2000-2002 convergence integrated media GmbH.
+ All rights reserved.
+
+ Written by Denis Oliver Kropp <dok@convergence.de>,
+ Andreas Hundt <andi@convergence.de> and
+ Sven Neumann <sven@convergence.de>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+*/
+
+#include "++dfb.h"
+#include "++dfb_internal.h"
+
+void IDirectFBEventBuffer::Reset()
+{
+ DFBCHECK( iface->Reset (iface) );
+}
+
+void IDirectFBEventBuffer::WaitForEvent()
+{
+ DFBCHECK( iface->WaitForEvent (iface) );
+}
+
+bool IDirectFBEventBuffer::WaitForEventWithTimeout (unsigned int seconds,
+ unsigned int milli_seconds)
+{
+ DFBResult ret;
+
+ ret = iface->WaitForEventWithTimeout (iface, seconds, milli_seconds);
+
+ if (ret != DFB_OK && ret != DFB_TIMEOUT)
+ throw new DFBException(__PRETTY_FUNCTION__, ret);
+
+ return (ret == DFB_OK);
+}
+
+void IDirectFBEventBuffer::WakeUp ()
+{
+ DFBCHECK( iface->WakeUp (iface) );
+}
+
+bool IDirectFBEventBuffer::GetEvent (DFBEvent *event)
+{
+ DFBResult ret;
+
+ ret = iface->GetEvent (iface, event);
+
+ if (ret != DFB_OK && ret != DFB_BUFFEREMPTY)
+ throw new DFBException (__PRETTY_FUNCTION__, ret);
+
+ return (ret == DFB_OK);
+}
+
+bool IDirectFBEventBuffer::PeekEvent (DFBEvent *event)
+{
+ DFBResult ret;
+
+ ret = iface->PeekEvent (iface, event);
+
+ if (ret != DFB_OK && ret != DFB_BUFFEREMPTY)
+ throw new DFBException (__PRETTY_FUNCTION__, ret);
+
+ return (ret == DFB_OK);
+}
+
+bool IDirectFBEventBuffer::HasEvent ()
+{
+ DFBResult ret;
+
+ ret = iface->HasEvent (iface);
+
+ if (ret != DFB_OK && ret != DFB_BUFFEREMPTY)
+ throw new DFBException (__PRETTY_FUNCTION__, ret);
+
+ return (ret == DFB_OK);
+}
+
+void IDirectFBEventBuffer::PostEvent (DFBEvent &event)
+{
+ DFBCHECK( iface->PostEvent (iface, &event) );
+}
+
+int IDirectFBEventBuffer::CreateFileDescriptor ()
+{
+ int fd;
+
+ DFBCHECK( iface->CreateFileDescriptor (iface, &fd) );
+
+ return fd;
+}
+
+void IDirectFBEventBuffer::EnableStatistics (DFBBoolean enable)
+{
+ DFBCHECK( iface->EnableStatistics (iface, enable) );
+}
+
+void IDirectFBEventBuffer::GetStatistics (DFBEventBufferStats *stats)
+{
+ DFBCHECK( iface->GetStatistics (iface, stats) );
+}
diff --git a/Source/++DFB/++dfb/idirectfbfont.cpp b/Source/++DFB/++dfb/idirectfbfont.cpp
new file mode 100755
index 0000000..06f67ec
--- /dev/null
+++ b/Source/++DFB/++dfb/idirectfbfont.cpp
@@ -0,0 +1,123 @@
+/*
+ (c) Copyright 2000-2002 convergence integrated media GmbH.
+ All rights reserved.
+
+ Written by Denis Oliver Kropp <dok@convergence.de>,
+ Andreas Hundt <andi@convergence.de> and
+ Sven Neumann <sven@convergence.de>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+*/
+
+#include "++dfb.h"
+#include "++dfb_internal.h"
+
+int IDirectFBFont::GetAscender() const
+{
+ int ascender;
+
+ DFBCHECK( iface->GetAscender (iface, &ascender) );
+
+ return ascender;
+}
+
+int IDirectFBFont::GetDescender() const
+{
+ int descender;
+
+ DFBCHECK( iface->GetDescender (iface, &descender) );
+
+ return descender;
+}
+
+int IDirectFBFont::GetHeight() const
+{
+ int height;
+
+ DFBCHECK( iface->GetHeight (iface, &height) );
+
+ return height;
+}
+
+int IDirectFBFont::GetMaxAdvance() const
+{
+ int max_advance;
+
+ DFBCHECK( iface->GetMaxAdvance (iface, &max_advance) );
+
+ return max_advance;
+}
+
+void IDirectFBFont::GetKerning (unsigned int prev_index,
+ unsigned int current_index,
+ int *kern_x,
+ int *kern_y) const
+{
+ DFBCHECK( iface->GetKerning (iface, prev_index, current_index, kern_x, kern_y) );
+}
+
+void IDirectFBFont::GetStringBreak (const char *text,
+ int bytes,
+ int max_width,
+ int *ret_width,
+ int *ret_str_length,
+ const char **ret_next_line) const
+{
+ DFBCHECK( iface->GetStringBreak(iface, text, bytes, max_width, ret_width, ret_str_length, ret_next_line) );
+}
+
+int IDirectFBFont::GetStringWidth (const char *text, int bytes) const
+{
+ int width;
+
+ DFBCHECK( iface->GetStringWidth (iface, text, bytes, &width) );
+
+ return width;
+}
+
+void IDirectFBFont::GetStringExtents (const char *text,
+ int bytes,
+ DFBRectangle *logical_rect,
+ DFBRectangle *ink_rect) const
+{
+ DFBCHECK( iface->GetStringExtents (iface, text, bytes,
+ logical_rect, ink_rect) );
+}
+
+void IDirectFBFont::GetGlyphExtents (unsigned int index,
+ DFBRectangle *rect,
+ int *advance) const
+{
+ DFBCHECK( iface->GetGlyphExtents (iface, index, rect, advance) );
+}
+
+void IDirectFBFont::SetEncoding (DFBTextEncodingID encoding)
+{
+ DFBCHECK( iface->SetEncoding (iface, encoding) );
+}
+
+void IDirectFBFont::EnumEncodings (DFBTextEncodingCallback callback,
+ void *callbackdata)
+{
+ DFBCHECK( iface->EnumEncodings (iface, callback, callbackdata) );
+}
+
+void IDirectFBFont::FindEncoding (const char *name,
+ DFBTextEncodingID *encoding)
+{
+ DFBCHECK( iface->FindEncoding (iface, name, encoding) );
+}
+
diff --git a/Source/++DFB/++dfb/idirectfbimageprovider.cpp b/Source/++DFB/++dfb/idirectfbimageprovider.cpp
new file mode 100755
index 0000000..c79d8e7
--- /dev/null
+++ b/Source/++DFB/++dfb/idirectfbimageprovider.cpp
@@ -0,0 +1,50 @@
+/*
+ (c) Copyright 2000-2002 convergence integrated media GmbH.
+ All rights reserved.
+
+ Written by Denis Oliver Kropp <dok@convergence.de>,
+ Andreas Hundt <andi@convergence.de> and
+ Sven Neumann <sven@convergence.de>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+*/
+
+#include "++dfb.h"
+#include "++dfb_internal.h"
+
+void IDirectFBImageProvider::GetSurfaceDescription (DFBSurfaceDescription *dsc)
+{
+ DFBCHECK( iface->GetSurfaceDescription (iface, dsc) );
+}
+
+void IDirectFBImageProvider::GetImageDescription (DFBImageDescription *dsc)
+{
+ DFBCHECK( iface->GetImageDescription (iface, dsc) );
+}
+
+void IDirectFBImageProvider::RenderTo (IDirectFBSurface *destination,
+ DFBRectangle *destination_rect)
+{
+ DFBCHECK( iface->RenderTo (iface,
+ destination->get_iface(), destination_rect) );
+}
+
+void IDirectFBImageProvider::SetRenderCallback (DIRenderCallback callback,
+ void *callback_data)
+{
+ DFBCHECK( iface->SetRenderCallback (iface, callback, callback_data) );
+}
+
diff --git a/Source/++DFB/++dfb/idirectfbinputdevice.cpp b/Source/++DFB/++dfb/idirectfbinputdevice.cpp
new file mode 100755
index 0000000..f1eadd2
--- /dev/null
+++ b/Source/++DFB/++dfb/idirectfbinputdevice.cpp
@@ -0,0 +1,125 @@
+/*
+ (c) Copyright 2000-2002 convergence integrated media GmbH.
+ All rights reserved.
+
+ Written by Denis Oliver Kropp <dok@convergence.de>,
+ Andreas Hundt <andi@convergence.de> and
+ Sven Neumann <sven@convergence.de>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+*/
+
+#include "++dfb.h"
+#include "++dfb_internal.h"
+
+DFBInputDeviceID IDirectFBInputDevice::GetID()
+{
+ DFBInputDeviceID device_id;
+
+ DFBCHECK( iface->GetID (iface, &device_id) );
+
+ return device_id;
+}
+
+void IDirectFBInputDevice::GetDescription (DFBInputDeviceDescription *desc)
+{
+ DFBCHECK( iface->GetDescription (iface, desc) );
+}
+
+void IDirectFBInputDevice::GetKeymapEntry (int code,
+ DFBInputDeviceKeymapEntry *entry)
+{
+ DFBCHECK( iface->GetKeymapEntry (iface, code, entry) );
+}
+
+IDirectFBEventBuffer IDirectFBInputDevice::CreateEventBuffer()
+{
+ IDirectFBEventBuffer_C *idirectfbeventbuffer;
+
+ DFBCHECK( iface->CreateEventBuffer (iface, &idirectfbeventbuffer) );
+
+ return IDirectFBEventBuffer (idirectfbeventbuffer);
+}
+
+void IDirectFBInputDevice::AttachEventBuffer (IDirectFBEventBuffer *buffer)
+{
+ DFBCHECK( iface->AttachEventBuffer (iface, buffer->get_iface()) );
+}
+
+void IDirectFBInputDevice::DetachEventBuffer (IDirectFBEventBuffer *buffer)
+{
+ DFBCHECK( iface->DetachEventBuffer (iface, buffer->get_iface()) );
+}
+
+DFBInputDeviceKeyState IDirectFBInputDevice::GetKeyState (DFBInputDeviceKeyIdentifier key_id)
+{
+ DFBInputDeviceKeyState state;
+
+ DFBCHECK( iface->GetKeyState (iface, key_id, &state) );
+
+ return state;
+}
+
+DFBInputDeviceModifierMask IDirectFBInputDevice::GetModifiers()
+{
+ DFBInputDeviceModifierMask modifiers;
+
+ DFBCHECK( iface->GetModifiers (iface, &modifiers) );
+
+ return modifiers;
+}
+
+DFBInputDeviceLockState IDirectFBInputDevice::GetLockState()
+{
+ DFBInputDeviceLockState state;
+
+ DFBCHECK( iface->GetLockState (iface, &state) );
+
+ return state;
+}
+
+DFBInputDeviceButtonMask IDirectFBInputDevice::GetButtons()
+{
+ DFBInputDeviceButtonMask mask;
+
+ DFBCHECK( iface->GetButtons (iface, &mask) );
+
+ return mask;
+}
+
+DFBInputDeviceButtonState IDirectFBInputDevice::GetButtonState (DFBInputDeviceButtonIdentifier button)
+{
+ DFBInputDeviceButtonState state;
+
+ DFBCHECK( iface->GetButtonState (iface, button, &state) );
+
+ return state;
+}
+
+int IDirectFBInputDevice::GetAxis (DFBInputDeviceAxisIdentifier axis)
+{
+ int value;
+
+ DFBCHECK( iface->GetAxis (iface, axis, &value) );
+
+ return value;
+}
+
+void IDirectFBInputDevice::GetXY (int *x, int *y)
+{
+ DFBCHECK( iface->GetXY (iface, x, y) );
+}
+
diff --git a/Source/++DFB/++dfb/idirectfbpalette.cpp b/Source/++DFB/++dfb/idirectfbpalette.cpp
new file mode 100755
index 0000000..0f62027
--- /dev/null
+++ b/Source/++DFB/++dfb/idirectfbpalette.cpp
@@ -0,0 +1,76 @@
+/*
+ (c) Copyright 2000-2002 convergence integrated media GmbH.
+ All rights reserved.
+
+ Written by Denis Oliver Kropp <dok@convergence.de>,
+ Andreas Hundt <andi@convergence.de> and
+ Sven Neumann <sven@convergence.de>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+*/
+
+#include "++dfb.h"
+#include "++dfb_internal.h"
+
+DFBPaletteCapabilities IDirectFBPalette::GetCapabilities()
+{
+ DFBPaletteCapabilities caps;
+
+ DFBCHECK( iface->GetCapabilities (iface, &caps) );
+
+ return caps;
+}
+
+unsigned int IDirectFBPalette::GetSize()
+{
+ unsigned int size;
+
+ DFBCHECK( iface->GetSize (iface, &size) );
+
+ return size;
+}
+
+void IDirectFBPalette::SetEntries (DFBColor *entries,
+ unsigned int num_entries,
+ unsigned int offset)
+{
+ DFBCHECK( iface->SetEntries (iface, entries, num_entries, offset) );
+}
+
+void IDirectFBPalette::GetEntries (DFBColor *entries,
+ unsigned int num_entries,
+ unsigned int offset)
+{
+ DFBCHECK( iface->GetEntries (iface, entries, num_entries, offset) );
+}
+
+unsigned int IDirectFBPalette::FindBestMatch (u8 r, u8 g, u8 b, u8 a)
+{
+ unsigned int index;
+
+ DFBCHECK( iface->FindBestMatch (iface, r, g, b, a, &index) );
+
+ return index;
+}
+
+IDirectFBPalette IDirectFBPalette::CreateCopy()
+{
+ IDirectFBPalette_C *idirectfbpalette;
+
+ DFBCHECK( iface->CreateCopy (iface, &idirectfbpalette) );
+
+ return IDirectFBPalette (idirectfbpalette);
+}
diff --git a/Source/++DFB/++dfb/idirectfbscreen.cpp b/Source/++DFB/++dfb/idirectfbscreen.cpp
new file mode 100755
index 0000000..e50c544
--- /dev/null
+++ b/Source/++DFB/++dfb/idirectfbscreen.cpp
@@ -0,0 +1,141 @@
+/*
+ (c) Copyright 2000-2002 convergence integrated media GmbH.
+ All rights reserved.
+
+ Written by Denis Oliver Kropp <dok@convergence.de>,
+ Andreas Hundt <andi@convergence.de> and
+ Sven Neumann <sven@convergence.de>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+*/
+
+#include "++dfb.h"
+#include "++dfb_internal.h"
+
+DFBScreenID IDirectFBScreen::GetID()
+{
+ DFBScreenID screen_id;
+
+ DFBCHECK( iface->GetID (iface, &screen_id) );
+
+ return screen_id;
+}
+
+DFBScreenDescription IDirectFBScreen::GetDescription()
+{
+ DFBScreenDescription desc;
+
+ DFBCHECK( iface->GetDescription (iface, &desc) );
+
+ return desc;
+}
+
+void IDirectFBScreen::GetSize (int *width,
+ int *height)
+{
+ DFBCHECK( iface->GetSize (iface, width, height) );
+}
+
+void IDirectFBScreen::EnumDisplayLayers (DFBDisplayLayerCallback callback,
+ void *callbackdata)
+{
+ DFBCHECK( iface->EnumDisplayLayers (iface, callback, callbackdata) );
+}
+
+void IDirectFBScreen::WaitForSync()
+{
+ DFBCHECK( iface->WaitForSync (iface) );
+}
+
+void IDirectFBScreen::SetPowerMode (DFBScreenPowerMode mode)
+{
+ DFBCHECK( iface->SetPowerMode (iface, mode) );
+}
+
+void IDirectFBScreen::GetMixerDescriptions (DFBScreenMixerDescription *descriptions)
+{
+ DFBCHECK( iface->GetMixerDescriptions (iface, descriptions) );
+}
+
+void IDirectFBScreen::GetMixerConfiguration (int mixer,
+ DFBScreenMixerConfig *config)
+{
+ DFBCHECK( iface->GetMixerConfiguration (iface, mixer, config) );
+}
+
+void IDirectFBScreen::TestMixerConfiguration (int mixer,
+ const DFBScreenMixerConfig &config,
+ DFBScreenMixerConfigFlags *failed)
+{
+ DFBCHECK( iface->TestMixerConfiguration (iface, mixer, &config, failed) );
+}
+
+void IDirectFBScreen::SetMixerConfiguration (int mixer,
+ const DFBScreenMixerConfig &config)
+{
+ DFBCHECK( iface->SetMixerConfiguration (iface, mixer, &config) );
+}
+
+
+void IDirectFBScreen::GetEncoderDescriptions (DFBScreenEncoderDescription *descriptions)
+{
+ DFBCHECK( iface->GetEncoderDescriptions (iface, descriptions) );
+}
+
+void IDirectFBScreen::GetEncoderConfiguration (int encoder,
+ DFBScreenEncoderConfig *config)
+{
+ DFBCHECK( iface->GetEncoderConfiguration (iface, encoder, config) );
+}
+
+void IDirectFBScreen::TestEncoderConfiguration (int encoder,
+ const DFBScreenEncoderConfig &config,
+ DFBScreenEncoderConfigFlags *failed)
+{
+ DFBCHECK( iface->TestEncoderConfiguration (iface, encoder, &config, failed) );
+}
+
+void IDirectFBScreen::SetEncoderConfiguration (int encoder,
+ const DFBScreenEncoderConfig &config)
+{
+ DFBCHECK( iface->SetEncoderConfiguration (iface, encoder, &config) );
+}
+
+
+void IDirectFBScreen::GetOutputDescriptions (DFBScreenOutputDescription *descriptions)
+{
+ DFBCHECK( iface->GetOutputDescriptions (iface, descriptions) );
+}
+
+void IDirectFBScreen::GetOutputConfiguration (int output,
+ DFBScreenOutputConfig *config)
+{
+ DFBCHECK( iface->GetOutputConfiguration (iface, output, config) );
+}
+
+void IDirectFBScreen::TestOutputConfiguration (int output,
+ const DFBScreenOutputConfig &config,
+ DFBScreenOutputConfigFlags *failed)
+{
+ DFBCHECK( iface->TestOutputConfiguration (iface, output, &config, failed) );
+}
+
+void IDirectFBScreen::SetOutputConfiguration (int output,
+ const DFBScreenOutputConfig &config)
+{
+ DFBCHECK( iface->SetOutputConfiguration (iface, output, &config) );
+}
+
diff --git a/Source/++DFB/++dfb/idirectfbsurface.cpp b/Source/++DFB/++dfb/idirectfbsurface.cpp
new file mode 100755
index 0000000..61689e8
--- /dev/null
+++ b/Source/++DFB/++dfb/idirectfbsurface.cpp
@@ -0,0 +1,466 @@
+/*
+ (c) Copyright 2000-2002 convergence integrated media GmbH.
+ All rights reserved.
+
+ Written by Denis Oliver Kropp <dok@convergence.de>,
+ Andreas Hundt <andi@convergence.de> and
+ Sven Neumann <sven@convergence.de>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+*/
+
+#include "++dfb.h"
+#include "++dfb_internal.h"
+
+DFBSurfaceCapabilities IDirectFBSurface::GetCapabilities()
+{
+ DFBSurfaceCapabilities caps;
+
+ DFBCHECK( iface->GetCapabilities (iface, &caps) );
+
+ return caps;
+}
+
+void IDirectFBSurface::GetPosition (int *x, int *y)
+{
+ DFBCHECK( iface->GetPosition (iface, x, y) );
+}
+
+void IDirectFBSurface::GetSize (int *width,
+ int *height)
+{
+ DFBCHECK( iface->GetSize (iface, width, height) );
+}
+
+void IDirectFBSurface::GetVisibleRectangle (DFBRectangle *rect)
+{
+ DFBCHECK( iface->GetVisibleRectangle (iface, rect) );
+}
+
+DFBSurfacePixelFormat IDirectFBSurface::GetPixelFormat()
+{
+ DFBSurfacePixelFormat format;
+
+ DFBCHECK( iface->GetPixelFormat (iface, &format) );
+
+ return format;
+}
+
+DFBAccelerationMask IDirectFBSurface::GetAccelerationMask (IDirectFBSurface *source)
+{
+ DFBAccelerationMask mask;
+
+ DFBCHECK( iface->GetAccelerationMask (iface, source->get_iface(), &mask) );
+
+ return mask;
+}
+
+IDirectFBPalette IDirectFBSurface::GetPalette()
+{
+ IDirectFBPalette_C *idirectfbpalette;
+
+ DFBCHECK( iface->GetPalette (iface, &idirectfbpalette) );
+
+ return IDirectFBPalette (idirectfbpalette);
+}
+
+void IDirectFBSurface::SetPalette (IDirectFBPalette *palette)
+{
+ DFBCHECK( iface->SetPalette (iface, palette->get_iface()) );
+}
+
+void IDirectFBSurface::SetAlphaRamp (u8 a0, u8 a1, u8 a2, u8 a3)
+{
+ DFBCHECK( iface->SetAlphaRamp (iface, a0, a1, a2, a3) );
+}
+
+void IDirectFBSurface::Lock (DFBSurfaceLockFlags flags,
+ void **ptr,
+ int *pitch)
+{
+ DFBCHECK( iface->Lock (iface, flags, ptr, pitch) );
+}
+
+void IDirectFBSurface::Unlock()
+{
+ DFBCHECK( iface->Unlock (iface) );
+}
+
+void IDirectFBSurface::Flip (DFBRegion *region,
+ DFBSurfaceFlipFlags flags)
+{
+ DFBCHECK( iface->Flip (iface, region, flags) );
+}
+
+void IDirectFBSurface::SetField (int field)
+{
+ DFBCHECK( iface->SetField (iface, field) );
+}
+
+void IDirectFBSurface::Clear (u8 r, u8 g, u8 b, u8 a)
+{
+ DFBCHECK( iface->Clear (iface, r, g, b, a) );
+}
+
+void IDirectFBSurface::Clear (DFBColor &c)
+{
+ DFBCHECK( iface->Clear (iface, c.r, c.g, c.b, c.a) );
+}
+
+void IDirectFBSurface::SetClip (const DFBRegion *clip)
+{
+ DFBCHECK( iface->SetClip (iface, clip) );
+}
+
+void IDirectFBSurface::SetClip (const DFBRectangle *clip)
+{
+ DFBRegion region( *clip );
+ DFBCHECK( iface->SetClip (iface, &region) );
+}
+
+void IDirectFBSurface::SetColor (u8 r, u8 g, u8 b, u8 a)
+{
+ DFBCHECK( iface->SetColor (iface, r, g, b, a) );
+}
+
+void IDirectFBSurface::SetColor (DFBColor &c)
+{
+ DFBCHECK( iface->SetColor (iface, c.r, c.g, c.b, c.a) );
+}
+
+void IDirectFBSurface::SetColorIndex (unsigned int index)
+{
+ DFBCHECK( iface->SetColorIndex (iface, index) );
+}
+
+void IDirectFBSurface::SetSrcBlendFunction (DFBSurfaceBlendFunction function)
+{
+ DFBCHECK( iface->SetSrcBlendFunction (iface, function) );
+}
+
+void IDirectFBSurface::SetDstBlendFunction (DFBSurfaceBlendFunction function)
+{
+ DFBCHECK( iface->SetDstBlendFunction (iface, function) );
+}
+
+void IDirectFBSurface::SetPorterDuff (DFBSurfacePorterDuffRule rule)
+{
+ DFBCHECK( iface->SetPorterDuff (iface, rule) );
+}
+
+void IDirectFBSurface::SetSrcColorKey (u8 r, u8 g, u8 b)
+{
+ DFBCHECK( iface->SetSrcColorKey (iface, r, g, b) );
+}
+
+void IDirectFBSurface::SetSrcColorKeyIndex (unsigned int index)
+{
+ DFBCHECK( iface->SetSrcColorKeyIndex (iface, index) );
+}
+
+void IDirectFBSurface::SetDstColorKey (u8 r, u8 g, u8 b)
+{
+ DFBCHECK( iface->SetDstColorKey (iface, r, g, b) );
+}
+
+void IDirectFBSurface::SetDstColorKeyIndex (unsigned int index)
+{
+ DFBCHECK( iface->SetDstColorKeyIndex (iface, index) );
+}
+
+void IDirectFBSurface::SetBlittingFlags (DFBSurfaceBlittingFlags flags)
+{
+ DFBCHECK( iface->SetBlittingFlags (iface, flags) );
+}
+
+void IDirectFBSurface::Blit (IDirectFBSurface *source,
+ const DFBRectangle *source_rect,
+ int x,
+ int y)
+{
+ DFBCHECK( iface->Blit (iface, source->get_iface(), source_rect, x, y) );
+}
+
+void IDirectFBSurface::TileBlit (IDirectFBSurface *source,
+ const DFBRectangle *source_rect,
+ int x,
+ int y)
+{
+ DFBCHECK( iface->TileBlit (iface, source->get_iface(), source_rect, x, y) );
+}
+
+void IDirectFBSurface::BatchBlit (IDirectFBSurface *source,
+ const DFBRectangle *source_rects,
+ const DFBPoint *dest_points,
+ int num)
+{
+ DFBCHECK( iface->BatchBlit (iface, source->get_iface(),
+ source_rects, dest_points, num) );
+}
+
+void IDirectFBSurface::StretchBlit (IDirectFBSurface *source,
+ const DFBRectangle *source_rect,
+ const DFBRectangle *destination_rect)
+{
+ DFBCHECK( iface->StretchBlit (iface, source->get_iface(),
+ source_rect, destination_rect) );
+}
+
+void IDirectFBSurface::TextureTriangles (IDirectFBSurface *source,
+ const DFBVertex *vertices,
+ const int *indices,
+ int num,
+ DFBTriangleFormation formation)
+{
+ DFBCHECK( iface->TextureTriangles (iface, source->get_iface(),
+ vertices, indices, num, formation) );
+}
+
+void IDirectFBSurface::SetDrawingFlags (DFBSurfaceDrawingFlags flags)
+{
+ DFBCHECK( iface->SetDrawingFlags (iface, flags) );
+}
+
+void IDirectFBSurface::FillRectangle (int x, int y, int width, int height)
+{
+ DFBCHECK( iface->FillRectangle (iface, x, y, width, height) );
+}
+
+void IDirectFBSurface::FillRectangle (DFBRectangle &rect)
+{
+ DFBCHECK( iface->FillRectangle (iface, rect.x, rect.y, rect.w, rect.h) );
+}
+
+void IDirectFBSurface::FillRectangle (DFBRegion &reg)
+{
+ DFBCHECK( iface->FillRectangle (iface, reg.x1, reg.y1, reg.x2-reg.x1+1, reg.y2-reg.y1+1) );
+}
+
+void IDirectFBSurface::DrawRectangle (int x, int y, int width, int height)
+{
+ DFBCHECK( iface->DrawRectangle (iface, x, y, width, height) );
+}
+
+void IDirectFBSurface::DrawLine (int x1, int y1, int x2, int y2)
+{
+ DFBCHECK( iface->DrawLine (iface, x1, y1, x2, y2) );
+}
+
+void IDirectFBSurface::DrawLines (const DFBRegion *lines, unsigned int num_lines)
+{
+ DFBCHECK( iface->DrawLines (iface, lines, num_lines) );
+}
+
+void IDirectFBSurface::FillRectangles (const DFBRectangle *rects, unsigned int num_rects)
+{
+ DFBCHECK( iface->FillRectangles (iface, rects, num_rects) );
+}
+
+void IDirectFBSurface::FillTriangle (int x1, int y1,
+ int x2, int y2,
+ int x3, int y3)
+{
+ DFBCHECK( iface->FillTriangle (iface, x1, y1, x2, y2, x3, y3) );
+}
+
+void IDirectFBSurface::FillSpans (int y,
+ const DFBSpan *spans,
+ unsigned int num)
+{
+ DFBCHECK( iface->FillSpans (iface, y, spans, num) );
+}
+
+void IDirectFBSurface::SetFont (const IDirectFBFont& font) const
+{
+ DFBCHECK( iface->SetFont (iface, font.get_iface()) );
+}
+
+IDirectFBFont IDirectFBSurface::GetFont() const
+{
+ IDirectFBFont_C *idirectfbfont;
+
+ DFBCHECK( iface->GetFont (iface, &idirectfbfont) );
+
+ return IDirectFBFont (idirectfbfont);
+}
+
+void IDirectFBSurface::DrawString (const char *text,
+ int bytes,
+ int x,
+ int y,
+ DFBSurfaceTextFlags flags)
+{
+ DFBCHECK( iface->DrawString (iface, text, bytes, x, y, flags) );
+}
+
+void IDirectFBSurface::DrawGlyph (unsigned int index,
+ int x,
+ int y,
+ DFBSurfaceTextFlags flags)
+{
+ DFBCHECK( iface->DrawGlyph (iface, index, x, y, flags) );
+}
+
+void IDirectFBSurface::SetEncoding (DFBTextEncodingID encoding)
+{
+ DFBCHECK( iface->SetEncoding (iface, encoding) );
+}
+
+IDirectFBSurface IDirectFBSurface::GetSubSurface (DFBRectangle *rect)
+{
+ IDirectFBSurface_C *idirectfbsurface;
+
+ DFBCHECK( iface->GetSubSurface (iface, rect, &idirectfbsurface) );
+
+ return IDirectFBSurface (idirectfbsurface);
+}
+
+int IDirectFBSurface::GetWidth()
+{
+ int width;
+
+ GetSize (&width, NULL);
+
+ return width;
+}
+
+int IDirectFBSurface::GetHeight()
+{
+ int height;
+
+ GetSize (NULL, &height);
+
+ return height;
+}
+
+void IDirectFBSurface::SetColor (const DFBColor &color)
+{
+ DFBCHECK( iface->SetColor (iface, color.r, color.g, color.b, color.a) );
+}
+
+void IDirectFBSurface::SetColor (const DFBColor *color)
+{
+ DFBCHECK( iface->SetColor (iface, color->r, color->g, color->b, color->a) );
+}
+
+void IDirectFBSurface::FillRectangle (const DFBRectangle &rect)
+{
+ DFBCHECK( iface->FillRectangle (iface, rect.x, rect.y, rect.w, rect.h) );
+}
+
+void IDirectFBSurface::DrawRectangle (const DFBRectangle &rect)
+{
+ DFBCHECK( iface->DrawRectangle (iface, rect.x, rect.y, rect.w, rect.h) );
+}
+
+void IDirectFBSurface::DrawLine (const DFBRegion &line)
+{
+ DFBCHECK( iface->DrawLine (iface, line.x1, line.y1, line.x2, line.y2) );
+}
+
+IDirectFBSurface IDirectFBSurface::GetSubSurface (int x, int y,
+ int width, int height)
+{
+ DFBRectangle rect( x, y, width, height );
+
+ IDirectFBSurface_C *idirectfbsurface;
+
+ DFBCHECK( iface->GetSubSurface (iface, &rect, &idirectfbsurface) );
+
+ return IDirectFBSurface (idirectfbsurface);
+}
+
+void IDirectFBSurface::Dump (const char *directory,
+ const char *prefix)
+{
+ DFBCHECK( iface->Dump (iface, directory, prefix) );
+}
+
+void IDirectFBSurface::DisableAcceleration (DFBAccelerationMask mask)
+{
+ DFBCHECK( iface->DisableAcceleration (iface, mask) );
+}
+
+IDirectFBGL *IDirectFBSurface::GetGL()
+{
+ IDirectFBGL *idirectfbgl;
+
+ DFBCHECK( iface->GetGL (iface, &idirectfbgl) );
+
+ return idirectfbgl;
+}
+
+void IDirectFBSurface::GetClip (DFBRegion *clip)
+{
+ DFBCHECK( iface->GetClip (iface, clip) );
+}
+
+int IDirectFBSurface::GetFramebufferOffset()
+{
+ int offset;
+
+ DFBCHECK( iface->GetFramebufferOffset (iface, &offset) );
+
+ return offset;
+}
+
+void IDirectFBSurface::ReleaseSource()
+{
+ DFBCHECK( iface->ReleaseSource (iface) );
+}
+
+void IDirectFBSurface::SetIndexTranslation (const int *indices,
+ int num_indices)
+{
+ DFBCHECK( iface->SetIndexTranslation (iface, indices, num_indices) );
+}
+
+void IDirectFBSurface::Read( void *ptr,
+ int pitch,
+ const DFBRectangle *rect )
+{
+ DFBRectangle r;
+
+ if (!rect) {
+ r.x = 0;
+ r.y = 0;
+
+ GetSize( &r.w, &r.h );
+
+ rect = &r;
+ }
+
+ DFBCHECK( iface->Read (iface, rect, ptr, pitch) );
+}
+
+void IDirectFBSurface::Write( const void *ptr,
+ int pitch,
+ const DFBRectangle *rect )
+{
+ DFBRectangle r;
+
+ if (!rect) {
+ r.x = 0;
+ r.y = 0;
+
+ GetSize( &r.w, &r.h );
+
+ rect = &r;
+ }
+
+ DFBCHECK( iface->Write (iface, rect, ptr, pitch) );
+}
+
diff --git a/Source/++DFB/++dfb/idirectfbvideoprovider.cpp b/Source/++DFB/++dfb/idirectfbvideoprovider.cpp
new file mode 100755
index 0000000..b16385c
--- /dev/null
+++ b/Source/++DFB/++dfb/idirectfbvideoprovider.cpp
@@ -0,0 +1,139 @@
+/*
+ (c) Copyright 2000-2002 convergence integrated media GmbH.
+ All rights reserved.
+
+ Written by Denis Oliver Kropp <dok@convergence.de>,
+ Andreas Hundt <andi@convergence.de> and
+ Sven Neumann <sven@convergence.de>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+*/
+
+#include "++dfb.h"
+#include "++dfb_internal.h"
+
+DFBVideoProviderCapabilities IDirectFBVideoProvider::GetCapabilities()
+{
+ DFBVideoProviderCapabilities caps;
+
+ DFBCHECK( iface->GetCapabilities (iface, &caps) );
+
+ return caps;
+}
+
+void IDirectFBVideoProvider::GetSurfaceDescription (DFBSurfaceDescription *dsc)
+{
+ DFBCHECK( iface->GetSurfaceDescription (iface, dsc) );
+}
+
+void IDirectFBVideoProvider::GetStreamDescription (DFBStreamDescription *dsc)
+{
+ DFBCHECK( iface->GetStreamDescription (iface, dsc) );
+}
+
+void IDirectFBVideoProvider::PlayTo (IDirectFBSurface *destination,
+ DFBRectangle *destination_rect,
+ DVFrameCallback callback,
+ void *ctx)
+{
+ DFBCHECK( iface->PlayTo (iface, destination->get_iface(),
+ destination_rect, callback, ctx) );
+}
+
+void IDirectFBVideoProvider::Stop()
+{
+ DFBCHECK( iface->Stop (iface) );
+}
+
+DFBVideoProviderStatus IDirectFBVideoProvider::GetStatus()
+{
+ DFBVideoProviderStatus status;
+
+ DFBCHECK( iface->GetStatus (iface, &status) );
+
+ return status;
+}
+
+void IDirectFBVideoProvider::SeekTo (double seconds)
+{
+ DFBCHECK( iface->SeekTo (iface, seconds) );
+}
+
+double IDirectFBVideoProvider::GetPos()
+{
+ double pos;
+
+ DFBCHECK( iface->GetPos (iface, &pos) );
+
+ return pos;
+}
+
+double IDirectFBVideoProvider::GetLength()
+{
+ double length;
+
+ DFBCHECK( iface->GetPos (iface, &length) );
+
+ return length;
+}
+
+void IDirectFBVideoProvider::GetColorAdjustment (DFBColorAdjustment *adj)
+{
+ DFBCHECK( iface->GetColorAdjustment (iface, adj) );
+}
+
+void IDirectFBVideoProvider::SetColorAdjustment (DFBColorAdjustment &adj)
+{
+ DFBCHECK( iface->SetColorAdjustment (iface, &adj) );
+}
+
+void IDirectFBVideoProvider::SendEvent (DFBEvent &evt)
+{
+ DFBCHECK( iface->SendEvent (iface, &evt) );
+}
+
+void IDirectFBVideoProvider::SetPlaybackFlags (DFBVideoProviderPlaybackFlags flags)
+{
+ DFBCHECK( iface->SetPlaybackFlags (iface, flags) );
+}
+
+void IDirectFBVideoProvider::SetSpeed (double multiplier)
+{
+ DFBCHECK( iface->SetSpeed (iface, multiplier) );
+}
+
+double IDirectFBVideoProvider::GetSpeed()
+{
+ double multiplier = -1;
+
+ DFBCHECK( iface->GetSpeed (iface, &multiplier) );
+
+ return multiplier;
+}
+
+void IDirectFBVideoProvider::SetVolume (float level)
+{
+ DFBCHECK( iface->SetVolume (iface, level) );
+}
+
+float IDirectFBVideoProvider::GetVolume()
+{
+ float level = -1;
+
+ DFBCHECK( iface->GetVolume (iface, &level) );
+
+ return level;
+ }
diff --git a/Source/++DFB/++dfb/idirectfbwindow.cpp b/Source/++DFB/++dfb/idirectfbwindow.cpp
new file mode 100755
index 0000000..771020a
--- /dev/null
+++ b/Source/++DFB/++dfb/idirectfbwindow.cpp
@@ -0,0 +1,251 @@
+/*
+ (c) Copyright 2000-2002 convergence integrated media GmbH.
+ All rights reserved.
+
+ Written by Denis Oliver Kropp <dok@convergence.de>,
+ Andreas Hundt <andi@convergence.de> and
+ Sven Neumann <sven@convergence.de>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+*/
+
+#include "++dfb.h"
+#include "++dfb_internal.h"
+
+DFBWindowID IDirectFBWindow::GetID()
+{
+ DFBWindowID window_id;
+
+ DFBCHECK( iface->GetID (iface, &window_id) );
+
+ return window_id;
+}
+
+void IDirectFBWindow::GetPosition (int *x, int *y)
+{
+ DFBCHECK( iface->GetPosition (iface, x, y) );
+}
+
+void IDirectFBWindow::GetSize (int *width,
+ int *height)
+{
+ DFBCHECK( iface->GetSize (iface, width, height) );
+}
+
+IDirectFBEventBuffer IDirectFBWindow::CreateEventBuffer()
+{
+ IDirectFBEventBuffer_C *idirectfbeventbuffer;
+
+ DFBCHECK( iface->CreateEventBuffer (iface, &idirectfbeventbuffer) );
+
+ static IDirectFBEventBuffer *buffer = new IDirectFBEventBuffer (idirectfbeventbuffer);
+ return *buffer;
+}
+
+void IDirectFBWindow::AttachEventBuffer (IDirectFBEventBuffer *buffer)
+{
+ DFBCHECK( iface->AttachEventBuffer (iface, buffer->get_iface()) );
+}
+
+void IDirectFBWindow::DetachEventBuffer (IDirectFBEventBuffer *buffer)
+{
+ DFBCHECK( iface->DetachEventBuffer (iface, buffer->get_iface()) );
+}
+
+void IDirectFBWindow::EnableEvents (DFBWindowEventType mask)
+{
+ DFBCHECK( iface->EnableEvents (iface, mask) );
+}
+
+void IDirectFBWindow::DisableEvents (DFBWindowEventType mask)
+{
+ DFBCHECK( iface->DisableEvents (iface, mask) );
+}
+
+IDirectFBSurface IDirectFBWindow::GetSurface()
+{
+ IDirectFBSurface_C *idirectfbsurface;
+
+ DFBCHECK( iface->GetSurface (iface, &idirectfbsurface) );
+
+ return IDirectFBSurface (idirectfbsurface);
+}
+
+void IDirectFBWindow::SetOptions (DFBWindowOptions options)
+{
+ DFBCHECK( iface->SetOptions (iface, options) );
+}
+
+DFBWindowOptions IDirectFBWindow::GetOptions ()
+{
+ DFBWindowOptions options;
+
+ DFBCHECK( iface->GetOptions (iface, &options) );
+
+ return options;
+}
+
+void IDirectFBWindow::SetColorKey (u8 r, u8 g, u8 b)
+{
+ DFBCHECK( iface->SetColorKey (iface, r, g, b) );
+}
+
+void IDirectFBWindow::SetColorKeyIndex (unsigned int index)
+{
+ DFBCHECK( iface->SetColorKeyIndex (iface, index) );
+}
+
+void IDirectFBWindow::SetOpacity (u8 opacity)
+{
+ DFBCHECK( iface->SetOpacity (iface, opacity) );
+}
+
+void IDirectFBWindow::SetOpaqueRegion (int x1, int y1, int x2, int y2)
+{
+ DFBCHECK( iface->SetOpaqueRegion (iface, x1, y1, x2, y2) );
+}
+
+u8 IDirectFBWindow::GetOpacity()
+{
+ u8 opacity;
+
+ DFBCHECK( iface->GetOpacity (iface, &opacity) );
+
+ return opacity;
+}
+
+void IDirectFBWindow::SetCursorShape (IDirectFBSurface *shape,
+ int hot_x,
+ int hot_y)
+{
+ DFBCHECK( iface->SetCursorShape (iface, shape->get_iface(), hot_x, hot_y) );
+}
+
+void IDirectFBWindow::RequestFocus()
+{
+ DFBCHECK( iface->RequestFocus (iface) );
+}
+
+void IDirectFBWindow::GrabKeyboard()
+{
+ DFBCHECK( iface->GrabKeyboard (iface) );
+}
+
+void IDirectFBWindow::UngrabKeyboard()
+{
+ DFBCHECK( iface->UngrabKeyboard (iface) );
+}
+
+void IDirectFBWindow::GrabPointer()
+{
+ DFBCHECK( iface->GrabPointer (iface) );
+}
+
+void IDirectFBWindow::UngrabPointer()
+{
+ DFBCHECK( iface->UngrabPointer (iface) );
+}
+
+void IDirectFBWindow::GrabKey (DFBInputDeviceKeySymbol symbol,
+ DFBInputDeviceModifierMask modifiers)
+{
+ DFBCHECK( iface->GrabKey (iface, symbol, modifiers) );
+}
+
+void IDirectFBWindow::UngrabKey (DFBInputDeviceKeySymbol symbol,
+ DFBInputDeviceModifierMask modifiers)
+{
+ DFBCHECK( iface->UngrabKey (iface, symbol, modifiers) );
+}
+
+void IDirectFBWindow::Move (int dx, int dy)
+{
+ DFBCHECK( iface->Move (iface, dx, dy) );
+}
+
+void IDirectFBWindow::MoveTo (int x, int y)
+{
+ DFBCHECK( iface->MoveTo (iface, x, y) );
+}
+
+void IDirectFBWindow::Resize (int width,
+ int height)
+{
+ DFBCHECK( iface->Resize (iface, width, height) );
+}
+
+void IDirectFBWindow::SetStackingClass (DFBWindowStackingClass stacking_class)
+{
+ DFBCHECK( iface->SetStackingClass (iface, stacking_class) );
+}
+
+void IDirectFBWindow::Raise()
+{
+ DFBCHECK( iface->Raise (iface) );
+}
+
+void IDirectFBWindow::Lower()
+{
+ DFBCHECK( iface->Lower (iface) );
+}
+
+void IDirectFBWindow::RaiseToTop()
+{
+ DFBCHECK( iface->RaiseToTop (iface) );
+}
+
+void IDirectFBWindow::LowerToBottom()
+{
+ DFBCHECK( iface->LowerToBottom (iface) );
+}
+
+void IDirectFBWindow::PutAtop (IDirectFBWindow *lower)
+{
+ DFBCHECK( iface->PutAtop (iface, lower->iface) );
+}
+
+void IDirectFBWindow::PutBelow (IDirectFBWindow *upper)
+{
+ DFBCHECK( iface->PutBelow (iface, upper->iface) );
+}
+
+void IDirectFBWindow::Close()
+{
+ DFBCHECK( iface->Close (iface) );
+}
+
+void IDirectFBWindow::Destroy()
+{
+ DFBCHECK( iface->Destroy (iface) );
+}
+
+void IDirectFBWindow::SetBounds (int x,
+ int y,
+ int width,
+ int height)
+{
+ DFBCHECK( iface->SetBounds (iface, x, y, width, height) );
+}
+
+void IDirectFBWindow::SetDstGeometry (DFBWindowGeometry *geometry)
+{
+ DFBCHECK( iface->SetDstGeometry (iface, geometry) );
+}
+
+void IDirectFBWindow::SetSrcGeometry (DFBWindowGeometry *geometry)
+{
+ DFBCHECK( iface->SetSrcGeometry (iface, geometry) );
+}
diff --git a/Source/++DFB/++dfb/ppdfb.cpp b/Source/++DFB/++dfb/ppdfb.cpp
new file mode 100755
index 0000000..fce3ed9
--- /dev/null
+++ b/Source/++DFB/++dfb/ppdfb.cpp
@@ -0,0 +1,87 @@
+/*
+ (c) Copyright 2000-2002 convergence integrated media GmbH.
+ All rights reserved.
+
+ Written by Denis Oliver Kropp <dok@convergence.de>,
+ Andreas Hundt <andi@convergence.de> and
+ Sven Neumann <sven@convergence.de>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+*/
+
+#include <stddef.h>
+#include <string.h>
+
+#include "++dfb.h"
+#include "++dfb_internal.h"
+
+DFBException::DFBException (const char *action, DFBResult result_code)
+{
+ const char *tmp = action;
+
+ while (*tmp != 0) {
+ if (!strncmp (tmp, " IDirectFB", 10)) {
+ action = tmp + 1;
+ break;
+ }
+
+ tmp++;
+ }
+
+ this->action = action;
+ this->result_code = result_code;
+
+ std::cerr << this << std::endl;
+}
+
+const char *DFBException::GetAction() const
+{
+ return action;
+}
+
+const char *DFBException::GetResult() const
+{
+ return DirectFBErrorString (result_code);
+}
+
+DFBResult DFBException::GetResultCode() const
+{
+ return result_code;
+}
+
+std::ostream &operator << (std::ostream &stream, DFBException *ex)
+{
+ stream << ex->GetAction() << " -> " << ex->GetResult();
+
+ return stream;
+}
+
+
+
+void DirectFB::Init (int *argc, char *(*argv[]))
+{
+ DFBCHECK( DirectFBInit (argc, argv) );
+}
+
+IDirectFB DirectFB::Create ()
+{
+ IDirectFB_C *idirectfb;
+
+ DFBCHECK( DirectFBCreate (&idirectfb) );
+
+ return IDirectFB (idirectfb);
+}
+
diff --git a/Source/++DFB/.DESTDIR b/Source/++DFB/.DESTDIR
new file mode 100755
index 0000000..56a60b2
--- /dev/null
+++ b/Source/++DFB/.DESTDIR
@@ -0,0 +1 @@
+/opt/sh7723
diff --git a/Source/++DFB/AUTHORS b/Source/++DFB/AUTHORS
new file mode 100755
index 0000000..0f33b1b
--- /dev/null
+++ b/Source/++DFB/AUTHORS
@@ -0,0 +1 @@
+Denis Oliver Kropp <dok@directfb.org>
diff --git a/Source/++DFB/COPYING b/Source/++DFB/COPYING
new file mode 100755
index 0000000..e69de29
--- /dev/null
+++ b/Source/++DFB/COPYING
diff --git a/Source/++DFB/ChangeLog b/Source/++DFB/ChangeLog
new file mode 100755
index 0000000..3959e69
--- /dev/null
+++ b/Source/++DFB/ChangeLog
@@ -0,0 +1,527 @@
+2007-02-13 dok 20:05:42 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: examples/.cvsignore (1.2) (+1 -0;)
+ examples/dfbplay.cpp (1.1) (27J3qZVNZqCPTm6s; )
+ examples/Makefile.am (1.4) (+1 -2;)
+
+ oops, here it is
+
+2007-02-13 mws 19:52:07
+
+ Files: examples/Makefile.am (1.3) (+2 -1;)
+
+ removed dfbplay from examples Makefile.am for now
+ reason: source is not present
+ this fixed compiling again
+
+2007-02-02 dok 22:02:20 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: ChangeLog (1.4) (+37 -0;)
+ examples/tests/data/Makefile.am (1.1) (4I4Dlvf8yE7NTX4s; )
+ examples/tests/data/.cvsignore (1.1) (4I4Dlvf8yE7NTX4s; )
+ examples/tests/Makefile.am (1.2) (+2 -2;)
+ configure.in (1.9) (+2 -1;)
+
+ distfix
+
+2007-02-02 dok 20:46:45 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: ++dfb/idirectfbsurface.cpp (1.10) (+9 -0;)
+ include/idirectfbsurface.h (1.12) (+2 -0;)
+
+ IDirectFBSurface::GetFramebufferOffset()
+
+2007-02-02 dok 20:43:08 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: ChangeLog (1.3) (+168 -54;)
+ include/idirectfbwindow.h (1.4) (+9 -2;)
+ include/idirectfbsurface.h (1.11) (+4 -0;)
+ include/idirectfbdisplaylayer.h (1.6) (+1 -0;)
+ examples/tests/data/test32x32x16.dfiff (1.1) (HVcZKVYh368ysX4s; )
+ examples/tests/data/test32x32.tif (1.1) (HVcZKVYh368ysX4s; )
+ examples/tests/data/test32x32.ppm (1.1) (HVcZKVYh368ysX4s; )
+ examples/tests/data/test32x32.png (1.1) (HVcZKVYh368ysX4s; )
+ examples/tests/data/test32x32.jpeg (1.1) (HVcZKVYh368ysX4s; )
+ examples/tests/data/test32x32.gif (1.1) (HVcZKVYh368ysX4s; )
+ examples/tests/data/test32x32.dfiff (1.1) (HVcZKVYh368ysX4s; )
+ examples/tests/data/test32x32.bmp (1.1) (HVcZKVYh368ysX4s; )
+ examples/tests/images.cpp (1.1) (HVcZKVYh368ysX4s; )
+ examples/tests/Makefile.am (1.1) (HVcZKVYh368ysX4s; )
+ examples/tests/.cvsignore (1.1) (HVcZKVYh368ysX4s; )
+ examples/Makefile.am (1.2) (+7 -1;)
+ ++dfb/idirectfbwindow.cpp (1.3) (+16 -2;)
+ ++dfb/idirectfbsurface.cpp (1.9) (+12 -0;)
+ ++dfb/idirectfbdisplaylayer.cpp (1.6) (+5 -0;)
+ configure.in (1.8) (+4 -3;)
+
+ Update for 1.0.0 and some test stuff I had lying around.
+
+2007-01-08 marka 16:01:10
+
+ Files: ++dfb.spec.in (1.1) (N5EIaVN9Qw7AHI1s; )
+ configure.in (1.7) (+1 -0;)
+ .cvsignore (1.3) (+1 -0;)
+
+ Added spec file for building RPM packages.
+
+2006-12-17 mws 22:48:07
+
+ Files: .cvsignore (1.2) (+10 -0;)
+
+ updated cvsignore a bit
+
+2006-12-17 mws 22:29:31
+
+ Files: include/++dfb.h (1.6) (+4 -4;)
+
+ fix wrong copy ctor argument;
+ thanks to Phil Endecott for pointing out.
+
+2006-10-01 mws 00:23:12
+
+ Files: ++dfb/idirectfbfont.cpp (1.4) (+10 -0;)
+ include/idirectfbfont.h (1.4) (+7 -0;)
+
+ follow up integration of GetStringBreak in DirectFB
+ for testing purposes in ++dfb;
+
+2006-07-08 klan 14:16:06
+
+ Files: ++dfb/idirectfbdisplaylayer.cpp (1.5) (+12 -0;)
+ include/idirectfbvideoprovider.h (1.7) (+9 -1;)
+ include/idirectfbsurface.h (1.10) (+17 -7;)
+ include/idirectfbscreen.h (1.4) (+3 -0;)
+ include/idirectfbfont.h (1.3) (+7 -0;)
+ include/idirectfbdisplaylayer.h (1.5) (+5 -0;)
+ ++dfb/idirectfbvideoprovider.cpp (1.5) (+34 -2;)
+ ++dfb/idirectfbsurface.cpp (1.8) (+37 -11;)
+ ++dfb/idirectfbscreen.cpp (1.3) (+6 -0;)
+ ++dfb/idirectfbfont.cpp (1.3) (+18 -0;)
+
+ Updated to current DirectFB API.
+
+2006-05-20 klan 13:25:32
+
+ Files: configure.in (1.6) (+1 -1;)
+
+ 0.9.26 required.
+
+2006-05-20 klan 13:24:52
+
+ Files: ++dfb/idirectfbinputdevice.cpp (1.2) (+5 -0;)
+ include/idirectfbwindow.h (1.3) (+1 -0;)
+ include/idirectfbinputdevice.h (1.3) (+1 -0;)
+ ++dfb/idirectfbwindow.cpp (1.2) (+5 -0;)
+
+ Added IDirectFBWindow::DetachEventBuffer() and IDirectFBInputDevice::DetachEventBuffer().
+
+2006-05-07 dok 00:00:35 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: examples/dfbswitch.cpp (1.2) (+19 -1;)
+
+ Pass "-l" to get a list of modes.
+
+2006-03-26 dok 18:56:52 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: autogen.sh (1.2) (+1 -1;)
+
+ Fix autoconf version detection.
+
+2006-01-15 klan 19:18:02
+
+ Files: ++dfb/idirectfbvideoprovider.cpp (1.4) (+9 -0;)
+ include/idirectfbvideoprovider.h (1.6) (+2 -1;)
+
+ Added IDirectFBVideoProvider::GetStatus().
+
+2006-01-15 klan 12:25:59
+
+ Files: ++dfb/idirectfbeventbuffer.cpp (1.3) (+9 -0;)
+ include/idirectfbvideoprovider.h (1.5) (+1 -0;)
+ include/idirectfbsurface.h (1.9) (+2 -0;)
+ include/idirectfbeventbuffer.h (1.4) (+3 -0;)
+ ++dfb/idirectfbvideoprovider.cpp (1.3) (+5 -0;)
+ ++dfb/idirectfbsurface.cpp (1.7) (+4 -0;)
+
+ Implemented IDirectFBSurface::GetClip(), IDirectFBEventBuffer::EnableStatistics(),
+ IDirectFBEventBuffer::GetStatistics(), IDirectFBVideoProvider::GetStreamDescription().
+
+2005-11-04 klan 09:43:41
+
+ Files: configure.in (1.5) (+1 -1;)
+
+ Version 0.9.25.
+
+2005-10-30 klan 18:34:44
+
+ Files: ++dfb/idirectfbvideoprovider.cpp (1.2) (+5 -0;)
+ include/idirectfbvideoprovider.h (1.4) (+2 -0;)
+
+ IDirectFBVideoProvider::SendEvent().
+
+2005-10-26 klan 16:30:06
+
+ Files: ChangeLog (1.2) (+360 -0;)
+
+ Updated ChangeLog.
+
+2005-10-26 klan 16:29:03
+
+ Files: configure.in (1.4) (+1 -1;)
+
+ Version 0.9.24.
+
+2005-10-26 klan 16:28:28
+
+ Files: ++dfb/idirectfbdatabuffer.cpp (1.2) (+14 -0;)
+ include/idirectfbvideoprovider.h (1.3) (+2 -0;)
+ include/idirectfbdatabuffer.h (1.3) (+2 -0;)
+
+ Follow recent API changes.
+
+2005-09-14 dok 14:28:43 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: include/idirectfbeventbuffer.h (1.3) (+1 -1;)
+
+ Thanks again to Mark Adams <mark147m@gmail.com>!
+
+ He changed WaitForEventWithTimeout() so that it doesn't throw an
+ exception when a timeout occurs, which is a normal circumstance.
+
+ Instead it returns true if events are available or false after a timeout.
+
+2005-09-14 dok 14:28:42 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: ++dfb/idirectfbeventbuffer.cpp (1.2) (+9 -2;)
+
+ Thanks again to Mark Adams <mark147m@gmail.com>!
+
+ He changed WaitForEventWithTimeout() so that it doesn't throw an
+ exception when a timeout occurs, which is a normal circumstance.
+
+ Instead it returns true if events are available or false after a timeout.
+
+2005-09-14 dok 14:05:27 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: ++dfb/idirectfbdisplaylayer.cpp (1.4) (+1 -1;)
+
+ Fixed SetColorAdjustment(), thanks to Mark Adams <mark147m@gmail.com>!
+
+2005-06-06 mws 19:51:19
+
+ Files: include/++dfb.h (1.5) (+4 -4;)
+ include/idirectfbsurface.h (1.8) (+1 -1;)
+
+ use c++ style casting;
+
+2005-06-01 mws 00:19:14
+
+ Files: include/idirectfb.h (1.4) (+8 -8;)
+ include/idirectfbsurface.h (1.7) (+2 -2;)
+
+ fix wrong template param in copy constructor;
+ more const'ed member functions;
+ fix return type in template copy constructor;
+
+ ++dfb.h | 9 +++++----
+ idirectfb.cpp | 12 ++++++------
+ idirectfb.h | 16 ++++++++--------
+ idirectfbsurface.cpp | 6 +++---
+ idirectfbsurface.h | 4 ++--
+ 5 files changed, 24 insertions(+), 23 deletions(-)
+
+2005-06-01 mws 00:19:13
+
+ Files: ++dfb/idirectfb.cpp (1.3) (+6 -6;)
+ include/++dfb.h (1.4) (+5 -4;)
+ ++dfb/idirectfbsurface.cpp (1.6) (+3 -3;)
+
+ fix wrong template param in copy constructor;
+ more const'ed member functions;
+ fix return type in template copy constructor;
+
+ ++dfb.h | 9 +++++----
+ idirectfb.cpp | 12 ++++++------
+ idirectfb.h | 16 ++++++++--------
+ idirectfbsurface.cpp | 6 +++---
+ idirectfbsurface.h | 4 ++--
+ 5 files changed, 24 insertions(+), 23 deletions(-)
+
+2005-05-30 mws 21:36:57
+
+ Files: ++dfb/idirectfbfont.cpp (1.2) (+8 -8;)
+ include/idirectfbwindow.h (1.2) (+9 -2;)
+ include/idirectfbvideoprovider.h (1.2) (+9 -3;)
+ include/idirectfbsurface.h (1.6) (+9 -3;)
+ include/idirectfbscreen.h (1.3) (+9 -2;)
+ include/idirectfbpalette.h (1.2) (+9 -2;)
+ include/idirectfbinputdevice.h (1.2) (+9 -3;)
+ include/idirectfbimageprovider.h (1.2) (+9 -3;)
+ include/idirectfbfont.h (1.2) (+17 -10;)
+ include/idirectfbeventbuffer.h (1.2) (+9 -2;)
+ include/idirectfbdisplaylayer.h (1.4) (+9 -2;)
+ include/idirectfbdatabuffer.h (1.2) (+9 -2;)
+ include/idirectfb.h (1.3) (+9 -3;)
+ include/++dfb.h (1.3) (+54 -101;)
+
+ changed ++DFB class interface from
+ huge #define macro to a template class
+ adapted all clientclasses to be derived;
+ consted some of the idirectfbfont member functions;
+
+ changed files:
+ ++dfb.h | 155 ++++++++++++++++-------------------------------
+ idirectfb.h | 12 ++-
+ idirectfbdatabuffer.h | 11 ++-
+ idirectfbdisplaylayer.h | 11 ++-
+ idirectfbeventbuffer.h | 11 ++-
+ idirectfbfont.cpp | 16 ++--
+ idirectfbfont.h | 27 +++++---
+ idirectfbimageprovider.h | 12 ++-
+ idirectfbinputdevice.h | 12 ++-
+ idirectfbpalette.h | 11 ++-
+ idirectfbscreen.h | 11 ++-
+ idirectfbsurface.h | 12 ++-
+ idirectfbvideoprovider.h | 12 ++-
+ idirectfbwindow.h | 11 ++-
+ 14 files changed, 178 insertions(+), 146 deletions(-)
+
+2005-04-06 dok 21:01:41 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: ++dfb/idirectfb.cpp (1.2) (+2 -2;)
+ include/idirectfb.h (1.2) (+1 -1;)
+
+ GetCardCapabilities() -> GetDeviceDescription()
+
+2005-03-22 dok 12:46:10 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: ++dfb/idirectfbscreen.cpp (1.2) (+74 -0;)
+ include/idirectfbscreen.h (1.2) (+39 -0;)
+
+ Added missing methods.
+
+2005-03-11 dok 13:26:08 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: ++dfb/idirectfbsurface.cpp (1.5) (+6 -1;)
+ include/idirectfbsurface.h (1.5) (+2 -1;)
+
+ More SetColor() convenience.
+
+2005-02-28 dok 10:04:41 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: configure.in (1.3) (+1 -1;)
+ include/idirectfbsurface.h (1.4) (+4 -1;)
+ ++dfb/idirectfbsurface.cpp (1.4) (+5 -0;)
+
+ Added IDirectFBSurface::DisableAcceleration().
+
+2005-02-27 dok 12:14:03 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: ++dfb/idirectfbdisplaylayer.cpp (1.3) (+8 -0;)
+ include/idirectfbsurface.h (1.3) (+3 -1;)
+ include/idirectfbdisplaylayer.h (1.3) (+4 -0;)
+ ++dfb/idirectfbsurface.cpp (1.3) (+6 -1;)
+
+ Added IDirectFBDisplayLayer::SetScreenRectangle().
+
+ Added IDirectFBSurface::FillRectangles().
+
+2005-02-10 dok 15:38:41 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: ++dfb/idirectfbsurface.cpp (1.2) (+5 -0;)
+ include/idirectfbsurface.h (1.2) (+5 -1;)
+
+ Added IDirectFBSurface::SetAlphaRamp().
+
+ Changed default alpha of Clear() from 0xff to 0x00.
+
+2005-01-19 dok 23:09:50 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: include/++dfb.h (1.2) (+9 -0;)
+
+ Fix reference counting by implementing the
+ constructor "Interface( const Interface &other )".
+
+2005-01-19 dok 21:30:40 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: ++dfb/idirectfbdisplaylayer.cpp (1.2) (+6 -0;)
+ include/idirectfbdisplaylayer.h (1.2) (+2 -0;)
+
+ Added IDirectFBDisplayLayer::SetScreenPosition().
+
+2005-01-19 dok 21:20:37 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: configure.in (1.2) (+1 -1;)
+
+ 0.9.22
+
+2004-08-17 dok 20:07:54 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: ++dfb/++dfb.cpp (1.2) (+0 -0;)
+ ++dfb/ppdfb.cpp (1.1) ( )
+ ++dfb/Makefile.am (1.3) (+1 -1;)
+
+ libfool!
+
+2004-08-17 dok 19:54:49 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: ++dfb/++dfb.cpp (1.1) ( )
+ ++dfb/dfb++_internal.h (1.2) (+0 -0;)
+ ++dfb/dfb++.cpp (1.2) (+0 -0;)
+ ++dfb/Makefile.am (1.2) (+3 -3;)
+ ++dfb/++dfb_internal.h (1.1) ( )
+
+ Forgot some renaming.
+
+2004-08-17 dok 19:50:07 Denis Oliver Kropp <dok@directfb.org>
+
+ Files: ++dfb-config.in (1.1) ( )
+ include/idirectfbwindow.h (1.1) ( )
+ include/idirectfbvideoprovider.h (1.1) ( )
+ include/idirectfbsurface.h (1.1) ( )
+ include/idirectfbscreen.h (1.1) ( )
+ include/idirectfbpalette.h (1.1) ( )
+ include/idirectfbinputdevice.h (1.1) ( )
+ include/idirectfbimageprovider.h (1.1) ( )
+ include/idirectfbfont.h (1.1) ( )
+ include/idirectfbeventbuffer.h (1.1) ( )
+ include/idirectfbdisplaylayer.h (1.1) ( )
+ include/idirectfbdatabuffer.h (1.1) ( )
+ include/idirectfb.h (1.1) ( )
+ include/Makefile.am (1.1) ( )
+ include/.cvsignore (1.1) ( )
+ include/++dfb.h (1.1) ( )
+ examples/simple.cpp (1.1) ( )
+ examples/dfbswitch.cpp (1.1) ( )
+ examples/dfbshow.cpp (1.1) ( )
+ examples/dfbimage.h (1.1) ( )
+ examples/dfbimage.cpp (1.1) ( )
+ examples/dfbapp.h (1.1) ( )
+ examples/dfbapp.cpp (1.1) ( )
+ examples/Makefile.am (1.1) ( )
+ examples/.cvsignore (1.1) ( )
+ ++dfb/idirectfbwindow.cpp (1.1) ( )
+ ++dfb/idirectfbvideoprovider.cpp (1.1) ( )
+ ++dfb/idirectfbsurface.cpp (1.1) ( )
+ ++dfb/idirectfbscreen.cpp (1.1) ( )
+ ++dfb/idirectfbpalette.cpp (1.1) ( )
+ ++dfb/idirectfbinputdevice.cpp (1.1) ( )
+ ++dfb/idirectfbimageprovider.cpp (1.1) ( )
+ ++dfb/idirectfbfont.cpp (1.1) ( )
+ ++dfb/idirectfbeventbuffer.cpp (1.1) ( )
+ ++dfb/idirectfbdisplaylayer.cpp (1.1) ( )
+ ++dfb/idirectfbdatabuffer.cpp (1.1) ( )
+ ++dfb/idirectfb.cpp (1.1) ( )
+ ++dfb/dfb++_internal.h (1.1) ( )
+ ++dfb/dfb++.cpp (1.1) ( )
+ ++dfb/Makefile.am (1.1) ( )
+ ++dfb/.cvsignore (1.1) ( )
+ configure.in (1.1) ( )
+ autogen.sh (1.1) ( )
+ README (1.1) ( )
+ NEWS (1.1) ( )
+ Makefile.am (1.1) ( )
+ ChangeLog (1.1) ( )
+ AUTHORS (1.1) ( )
+ .cvsignore (1.1) ( )
+ ++dfb.pc.in (1.1) ( )
+
+ ++DFB is an advanced version of DFB++
+
+ It's an incompatible fork with fundamental changes.
+
+ Applications no longer deal with interface pointers. The classes
+ wrapping around interfaces are used a container for an interface
+ pointer, providing garbage collection the "direct" way 8-)
+
+ By overwriting certain operators, e.g. '=', the need to care
+ about AddRef() and Release() has been eliminated. These methods
+ aren't even available anymore.
+
+ All interfaces are released automatically now, either caused by
+ finalization of an object having interface members, or by leaving
+ a stack frame with an interface hold in a local variable.
+
+ This also eliminates duplication of code caused by the lack of
+ a C++ equivalent to Java's "finally" block.
+
+ The following code is using DFB++:
+
+ void DFBImage::Load( std::string filename )
+ {
+ IDirectFB *dfb = NULL;
+ IDirectFBImageProvider *provider = NULL;
+ IDirectFBSurface *surface = NULL;
+
+ try {
+ DFBSurfaceDescription desc;
+
+ dfb = DirectFB::Create();
+
+ provider = dfb->CreateImageProvider( filename.data() );
+
+ provider->GetSurfaceDescription( &desc );
+
+ surface = dfb->CreateSurface( desc );
+
+ provider->RenderTo( surface, NULL );
+ }
+ /* Work around missing "finally". */
+ catch (...) {
+ if (surface)
+ surface->Release();
+
+ if (provider)
+ provider->Release();
+
+ if (dfb)
+ dfb->Release();
+
+ throw;
+ }
+
+ m_surface = surface; /* Keep pointer to interface object. */
+
+ provider->Release();
+ dfb->Release();
+ }
+
+ This is how it's looking using ++DFB:
+
+ void DFBImage::Load( std::string filename )
+ {
+ IDirectFB dfb;
+ IDirectFBImageProvider provider;
+ IDirectFBSurface surface;
+ DFBSurfaceDescription desc;
+
+ dfb = DirectFB::Create();
+
+ provider = dfb.CreateImageProvider( filename.data() );
+
+ provider.GetSurfaceDescription( &desc );
+
+ surface = dfb.CreateSurface( desc );
+
+ provider.RenderTo( surface, NULL );
+
+ m_surface = surface;
+ }
+
+ The last line instructs the container object 'm_surface' (member)
+ to take the interface pointer from 'surface' after calling AddRef().
+
+ Leaving the stack frame due to an exception or a return causes
+ finalization of the local container objects 'dfb', 'provider'
+ and 'surface' calling Release() if they've already been assigned
+ an interface pointer.
+
+ The suggested way of passing interfaces via parameters
+ is to use C++ references as in this declaration:
+
+ void PrepareTarget( IDirectFBSurface &target );
+
+ Explicitly releasing an interface is as simple as this:
+
+ m_surface = NULL;
+
diff --git a/Source/++DFB/INSTALL b/Source/++DFB/INSTALL
new file mode 100755
index 0000000..d3c5b40
--- /dev/null
+++ b/Source/++DFB/INSTALL
@@ -0,0 +1,237 @@
+Installation Instructions
+*************************
+
+Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
+2006, 2007 Free Software Foundation, Inc.
+
+This file is free documentation; the Free Software Foundation gives
+unlimited permission to copy, distribute and modify it.
+
+Basic Installation
+==================
+
+Briefly, the shell commands `./configure; make; make install' should
+configure, build, and install this package. The following
+more-detailed instructions are generic; see the `README' file for
+instructions specific to this package.
+
+ The `configure' shell script attempts to guess correct values for
+various system-dependent variables used during compilation. It uses
+those values to create a `Makefile' in each directory of the package.
+It may also create one or more `.h' files containing system-dependent
+definitions. Finally, it creates a shell script `config.status' that
+you can run in the future to recreate the current configuration, and a
+file `config.log' containing compiler output (useful mainly for
+debugging `configure').
+
+ It can also use an optional file (typically called `config.cache'
+and enabled with `--cache-file=config.cache' or simply `-C') that saves
+the results of its tests to speed up reconfiguring. Caching is
+disabled by default to prevent problems with accidental use of stale
+cache files.
+
+ If you need to do unusual things to compile the package, please try
+to figure out how `configure' could check whether to do them, and mail
+diffs or instructions to the address given in the `README' so they can
+be considered for the next release. If you are using the cache, and at
+some point `config.cache' contains results you don't want to keep, you
+may remove or edit it.
+
+ The file `configure.ac' (or `configure.in') is used to create
+`configure' by a program called `autoconf'. You need `configure.ac' if
+you want to change it or regenerate `configure' using a newer version
+of `autoconf'.
+
+The simplest way to compile this package is:
+
+ 1. `cd' to the directory containing the package's source code and type
+ `./configure' to configure the package for your system.
+
+ Running `configure' might take a while. While running, it prints
+ some messages telling which features it is checking for.
+
+ 2. Type `make' to compile the package.
+
+ 3. Optionally, type `make check' to run any self-tests that come with
+ the package.
+
+ 4. Type `make install' to install the programs and any data files and
+ documentation.
+
+ 5. You can remove the program binaries and object files from the
+ source code directory by typing `make clean'. To also remove the
+ files that `configure' created (so you can compile the package for
+ a different kind of computer), type `make distclean'. There is
+ also a `make maintainer-clean' target, but that is intended mainly
+ for the package's developers. If you use it, you may have to get
+ all sorts of other programs in order to regenerate files that came
+ with the distribution.
+
+ 6. Often, you can also type `make uninstall' to remove the installed
+ files again.
+
+Compilers and Options
+=====================
+
+Some systems require unusual options for compilation or linking that the
+`configure' script does not know about. Run `./configure --help' for
+details on some of the pertinent environment variables.
+
+ You can give `configure' initial values for configuration parameters
+by setting variables in the command line or in the environment. Here
+is an example:
+
+ ./configure CC=c99 CFLAGS=-g LIBS=-lposix
+
+ *Note Defining Variables::, for more details.
+
+Compiling For Multiple Architectures
+====================================
+
+You can compile the package for more than one kind of computer at the
+same time, by placing the object files for each architecture in their
+own directory. To do this, you can use GNU `make'. `cd' to the
+directory where you want the object files and executables to go and run
+the `configure' script. `configure' automatically checks for the
+source code in the directory that `configure' is in and in `..'.
+
+ With a non-GNU `make', it is safer to compile the package for one
+architecture at a time in the source code directory. After you have
+installed the package for one architecture, use `make distclean' before
+reconfiguring for another architecture.
+
+Installation Names
+==================
+
+By default, `make install' installs the package's commands under
+`/usr/local/bin', include files under `/usr/local/include', etc. You
+can specify an installation prefix other than `/usr/local' by giving
+`configure' the option `--prefix=PREFIX'.
+
+ You can specify separate installation prefixes for
+architecture-specific files and architecture-independent files. If you
+pass the option `--exec-prefix=PREFIX' to `configure', the package uses
+PREFIX as the prefix for installing programs and libraries.
+Documentation and other data files still use the regular prefix.
+
+ In addition, if you use an unusual directory layout you can give
+options like `--bindir=DIR' to specify different values for particular
+kinds of files. Run `configure --help' for a list of the directories
+you can set and what kinds of files go in them.
+
+ If the package supports it, you can cause programs to be installed
+with an extra prefix or suffix on their names by giving `configure' the
+option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
+
+Optional Features
+=================
+
+Some packages pay attention to `--enable-FEATURE' options to
+`configure', where FEATURE indicates an optional part of the package.
+They may also pay attention to `--with-PACKAGE' options, where PACKAGE
+is something like `gnu-as' or `x' (for the X Window System). The
+`README' should mention any `--enable-' and `--with-' options that the
+package recognizes.
+
+ For packages that use the X Window System, `configure' can usually
+find the X include and library files automatically, but if it doesn't,
+you can use the `configure' options `--x-includes=DIR' and
+`--x-libraries=DIR' to specify their locations.
+
+Specifying the System Type
+==========================
+
+There may be some features `configure' cannot figure out automatically,
+but needs to determine by the type of machine the package will run on.
+Usually, assuming the package is built to be run on the _same_
+architectures, `configure' can figure that out, but if it prints a
+message saying it cannot guess the machine type, give it the
+`--build=TYPE' option. TYPE can either be a short name for the system
+type, such as `sun4', or a canonical name which has the form:
+
+ CPU-COMPANY-SYSTEM
+
+where SYSTEM can have one of these forms:
+
+ OS KERNEL-OS
+
+ See the file `config.sub' for the possible values of each field. If
+`config.sub' isn't included in this package, then this package doesn't
+need to know the machine type.
+
+ If you are _building_ compiler tools for cross-compiling, you should
+use the option `--target=TYPE' to select the type of system they will
+produce code for.
+
+ If you want to _use_ a cross compiler, that generates code for a
+platform different from the build platform, you should specify the
+"host" platform (i.e., that on which the generated programs will
+eventually be run) with `--host=TYPE'.
+
+Sharing Defaults
+================
+
+If you want to set default values for `configure' scripts to share, you
+can create a site shell script called `config.site' that gives default
+values for variables like `CC', `cache_file', and `prefix'.
+`configure' looks for `PREFIX/share/config.site' if it exists, then
+`PREFIX/etc/config.site' if it exists. Or, you can set the
+`CONFIG_SITE' environment variable to the location of the site script.
+A warning: not all `configure' scripts look for a site script.
+
+Defining Variables
+==================
+
+Variables not defined in a site shell script can be set in the
+environment passed to `configure'. However, some packages may run
+configure again during the build, and the customized values of these
+variables may be lost. In order to avoid this problem, you should set
+them in the `configure' command line, using `VAR=value'. For example:
+
+ ./configure CC=/usr/local2/bin/gcc
+
+causes the specified `gcc' to be used as the C compiler (unless it is
+overridden in the site shell script).
+
+Unfortunately, this technique does not work for `CONFIG_SHELL' due to
+an Autoconf bug. Until the bug is fixed you can use this workaround:
+
+ CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
+
+`configure' Invocation
+======================
+
+`configure' recognizes the following options to control how it operates.
+
+`--help'
+`-h'
+ Print a summary of the options to `configure', and exit.
+
+`--version'
+`-V'
+ Print the version of Autoconf used to generate the `configure'
+ script, and exit.
+
+`--cache-file=FILE'
+ Enable the cache: use and save the results of the tests in FILE,
+ traditionally `config.cache'. FILE defaults to `/dev/null' to
+ disable caching.
+
+`--config-cache'
+`-C'
+ Alias for `--cache-file=config.cache'.
+
+`--quiet'
+`--silent'
+`-q'
+ Do not print messages saying which checks are being made. To
+ suppress all normal output, redirect it to `/dev/null' (any error
+ messages will still be shown).
+
+`--srcdir=DIR'
+ Look for the package's source code in directory DIR. Usually
+ `configure' can determine that directory automatically.
+
+`configure' also accepts some other, not widely useful, options. Run
+`configure --help' for more details.
+
diff --git a/Source/++DFB/LockRectangle.diff b/Source/++DFB/LockRectangle.diff
new file mode 100755
index 0000000..ff8408e
--- /dev/null
+++ b/Source/++DFB/LockRectangle.diff
@@ -0,0 +1,32 @@
+diff --git a/++dfb/idirectfbsurface.cpp b/++dfb/idirectfbsurface.cpp
+index bc29fd5..d53ac78 100644
+--- a/++dfb/idirectfbsurface.cpp
++++ b/++dfb/idirectfbsurface.cpp
+@@ -438,3 +438,11 @@ void IDirectFBSurface::Write( const void *ptr,
+ DFBCHECK( iface->Write (iface, rect, ptr, pitch) );
+ }
+
++void IDirectFBSurface::LockRectangle (DFBSurfaceLockFlags flags,
++ const DFBRectangle *rect,
++ void **ptr,
++ int *pitch)
++{
++ DFBCHECK( iface->LockRectangle (iface, flags, rect, ptr, pitch) );
++}
++
+diff --git a/include/idirectfbsurface.h b/include/idirectfbsurface.h
+index f68ae78..a490ff2 100644
+--- a/include/idirectfbsurface.h
++++ b/include/idirectfbsurface.h
+@@ -195,6 +195,11 @@ public:
+ int pitch,
+ const DFBRectangle *rect = NULL);
+
++ void LockRectangle (DFBSurfaceLockFlags flags,
++ const DFBRectangle *rect,
++ void **ptr,
++ int *pitch);
++
+ inline IDirectFBSurface& operator = (const IDirectFBSurface& other){
+ return IPPAny<IDirectFBSurface, IDirectFBSurface_C>::operator =(other);
+ }
diff --git a/Source/++DFB/Makefile b/Source/++DFB/Makefile
new file mode 100755
index 0000000..f47f8b0
--- /dev/null
+++ b/Source/++DFB/Makefile
@@ -0,0 +1,711 @@
+# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile. Generated from Makefile.in by configure.
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+
+
+
+
+pkgdatadir = $(datadir)/++DFB
+pkglibdir = $(libdir)/++DFB
+pkgincludedir = $(includedir)/++DFB
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = x86_64-unknown-linux-gnu
+host_triplet = x86_64-unknown-linux-gnu
+subdir = .
+DIST_COMMON = README $(am__configure_deps) $(srcdir)/++dfb-config.in \
+ $(srcdir)/++dfb.pc.in $(srcdir)/++dfb.spec.in \
+ $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+ $(srcdir)/config.h.in $(top_srcdir)/configure AUTHORS COPYING \
+ ChangeLog INSTALL NEWS config.guess config.sub depcomp \
+ install-sh ltmain.sh missing
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.in
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
+ configure.lineno config.status.lineno
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = config.h
+CONFIG_CLEAN_FILES = ++dfb-config ++dfb.pc ++dfb.spec
+am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(pkgconfigdir)"
+binSCRIPT_INSTALL = $(INSTALL_SCRIPT)
+SCRIPTS = $(bin_SCRIPTS)
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+ html-recursive info-recursive install-data-recursive \
+ install-dvi-recursive install-exec-recursive \
+ install-html-recursive install-info-recursive \
+ install-pdf-recursive install-ps-recursive install-recursive \
+ installcheck-recursive installdirs-recursive pdf-recursive \
+ ps-recursive uninstall-recursive
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+pkgconfigDATA_INSTALL = $(INSTALL_DATA)
+DATA = $(pkgconfig_DATA)
+RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
+ distclean-recursive maintainer-clean-recursive
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+distdir = $(PACKAGE)-$(VERSION)
+top_distdir = $(distdir)
+am__remove_distdir = \
+ { test ! -d $(distdir) \
+ || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
+ && rm -fr $(distdir); }; }
+DIST_ARCHIVES = $(distdir).tar.gz
+GZIP_ENV = --best
+distuninstallcheck_listfiles = find . -type f -print
+distcleancheck_listfiles = find . -type f -print
+ACLOCAL = ${SHELL} /home/dok/cvs/directfb/++DFB/missing --run aclocal-1.10
+AMTAR = ${SHELL} /home/dok/cvs/directfb/++DFB/missing --run tar
+AR = ar
+AUTOCONF = ${SHELL} /home/dok/cvs/directfb/++DFB/missing --run autoconf
+AUTOHEADER = ${SHELL} /home/dok/cvs/directfb/++DFB/missing --run autoheader
+AUTOMAKE = ${SHELL} /home/dok/cvs/directfb/++DFB/missing --run automake-1.10
+AWK = gawk
+CC = gcc
+CCDEPMODE = depmode=gcc3
+CFLAGS = -g -O2
+CPP = gcc -E
+CPPFLAGS =
+CXX = g++
+CXXCPP = g++ -E
+CXXDEPMODE = depmode=gcc3
+CXXFLAGS = -g -O2
+CYGPATH_W = echo
+DEFS = -DHAVE_CONFIG_H
+DEPDIR = .deps
+DIRECTFB_BINARY_AGE = 0
+DIRECTFB_CFLAGS = -D_GNU_SOURCE -finstrument-functions -D_REENTRANT -I/usr/local/include/directfb-internal -I/usr/local/include/directfb
+DIRECTFB_INTERFACE_AGE = 0
+DIRECTFB_LIBS = -L/usr/local/lib -ldirectfb -lfusion -ldirect -lpthread
+DIRECTFB_MAJOR_VERSION = 1
+DIRECTFB_MICRO_VERSION = 2
+DIRECTFB_MINOR_VERSION = 4
+DIRECTFB_VERSION = 1.4.2
+DSYMUTIL =
+ECHO = echo
+ECHO_C =
+ECHO_N = -n
+ECHO_T =
+EGREP = /bin/grep -E
+EXEEXT =
+F77 = gfortran
+FFLAGS = -g -O2
+GREP = /bin/grep
+INSTALL = /usr/bin/install -c
+INSTALL_DATA = ${INSTALL} -m 644
+INSTALL_PROGRAM = ${INSTALL}
+INSTALL_SCRIPT = ${INSTALL}
+INSTALL_STRIP_PROGRAM = $(install_sh) -c -s
+LDFLAGS =
+LIBOBJS =
+LIBS =
+LIBTOOL = $(SHELL) $(top_builddir)/libtool
+LN_S = ln -s
+LTLIBOBJS =
+LT_AGE = 0
+LT_CURRENT = 2
+LT_RELEASE = 1.4
+LT_REVISION = 0
+MAINT = #
+MAKEINFO = ${SHELL} /home/dok/cvs/directfb/++DFB/missing --run makeinfo
+MKDIR_P = /bin/mkdir -p
+NMEDIT =
+OBJEXT = o
+PACKAGE = ++DFB
+PACKAGE_BUGREPORT =
+PACKAGE_NAME =
+PACKAGE_STRING =
+PACKAGE_TARNAME =
+PACKAGE_VERSION =
+PATH_SEPARATOR = :
+PKG_CONFIG = /usr/bin/pkg-config
+RANLIB = ranlib
+SED = /bin/sed
+SET_MAKE =
+SHELL = /bin/sh
+STRIP = strip
+VERSION = 1.4.2
+abs_builddir = /home/dok/cvs/directfb/++DFB
+abs_srcdir = /home/dok/cvs/directfb/++DFB
+abs_top_builddir = /home/dok/cvs/directfb/++DFB
+abs_top_srcdir = /home/dok/cvs/directfb/++DFB
+ac_ct_CC = gcc
+ac_ct_CXX = g++
+ac_ct_F77 = gfortran
+am__include = include
+am__leading_dot = .
+am__quote =
+am__tar = ${AMTAR} chof - "$$tardir"
+am__untar = ${AMTAR} xf -
+bindir = ${exec_prefix}/bin
+build = x86_64-unknown-linux-gnu
+build_alias =
+build_cpu = x86_64
+build_os = linux-gnu
+build_vendor = unknown
+builddir = .
+datadir = ${datarootdir}
+datarootdir = ${prefix}/share
+docdir = ${datarootdir}/doc/${PACKAGE}
+dvidir = ${docdir}
+exec_prefix = ${prefix}
+host = x86_64-unknown-linux-gnu
+host_alias =
+host_cpu = x86_64
+host_os = linux-gnu
+host_vendor = unknown
+htmldir = ${docdir}
+includedir = ${prefix}/include
+infodir = ${datarootdir}/info
+install_sh = $(SHELL) /home/dok/cvs/directfb/++DFB/install-sh
+libdir = ${exec_prefix}/lib
+libexecdir = ${exec_prefix}/libexec
+localedir = ${datarootdir}/locale
+localstatedir = ${prefix}/var
+mandir = ${datarootdir}/man
+mkdir_p = /bin/mkdir -p
+oldincludedir = /usr/include
+pdfdir = ${docdir}
+prefix = /usr/local
+program_transform_name = s,x,x,
+psdir = ${docdir}
+sbindir = ${exec_prefix}/sbin
+sharedstatedir = ${prefix}/com
+srcdir = .
+sysconfdir = ${prefix}/etc
+target_alias =
+top_builddir = .
+top_srcdir = .
+SUBDIRS = ++dfb include examples
+bin_SCRIPTS = ++dfb-config
+pkgconfigdir = $(libdir)/pkgconfig
+pkgconfig_DATA = ++dfb.pc
+all: config.h
+ $(MAKE) $(AM_MAKEFLAGS) all-recursive
+
+.SUFFIXES:
+am--refresh:
+ @:
+$(srcdir)/Makefile.in: # $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \
+ cd $(srcdir) && $(AUTOMAKE) --gnu \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --gnu Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ echo ' $(SHELL) ./config.status'; \
+ $(SHELL) ./config.status;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ $(SHELL) ./config.status --recheck
+
+$(top_srcdir)/configure: # $(am__configure_deps)
+ cd $(srcdir) && $(AUTOCONF)
+$(ACLOCAL_M4): # $(am__aclocal_m4_deps)
+ cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
+
+config.h: stamp-h1
+ @if test ! -f $@; then \
+ rm -f stamp-h1; \
+ $(MAKE) $(AM_MAKEFLAGS) stamp-h1; \
+ else :; fi
+
+stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
+ @rm -f stamp-h1
+ cd $(top_builddir) && $(SHELL) ./config.status config.h
+$(srcdir)/config.h.in: # $(am__configure_deps)
+ cd $(top_srcdir) && $(AUTOHEADER)
+ rm -f stamp-h1
+ touch $@
+
+distclean-hdr:
+ -rm -f config.h stamp-h1
+++dfb-config: $(top_builddir)/config.status $(srcdir)/++dfb-config.in
+ cd $(top_builddir) && $(SHELL) ./config.status $@
+++dfb.pc: $(top_builddir)/config.status $(srcdir)/++dfb.pc.in
+ cd $(top_builddir) && $(SHELL) ./config.status $@
+++dfb.spec: $(top_builddir)/config.status $(srcdir)/++dfb.spec.in
+ cd $(top_builddir) && $(SHELL) ./config.status $@
+install-binSCRIPTS: $(bin_SCRIPTS)
+ @$(NORMAL_INSTALL)
+ test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
+ @list='$(bin_SCRIPTS)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ if test -f $$d$$p; then \
+ f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
+ echo " $(binSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(bindir)/$$f'"; \
+ $(binSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(bindir)/$$f"; \
+ else :; fi; \
+ done
+
+uninstall-binSCRIPTS:
+ @$(NORMAL_UNINSTALL)
+ @list='$(bin_SCRIPTS)'; for p in $$list; do \
+ f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
+ echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
+ rm -f "$(DESTDIR)$(bindir)/$$f"; \
+ done
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+distclean-libtool:
+ -rm -f libtool
+install-pkgconfigDATA: $(pkgconfig_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(pkgconfigdir)" || $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)"
+ @list='$(pkgconfig_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(pkgconfigDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(pkgconfigdir)/$$f'"; \
+ $(pkgconfigDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(pkgconfigdir)/$$f"; \
+ done
+
+uninstall-pkgconfigDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(pkgconfig_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(pkgconfigdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(pkgconfigdir)/$$f"; \
+ done
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+# (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ dot_seen=yes; \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done; \
+ if test "$$dot_seen" = "no"; then \
+ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+ fi; test -z "$$fail"
+
+$(RECURSIVE_CLEAN_TARGETS):
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ rev=''; for subdir in $$list; do \
+ if test "$$subdir" = "."; then :; else \
+ rev="$$subdir $$rev"; \
+ fi; \
+ done; \
+ rev="$$rev ."; \
+ target=`echo $@ | sed s/-recursive//`; \
+ for subdir in $$rev; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done && test -z "$$fail"
+tags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ done
+ctags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+ done
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+ include_option=--etags-include; \
+ empty_fix=.; \
+ else \
+ include_option=--include; \
+ empty_fix=; \
+ fi; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test ! -f $$subdir/TAGS || \
+ tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+ fi; \
+ done; \
+ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$tags $$unique; \
+ fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$tags $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && cd $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) $$here
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ $(am__remove_distdir)
+ test -d $(distdir) || mkdir $(distdir)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ fi; \
+ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+ else \
+ test -f $(distdir)/$$file \
+ || cp -p $$d/$$file $(distdir)/$$file \
+ || exit 1; \
+ fi; \
+ done
+ list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test -d "$(distdir)/$$subdir" \
+ || $(MKDIR_P) "$(distdir)/$$subdir" \
+ || exit 1; \
+ distdir=`$(am__cd) $(distdir) && pwd`; \
+ top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
+ (cd $$subdir && \
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$$top_distdir" \
+ distdir="$$distdir/$$subdir" \
+ am__remove_distdir=: \
+ am__skip_length_check=: \
+ distdir) \
+ || exit 1; \
+ fi; \
+ done
+ -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
+ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
+ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
+ ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
+ || chmod -R a+r $(distdir)
+dist-gzip: distdir
+ tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+ $(am__remove_distdir)
+
+dist-bzip2: distdir
+ tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
+ $(am__remove_distdir)
+
+dist-lzma: distdir
+ tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
+ $(am__remove_distdir)
+
+dist-tarZ: distdir
+ tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
+ $(am__remove_distdir)
+
+dist-shar: distdir
+ shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
+ $(am__remove_distdir)
+
+dist-zip: distdir
+ -rm -f $(distdir).zip
+ zip -rq $(distdir).zip $(distdir)
+ $(am__remove_distdir)
+
+dist dist-all: distdir
+ tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+ $(am__remove_distdir)
+
+# This target untars the dist file and tries a VPATH configuration. Then
+# it guarantees that the distribution is self-contained by making another
+# tarfile.
+distcheck: dist
+ case '$(DIST_ARCHIVES)' in \
+ *.tar.gz*) \
+ GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
+ *.tar.bz2*) \
+ bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
+ *.tar.lzma*) \
+ unlzma -c $(distdir).tar.lzma | $(am__untar) ;;\
+ *.tar.Z*) \
+ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
+ *.shar.gz*) \
+ GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
+ *.zip*) \
+ unzip $(distdir).zip ;;\
+ esac
+ chmod -R a-w $(distdir); chmod a+w $(distdir)
+ mkdir $(distdir)/_build
+ mkdir $(distdir)/_inst
+ chmod a-w $(distdir)
+ dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
+ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
+ && cd $(distdir)/_build \
+ && ../configure --srcdir=.. --prefix="$$dc_install_base" \
+ $(DISTCHECK_CONFIGURE_FLAGS) \
+ && $(MAKE) $(AM_MAKEFLAGS) \
+ && $(MAKE) $(AM_MAKEFLAGS) dvi \
+ && $(MAKE) $(AM_MAKEFLAGS) check \
+ && $(MAKE) $(AM_MAKEFLAGS) install \
+ && $(MAKE) $(AM_MAKEFLAGS) installcheck \
+ && $(MAKE) $(AM_MAKEFLAGS) uninstall \
+ && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
+ distuninstallcheck \
+ && chmod -R a-w "$$dc_install_base" \
+ && ({ \
+ (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
+ distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
+ } || { rm -rf "$$dc_destdir"; exit 1; }) \
+ && rm -rf "$$dc_destdir" \
+ && $(MAKE) $(AM_MAKEFLAGS) dist \
+ && rm -rf $(DIST_ARCHIVES) \
+ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
+ $(am__remove_distdir)
+ @(echo "$(distdir) archives ready for distribution: "; \
+ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
+ sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
+distuninstallcheck:
+ @cd $(distuninstallcheck_dir) \
+ && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
+ || { echo "ERROR: files left after uninstall:" ; \
+ if test -n "$(DESTDIR)"; then \
+ echo " (check DESTDIR support)"; \
+ fi ; \
+ $(distuninstallcheck_listfiles) ; \
+ exit 1; } >&2
+distcleancheck: distclean
+ @if test '$(srcdir)' = . ; then \
+ echo "ERROR: distcleancheck can only run from a VPATH build" ; \
+ exit 1 ; \
+ fi
+ @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
+ || { echo "ERROR: files left in build directory after distclean:" ; \
+ $(distcleancheck_listfiles) ; \
+ exit 1; } >&2
+check-am: all-am