Page 8 of 66
Posted: Mon Jul 10, 2006 10:31 pm
by Serge
Mario79
Посмотрел по исходникам. Если ты дошел до этой точки, значит ядро грузится нормально. Единственная возможная проблема - LAUNCER. Вероятнее всего он вылетает с нарушением защиты и не запускает остальные программы. Я проверял разные конфигурации в Bochs, все грузилось нормально.
Возможны два варианта:
1) я сильно изменил функцию запуска нового приложения.
Там могла возникнуть неприятная зависимость от частоты процессора. Если в момент запуска новой программы произойдет переключение задачи (наверное на os_idle) то потом возможно разрушение контекста задачи, запускавшей приложение. Я думал, что исправил это, но возможно что ошибся. Во всяком случае у меня такой проблемы пока не ни разу не возникало. Какая у тебя частота процессора ?
2) ты использовал menuet.img отличающийся от 0.530b2.
Posted: Mon Jul 10, 2006 10:35 pm
by Serge
Mario79 Тогда вариант 2 отпадает. А у тебя есть возможность запустить под эмулятором?
Posted: Mon Jul 10, 2006 11:43 pm
by Mario79
Serge
Я написал в прошлом посте, но повторю Duron950 - 950 это частота процера, частота шины 100 МГц (разумеется, не считая, что это DDR, то есть, на чтение передается 2 бита и частоту можно умозрительно умножить).
Я пробовал загружаться, не меняя параметров Loader.ini, загрузилось до вывода фоновой картинки (по крайней мере, визуально), но мышь не пашет.
Из эмуляторов у меня есть Bosh и Qemu. Как попробую, отпишу, что получилось.
Posted: Tue Jul 11, 2006 12:36 am
by Serge
Mario79
Исправил возможную ошбку (вариант 1). Заодно добавил поддержку всех стандартных PCM кроме 48000 Гц.
Ссылка прежняя. Если не будет работать, значит проблема в чём-то другом.
загрузилось до вывода фоновой картинки
В смысле десктоп загрузился полностью или зависло до того, как начали рисоваться обои?
вариант 3)попробуй добавить в loader.ini строку
Code: Select all
Kernel heap 8; задает размер кучи ядра в мегабайтах. значение должно быть кратно 4
Возможно что неправильно определяется размер ОЗУ, хотя способ не менялся и работал без ошибок и в Боше и на железе.
Posted: Tue Jul 11, 2006 6:38 pm
by Mario79
Serge
Теперь все загрузилось.
Мой AC97 кодек не поддерживается, об это было сообщение на доске отладки.
Когда я раза 3-4 запустил AC97 плеер система подвисла.
Ну, и привычным Ctrl+Alt+Del я ввел систему в полный ступор. Хотя мышь слегка шевелилась, а загрузка в панели показывалась на все 100%.
Posted: Tue Jul 11, 2006 8:16 pm
by Serge
Mario79
Уже лучше. Загрузилась прежняя версия или скачивал новую? Надо будет их нумеровать чтобы не путаться. Глюк действительно возникает если плеер запускается и сразу завершается. Похоже что ошибка возникает где-то в terminate. Зависший плеер убивается Alt+F4. Ctrl+Alt+Del я займусь, а пока лучше не нажимать

