ega-графика на "орионе-128". это уже реальность. смотрите демонстрационный набор графики фирмы "кристалл график" (с.коровкин): 4 мегабайта pcx-файлов. ----------------------------------------------------------------------------- внимание! большинство картинок формата pcx сделано не в cga, а в ega режимах адаптера. пользователи не имеющие доработки до 3-х битового цвета (3 плоскости для цвета), т.е имеющие лишь обычный 4-х цветный режим в "орионе" увидят эти картинки в искаженном виде (без 1 или 2-х плоскостей изображения). программа pcxview позволяет просматривать картинки kak в формате редактора penx (дисковая версия penx$), tak и в формате pcx. для включения 8-ми цветного режима испо- льзуется бит d3 порта f8. программирование палитр (т.е задание каждому из 8-ми логических цветов в соответствие физического цвета, т.е набора компонент/интен- сивностей основных цветов rgb) текущей версией программы pcxview не поддержива- ется. для управления палитрами мы задействуем свободный до сих пор в "орионе" порт в области памяти: fb00 (sta fb00, не out fb). так как этот порт "занимает" 256 ячеек памяти (на запись, по чтению здесь пзу) его можно будет еще "делить" и дальше т.к управление палитрами при 8 цветах использует всего 9 адресов (ре- гистров палитры). при программировании палитр в область 8 регистров палитры,т.е по адресам fb00-fb07 цветная программа использующая палитры, записывает 8 бай- тов, кодирующих цвета. регистры fb00,fb01,fb02,...fb07 "программируют" логичес- кие цвета 0,1,2...7 соответственно. при этом каждому логическому цвету ставится в соответствие физический цвет, т.е теперь одновременно можно "оперировать" на экране 8-ю цветами и выбор этих цветов произволен (т.е можно иметь 3 красных, разных оттенков, но один зеленый, т.е выбрать нужный для конкретной картинки набор цветов). палитры "поддерживают" также старый 4-х цветный режим, т.е сов- местимы с 4-х цветными программами: можно использовать палитры и в 4-х цветном режиме (имея возможность иметь на весь экран 4 произвольных, вместо 4-х "неу- добных" цветов в недоработанном "орионе-128"). регистр fb08 определяет цвет бордюра. кодирование цветов палитры заимствовано от "вектора-06/ц". d0,d1,d2 = r0,r1,r2 - компонента красного (т.е d0 - младший вес и т.д) d3,d4,d5 = g0,g1,g2 - компонента зеленого d6,d7 = b1,b2 - компонента синего (два бита, старшие веса) для облегчения доработки видеоадаптера "ориона" разработана печатная плата - "ega oriona-128". плата устанавливается вместо обычного расширения озу "ориона" и содержит: 1 банку 565ру5 и видео выход на 8 цветов с программируемой палитрой в 256 цветов. разумеется размер озу "ориона-128" при этом составляет 192к. стоимость платы такого видеодаптера составляет 3,5$. при покупке одновременно более 5 плат - цена всего 3$. вот типы примененных имс: 565ру5г,ир22,ап6,кп2, 155ру2, ир9, тм2, лл1. размер платы - как у обычного расширения озу "ориона". анонс! фирма "кристалл график" (булдаков, коровкин) заканчивает разработку гра- фического редактора для 8-ми цветного режима. поддерживается формат pcx (это означает, что поддерживается не только редактирование картинки в 8-ми цветном режиме, но и задание рабочей палитры картинки), а также 8-ми цветной игры, адаптированной от ibm pc: "принц персии". для приобретения этих программ обра- щаться только к в.чистякову - не беспокойте сергея коровкина, у него нет време- ни отвечать на письма пользователей... кроме этого, по достигнутой с фирмой "luksian key" договоренности, через некоторое время будет разработана версия известного граф.редактора "4colors" для 8-ми цветов (разумеется под именем 8colors) для работы в средe cp/m. присылайте нам подписанные конверты (с мар- ками) для получения новых рекламных сообщений о программах для режима 8 цветов. некоторые картинки выполнены в 4-х битовом цвете, но на "орионе-128" мы не пла- нируем поддерживать 4-х битовый цвет. не хватает быстродействия процессора. помните, что лучшее враг хорошего... но если вам не лень, вы можете еще немного доработать видеоадаптер и получить 16 цветов "супертормозной графики" для рабо- ты с неподвижными картинками и их печати на принтер. для получения схемы доработки видеоадаптера обращаться к в.чистякову. фирма "кристалл график" с апреля 1994 г. не занимается тиражированием программ и до- кументации, не занимается перепиской с владельцами "ориона" и не выполняет ни- каких услуг по поддержке своих аппаратных и програмных разработок. тем не ме- нее прошу вас писать письма с моральной поддержкой и предложениями с.коровкину по адресу: 426072 удмуртия г.ижевск ул.40 лет победы д.56 кв.34 с.коровкину чистяков владимир, санкт-петербург, апрель 1994 внимание программистов-любителей! я готов купить у вас для тиражирования ваши программы. к сожалению, т.к у меня нет средств, я могу предложить вам за каж- дую игру лишь 30-50$. разумеется, если вы житель санкт-петербурга оплата бу- дет выше. интересуют только самые лучшие программы, адаптированные от "синк- лера" (рэйтинг 5 звездочек и только с поддержкой ay-8912). авторские игры и системные программы могут быть куплены только за бесценок (3-5$). все прог- раммы покупаются только, если они сделаны вами и еще никем не тиражируются. при этом покупаются все права, т.е вы уже не продаете их для тиражирования никому. присылать только демонстратор (!!!), ни в коем случае не саму игру. защита кода программы от модификации должна быть встроена в саму программу в процессе ее создания (а не приляпана после). если вы еще только начинаете адаптацию, лучше заранее сообщите название игры (чтобы не оказалось, что эта игра уже адаптирована). ниже описан стандарт доработок "орион-128" (альтаир). ----------------------------------------------------------------------------- 1.процессор z80, реальное быстродействие 3,5 мгц (напр: 5 мгц с wait) и выше 2.прерывания "int" 50гц, включаемые битом d6 порта fb (см.ниже), привязка ши- ны данных процессора на "+5в" (как в zx-spectrum. в несуществующих портах ff) 3.клавиатура - любая, но подключенная совместимо с рк-86 (чтение по порту b) мс7007, включена по схеме радио-12.91 (но игры не используют п/п в rom-bios) 4.диспетчер озу включается битом d7 порта fb. позволяет включить любой 16-ти килобайтовый участок озу (из 4-х банок ру5) в окно диспетчера 0-3fff 5.режим "полного озу" включается битом d5 порта fb. n банки выше f000, в ре- жиме "полного озу", в отличие от режима "озу+ву+пзу", определяется портом f9 6.прерывания "nmi" не используются системой. но nmi используются эмулятором 7.програмный звук- триггер в порту ff. звук эмулятора (fe/d4) не использовать 8.муз.сопроцессор 8912 по стандарту "синклера" - область вн.устр-в: bffd/fffd 9.адресация внешних устройств в области памяти (недоступны в режиме full ram memory): f400 - ппа клавиатуры f700/f720 - контроллер дисковода (f720/d3,d6 - плотность записи) f760 - пдп 1810вт37 или i8237, для блиттера и работы кнгмд-hd/кнжмд f780 - внешний эл.диск (1-16 мбайт) f7b0 - часы 512ви1 (орионсофт) fb00 - управление цветовой палитрой (8 регистров палитры и 1 бордюра) в области внешних устройств адресуемые через "bc": bffd - данные 8912, fffd - выбор регистра 8912 адресуемые непосредственно: 1f - кемпстон джойстик (только чтение) 10.системные регистры (в неиспользованных битах выводить нули): f8 - выбор режима видео-адаптера (бит d3=1 включает 8 цветный режим) f9 - выбор банки озу fa - выбор номера экрана fb - управление прерываниями и диспетчером назначение разрядов порта fb ---------------------------- d7 d6 d5 d4 d3 d2 d1 d0 ! ! ! ! ! ! ! ! mz int xmem rzrv bs1 bs0 ss1 ss0 ! ! ! ! ! ! ! ! ! ! ! ! ! ! !______!____ segment select ! ! ! ! !______!__________________ bank select ! ! ! ! ! ! ! !________ резерв для bank select (всегда = 0) ! ! !_______________ full ram memory (при d5=1 0-ffff - озу) ! !______________________ int enable (при d5=0 запрещены) !_____________________________ dispatcher off (при d7=1 отключен !) биты bs1,bs0 определяют номер банки озу, а биты ss1,ss0 определяют какой 16-ти килобайтовый участок из этой банки будет доступен по адресам 0-3fff. данные, записанные в порт, можно считать с порта fb (альтаир,super-3) fc - управление теневым пзу. на платах "супер-3" битом d7 вкл-ся теневое пзу fd - из-за упрощенной схемы дешифрации "занято" муз.сопроцессором 8910/12 fe - в эмуляторе "синклера" звук и клавиатура (програмный звук по биту d4) ff - "програмный ключ" для вывода звука (переключается по каждому обращению) внимание! в связи с большим распространением упрощенной установки z80 в боль- шинстве игр 1992-1993 года не использовался диспетчер озу. все игры, которые будут адаптироваться в будущем будут использовать диспетчер озу по 16к!