Энтузиаст рассказал, как он решил проблему переноса файлов с ноутбука Apple PowerBook Duo 280c 1994 года выпуска. Он опубликовал подробный гайд.
![](https://habrastorage.org/getpro/habr/upload_files/608/afb/79b/608afb79ba54ab4dc887ca2c07ff40be.jpg)
Автору проекта требовалось сохранить несколько коротких аудиозаписей. Они воспроизводились локально через внутренние динамики ноутбука. Однако в PowerBook не предусмотрено аудиоразъёмов, чтобы получить хорошие аналоговые копии записей.
Внутренний жёсткий диск использует SCSI с необычным разъёмом. Кроме того, были сомнения, что старую файловую систему (HFS) можно будет легко прочитать в современной.
К ноутбуку прилагался внешний дисковод для гибких дисков, но при его подключении компьютер не работал. Энтузиасту не удалось выяснить причину аппаратной неисправности.
При этом PowerBook имеет порт AppleTalk и телефонную розетку, но сетевое программное обеспечение на нём не установлено. Однако в нём было приложение для набора номера, что стало первым шагом к потенциальному решению.
Первый вопрос заключался в том, как конвертировать аудиофайл так, чтобы его можно было отправить по факсу. Ноутбук включает коллекцию игр и редактор ресурсов ResEdit, который ранее использовался для проверки и изменений вышеупомянутых игр.
Он позволяет просматривать необработанное содержимое файлов в шестнадцатеричной форме. Однако ResEdit не поддерживает печать, и текст пришлось скопировать в другое приложение.
![](https://habrastorage.org/getpro/habr/upload_files/454/5db/398/4545db398e194fe50d87b8b74411e2ca.jpg)
Переносимый звуковой файл имел длину 37 928 байт. Шестнадцатеричное представление вдвое больше, поскольку каждый байт представлен двумя символами (0-F). Энтузиаст использовал пакеты 12288 (0x3000 в шестнадцатеричном формате), чтобы облегчить запоминание смещений.
![](https://habrastorage.org/getpro/habr/upload_files/c31/fb8/b53/c31fb8b534ea5b8418cae982e6ff3256.jpg)
Поскольку в ноутбуке также установлен Microsoft Office и поддерживается печать, то он вставил содержимое буфера обмена в документ Word.
![](https://habrastorage.org/getpro/habr/upload_files/842/253/144/84225314450677dbad6aaf711c53848c.jpg)
Все звуковые файлы имели размер менее 100 КБ, поэтому их копирование не заняло много времени.
![](https://habrastorage.org/getpro/habr/upload_files/833/681/e4c/833681e4c87d38dd19314c58b9c58580.jpg)
Далее энтузиаст задействовал программное обеспечение для факса из диалогового окна печати. Он решил использовать для приёма файлов студенческий ноутбук ThinkPad T60 под управлением Windows XP, которая включает в себя факс-приложение, сохраняющее их в виде многостраничных изображений TIF.
![](https://habrastorage.org/getpro/habr/upload_files/955/e49/b16/955e49b16e94afbe99d76f4ee21db6a6.jpg)
Соединить два ноутбука телефонным кабелем не получится. Оказывается, напряжение, обеспечиваемое стационарной линией связи, важно для правильной работы модема. Простая схема имитатора телефонной линии может решить эту проблему, и её можно собрать с помощью обычных электронных компонентов и батареи на 9 В.
![](https://habrastorage.org/getpro/habr/upload_files/ecc/06d/c37/ecc06dc3723a20fe4ed26b257559e71f.jpg)
В итоге энтузиаст смог отправить факс на ThinkPad. Теперь его требовалось перевести обратно в двоичный файл. Автор конвертировал TIF в PDF и использовал оптическое распознавание символов (OCR), чтобы преобразовать его обратно в текст с использованием 16 различных символов (0–9, A–F) и шрифта Courier.
![](https://habrastorage.org/getpro/habr/upload_files/732/5f0/f5e/7325f0f5e1ca765104c90908572c9e1d.jpg)
После этого файл был скопирован редактор и сохранён как двоичный.
![](https://habrastorage.org/getpro/habr/upload_files/93f/3fe/087/93f3fe087c19a6ffa64dcdc31f6ac793.png)
Затем его потребовалось импортировать в Audacity для определения аудиоформата: беззнаковый 8-битный PCM, с прямым порядком байтов, 22050 Гц, моно. Из-за ошибок транскрипции OCR звук не идеальный, слышны потрескивание и хлопки.
Тогда энтузиаст решил написать свой алгоритм оптического распознавания символов с учётом того, что текст был создан с использованием шрифта фиксированной ширины, а документ по сути представляет собой сетку символов с равномерными интервалами. Он определил отправную точку, смещения символов и межстрочный интервал, чтобы захватить и проанализировать каждый символ индивидуально.
![](https://habrastorage.org/getpro/habr/upload_files/f44/df5/901/f44df590180553858af14e7190562c22.png)
В итоге он смог добиться идеального звучания старых аудиофайлов.