Загрузка операционной системы с виниловой пластинки

habr.com — Заголовка вполне хватит
Картинки, Юмор | Trubach 18:10 01.12.2020
19 комментариев | 64 за, 0 против |
#1 | 18:19 01.12.2020 | Кому: Всем
[censored]
#2 | 18:31 01.12.2020 | Кому: Всем
Осталось только загрузку через микрофон, голосом напеть.
#3 | 18:37 01.12.2020 | Кому: Всем
С восковых валиков теперь надо систему развернуть попробовать
#4 | 18:39 01.12.2020 | Кому: Всем
У кого-то дохуя свободного времени. Завидую
#5 | 18:43 01.12.2020 | Кому: Всем
Ох этот звук!!! Сколько часов было убито за ZX Spectrum... ))) Когда с другом ковыряли код программ и игр на ассемблере - если игра не была шифрована (xor или разные вариации защиты) по звуку можно примерно определить, где код, где данные, где пустые не занятые участки данных. )

Самое интересное - эксперименты по скоростной загрузке программ с модифицированным загрузчиком и ускоренным воспроизведением. )
#6 | 19:01 01.12.2020 | Кому: Швейк
Одна из адаптации умельцами сопряжения iPod iPhone c радио в Вольво автомашине использовала специальный звуковой файл (трак) , который вы просто проигрывали на вашем Apple девайсе, подключённой к радио через коробочку, и коробочка сопряжения интерпретировала этот трек как модемные данные, прошивалась этим файлом, и активировалась.
#7 | 19:04 01.12.2020 | Кому: Всем
Эдак скоро дойдет до проверки на практике древнего-предревнего баяна про загрузочный лист.
[censored]
#8 | 19:09 01.12.2020 | Кому: split
[с сомнением] а это работало? Я конечно, знаю, что потроша биосы и firmware разных девайсов, можно много странного найти. Загрузку с hp scsi tape выдел сам. Но со scsi сканера чего то сомневаюсь.
#9 | 19:12 01.12.2020 | Кому: Пончик на Луне
> [с сомнением] а это работало?

Должно
#10 | 19:41 01.12.2020 | Кому: Швейк
Scsi bios, на который будет передано управление, не должден посчитать сканер как boot device. И даже если и удасться его уговорить что там на скажем scsi id7 - некий unknown boot device., все равно надо ещё сканер аппаратно перевести в режим передачи данных по шине. Вот это совсем сомнительно, так как он будет ждать команд управления от адаптера. Если только с кнопок, но без инициализации вряд ли..

В общем, мне кажется, это лажа. Хотя забавная.
#11 | 19:45 01.12.2020 | Кому: Пончик на Луне
>
> В общем, мне кажется, это лажа

Я такой из винды печатал, только сканера не было. Хз как работает в реале
#12 | 20:24 01.12.2020 | Кому: Пончик на Луне
> В общем, мне кажется, это лажа. Хотя забавная.

Кажется? Тебя не смущает то, что для того, чтобы эта лажа заработала, в прошивке любого «планшетного сканера, имеющего SCSI-интерфейс» должен быть код распознавания stacked barcode, которым закодирован загрузчик?
#13 | 22:28 01.12.2020 | Кому: Пончик на Луне
> [с сомнением] а это работало? Я конечно, знаю, что потроша биосы и firmware разных девайсов, можно много странного найти. Загрузку с hp scsi tape выдел сам. Но со scsi сканера чего то сомневаюсь.

да я 100 раз так делал!!!
#14 | 22:41 01.12.2020 | Кому: dse
Это было слишком давно, я уже не помню критерии поиска mbr и работу начального загрузчика в биосе. Scsi эмулировать легко, сказать, что ты не сканер, а бутовый san disk или даже scsi флопик.
Вообще там в прошивках всякого скрытого дерьма хватает.
[censored]
[censored]
#15 | 22:47 01.12.2020 | Кому: Пончик на Луне
> Вообще там в прошивках всякого скрытого дерьма хватает.

Дерьма — да, хватает, но сканера баркодов там точно нет.
#16 | 02:52 02.12.2020 | Кому: Всем
Прикиньте - а я помню как в универе параллельная группа которая на фортран училась, с перфокартами ходила. Это такие твёрдые листки с прямоугольными дырочками. а у нас на бейсик стояли копии американских машин - они с аудиокассет грузились
#17 | 03:47 02.12.2020 | Кому: Всем
Народ, вы чего? Это ж шутка про лист, оно в принципе работать не может. Для того, чтобы оно работало, в самом первом приближении (без погружения в протоколы и проч) нужно, чтобы загрузчик понимал, что ему сейчас приедет картинка, что нужно на ней сделать коррекцию ошибок (неровности бумаги, неравномерность движения сканера, масштаб, перекосы и т.д.), затем обрезать область по специально предусмотренным маркерам и проверить на ней контрольную сумму. Это вот наиболее очевидное, лежащее на поверхности. Это я даже не говорю о том, что картинка очень похожа на то, как выглядит экран zx spectrum, если в область памяти экрана загрузить некий код. Соответственно, данных тут примерно 6 килобайт.
#18 | 06:09 02.12.2020 | Кому: split
> похожа на то, как выглядит экран zx spectrum, если в область памяти экрана загрузить некий код.

У нас с другом был самописный просмотрщик памяти, в котором вывод в ширину можно уменьшать - уменьшаешь, бац, спрайт становится плохо различим - ещё уменьшаешь, чёткий спрайт из игры. Удобно было в Диззи просмотреть спрайты вещей и понять, что как можно дальше пройти - бумажного руководства к игре, которое прилагалось на Западе при продаже, не было. :) Графические ресурсы можно было выдирать, а используя код хождения на экране из Dizzy - подменяешь спрайты и вместо Яйца уже ходит твой набор спрайтов. Причем для хождения использовалась парный набор спрайтов - маска для очистки (накладываемая по AND на экран и собственно сам Dizzy, накладываемый по OR). Сама подложка копировалась и при следующей перерисовке - восстанавливалась обратно, не нужно было перерисовывать экран полностью. Вообще ковыряние в коде игр дало много знаний на будущее. ))

Если смотреть распечатку - первая 1/12 часть - это код на ассемблере (точки расположены хаотично), потом идут какие-то структурированные данные - характерные вертикальные повторяющиеся линии, таких блоков несколько, между которыми похоже есть код. А вот в самом конце что-то похоже на рисунок, растянутый в ширину. Если оцифровать, то можно посмотреть подробнее, что там было засунуто. )))

Объем данных - на моем экране примерно 124 мм в ширину, один байт примерно 4 мм ~ 31 байт в ширину. Высота тоже 124 мм, примерно 1 байт = 1 мм. Итого 124 * 31 ~ 3 КБ кода и данных. Для загрузчика на ассемблере норм. Это же не операционная система.
#19 | 11:07 02.12.2020 | Кому: split
> Народ, вы чего? Это ж шутка про лист, оно в принципе работать не может

Это голимые отмазки.

> Для того, чтобы оно работало, в самом первом приближении (без погружения в протоколы и проч) нужно, чтобы загрузчик понимал, что ему сейчас приедет картинка, что нужно на ней сделать коррекцию ошибок (неровности бумаги, неравномерность движения сканера, масштаб, перекосы и т.д.), затем обрезать область по специально предусмотренным маркерам и проверить на ней контрольную сумму.


Вот, ты уже и алгоритм работы набросал.
Войдите или зарегистрируйтесь чтобы писать комментарии.