Из газеты Online #44, Москва, 08.07.96 (C) OLDMAN В последнее время начали появляться программы, использующие дополнительную память ПЕНТАГОН 512. Это радует... Но вот пользо- ватели других "256", "512" и "1024" чувствуют себя обделенными. А как это было бы круто - ассемблер, позволяющий свободно поль- зоваться "стандартными" 128к, или отладчик, спрятанный куда по- дальше, чтоб его не обнаружили! Я уж и не говорю про коммандеры! Создается впечатление, что разработчики софта под ПЕНТАГОН 512 просто не имеют информации по другим машинам. Попробуем им по- мочь. Вообще-то, все машины сделаны по разному (ценная мысль...), но есть у них и общее: дополнительные страницы памяти подключа- ются через отдельным портом, а сегменты страниц - стандартно, через порт #7FFD, поэтому инсталляция под конкретный компьютер производится изменением двух байт. SCORPION - раскладка битов порта #1FFD D0 - выключает ПЗУ и проецирует на его место 0-й сегмент (*) D1 - неважно... (**) D2 - (**) D3 - (**) D4 - "1" включает дополнительную страницу памяти с #C000 D5 - (**) D6 - (**) D7 - (**) PROFI - раскладка битов порта #DFFD D0 \ D1 - число от 0 до 7 включает соответствующие страницы D2 / памяти (***) D3 - выбор окна проецирования сегментов: "0" - #C000-#FFFF, "1" - #4000-#7FFF (вообще-то, это тоже "(**)", но вдруг по- надобиться...) D4 - выключает ПЗУ и проецирует на его место 0-й сегмент (*) D5 - блокирует работу контроллера из ПЗУ TR-DOS и разрешает ра- боту с портами контроллера из ОЗУ. ("(**)"?) D6 - ** D7 - ** Примечания: * - проецирует, а не подключает, поэтому все изменения содер- жимого 0-го сегмента будут отражаться и по адресам #0000- #3FFF (как, впрочем, и наоборот). ** - вообще-то, конечно важно, но... только для владельцев кон- кретных машин. Эти биты или не используются или управляют внешней периферией и различными примочками типа экрана с высоким разрешением или теневого монитора. Унифицировать все это сложно... Советую просто обнулять их. *** - если в SCORPION'е только одна дополнительная страница па- мяти (во всяком случае, пока), то в PROFI их может быть сколько угодно (до 7). Причем задействованы они могут быть вразнобой, например, PROFI 512 с дополнительными страница- ми 1, 2 и 7... Поэтому, если Вы хотите использовать всю дополнительную память конкретного PROFI, просканируйте все семь возможных страниц и используйте присутствующие. ТАБЛИЦА СЕГМЕНТОВ +----+-----------------------+ | |00 01 02 03 04 05 06 07| +-+--+-----------------------| |С|00|00 01 02 03 04 05 06 07| |Т|01|08 09 0A 0B 0C 0D 0E 0F| |Р|02|10 11 12 13 14 15 16 17| |А|03|18 19 1A 1B 1C 1D 1E 1F| |Н|04|20 21 22 23 24 25 26 27| |И|05|28 29 2A 2B 2C 2D 2E 2F| |Ц|06|30 31 32 33 34 35 36 37| |Ы|07|38 39 3A 3B 3C 3D 3E 3F| +-+--+-----------------------+ Здесь столбцы переключаются портом #7FFD, а линейки - #1FFD для SCORPION'а или #DFFD для PROFI. Естественно, что все сегмен- ты можно использовать, имея только PROFI 1MB (маленькая такая рекламка...). Только не подумайте, что я не знаю о существовании KAY, ATM, ALLEGRO и т.п... О существовании-то я знаю... Дмитрий (OLDMAN) MDM 496-8508;12:00/21:00 E-mail: zxnet#mastak.msk.su dmitry_g#deol.ru ZXNet: 095/100.1