Board.KolibriOS.org

Official KolibriOS board
It is currently Wed Oct 23, 2019 3:34 am

All times are UTC+03:00




Post new topic  Reply to topic  [ 32 posts ]  Go to page 1 2 3 Next
Author Message
 Post subject: cd burner
PostPosted: Thu Mar 31, 2011 4:56 pm 
Offline

Joined: Mon Sep 24, 2007 11:11 am
Posts: 2814
Где-то на форуме читал, что добавить возможность записи на диск iso-образа не сложно, сложно сделать iso-образ.
Если у меня получится портировать mkisofs или нечто подобное, могу ли я надеяться на помощь в части ядра?;)


Top
   
 Post subject: Re: cd burner
PostPosted: Thu Mar 31, 2011 5:43 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Хочешь сделать прожигалку под Колибри ?


Top
   
 Post subject: Re: cd burner
PostPosted: Thu Mar 31, 2011 5:48 pm 
Offline

Joined: Mon Sep 24, 2007 11:11 am
Posts: 2814
Именно. Думаю, что это будет по крайней мере полезно.


Top
   
 Post subject: Re: cd burner
PostPosted: Thu Mar 31, 2011 6:25 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Наверное придётся сильно править код работы с CD. Если не ошибся там сейчас обмен данными идёт через PIO, по одному сектору. А для прожига желательно DMA и буфирование данных.


Top
   
 Post subject: Re: cd burner
PostPosted: Thu Mar 31, 2011 6:31 pm 
Offline

Joined: Mon Sep 24, 2007 11:11 am
Posts: 2814
Вот оно как... Действительно, через PIO будет медленно записывать.
Однако, Mario писал когда-то, что вроде бы не очень сложно сделать запись: viewtopic.php?f=8&t=677&p=12518


Top
   
 Post subject: Re: cd burner
PostPosted: Thu Mar 31, 2011 8:46 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Но кто будет этим заниматься ?


Top
   
 Post subject: Re: cd burner
PostPosted: Thu Mar 31, 2011 9:00 pm 
Offline

Joined: Mon Sep 24, 2007 11:11 am
Posts: 2814
Смотрел на код mkisofs, вроде ничего необычного. Как только руки до него доберутся, и получится делать iso-образы в Колибри, тогда можно будет подумать обо всем остальном. Увы, сам я с ядром вряд ли что-то смогу сделать. Собственно, поэтому тема в форуме "Идеи".
Ковыряю mkisofs. Ругается на dirent.h (разве не могли сделать код полностью posix-совместимым :(), а когда будет реализована эта штука - не берусь предположить. Даже не знаю, сколько работы это потребует.
Попробую еще genisoimage посмотреть, вдруг (?) там получше...


Top
   
 Post subject: Re: cd burner
PostPosted: Thu Mar 31, 2011 11:10 pm 
Offline

Joined: Mon Sep 24, 2007 11:11 am
Posts: 2814
Программа isoinfo (автор - Eric Youngdale, лицензия - GPL2).
Выводит на доску отладки информацию об iso-образе, в том числе и список файлов.
Еще немного попилить, и с ее помощью можно будет извлекать файлы из образов iso9660.

Использовать так: isoinfo <файл.iso>

:? Есть проблема: первые несколько запусков программа падает, и лишь с третьей или четвертой попытки выдает то, что нужно. Не исключаю, что проблемы у меня на жестком диске (qemu любит портить fat32), поэтому прошу протестировать. Как только с этим все ОК будет, попробую впилить распаковку файлов из iso.

Вопрос к Serge: потрошение argv еще не включено в код? :) Все же без него тяжко.


Attachments:
isoinfo.7z [28.32 KiB]
Downloaded 148 times
Top
   
 Post subject: Re: cd burner
PostPosted: Thu Mar 31, 2011 11:33 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Sorcerer

Нет. Пока нет времени этим заняться.


Top
   
 Post subject: Re: cd burner
PostPosted: Fri Apr 01, 2011 7:39 am 
1. Среди команд действительно есть команда записи, но вроде как работает она только для CD приводов, т.е. DVD нет - старая команда, которая уже не факт что поддерживается новыми приводами.
2. Да и еще действительно есть проблема с тем, что код для ATAPI работает лишь в PIO режиме. Написать поддержку DMA в режиме работы с очередями не так просто, как обычный DMA.
3. Современные резаки либо тащат с собой весь код работы с приводом (например старые версии Nero не видят новые приводы в режиме записи), либо пользуются услугами драйвера ОС. Не знаю как реализован k3b для Linux, поскольку не разбирался с кодом, но программа мне лично нравится.


Top
   
 Post subject: Re: cd burner
PostPosted: Fri Apr 01, 2011 8:46 am 
Offline

Joined: Mon Sep 24, 2007 11:11 am
Posts: 2814
1. Странно, стандарт должен быть стандартом...
2. Но все же лучше если возможность записи будет, чем если ее не будет, мне кажется. С какой скоростью можно писать в PIO-режиме? 2 мегабайта в секунду? Мегабайт? Это всё равно терпимо, у меня 4x диски вряд ли пишутся быстрее.
3. cdrkit и wodim. K3b это front-end. У cdrkit заявлена переносимость (linux/windows/*bsd/sunos/aix), зависимости: sane libc, gnu make, c99. Смотрю сейчас на код, его много, но он качественный. Чувствую, что в конечном счете все будет сводиться к
Code:
int
write_data_track (int fd, int *reply_len, struct sg_reply *rep) {
   *reply_len = sizeof(struct sg_reply);
   return send_request (fd, "write_data_track", reply_len, rep, 10,
         WRITE_TRACK,   /* 0 */
         0,      /* 1 */
         0,0,0,      /* 2..4 */
         0,           /* 5: track number (0=new) */
         1,      /* 6: data track, mode 1 */
         0,0,0      /* 7..9 */);
}

Хотя могу и ошибаться.

Это насколько старой должна быть nero и насколько новым привод? У меня не было версий младше 6й, но она везде работала.

4. Еще недельку повозиться (а может, и меньше), и скорее всего в Колибри можно будет создавать/распаковывать iso-образы и рипать audio cd. Конечно, не каждый день с этим возиться приходится, но без этого часто как без рук.


Top
   
 Post subject: Re: cd burner
PostPosted: Fri Apr 01, 2011 9:24 am 
Offline
User avatar

Joined: Thu Mar 01, 2007 7:57 pm
Posts: 835
Меня тревожит, что всё чаще в Колибри портируются чужие программы и всё чаще на ЯВУ. Конечно, образы ISO — это здорово, запись дисков была в том числе и моей хотелкой, но лучше бы это было своим и на ассемблере, лучшие традиции Колибри надо сохранять...

_________________
Всех выше те, кто доброе творят,
И за дела добра не ждут наград,
Всем жертвуют для страждущих людей,
Не думая о выгоде своей.


Top
   
 Post subject: Re: cd burner
PostPosted: Fri Apr 01, 2011 9:27 am 
Sorcerer
1. У стандартов есть основные функции и дополнительные, так что производители трактуют стандарт так как им нравится.
2. Возможно на низких скоростях и можно что-либо вытянуть, но ведь это опять таки ущербный костыльный подход, в чем Колибри обвиняют постоянно.
3. Nero версии 5.9.x.x не видел у меня новый привод, с 6-й да проблем не было, но это не значит что их не бывает совсем.

Атауальпа
Сколько программ ты написал? Самый умный, да? :lol:


Top
   
 Post subject: Re: cd burner
PostPosted: Fri Apr 01, 2011 12:06 pm 
Offline

Joined: Mon Sep 24, 2007 11:11 am
Posts: 2814
С большим удовольствием я бы портировал программу создания образов на асме,или библиотеки ttf,но их просто нет.Сколько недель,месяцев,лет работы гуру потребовалось бы для их создания?Я не знаю.Я ориентируюсь на то,что есть.И что лучше Программа на яву,чем никакой.Если кто-то может лучше и на асм-я только рад (например,job)


Top
   
 Post subject: Re: cd burner
PostPosted: Fri Apr 01, 2011 1:34 pm 
Offline
Kernel Developer
User avatar

Joined: Thu Sep 03, 2009 1:52 pm
Posts: 1621
"И что лучше Программа на яву,чем никакой" - в результате этого подхода мы уже наблюдаем, что потерян текущий хостинг, возможно, что это одна из причин ухода diamond'а, и, вероятно, ещё приведёт к появлению СтраусОС © вместо КолибриОС со всеми вытекающими последствиями для имиджа и притока новых/ухода старых людей. Так что иногда определённо лучше "никакой".

_________________
Сделаем мир лучше!


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 32 posts ]  Go to page 1 2 3 Next

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Limited