. Какой у тебя точно чипсет и какой чип кодека, если знаешь, укажи номер. Я поробую написать драйвер для SIS.
Posted: Tue Jul 11, 2006 9:51 pm
by Mario79
Serge
Загрузилась новая.
Я же писал, что у меня C-Media SIS7012. Более подробных сведений не имею это все, что выдает AIDA32 и Sandra.
Posted: Tue Jul 11, 2006 10:40 pm
by Serge
Я нашел причину зависания. Ошибка была в функции загрузки драйвера. Она еще сырая и нуждается в доработке.
Всем
У кого-нибудь загрузилось на Интел?
Posted: Thu Aug 03, 2006 2:59 pm
by andrew_programmer
При скачивании выдаётся сообщение,что файл не существует....
Posted: Thu Aug 03, 2006 6:49 pm
by Serge
http://infinity-sound.narod.ru/058_004.rar
Ядро основано на версии SVN.105. Для запуска нужен дистрибутив 0.5.8.0 или 0.5.8.1
AC97WAV - сильно переделанный плеер. Для запуска просто кликнуть на wav-файле в sysxtree.
Поддерживаются 8/16 бит моно/стерео 11025 12000 16000 22050 24000 32000 44100 48000 Гц PCM
44100 звучит вполне прилично
22050 иногда присвистывает на верхних частотах
11025 заметно свистит на верхах, нужно делать ресемплер с фильтром.
Можно одновременно проигрывать 16 звуковых файлов. Реально файловая система позволяет одновременно проигрывать 6-8 файлов. Это значение может сильно зависить от производительности и фрагментированности жесткого диска.
Драйверы intel.obj и infinity.obj загружаются при первом запуске плеера и выводят на доску отладки тип контроллера, кодека и дополнительную служебную информацию. Контроллеры определяются только интелловские (ICH - ICH7) и SIS7012 (если контроллер не определяется, драйвер работать не будет), кодеки Realtek, CMedia и AnalogDevices. Если кодек не определяется правильно, он все равно должен работать.
sis.obj драйвер для контроллеров sis7012. Для установки необходимо переименовать в intel.obj и скопировать на дискету. Драйвер пока находится в стадии отладки.
Недоделки.
Плеер можно запускать не более 16 раз. Скоро исправлю.
Утечка памяти 180 Кб на каждую загрузку плеера. Исправлю позже.
Статические буферы пока не готовы.
Недоделки ядра.
Отключен запуск программ через ф.70. Поэтому не работают панель и меню.
Не работает отладчик.
Не поддерживаются окна произвольной формы.
Posted: Fri Aug 04, 2006 9:55 am
by Serge
http://infinity-sound.narod.ru/058_005.rar Исправил возможную ошибку с кодеками Analog Devices.
Posted: Tue Aug 08, 2006 4:35 pm
by andrew_programmer
У меня контроллер интеловский,а кодек реалтековский.Всё отлично работает.
Для того,чтобы на 100% загрузить мой процессор(celeron2000) мне пришлось запустить 10 потоков.Но при этом звук нормально проигрывался(без заиканий).Даже в виндовс и Линукс я редко запускаю 2 потока,а уж больше двух я запустил только в Колибри.Хотя скорость чтения с диска 2 мегабайта в секунду,думаю этого хватит для нормальной работы со звуком(если запускать не больше двух потоков).А если музыка трекерная,то её можно вообще в оперативку загрузить(трекерная музыка мало весит).
Posted: Tue Aug 08, 2006 6:06 pm
by Serge
Мне кажется система стала лучше работать после последних изменений в планировщике. Раньше я запускал лабиринт и плеер и звук начинал тормозить. Сейчас можно запустить два лабиринта и звук идет просто отлично, даже удивительно. Но проблема с длинными файлами все равно остается. Плеер читает файл блоками по 32 кБ. Практически каждый раз система разбирает путь к файлу, ищет его в каталоге, читает цепочку FAT и так каждый раз. Если бы были дескрипторы файлов как системные объекты то всё это можно было бы делать один раз при открытии файла и доступ бы сильно ускорился.
andrew_programmer
Ты не проверял как звучат файлы с маленьким битрейтом 11025 12000 16000 Гц.
Мне интересна субъективная оценка качества ресемплирования.
Posted: Tue Aug 08, 2006 6:15 pm
by Quantum
andrew_programmer wrote:А если музыка трекерная,то её можно вообще в оперативку загрузить(трекерная музыка мало весит).
Да, uFMOD так и поступает.
Posted: Tue Aug 08, 2006 11:55 pm
by andrew_programmer
Serge
44100 звучит отлично.
22050 нормально,но есть некоторый шум на верхних частотах.Его слышно если напрячь слух.
11025 помоему вполне нормально.
А вот другие частоты непроверял,так как у меня нет таких wav файлов.