ПЭВМ «Нафаня» – ремонт, доработка до совместимости с ZX Spectrum 128K. Изготовление платы – ЛУТ


Hello! First of all,
I would like to thank everyone
for reviews and comments on my first video This time we will try to repair
an ancient computer
instead of building it from scratch When you build some device having
all diagrams and documentation, you don’t need
to fully understand how it actually works But sometimes to repair some device,
you will need to have a thorough understanding
of its functionality I would compare hardware debugging process
with a detective investigation The more difficult the case,
the more interesting the investigation will be So today we’ll try to fix unfixable ) I have a very rare Soviet ZX Spectrum 48K clone
in my collection – the “Nafanya” 8-bit computer It’s a bit dusty, but it’s not a problem ) This computer named after
an eponymous animated series character – Nafanya!
– I am for 40 centuries Nafanya! I think it was a witty idea to name
a home computer after a house spirit ) This computer has a rubber keyboard, similar
to those used in modern TV remote controls But the main feature of this computer is that
it is based on a unique ULA integrated circuit Thus, we’re dealing with a closed architecture,
because the main logic of this device
is hidden in one special chip Such architecture has some advantages.
One ULA chip replaces a lot of chips,
so system board will be smaller,
assembly cheaper But it is very hard to repair such device
in case of malfunction
if you don’t have a replacement ULA chip We don’t have replacement ULA chip,
but we will try to fix this Nafanya computer Even if there is an ULA malfunction,
we can still fix this device
by adding some external logic But it depends on how severe malfunction is So, our plan is to fix the Nafanya
and if we will succeed,
will try to extend its memory As I aware there are no known solutions
to upgrade this computer yet Besides that, we will connect
a sound co-processor to Nafanya
for full compatibility with original
ZX Specrum 128K machine This little chemical laboratory
will help us to build an expansion board
for the Nafanya computer But we talk about it later.
Let’s try to fix this computer first Now let’s power on Nafanya and see
what it displays on the screen We have a picture.
It means the system clock generator is running
and the video controller is operational And when we try to reset the system
we see some activity on the screen It means CPU is probably also operational So far it looks promising Nafanya’s system board is pretty compact Every board has its own serial number Our board is number 06296 Several keyboard address bus diodes are absent And we have some memory chips
soldered to system board First we have to desolder those memory chips
then place them on DIP sockets Now let’s run a special test program Normally, this test should clear
color attribute memory area then fill screen memory with 0xff byte
(black screen) And finally, it should fill screen memory
with zeroes (clear screen) In our case,
color attribute memory area wasn’t cleared But parts of the screen were filled
with 0xff and then with zeros I checked CPU address bus
and data bus with oscilloscope Both data buses look fine It means the problem should be
somewhere between ULA and memory If it was an open architecture
we should now check RAM multiplexers In our case we will check memory address bus To avoid cutting nets on a system board,
I’ve soldered an external memory board Then while running computer without ROM,
I was disconnecting for a short time
every memory address line one by one The picture on the screen was unchanged,
until I disconnected A3 address line
(pin 12 of 4164 DRAM) With A3 address line disconnected
Nafanya’s screen looked like this It means the problem is
with this particular address line Now the question is how to fix this problem
if failed address bus multiplexer
resides within an ULA chip? There is one good solution.
We will use tactics
described long ago in ZX-revue magazine We will try to demultiplex
A3 address line using this principal ZX Spectrum’s dynamic RAM address line signal
is pretty complex Here is how it formed RAS (Row Access Strobe) signal
selects high or low address bit A WAIT signal in our example
switches memory access between
CPU and a video controller Now we should find out which
high/low CPU address pair
is multiplexed by ULA to A3 memory address line First, I’ve removed CPU from its socket And then with the help of an oscilloscope
and some external signal consequentially connected
to CPU socket address pins
I traced RAM address bus configuration Here are the results Nafanya has an unusual
dynamic RAM address bus configuration For example A7 address line multiplexer
mixes A15/A14 CPU address pair It means only A0-A6 rows of
the dynamic RAM are refreshed We should take it into account
when developing a memory expansion board Now let’s try to demultiplex
DRAM A3 address line And now let’s run Nafanya
with a special screen test installed Well, this is not what we expected to see Having studied Nafanya’s schematic diagram,
I noticed that a WAIT signal is not used
on this ZX Spectrum clone WAIT signal of Z80 CPU (pin 24)
is always high here So we have to use some other logic
to switch memory access
between CPU and a video controller We can use corresponding logic
from a Pentagon ZX Spectrum clone This clone also doesn’t use a WAIT signal Here is the part from
Pentagon’s schematic diagram
we are interested in It works like this When CPU requests a memory access, in our case requests
a higher part of memory – RAM and RFSH CPU signal is not active yet a toggle flip-flop is activated
which divides CAS signal frequency by 2 3.50 MHz (CAS) / 2=1.75 MHz (TV signal) When this TV signal is high
the CPU should complete all memory operations After that a video controller will have
a private memory access while TV signal is low Let’s build and test this logic Now let’s look what we’ve got Fine, now we can run a memory test RAM read/write test. Test is passed RAM test. Test is passed RAM is ok, operating system also works fine It’s time to restore the keyboard Let’s solder missing keyboard address bus diodes
and then wipe down
the keyboard contacts with alcohol Well, this wasn’t enough.
Some keys still refuse to work Looks like some contacts are heavily oxidized But we have a secret weapon – a simple pencil! We will use a pencil to add a conductive layer
of graphite to the keyboard contacts This method also can be used
to repair TV remote control keyboards We have a RESET key on this keyboard,
but SPACE key is missing We don’t need a RESET key here,
so we will move RESET button to SPACE key place Now we can load
a test program via tape interface Well, we have a very interesting effect When Nafanya runs a ROM program
we see no problems here But when we are running a program
loaded into RAM we see a conflict between
CPU and a video controller We see some heavy artifacts on the screen This is a lot to think about Screen artifacts are not the only problem.
The system overall is unstable With the help of an oscilloscope,
I found out that there is noticeable difference between our new A3 signal level and signal level
of other addresses formed by ULA chip As it turned out,
Nafanya’s ULA forms CMOS level signals,
not a TTL level signals On most ZX Spectrum clones all logic has
TTL level signals, because
the standard Z80 microprocessor is TTL compliant Well, this is a capricious system.
It needs a special care ) I don’t eat this, I am not a goat! Because we have a TTL CPU and a CMOS ULA here,
I’ve rebuilt our demultiplexer New version mixes CMOS signals with CMOS logic
and TTL signals with TTL logic As a result system became more stable,
but screen artifacts didn’t go I wrote a little assembler
program to debug this problem With this program installed
into ROM address space, Nafanya right after start executes a little code
in the RAM screen area, so we see those artifacts We cannot trace this hardware problem
with only an oscilloscope This time we will use a logic analyzer Let’s analyze some system signals
while running our test program Well, things are starting to get clearer First thing we should notice is
that CPU clock and CAS signals are similar,
just like on a Pentagon clone But there is an exception At a certain point,
the processor clock frequency is divided by 2 Obviously, this is needed
to avoid CPU and a video controller conflict But in our case, we have the opposite effect When the processor requests RAM access
our demultiplexer generates 1.75 MHz TV signal But at a point where processor
is slowed down by 2,
RAM request signal also lasts a bit longer As a result, our demultiplexer forms another
unwanted TV signal impulse At this point
we see those artifacts on the screen At a point where processor clock is normal,
this unwanted TV signal impulse is not formed,
so we see no artifacts on the screen Let’s upgrade our demultiplexer With an extra flip-flop element
we will suppress unwanted TV signal impulse Let’s see what is changed Artifacts are gone Now we can load a test program
via tape interface once again And now we can start developing
a memory expansion board for Nafanya machine We will use a free version of Autodesk EAGLE Let’s download and install it,
draw a schematic diagram and create
a simple PCB for our project We will use “Toner Transfer Method”
to create a PCB First we will print top and bottom layers
of our future PCB on glossy paper We will use a laser printer
and inkjet glossy paper This will help us to perform
almost lossless toner transfer Bottom layer will be printed as is
and top layer as a mirror reflection Now we should prepare a blank PCB.
We will clean it with fine sandpaper first,
then with water and finally with alcohol One of the most important steps is to
perfectly align top and bottom layer printouts Layer printouts are placed
print-side to print-side We use daylight here as we place layer printouts
on the window glass Now we can see through the paper,
it makes alignment process easier The more precise alignment will be,
the less problems we will have later Perfectly aligned layer printouts
are held together with a small peace
of double sided scotch tape A blank PCB is placed in between
top and bottom layer printouts Then using a hot iron
we transfer toner to our PCB First we iron one side of PCB,
then the other Then we let the PCB cool down
and cut the excess paper away In order to separate paper from PCB board,
we will use a chemical drain cleaner In our case we dissolve an alkali powder
in 250 ml of hot water Drain cleaners are caustic
and can cause harm to skin,
so we must use rubber gloves Now we place our PCB
into this solution for about 15 minutes As a result paper will become fragile Now we can easily peel it off our PCB
under flowing water Then we should carefully remove small fragments
of paper with a toothpick or needle Small pieces of toner
may come off during this process But we will make corrections
with a PCB marker if needed Now we are ready to start etching Our PCB is pretty small –
it’s a square 10×10 cm So we need approximately 50 grams
of ammonium persulfate per 250 ml of hot water First we will place our PCB
into this solution for some time Then we stir it up
to speed up the etching process We should take PCB out of etchant
as soon as the last bit of unmasked area
is etched away, to prevent over-etching In our case
etching process took about 10 minutes Next we will remove the toner with an acetone Now we have a pretty good quality PCB The next step is drilling the holes It’s time to build our expansion board We should solder a special edge connector
to Nafanya’s system board, so we will be able
to install an expansion board Now we will replace 4164 (64K Dynamic RAM) chips
with 41256 (256K Dynamic RAM) chips It is now possible because of a little trick As we already know, Nafanya refreshes
only A0-A6 rows of the dynamic RAM It is enough for 4164 DRAM chips,
but not enough for 41256 DRAM chips A0-A7 rows of 41256 DRAM chips must be refreshed Here is how we resolved the problem A15/A14 address pair
we moved from A7 to A8 DRAM address line To A7 DRAM address line we connected a new signal This new multiplexed signal reuses
A3 (Z80 address line) together with
AM3 (ULA address line) as a low address bit As a high address bit, A16 address line
from an expansion board used In this case A7 DRAM row will be refreshed
by ULA video controller (AM3 signal) Actually, instead of A3/AM3 we could use here
any low address pair, for example A0/AM0 pair Let’s run and test it! RAM read/write test. Test is passed. Extended memory port test. Test is passed. Extended memory test passed But some programs
refused to run here for unknown reasons To find out what is wrong here,
I decided to compare ULA AM7 signal with
AM7′ signal formed by our expansion board These signals should be identical
in ZX Spectrum 48K mode Well, here’s what we got ULA AM7 signal is a bit delayed
from AM7′ and RAS signals It looks like we have some problems
with a system clock generator A system clock generator
is based on an inverter – SN7404 This integrated circuit
has some special symbols on its package Rhombus indicates that this IC is suitable
for military application It means this is
a high quality electronic component An equilateral up-pointing triangle
is a static-sensitive symbol Also we have a manufacturer logo here –
“Azon”, Azerbaijan, Baku What’s interesting, we can see an extra
pull-up resistor at clock generator output A comment says that this resistor should be added
if needed at the system configuration stage Obviously, ULA expects CMOS level clock signal So I decided to replace TTL inverter (SN7404)
with its CMOS analog (74HC04) Let’s load some game to test our system We are loading a Dizzy 7
(Crystal Kingdom Dizzy) game This is a Russian version of the game,
made by me in 1995 ) Well, our second experiment is also successful You are my general!
The spitting image of your grandma! Now, everyone who has a Nafanya computer,
have a chance to upgrade it I will post links to all schematic diagrams soon Thanks for watching. See you later! ) Well, it’s time to go Wake me up when you need me… “Black eyes” played by beeper! Idea and execution by Constantine Aygi Episodes from “Adventures of the Little Domovoy”,
Ekran Studio (1984-1987) animated film
were used in this video Mysic by: Oleg Nikitin (nq) – “Yujankue” Oleg Nikitin (nq) – “Skyrim: One They Fear” Roman Kusakin (Black Lord) – “Blacky Tune” Alexander Maximov (Cj Echo) – “The lights are burning” Oleg Nikitin (nq) – “Midian” Aleksey Lutsenko (Surgeon) – “DEATH FLY” Ivan Petuhov (Key-Jee) – “DREAMLES” Sergey Kosov (MmcM) – “Stream Of Rain” David Whittaker – “Dizzy 7 Title” David Whittaker – “Dizzy 7 In-Game” Zilogat0r – “Black eyes” (C) 2017 CXEMATEKA.RU

