User Tag List

Показано с 1 по 10 из 27

Тема: Запакованный текст на C64 и Apple][

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    12.02.2008
    Адрес
    S-Posad
    Сообщений
    472
    Спасибо Благодарностей отдано 
    28
    Спасибо Благодарностей получено 
    49
    Поблагодарили
    35 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Запакованный текст на C64 и Apple][

    Помогите распокавать текст. Речь идет о игрушке (квест) "Алиса в стране чудес" вышедшей в 1985 году на Commodore64 и Apple][.
    Для обоих машин используется идентичная система хранения текста - прям блок содержащий набор фраз у обох машин байт в байт.

    Вот например первый попавшийся персонаж заявляет такую фразу:



    D007 - отсюда движок его начинает читать, но там в каждом байте - от 1 до 3 букв.

    D000- 00 00 00 00 00 FF 4E CC D0 30 35 2F 80 04 EC CD .....ЪnLP.....ЛM
    D010- 05 4B 39 A4 4C D0 18 1A 97 C0 02 76 66 F4 89 A0 .k.$lP...@.жфТ.
    D020- 69 59 C2 D4 66 80 C0 D4 BE 00 20 8D D0 02 B5 40 иyBTф.@T>...P.5
    D030- 9D 99 A0 AC 21 DD 42 CE 38 2B 00 08 A0 08 22 14 .. ,.]bN.... ...
    D040- CC 10 30 0A 19 81 B6 31 A9 E0 00 FF 0B 12 32 EE L.....6.)Ю.Ъ...Н
    D050- 80 D4 2C 06 14 D5 06 A1 69 82 21 98 69 06 01 2E .T...U.!и...и...
    D060- 03 75 D1 40 35 F0 00 FF 1C 1A 5D D0 01 62 46 5F .уQ.П.Ъ..}P.бf.
    D070- 00 00 8C C2 3A A4 65 06 A1 69 80 D3 2B 86 8F 00 ...B.$е.!и.S....

    1байт: = "I'"
    2байт: = "M"
    3байт: = "L"
    4байт: = "A"
    5байт: = "TE"
    В общем , где-то 1-2 знака в байте, иногда вроде бы до 3-х, ну это включая пробелы

    Скорее всего, упаковка без сложного сжатия, просто отрезаются старшие разряды (вероятно, отрезаются 3, остаётся 5), оставшиеся запихиваются в байты. При этом эти 5 - не коды ASCII, а указатели на таблицу вида char[0x40] = (' ', 'a', 'b'... и какие-то ещё символы). Известно, что есть два спецсимвола (действуют после раскодирования) : 0x1B и 0xFF. 0x1B - после него следующий символ выводится в видеопамять через другую таблицу, а 0xFF - скорее всего конец строки (неизвестно, как он возникает из 5 бит). Также есть предположение, что байты в выбираются не подряд, а, в зависимости от чего-то, возможны переходы назад/вперед.
    Причем вот что ещё: там как действительно сокращённый знакогенератор, т.е. в "архиве" лежит некий код , который тоже ещё не символы, он уже в обычную кодировку преобразуется по таблице. Ну там просто " abcdef...какие-то ещё символы"

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

    Для C64 тоже самое, только смешение блока в ОЗУ другое:
    Последний раз редактировалось GARNIZON; 09.12.2018 в 16:21.

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

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

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

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

Похожие темы

  1. Конвертер из Tasm и Alasm в текст
    от Raider в разделе Программирование
    Ответов: 11
    Последнее: 24.11.2024, 12:09
  2. Ответов: 12
    Последнее: 09.06.2018, 08:22
  3. Пишем текст на ПЦ формат 42 ZX как???
    от Mad Killer/PG в разделе Утилиты
    Ответов: 18
    Последнее: 15.07.2011, 22:39

Ваши права

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