Error404, да я ляпнул не сильно подумавши...
Может, стоит вообще взять "следующий по списку" порт F767?
А вообще, на какой именно адрес повесить новый "порт конфигурации" безусловно видней именно тебе
Ждем твоего вердикта.
Error404, да я ляпнул не сильно подумавши...
Может, стоит вообще взять "следующий по списку" порт F767?
А вообще, на какой именно адрес повесить новый "порт конфигурации" безусловно видней именно тебе
Ждем твоего вердикта.
ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
Предлагаю использовать порты по OUT в 8-битной адресации (дешифрируем младшую половину ША). Адреса:
- 18H..1BH - клавиатура (BB55) = F400...F403 {совместимо с Орион-Про}
- 28H..2BH - ROM-диск (BB55) = F500...F503 {совместимо с Орион-Про}
- 38H..3BH - порт расш. (BB55) = F600...F603 {это вводим дополнительно}
- 48H..4FH - новые доработки (ВИ1,SD,RS232,PS2) = F760...F767 {это вводим дополнительно}
Тут имею вопрос - не попадаем ли этими адресами на какие-то порты Спектрума (не получится ли обращение к ним из ZX-игрушек)?
Последний раз редактировалось Error404; 18.06.2010 в 00:03.
Лучше сделать и жалеть, чем не сделать и жалеть.
Некоторые из моих поделок тут: https://github.com/serge-404
Пускай будет так![]()
ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
Про конфигурационный порт забыл (который вместо 0FDh).
Дополнительные конфигурационные порты можно разместить в диапазоне 03Ch..03Fh (для симметрии). Пускай будет 03Dh, что-ли...
А этот порт получается не будет сбрасываться по кнопке при /RESET (сброс только по питанию)? Иначе какой смысл, получится дубль бита "fullram" в порту 0FBh. Или как?
Лучше сделать и жалеть, чем не сделать и жалеть.
Некоторые из моих поделок тут: https://github.com/serge-404
ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
Я сомневаюсь. Дело в том, что я нашел (в своих архивах) оригинальный исходник М3, который мне прислали (Ивинских В.Р.) ленинградци для стандартизации с Монитором для ПРО. Там этого безобразия нет. Думаю, когда автор перестал контролировать свой Монитор, вот и стали появляться всякие версии "а-ля М3".
Нет. Мы порождаем уже полную не совместимость со стандартным Монитором-2 для Ориона-128. Дополнять можно, а порождать несовместимость нельзя. Поэтому эту точку входа можно разместить по адресу F846, и все остальное далее, если потребуется. Или заменить п/п чтения/записи на МЛ.
Кроме того. Я не анализировал твои п/п клавиатуры, поэтому вопрос. Они, что оставлены в неизменном виде? А зачем мы тогда делали порт PS/2? Аппаратная эмуляция порта F400 необходима только для тех программ, которые лезли напрямую в порт. Ну и пусть себе лезут. А для корректных программ можно п/п ввода с клавиатуры сделать значительно проще, обращаясь напрямую к PS/2. Это с экономит место.
И еще. Я нашел исходники своего М4, который должен был стандартизировать О-128 с О-ПРО и М3. Будет время - посижу по соображаю.
И совсем последнее. Чем можно просматривать тексты Ориона па ПС?
Ладно, убедил! Пусть будет на всякий случай!
.
Я тоже считаю разумным, сделать совместимо с Орион-ПРО.
Если ты чего-то не знаешь, то это не значит, что этого не может быть.
Думаю, вопросам контроля уделяется излишне много внимания. "Автор контролирует", "Автор не контролирует" - это в те времена мало кого интересовало, а уж сейчас (когда все будет Open Source) и подавно.
Сейчас посмотрел, установка RаmTop действительно была в первом М3 от Ивинских (M31 который был для 8080). И ее не было в версиях M3 модификаций для Z80, т.е. во всех последующих (M32, М33, M34, М35, которых было не менее десятка версий разных лет выпуска начиная с 1991г. - комбинаторно для разных клавиатур и с разными загрузчиками ОС). Я пользовался (и пользуюсь) версиями для Z80, не замечал никаких артефактов от упрощения Get/Set RаmTop.
Кому хуже от того, что я воткнул по адресу F834 команду "JR <п\п>", если подпрограммы F830, F833, F836 по-прежнему как были доступны для внешнего кода, так и есть? В Мониторах M32 и выше эти 2 байта (F834/F835) были просто не использованы (0FFFFh).
Клавиатуру я не трогал. Многое не трогал по принципу "работает - ну и хорошо, пропускаем". И не планирую переделывать, т.к. с точки зрения написания прикладного ПО (а этим я и пытаюсь начать заниматься, но все пока руки не доходят) внутренности драйвера клавиатуры совершенно безразличны. Более того, чем меньше придется переделывать "в никому не видных местах Ориона", тем я считаю - лучше, т.к. это даст использовать бесценный программистский ресурс на "полезный выхлоп".
Я использую встроенный просмотрщик\редактор в Far Manager (он позволяет подключать любые таблицы кодировок, в т.ч. и КОИ-8R) и преключаться между кодировками в любое время при просмотре/редактировании.
Лучше сделать и жалеть, чем не сделать и жалеть.
Некоторые из моих поделок тут: https://github.com/serge-404
Собрал еще одну версию Орион-2010
На базе платки, на которой я со спектрумом ковырялся. Заработало - и хорошо, можно снова по делу употребить
512кб, один чип памяти, 5/10Мгц, выход на ТВ, "чистые" системные шины с процессора, ПЛИС на 144 ноги. Допаиваю детальки для RS-232...
ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
Может быть стОит перевести дешифрацию РОМ-диска на I/O only? В мониторе поменять адреса... И освободить область F5xx вообще.
ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
Если исчезнет доступ по F5xx - появится еще одна несовместимость. Кроме того, адреса придется менять и в самой ОРДОС (еще и в других разных загрузчиках). Значит версии других авторов работать не будут. Мы, вроде бы, нашли решение - сделать выключение портов положенных на память и оставлять только порты по In/Out. Порты In/Out должны не выключать и быть доступными постоянно. Тогда, при желании, можно отключить порты на память, и если ОРДОС переделана под порты In/Out, то она все равно будет работать. Так сделать можно, а просто ликвидировать F5xx, как "класс", - недопустимо.
Если ты чего-то не знаешь, то это не значит, что этого не может быть.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)