Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Пн ноя 20, 2017 12:30 pm

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 1093 сообщения ]  На страницу Пред. 1 2 3 4 573 След.
Автор Сообщение
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Вс янв 13, 2008 12:48 am 
Не в сети
Аватара пользователя

Зарегистрирован: Чт мар 29, 2007 3:02 am
Сообщения: 249
Цитата:
У вас есть пронятие - файл?

конечно - есть:) и FAT и NTFS система видит прекрасно...;) правда, не пишет пока в NTFS...;)

_________________
*****:
;дух машины, мой бубен сильнее твоей тупости

*****:


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Вс янв 13, 2008 10:27 am 
Не в сети

Зарегистрирован: Чт сен 20, 2007 8:09 pm
Сообщения: 96
Драйвер не клавиатуры, а, предположим, сенсорный дисплей у холодильника... ВесЧь. Да и клавиатура тоже нужна - т.к. управление будет производиться если не с обычной АТ, так с какой-то ?). Именно ОС должнау4правлять температурой внутри мерзлого ящика, я думаю. И графическая подсистема ой как нужна будет.


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Вс янв 13, 2008 4:05 pm 
Не в сети

Зарегистрирован: Чт сен 20, 2007 8:09 pm
Сообщения: 96
Ну, тогда имеет смысл использовать Колибри. Планы развития у нас есть.


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пн янв 14, 2008 7:23 pm 
Не в сети

Зарегистрирован: Чт дек 21, 2006 10:51 am
Сообщения: 88
path_of_milea писал(а):
Да для начала GUI не нужен, а потом может понадобится, вместе с сенсорным экраном. Чтобы выбирать разные режимы работы ит.д.

А зачем тогда вам вообще OS в таких дивайсах? Зашейте в ПЗУ набор некий набор функций и шел для аксеса к ним (типа на экране мониторчика: "нажмите 1 для установки температуры" потом "введите температуру" и т.д. и т.п.). Суть OS в том что-бы обеспечить API и диспетчирезацию пользовательских процессов. Говоря более простым языком суть ОС в том что-бы могли работать обычные прикладные программы. Если у вас в холодильнике огромное кол-во функций и каждая их них управляется определенной программой со специфпическими алгоритмами (которые будут всевремя изменятся) тогда вам нужна ОС, иначе будет только ущерб, излишняя загрузка аппаратуры и т.д.
Для компьютера OS нужна т.к. конечный обьем задачь которые он будет выполнять невозможно определить (и для телефонов сейчас тоже, ибо на них запускают игры лазят по интернету и т.д.). Почему-то мне не верится что невозможно определить конечный список задачь для холодильника или скажем кухонной плиты.

_________________
Если бы строители строили здания, так же как программисты пишут программы первый же залетевший дятел разрушил бы цивилизацию.


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пн янв 21, 2008 6:28 am 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4226
Я начал писать программу на MS Visual C++ 6.0 и столкнулся с некоторыми проблемами.
1. Как выводить все кнопки не 3Д (с переходом цвета), а плоскими (flat, одноцветными)?
Пример:
kos_DefineButton( Word x, Word y, Word sizeX, Word sizeY, Dword buttonID, Dword colour );
kos_DefineButton(197,64,368,18,23,0xFFFFFF);
Что необходимо изменить?

2. Как правильно обрабатывать нажатие кнопки?
Вот так?
Код:
         kos_GetButtonID(id)
         if (id=21){
                           path[] = "))))";
         }
         else
         {
                           path[] = "(((((";
         };
         draw_window();
         break;

Заранее спасибо.

