bbceler
|
 |
« : Марта 16, 2010, 06:35:34 pm » |
|
André Wösten выложил на http://qnx.falloutshelter.de/ сорсы xphoton. Он строится на xorg-server-1.6.3. Там тоже вы найдете phinstaller.
|
|
|
Записан
|
|
|
|
agent
|
 |
« Ответ #1 : Марта 17, 2010, 12:36:13 am » |
|
Посмотрел, но в деле не пробовал. Интересно. Сам XPhotonом пробовал заниматься, но заморочек в нем много оказалось.  Инструкцию по установке, правда, маловата.
|
|
|
Записан
|
|
|
|
awoesten
Участник
Offline
Сообщений: 4
|
 |
« Ответ #2 : Августа 02, 2010, 06:41:31 pm » |
|
Sorry, I cannot speak russian (but Google Translator did the job for me). You can find more information for installing it here: http://209.226.137.8/sf/discussion/do/listPosts/projects.pkgsrc/discussion.pkginfo.topc12895I posted it on openqnx and foundry27 too, but apparently noone is interested. I hope you can do something with it. For questions just write here, I will check this thread from time to time. Best regards, André Wösten
|
|
|
Записан
|
|
|
|
bbceler
|
 |
« Ответ #3 : Августа 03, 2010, 11:33:04 am » |
|
I compiled Xphoton without problems. And so: # ./Xphoton (nto.c | 00317 | OsVendorInit): >>> Xphoton starting: X.Org X Server 1.6.3 Build Date: 20100405 Display mode: Rootless Photon (nto.c | 00278 | InitOutput ): InitOutput(816afc0,1...) [dix] Could not init font path element /usr/pkg/lib/X11/fonts/OTF, removing from list! (photonCursor.c | 00056 | PhotonRealizeCursor): >>> (photonCursor.c | 00056 | PhotonRealizeCursor): >>> (photonCursor.c | 00039 | PhotonCrossScreen): >>> (photonCursor.c | 00072 | PhotonSetCursor): >>> (photonCursor.c | 00056 | PhotonRealizeCursor): >>> (nto.c | 00255 | InitInput ): InitInput(1,...) (ntoEvents.c | 00061 | NtoEQInit): >>> (nto.c | 00194 | NtoMouseProc ): NtoMouseProc(8194138,0) (nto.c | 00225 | NtoKeybdProc ): NtoKeybdProc(817f2f0,0) Found keyboard file: en_US_101.kbd de_DE_102.kbd <-> en_US_101.kbd Keyboard fallback (nto.c | 00194 | NtoMouseProc ): NtoMouseProc(8194138,1) (nto.c | 00225 | NtoKeybdProc ): NtoKeybdProc(817f2f0,1)
#pidin .......................... 841121877 1 ./s5ipc 10r SIGWAITINFO 841121877 2 ./s5ipc 10r RECEIVE 1 843104289 1 r/photon/bin/pterm 10r RECEIVE 1 843104294 1 bin/sh 10r REPLY 180243 843329560 1 usr/photon/bin/ped 10r REPLY 253983 843329575 1 ./Xphoton 10r SIGWAITINFO # # xlogo Warning: Cannot convert string "xlogo32" to type Pixmap
and 843329575 1 ./Xphoton 10r SIGWAITINFO 843358248 1 usr/pkg/bin/xlogo 10r SIGWAITINFO
(nto.c | 00225 | NtoKeybdProc ): NtoKeybdProc(817f2f0,1) New Window 0,0 102x102 root 0 Redirect 0 create wdw = 820cac0, wid = 83b22c0 PtRealizeWidget ret = 0 (errno 0) rid = 107 got_focusfn lost_focusfn
Everything is all right, but when I move xlogo window the problem appears
843329575 1 ./Xphoton 10r READY 843358248 1 usr/pkg/bin/xlogo 10r SIGWAITINFO
and after closed xlogo: lost_focusfn got_focusfn lost_focusfn destroy wdw = 820cac0 (photonCursor.c | 00072 | PhotonSetCursor): >>> (nto.c | 00317 | OsVendorInit): >>> Xphoton starting: X.Org X Server 1.6.3 Build Date: 20100405 Display mode: Rootless Photon (nto.c | 00278 | InitOutput ): InitOutput(816afc0,1...) [dix] Could not init font path element /usr/pkg/lib/X11/fonts/OTF, removing from list! (photonCursor.c | 00056 | PhotonRealizeCursor): >>> (photonCursor.c | 00039 | PhotonCrossScreen): >>> (photonCursor.c | 00072 | PhotonSetCursor): >>> (nto.c | 00255 | InitInput ): InitInput(1,...) (ntoEvents.c | 00061 | NtoEQInit): >>> (nto.c | 00194 | NtoMouseProc ): NtoMouseProc(8347780,0) (nto.c | 00225 | NtoKeybdProc ): NtoKeybdProc(8347548,0) Found keyboard file: en_US_101.kbd de_DE_102.kbd <-> en_US_101.kbd Keyboard fallback (nto.c | 00194 | NtoMouseProc ): NtoMouseProc(8347780,1) (nto.c | 00225 | NtoKeybdProc ): NtoKeybdProc(8347548,1)
but 843329575 1 ./Xphoton 10r READY
I have the return to the state "./Xphoton 10r SIGWAITINFO" in the case of the old version Xphoton. This same is when I change the size of the window. New xphoton still stays in the READY state after change the size when old xphoton go to SIGWAITINFO
bogdan
|
|
|
Записан
|
|
|
|
awoesten
Участник
Offline
Сообщений: 4
|
 |
