Board.KolibriOS.org

Official KolibriOS board
It is currently Sun Dec 15, 2019 1:59 pm

All times are UTC+03:00




Post new topic  This topic is locked, you cannot edit posts or make further replies.  [ 45 posts ]  Go to page 1 2 3 Next
Author Message
 Post subject: Клиент IRC
PostPosted: Tue Sep 29, 2009 1:35 pm 
Offline
Kernel Developer
User avatar

Joined: Thu Sep 03, 2009 1:52 pm
Posts: 1621
Я представляю вашему вниманию airc 0.6, новую версию клиента IRC. Она представляет собой развитие программы, давно лежащей в репозитории Колибри и, похоже, давно не развиваемой. Я переписала взаимодействие с сетью, теперь программа получает IP-адрес по имени через библиотеку, считывает принятые данные большими кусками, а не с системным вызовом на каждый байт, не подвисает на время соединения, не тратит ресурсов в состоянии ожидания. Интерфейс программы теперь показывает статус соединения не в виде маловразумительного числа, а человекопонятной строкой. Кроме того, я добавила к существовавшей перекодировке в cp1251 поддержку cp866 и utf-8, причём переключаться между ними можно динамически в процессе работы.
Для работы программы нужно свежее ядро и библиотеки network и msgbox.
Скомпилированная версия и исходники прилагаются. Поскольку в репозитории программа присутствует, я обновила исходники и там.

EDIT 10/07/2013 yogev_ezra: это устаревшая программа для старой сетевой подсистемы. Новая программа здесь: viewtopic.php?f=40&t=2248


Attachments:
File comment: Скомпилированная версия
airc-bin.7z [4.56 KiB]
Downloaded 230 times
File comment: Исходники
airc-src.7z [16.54 KiB]
Downloaded 234 times

_________________
Сделаем мир лучше!
Top
   
 
 Post subject: Re: Клиент IRC
PostPosted: Tue Sep 29, 2009 2:40 pm 
Offline
Kernel Optimizer
User avatar

Joined: Mon Jan 16, 2006 7:58 pm
Posts: 657
Рекомендую посмотреть макрос load_lib.mac, доступен в разделе библиотеки box_lib. При использовании макроса более информативно отображается информация, если произошел сбой при загрузки библиотеки или импорте.


Top
   
 
 Post subject: Re: Клиент IRC
PostPosted: Tue Sep 29, 2009 4:04 pm 
Offline
User avatar

Joined: Thu May 19, 2005 4:43 pm
Posts: 896
Сеть в KolibriOS я тестирую в Qemu, потому что мой ADSL модем KolibriOS по понятным причинам не понимает (сетевая карта работает).
HTTP клиент работает, а вот AIRC, что старый, что новый, дальше сообщенияresolving server name... ничего не отображает. Сетью в KolibriOS я не занимался, поэтому даже не знаю, в чём может быть дело.

CleverMouse, желаю удачи в дальнейшем развитии сети в KolibriOS.

_________________
KolibriOS-перспективная ос!
Kolibri is best operation system in the world!


Top
   
 
 Post subject: Re: Клиент IRC
PostPosted: Tue Sep 29, 2009 4:29 pm 
Offline
Kernel Developer
User avatar

Joined: Thu Sep 03, 2009 1:52 pm
Posts: 1621
<Lrz>, я смотрела на этот макрос, и мне он не понравился по следующим причинам:
- он включает в программу код, который я считаю избыточным: в реальных условиях и дистрибутивах нужные библиотеки будут, так что получится, что программе придётся расплачиваться за обработку ситуаций, которые не случатся, мёртвым балластом кода
- он не вызывает функцию инициализации, с ним не будут работать библиотеки libs-dev
andrew_programmer, раз программа задумывается на этапе разрешения имени, то библиотека не получает ответа от DNS-сервера. Клиент httpc обращается к фиксированному серверу далеко в Интернете, библиотека network считывает системные настройки - провайдеры предоставляют свой сервер, и лазить в Интернет за каждым именем не нужно. Следовательно, в этих настройках DNS-сервер не указан или указан неверно. Можно, например, запустить конфигурацию сети, программу stackcfg, и установить там нужный адрес вручную. Если нет никаких идей, что ставить, можно прописать адрес, зашитый в httpc, - 194.145.128.1.
В qemu можно поднимать сеть разными способами, и задание адресов в настройках самого qemu зависит от того, какой способ используется.

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


Top
   
 
 Post subject: Re: Клиент IRC
PostPosted: Tue Sep 29, 2009 7:45 pm 
Offline
Kernel Optimizer
User avatar

Joined: Mon Jan 16, 2006 7:58 pm
Posts: 657
С функцией инициализации я что-нибудь придумаю. На счет избыточности кода - можно поспорить. Макрос более информативен и удобен для пользователя. Не каждый пользователь полезет смотреть на доску отладки, если что не так, если программа не запустилась. Конечному пользователю вообще без разницы, или работает или не работает. Разница даже в +1 Кб от использования макроса незначительно увеличивает объем программы.

Рекомендую использовать возможности библиотеки box_lib.obj. Желаю удачи в твоей работе!
Все выше сказанное только мое мнение.


Top
   
 
 Post subject: Re: Клиент IRC
PostPosted: Wed Sep 30, 2009 12:24 am 
Offline
Kernel Developer
User avatar

Joined: Mon Nov 28, 2005 8:00 pm
Posts: 1601
Если, сидя на канале, сменить ник, то он действительно меняется, но новые сообщения продолжают отображаться со старым ником.


Top
   
 
 Post subject: Re: Клиент IRC
PostPosted: Wed Sep 30, 2009 11:03 am 
Offline
User avatar

Joined: Tue Jan 24, 2006 8:50 am
Posts: 249
все замечательно, но можно ли добавить readme с кратким описанием, возможностями, ограничениями и нуждами/зависимостями в библиотеках, ну и конечно об авторе(можно и с фото).. ^__^


Top
   
 
 Post subject: Re: Клиент IRC
PostPosted: Thu Oct 01, 2009 1:41 pm 
Offline
Kernel Developer
User avatar

Joined: Thu Sep 03, 2009 1:52 pm
Posts: 1621
<Lrz>, не каждый пользователь самостоятельно собирает дистрибутив, а те пользователи, которые это всё же делают, сами могут позаботиться о нужных библиотеках. Загрузчик от mike.dld, который я сейчас использую, вообще не содержит избыточного кода даже для вывода на доску отладки.
s1n, это клиент IRC, описания команд IRC разной степени подробности легко найти в Интернете. Программа не использует никаких дополнительных зависимостей по сравнению с последней ночной сборкой. Автором является Ville, его фото у меня нет, если тебе интересно, можешь поискать сам.

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


Top
   
 
 Post subject: Re: Клиент IRC
PostPosted: Thu Oct 01, 2009 6:22 pm 
CleverMouse
При всем моем уважении к мнению автора, которое имеет наивысший приоритет (и это не стеб, а правда), но заявлять о какой-либо существенной экономии от не использования макроса, когда приложение начинается с:

Quote:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; ;;
;; IRC CLIENT for KolibriOS ;;
;; ;;
;; License: GPL / See file COPYING for details ;;
;; Copyright 2004 (c) Ville Turjanmaa ;;
;; Copyright 2009 (c) CleverMouse ;;
;; ;;
;; Compile with FASM for Kolibri ;;
;; ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

version equ '0.6'


;__DEBUG__ equ 1
;__DEBUG_LEVEL__ equ 1

use32
org 0x0

db 'MENUET01' ; 8 byte id
dd 0x01 ; required os
dd START ; program start
dd initialized_size ; program image size
dd 0x100000 ; required amount of memory
dd 0x100000

dd 0,0

имхо не очень уместно.


Top
   
 
 Post subject: Re: Клиент IRC
PostPosted: Fri Oct 02, 2009 2:10 pm 
Offline
Kernel Developer
User avatar

Joined: Thu Sep 03, 2009 1:52 pm
Posts: 1621
Mario, уместно, потому что ты спутал размер занимаемой памяти и размер исполнимого файла, а это не одно и то же.

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


Top
   
 
 Post subject: Re: Клиент IRC
PostPosted: Fri Oct 02, 2009 2:43 pm 
CleverMouse
Quote:
а это не одно и то же.

Я конечно могу быть не прав, но я как-то считал, что размер занимаемый программой в памяти не менее важен, чем размер занимаемый бинарником на диске и это величины приблизительно одного значения и порядка. Видимо есть другие оценочные категории, которые мне не доступны.
Впрочем не важно, дальнейшую дискуссию в этом русле продолжать не рационально. Ты автор это твое дело.

З.Ы. Да и так на всякий случай - я не путал эти значения (все-таки давно прогаю в Колибри), только провел аналогию указанную в моем тексте выше.


Top
   
 
 Post subject: Re: Клиент IRC
PostPosted: Fri Oct 02, 2009 3:09 pm 
Offline
Kernel Developer
User avatar

Joined: Thu Sep 03, 2009 1:52 pm
Posts: 1621
Я тоже хочу пофлудить! Во-первых, из предыдущего поста явно следует, что, по мнению автора, "размер, занимаемый бинарником на диске" неважен, если нет оптимизации "размера, занимаемого программой в памяти" - если бы пост был в стиле "раз ты так заботишься о размере бинарника, обрати внимание ещё и на размер используемой памяти", то ответа, проясняющего мой взгляд на вещи, не было бы. Во-вторых, в условиях, когда дистрибутив занимает полтора мегабайта, а размер оперативной памяти типичного не очень старого настольного компьютера сегодня измеряется сотнями мегабайт и даже гигабайтами, "размер, занимаемый программой в памяти" всё же является менее важным, чем "размер, занимаемый бинарником на диске". Но, безусловно, я согласна с тем, что обе эти величины важны.
Спорим, что, хотя ясно, что все друг друга поняли, Mario не сможет удержаться от флуда в ответ?

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


Top
   
 
 Post subject: Re: Клиент IRC
PostPosted: Sat Dec 12, 2009 5:25 pm 
Offline
Kernel Developer
User avatar

Joined: Thu Sep 03, 2009 1:52 pm
Posts: 1621
Я вроде исправила отображение ников в сообщениях и в списке пользователей на канале при изменении ников. Я обновила исходники в репозитории, также я прилагаю исходники и скомпилированную версию к посту.


Attachments:
File comment: Скомпилированная версия
airc-bin.7z [4.76 KiB]
Downloaded 238 times
File comment: Исходники
airc-src.7z [17.06 KiB]
Downloaded 222 times

_________________
Сделаем мир лучше!
Top
   
 
 Post subject: Re: Клиент IRC
PostPosted: Tue Jan 19, 2010 7:47 am 
Offline

Joined: Sun Nov 04, 2007 2:46 am
Posts: 390
Wine-KlbrInWin-AIRC


Top
   
 
 Post subject: Re: Клиент IRC
PostPosted: Tue Jan 19, 2010 9:00 am 
maximYCH
А ты сам то под wine запускал KlbrInWin? И как успехи? :lol:


Top
   
 
Display posts from previous:  Sort by  
Post new topic  This topic is locked, you cannot edit posts or make further replies.  [ 45 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 2 guests


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