АвторСообщение



Пост N: 222
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 1
ссылка на сообщение  Отправлено: 22.05.07 17:34. Заголовок: Редактор


Долго искал в сети хороший редактор для ПИКов, но так и не нашёл (может, плохо искал). Поэтому ничего другого не оставалось, как написать такую программу самостоятельно. Её можно скачать здесь.
Эта программа написана на языке PureBasic 4.0
Вот что она умеет:
Авто ввод пробелов таким образом, чтобы формировались нужные отступы (можно отключить в настройках). Если в начале строки однократно нажать на пробел, автоматически будет добавлено ещё 11. Примерно тоже будет при нажатии пробела после asm команды. Также после третьего авто пробела, будет добавлена ";" (точка с запятой) и включена русская раскладка клавиатуры (можно отключить в настройках).

Авто переключение раскладки клавиатуры (можно отключить в настройках). При запуске автоматически установится английская раскладка, когда будет нажата ";" (точка с запятой), раскладка станет русской, а после нажатия кнопки "Enter", раскладка снова станет английской.

Подсветка синтаксиса (можно отключить в настройках).
Авто замена слов (можно отключить в настройках). В этой версии заменяться будут следующие слова: "PortA" , "PortB" , "PortC" , "OptionR" , "Status" , "IntCon" , "EECon1" , "EECon2","EEAdr" , "EEData" , "TrisA" , "TrisB" , "TrisC" , "IndF" , "Tmr0" , "Tmr1" , "Tmr2".
Т.е. допустим, будет набрано на клавиатуре слово "portb", оно автоматически заменится на "PortB"

Авто сохранение файлов (можно отключить в настройках). Будет производиться авто сохранение в отдельный файл. Располагаться он будет там же где и основной и имя у него будет такое же, только в начале имени будет приставка " as_".


К сожалению, есть некоторые глюки. При включённой подсветке синтаксиса, очень медленно открываются большие файлы, особенно если включена авто замена слов.


Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 141 , стр: 1 2 3 4 All [только новые]





Пост N: 432
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 2
ссылка на сообщение  Отправлено: 17.11.07 20:18. Заголовок: Я как раз сейчас пол..


Я как раз сейчас полностью переделываю прогу.
Использую другой редактор текста, в котором есть встроеная поддержка подсветки синтаксиса ( подсвечивает 5000 строк за долю секунды ).
На данный момент только подсвечивается синтаксис и работают отступы. http://purik.nextmail.ru/PicAsmEditor.rar
Каково Ваше мнение о новом редакторе

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 433
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 2
ссылка на сообщение  Отправлено: 24.11.07 12:14. Заголовок: Добавил подсветку Bi..


Добавил подсветку Bin Dec Hex чисел и поместил редакторы на панель
http://purik.nextmail.ru/AsmEditor/AsmEditor1.rar

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 18
Зарегистрирован: 28.12.06
Откуда: Россия, Ачинск Красноярского кр
Рейтинг: 0
ссылка на сообщение  Отправлено: 24.11.07 21:44. Заголовок: Пётр пишет: Добавил..


Пётр пишет:

 цитата:
Добавил подсветку Bin Dec Hex чисел и поместил редакторы на панель
http://purik.nextmail.ru/AsmEditor/AsmEditor1.rar


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

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 437
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 2
ссылка на сообщение  Отправлено: 01.12.07 15:46. Заголовок: Makey пишет: добавь..


Makey пишет:

 цитата:
добавь поиск и замену

Добавил. http://purik.nextmail.ru/AsmEditor/AsmEditor2.rar
Если вдруг понадобится отменить полную замену (действие кнопки "Заменить всё") достаточно щёлкнуть по пункту "Отменить" из меню.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 19
Зарегистрирован: 28.12.06
Откуда: Россия, Ачинск Красноярского кр
Рейтинг: 0
ссылка на сообщение  Отправлено: 02.12.07 04:59. Заголовок: Пётр пишет: Добавил..


Пётр пишет:

 цитата:
Добавил. http://purik.nextmail.ru/AsmEditor/AsmEditor2.rar


Почему-то не работают "Настройки", автотабуляция , было-бы здорово от старого редактора перенести автоустановку точки с запятой (перед примечаниями) и автопереключение раскладки клавиатуры (рус-лат)

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 438
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 2
ссылка на сообщение  Отправлено: 02.12.07 14:22. Заголовок: Makey пишет: Почему..