« Ответ #4 : Августа 03, 2010, 12:45:18 pm » |
|
Okay, thank you. I will test it myself and give it a try!
André
|
|
|
Записан
|
|
|
|
awoesten
Участник
Offline
Сообщений: 4
|
 |
« Ответ #5 : Августа 03, 2010, 09:40:41 pm » |
|
OK, I found the problem. I used an internal signalling pipe (by using file descriptors) to trigger the dispatcher of the DIX. But I didn't empty it after using it. Thanks for giving me this hint. I always wondered why the Xphoton server needs so much CPU power (in the system monitor of QNX). Now I found out that he hanged in a loop between blocking/waking up in the server scheduler which was caused by that event pipe. If you want to fix it, do following: 1. Remove the mieqProcessInputEvents-call from the RootlessWakeupHandler in miext/rootless/rootlessScreen.c 2. Replace the ProcessInputEvents function in hw/xphoton/ntoEvents.c by this one: void ProcessInputEvents(void) { int x = 1; char byte; mieqProcessInputEvents(); // Empty the signaling pipe while (x == 1) { x = read(ntoEventReadFD, &byte, 1); } } Thanks again! André
|
|
|
Записан
|
|
|
|
bbceler
|
 |
« Ответ #6 : Августа 05, 2010, 11:05:35 pm » |
|
André I change code and I transferred to server X. Org 1.6.5 # ./XPHoton # (nto.c | 00317 | OsVendorInit): >>> Xphoton starting: X.Org X Server 1.6.5 Build Date: 20100803 Display mode: Rootless Photon (nto.c | 00278 | InitOutput ): InitOutput(8183ee0,1...) [dix] Could not init font path element /usr/pkg/lib/X11/fonts/misc/, removing from list! [dix] Could not init font path element /usr/pkg/lib/X11/fonts/TTF/, removing from list! [dix] Could not init font path element /usr/pkg/lib/X11/fonts/OTF, removing from list! [dix] Could not init font path element /usr/pkg/lib/X11/fonts/Type1/, removing from list! [dix] Could not init font path element /usr/pkg/lib/X11/fonts/100dpi/, removing from list! [dix] Could not init font path element /usr/pkg/lib/X11/fonts/75dpi/, removing from list! (photonCursor.c | 00056 | PhotonRealizeCursor): >>> (photonCursor.c | 00056 | PhotonRealizeCursor): >>> (photonCursor.c | 00039 | PhotonCrossScreen): >>> (photonCursor.c | 00072 | PhotonSetCursor): >>> (photonCursor.c | 00056 | PhotonRealizeCursor): >>> (nto.c | 00255 | InitInput ): InitInput(1,...) (ntoEvents.c | 00067 | NtoEQInit): >>> (nto.c | 00194 | NtoMouseProc ): NtoMouseProc(81ca070,0) (nto.c | 00225 | NtoKeybdProc ): NtoKeybdProc(81c9e38,0) Found keyboard file: en_US_101.kbd de_DE_102.kbd <-> en_US_101.kbd2773037 1 sr/pkg/bin/Xphoton 10r READY 3743785 1 bin/sh 10r SIGSUSPEND 4571180 1 ./xlogo 10r SIGWAITINFO Keyboard fallback (nto.c | 00194 | NtoMouseProc ): NtoMouseProc(81ca070,1) (nto.c | 00225 | NtoKeybdProc ): NtoKeybdProc(81c9e38,1) and
================================================== 2621483 1 usr/photon/bin/ped 10r REPLY 262175 2773037 1 sr/pkg/bin/Xphoton 10r SIGWAITINFO 3743785 1 bin/sh 10r SIGSUSPEND 4014124 1 bin/pidin 10r REPLY 1
And after ./xlogo 2773037 1 sr/pkg/bin/Xphoton 10r READY 3743785 1 bin/sh 10r SIGSUSPEND 4571180 1 ./xlogo 10r SIGWAITINFO Now change the size of the window and movig window work but STATE Xphoton is RUNNING, REPLY and READY After closing xlogo state Xphoton changes still. And CPU work very hard. And why state Xphoton does not change to SIGWAITINFO how this does old version Xphoton?
|
|
|
Записан
|
|
|
|
awoesten
Участник
Offline
Сообщений: 4
|
 |
« Ответ #7 : Октября 21, 2011, 01:20:58 am » |
|
Bogdan, back to life. Now I really solved this problem. This is the correct code to clean the signalling pipe: void ProcessInputEvents(void) { xEvent xe; int x = sizeof(xe); mieqProcessInputEvents();
// Empty the signaling pipe while (x == sizeof(xe)) { x = read(ntoEventReadFD, &xe, sizeof(xe)); } }
RootlessWakeupHandler in miext/rootless/rootlessScreen.c has to be disabled still. Now I get SIGWAITINFO  Still working on the Xphoton port, implemented correct moving of windows, correct displaying of more than 1 window and some other stuff. Now I have to correct some disgusting charset and keyboard handling stuff. I will report further progress here. Regards André
|
|
|
Записан
|
|
|
|
bbceler
|
 |
« Ответ #8 : Октября 23, 2011, 02:29:04 am » |
|
André, OK, I checked now it is much better. For the Xphoton compilation I prepared the pkgsrc package using your patch. Regards, bogdan.
|
|
|
Записан
|
|
|
|
|