конечно - есть:) и FAT и NTFS система видит прекрасно... правда, не пишет пока в NTFS...У вас есть пронятие - файл?
Помогите новичку
-
*****:
;дух машины, мой бубен сильнее твоей тупости
*****:
Драйвер не клавиатуры, а, предположим, сенсорный дисплей у холодильника... ВесЧь. Да и клавиатура тоже нужна - т.к. управление будет производиться если не с обычной АТ, так с какой-то ?). Именно ОС должнау4правлять температурой внутри мерзлого ящика, я думаю. И графическая подсистема ой как нужна будет.
Ну, тогда имеет смысл использовать Колибри. Планы развития у нас есть.
А зачем тогда вам вообще OS в таких дивайсах? Зашейте в ПЗУ набор некий набор функций и шел для аксеса к ним (типа на экране мониторчика: "нажмите 1 для установки температуры" потом "введите температуру" и т.д. и т.п.). Суть OS в том что-бы обеспечить API и диспетчирезацию пользовательских процессов. Говоря более простым языком суть ОС в том что-бы могли работать обычные прикладные программы. Если у вас в холодильнике огромное кол-во функций и каждая их них управляется определенной программой со специфпическими алгоритмами (которые будут всевремя изменятся) тогда вам нужна ОС, иначе будет только ущерб, излишняя загрузка аппаратуры и т.д.path_of_milea wrote:Да для начала GUI не нужен, а потом может понадобится, вместе с сенсорным экраном. Чтобы выбирать разные режимы работы ит.д.
Для компьютера OS нужна т.к. конечный обьем задачь которые он будет выполнять невозможно определить (и для телефонов сейчас тоже, ибо на них запускают игры лазят по интернету и т.д.). Почему-то мне не верится что невозможно определить конечный список задачь для холодильника или скажем кухонной плиты.
Если бы строители строили здания, так же как программисты пишут программы первый же залетевший дятел разрушил бы цивилизацию.
Я начал писать программу на 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. Как правильно обрабатывать нажатие кнопки?
Вот так?
Заранее спасибо.
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. Как правильно обрабатывать нажатие кнопки?
Вот так?
Code: Select all
kos_GetButtonID(id)
if (id=21){
path[] = "))))";
}
else
{
path[] = "(((((";
};
draw_window();
break;
Из хаоса в космос
Code: Select all
kos_GetButtonID(id)
if (id=21){ << здесь должно быть (id == 21)
to Leency
Вынужден тебя огорчить - просто так не получится. Дело в том, что стиль кнопок (3D или плоские) задаётся общесистемной функцией. Если надо рисовать не по-умолчанию, то при объявлении кнопки нужно ей дать стиль "не рисовать", а затем в нужном месте соответствующими функциями дорисовывать прямоугольник, текст и всё остальное, как это сделать написано в sysfuncr.txt. Точнее сказать не могу, давно в коде не копался.
Вынужден тебя огорчить - просто так не получится. Дело в том, что стиль кнопок (3D или плоские) задаётся общесистемной функцией. Если надо рисовать не по-умолчанию, то при объявлении кнопки нужно ей дать стиль "не рисовать", а затем в нужном месте соответствующими функциями дорисовывать прямоугольник, текст и всё остальное, как это сделать написано в sysfuncr.txt. Точнее сказать не могу, давно в коде не копался.
Линукс - это консоль. Командная строка. А все ли умеют таким образом работать? Я вот ни за что не сяду ни за MS DOS, ни за Linux (кроме разве что Ubuntu, Mandriva или что-то в этом роде - я говорю о традиционном линуксе, а не о его серьёзных модификациях, дизайном и решениями близких к Windows). Ненавижу консоли. Редко использую сочетания клавиш (мышь роднее). И если бы это только одного меня касалась. Научите среднюю секретаршу или контролёра завода какого-нибудь пользоваться линуксом много поплачите .Что ж это за требования, куда Колибри подходит а linux нет?
Видимо вы не все дистрибутивы линукса видели. Да и собрать свой для нужных целей - не проблема(если есть определенные знания в этой области).
Колибри, как ни крути, всё-таки графическая система. И это намного удобнее. Удобней щёлкнуть мышью по кнопке, чем набирать в командной строке всякую аброкадабру, которую ещё и вызубрить надо заранее... Любой ламер со мной согласится...
С одной стороны всё вроде есть и работает, а когда внимательно присмотришься увидишь что "тут надо напильником подправить, а там кувалдой подрихтовать".
При детальном рассморении кода ядра приходишь к выводу, что для приведения его к "нормальному" виду нужно переписать более половины системы.
Предлагаю составить список необходимых изменений и вывесить на видном месте...Существует работа по исправлению логических ошибок, однако она проводитсья силами энтузиастов. Обычно это все затягивается или остается недоделанным. Тем не менее ядро развивается, изменятся...
P.S. А кроме холодильников ещё есть сложные кондиционеры и регуляторы микроклимата в промышленных теплицах, складах продовольствия, архивах.
Вот исходник: http://kolibri-os.narod.ru/files/temp/vc.zip
1. Почему при нажатии любой клавиши программа закрывается?
2. Как вставить изображение? Пожалуйста, "засуньте" в исходник любое изображение и выведете его на форму (в окно). Мне нужен пример. Спасибо.
1. Почему при нажатии любой клавиши программа закрывается?
2. Как вставить изображение? Пожалуйста, "засуньте" в исходник любое изображение и выведете его на форму (в окно). Мне нужен пример. Спасибо.
Из хаоса в космос
Линукс - это ядро!!!!!!!!Астроноид wrote: Линукс - это консоль. Командная строка. А все ли умеют таким образом работать? Я вот ни за что не сяду ни за MS DOS, ни за Linux (кроме разве что Ubuntu, Mandriva или что-то в этом роде - я говорю о традиционном линуксе, а не о его серьёзных модификациях, дизайном и решениями близких к Windows).
Консоль/команданя строка/работа в текстовом режиме/т.п. - это только интерфейс, способ взаимодействия пользователя с системой.
Ubuntu/Mandriva/etc - серьезные модификации??? Здрасте...это дистрибутивы линукса. Какие дизайны и решения близкие к Windows?
А ты слышал про famebuffer? У меня на линуксе настроен vesafb, у меня консоль графическая (кстати как и в колибри юзается та же VESA). Я в консоли могу через mplayer видео смотреть, lynx картинки на сайтах показывает. Даже есть оконные менджеры под fb. Пожалуйста, ставь и юзай на здоровье. qt и gtk ты не заюзаешь конечно, для них нужен Xserver, но для fb есть другой софт.
Так что извини, но ты просто не знаешь про что пишешь...
Извините, парни, но вы развели оффтоп.
Я реальное что-то хочу сделать и получить помощь, а вы тут о Линуксах.
Я реальное что-то хочу сделать и получить помощь, а вы тут о Линуксах.
Из хаоса в космос
Leency
Я знаю только один способ, как подключить изображение к программе на C. Это преобразовать файл в массив типа unsigned char тоесть в массив вида:
Нужно написать мини программу которая преобразует картинку в текстовый файл с массивом. Я таким образом делал для подключения растровых шрифтов к моей научной программе, написанной на C.
Я знаю только один способ, как подключить изображение к программе на C. Это преобразовать файл в массив типа unsigned char тоесть в массив вида:
Code: Select all
unsigned char picture[]={ 1,2,.....};
KolibriOS-перспективная ос!
Kolibri is best operation system in the world!
Kolibri is best operation system in the world!
Ещё графический редактор GIMP умеет сохранять картинки в подключаемые файлы(расширение h ). Вот пример начала такого файла:
Code: Select all
/* 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!
Kolibri is best operation system in the world!
Leency
Поставь там _asm{ int 3}; и запусти в mtdbg.
Поставь там _asm{ int 3}; и запусти в mtdbg.
Спасибо всем, кто помагал до этого. Есть ещё одна проблема . Код:
Работает как надо. В программе есть строчка
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Кб
Заранее спасибо.
Code: Select all
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Кб
Заранее спасибо.
Из хаоса в космос
Who is online
Users browsing this forum: No registered users and 1 guest