≡ Передовица » Макулатура » ИиО » 15-цветовой АГАТ
15-цветовой АГАТ (N2/1987)М. Мымрин, А. Иглицкий. Группа сайта просит вас связаться с нами! (ЗАЧЕМ ЭТО?) Пользователям «Агата» известна ошибка, связанная с графическими режимами GR и MGR. Хотя в операторе COLOR можно указывать номер от 0 до 15, на экране появляется лишь 8 различных цветов - цвета 8-15 совпадают с 0-7. Это объясняется тем, что старший бит тетрады, задающей цвет точки, просто игнорируется, и сделано это самым «рациональным» образом: в кабеле, соединяющем «Агат» с дисплеем, 7 проводов, а в кабеле внутри дисплея, соединяющем гнездо RGB с платой сопряжения, лишь 6. Незначительная переделка платы сопряжения позволяет увеличить количество воспроизводимых дисплеем цветов. Микросхема К155ЛА7, 4 диода Д9 и 4 резистора по 3 кОм присоединяются к микросхемам D2 и D3 так, как показано на рисунке. Пятый вывод микросхемы К155ЛА7 соединяется с незанятым (7-м) контактом разъема RGB. Нумерация выводов с правых сторон микросхем идет не сверху вниз, как показано на рисунке, а снизу вверх. Таким образом, у микросхем D2 и К155ЛА7 соединены не 8-е выводы, а 14-е; микросхема D3 соединена с сопротивлениями 6-м, 8-м, 10-м и 12-м выводами. После этого картина, наблюдаемая на экране дисплея, меняется следующим образом. Цвета 9-15 становятся темными оттенками цветов 1-7 (т. е. 9 - темно-красный, 10 - темно-зеленый и т. д.). На черный цвет эта переделка не влияет - 8-й цвет совпадает с 0-м (черным). Таким образом, общее количество различных цветов равно 15. Эти же цвета могут быть получены и при символьном выводе, но не с помощью оператора RIBBON; а оператора POKE 50, n при соответствующем выборе n позволяет получить символьный вывод в нормальном, инверсном или мерцающем виде любым из новых цветов. У переделки есть и побочный эффект - текстовый режим 32х64 и графический 256х256 из черно-белых становятся «черно-серыми», но этот недостаток несуществен. Упомянутые возможности наглядно демонстрирует программа на языке Бейсик-Агат. 10 GR=14 20 FOR C=0 TO 15 30 COLOR=C 40 PLOT 4*C, 0 TO 4*C, 63 50 PLOT 4*C+1,0 TO 4*C+1,63 60 PLOT 0,4*C TO 63, 4*C 70 PLOT 0,4*C+J TO 63,4*C+1 80 NEXT 90 GET A$ 100 TEXT=15 110 HOME 120 FOR I=0 TO 7 130 FOR J=0 TO 7 140 K=S*I+J 150 POKE 50,K 160 VTAB 4*I+1 170 VTAB 4*J+1 180 PRINT K 190 NEXT 200 NEXT * * ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * |