Jump to content

Единый формат эмулятора

Единый формат эмулятора
Расширение имени файла
.uef
Тип интернет-СМИ
приложение/октет-поток
Магическое число UEF File!
Разработано Томас Харт
Первоначальный выпуск до 10 августа 2000 г. [ 1 ]
Последний выпуск
0.10 черновик 28 [ 2 ]
10 января 2006 г.
Тип формата Компьютерная эмуляция
Контейнер для 8-битные компьютерные данные
Веб-сайт http://electrem.emuunlim.com/UEFSpecs.html

Unified Emulator Format ( UEF ) — контейнерный формат для сжатого хранения аудиокассет , ПЗУ , дискет и снимков состояния машины для 8-битного диапазона компьютеров производства Acorn Computers . Томаса Харта Впервые реализованный с помощью эмулятора ElectrEm и связанных с ним инструментов, теперь он поддерживается основными эмуляторами машин Acorn и содержится в двух онлайн-архивах программного обеспечения Acorn, насчитывающих тысячи наименований.

UEF пытается кратко воспроизвести сигналы, передаваемые на носителях, а не просто данные, представленные ими, причем целью является создание точного архива исходных носителей, а не просто возможность воспроизводить файлы, хранящиеся на них. Могут быть включены различные метаданные , такие как рейтинги совместимости, маркеры положения, изображения упаковки и текст инструкций по эксплуатации. [ 3 ]

Машины Acorn реализуют стандарт Канзас-Сити (KCS) для кодирования данных на ленте, и в результате формат файла подходит для создания резервных копий исходных носителей для нескольких машин сторонних производителей. Начиная с версии 0.10 формат файла BASICODE также содержит сигналы .

TZX — это фрагментированный формат с аналогичными возможностями для серии ZX Spectrum . [ 4 ]

До разработки UEF в архивах компьютерного программного обеспечения Acorn во Всемирной паутине было принято соглашение о размещении ZIP- архивов необработанных файлов на ленте, при этом каждый необработанный файл сопровождался дополнительным файлом с расширением. .inf, переносящий адреса загрузки и выполнения из заголовка файла. Соглашение INF, описанное и реализованное Воутером Шолтеном в bbcim (1995), расширяет формат вывода *INFO команда (встроенная в Acorn DFS и ADFS , которая перечисляет длины файлов и другие метаданные, прикрепленные к файлам на диске) [ 5 ] ) для покрытия CRC и порядка файлов на ленте. [ 6 ] Хотя он подходит для хранения пользовательских файлов, он не сохраняет скорость записи , точную информацию о времени или нестандартные потоки данных, используемые в заголовках, защищенных от копирования.

В случае дискового программного обеспечения вместо этого становилось все более удобным отправлять дамп сектора диска, и ко времени появления UEF расширения файлов .ssd и .dsd уже были установлены для односторонних и двусторонних необработанных образов дисков DFS соответственно. Распространяемые в чистом виде или в виде ZIP-архива, они остаются популярными на архивных сайтах.

В сообщении на форуме Stardot в 2010 году Харт подробно объяснил причины создания этого формата: будучи первым, кто обратился к эмуляции Acorn Electron и его основного носителя, ленты, Харт хотел детального и технически оптимального представления мультимедиа, по сравнению с существующими специальными форматами; и упаковать несколько мультимедийных элементов выпуска программного обеспечения в один файл, чтобы загрузка UEF «больше походила на получение оригинального продукта». [ 7 ] Далее он отметил, что именно используемые инструменты и «потребности пользователей» определяют фактическое использование UEF.

Структура

[ редактировать ]

Файл UEF состоит из заголовка идентифицирующего себя фиксированной длины, за которым следует связанный список фрагментов, содержащих интересующие данные. Заголовок содержит волшебную строку UEF File!, завершающий нулевой символ и двухбайтовый номер версии используемой спецификации UEF. Приложению чтения необходимо обращать внимание на номер версии, поскольку единицы измерения в некоторых фрагментах различаются в зависимости от версии спецификации, а один фрагмент был переопределен между версиями.

