Важная информация

User Tag List

Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 15

Тема: ПК Лик: Формат записи на лету

  1. #1
    Administrator Аватар для CityAceE
    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    4,520
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    372
    Спасибо Благодарностей получено 
    1,129
    Поблагодарили
    373 сообщений
    Mentioned
    47 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию ПК Лик: Формат записи на лету

    Формат записи Лика на ленту следующий:



    Все цифровые значения в таблице приведены в шестнадцатеричном виде.

    В файлах RKS опущен первый синхробайт E6, то есть RKS начинаются сразу с адресов начала и конца буфера имени 70 8F 82 8F.

    Имя файла должно быть в кодировке КОИ-7 Н2 и иметь максимальную длину 15 символов. Всё, что меньше, дополняется нулями. Имя файла может быть и пустым, то есть 16 нулей.

    Контрольная сумма на Python вычисляется следующим образом:

    Код:
    cs = 0
    for i in range(start, length):
        cs += data[i]
        cs += (data[i] << 8)
    cs &= 0xffff

    Старое сообщение


    Цитата Сообщение от CityAceE Посмотреть сообщение
    Контрольная сумма от игр для Лика, зачастую не бьёт с расчётной. Думаю, что там либо другой диапазон считается (но я проверял с разными диапазонами и подогнать под сумму у меня не получилось), либо используется немного другой алгоритм расчёта. Точнее может подсказать анализ ПЗУ от Лика. А может быть кто-то уже и так знает в чём там дело?
    Добрался до анализа расчёта контрольной суммы на Лике. Суть та же, что и в стандартном Мониторе, кроме завершения процедуры. И для закрепления полученных знаний написал скрипт перевода файлов из формата Лик в стандартный формат, хотя по сути расчёт контрольной суммы для Лика там и не требуется. А вот точно потребуется он для обратного перевода. Такой скрипт тоже в планах, так как хочу на своём Лике с его родным ПЗУ позапускать некоторые вещи. А пока к первому сообщению, чтобы не потерялся, прикладываю скрипт lik2spec.py.

    Цитата Сообщение от parallelno Посмотреть сообщение
    А какие на специалисте использовались обычно клавиши чтобы начать игру?
    Да всё стандартно там. Чаще всего это клавиши курсора и пробел.
    [свернуть]
    Последний раз редактировалось CityAceE; 13.12.2023 в 10:58.
    С уважением, Станислав.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2
    Administrator Аватар для CityAceE
    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    4,520
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    372
    Спасибо Благодарностей получено 
    1,129
    Поблагодарили
    373 сообщений
    Mentioned
    47 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Сделал я обратный конвертор, то есть из формата стандратного монитора Специалиста в Ликовский. Для проверки загрузки начал переставлять родные ПЗУ-шки в Лик, и понял, что не помню где какая стояла. Но методом тыка подобрал верную последовательность. И тут выяснилось, что у меня микросхемы на трёх местах не читаются. По диапазону D800-DFFF читаются 0xFF, а по E000-E7FF и E800-EFFF - 0x82 (то есть пустота). То есть оправдались мои худшие ожидания: когда я выкорчёвывал переделки под SP-580, я перепиленные дороги не соединил, так как, видимо, решил, что раз первые две микросхемы работали как надо, то и ладно. В итоге нашёл всё, что я там нарезал и восстановил. Теперь все 6 микросхем ПЗУ определяются и работают. И вот я, наконец, начал загружать первую программу. Из Загрузчика (то есть по Сбросу) ничего так и не получилось. Получилось по директиве I. И вот тут я столкнулся с тем, что моя версия ПЗУ считает контрольные суммы ровно так же, как их считает стандартный Монитор. И загруженная программа с "другой" КС ругается на ошибку:



    Я, конечно, записал в WAV все 12 Кб моего ПЗУ. Но теперь не знаю, чем его распознать и преобразовать в BIN. Такая утилита мне также понадобится, когда дойдёт дело до оцифровки моих кассет, когда я их найду. Я ведь даже уже и магнитофон себе купил под это дело Panasonic RQ-2102:
    С уважением, Станислав.

  4. #3
    Administrator Аватар для CityAceE
    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    4,520
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    372
    Спасибо Благодарностей получено 
    1,129
    Поблагодарили
    373 сообщений
    Mentioned
    47 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от CityAceE Посмотреть сообщение
    И загруженная программа с "другой" КС ругается на ошибку:
    Хм... Загадка природы. Нашёл свои пометки в руководстве пользователя:

    Я своей же рукой записывал контрольную сумму для этих Шахмат, как F850, на которую теперь этот же компьютер ругается. Что за ерунда?
    С уважением, Станислав.

  5. #4
    Guru Аватар для svofski
    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,099
    Спасибо Благодарностей отдано 
    758
    Спасибо Благодарностей получено 
    641
    Поблагодарили
    396 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от CityAceE Посмотреть сообщение
    Но теперь не знаю, чем его распознать и преобразовать в BIN.
    Что будет если вав затащить в Тапира ?
    Больше игр нет

  6. #5
    Administrator Аватар для CityAceE
    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    4,520
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    372
    Спасибо Благодарностей получено 
    1,129
    Поблагодарили
    373 сообщений
    Mentioned
    47 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от svofski Посмотреть сообщение
    Что будет если вав затащить в Тапира ?
    Затаскивал, конечно. Лишь какой-то небольшой кусок из центра распознаёт.
    С уважением, Станислав.

  7. #6
    Administrator Аватар для CityAceE
    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    4,520
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    372
    Спасибо Благодарностей получено 
    1,129
    Поблагодарили
    373 сообщений
    Mentioned
    47 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от CityAceE Посмотреть сообщение
    0000 - это начальный адрес
    60FF - это конечный адрес
    2D50 - это считанная КС
    F850 - это вычисленная КС

    Но вся суть в том, что в RKS как раз и прописана F850, а не 2D50. Я проверил на ещё нескольких файлах. Он считывает с ленты КС, делает над числом ещё какое-то действие и уже потом сравнивает с вычисленной суммой. Что ж буду копать дальше.
    С уважением, Станислав.

  8. #7
    Guru Аватар для svofski
    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,099
    Спасибо Благодарностей отдано 
    758
    Спасибо Благодарностей получено 
    641
    Поблагодарили
    396 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от CityAceE Посмотреть сообщение
    Затаскивал, конечно. Лишь какой-то небольшой кусок из центра распознаёт.
    Понятно. Я со Специалистовскими вавами вообще его не испытывал. Спасибо!
    Больше игр нет

  9. #8
    Guru Аватар для HardWareMan
    Регистрация
    26.02.2011
    Адрес
    г. Павлодар, Казахстан
    Сообщений
    4,380
    Спасибо Благодарностей отдано 
    304
    Спасибо Благодарностей получено 
    592
    Поблагодарили
    439 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от CityAceE Посмотреть сообщение
    Я своей же рукой записывал контрольную сумму для этих Шахмат, как F850, на которую теперь этот же компьютер ругается. Что за ерунда?
    Т.е., битое ОЗУ тут не берётся во внимание?
    Последний раз редактировалось CityAceE; 06.12.2023 в 19:48. Причина: Случайно

  10. #9
    Administrator Аватар для CityAceE
    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    4,520
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    372
    Спасибо Благодарностей получено 
    1,129
    Поблагодарили
    373 сообщений
    Mentioned
    47 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от HardWareMan Посмотреть сообщение
    Т.е., битое ОЗУ тут не берётся во внимание?
    Скорее всего нет, потому что если потом подать команду подсчитать КС, то она будет в точности совпадать с прописанной в файле. Но при этом то, что считывается из файла не соответствует тому, что в нём прописано.

    Но я всё-таки прогнал все тесты Рюмика. Тесты ошибок не выявили.
    С уважением, Станислав.

  11. #10
    Administrator Аватар для CityAceE
    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    4,520
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    372
    Спасибо Благодарностей получено 
    1,129
    Поблагодарили
    373 сообщений
    Mentioned
    47 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от svofski Посмотреть сообщение
    Понятно. Я со Специалистовскими вавами вообще его не испытывал. Спасибо!
    Перезаписал WAV ещё раз, понизив уровень записи, а заодно и сделав его моно. И в Тапире в режиме RAW всё отлично распозналось! В других форматах он ошибочно первые байты заголовка файла Лика воспринимает, как адреса загрузки и поэтому остаток файла не распознаёт. Но в RAW я вижу все данные, которые мне нужны 100%. Спасибо!

    И вот похоже, что HardWareMan всё таки прав насчёт памяти. В отгрузке пишется именно та сумма, которую и я рассчитываю. Emu80 в режиме Лика тоже и WAV, и RKS загружает без ошибок КС. И ПЗУ я сравнил, они отличаются только фильтром цифровых клавиш с нажатым НР. Хотя кроме памяти ещё могу грешить на RKM Player, с помощью которого я скармливаю моему Лику RKS-файлы. Возможно, это он неправильную сумму подкидывает вместо записанной. Уже завтра оцифрую сигнал с этого проигрывателя и посмотрю что он там передаёт в качестве КС.
    Последний раз редактировалось CityAceE; 07.12.2023 в 10:34.
    С уважением, Станислав.

  12. Эти 2 пользователя(ей) поблагодарили CityAceE за это полезное сообщение:

    HardWareMan (07.12.2023), svofski (06.12.2023)

Страница 1 из 2 12 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 5
    Последнее: 06.03.2023, 00:01
  2. Ответов: 4
    Последнее: 05.10.2017, 22:38
  3. Формат записи на кассету
    от Tronix в разделе Разный софт
    Ответов: 16
    Последнее: 18.10.2015, 22:36
  4. Перемещаемость на лету
    от alone в разделе Программирование
    Ответов: 66
    Последнее: 05.04.2012, 10:03
  5. Продается Лик (клон Специалиста)
    от KALDYH в разделе Барахолка (архив)
    Ответов: 1
    Последнее: 20.02.2010, 14:29

Ваши права

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