_________________
Через тернии к звездам


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пн янв 21, 2008 10:41 am 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3929
Код:
         kos_GetButtonID(id)
         if (id=21){    << здесь должно быть (id == 21)

Лучше сделай switch(id). Если кнопок много он удобнее.


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пн янв 21, 2008 10:46 am 
Не в сети
Just Flooding

Зарегистрирован: Сб янв 06, 2007 2:30 pm
Сообщения: 269
to Leency
Вынужден тебя огорчить - просто так не получится. Дело в том, что стиль кнопок (3D или плоские) задаётся общесистемной функцией. Если надо рисовать не по-умолчанию, то при объявлении кнопки нужно ей дать стиль "не рисовать", а затем в нужном месте соответствующими функциями дорисовывать прямоугольник, текст и всё остальное, как это сделать написано в sysfuncr.txt. Точнее сказать не могу, давно в коде не копался.


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пн янв 21, 2008 11:38 am 
Не в сети
Аватара пользователя

Зарегистрирован: Чт янв 17, 2008 2:28 pm
Сообщения: 30
Цитата:
Что ж это за требования, куда Колибри подходит а linux нет?
Видимо вы не все дистрибутивы линукса видели. Да и собрать свой для нужных целей - не проблема(если есть определенные знания в этой области).

Линукс - это консоль. Командная строка. А все ли умеют таким образом работать? Я вот ни за что не сяду ни за MS DOS, ни за Linux (кроме разве что Ubuntu, Mandriva или что-то в этом роде - я говорю о традиционном линуксе, а не о его серьёзных модификациях, дизайном и решениями близких к Windows). Ненавижу консоли. Редко использую сочетания клавиш (мышь роднее). И если бы это только одного меня касалась. Научите среднюю секретаршу или контролёра завода какого-нибудь пользоваться линуксом :D много поплачите :twisted: :x :( :P.
Колибри, как ни крути, всё-таки графическая система. И это намного удобнее. Удобней щёлкнуть мышью по кнопке, чем набирать в командной строке всякую аброкадабру, которую ещё и вызубрить надо заранее... Любой ламер со мной согласится...
Цитата:
С одной стороны всё вроде есть и работает, а когда внимательно присмотришься увидишь что "тут надо напильником подправить, а там кувалдой подрихтовать".

Цитата:
При детальном рассморении кода ядра приходишь к выводу, что для приведения его к "нормальному" виду нужно переписать более половины системы.

Цитата:
Существует работа по исправлению логических ошибок, однако она проводитсья силами энтузиастов. Обычно это все затягивается или остается недоделанным. Тем не менее ядро развивается, изменятся...

Предлагаю составить список необходимых изменений и вывесить на видном месте...

P.S. А кроме холодильников ещё есть сложные кондиционеры и регуляторы микроклимата в промышленных теплицах, складах продовольствия, архивах.


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пн янв 21, 2008 1:44 pm 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4226
Вот исходник: http://kolibri-os.narod.ru/files/temp/vc.zip

1. Почему при нажатии любой клавиши программа закрывается?
2. Как вставить изображение? Пожалуйста, "засуньте" в исходник любое изображение и выведете его на форму (в окно). Мне нужен пример. Спасибо.

_________________
Через тернии к звездам


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пн янв 21, 2008 2:15 pm 
Не в сети

Зарегистрирован: Ср фев 21, 2007 3:03 pm
Сообщения: 188
Астроноид писал(а):
Линукс - это консоль. Командная строка. А все ли умеют таким образом работать? Я вот ни за что не сяду ни за MS DOS, ни за Linux (кроме разве что Ubuntu, Mandriva или что-то в этом роде - я говорю о традиционном линуксе, а не о его серьёзных модификациях, дизайном и решениями близких к Windows).


Линукс - это ядро!!!!!!!!
Консоль/команданя строка/работа в текстовом режиме/т.п. - это только интерфейс, способ взаимодействия пользователя с системой.
Ubuntu/Mandriva/etc - серьезные модификации??? Здрасте...это дистрибутивы линукса. Какие дизайны и решения близкие к Windows?
А ты слышал про famebuffer? У меня на линуксе настроен vesafb, у меня консоль графическая (кстати как и в колибри юзается та же VESA). Я в консоли могу через mplayer видео смотреть, lynx картинки на сайтах показывает. Даже есть оконные менджеры под fb. Пожалуйста, ставь и юзай на здоровье. qt и gtk ты не заюзаешь конечно, для них нужен Xserver, но для fb есть другой софт.

Так что извини, но ты просто не знаешь про что пишешь...


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пн янв 21, 2008 2:22 pm 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4226
Извините, парни, но вы развели оффтоп.
Я реальное что-то хочу сделать и получить помощь, а вы тут о Линуксах.

_________________
Через тернии к звездам


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пн янв 21, 2008 3:20 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Чт май 19, 2005 4:43 pm
Сообщения: 896
Leency

Я знаю только один способ, как подключить изображение к программе на C. Это преобразовать файл в массив типа unsigned char тоесть в массив вида:

Код:
unsigned char picture[]={ 1,2,.....};

Нужно написать мини программу которая преобразует картинку в текстовый файл с массивом. Я таким образом делал для подключения растровых шрифтов к моей научной программе, написанной на C.

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


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пн янв 21, 2008 3:44 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Чт май 19, 2005 4:43 pm
Сообщения: 896
Ещё графический редактор GIMP умеет сохранять картинки в подключаемые файлы(расширение h ). Вот пример начала такого файла:
Код:
/*  GIMP header image file format (RGB): /home/andrew/Documents/picture.h  */

static unsigned int width = 468;
static unsigned int height = 240;

/*  Call this macro repeatedly.  After each use, the pixel data can be extracted  */

#define HEADER_PIXEL(data,pixel) {\
  pixel[0] = (((data[0] - 33) << 2) | ((data[1] - 33) >> 4)); \
  pixel[1] = ((((data[1] - 33) & 0xF) << 4) | ((data[2] - 33) >> 2)); \
  pixel[2] = ((((data[2] - 33) & 0x3) << 6) | ((data[3] - 33))); \
  data += 4; \
}
static char *header_data =
   "````````````````````````````````````````````````````````````````"
   "````````````````````````````````````````````````````````````````"
   "````````````````````````````````````````````````````````````````"

_________________
KolibriOS-перспективная ос!

Kolibri is best operation system in the world!


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пн янв 21, 2008 4:28 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3929
Leency

Поставь там _asm{ int 3}; и запусти в mtdbg.


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Сб янв 26, 2008 2:13 am 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4226
Спасибо всем, кто помагал до этого. Есть ещё одна проблема :). Код:
Код:
void Read_Dir(){
   open_file_70.func = 1;
   open_file_70.pos = 0;
   open_file_70.rezerv = 0;
   open_file_70.sizefile = 65536;
   buf = malloc(65536);
   open_file_70.buffer = buf;
   open_file_70.rezerv2 = 0;
   open_file_70.stroka = #path;
   $mov eax,70
   $mov ebx,#open_file_70.func
   $int 0x40
}
Работает как надо. В программе есть строчка
path=path1;
где char path[256] = "/rd/1"; char path1[256] = "/rd/1/demos";
После чего опять вызывается Read_Dir() странно, но обрабатывается опять path, а не path1.
Исходники и с-- тут http://kolibri-os.narod.ru/files/temp/proga1_cmm.zip 231Кб
Заранее спасибо.

_________________
Через тернии к звездам


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 1093 сообщения ]  На страницу Пред. 1 2 3 4 573 След.

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB