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

Running Kolibri and its programs in other OSes
  • tsdima
    Ты как автор можешь сделать описание/скрины/видео ?
    Хотя бы скрины, но лучше все)
    Из хаоса в космос
  • Kopa wrote:Попробовал собрать последнюю ревизию у себя программы
    и получил такое сообщение

    Code: Select all

    /usr/bin/ld: /tmp/ccotqVjU.o: неопределённая ссылка на символ «dlopen@@GLIBC_2.1»
    //lib/i386-linux-gnu/libdl.so.2: error adding symbols: DSO missing from command line
    collect2: error: ld returned 1 exit status
    
    Я вроде проект тоже изменил (и README подправил), добавилась опция -ldl
    Добавилась возможность загружать драйверы, только драйверов пока нет.
  • Пока использую такую заглушку:
    Spoiler:sound.c

    Code: Select all

    #include "k_mem.h"
    
    #include <stdio.h>
    
    #define DLL  __attribute__ ((visibility("default")))
    
    DLL DWORD k_ioctl(DWORD code, void* idata, DWORD ilen, void* odata, DWORD olen)
    {
        printf("code=%d param %d\n", code, *(int*)idata);
        return 0;
    }
    Компилировать:

    Code: Select all

    gcc -o ~/.kex/sound.so sound.c -shared -fPIC
    Без неё @volume теперь не работает. Есть и другие программы, которым драйверы нужны, tmpdisk например.
  • Заметил одну особенность.
    Если пролистывать темы оформления окон (в @apperance), то окно KFAR будет в некоторые моменты уменьшаться по высоте.
  • Всё как в реале :)
  • Добрый вечер ! Я утащил ваш kex и прикрутил его к нашему дистрибутиву IceArch собранному на свежайшем ArchLinux.
    Полезная вещь, спасибо ! Чтобы не приняли за спамера ссылку на дистр давать не буду , кому интересно
    можете посмотреть на форуме Арча в разделе Разработки Арчеводов. Надеюсь , что небольшая реклама среди линуксоидов будет вам полезна. К меню IceWM через kex мною прикручены kfar и eolite , также добавил ссылку на ваш сайт чтобы пользователи могли почитать что-то умное , а не только запускать игрушки из колибри. Если у вас нет возражений по использованию эмулятора в такой связке, то все это появится в новой версии IceArch, которая выйдет в середине или конце февраля .
    Spectrum forever !
  • Реклама - это хорошо. Только вот добавление в дистрибутив обычно дополняется обязанностью дальшейшей поддержки софта. А этого я обещать не могу, т.к. этот эмулятор - это своего рода хобби-проект. Но в принципе я не против.
  • Наш дистрибутив это тоже хобби-проект , так что все нормально. Вот как все это выглядит в IceArch :
    Image
    Пункт меню Справка открывает https://kolibrios.org/ru/ для тех кому интересно узнать побольше.
    EOLITE пришлось убрать из меню так как в VirtualBox он крашится ( при этом прекрасно запускаясь на реальном железе ) , KFAR замечательно работает везде его и оставил. Запихал в сборку образ колибри в который добавил doom1 для своих товарищей по-разработке, вспомнить молодость , в принципе он там лишний пока не знаю оставим или удалим.
    Spectrum forever !
  • Отличный проект!

    Собрал проект под Linux LiveCD Puppy 32 (Xenial)
    подмонтировал образ дискетки и CD диска и запустил с Far менеджера навигацию по дискам.
    многие программы нормально работают, но есть и исключения.

    Интересно и, что меню из KolibriNext тоже установилось в верхней части экрана.

    P.S. Возможно ли примонтировать к эмулятору и каталог из Linux системы,
    хотя и примонтированной дискетки может хватить для обмена файлами.
  • KPG wrote:P.S. Возможно ли примонтировать к эмулятору и каталог из Linux системы,
    хотя и примонтированной дискетки может хватить для обмена файлами.
    По аналогии с CD0/1 и RD/1 можно создать каталоги TMP0/1, TMP0/2, ... Монтировать туда конечно же ничего не надо. Вообще, TMP0/1 можно даже сказать, что должен быть обязательно. Функции создания рамдисков не реализованы, поэтому нужно создавать их вручную.
  • рамдиск создаётся при помощи драйвера и созданного для него приложения(вроде как называется "виртуальные диски")
  • Драйвер вещь достаточно низкоуровневая, его нельзя запустить в этом эмуляторе. Я начинал делать поддержку драйверов как подгружаемых динамических библиотек, но возникли непонятки, куда их грузить: в основной процесс (сервер, запускающий программы и поддерживающий связь между ними) или в процесс программы, его использующей. Логично было бы предположить, что нужно грузить в основной процесс, драйвер ведь должен работать в одном экземпляре, но взаимодействие с программой гораздо проще сделать, если библиотека эмулирующая работу драйвера загружалась бы в процесс этой программы. Вобщем на этом развитие эмулятора и остановилось.
  • Who is online

    Users browsing this forum: No registered users and 1 guest