Pocket-Viewer.ru for users and developers
Google
 
Web pocket-viewer.ru
Главная · Программы · Пользователям · Разработчикам · Форум   
  Пользователям
Куплю
Продам
Где отремонтировать
П-Документация
Характеристики
П-БРАВО
ЧАВО (FAQ)
Публикации
Рисунки
PV-шники



заправка картриджей в Москве

PATCH, HEX, DIFF и обновление PVOS.

   Casio PocketViewer имеет оригинальную Операционную Систему, названную PVOS, которая хранится в постоянной памяти, без неё PocketViewer - просто игрушка. С некоторых пор PocketViewer оснащаются перепрограммируемой FLASH-памятью, поэтому PVOS можно обновлять. Процесс замены ОС возможен для моделей PV-450X/250X, PV-S450/S250, PV-S400/S600, PV-S460/S660, и практически аналогичен.
   Здесь я попробую описать некоторые моменты, касаемые установки PVOS, и добавление в неё дополнительных функций.

1. Файл для установки PVOS - формат HEX.

   PVOS хранится в первом мегабайте флэш-памяти. Процесс замены её называют "закачкой" или "заливкой". Для установки новых версий PVOS используются файлы с расширением HEX.
   Формат HEX, называемый еще Intel-HEX - это текстовой образ памяти в шестнадцатеричном виде, предназначаемый (изначально) для программирования микросхем ПЗУ. С файлами такого формата работают многие программы для ПК, которые тем или иным образом предназначены для разработки устройств с ПЗУ - однокристальные микропроцессоры (PIC, Atmel, MCS-51), FLASH-память, ПЛИС. Расширением HEX могут иметь и другие файлы, содержащие шестнадцатеричный образ памяти, но формат Intel-HEX имеет отличителые черты:
  • каждая строка начинается с двоеточия ":",
  • остальные символы в строке - чётное число шестнадцатеричных цифр,
  • пробелы и всякие другие символы не допускаются.
   Неплохое описание формата Intel-HEX содержится в журнале Радио-№5-2001.
   Операционные системы для различных моделей доступны через Интернет, хотя бы на этом сайте (www.pocket-viewer.ru\program\os). Допустим, Вы решили переустановить систему на своем PocketViewer и скачали себе новую версию ОС именно для вашей модели Casio.

2. Переустановка ("заливка") PVOS.

   Сначала - несколько слов о лицензионном и гарантийном вопросе. До конца окончательного решения так и не имеется, так что переустновка ОС - дело каждого на свой страх и риск. Но по решению большинства сложилось мнение, что установка другой версии ОС не должна никак влиять на гарантию самой машинки. В ином случае этот вопрос должен быть официально зарегистрирован.
   Небольшой дополнительный вопрос - сохранение версии уже установленной в машинке ОС. "Выкачать" наружу установленную именно у Вас на наладоннике PVOS можно программой GetOS, но фактически версии любых возможных ОС доступны в Интерненте, и можно скачать ее оттуда (предварительно выяснив версию). При возникновении неисправностей с машинкой и опасении, что претензии будут к версии ОС, можно установить оригинальную версию обратно (если, конечно, получится ...).
   Процедура по устновке новой версии PVOS (для моделей PV-S450/S250) следующая (составлена по многочисленным советам в форуме):
  1. При необходимости, вставьте в записную книжку свежие батарейки. Если в процессе закачки произойдет сбой по питанию, может случится, что последующие попытки переустановки ОС будут бесполезными.
  2. Присоедините шнур блока обмена данными к последовательному порту (RS-232C) Вашего компьютера. Вставьте записную книжку в блок обмена данными.
  3. Для того чтобы создать резервную копию данных памяти Вашей записной книжки, используйте PCSync, которая прилагается к книжке при продаже. По окончании процедуры создания резервной копии, выйдите из программы синхронизации ПК для Windows.
  4. Далее выполните следующие операции с записной книжкой:
    a. Прикоснитесь в меню режимов к иконке <Планировщик> > [Инстр] (инструменты)> [Калькулятор]. На экране появится изображение калькулятора.
    b. Если в левой части дисплея калькулятора отображается символ "М", прикоснитесь к кнопке [МС], для того чтобы его стереть.
    c. Введите с клавиатуры калькулятора волшебное число "19010203".
    d. Прикоснитесь к М+, при этом в левой части дисплея калькулятора отобразится символ М.
    e. Прикоснитесь к клавише Menu 5 раз.
    f. Если ничего не произошло, продолжайте прикосновения к клавише Menu до тех пор, пока на экране не появится сообщение "OS UPDATE" (Обновление операционной системы).
  5. В окне программы PVM выберите раздел меню Execute (выполнить) и затем, подраздел "OS Update" (обновление операционной системы), для того чтобы вывести на экран окно диалога, позволяющего выбрать файл обновления операционной системы. В PVM выберите обновляемый файл, и затем щелкните по клавише "Open" (открыть) для того, чтобы загрузить его. Процесс операции загрузки иллюстрирует линия индикации выполнения задания вдоль нижней части окна Программы управления PV-приложениями. Появившееся сообщение в окне диалога укажет Вам на то, что загрузка файла завершилась.
  6. Для того, чтобы начать процедуру обновления, прикоснитесь стилусом к экрану записной книжки. Появившееся сообщение в окне PVM укажет Вам на то, что загрузка файла началась и смениться сообщением об окончании, когда загрузка ОС быдет завершена.
  7. Для того чтобы закрыть окно диалога, щелкните по клавише ОК.
  8. В это время произойдет стандартный перезапуск (Сброс) машинки, и появится экран калибровки. Выполните калибровку и отрегулируйте контрастность экрана.
  9. На вопрос об полном удалении данных можно ответить отрицательно. Как показывает опыт, необязательно производить полное удаление данные при переустановке ОС.
  10. При необходимости запустите программу синхронизации PCSync для Windows на своем компьютере и перезапишите данные резервных копий.

   Следует заметить, что операции п.4 будут отличаться для моделей PV-450X/250X, PV-S400/S600. Также для каждой линейки моделей требуется своя версия PVOS.

3. Патчи PVOS - файлы DIFF.

   Практически сразу после пользования PocketViewer со стандартной версией возникает недовольство к реализации некоторых её Функций. Именно поэтому и появляются новые версии PVOS, именно поэтому пользователь и делает переустановку. Но программисты иногда разрабатывают нечто дополнительное, что неплохо бы добавить в состав самой системы. Так возникаюи патчи.
   Патч, как правильно писал Костик Рассказов - это некоторая "нашлепка" к программе, которая вносит в нее другие функции. Кстати, патч - это именно сами изменения, которые пользователь по своему желанию ставит (или нет) на основную программу. Поэтому версии TextViewer-а некорректно называть патчами - это УЖЕ ПРОПАТЧЕННЫЕ ПРОГРАММЫ.
   Патчи получили широкое распространение в эру появления Интернета и широкого роста игрушек для IBM PC. Многих тогда интересовали вопросы "неубиваемости", "бессмертия", "неограниченного оружия" и т.д., а то и просто снятия защиты от копирования. Вместо того, чтобы перекачивать новую версию программы со "взломанным" участком, можно было скачать маленький текстовой файл, по которому небольшая программка выполняла необходимые изменения в основной программе.
   Для PVOS задача стоит более серьезная - добавить некоторых функций в систему. К счастью, ОС занимает на весь объем 1 Мб, в ней достаточно свободных дырок. В этих участках и можно зазместить код дополнительных функций. Именно так реализована русская ЙЦУКЕН-клавиатура, индикатор батарейки, так реализованы часы в главном меню (от Fatty) для PVOS-1.02.
   Патчи для PVOS выпускаются (обычно) в файлах с расширением DIFF. Формат DIFF - это файл протокола сравнения двух файлов HEX, их отличия в наглядном виде. Но касательно PVOS его используют для получения новой версии HEX-файла по имеющейся версии и DIFF-файлу. В файле указывается адреса в HEX-файле, старое значение строк и новое значение строк. Если в HEX-файле по указанным адресам содержаться не те значения, то "патчер" (программа наложения патча) будет выдавать предупреждения.
   Например, мой патч для исправления опечатки "ПоследКие" можно словами описать так:
>>>
В строке 20019 файла HEX
значения    ":10E2D000 ... ACAAA60002" 
заменить на ":10E2D000 ... AFAAA600FF".
>>>
   Как видите, все просто, и такое можно сделать даже в текстовом редакторе (если он поддерживает текстовые файлы размером до 3-х Мб). Но этот патч очень маленький, он изменяет только один байт. Большинство патчей содержат десятки изменяемых строк, и вручную это сделать очень сложно. Для автоматизации этого процесса существует программа-"патчер". Например, имеется версия от Anleitung zur Verwendung (120 Кбайт, 21.02.2001, http://www.pocketviewer.de), которой и пользуются многие.

   Для "патчанья" ОС необходимо:
1) Скачать DIFF-патч для версии PVOS, установленной на вашей машинке;
2) Получить файл вашей ОС в HEX-формате (размер около 3 Мб);
3) Скачать программу PATCH.EXE.
4) Сохранить исходную версию файла PVOS на всякий случай.
5) Выполнить команду из командной строки
> patch.exe PVOS-NNN.hex PATCH-NNN.diff
6) Установить полученную версию PVOS в PocketViewer.

4. Патчи PVOS в виде исполнимых модулей.

   Описанный процесс "патчанья" PVOS через DIFF-файл имеет некоторые минусы:
1 - необходимо иметь HEX-файл ОС имеено требуемой версии,
2 - после изменений необходима процедура установки системы.
При поиске альтернативных вариантов наложения патчей был разработан метод изменения PVOS в самой FLASH-памяти PocketViewer. Суть его в том, что перепрограммировать любой участок FLASH-памяти можно прямо из AddIn-программы, нужно только знать как.
   Поэтому:

1 - создаем AddIn-программу, в которую зашиваем содержимое патча;
2 - устанавливаем AddIn-программу BIN-формата в машинку;
3 - запускаем AddIn-программу на выполнение;
4 - удаляем AddIn-программу из области программ за ненадобностью;
5 - имеем машинку с обновленной PVOS.

   Данный алгоритм должен был, по идее, сохранять гарантию на машинку, и обеспечивать большее удобство для пользователя. Разработкой пакета патчей такого вида занималась SSC-Group, но дальнейшее развитие данного направления в этом году неизвестно. Из имеющегося данный формат имеет патч BootStrap.BIN.
   В принципе, выкачав из машинки ОС до установки патча и после, можно получить его DIFF-вариант. Перспективы данного направления неясны. Возможно, интересным было бы решение, когда AddIn-программа содержит данные патча не в своем теле, а принимает на входе любой DIFF-файл.

   С уважением Рямов Сергей / RSS, г. Хабаровск.
Все права связанные с торговыми марками, упоминаемыми на страницах этого ресурса, принадлежат их владельцам.
Полное или частичное воспроизведение любых материалов, содержащихся на этом сайте, допускается только с условием размещения ссылки на этот сайт.
Пишите нам: [email protected] © Алексей Ананьев-Миляр, 2001
www.melar.ru
Hosted by valueHOST: Лидер Вэб-Хостинга



Rambler's Top100 Rambler's Top100 Информационная Деловая Сеть