Makey пишет:

 цитата:
Почему-то не работают "Настройки", автотабуляция...

Это я экспериментировал, временно перебросил автотабуляцию на кнопку "Tab" чтобы посмотреть как работать будет, да и забыл вернуть на "пробел".
Окно "Настройки" пока пустое.
Что касается остального, то это не глюк, просто программа на стадии разработки и ещё не всё "прикрутил" к ней.
Как я уже упоминал раньше, был использован другой редактор текста (тот же что и в проге PureBasic), поэтому приходиться писать программу с нуля, поскольку работа с этим редактором в корне отличается от предыдущего.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 20
Зарегистрирован: 28.12.06
Откуда: Россия, Ачинск Красноярского кр
Рейтинг: 0
ссылка на сообщение  Отправлено: 03.12.07 13:15. Заголовок: Пётр пишет: просто ..


Пётр пишет:

 цитата:
просто программа на стадии разработки и ещё не всё "прикрутил" к ней.


Вобщем я так и думал, просто хочется подержать и помочь чем могу.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 462
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 2
ссылка на сообщение  Отправлено: 08.12.07 20:24. Заголовок: Обновил прогу :sm1:..


Обновил прогу
Теперь прогу можно настраивать с помощью окна "Настройки".
"Прибил" несколько глюков, и наверное новые добавил

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 21
Зарегистрирован: 28.12.06
Откуда: Россия, Ачинск Красноярского кр
Рейтинг: 0
ссылка на сообщение  Отправлено: 09.12.07 09:01. Заголовок: Пётр пишет: Обновил..


Пётр пишет:

 цитата:
Обновил прогу


Получилось очень хорошо и удобно, (спасибо за клавишу "табуляция")
Обнаружил небольшое неудобство. При переходе на другую программу, например при установлении текущего окна Windows Acrobat Reader и возврате в редактор теряется курсор и текущая строка.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 468
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 2
ссылка на сообщение  Отправлено: 15.12.07 14:31. Заголовок: Новая версия програм..


Новая версия программы http://purik.nextmail.ru/AsmEditor/AsmEditor4.rar

Добавил сортировщик текста.
В окне "Найти/Заменить" появился пункт "Не искать в комментариях".
Добавил возможность изменять цвет фона редактора.
Добавил свёртку текста. Начало свёртки обозначается букво-сочетанием ;+ а конец ;-
При этом возле поля авто нумерации появится маленькая кнопочка, позволяющая свернуть отмеценую часть текста. В архив вложил пример, с символами свёртки текста.

Makey пишет:

 цитата:
возврате в редактор теряется курсор и текущая строка

Устранил.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 476
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 2
ссылка на сообщение  Отправлено: 27.12.07 12:57. Заголовок: Новая версия програм..


Новая версия программы PicAsmEditor_v2.0
Произвёл следующие изменения: Свёртка начинается с символов ;+/ а заканчивается символами ;-/

Добавил пункт "Недавние файлы" в меню "Файл".
Появилась возможность видеть пробелы (в виде точек) и TABы (в виде стрелок). Эту возможность можно отключить в настройках сняв галочку в пункте"Отображать пробелы в виде точек".
Принудительно включена кодировка 1251, что должно гарантировать правильное отображение кириллицы, даже на Винде не поддерживающей её, но только при условии наличия кириллических шрифтов.
Добавил подсветку битов регистров.
Появилось окно "О программе".
В меню "Правка" и в контекстном меню появился пункт "Выделеный текст".
Устранил пару глюков.

Теперь о не самом приятном. Пря правильного сохранения настроек в Виндах, не поддеоживающих Русские буквы, пришлось переделать подпрограммы чтения и сохранения настроек, поэтому текущие настройки будут заменены настройками по умолчанию.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 5
Зарегистрирован: 13.12.07
Рейтинг: 0
ссылка на сообщение  Отправлено: 13.01.08 16:19. Заголовок: Пётр пишет: Как тол..


Пётр пишет:

 цитата:
Как только появится больше свободного времени



Петр,
Редактор получился очень хорош.
Подобный есть для AVRов (WinAVR), для ПИКов не встречал.
Загрузил первую попавшуюся программу.У-ты! Все четко, ровненько, разным цветом(отличная наглядность).
Чтото начинает заинтриговывать Ваш PureBacic. Я тут знакомлюсь с microC(в нем Help на русском).
Хочу спросить о дальнейшем развитии Вашего Редактора? В плане стратегии(как потенциальный пользователь)
В тактике все ясно (судя по ответам, отладка идет довольно оперативно).Тут одна мыслишка появилась.
Может она у Вас уже в плане стоит...

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 500
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 2
ссылка на сообщение  Отправлено: 13.01.08 17:31. Заголовок: На данный момент про..


На данный момент произвожу значительные изменения редактора.
Когда закончу, появятся следующие возможности:

1) Запонинаться позиция курсора

2) Запоминатся состояния маркеров свёртки (свёрнуто либо развёрнуто)

3) Запоминаться текущий тип контроллера и отображаться в выпадающем списке

4) Ключевые слова, директивы имена регистров и т. д. будут подсвечиватся только для выбраного типа контроллера, данные о которых будут хранится в отдельных файлах. Это позволит добавлять описания контроллеров не внося никаких изменений в программу

5) Для ассемблерных инструкций, директив регистров и т. д. будут выводится подсказки об их назначении. Эти данные будут хранится во внешних файлах и их (данные) можно будет легко изменить без менений программы.

Возможно сделаю инсталлятор, поскольку программа будет состоять из нескольких файлов.
Вот некоторые функции редактора, которые он сейчас имеет, но я забыл их упомянуть
Файлы можно открывать следующим образом: можно выделить несколько файлов мышкой, а затем просто их перетацить на открытое окно редактора. Они будут открыты на отдельных закладках. Перетаскиавать стоит только файлы с расширением asm txt inc остальные будут проигнорированы.
Если в окне "О программе" счёлкнуть мышкой по микросхеме то произойдёт... впрочим сами увидите

---------------------------------------------------------------------------------------
Viktor_VK пишет:

 цитата:
Тут одна мыслишка появилась

А какая?




Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 86
Зарегистрирован: 19.07.07
Откуда: Россия, Челябинская обл.
Рейтинг: 0
ссылка на сообщение  Отправлено: 14.01.08 07:32. Заголовок: Привык пользоваться ..


Привык пользоваться табуляцией в MP-Lab, так чтб в тексте была именно табуляция. Здесь же - пробелы. Было бы неплохо, если бы был режим табуляции, идентичный MpLab. А вообще классно выглядит

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 502
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 2
ссылка на сообщение  Отправлено: 14.01.08 10:45. Заголовок: А в чём преимущество..


А в чём преимущество символов Tab перед пробелами?
И к тому же Tab'ы не очень с сортировщиком дружат, они просто заменяются одним пробелом

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 87
Зарегистрирован: 19.07.07
Откуда: Россия, Челябинская обл.
Рейтинг: 0
ссылка на сообщение  Отправлено: 14.01.08 23:04. Заголовок: С табами переходы по..


С табами переходы по строке от слова к слову быстрее.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 6
Зарегистрирован: 13.12.07
Откуда: г.Макеевка
Рейтинг: 0
ссылка на сообщение  Отправлено: 15.01.08 18:06. Заголовок: А мысль вот какая. С..


А мысль вот какая.
Смысл редактора в чем?-Редактировать текст(и все что с этим связано...) и в конечном итоге
этот текст превращается в hex. файл и зашивается в МК.
После набора текста программы(или копирования), его редактирования... ,он отправляется
в MPLAB для компиляции, исправления ошибок и т.д... Но так как без ошибок не получается
сразу, то нужно предыдущие операции повторять снова и снова...
Так вот нельзя ли текст из редактора вставлять в MPLAB(заранее настроенный с выбранной
папкой проекта) нажатием одной кнопки?(это может показаться уж слишком, и я много хочу),
но это всего вопрос(ни к чему не обязывающий).
С уважением Viktor_VK



Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 508
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 2
ссылка на сообщение  Отправлено: 15.01.08 18:39. Заголовок: Viktor_VK пишет: Та..


Viktor_VK пишет:

 цитата:
Так вот нельзя ли текст из редактора вставлять в MPLAB(заранее настроенный с выбранной
папкой проекта) нажатием одной кнопки

Это в смысле сохранять файл в определённую папку или помещать текст непосредствено в редактор MPLAB'а?
Второй вариант несколько сложнее и единственый простой путь это после сохранения файла запускать MPLAB и помещать путь к файлу в командную строку если конечно MPLAB это поддерживает. Например версия 5.70.40 отказывается работать с командной строкой.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 391
Зарегистрирован: 26.12.06
Откуда: Россия, Архангельск
Рейтинг: 1
Фото:
ссылка на сообщение  Отправлено: 15.01.08 20:10. Заголовок: Viktor_VK самый прос..


Viktor_VK самый простой путь, просто открываете проект в лабе, так его оставляете открытым, открываете открытый в лабе асм файл в нужном редакторе. Творите с ним что хотите и сохраняете на диск. Потом просто активируете окно лаба, он сразу же спросит: файл изменился, перезагрузить его? Отвечаете да и будет вам счастье. Проверено не раз, как ни странно работает.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 509
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 2
ссылка на сообщение  Отправлено: 16.01.08 14:18. Заголовок: Пётр пишет: Когда з..


Пётр пишет:

 цитата:
Когда закончу, появятся следующие возможности:

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

Пётр пишет:

 цитата:
Принудительно включена кодировка 1251, что должно гарантировать правильное отображение кириллицы, даже на Винде не поддерживающей её, но только при условии наличия кириллических шрифтов.

Кто нибуть пробовал использовать редактор на Винде, не поддреживающей кириллицу?
Если да, то как отображаются комментарии?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 7
Зарегистрирован: 13.12.07
Откуда: г.Макеевка
Рейтинг: 0
ссылка на сообщение  Отправлено: 17.01.08 10:07. Заголовок: Алексей пишет: Vikt..


Алексей пишет:

 цитата:
Viktor_VK самый простой путь, просто открываете проект в лабе, так его оставляете открытым, открываете открытый в лабе асм файл в нужном редакторе. Творите с ним что хотите и сохраняете на диск. Потом просто активируете окно лаба, он сразу же спросит: файл изменился, перезагрузить его? Отвечаете да и будет вам счастье. Проверено не раз, как ни странно работает.




Спасибо за подсказку Алексей. Попробовал - и получилось. Очень удобно работать.
Хороший редактор.
Вопрос можно считать закрытым.

А этот вопрос опять Петру.
Пробовал в редакторе работать со шрифтами.
Шрифт выбирается любой. Размер тоже. А вот "курсор" и "жирный" не получилось?

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 510
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 2
ссылка на сообщение  Отправлено: 17.01.08 11:42. Заголовок: Viktor_VK пишет: А ..


Viktor_VK пишет:

 цитата:
А вот "курсор" и "жирный" не получилось

Просто я в программу не добавил соответствующий код, добавлю.

PS
Возможности редактора таковы что можно устанавливать не только шрифт и размер для всего редактора, но и для каждого стиля в отдельности. Это означает что можно например, ассемоблерные инструкции отображать одним шрифтом допустим с размером 8, а регистры другим шрифтом с размером 12 к примеру.

В качестве редактора был использован файл Scintilla.dll (SciLexer.dll ) который помещём внуть исполняемого файла PicAsmAditor.exe

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 515
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 2
ссылка на сообщение  Отправлено: 22.01.08 19:39. Заголовок: Вот новая версия про..


Вот новая версия программы http://purik.nextmail.ru/AsmEditor/PicAsmEditor_v_2.04.rar
Появилась возможность сохранять в исходниках данные о положении курсора, типе ПИКа и т. д.
Теперь данные о ПИКах хранятся в файлах из папки Library.
Появилась возможность вывода кратких подсказок в строке состояния, например, о назначении asm инструкции или директивы.

Чуть позже я добавлю файлы с описанием контроллеров.


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 106
Зарегистрирован: 19.07.07
Откуда: Россия, Челябинская обл.
Рейтинг: 0
ссылка на сообщение  Отправлено: 31.01.08 02:08. Заголовок: Неплохим дополнениям..


