Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Ср дек 19, 2018 2:57 pm

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




Начать новую тему  Ответить на тему  [ 1115 сообщений ]  На страницу Пред. 171 72 73 74 75 След.
Автор Сообщение
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пт ноя 04, 2016 4:56 pm 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4879
0CodErr писал(а):
Leency, молодец, прикольно :)

Там, кстати, на сайте есть ещё picolzo, его тоже не трудно портировать, по крайней мере, оно у меня запускалось в PELoad
http://www.c--sphinx.narod.ru/FILES/picolzo.zip

Спасибо.

У меня на Win10 x64 не запустилось.
PELoad тоже не смог http://prntscr.com/d306ij
Как оно выглядит?

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


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

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1499
Leency, а, так я более новую версию kernel32 не выкладывал, оказывается.

Вообще, на сайте там написано
Цитата:
picolzo.zip (4k) Библиотека сжатия данных методом LZO от Kai-Hong Chen.

Вот так по идее должно запускаться
Цитата:
Usage: testLZO filename

Вот из picolzo.h--
Цитата:
/* picoLZO.h-- The fast data compression functions from miniLZO,
rewrite and rename to use in Sphinx C-- by Kai-Hong Chen.
Цитата:
picolzo_compress(byte *src,dword src_len,byte *dst,dword *dst_len,byte *wrkmem);
picolzo_decompress(byte *src,dword src_len,byte *dst,dword *dst_len,NULL);
Её можно портировать просто, и будет без PELoad запускаться в KolibriOS.


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пт ноя 04, 2016 8:42 pm 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1499
Leency, можно ещё в starfield сделать звёзды разноцветные с изменяющимся цветом. И сделать скринсэйвер из неё. Тогда вообще надолго можно залипнуть :)


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

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4879
Порт http://c--sphinx.narod.ru/FILES/vc.zip

http://prntscr.com/d4a5e2
Дизайнер, который смог консоль и даже смог сделать кросскомпиляцию приложения WIN32 / Kolibri.
Но не смог понять почему цвет фона и текста не закрашивается. Есть какая-то магия в функции WriteConsoleOutputAttribute()


Вложения:
vfc_kos.zip [57.43 КБ]
77 скачиваний

_________________
Через тернии к звездам
Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пн ноя 07, 2016 8:57 pm 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1499
Leency, о прикольно :D
Спойлер: Показать
Вложение:
1.PNG
1.PNG [ 51.52 КБ | 3562 просмотра ]
А что это и зачем?


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

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4879
это Diff tool. Визуальное сравнение двух текстовых файлов. Вот только подсветка пока что не работает.

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


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пн ноя 07, 2016 11:45 pm 
Не в сети

Зарегистрирован: Вт апр 12, 2011 11:19 pm
Сообщения: 1137
О, полезная утилита будет.

_________________
я лишь учусь


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

Зарегистрирован: Пн ноя 19, 2012 5:22 pm
Сообщения: 454
Всё, или шарики за ролики заехали, или одно из двух. Аж не знаю в какую тему писать, поэтому сюда.
Итак. Загрузочная флешка, запускал в QEMU, видит флешку как /hd0/1, всё отлично, флешка в FAT32. Все файлы читаются и пишутся. Всё началось с того, что c-- отказывазывался читать файл ../lib/font.h(именно такой путь шёл в open(..) ), хотя он есть. Тогда написал на фасме микроутилиту, читает файл если есть или пишет error, если его нет. Помещаю в папку /hd0/1/cmm/0/textreader. Запускаю, и он его не открывает. Хотя файл есть. В папке ../lib есть файл font.h. Скопировал весь каталог lib в папку /hd0/1/boot , утилиту запускал из /hd0/1/boot/en-us, то есть относительные пути те же, ../lib/font.h также должен открываться - проверяю и он открывается. А из textreader - не открывается. И другие файлы ../lib/* также не открываются, если текущий каталог заканчивается на textreader.
Вот только что выяснил: текущий каталог 1234567 - ../lib/* открываются, а в 12345678 - уже нет. Зависит от количества символов, видимо.
В приложении исходник утилиты на всякий случай.
Спойлер: Показать
Вложение:
qwe.GIF
qwe.GIF [ 54.21 КБ | 3534 просмотра ]


Вложения:
0.ZIP [1.8 КБ]
78 скачиваний

_________________
Чем больше сыра, тем больше в нём дыр. Чем больше дыр, тем меньше в нём собственно сыра. Значит, чем больше сыра, тем меньше сыра!
Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пт ноя 11, 2016 10:49 am 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3952
GerdtR
А ядро поддерживает относительные пути ?


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пт ноя 11, 2016 5:31 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Чт сен 03, 2009 1:52 pm
Сообщения: 1616
GerdtR
Код:
   mov   dword[fss+16],mybuf
   mov   [fss+16],0
   mov   dword[fss+21],myfile
...
fss db 25
mybuf rb 4096

Ты, наверное, имел в виду fss+20 и rb 25? А так fss накладывается на mybuf, в которой ты сам же прочитал текущую папку.

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


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

Зарегистрирован: Пн ноя 19, 2012 5:22 pm
Сообщения: 454
Да, имел) Короче, явно не в ядре дело, после исправления всё как положено работает (Serge, да, полностью поддерживает). Вот cmm не хочет открывать относительные пути. Пробовал просто в main'е писать fopen("../lib/font.h", "rb") и файл не открывался, хотя он был на месте. Пока выяснил, что fopen никак не открывает файлы, если путь начинается с "..", хотя путь "lib/../font.h" нормально обрабатывается, так же как и ./font.h .

_________________
Чем больше сыра, тем больше в нём дыр. Чем больше дыр, тем меньше в нём собственно сыра. Значит, чем больше сыра, тем меньше сыра!


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пт ноя 11, 2016 8:45 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Чт сен 03, 2009 1:52 pm
Сообщения: 1616
Leency писал(а):
Порт http://c--sphinx.narod.ru/FILES/vc.zip

http://prntscr.com/d4a5e2
Дизайнер, который смог консоль и даже смог сделать кросскомпиляцию приложения WIN32 / Kolibri.
Но не смог понять почему цвет фона и текста не закрашивается. Есть какая-то магия в функции WriteConsoleOutputAttribute()

WriteConsoleOutputAttribute устанавливает сразу пачку разных цветов - для первой позиции цвет attrs[0], для второй attrs[1] и так далее до того, сколько цветов ей указали. con_set_flags устанавливает текущий цвет, который будет использован для последующего вывода.

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


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

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4879
CleverMouse
Спасибо, дизайнер смог.


Вложения:
vfc_its_alive.png
vfc_its_alive.png [ 192.62 КБ | 3400 просмотров ]

_________________
Через тернии к звездам
Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Вс янв 28, 2018 10:58 pm 
Не в сети

Зарегистрирован: Сб авг 03, 2013 12:29 pm
Сообщения: 8
Здравствуёте, извините если вопрос нубский, в ассемблере мало опыта имею. Я хотел модифицировать стандартный екзампл, чтобы он не звук издавал, а менял строчку вот что я изменил:
Код:
;после start
mov ebx, message ;адрес message в ebx
mov eax, iter ;адрес итератора в ebx
mov [eax], ebx; по адресу записанному в eax(iter) записать содержимое ebx(адрес message)

;............ далее в key после mcall 2
movzx ebx, [iter] ;запишем в ebx значение iter(адрес message + кол-во вызовов)
mov [ebx], ah; записываем по адресу который находится в ebx код полученной клавиши
add ebx, 1;увеличиваем адрес на 1(в следующий раз ссылаемся на следующую букву)
mov eax, iter; адрес итератора в ebx
mov[eax], ebx; по адресу записанному в eax(iter) записать содержимое ebx(адрес message)
; рядом message я написал iter db 1


программа собирается но не работает(строка не меняется). Не подскажите где я мог ошибиться?


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Вс янв 28, 2018 11:59 pm 
Не в сети

Зарегистрирован: Вт мар 08, 2016 11:00 pm
Сообщения: 420
Ты ошибаешься в косвенной адресации и в размере операндов. Смотри отладчиком MTDBG - там все наглядно видно.

Команд в нем немного - легко разобраться

bp 54 - поставит точку останова на второй кусок кода


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 1115 сообщений ]  На страницу Пред. 171 72 73 74 75 След.

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


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

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


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

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