Каждый чанк состоит из двухбайтового идентификатора , определяющего его значение, длины тела в четыре байта и тела самого . Приложение может легко пропустить тела фрагментов, которые ему не нужно обрабатывать. После последнего фрагмента файл просто заканчивается. В настоящее время фрагменты UEF не вложены.

Весь файл UEF, включая заголовок, при желании можно сжать в формате gzip . Проверив начало файла на наличие заголовка gzip или UEF, можно при необходимости вызвать библиотеку распаковки.

Содержание

[ редактировать ]

Унифицированный формат эмулятора моделирует программное обеспечение на кассете как непрерывную последовательность сегментов, которые могут быть несущими тонами , модулированными асинхронными сигналами обычных блоков данных, циклами безопасности (модулированные синхронные сигналы, называемые «признаками идентификации»). [ 3 ] ) или пробелы , в которых отсутствует распознанный сигнал. Фрагменты ленты UEF объединяются в порядке их появления, чтобы создать представление всей записи. При генерации из реальной исходной ленты каждая форма сигнала на ленте напрямую соответствует фрагменту ленты, так что источник может быть точно восстановлен (с заменой любых некодируемых сигналов промежутками равной длины).

Стандартные потоки Acorn (идентификатор чанка: 0x0100) кодируются так, что их байты снова появляются в теле чанка UEF. Начиная с версии 0.10 прямая поддержка распространяется на все асинхронные форматы (0x0104), включая 8,N,2 формат БАЗИКОДА. В противном случае существует общий фрагмент (0x0102) для размещения любой произвольной последовательности битов. Фрагменты волны безопасности (0x0114) также несут потоки битов, закодированные в другой форме, позволяющей представлять биты половинной длины, наблюдаемые в коммерческих записях.

Существуют некоторые модальные переменные, влияющие на интерпретацию этих фрагментов: скорость передачи данных: 1200 бод для сигналов Acorn или 300 бод для KCS; точная несущая частота, определяющая время воспроизведения восстановленной ленты; и фаза сигнала. Последние два могут меняться в пределах опубликованной записи, и их абсолютные значения зависят от магнитофона, усилителя и звуковой карты, используемых для оцифровки сигнала. [ 8 ]

Файл UEF может содержать маркеры для разделения лент при распределении на несколько лент и сторон каждой ленты; Также могут быть отмечены позиции интересов внутри каждой стороны.

Диски хранятся в виде необработанных дампов секторов каждой поверхности вместе с их геометрией и байтом, идентифицирующим файловую систему . Предыдущие версии спецификации содержали положения для кодирования дисков на уровне байтового потока или уровне магнитного домена . Поскольку дампы секторов SSD и DSD хорошо обслуживают стандартные диски BBC, а зрелый формат FDI поддерживает программное обеспечение, защищенное от копирования, функция образа диска UEF используется мало.

Боковые ПЗУ также хранятся в виде необработанных данных с указанием их назначения и рекомендацией слота ПЗУ. Опять же, пользовательская база предпочитает для архивирования чистые дампы ПЗУ.

Файлы UEF моментальных снимков состояния включают стандартизированные фрагменты для хранения основных частей состояния Acorn Electron или BBC Micro: основной, теневой памяти и памяти шины расширения, ЦП и контроллера флоппи-дисковода WD1770; также Electron ULA и плата оперативной памяти Slogger Master, обычное дополнение Electron. Чанк памяти патчей перезаписывает блок памяти по любому адресу, позволяя формату UEF упаковывать pokes . Для хранения элементов состояния, не входящих в стандартные фрагменты, эмуляторы могут определять свои собственные фрагменты. Для этой или любой другой цели зарезервирована частная область использования идентификаторов чанка, хотя некоторые эмуляторы сохраняют состояние с недопустимыми идентификаторами чанка в общедоступном пространстве.

Мультиплексированные данные — это расширение для эмуляторов, используемое ElectrEm, но без опубликованной спецификации: [ 3 ]

Битовое мультиплексирование снабжает эмулятор дополнительной информацией, позволяющей запускать старые программы для получения более качественного вывода. Эта функция на самом деле предназначена только для эмуляции использования файлов UEF, и игнорирование битового мультиплексирования не повлияет на точность вашего инструмента по отношению к оригинальному оборудованию.