Неплохим дополнениям был бы навигатор по предварительно выставленным меткам, как в PureBasic. Привык уже по программе одним щелчком находить то что нужно. При написании АСМ-а бы такую красоту

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 528
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 2
ссылка на сообщение  Отправлено: 31.01.08 16:19. Заголовок: Новая версия програм..


Новая версия программы http://purik.nextmail.ru/AsmEditor/PicAsmEditor_2.05.rar
Пявился внутрений буфер. Это что-то типа буфера обмена, только действует в пределах программы. Может быть полезен когда требуется что то скопировать не повредив содержимое буфера обмена.

Появилась возможность сохранять настройки программы (закладка "Разное" в настройках).
Добавил несколько файлов с описанием контроллеров.
Сделал меню в стиле Офиса 2003

И ещё много чего...

kaligraf пишет:

 цитата:
Неплохим дополнениям был бы навигатор по предварительно выставленным меткам

Подумаю над этим.



Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 508
Зарегистрирован: 26.12.06
Откуда: Россия, Заозерск, Мурманской обл.
Рейтинг: 1
ссылка на сообщение  Отправлено: 31.01.08 16:41. Заголовок: Пётр пишет: Добавил..


Пётр пишет:

 цитата:
Добавил несколько файлов с описанием контроллеров.


Пётр, а можно добавить PIC16F877A, PIC18F252 и PIC18F452?

Удивление рождает жажду познания... Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 529
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 2
ссылка на сообщение  Отправлено: 31.01.08 19:04. Заголовок: RW1ZK пишет: Пётр, ..


RW1ZK пишет:

 цитата:
Пётр, а можно добавить PIC16F877A, PIC18F252 и PIC18F452?

К сожалению я никогда не работал с этими контроллерами, даже даташита на них нет, плэтому мне будет трудно сделать для них нужные файлы.
Если даташит ещё скачать можно, то для того чтобы составить подсказки требуется хоть какой-то опыт.
Если хотите, можите сделать нужные файлы самостоятельно.
В файлах с расширением paf (имя может быть любым) хранятся данные о ассемблерных инструкциях, директивах и псевдо инструкциях.
Вот упрощёный вариант файла PicGeneral.paf
[General] 
Type = General

[Asm] ; Ассемблерные инструкции
Count = 2
Asm1_Name = Addwf
Asm1_Help = ADDWF f,d — Сложение содержимого регистров 'W' и 'F'

Asm2_Name = Andwf
Asm2_Help = ANDWF f,d — Побитное “И” содержимого регистров 'W' и 'F'


[Dir] ; Директивы
Count = 3
Dir1_Name = List
Dir1_Help = LIST <list_option> — Список параметров компиляции

Dir2_Name = __Config
Dir2_Help = __CONFIG <expr> — - установка битов конфигурации контроллера

Dir3_Name = Equ
Dir3_Help = EQU — определение константы


[PsIns] ; Псевдо инструкции
Count = 2
PsIns1_Name = Addcf
PsIns1_Help = Addcf f,d — Добавить бит 'C' к регистру. Расшифровывается как BTFSC STATUS,0 : INCF f,d

PsIns2_Name = Adddcf
PsIns2_Help = ADDDCF f,d — Добавить бит 'DC' к регистру. Расшифровывается как BTFSC STATUS,1 : INCF f,d



Файл должен начинатся с секции [General] (квадратные скобки обязательны).
Далее должна быть строка Type = General
Потом следует секция [Asm] что означает - в ней расположены описания всех ассемблерных инструкций.
Ключ Count указывает количество инструкций (может быть не более 200)
Далее следуют ключи описывающие сами ниструкции, причём в середине ключа находится его порядковый номер, начиная с 1
Ключ AsmНОМЕР_Name должен содержать имя инструкции, а Ключ AsmНОМЕР_Help (необязательный и может отсутствовать) содержит подсказку для этой инструкции.

По такому же принципу создаются описания директив и псевдо инструкций.




В файлах с расширением pfr хранятся индивидуальные данные о каждом типе контроллера. При запуске программы она сканирует папку Library и добавляет в выпадающий список имена всех этих файлов.
Вот упрощённая структура файла PIC16F84.pfr
[General_Data] 
Type = PicRegFile
GeneralFile = PicGeneral.paf
Accumulator_Name = W
Accumulator_Address = 0
Accumulator_Help = Данные помещаются в аккумулятор
Register_Name = F
Register_Address = 1
Register_Help = Данные помещаются в регистр
Reg = INDF TMR0 PCL STATUS
; Описание регистров
[Indf]
address = 0
help = INDF — Виртуальный регистр. Работает в паре с FSR и используется для косвенного обращения к регистрам
CountBit = 0

