Хочется спросить у топикстартера: зачем ему, вообще нужен на Пентагон 128К данный порт?
----
Из всех программ, с которыми я сталкивался, в нем "нуждались" от силы две-три, и то я нашел "алтернативный" вариант - без обращения к нему.
Когда есть, но не знаешь где - это все равно, что нету.
нет, "порт" #FF работает на всех синклеровских Спектрумах, и на амстрадовском +2 (сером). Не работает токо на амстрадовских +2a,b и +3
---------- Post added at 23:03 ---------- Previous post was at 22:50 ----------
компы, где "порт" #FF работает, сделаны на базе одной и той же синклеровской ULA, а те, где не работает - на амстрадовских чипах
Последний раз редактировалось Black_Cat; 21.03.2012 в 23:06.
Пентагон-128(512).
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Наткнулся я тут на страничку, на которой описывается как присобачить порт #FF к амстрадовским спектрумам и решил модернизировать свой +2B. В этой статье сказано, что можно неким образом сэмулировать этот порт, если просто соединить два вывода резистором: "For the second solution, connect a 470 ohm / 0.125 W or 0.25 W resistor between pins 17 of the IC6 and pin 17 of the IC4. That’s all ! I guess the second solution is easier to implement, even by a beginner in electronics." И приведено соответствующее фото:
После этого якобы заработают некоторые игрушки, которые ранее не работали. Я не нашел резистор 470 ом, но нашел 330 ом + 140 ом. Если оба резистора припаять к выводу одной микросхемы, то там перекос будет, ибо один резистор 250 мв, толстоват, а в том месте как раз дырка для винтика. Короче один резюк я припаял к одной микросхеме, второй - к другой, и соединил их мгтфом.
Игрушки действительно заработали! Но обнаружился неприятный глюк: комп теперь не всегда нормально сбрасывается кнопкой "reset". В 40% случаев всё окей, но в 60% появляется только надпись внизу, а 128-ое меню не появляется, вместо него постепенно проявляется черный квадрат и всё зависает. (тест экрана по бреаку всегда срабатывает) Глюк полностью рандомен, т.е. иногда проявляется через раз, иногда может 10 раз нормально сброситься, а иногда 10 раз черный квадрат. Тем не менее мне удалось его заснять на видео:
Хочу еще отметить, что у меня есть BDI, и вот если в нём включить подмену ПЗУ (там вродь пентагоновское ПЗУ со скорпионовской 128-ой менюшкой), то глюк исчезает. Т.е. проблемы только при родном ПЗУ. Сначала я грешил на что угодно, всё перепробовал, но потом отпаял один вывод резистора и теперь глюк полностью исчез. В связи с этим вопрос, может можно как-то и рыбку съесть и глюк победить? Может какой-нибудь кондер дополнительно куда-нибудь впаять.. не? IC6 и IC4 это же RAM? Почему тогда пзу начинает глючить?
Куплю корпус и материнку от Spectrum +2/+3
Ну как бы он соединил биты D7 видеопамяти IC4 и бит D7 общей шины данных. Просто видимо IC6 находится неподалеку.
Если представить, что видеопамять живет соей жизнью, то тем самым в момент чтения из порта FF в бите D7 может быть тупо мусор.
Помоему это колхоз какой то, добавляющий нестабильность на шину данных.
И вам не жалко оригиналы таким способом модернизировать. Изверги.
ну он и пишет, что это "второй вариант", а первый, лучший, такой :но схему он так и не привёл Кстати что такое HCT-TTL?To make any +3 compatible with all software that uses the IN #FF port, there are two solutions:
1. (best) decode the IN #FF port and make a real read from the video data bus, by means of three-state buffers - like 74LS125 or 74HCT125 - between the D7 of the video RAM and D7 of the auxiliary (full-speed) RAM
For the first solution, you will need a few HCT-TTL (best) or LS-TTL (good enough) circuits. Maybe one day I will find some time to draw the schematic diagram for this.
Просто охото поиграться на реале в Renegade с 128-ой музыкой, там такая заводная развеселая музычка, идеально коррелирует с происходящим на экране, просто улёт Можно заценить .rzx А без порта FF - никак. А из реалов есть еще Сибстар, но там FF тоже нет, и как его сделать совсем непонятно.И вам не жалко оригиналы таким способом модернизировать. Изверги.
Куплю корпус и материнку от Spectrum +2/+3
По сути этот чувак попытался обхитрить проверку на наличие порта #FF
LOOP IN A,(#FF) ; READ THIS PORT
CP A,#FF ; CHECK IF "BORDER" OR "WINDOW"
JP Z,LOOP ; JUMP BACK IF STILL BORDER
..... ; CONTINUE THE PROGRAM
Тоесть за счет того что бит D7 у него как бы начинает колбасить, то проверку как бы проходит. Но вот при сбросе видимо ПЗУ не очень нравится этот колхоз.
Иными словами, если грубо выразаться, то он попытался посадить бит D7 когда типа процессор обращается к несуществующим портам.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)