Page 4 of 9

Re: Эмулятор под Linux

Posted: Tue Apr 10, 2018 11:20 am
by JohnXenox
tsdima wrote:Сделал максимизацию по двойному клику на заголовке. Растягивание окон тоже должно работать, т.к. теперь оно делается ещё и вручную (т.е. независимо от оконного менеджера). Делается не совсем так, как в реальной Колибри, но лучше уж так, чем совсем никак.
Максимизация работает нормально. Растягивание работает кат-то странно. Когда дёргаешь окно за край, то окно резко прыгает в левый верхний угол, на нулевую координату (x=0, y=0) и там меленно растягивается, и после отпускания кнопки мыши растягивается ещё примерно 2-3 секунды.

*****

По поводу сети. Попробовал настроить сеть, и она заработала.
Проверил Webview - работает.
Проверил IRCC - работает.
Попробовал поставить Netsurf, через NSINSTALL, и он ставится, но в конце установки, в терминале, выскакаивает сообщение об ошибке.
Spoiler:

Code: Select all

-------------------------
NETSURF INSTALLER.
Fetching : /tmp0/1/netsurf-kolibrios...DONE!
Fetching : /tmp0/1/netsurf-kolibrios.map...DONE!
Fetching : /tmp0/1/res/adblock.css...DONE!
Fetching : /tmp0/1/res/quirks.css...DONE!
Fetching : /tmp0/1/res/Messages...DONE!
Fetching : /tmp0/1/res/licence.html...DONE!
Fetching : /tmp0/1/res/default.css...DONE!
Fetching : /tmp0/1/res/netsurf.png...DONE!
Fetching : /tmp0/1/res/sans.ttf...DONE!
Fetching : /tmp0/1/res/welcome.html...DONE!
Fetching : /tmp0/1/res/internal.css...DONE!
Fetching : /tmp0/1/res/maps.html...DONE!
Fetching : /tmp0/1/res/favicon.png...DONE!
Fetching : /tmp0/1/res/credits.html...DONE!
Fetching : /tmp0/1/res/throbber/throbber8.png...DONE!
Fetching : /tmp0/1/res/throbber/throbber3.png...DONE!
Fetching : /tmp0/1/res/throbber/throbber4.png...DONE!
Fetching : /tmp0/1/res/throbber/throbber0.png...DONE!
Fetching : /tmp0/1/res/throbber/throbber6.png...DONE!
Fetching : /tmp0/1/res/throbber/throbber2.png...DONE!
Fetching : /tmp0/1/res/throbber/throbber1.png...DONE!
Fetching : /tmp0/1/res/throbber/throbber7.png...DONE!
Fetching : /tmp0/1/res/throbber/throbber5.png...DONE!
Fetching : /tmp0/1/res/pointers/point.png...DONE!
Fetching : /tmp0/1/res/pointers/no_drop.png...DONE!
Fetching : /tmp0/1/res/pointers/wait.png...DONE!
Fetching : /tmp0/1/res/pointers/up-down.png...DONE!
Fetching : /tmp0/1/res/pointers/help.png...DONE!
Fetching : /tmp0/1/res/pointers/ru-ld.png...DONE!
Fetching : /tmp0/1/res/pointers/menu.png...DONE!
Fetching : /tmp0/1/res/pointers/not_allowed.png...DONE!
Fetching : /tmp0/1/res/pointers/cross.png...DONE!
Fetching : /tmp0/1/res/pointers/default.png...DONE!
Fetching : /tmp0/1/res/pointers/caret.png...DONE!
Fetching : /tmp0/1/res/pointers/left-right.png...DONE!
Fetching : /tmp0/1/res/pointers/lu-rd.png...DONE!
Fetching : /tmp0/1/res/pointers/progress.png...DONE!
Fetching : /tmp0/1/res/pointers/move.png...DONE!
Fetching : /tmp0/1/res/icons/back.png...DONE!
Fetching : /tmp0/1/res/icons/back_g.png...DONE!
Fetching : /tmp0/1/res/icons/scrollr.png...DONE!
Fetching : /tmp0/1/res/icons/osk.png...DONE!
Fetching : /tmp0/1/res/icons/forward_g.png...DONE!
Fetching : /tmp0/1/res/icons/scrolll.png...DONE!
Fetching : /tmp0/1/res/icons/history.png...DONE!
Fetching : /tmp0/1/res/icons/forward.png...DONE!
Fetching : /tmp0/1/res/icons/home_g.png...DONE!
Fetching : /tmp0/1/res/icons/history_g.png...DONE!
Fetching : /tmp0/1/res/icons/reload_g.png...DONE!
Fetching : /tmp0/1/res/icons/scrollu.png...DONE!
Fetching : /tmp0/1/res/icons/stop.png...DONE!
Fetching : /tmp0/1/res/icons/scrolld.png...DONE!
Fetching : /tmp0/1/res/icons/stop_g.png...DONE!
Fetching : /tmp0/1/res/icons/home.png...DONE!
Fetching : /tmp0/1/res/icons/reload.png...DONE!
-------------------------
NETSURF INSTALLED. Enjoy!
-------------------------
Process: netsurf-kol
err : 0x00000000 trapno: 13 addr: 0x0000000000000000
EAX : 0x0000000000341000 EBX : 0x000000000000000c ECX : 0x0000000000541000
EDX : 0x0000000f3ffff000 ESI : 0x0000000000412759 EDI : 0x000000007ffff000
EBP : 0x00007fffdaeb8e80 EIP : 0x0000000000000058 ESP : 0x0000000000340fe0
Flags : 0x00010206 CS: 0x000f
Пробовал запустить Netsurf, выводится тоже сообщение об ошибке.
Spoiler:

Code: Select all

Process: netsurf-kol
err : 0x00000000 trapno: 13 addr: 0x0000000000000000
EAX : 0x0000000000341000 EBX : 0x000000000000000c ECX : 0x0000000000541000
EDX : 0x0000000f3ffff000 ESI : 0x0000000000412759 EDI : 0x000000007ffff000
EBP : 0x00007fff980990d0 EIP : 0x0000000000000058 ESP : 0x0000000000340fe0
Flags : 0x00010206 CS: 0x000f
*****

Также заметил, что не работает копирование - вставка.

Re: Эмулятор под Linux

Posted: Tue Apr 10, 2018 1:54 pm
by tsdima
Спасибо, что находишь время тестировать новые версии.
JohnXenox wrote:Когда дёргаешь окно за край, то окно резко прыгает в левый верхний угол
Да, у меня тоже иногда так бывает (но не всегда). Пока не понял, почему.
JohnXenox wrote:Попробовал поставить Netsurf, через NSINSTALL, и он ставится, но в конце установки, в терминале, выскакаивает сообщение об ошибке.
Пока не решу проблему с fs: Netsurf работать не будет. Он же тоже gcc-шный.
JohnXenox wrote:Также заметил, что не работает копирование - вставка.
Думаю, функции системного буфера обмена будут следующими в списке todo. Потом ещё нужно мышиные курсоры сделать, но там загвоздка - в X11 курсоры двухцветные (включая прозрачность - трёхцветные). А под конец займусь проблемой fs:

Добавил define-ы для 32-битного линукса, теперь и в нём компилируется. В принципе, 32-битный эмулятор нормально работает в 64-битном линуксе, но define-ы я всё равно оставлю - чтобы не усложнять компиляцию в 64-битной системе.

Re: Эмулятор под Linux

Posted: Wed Apr 11, 2018 1:01 pm
by tsdima
tsdima wrote:функции системного буфера обмена будут следующими в списке todo
Done.

Re: Эмулятор под Linux