[Tmr0]
address = 1
help = TMR0 — Таймер
CountBit = 0

[Pcl]
address = 2
help = PCL — Младший байт регистра счетчика программ
CountBit = 0

[Status]
address = 3
help = Status — Регистр содержит флаги состояния АЛУ и причины сброса, биты выбора банков памяти
CountBit = 8
Bit1_Name = IRP
Bit1_address = 7
Bit1_help = IRP — Бит выбора банка памяти при косвенной адресации (STATUS)
Bit2_Name = RP1
Bit2_address = 6
Bit2_help = RP1 — Бит выбора банка памяти (STATUS)
Bit3_Name = RP0
Bit3_address = 5
Bit3_help = RP0 — Бит выбора банка памяти (STATUS)
Bit4_Name = TO
Bit4_address = 4
Bit4_help = TO — Флаг переполнения сторожевого таймера WDT (STATUS)
Bit5_Name = PD
Bit5_address = 3
Bit5_help = PD — Флаг включения питания (STATUS)
Bit6_Name = Z
Bit6_address = 2
Bit6_help = Z — Флаг нулевого результата (STATUS)
Bit7_Name = DC
Bit7_address = 1
Bit7_help = DC — Флаг десятичного переноса-заёма (STATUS)
Bit8_Name = C
Bit8_address = 0
Bit8_help = C — Флаг переноса-заёма (STATUS)



[Configuration Bits]
CountBit = 2
Bit1_Name = _CP_ON
Bit1_Data = 000F
Bit1_help = _CP_ON — Бит защиты памяти программ установлен (CONFIG)

Bit2_Name = _CP_OFF
Bit2_Data = 3FFF
Bit2_help = _CP_OFF — Бит защиты памяти программ сброшен (CONFIG)


Файл должен начинатся с секции [General_Data]
Далее следует строка Type = PicRegFile, обозначающая тип файла.
Строка GeneralFile = PicGeneral.paf указывает на файл с описанием асемблерных инструкций директив и т. д. (рассматривался выше).
Далее три строки описывают символ, обозначающий аккумулятор, а следующие 3 строки символ обозначающий регистр спец. назначения.

В ключе Reg нужно обозначить все регистры общего нахначения разделив их одним пробелом. Количество регистров не должно быть больше 90

Далее следуют секции с более подробным описанием регистров.
Начинается секция и имени регистра, помещённого в квадратные скобки.
Ключ address (может отсутствовать) сейчас программой не используется, он нужен для компилятора, который хочу сделать.
Ключ help (может отсутствовать) должен содержать краткую подсказку.
Ключ CountBit (может отсутствовать) должен содержать количество бит у регистра (не более 29)
Если у регистра есть биты, то они описываются при помощи следующих ключей
BitНОМЕР_Name имя бита
BitНОМЕР_address (необязательный и может отсутствовать), сейчас не используется программой
BitНОМЕР_Help (необязательный и может отсутствовать) подсказка, выводимая в строке состояния

Завершает файл секция [Configuration Bits] с описанием битов конфигурации.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 510
Зарегистрирован: 26.12.06
Откуда: Россия, Заозерск, Мурманской обл.
Рейтинг: 1
ссылка на сообщение  Отправлено: 31.01.08 19:11. Заголовок: Пётр пишет: Если хо..


Пётр пишет:

 цитата:
Если хотите, можете сделать нужные файлы самостоятельно.


Не уверен, что получится, но попыхтев пару месяцев, может и рожу...

Удивление рождает жажду познания... Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 530
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 2
ссылка на сообщение  Отправлено: 08.02.08 11:07. Заголовок: kaligraf пишет: Неп..


kaligraf пишет:

 цитата:
Неплохим дополнениям был бы навигатор по предварительно выставленным меткам, как в PureBasic. Привык уже по программе одним щелчком находить то что нужно. При написании АСМ-а бы такую красоту