Томас Харт, Спецификации формата файлов UEF 0.10 (проект документа 28)

Одним из важных применений, упомянутых Хартом, является наложение «новой графики на старые игры». [ 9 ] и единственный пример, улучшенный 256-цветный Сорвиголова Деннис , доступен на StairwayToHell.com для запуска в ElectrEm.

Мультиплексированные фрагменты данных предназначены для того, чтобы следовать за обычными фрагментами данных в любом из вышеперечисленных классов, дополняя данные. Их содержимое не предназначено для просмотра компьютером Acorn, будь оно реальным или эмулируемым, но в остальном их значение не указано.

Фрагменты, предоставляющие информацию о содержимом , включают фрагмент источника файла , который идентифицирует приложение, сгенерировавшее файл UEF. Фрагменты сканирования-вставки , предназначенные для предварительного просмотра файла, содержат необработанное растровое изображение обложки, хотя все, что выходит за рамки миниатюры, может занимать больше данных, чем обычная игра. Автор UEF также может предоставить текст буклета с инструкциями или URL-адрес для получения дополнительной информации, краткое название для отображения, минимальные технические характеристики машины и раскладку клавиатуры для прилагаемого программного обеспечения; координаты видимой области а если игра не использует весь экран, можно указать . Меньшая часть файлов UEF, доступных в Интернете, содержат что-либо из этого класса, кроме исходного фрагмента.

Как и предполагал Харт, файл UEF может содержать одновременно несколько классов данных; [ 7 ] невозможно узнать, какие классы он содержит, без сканирования всего файла. В поле выбора файла ElectrEm отображает значок в соответствии с первым найденным фрагментом класса данных.

Приложения

[ редактировать ]

СделатьUEF

[ редактировать ]

MakeUEF — это приложение для Windows, написанное Томасом Хартом и расширенное Фрейзером Россом для преобразования аудиосэмплов в файлы UEF. Предлагаются две оценки. «Любительская» версия читает файлы WAV или живой сигнал, воспроизводимый на звуковой карте, и с точностью расшифровывает только стандартные блоки данных. [ 8 ] «Профессиональный» уровень принимает только файлы CSW, которые представляют собой волны, предварительно обработанные в последовательности прямоугольных импульсов , но он кодирует всю аудиоинформацию, поддерживаемую спецификацией UEF.

MakeUEF утверждает, что был единственным создателем всех файлов UEF, доступных в Интернете до ноября 2004 года, месяца выпуска версии 1.0. [ 8 ] Хотя формат файла был более функциональным и поддерживал «длину промежутков» самое позднее с февраля 2001 года, [ 10 ] MakeUEF сохранял только «программные данные» до версии 1.0. С ноября 2004 года точность MakeUEF улучшилась, спецификация файла была дополнительно усовершенствована, а расширение .hq.uef («высокое качество») было принято, чтобы отразить это. [ 8 ] Архив AcornPreservation.org содержит только версию HQ.UEF, а также исходные файлы CSW. Его дочерний сайт StairwayToHell.com принимает «любительские» переводы UEF и файлы, созданные MakeUEF до версии 1.0. По состоянию на 2008 год на последнем сайте размещено 1494 транскрипции названий кассет BBC Micro и не менее 800 названий Electron.

  • Некоторые эмуляторы машин Acorn изначально поддерживают UEF для чтения и записи данных на ленту (с исходной скоростью или быстрее) и хранения снимков состояния. Примеры включают ElectrEm, BeebEm и B-Em.
  • FreeUEF от Томаса Харта и подключаемый модуль UEFReader Java Sound преобразуют файл UEF в волну, подходящую для записи на пленку или воспроизведения на физическом компьютере.
  • UberCassette — это кроссплатформенные мультиформатные кодеры, генерирующие UEF из образцов кассет Acorn. [ 11 ]
  • Скрипт UEFwalk Perl проверяет и извлекает данные из файлов UEF. [ 12 ]
  • Патч XVUEF расширяет редактор изображений Xv для поддержки малоиспользуемых фрагментов сканирования вложений UEF.

Используйте на настоящих BBC Micros

[ редактировать ]

ГоММК [ 13 ] и аппаратные расширения GoSDC, созданные Джоном Кортинком с 2004 года, обеспечивают возможность виртуального воспроизведения кассет. Сопутствующие компьютерные инструменты импортируют данные кассеты из файлов UEF и сохраняют извлеченный поток кассеты на карте памяти. [ 14 ]

В феврале 2012 года Мартин Барр выпустил версию 5.0 UPURS , набора утилит на основе ПЗУ, помогающего передавать данные на настоящие микрокомпьютеры BBC. В рамках этого выпуска вышел первый выпуск инструмента UPCFS. [ 15 ] что обеспечило заявленный уровень совместимости 86% с существующими распакованными файлами UEF. [ 16 ] позволяя передавать их на настоящий BBC Micro с помощью специального кабеля пользовательского порта, который обеспечивает соединение с ПК с поддержкой RS-232.

  1. ^ «Тема: АНОНС: первый выпуск FreeUEF » . Mdfs.net. 10 августа 2000 г. Проверено 27 июня 2011 г.
  2. ^ «ФОРМАТ ФАЙЛА UEF [унифицированный формат эмулятора]» . Электрем. 1 октября 2006 года . Проверено 13 февраля 2021 г.
  3. ^ Jump up to: а б с Харт, Томас (10 января 2006 г.). «Спецификации формата файла UEF 0.10 (проект документа 28)» . Проверено 5 сентября 2016 г.
  4. ^ «Технические характеристики ТЗХ» . Worldofspectrum.org. 19 декабря 2006 года . Проверено 21 июня 2011 г.
  5. ^ Уорд, Брайан (1982). Микрокомпьютерная система BBC: Руководство пользователя дисковой системы (PDF) . Лондон: Би-би-си. п. 44. ИСБН  0563165723 . Проверено 25 октября 2022 г.
  6. ^ «Программное обеспечение BBC для микрокомпьютеров (микрокомпьютеры BBC Воутера)» . Wouter.bbcmicro.net . Проверено 27 июня 2011 г.
  7. ^ Jump up to: а б Харт, Томас (22 октября 2010 г.). «Re: BeebEm сохраняет состояние UEF» . Форумы Stardot.org.uk . Проверено 12 ноября 2010 г.
  8. ^ Jump up to: а б с д Росс, Фрейзер; Харт, Томас (18 января 2007 г.). «Дистрибутив MakeUEF 2.1» (ZIP-архив, содержащий PDF) . Acornpreservation.org . Проверено 24 февраля 2008 г.
  9. ^ Харт, Томас (1 августа 2003 г.). «Re: Образы дисков BBC двойной плотности» . Архив списков рассылки Micro BBC . Проверено 25 мая 2008 г.
  10. ^ Харт, Томас (17 февраля 2001 г.). «Спецификации формата файла UEF 0.7 (проект документа 10)» . (через Интернет-архив). Архивировано из оригинала 17 февраля 2001 года . Проверено 24 февраля 2008 г.
  11. ^ «Страница разработки UberCassette!» .
  12. ^ "Regregex.bbcmicro.net "
  13. ^ Кук, Грег (октябрь 2010 г.). «8-битный обзор: интерфейс GoMMC» . Перетаскивание . 2 (1). Пол Стюарт: 23–25 . Проверено 11 января 2020 г.
  14. ^ Кортинк, Джон (8 апреля 2012 г.). «Руководство GoSDC – Использование». Руководство GoSDC (Zip-архив, содержащий HTML) . Проверено 10 апреля 2012 г.
  15. ^ Барр, Мартин. "Форум Лестницы в Ад" , Провода? ПАХ. Выпуск UPCFS , 19 февраля 2012 г. Проверено 19 февраля 2012 г.
  16. ^ Ретро-комплект. «Представляем UPCFS» , UPCFS запущен 19 февраля 2012 г. Проверено 19 февраля 2012 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: cbc0b36dbd2e761699d1caa18c2d0935__1724586720
URL1:https://arc.ask3.ru/arc/aa/cb/35/cbc0b36dbd2e761699d1caa18c2d0935.html
Заголовок, (Title) документа по адресу, URL1:
Unified Emulator Format - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)