Posted: Wed Apr 11, 2018 3:49 pm
by JohnXenox
tsdima wrote:Спасибо, что находишь время тестировать новые версии.
Не за что. Просто Колибри нравится.
tsdima wrote:
JohnXenox wrote:Когда дёргаешь окно за край, то окно резко прыгает в левый верхний угол
Да, у меня тоже иногда так бывает (но не всегда). Пока не понял, почему.
А у меня, постоянно. Наверно где-то в коде, координата текущего положения окна перебивается.
tsdima wrote:
JohnXenox wrote:Попробовал поставить Netsurf, через NSINSTALL, и он ставится, но в конце установки, в терминале, выскакаивает сообщение об ошибке.
Пока не решу проблему с fs: Netsurf работать не будет. Он же тоже gcc-шный.
Думаю, функции системного буфера обмена будут следующими в списке todo.
Потом ещё нужно мышиные курсоры сделать, но там загвоздка - в X11 курсоры двухцветные (включая прозрачность - трёхцветные). А под конец займусь проблемой fs:
Ясно.
tsdima wrote:Добавил define-ы для 32-битного линукса, теперь и в нём компилируется. В принципе, 32-битный эмулятор нормально работает в 64-битном линуксе, но define-ы я всё равно оставлю - чтобы не усложнять компиляцию в 64-битной системе.
Замечательно.

Re: Эмулятор под Linux

Posted: Wed Apr 11, 2018 4:00 pm
by JohnXenox
tsdima wrote:
tsdima wrote:функции системного буфера обмена будут следующими в списке todo
Done.
Tinypad, Eolite и Kfar работают с буфером как пологается. С T_Edit, есть маленькая проблема. При каждой вставке текста в T_Edit, почему-то в конце текста добавляются вопросительные знаки, в большом количестве.

Здесь, я сделал две тестовые вставки.
Image

Re: Эмулятор под Linux

Posted: Wed Apr 11, 2018 9:32 pm
by tsdima
JohnXenox wrote:С T_Edit, есть маленькая проблема. При каждой вставке текста в T_Edit, почему-то в конце текста добавляются вопросительные знаки, в большом количестве.
Видимо баг T_Edit, он рассчитывает, что после данных всегда нули. Хотя, например, в информационной строке он корректно отображает, что в буфере обмена.
Подправил функцию 54.1. Интересно, что будет в реальной Колибри, если размер буфера обмена будет ровно 4096 байт.

Re: Эмулятор под Linux

Posted: Wed Apr 11, 2018 10:41 pm
by tsdima
Добавил загрузку курсоров. Правда, двухцветные они выглядят несколько коряво.
Используется в BabyPainter, WebView, grafx2

Re: Эмулятор под Linux

Posted: Thu Apr 12, 2018 1:33 pm
by tsdima
Разобрался таки с курсорами, теперь через Xrender создаются, цветные.

Re: Эмулятор под Linux

Posted: Thu Apr 12, 2018 5:41 pm
by tsdima
Небольшое изменение касательно растягивания окон, надеюсь окна больше не будут прыгать в точку 0,0

Re: Эмулятор под Linux

Posted: Thu Apr 12, 2018 8:36 pm
by JohnXenox
tsdima
Вставка в T_Edit, курсоры и растягивание окон, работают правильно. :D

Re: Эмулятор под Linux

Posted: Fri Apr 13, 2018 4:42 pm
by tsdima
Как и планировал, добавил поддержку сегментного регистра fs. Пока размер TLS не может превышать 4096 байт, но если надо будет, сделаю автоматическое увеличение сегмента.
В результате заработали mun и pokemini, а для корректной работы fplay видимо нехватает футексов.
В pokemini не нашёл, какой клавишей активируется пункт меню, может быть есть проблема со сканкодами.

Re: Эмулятор под Linux

Posted: Fri Apr 13, 2018 11:29 pm
by tsdima
Наконец-то заработал netsurf под моим эмулятором! Это уже кое-что. :)
И в pokemini нашёл клавиши: Z,X,C. Выбор - клавишей X.

Re: Эмулятор под Linux

