Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Вс ноя 19, 2017 12:38 am

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




Начать новую тему  Ответить на тему  [ 218 сообщений ]  На страницу Пред. 110 11 12 13 14 15 След.
Автор Сообщение
 Заголовок сообщения: Re: Tiny C Compiler
СообщениеДобавлено: Вс ноя 24, 2013 11:43 am 
Не в сети

Зарегистрирован: Вт апр 12, 2011 11:19 pm
Сообщения: 1077
Unusual писал(а):
а как тогда использовать BoxLib с компилятором tcc и что писать в коде?

Думаю тут лучше поможет SoUrcerer

_________________
я лишь учусь


Вернуться к началу
 Заголовок сообщения: Re: Tiny C Compiler
СообщениеДобавлено: Вс ноя 24, 2013 11:49 am 
Не в сети

Зарегистрирован: Пт фев 15, 2013 8:23 pm
Сообщения: 77
Дмитрий, помогите с BoxLib, пожалуйста !


Вернуться к началу
 Заголовок сообщения: Re: Tiny C Compiler
СообщениеДобавлено: Вт ноя 26, 2013 12:59 am 
Не в сети

Зарегистрирован: Вс окт 02, 2011 4:48 pm
Сообщения: 43
Я не специалист и не знаю поможет или нет:
примеры использования библиотек в СИ из console.obj
из box_lib.obj


Вернуться к началу
 Заголовок сообщения: Re: Tiny C Compiler
СообщениеДобавлено: Вт ноя 26, 2013 10:08 am 
Не в сети

Зарегистрирован: Пн сен 24, 2007 11:11 am
Сообщения: 2814
Всё верно, нужно взять console.obj и заменить функции console на функции box_lib. Может потребоваться объявление stdcall, дополнительных функций и использование dll.asm - модуля загрузки dll на fasm. Предлагаю посмотреть тут:
http://websvn.kolibrios.org/filedetails ... s%2Fhttp.c
Странно, почему-то в репозитарии нет dll.asm; добавлю по возможности. Он основан на dll.inc, но немного отличается - он в ELF и с экспортом.


Вернуться к началу
 Заголовок сообщения: Re: Tiny C Compiler
СообщениеДобавлено: Пт ноя 29, 2013 1:02 am 
Не в сети

Зарегистрирован: Вс окт 02, 2011 4:48 pm
Сообщения: 43
Допустим есть некая библиотека написанная на ассемблере (хотябы теже самые console.obj
и box_lib.obj ). Как узнать как я должен вызывать эти функции на языке СИ - какие параметры нужно передавать и что эта функция возвращает, т.е. какой у функции должен быть заголовок (или у указателя)?


Вернуться к началу
 Заголовок сообщения: Re: Tiny C Compiler
СообщениеДобавлено: Пт ноя 29, 2013 1:31 am 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1080
z525, для console.obj есть описание, например, здесь http://websvn.kolibrios.org/filedetails.php?repname=Kolibri+OS&path=%2Fprograms%2Fdevelop%2Flibraries%2Fconsole%2Fconsole_en.txt
Цитата:
console.obj exports the following functions

typedef unsigned long dword; /* 32-bit unsigned integer */
typedef unsigned short word; /* 16-bit unsigned integer */

void __stdcall con_init(dword wnd_width, dword wnd_height,
dword scr_width, dword scr_height, const char* title);
[...]
void __stdcall con_exit(bool bCloseWindow);
[...]
void __stdcall con_set_title(const char* title);
[...]
void __stdcall con_write_asciiz(const char* string);
[...]


Вернуться к началу
 Заголовок сообщения: Re: Tiny C Compiler
СообщениеДобавлено: Пт ноя 29, 2013 10:14 am 
Не в сети

Зарегистрирован: Пн сен 24, 2007 11:11 am
Сообщения: 2814
А это, батенька, смотрите в документации к библиотеке. Например,
http://websvn.kolibrios.org/filedetails ... ttp_en.txt - здесь сразу указано, какие функции и какой формат.

А вот в network.obj смотрим:
http://websvn.kolibrios.org/filedetails ... lookup.asm
Здесь параметры передаются через стек, возвращаются в eax - видим обычный stdcall. О, и правда: http://www.opennet.ru/man.shtml?topic=g ... &russian=2
Код:
int getaddrinfo(const char *node, const char *service,
                const struct addrinfo *hints,
                struct addrinfo **res);


Вернуться к началу
 Заголовок сообщения: Re: Tiny C Compiler
СообщениеДобавлено: Сб ноя 30, 2013 8:40 am 
Не в сети
Just Flooding

Зарегистрирован: Вт авг 06, 2013 10:46 pm
Сообщения: 16
[deleted by author]


Последний раз редактировалось Косинус Ср апр 23, 2014 8:29 pm, всего редактировалось 1 раз.

Вернуться к началу
 Заголовок сообщения: Re: Tiny C Compiler
СообщениеДобавлено: Сб ноя 30, 2013 9:58 am 
Не в сети

Зарегистрирован: Пн сен 24, 2007 11:11 am
Сообщения: 2814
Держите. Work in progress. Файл tcckos.c просто внаглую скопирован из старого порта, и ещё не приведен в соответствие с остальным кодом - и не используется.


Вложения:
tcc-pe.7z [607.78 КБ]
76 скачиваний
Вернуться к началу
 Заголовок сообщения: Re: Tiny C Compiler
СообщениеДобавлено: Сб ноя 30, 2013 3:10 pm 
Не в сети
Just Flooding

Зарегистрирован: Вт авг 06, 2013 10:46 pm
Сообщения: 16
[deleted by author]


Последний раз редактировалось Косинус Ср апр 23, 2014 8:30 pm, всего редактировалось 1 раз.

Вернуться к началу
 Заголовок сообщения: Re: Tiny C Compiler
СообщениеДобавлено: Пт дек 06, 2013 10:22 pm 
Не в сети

Зарегистрирован: Вс окт 02, 2011 4:48 pm
Сообщения: 43
SoUrcerer писал(а):
А это, батенька, смотрите в документации к библиотеке.
0CodErr писал(а):
для console.obj есть описание, например, здесь

Для console.obj описание есть а вот для box_lib.obj такого описания я не нашел. Или искал плохо? Или в этой библиотеке все функции одинаково вызываются и поэтому нет особого описания. Но что тогда за схема вызова? Это нужно как-то самому отследить читая коды функций?


Вернуться к началу
 Заголовок сообщения: Re: Tiny C Compiler
СообщениеДобавлено: Пт дек 06, 2013 10:47 pm 
Не в сети

Зарегистрирован: Пн сен 24, 2007 11:11 am
Сообщения: 2814
Там все управляется через структуры в основном. Я не особо разбирался; рекомендую проверить примеры, они реально выглядят простыми.


Вернуться к началу
 Заголовок сообщения: Re: Tiny C Compiler
СообщениеДобавлено: Пт дек 06, 2013 11:00 pm 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1080
z525, там должно быть stdcall. Кроме lib_init. А lib_init нужна при использовании tree_list или text_editor.
Также есть примеры на ЯВУ:
XDS Modula-2/Oberon-2 compiler: viewtopic.php?f=33&t=2280#p47919
FreeBasic: viewtopic.php?f=33&t=2202#p47749


Вернуться к началу
 Заголовок сообщения: Re: Tiny C Compiler
СообщениеДобавлено: Вс мар 02, 2014 10:41 pm 
Не в сети

Зарегистрирован: Ср окт 30, 2013 11:25 pm
Сообщения: 13
Как в консольном приложении, которое пишу на Tiny C, осуществить ввод с клавиатуры? Какой функцией воспользоваться и как её подключить?


Вернуться к началу
 Заголовок сообщения: Re: Tiny C Compiler
СообщениеДобавлено: Пн мар 03, 2014 5:52 pm 
Не в сети

Зарегистрирован: Ср май 18, 2005 7:27 pm
Сообщения: 1001
http://websvn.kolibrios.org/listing.php ... 497424b518


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 218 сообщений ]  На страницу Пред. 110 11 12 13 14 15 След.

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


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

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


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

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