К сожалению, ответ в том, что это зависит. Здесь я опишу некоторые зависимости.
- В демонстрациях часто содержится разорванная музыка игр, или более новые игры могут содержать известную музыку какого-то демо. В обоих случаях музыка одинакова, а плеер для музыки будет таким же, потому что игрок большую часть времени был неотъемлемой частью самой музыки. Таким образом, в этом базовом случае одни и те же последовательности двоичных данных используются и в той или иной форме на диске.
- Демоны часто сжимали их содержимое, чтобы быстрее загружать или создавать меньшие программы. В этом случае последовательности двоичных данных определенно отличаются от. Вы можете проверить, что если в начале демонстрации есть некоторый «шум» от распаковки, часто линии цветов на границе или обновление символов на экране.
- Некоторые более крупные игры также сжимали содержимое, которое было загружено, например. GI Joe. Затем различные последовательности на диске. Некоторые инструменты дампа памяти, используемые для взлома, например. ISEPIC, также сжал образ памяти.
- Некоторые игры даже зашифровали их содержимое, например. Bards Tale 2. Затем различные последовательности на диске снова. Вы не можете знать, пока не разобрали рутину загрузки игры.
В случае 2 - 4 надежды. (Я не знаю точных типов игр или демо, которые вы смотрите.)
- Далее изображения на диске имеют определенный макет, см. http://unusedino.de/ec64/technical/formats/d64.html Учитывая, что такая же последовательность байтов будет распределяться по разным секторам диска. Также эти сектора не в последовательности, но (на самом деле) случайные. Если данные, которые вы ищете, меньше, чем сектор диска, поэтому менее 256 байт, последовательности вряд ли будут в одной последовательности на тех же дорожках и секторах. Поэтому, если файлы не были одинаковыми и скопированы на диск в том же порядке, вы получите различные последовательности.
Пункт выдачи 5 Я говорю, что, скорее всего, вы не найдете последовательность в том же порядке, даже если без сжатия или шифрования.
Вы можете искать куски последовательностей из 256 байтов. Но начало музыки может быть разным, поэтому даже секторы могут иметь разные данные, потому что, например, один сектор содержит музыку, начинающуюся со смещения 0, а другая начинается со смещения 15.
Необходимо хотя бы сохранить файлы, сохраненные на изображении. Вы можете легко анализировать FAT образа диска и находить файлы. Файл представляет собой серию дорожек и номеров секторов. Вы можете загрузить их в память. Затем сравните эти файлы. Здесь вам нужно будет использовать алгоритмы, которые найдут части массивов байтов внутри других байт-массивов, потому что любая часть демонстрации может быть музыкой, и это может быть в любой части кода игры. Поскольку данные для современных стандартов очень малы, грубая сила может даже работать.
- В некоторых редких играх используется их собственный макет диска и только что загруженные дорожки и сектора, предположительно для загрузки быстрее или для защиты от копирования. В этих случаях вы теряетесь.
Это было как 20+ лет, но я помню, что музыка обычно состояла из игрока и отмечает. Игроки были обычай, но многие музыканты (например, JCH) использовали в основном те же самые игроки для своих мелодий. Чтобы воспроизвести мелодию, вам нужно сначала запустить плеер, а затем начать воспроизведение. Множество мелодий (игроков и заметок) было загружено начиная с 1000 долларов, и вы могли бы сыграть их на 'jsr $ 1000; jsr $ 1003 (или jsr $ 1006) '. примечания игрока + должны быть общими, но они обычно находятся в одном блоке или памяти (обычно до 4 КБ/1000 долларов США). Удачи. – Pawel
Потому что я только что вспомнил - при воспроизведении музыки ее нужно было приурочить к растровой рамке. Обычно вы либо использовали прерывание на $ d012, либо просто ждали, пока растровый луч достигнет той же строки (опять же используя $ d012), и это когда вы вызываете свой 'jsr $ 1003/jsr $ 1006' - вы можете увидеть его в [этом видео ] (https://www.youtube.com/watch?v=SmICoDUwttc) - мерцающая серая вещь на боковых границах - она показывает, когда музыка начинает играть (с точки зрения растровой линии) и сколько раз растра игрока использует каждый кадр. (Это были отличные времена!) – Pawel
Спасибо! Песня была R.I.S.K. Я ищу, какие демо были использованы. – powernemo