≡ Передовица » Эмуляторы/утилиты » Инфо блок у файлов ВИДЕООЗУ
Инфо блок у файлов ВИДЕООЗУЛюбой агатовский файл с картинкой в формате "видеоозу" имеет в хвосте достаточно много свободного места 252 байт (считай сектор). Ведь файл на диске хранится кратно сектору и вот на последнем секторе занято только 4 байта. Эта область таскается с файлом везде, ведь она его часть. Копировщики Агатовские (и дос33с2 кстати) её исправно копируют, графические редакторы не портят при перезаписи картинки. FIL-контейнеры тоже её носят в полном объеме. Начало хвоста (смещение в файле): у 256х256ц, 512х256, 128x256ц и DHIres - $4004, у 128х128 , 256х256м и HIres - $2004 у Т32, Т64 , 64х64 и DLOres - $0804 у Т40 и LOres - $0404 У gigascreen 256х256ц, 512х256, 128x256ц - $8004 У gigascreen 128х128 , 256х256м - $4004 У PCGH 128x128 - $2304 Бывали случаи что юзер сокращал картинку на 4 байта, экономя при этом сектор. На картинке это мало сказывалось. Но можно поступить и по другому - хранить там что-то полезное. Ведь некоторую инфу не засунуть в имя файла и на экране самой картинки не хотелось оставлять. Типа EXIF для Агата.
Например, какие-то внешние проги, смогут самостоятельно выставить (без такой подсказки это невозможно) правильный режим при просмотре, правильную цветность и палитру, для текстовых еще и правильный ЗГ. Или даже показать табличку с комментариями.
Можно при реставрации старой картинки (диск не прочитался), указать что это не полный оригинал а восстановленный -
потом пригодится. Это только пример из жизни.
* * *РИС 1. $04, $05 (cмещение в секторе) - сигнатура хвоста (VideoRam): т.е. если есть пометка VR, значит этот хвост содержит инфу - хорошо, можно воспользоваться этим. Нету - ну выходит пусто там, старые файлы все такие. * * *$06 - РЕЖИМ В младшей тетраде указана пренадлежность режима: 0 - графические режимы АГАТ. Конкретика в таблице 1. 1 - текстовые режимы АГАТ. Конкретика в таблице 2. 2..9 - резерв A - текстовые и графические режимы Apple][. Конкретика в таблице 3. B,C - резерв D - GigaScreen графика АГАТ. Т.е. в файле две подряд картинки для режима указанного в таблице 1. E,F - резерв В старшей тетраде сообщается режим отображения: Таблица 1. 0 - 1 - 256х256 МГВР 2 - 3 - 4 - 64х64 ЦГНР 5 - 128х128 ЦГСР 6 - 256х256 ЦГВР 7 - 512х256 МГДП 8 - 128х256 16 цветов 9 - 280х192 HGR A - B - C - D - E - F - Таблица 2. 0 - 1 - 2 - Т32 Ц 3 - Т64 М 4 - Т64 Ц (Turbo Agat) 5 - 6 - 7 - 8 - 9 - A - Т32 ЦЦ B - C - Т64 ЦЦ (Turbo Agat) D - E - F - Таблица 3. (для этих режимов не учитываются поля "палитра" и "char_set"). 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 280х192 HiRes A - T40 B - T80 C - 40х48 LoRes D - 80x48 Double LoRes E - 140x192 Double Hires color F - 560x192 Double Hires b/w * * *$07 - ПАЛИТРА: В старшей тетраде сообщается палитра для режимов АГАТ: 0 - палитра 1 Агат-9 (по умолчанию которая), или единственная Агат-7. 1 - палитра 2 Агат-9. 2 - палитра 3 Агат-9. 3 - палитра 4 Агат-9. 4 - 5 - 6 - 7 - 8 - палитра 1 Агат-9 (оттенки серого через "видеосигнал"). 9 - палитра 2 Агат-9 (оттенки серого через "видеосигнал"). A - палитра 3 Агат-9 (оттенки серого через "видеосигнал"). B - палитра 4 Агат-9 (оттенки серого через "видеосигнал"). C - D - E - режим PCGH на основе переключения палитр. Подробности на форуме. F - цвета в таблице для платы палитр, см. ниже. * * *$08...$0F - R, $18...$1F - G, $28...$2F - B Цвета для платы палитр: каждому из 16 Агатовских цветов задается любой из палитры 4096 цветов (12 бит). По 4 бит на компоненту. На РИС 1 задана палитра как у Commodore64. #000000 Black #FFFFFF White #880000 Red #AAFFEE Cyan #CC44CC Violet / purple #00CC55 Green #0000AA Blue #EEEE77 Yellow #DD8855 Orange #664400 Brown #FF7777 Light red #333333 Dark grey / grey 1 #777777 Grey 2 #AAFF66 Light green #0088FF Light blue #BBBBBB Light grey / grey 3 Которая на реальном Агате загружается так: Cx00: 00 0F 08 0A 0C 00 00 0E 0D 06 0F 03 07 0A 00 0B Cx10: 00 0F 00 0F 04 0C 00 0E 08 04 07 03 07 0F 08 0B Cx20: 00 0F 00 0E 0C 05 0A 07 05 00 07 03 07 06 0F 0B Cx38: 00
И еще, как известно, в реальной ЭВМ, все режимы отображения подключают для себя цвета из основного (16 цветного) набора
Монохромные: #0 для фона и #F для пера; ЦГВР: #0 для фона и #1, #2, #4 для пера; HGR: #0 для фона и #1, #2, #4, #5, #7 для пера.Таким образом задавая в соответствующих ячейках цвета, можно изменять палитру этих режимов. * * *$3F - ТИП ЗГ: Тип знакогенератора для текстовых режимов. Указан в старшей тетраде. 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - Агат-7 стандартный (128 знаков). 8 - Агат-7 расширенный (256 знаков). 9 - Агат-9 стандартный. A - B - C - D - E - F - Загружаемый ЗГ, имя в ячейках $30...$3D $30...$3D - CHAR SET NAME: Имя знакогенератора, который использовался при создании изображения. Отведено 14 знаков, остаток добивается кодами $A0. Обычно знакогенератор хранится в АГАТовском файле, и содержит дамп микросхемы знакогенератора в формате Агат-7 либо Агат-9. Имя файла состоит из имени знакогенератора + указатель формата хранения. ZG7:VOLDEMAR - набор символов "VOLDEMAR" в формате знакогенератора Агат-7. ZG9:GARNIZON - набор символов "GARNIZON" в формате знакогенератора Агат-9. * * *$40...$FF - область комментария: любой текст, например дата, автор и т.д. * * ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * |