Колибри для музыкантов

No comments
  • А я бы хотел видеть в Колибри аналог 3D Studio Max и Visual Studio 2005.
  • Ага программеры и так заняты по самые уши. И сколько времени уйдет на разработку всего этого софта??? Нет, на одном хочу здесь не уедешь.
  • 100%
    Как говориццо унитаз с турбоподдувом конечно хорошо..., но лекарство от СПИДа всё же нужнее.))

    Проще говоря - может вначале закончить браузер, стек TCP\IP, видео-плеер, драйвер USB и т.д.
  • Атауальпа +1
    А у меня Nuendo2 есть портативный. В винде без установки работает,
    тоесть реестр ему всёж нужен, но но создаёт всё сам...
    Хм так если придётся портировать варезный софт, то это пресекаемо,
    а иначе как? Или кто-то Нюэндо напишет сам. :shock:
    Может дать людям какойнить движок-мост, чтоб они могли использовать третий софт на своё усмотрение...
  • Я немного отойду от темы.
    Мне кажется одним из решений данной проблемы будет, это перенос Bochs или QEmu (он же с открытым кодом?). С установкой соотв. софта и ОСи конечно же.
    Правда я не знаю насколько это сложно, если бы у меня были достаточные знания Си, я бы самостоятельно поковырялся в исходниках, а так, могу только предложить это сделать другим программистам.

    ..bw
  • почему именно bochs и qemu? Может уж лучше Wine, так же опен сорс?
  • Что-то у меня Wine под линуксом не хотел запускать звуковые редакторы...
  • Вот на создание эмулятора, думаю парни потянут, возьму на себя наглость заявить :)
    А лучшеб ядро само поддерживало MZ и всякие прочие elf форматы ) гы!
    Может надо два и более ядра загружать, для нестандартныкх задач...;| offtop me!
  • Сделать возможность загружать elf-экзешник - не так сложно, как мне кажется, но как быть с системными вызовами, половина из которых не имеет аналога в ядре Колибри??? Я уже не говорю о динамических библиотеках, вроде LIBC, без которых крайне редко обходятся *никсовые эльфы. Короче, проблема вовсе не в формате, IMHO.
  • А тема-то о работе со звуком...
    Вижу, некоторые не понимают что для многих современных музыкантов редактор звука и прочее - это предметы первой необходимости! Если появится хотя бы только редактор звука для Колибри, мы будем даже больше рады, чем физики - программе для мессбауэровских вычислений. Потому что редактором звука мы пользуемся почти каждый день по своей специальности.
  • Конечно появится, только не сегодня.
    Мне интересна эта задача, я бы взялся за реализацию простого редактора. Но не сегодня, и не в этом году.
    Не по теме:
    Действительно PE и ELF загрузчики сделать 1-2 дня, ну может немного дольше. Мне кажется что их даже нужно сделать, а при столкновении с динамическими библиотеками, эти загрузчики должены выругиваться на доске отладки и вежливо посылать пользователя в диалоговом окне. Но я бы реализовал их отдельно от ядра, т.е. вынес бы из ядра. Так их будет проще отлаживать. Единственное что ядро должно знать о существовании таких загружчиков и вызывать/использовать их при необходимости.

    ..bw
  • А в чём проблемма, если PE что-то и вызывает, надо всё и впихнуть туда, разве нельзя коллекцию родных dll пользовать в эмуляторе.
    Положить kernel32.dll и вызывать из него api, вон работает же linux soft под cygwin. Грубо говоря.
    Я даже кажись знаю путь протоптанный... Вот masm32 когда инсталируется, он сильно грабит винду в свои инклюды как я понял.
    Его два каких-то крутых чувака "написали" - не из microsoft :)
    И пользователи масма, довольно преуспели в премалывании апишек. Целые мануалы IceZelon лежат.
    Но может я чё-то и не врубаюсь, что более верно :)

    А ещё один оффтоп, если бы Nuendo загружалось само )) я бы выбрал это. Жаль к нему загрузчик не прикрутить - была бы бомба!
    Если серьёзно, то обилие функций программы на целую ось потянет.
  • semiono
    1. Написать полноценный загрузчик PE-файлов, обрабатывающий все тонкости формата, на самом деле очень нетривиально.
    2. Загрузить с user-level PE-файл без релокаций с текущим ядром вообще невозможно (нельзя выделить память по фиксированному адресу). Абсолютное большинство PE-exe-шников таблицы релокаций не содержат.
    3. Помимо API, в винде есть такая вещь, как SEH (Structured Exception Handling, если кто не знает) в частности и данные, адресуемые селектором fs, в целом. SEH при текущем ядре вообще нельзя эмулировать, а с инструкциями типа "push fs:[0]/mov fs:[0], esp" разбираться как-то надо.
    4. Linux soft под cygwin не работает. cygwin вообще не знает про форматы a.out/ELF и загрузкой файлов не занимается - это делает виндовая CreateProcess. Чтобы программа работала под cygwin, её нужно в обязательном порядке перекомпилировать под самим cygwin'ом, чтобы получился весьма специфический файл - PE-файл, импортирующий функции из cygwin1.dll.
    5. При вызове API в принципе можно использовать коллекцию "родных" dll, но при этом придётся эмулировать базис, на котором работают эти "родные" dll, то есть интерфейс ядра. Думаете, это проще? Кстати, несколько лет назад я пытался сделать что-то подобное при разработке эмулирующего плагина для IDA. Не вдаваясь в подробности, отмечу только, что уже эмулировались несколько десятков NativeAPI-функций (я ориентировался исключительно на NT-платформы) (в том числе NtAllocateVirtualMemory, NtCreateFile, NtCreateSection, NtQueryValueKey, NtConnectPort), а процесс не ушёл дальше инициализации kernel32...
    6. masm32 ничего не грабит. Установка (большая часть установки) заключается в компиляции из исходников библиотек, поставляемых с masm32, в сами библиотеки.
    Ушёл к умным, знающим и культурным людям.
  • diamond,
    Вы ответили на такое колличество вопросов, что я за год не мог выяснить нигде! Спасибо огромное!
  • Who is online

    Users browsing this forum: No registered users and 23 guests