Skip to content

add_chip

Galavarez edited this page Mar 7, 2022 · 1 revision

Как добавить новый чип в обнулятор ?

Нужные программы:

Буду показывать на примере дампа чипа ricoh_sp_150.bin

1) Открываем дамп чипа ricoh_sp_150.bin (дамп должен быть в *.bin формате) в HxD редакторе.

2) Нажимаем Файл -> Экспорт -> С -> сохраняем ricoh_sp_150.c

3) Открываем файл ricoh_sp_150.c любым текстовым редактором и видим:

unsigned char rawData[128] = { 0x32, 0x00, 0x01, 0x03, 0x01, 0x01, 0x01, 0x00, 0x64, 0x00, 0x34, 0x30, 0x38, 0x30, 0x32, 0x32, 0x16, 0x03, 0x4D, 0x4D, 0x04, 0x00, 0x01, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };

4) Заменяем

unsigned char rawData[128] = {

на

const PROGMEM char NOTE_SP_150[] = { "SP 150" }; const PROGMEM byte dump_ricoh_sp_150_408010[128] = {

NOTE_SP_150 -- имя дампа должно быть уникальное и не повторятся

"SP 150" -- это то что видим в обнуляторе на дисплее максимум 16 знаков т.к. экран на 16 знаков

dump_ricoh_sp_150_408010[128] -- имя дампа должно быть уникальное и не повторятся

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

const PROGMEM char NOTE_SP_150[] = { "SP 150" };

const PROGMEM byte dump_ricoh_sp_150_408010[128] = { 0x32, 0x00, 0x01, 0x03, 0x01, 0x01, 0x01, 0x00, 0x64, 0x00, 0x34, 0x30, 0x38, 0x30, 0x31, 0x30, 0x16, 0x03, 0x4D, 0x4D, 0x04, 0x00, 0x01, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };

6) Дальше чтобы обнулятор понял что у него появился новый дамп надо ему это сообщить.

Находим в скетче строки : /** База Данных **/ Struct_DB datebase[] = {

и добавляем туда строку

{ BRAND_RICOH, PAGE_1_5_K, PINOUT_GVCD, NOTE_SP_150, dump_ricoh_sp_150_408010, CHIP_MEMORY_128 , 0 },

Что эта строка обозначает: BRAND_RICOH -- к какому бренду относится чип, другие обозначения в // => BRAND

PAGE_1_5_K -- на сколько страниц рассчитан дамп, другие обозначения в // => PAGE

PINOUT_GVCD -- Распиновка чипа другие распиновки в // => PINOUT

NOTE_SP_150 -- это то что увидим на дисплее

dump_ricoh_sp_150_408010 -- это то что обнулятор будет записывать в чип

CHIP_MEMORY_128 -- количество байт в чипе, другие обозначения в // => CHIP_MEMORY

0 -- это какую подпрограмму надо выполнить после прошивки чипа, а точнее генерирование серийного номера.

  1. ни чего не делать
  2. генерация 1 номера для самсунов и ксероксов (например s4200, x3119)
  3. генерация 2х номеров для самсунов и ксероксов (например WC_4118)
  4. генерация 1 номера для ricoh (например SP_3600_3610_4510)

7) Заливаем скетч в обнулятор.


Если дамп чипа не в bin формате, то его надо переконвертировать и это лего сделать программой CrumProg.

1) Открываем CrumProg

2) Перетаскиваем дамп в окно программы

3) Нажимаем File -> Save As -> name_file.bin

4) Все у вас bin файл который можно добавить в скетч по инструкции.