Максагор, NedoPC group
ПК ATM-turbo 2+ 1024Kb RAM, 1,7Gb HDD, CD-ROM, Turbo FM, GS-512
[ZX rulezzz 4reva!!!]
http://atmturbo.nedopc.com
http://vk.com/atmturbo
http://maksagor.livejournal.com
http://moskprf.ru
[СССР][Коммунизм][КПРФ] ну [ZX], естественно...
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Если невозможно связаться со мной через форум, то можно написать на электронный адрес: zhukov_gennadii@mail.ru
Тестируются #xFF7, #x7F7, #xEE7 и #7FFD + #3Dxx. Все работает. Оформляю программу для общего пользования.
А вообще я иду по всем портам АТМ. В финале будет полный тест всех возможностей.
Кстати, насчет Turbo Windows 3.1. Уже сейчас мне для создания удобного интерфейса не помешала бы мышка. Как бы ее подключить!?
В смысле как? Там же на плате вроде бы разведен контроллер кемпстон-мыши? Как раз можно проверить.
Кстати, если у тебя завалялась древняя мыша под COM-порт (или переходник с PS/2 на COM), то можно подключить мышу к выходу RS-232 и по имеющимся в сети инструкциям написать маленький опросник координат. Заодно и COM-порт протестируется.
Последний раз редактировалось Максагор; 14.09.2018 в 19:41.
Максагор, NedoPC group
ПК ATM-turbo 2+ 1024Kb RAM, 1,7Gb HDD, CD-ROM, Turbo FM, GS-512
[ZX rulezzz 4reva!!!]
http://atmturbo.nedopc.com
http://vk.com/atmturbo
http://maksagor.livejournal.com
http://moskprf.ru
[СССР][Коммунизм][КПРФ] ну [ZX], естественно...
Лучше сделать и жалеть, чем не сделать и жалеть.
Некоторые из моих поделок тут: https://github.com/serge-404
ОК. Добавлю в конце тестовой программы вечный цикл с выводом шестнадцатеричных дампов любых на ваш выбор страниц памяти.
Так устроит?
А по программе, команды следующие:
LD A,N ;номер страницы от 0 до 255
CPL ;инверсия
LD BC,порт ;порт диспетчера памяти (x7F7 или xEE7)
OUT (C)
1 Адреса #0000-#3FFF это #3 вместо "х" (00)
2 Адреса #4000-#7FFF это #7 вместо "х" (01)
3 Адреса #8000-#BFFF это #B вместо "х" (10)
4 Адреса #C000-#FFFF это #F вместо "х" (11)
Так, для включения страницы #4F по адресам #8000-#BFFF пишем:
LD A,#4F
CPL
LD BC,#B7F7
OUT (C)
А чтобы менеджер памяти заработал, перед этим включаем сигналы PEN (порт #77) для 1 Мб и/или PGSN (порт #BF) для 4 Мб
Последний раз редактировалось msd888; 14.09.2018 в 21:02.
Не стоит забывать упомянуть, что работа порта xEE7 зависит (должен зависеть, если схема разведена правильно) от бита D1 порта #BF. Если этот бит=0, то xEE7 ведет себя аналогично порту #xFF7, т.е. работает только с 1Мб ОЗУ, но зато и с ПЗУ тоже. А если бит=1, то ведет себя аналогично #x7F7, адресуя все 4Мб или 256 страниц ОЗУ only.
Что же касается работы с 1Мб ОЗУ через #xFF7, то надо не забывать перед командой CPL, что биты 6-7 там не адресуют страницы, а выбирают ОЗУ/ПЗУ и смешивание сигналов с портом #7FFD соответственно, так что там надо эти биты учитывать отдельно. Но да, для адресации 4Мб такой пример годится.
Как-то так.
Последний раз редактировалось Максагор; 14.09.2018 в 23:56.
Максагор, NedoPC group
ПК ATM-turbo 2+ 1024Kb RAM, 1,7Gb HDD, CD-ROM, Turbo FM, GS-512
[ZX rulezzz 4reva!!!]
http://atmturbo.nedopc.com
http://vk.com/atmturbo
http://maksagor.livejournal.com
http://moskprf.ru
[СССР][Коммунизм][КПРФ] ну [ZX], естественно...
Согласен с коментами, но вот только не FB порт, а BF порт бит 1 (PGSN ).
А вот речи про порт xFF7 я не вел - это пережитки АТМ 2! ))) Пользуемся портом x7F7!
А так, спасибо Максим! Твои задумки уже почти воплотились.
Специально для Norduk'а механическая клава 1/2 дня + 450 рублей:
https://yadi.sk/i/WqPJaQpNioM8JQ
Можно одновременным нажатием клавиш добиться всего! (смотри схему расш. клавы)
Это к тому, что бызвыходных ситуаций не бывает!
Последний раз редактировалось msd888; 15.09.2018 в 11:53.
Получил дисководы разные и дискеты. Ну теперь за дело! Можно отладкой контроллера дисковода заниматься!
Подумать только! Один дисковод из Мурманска. Другие из Нижнего Новгорода. Еще один едет из Оренбургской области. Дискеты
из Мурманска, Москвы, Оренбурга. Какая огромная страна, живет как единый организм! Приятно.
Последний раз редактировалось msd888; 15.09.2018 в 21:04.
Это был вопрос более не по программе теста, а скорее именно про то что ниже - по программированию порта, тест можно не усложнять.
Этот алогоритм на каких клонах/версиях АТМ будет работать? Тех, на которых не будет - их много осталось в употреблении (возможно вопрос к Максагору)?
- - - Добавлено - - -
Т.е. для универсальности про 4Мб лучше забыть и юзать 1Мб? Что интересного есть в ПЗУ чтобы понадобилось его включать (и использовать) из своей программы? П.п вывода на экран, доступа к HDD отдельно выведены и декларированы как точки входа в ПЗУ?
- - - Добавлено - - -
{fаcepalm}
вот поэтому я прошу универсальную процедуру, которая на входе имеет два параметра - номер окна и номер требуемого туда сегмента. А в своих кишках она пуская прячет всю ту кашу что устроили в портах аппаратчики. И эту подпрограмму (универсальную! не завсящую от того с каким объемом памяти клон) занести в ПЗУ рядом с п/п вывода на экран, ввода с клавиатуры и доступа к HDD. И еще золотыми букавми выписать на сайте ATM в разделе "полезно знать" (и сделать это уже 15 лет назад).![]()
Лучше сделать и жалеть, чем не сделать и жалеть.
Некоторые из моих поделок тут: https://github.com/serge-404
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)