Page 2 of 6

Re: BOARD - вывод отладочной информации

Posted: Sat Jul 02, 2011 11:09 pm
by yogev_ezra
Asper wrote:Можно поподробнее, в чем заключается несовершенство?
Да ни в чем, просто версия на SVN новее, о чем я уведомил Gluk-а, когда он пытался хакнуть твою версию HEX-редактором, а у него не выходило.

Re: BOARD - вывод отладочной информации

Posted: Sat Jul 02, 2011 11:22 pm
by Asper
yogev_ezra
yogev_ezra wrote:он пытался хакнуть твою версию HEX-редактором, а у него не выходило
Интересно для чего, я же выложил исходники на SVN ещё в ревизии #1571, о чем здесь и отписался. С тех пор значительных изменений вроде бы не было.

Re: BOARD - вывод отладочной информации

Posted: Sat Jul 02, 2011 11:50 pm
by Gluk
Asper, в файл она не сохраняла данные, выводимые отладочным usb-ядром.

Re: BOARD - вывод отладочной информации

Posted: Sun Jul 03, 2011 12:01 am
by Asper
Gluk
Очень интересно, мне казалось, что сохраняются все данные, которые пишутся в отладочный буфер. И что же ты в таком случае изменил в программе?

Re: BOARD - вывод отладочной информации

Posted: Sun Jul 03, 2011 12:53 am
by Gluk
Не понял. Я менял только путь сохранения файла. Это не имеет отношения к полноте/неполноте данных. Просто меняя файл из темы, я не получил нужных данных, меняя так же файл из ночной сборки - получил.

Re: BOARD - вывод отладочной информации

Posted: Sun Jul 03, 2011 7:39 pm
by yogev_ezra
В любом случае, было бы очень полезно, если бы кто-то таки прикрутил к board сохранение лога в файл, путь к которому указан в параметре. Если параметра нет, то сохранять по умолчанию на /rd1/1/boardlog.txt (как сейчас). Возможность запуска с параметром очень помогла бы при тестировании там, где не работают ни клавиатура, ни мышка, но есть доступ к диску на запись (FAT16, FAT32). То, что сделал Gluk с помощью HEX-редактора, поможет в частном случае, но не всегда :oops:

Re: BOARD - вывод отладочной информации

Posted: Sun Jul 03, 2011 9:21 pm
by SoUrcerer
Попробую заняться этим, если никто не сделает до меня.

Re: BOARD - вывод отладочной информации

Posted: Sun Jul 03, 2011 9:38 pm
by Mario
LibINI решает проблему, однако прикручивать ради одного параметра не интересно.

Re: BOARD - вывод отладочной информации

Posted: Sun Jul 03, 2011 10:11 pm
by SoUrcerer
Быстроправка. Если board запускать без параметров, то сохраняет куда и раньше. Если с параметром - то подразумевается, что в качестве параметра указано имя файла. Если файл создать невозможно, может наступить конец света, поэтому будьте осторожны.
Добавил всего строк 5, причем не лучших строк в этой программе. За это отдельно прошу прощения (нужно просто больше спать).
В архиве бинарник (сжатый kpack) и исходный код. На svn лучше не заливать - код я детально не тестировал, кроме того в исходниках я изменил путь к inc-файлам.

Re: BOARD - вывод отладочной информации

Posted: Mon Jul 04, 2011 1:09 pm
by CleverMouse
Я спрашивала про вкладку Dump. Зачем она задумывалась, возможно, пояснят старожилы, я знаю только, что к механизму отладочного лога эта вкладка не имеет никакого отношения. Если до завтра не поступит никаких возражений, я удалю весь связанный с ней код.

Re: BOARD - вывод отладочной информации

Posted: Mon Jul 04, 2011 3:26 pm
by yogev_ezra
CleverMouse wrote:Я спрашивала про вкладку Dump. Если до завтра не поступит никаких возражений, я удалю весь связанный с ней код.
CleverMouse: Лично я не возражаю, но когда ты будешь это делать, не могла бы ты заодно, пожалуйста, посмотреть правку Sorcerer-а, и если она нормальная, добавить её тоже на SVN? Эта правка очень поможет в тестировании.

Re: BOARD - вывод отладочной информации

Posted: Tue Jul 05, 2011 3:14 pm
by CleverMouse
Правка Sorcerer'а ломает поведение при незаданном имени файла, я закоммитила свой вариант. Кроме того, как я и анонсировала, я удалила код, связанный с вкладкой Dump, - несжатый бинарник похудел вдвое.

Re: BOARD - вывод отладочной информации

Posted: Tue Jul 05, 2011 5:52 pm
by SoUrcerer
Хорошо!
Странно только, на моем компьютере без всяких параметров board сохранял лог как обычно.
У тебя очень красивое решение, но я кажется немного не догоняю, как оно работает (опыта мало). Если не трудно, поясни пожалуйста (чтобы я впредь не делал глупых ошибок):

Code: Select all

mov	esi, default_filename ;сохраняем в esi указатель на строку
@@:
lodsb ;загружаем байт?
stosb ;записываем байт?
test	al, al ;проверяем al=al?
jnz	@b ;повторяем
Можно в ЛС

Re: BOARD - вывод отладочной информации

Posted: Tue Jul 05, 2011 6:05 pm
by CleverMouse
Не могла эта версия сохранять лог как обычно.
Команда test отличается от команды cmp. "test al,al" - это не "проверяем al=al?", а "проверяем al and al == 0?", то есть просто "al == 0", стандартный способ проверки регистра на ноль/не ноль.

Re: BOARD - вывод отладочной информации

Posted: Tue Jul 05, 2011 6:17 pm
by SoUrcerer
Понятно!
Однако, я только что проверил - моя версия сохраняет лог в /rd/1/boardlog.txt. Наверное, магия.