Сделал!
Вчера отправил для рассылки, так что ждите.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 283
Зарегистрирован: 06.05.07
Откуда: Россия, Липецк
Рейтинг: 3
ссылка на сообщение  Отправлено: 08.02.08 13:09. Заголовок: Извините за некото..


Извините за некоторую задержку с рассылкой. Объективные причины.
Сегодня разошлю.

Безумству храбрых поем мы песню (А.М.Горький) Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 108
Зарегистрирован: 19.07.07
Откуда: Россия, Челябинская обл.
Рейтинг: 0
ссылка на сообщение  Отправлено: 08.02.08 14:40. Заголовок: Пётр пишет: Сделал!..


Пётр пишет:

 цитата:
Сделал!



Здорово

Замеченный глюк - при изменении ширины навигатора - пропадает всё, что есть в окне. Потом восстанавливается.
Неплохим вариантом показать/убрать навигатор было бы сделать как в "опере" - щелчёк мышью по краю окна.
От себя могу сказать, что из-за наличия навигатора-при больших программах перейду на него.
Дополнительное пожелание - сделать табуляцию как в MpLabe.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 532
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 2
ссылка на сообщение  Отправлено: 08.02.08 15:45. Заголовок: kaligraf пишет: при..


kaligraf пишет:

 цитата:
при изменении ширины навигатора - пропадает всё, что есть в окне. Потом восстанавливается

Об этом я знаю, но как с этим бороться пока не понял.
Этим разделителем является SplitterGadget который автоматически изменяет размеры определённых гаджетов, в нашем случае панелей, причём как это происходит пока не ясно.

kaligraf пишет:

 цитата:
Дополнительное пожелание - сделать табуляцию как в MpLabe

Я уже писал что табуляция "не дружит" с сортировщиком. Если она нужна только лишь для более быстрого перемешения по тексту с помощью кнопок со стелками, то можно просто отлавливать нажатия на эти кнопки и перемещать курсор к ближайшему слову (это как вариант).

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 109
Зарегистрирован: 19.07.07
Откуда: Россия, Челябинская обл.
Рейтинг: 0
ссылка на сообщение  Отправлено: 09.02.08 01:08. Заголовок: Пётр пишет: Если он..


Пётр пишет:

 цитата:
Если она нужна только лишь для более быстрого перемешения по тексту с помощью кнопок со стелками, то можно просто отлавливать нажатия на эти кнопки и перемещать курсор к ближайшему слову



Вполне сгодится - стрелки влево/вправо и галочка в настройках, включающая/выключаящая режим. Правда, если правее редактируемого слова что-то в строке будет, то с позиций в строке будет "уплывать", если конечно не придумать дополнительный контроль и фиксацию позиции начала слова в строке(при включенном режиме). Опять же придётся отслеживать чтоб редактируемое слово не наехало на следующее за ним

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 110
Зарегистрирован: 19.07.07
Откуда: Россия, Челябинская обл.
Рейтинг: 0
ссылка на сообщение  Отправлено: 09.02.08 01:14. Заголовок: Пётр пишет: Этим ра..


Пётр пишет:

 цитата:
Этим разделителем является SplitterGadget который автоматически изменяет размеры определённых гаджетов, в нашем случае панелей, причём как это происходит пока не ясно.



Не успевают панели перестроится. Загрузка компа наверное в этот момент приличная. Возможно задержка небольшая при событии нужна.(таймер может помочь)

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 397
Зарегистрирован: 26.12.06
Откуда: Россия, Архангельск
Рейтинг: 1
Фото:
ссылка на сообщение  Отправлено: 09.02.08 09:58. Заголовок: Скачал я редактор, п..


Скачал я редактор, программа супер, но вот работает у меня не стабильно. Когда пытаюсь подправить текст в программе редактор просто слетает, вызвав ошибку с предложение отправить отчет в микрософт... Порой слетает сама по себе, а порой после ввода первой или второй буквы(если не слетела сама по себе, то после ввода второй буквы 100 процентов улетает), на пробелах пока не слетала. Кстати, а зачем перед метками ставить спец символы??? Мплаб ведь эти стороки будет комментировать, что создает громадные неудобства перед компиляцией и отладкой. Не проще ли было определять метки по другому, если в самой левой позиции курсора находится любая буква, значит это метка. Либо ориентироваться на пробел или точку с запятой. Ведь кроме меток и точки с запятой с пробелом в первой позиции ничего не может находиться, разве что в шапке программы, что легко обходится поиском первой директивы ORG 0x00 и последней END.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 533
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 2
ссылка на сообщение  Отправлено: 09.02.08 13:21. Заголовок: kaligraf пишет: Воз..


