inferno порт на win mobile (arm)

Тема в разделе "WASM.PROJECTS", создана пользователем qqwe, 13 май 2011.

  1. qqwe

    qqwe New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2009
    Сообщения:
    2.914
    пытаюсь боле-мене полноценно спортировать инферно на вынь мобиль (pocket pc) на arm. кое что уже получилось. поддерживается консоль, гуй, звук. можно работать с фс, включая дрова, редактировать, компилировать и отлаживать на тельце. но идет пока не все (например, не идет жит, валится. не включайте его пока) и не все проверил. сеть не проверял пока. в некоторых случаях валится. но взглянуть уже можно

    http://basmphg.heliohost.org/f/inferno-ppc/27/

    [​IMG]
     
  2. qqwe

    qqwe New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2009
    Сообщения:
    2.914
    заработала сетка-инетка. и обычная и на стиксе по листен-у
    [​IMG]
     
  3. qqwe

    qqwe New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2009
    Сообщения:
    2.914
    небольшой поверхностный тутор как работать с инетом из инферны

    # сперва запускаем сервер соединений
    ndb/cs

    # затем, получаем ip от имени (если ip известен, то этот шаг можно пропустить)
    (null ip)=`{{echo tcp!<имя сайта без http и папок со страничками>!http >[1=0]; read;}<> /net/cs}

    # что тут что.
    # первые скобки - разделитель токенов, тк возвращается 2 слова.
    # `{...} - тоже самое, что в юнихе `...`
    # tcp!...!http - так в инферне записываются инет адреса (http - просто синоним порта 80. можно написать цифрой).
    # >[...] - так перенаправляется ввод-вывод. в данном случае с 1 на 0.
    # read - команда чтения. файл сам себя не прочитает.
    # <> - хитрое перенаправление. стдин направляется в одну сторону, а стдоут в другую. без закрытия файла между операциями. и вообще, пока не закончится последовательность в скобках.
    # /net/cs - имя на которое по дефолту цепляется ndb/cs. а вся папка /net - дерево имен для работы с сетью

    # далее открываем себе соединение
    { id=`{read}; echo connect $ip > /net/tcp/$id/ctl; workfoo $id;}<> /net/tcp/clone

    # что есть и что пить
    # /net/tcp/clone - выделятель соединений. соединение будет существовать, пока файл не закроется. потому <>
    # id=`{read} - читаем номер соединения из клонера и запихиваем в переменную $id
    # echo connect $ip > /net/tcp/$id/ctl - пишем команду на открытие нужного ip в управляющий файл выделенного нам соединения.
    # workfoo $id - рабочая функция. можно и без нее, но удобнее разделить операции по связи и обработке

    # сама обработка
    fn workfoo {
    id=$1

    echo ... > /net/tcp/$id/data

    cat /net/tcp/$id/data

    var=`{read < /net/tcp/$id/data}
    }

    # опять насчет что есть, а чего уже уперли
    # fn workfoo {...} - так в инферно (и план) шелле задаются функции
    # id=$1 - параметры переданные в функцию задаются номерами. просто присваиваем в более вразумительное имя
    # echo ... > /net/tcp/$id/data - выводим строку в канал данных нашего соединения. в конце добавляется \r\n, потому просто echo > /net/tcp/... просто выведет в канал \r\n
    # cat /net/tcp/$id/data - читаем строку из канала в стдоут с ожиданием. пустая строка == все.
    # var=`{read < /net/tcp/$id/data} - вариант чтения, но с возможностью присваивать шеловским переменным и дальше обрабатывать в скрипте (например регекспы, сравнения итд)

    гдето так можно ковырять сайты вручную прямо из ком строки. любые средства работающие с файлами подойдут. например, можно загрузить из сетки напрямую в блокнот.
     
  4. qqwe

    qqwe New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2009
    Сообщения:
    2.914
    в подтверждение туторитто выше - живой скрин со скриптом и полученным прямо в блокнот выводом из сетки.
    [​IMG]
     
  5. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    картинки с heliohost не грузятся - аккаунт требуют...
     
  6. qqwe

    qqwe New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2009
    Сообщения:
    2.914
    valterg
    сервер там лег еще вчера. я там новую сборку залить хотел. с эмуляцией всех кнопок мыши и простыми быстрыми сменами раскладок, но пока не судьба.
     
  7. rmka

    rmka Member

    Публикаций:
    0
    Регистрация:
    22 окт 2010
    Сообщения:
    108
    qqwe
    У вас в #4 посте ссылка на cpanel, а не на картинку.
     
  8. qqwe

    qqwe New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2009
    Сообщения:
    2.914
    valterg
    rmka
    спасибо, поправил, ато еще и правда зайдет ко мне в цпанель кто
     
  9. qqwe

    qqwe New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2009
    Сообщения:
    2.914
    частично заработало. сборка с поддержкой до 3х кнопок мышки, перекодировкой (актуально для добавления недостающих кнопок на клаву или легкой локализации) выложена. инструкция тоже. сорс не выкладывается, тк не получается создать репу. админка еще полулежит.

    http://basmphg.heliohost.org/f/dispatch.wsgi/f/dispatch.wsgi/inferno-ppc/27/#41
     
  10. qqwe

    qqwe New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2009
    Сообщения:
    2.914
  11. qqwe

    qqwe New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2009
    Сообщения:
    2.914
    чуть стабилизировал порт. теперь не валится при каждом запуске внешней проги. теперь валится только при запуске тяжелых внешних прог (те, не инферно-проги, а вынь-се проги).
    потребление памяти с запущенной граф оболочкой и несколькими граф-прогами - 7.5 мб. может быть поэтому.

    в правом нижнем углу индикаторы кнопок для эмулятора 3х кнопочной мыши. без них сильно неудобно было.

    жит пока не работает

    ссыль