58 thoughts on “ПЭВМ «Нафаня» – ремонт, доработка до совместимости с ZX Spectrum 128K. Изготовление платы – ЛУТ

  1. Спасибо за видео. Вы профессионал. Приятно видеть Вашу работу. Пожалуйста развивайте канал, он нужен думающим людям. От себя позвольте вопрос: Вы слышали про такой клон спектрума ФОБОС в металлическом корпусе. Выпускался на 40 заводе г. Уфы когда то в 90е

  2. Ностальгический звук загрузки игр, как мы перемотку на магнитофоне насиловали что бы начало загрузки на кассете найти.
    А можно видеокарточку так же запилить)))

  3. А есть ли смысл забивать голову устаревшей информацией.. ?

  4. блин! я захожу в ютуб чтобы деградировать!!! а это что за ролик? я же стал немного умнее после просмотра )))))

  5. Раньше весь Инет был таким и для таких, а сейчас селфи, блоги и реклама…
    Мужик, ты луч в конце тоннеля!

  6. один из лучших роликов в русскоязычном ютубе! можно пересматривать несколько раз, как любимый фильм (даже если нихрена не понимаешь в микросхемах, как я)

  7. Лихо Вы микросхемки выпаивание под музыку 😂мой айфон намного проще , вон пальцем по дисплею поводил и вижу ваше видео а вы все паутину плетете из проводков чувствуется китайская школа Хотел спросить сколько ядер в вашем пентиуме и сколько гигов оперативной памяти

  8. Какой смысл дорабатывать допотопный компьютер, если любой смартфон уделает этот тетрис

  9. Ремонтировал, собирал на заказ и отлаживал массу клонов (Москва, Десна, Робик, Пентагон, Ленинград, АТМ-турбо – несть числа им!) исключительно с помощью ТЛ-4М и какой-то матери. О том, чтобы посмотреть осциллограммы, даже не мечтал, ибо в те благословенные времена жил в таком месте, где найти живого мамонта было легче, чем осциллограф.

  10. Круто! Не хватит только контролера bdi…Константин, я хотел вас спросить, вы случайно не знайте как подключить к Спектруму модем?И как работает bbs от Zx net?Удачи!

  11. А поражаюсь всей этой вакханалиии резисторов и транзисторов. И даже завидую немножко.

  12. А как же дисковод?Самый быстрый интерфейс???Так было бы совсем круто:" как из нафани(спектрум 48 кб) сделать Пентагон 128 …" И да я видел ваше видио про пентагон …Мне еще интересно можно ли из нафани пентагон совместимую машину те что бы за одно прерывание процессор успевал совершить несколько тактов?Спасибо за контент!!!ОЧЕНЬ КРУТО!!!

  13. Самоделкин – волшебник! Еще старая советская школа, тогда творцов учили.

  14. Я охерел когда крэдл оф филс на спектруме услышал🙂композиция к стати называется в оригинале по другому что-то там про ктулху а альбом мидиан это верно отличный к стати альбом у них.

  15. Респект вам,вы просто мегамозг.У меня в юности был комп Оризон микро смела,то же клон ZX Spektrum 48,я внего впаял муз прoц AY8910 собранный на отдельной плате,долго рылся в касетах что бы найти игрушку с поддержкой музпроца,в итоге нашёл тетрис от самого Пажитного,радости не было предела когда услышал мелодию в колонках при запуске игры.Потом оказалось что комп глючит после моей доработке,ситуацию спасли буфера АП5 или АП6 уже не помню,впаяные между музпроцем и компом.Потом сомастоятельно собрал и подпаял контролер дисковода,комп стал летать.Эх были же времена.

  16. Удивился,аж икрой подавился. Есть на Руси мастера! Последний раз в Кривбассе на степуху купил клон Спекка 48 и в соседнем институте мне доцент за кровные расширил до 128 с дисководом и AY. Застали мы эту эпоху.Как вся жизнь перед глазами, развитие клонов,апгрейд,развитие телефонов,интернета и знаний. Не обольщаюсь в дифирамбах, в этой области мне было дано видеть совершенство и мастер класс радиоэлектроники.Спасибо Константин,я помолюсь за тебя Господу,последний раз я такое совершенство видел когда Иисус Христос сделал весь загробный мир за 33 года жизни,наказал дьявола и спас людей,то есть нас с вами.Сделал Он это красиво,и теперь не надо нудиться со свечами и сказать Богу молитву можно хоть на толчке,вариант "Прости мои грехи".А таковые у всех у нас есть,так как мы люди.

  17. Снимаю шляпу ! 🙂
    Надеемся, скоро еще будут видео ?

  18. Каждый раз когда я начинаю сильно много про себя воображать я захожу на этот канал и это немедленно возвращает меня на землю.

  19. Знания сгоревшие в ядерном пожаре в постапокалипсисе восстановят такие люди возродя человечество из нового средневековья.

  20. Хмм, почему-то всегда думал что РУ7 не требуют регенерации, во всяком случае, РУ7Г, те что стояли на Скорпионе. На нем, в отличие от Робика картинка не превращалась в кашу при зажатии Reset. Возможно регенерацию пинала дисплейная схема (картинка продолжала отображаться, значит формирование сигнала не останавливалось, впрочем, как и на Робике).
    BTW, что-то я пропустил момент замены ROM на двухбанковый (т.е. большего объема) для 128К и доработку дисплея для работы с седьмого (если не вру) банка.
    По последнему, впрочем, логика подсказывает что мультиплексирование делается по старшим (16+) линиям, не вовлеченным в существующую схему.

  21. А можно ли с дискеты на такой компьютер поставить ОС Windows ну или Linux?

  22. Привет ! Кость какаеже у тебя память ?против твоей головы наверное ни один комп не годиться !

  23. Ну порадовал… Лайк тебе в карму! Так сказать петрушки отсыпаю без меры! 😉

  24. Круто, но кроме слова процессор и память нифига не понял)))

  25. Конечно перклоняю голову – знаний в этой облати у вас ооочень премного, но уже эти навороты вряд ли необходимы, кроме умения логически мыслить….

    Спасибо за поздавательный ликбез!!

  26. Я ничего не понял, что мужик делал и говорил. Но почему то есть стойкое чувство, что 30 минут жизни прожиты не зря. 😂😂

  27. Бляаа! Не уверен, что с таким количеством видосов на канале тебе нужны подписчики, но я таки-подпишусь, ибо теперь ты мой Бог, идол и кумир в одном лице. В этом ролике, как и в предыдущем просмотренном мной про сборку платы спектрума, прекрасно всё.

  28. Залипательное видео
    И автор – крайне позитивный человек, фразой в начале видео "подключили – помехи на экране, видно, что реагирует на кнопку ресет – оооочень хорошо ", напоминает одного персонажа из советского мультфильма "остров сокровищ", сами догадаетесь, какого
    😉

  29. Я НИЧЕГО НЕ ПОНЯЛ, НО ЭТО КРУТОЕ ВИДЕО!!!
    Автор – ГУРУ спектрума!!!
    У меня пылится ZX SPECTRUM Magic – заводской клон из Екатеринбурга, завод "Вектор".

  30. Я болван, я всего лишь "сетевик" и программист, но когда смотрю такие вот ролики вспоминаю свою отца, который мне делал ZX-Spectrum и Profi+, я на него смотрел как на создателя чего – то мега крутого! Спасибо за такие теплые чувства…

Leave a Reply

Your email address will not be published. Required fields are marked *