kaligraf пишет:

 цитата:
Возможно задержка небольшая при событии нужна.(таймер может помочь)

Нужна, только как её сделать, ведь за перестройку панелей отвечает функция SplitterGadget, единственное что можно сделать это добавить процедуру-обработчик событий с помощью API SetWindowLong_ только как в этой процедуре зделать задерхку пока незнаю, но что нибудь придумаю.

Алексей пишет:

 цитата:
редактор просто слетает, вызвав ошибку...

У меня никогда такого не было
А предыдущие версии нормально работают?
Если хотите то можно узнать в чём причина.
Для этого понадобится скачать программу PureBasic v4.10 (немногим больше 11Мб).
Ссылки можно найти здесь http://pbasic.spb.ru/phpBB2/viewtopic.php?t=267
После установки программы, в её папку следует поместить библиотеку Droopy Library http://www.purebasicpower.de/downloads/DroopysLib_1.31.7_noinstaller.zip
После распаковки архива, в нём следует найти файл Droopy_Ascii (у него нет расширения) , затем открыть папку с установленой программой PureBasic. В этой папке следует открыть папку PureLibraries а в ней папку UserLibraries. В неё следует скопировать выше указаный файл.
Далее я вышлю на почту исходники и Вы запустите программу в среде PureBasic. В этом случае при возникновении ошибки уже не будет появлятся окно винды, а программу закроет отладчик и укажет номер строки где произошла ошибка, а также причину ошибки, тогда разобратся будет проще.

Алексей пишет:

 цитата:
Кстати, а зачем перед метками ставить спец символы???

Имеются в виду на метки программы, а условные метки для навигации. В качестве такой метки может выступать любой комментарий со спец символами.

PS.
Ещё у кото-то подобные ошибки возникают?

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 534
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 2
ссылка на сообщение  Отправлено: 09.02.08 14:27. Заголовок: Нашёл причину ошибки..


Нашёл причину ошибки.
Возникает она в процедуре сканирования текста на наличие условных меток в комментариях при попытке создать строку с нулевым количеством пробелов.
Самое интересное в том что это происходит не во всех Asm файлах.
Причина ясна, теперь устранить ошибку будет несложно.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 111
Зарегистрирован: 19.07.07
Откуда: Россия, Челябинская обл.
Рейтинг: 0
ссылка на сообщение  Отправлено: 09.02.08 20:13. Заголовок: Возможно задержка ..




 цитата:
Возможно задержка небольшая при событии нужна.(таймер может помочь)
Нужна, только как её сделать, ведь за перестройку панелей отвечает функция SplitterGadget



Можно поробовать WaitWindowEvent() отрабатывать только после дополнительной проверки таймера, чтобы обработка событий повторялась не чаще, чем, например 20 раз в секунду.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 535
Зарегистрирован: 12.01.07
Откуда: Приднестровье
Рейтинг: 2
ссылка на сообщение  Отправлено: 10.02.08 12:55. Заголовок: kaligraf пишет: Мож..


kaligraf пишет:

 цитата:
Можно поробовать WaitWindowEvent()

Смысла нет, поскольку эта функция возрващается ID события только после изменения размера, а нам требуется узнать об этом до изменения размера, т. е. перехватить событие, чтобы выполнить требуемые действия.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 123
Зарегистрирован: 19.07.07
Откуда: Россия, Челябинская обл.
Рейтинг: 0
ссылка на сообщение  Отправлено: 18.02.08 10:10. Заголовок: Последняя версия - у..


Последняя версия - уже нормально можно пользоваться. Навигатор - это вещь. Расставил дополнительные строки комментариев чуть выше самих меток такого вида:
; - start
; - proc1
; - proc2
2000 строк программы как на ладони

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 141 , стр: 1 2 3 4 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 8
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет



Создай свой форум на сервисе Borda.ru
Текстовая версия