Posted: Sat Apr 14, 2018 12:54 am
by JohnXenox
tsdima
У меня: Netsurf, mun и pokemini не запускаются. :(
Вот лог:
Spoiler:

Code: Select all

Process: fplay
err : 0x00000000 trapno: 13 addr: 0x0000000000000000
EAX : 0x000000000005d000 EBX : 0x000000000000000c ECX : 0x000000000025d000
EDX : 0x0000000f3ffff000 ESI : 0x0000000000413ac2 EDI : 0x000000007ffff000
EBP : 0x00007ffdf3b51fa0 EIP : 0x0000000000000058 ESP : 0x000000000005c980
Flags : 0x00010206 CS: 0x000f

-------------------------
NETSURF INSTALLER.
Fetching : /tmp0/1/netsurf-kolibrios...DONE!
Fetching : /tmp0/1/netsurf-kolibrios.map...DONE!
Fetching : /tmp0/1/res/adblock.css...DONE!
Fetching : /tmp0/1/res/quirks.css...DONE!
Fetching : /tmp0/1/res/Messages...DONE!
Fetching : /tmp0/1/res/licence.html...DONE!
Fetching : /tmp0/1/res/default.css...DONE!
Fetching : /tmp0/1/res/netsurf.png...DONE!
Fetching : /tmp0/1/res/sans.ttf...DONE!
Fetching : /tmp0/1/res/welcome.html...DONE!
Fetching : /tmp0/1/res/internal.css...DONE!
Fetching : /tmp0/1/res/maps.html...DONE!
Fetching : /tmp0/1/res/favicon.png...DONE!
Fetching : /tmp0/1/res/credits.html...DONE!
Fetching : /tmp0/1/res/throbber/throbber8.png...DONE!
Fetching : /tmp0/1/res/throbber/throbber3.png...DONE!
Fetching : /tmp0/1/res/throbber/throbber4.png...DONE!
Fetching : /tmp0/1/res/throbber/throbber0.png...DONE!
Fetching : /tmp0/1/res/throbber/throbber6.png...DONE!
Fetching : /tmp0/1/res/throbber/throbber2.png...DONE!
Fetching : /tmp0/1/res/throbber/throbber1.png...DONE!
Fetching : /tmp0/1/res/throbber/throbber7.png...DONE!
Fetching : /tmp0/1/res/throbber/throbber5.png...DONE!
Fetching : /tmp0/1/res/pointers/point.png...DONE!
Fetching : /tmp0/1/res/pointers/no_drop.png...DONE!
Fetching : /tmp0/1/res/pointers/wait.png...DONE!
Fetching : /tmp0/1/res/pointers/up-down.png...DONE!
Fetching : /tmp0/1/res/pointers/help.png...DONE!
Fetching : /tmp0/1/res/pointers/ru-ld.png...DONE!
Fetching : /tmp0/1/res/pointers/menu.png...DONE!
Fetching : /tmp0/1/res/pointers/not_allowed.png...DONE!
Fetching : /tmp0/1/res/pointers/cross.png...DONE!
Fetching : /tmp0/1/res/pointers/default.png...DONE!
Fetching : /tmp0/1/res/pointers/caret.png...DONE!
Fetching : /tmp0/1/res/pointers/left-right.png...DONE!
Fetching : /tmp0/1/res/pointers/lu-rd.png...DONE!
Fetching : /tmp0/1/res/pointers/progress.png...DONE!
Fetching : /tmp0/1/res/pointers/move.png...DONE!
Fetching : /tmp0/1/res/icons/back.png...DONE!
Fetching : /tmp0/1/res/icons/back_g.png...DONE!
Fetching : /tmp0/1/res/icons/scrollr.png...DONE!
Fetching : /tmp0/1/res/icons/osk.png...DONE!
Fetching : /tmp0/1/res/icons/forward_g.png...DONE!
Fetching : /tmp0/1/res/icons/scrolll.png...DONE!
Fetching : /tmp0/1/res/icons/history.png...DONE!
Fetching : /tmp0/1/res/icons/forward.png...DONE!
Fetching : /tmp0/1/res/icons/home_g.png...DONE!
Fetching : /tmp0/1/res/icons/history_g.png...DONE!
Fetching : /tmp0/1/res/icons/reload_g.png...DONE!
Fetching : /tmp0/1/res/icons/scrollu.png...DONE!
Fetching : /tmp0/1/res/icons/stop.png...DONE!
Fetching : /tmp0/1/res/icons/scrolld.png...DONE!
Fetching : /tmp0/1/res/icons/stop_g.png...DONE!
Fetching : /tmp0/1/res/icons/home.png...DONE!
Fetching : /tmp0/1/res/icons/reload.png...DONE!
-------------------------
NETSURF INSTALLED. Enjoy!
-------------------------
Process: netsurf-kol
err : 0x00000000 trapno: 13 addr: 0x0000000000000000
EAX : 0x0000000000341000 EBX : 0x000000000000000c ECX : 0x0000000000541000
EDX : 0x0000000f3ffff000 ESI : 0x0000000000413ac2 EDI : 0x000000007ffff000
EBP : 0x00007ffdf3b51fa0 EIP : 0x0000000000000058 ESP : 0x0000000000340fe0
Flags : 0x00010206 CS: 0x000f
Process: netsurf-kol

Process: pokemini
err : 0x00000000 trapno: 13 addr: 0x0000000000000000
EAX : 0x00000000000027dc EBX : 0x00000000000cd014 ECX : 0x00000000000afd1c
EDX : 0x00000000000c3495 ESI : 0x0000000000413ac2 EDI : 0x000000007ffff000
EBP : 0x00000000000b0d28 EIP : 0x000000000003e7b5 ESP : 0x00000000000b0d10
Flags : 0x00010202 CS: 0x000f

Process: mun
err : 0x00000000 trapno: 13 addr: 0x0000000000000000
EAX : 0x000000000001f000 EBX : 0x000000000000000c ECX : 0x000000000021f000
EDX : 0x0000000f3ffff000 ESI : 0x0000000000413ac2 EDI : 0x000000007ffff000
EBP : 0x00007ffdf3b51fa0 EIP : 0x0000000000000058 ESP : 0x000000000001ee90
Flags : 0x00010206 CS: 0x000f
Почему-то, когда создаёшь в ~/.kex/root/RD папку ~/.kex/root/RD/2, то папка ~/.kex/root/kolibrios в Eolite невидна, а без неё - видна.
Ещё почему-то воспринимаютя только папки в верхнем регистре (~/.kex/root/RD или ~/.kex/root/TMP0).

Re: Эмулятор под Linux

Posted: Sat Apr 14, 2018 9:59 am
by Kopa
Под Ubuntu (Kylin) 32 не получается проверить проект.
Возможно, что-то делаю не так, хотя проект собирается.
Выводится сообщение "Ошибка сегментирования (сделан дамп памяти)" (куда сделан?) при запуске через консоль.
/root/RD/1/ каталог поместил в директорию программы и дополнительно img-образ подключил.

P.S. Проект в kex-master домашней папки.

Re: Эмулятор под Linux

Posted: Sat Apr 14, 2018 8:33 pm
by tsdima
JohnXenox wrote:У меня: Netsurf, mun и pokemini не запускаются. :(
Странно, судя по логу, как будто и нет поддержки регистра fs. Неужто последние версии ядра игнорируют arch_prctl(ARCH_SET_FS, ...?
Надо будет поставить в виртуалке последний Mint, хотя виртуалка, в данном случае, может и не показать истинной картины.
JohnXenox wrote:Почему-то, когда создаёшь в ~/.kex/root/RD папку ~/.kex/root/RD/2, то папка ~/.kex/root/kolibrios в Eolite невидна, а без неё - видна.
Если мы про виртуальную папку /kolibrios, то её и не нужно создавать в ~/.kex/root, она мапится программой searchap
JohnXenox wrote:Ещё почему-то воспринимаютя только папки в верхнем регистре (~/.kex/root/RD или ~/.kex/root/TMP0).
Так задумано :) Сначала каталог ~/.kex/root тоже читался, как обычная папка, но потом я решил сделать список допустимых устройств, и они в верхнем регистре.
Kopa wrote:Под Ubuntu (Kylin) 32 не получается проверить проект.
Видимо мой косяк, сегменты памяти размещаются в пределах 4Гб, но для 32-битной системы нужно и ядру место оставить :)
Тоже, видимо, придётся в виртуалке проверять.