Развиваем Балтик

Старый спектрумистский форум

Moderator: Shaos

User avatar
Shaos
Admin
Posts: 24548
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Развиваем Балтик

Post by Shaos »

Shaos wrote: 15 Nov 2025 04:08 Я пока только придумал как SIMM30 на 256 кило подцепить к Балтику с полным доступом ко всем страницам - доступ от Z80 будет управляться 4 битами в порту #7FFD (биты 7,2,1,0), а доступ видеоконтроллера - флагом теневой страницы (бит 3 порта #7FFD):

Code: Select all


 AD1 AD0 |  MA0   MA1   MA2   MA3   MA4   MA5   MA6   MA7   MA8
---------|------------------------------------------------------
  0   0  |  A0    A1    A2    A3    A4    A5    A6    A7    A17*
  0   1  |  A8    A9    A19   A11   A12   A13   A14*  A15*  A16*
  1   0  |  C1    C2    C3    C4    C5    C10   C11   C12   C6 (15625 Hz)
  1   1  | SYS11 SYS12 SYS14 SYS15 SYS16 SYS17 SYS18 SYS19* #7FFD.3

NOTE: when page is set through #7FFD it has to be remapped:

 111 -> 101
 101 -> 001
 001 -> 111
...
Аппаратная перенумерация страниц при доступе со стороны Z80 нужна потому, что видеоконтроллер вместо страницы 5 будет брать 1 (абсолютный адрес #04000), а вместо 7 - 5 (абсолютный адрес #14000) - соответственно если мы устанавливаем страницу 5, то в окошко на самом деле надо подсунуть 1 и т.д. Интересной особенностью такой реализации будет то, что для некоторых балтиковских видеорежимов теневая видеопамять переедет в неожиданные места:

Code: Select all

Standard Baltic ========================
000 - 4000h-5AFFh ZX-screen 6912 in normal location (2nd quarter of memory)
      page 5 & page 7
001 - 4000h-6FFFh Hardware Multicolor 4000h
      page 5 & page 7
010 - 0000h-2FFFh Hardware Multicolor 0000h
      page 0 & page 4
011 - 2000h-3AFFh ZX-screen 6912 at the end of first quarter of memory (for Disk-Monitor)
      page 0 & page 4
Extended Baltic ========================
100 - 6000h-7AFFh ZX-screen 6912 at the end of 2nd quarter of memory (Timex mode 1) <<<<< NEW-2
      page 5 & page 7
101 - E000h-FAFFh ZX-screen 6912 for CP/M <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< NEW
      page 3 & page 1 <<< !!!
110 - 8000h-AFFFh Hardware Multicolor 8000h <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< OLD
      page 2 & page 6
111 - 4000h-57FFh,6000h-77FFh Hardware Multicolor 4000h+6000h (Timex mode 2) <<<<<<<<<<<< NEW-2
      page 5 & page 7
Вот примерно так можно осуществить такую подмену "на лету":

Code: Select all

 111 -> 101
 101 -> 001
 001 -> 111
BalticSE-PageSwap.jpg
P.S. На следующий день приписал слева биты порта #7FFD для пущей понятности - в схеме ещё нужна будет проверка на A14=A15=1 - тогда реальные A14 и A15 будут подменяться новыми, полученными по вышеприведённой схеме (также в случае если любой из сигналов A14 и A15 принимает нулевое значение старшие биты адреса A16 и A17 должны обнуляться)
You do not have the required permissions to view the files attached to this post.
User avatar
Shaos
Admin
Posts: 24548
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Развиваем Балтик

Post by Shaos »

Black_Cat wrote: 15 Nov 2025 15:05
Shaos wrote: 15 Nov 2025 13:19 Ну т.е. ты предлагаешь всё выкинуть и собрать на плате 48-герцовый Пентагон? :lol:
Нет - спасибо, я лучше буду Балтик развивать ;)
Зочем Пентагон? Ленинград - это классика :)
C лениным у меня сложные отношения :roll:

И потом что в результате такого развития получится? Скорпион? :lol:
aviator
Doomed
Posts: 378
Joined: 10 Dec 2008 08:39
Location: Стокгольм, Швеция

Re: Развиваем Балтик

Post by aviator »

Shaos wrote: 15 Nov 2025 19:14 C лениным у меня сложные отношения :roll:
И не удивительно. По своему опыту настройки "Ленинградов 1,2" - у каждой платы своя выдурь. Поэтому их собирать надо только поэтапно, с настройкой каждого узла по-отдельности и в комплексе. А если запаять всё и включить, то 99.9% будет что зря, и понять, что не так, сходу не получится. Особенно доставляла подгонка времянок конденсаторами.
С уважением, Сергей.
User avatar
Black_Cat
Doomed
Posts: 574
Joined: 23 Nov 2007 15:53
Location: Saint Petersburg, Russia

Re: Развиваем Балтик

Post by Black_Cat »

aviator wrote: 16 Nov 2025 01:25
Shaos wrote: 15 Nov 2025 19:14 C лениным у меня сложные отношения :roll:
И не удивительно. По своему опыту настройки "Ленинградов 1,2" - у каждой платы своя выдурь. Поэтому их собирать надо только поэтапно, с настройкой каждого узла по-отдельности и в комплексе. А если запаять всё и включить, то 99.9% будет что зря, и понять, что не так, сходу не получится. Особенно доставляла подгонка времянок конденсаторами.
При исправных деталях и отсутствии залипух Ленин-1 запускается сразу, никаких времянок настраивать не требует, если нет правого пикселя, то тупо ставится RC цепочка на ИР9 без какой-либо настройки. При сборке требуется доработка привязки чёрного. Единственный избыточно усложнённый узел в Ленине-1 это читалка на компараторе и операционнике, в платах Композита заменена на 561ЛН2. При предварительно проверенных деталях и отсутствии ошибок в монтаже процесс настройки занимает не более 10 минут, и состоит сначала в прогоне тестовой ПЗУ, а потом в загрузке тестовой программы. Всё! Дальше токо температурный прогон. Что касается Ленина-2, 3, ... - это бестолковые, ухудшенные версии Ленина-1 - не рекомендую.
"Очень трудно найти чёрную кошку в тёмной комнате... особенно, если её там нет.", "Forever!". :wink:
zx.clan.su - Soviet Union ZX Spectrum Community - форум посвящённый развитию Спека.
aviator
Doomed
Posts: 378
Joined: 10 Dec 2008 08:39
Location: Стокгольм, Швеция

Re: Развиваем Балтик

Post by aviator »

Это если у вас рассыпуха "5-й приёмки", где все задержки стабильные и фронта, как в справочнике. А если собирать на обычной 555й серии, то начинались чудеса. Предварительно проверишь на исправность (так как продавали, скорее всего, отбраковку, ворованную с заводов), а при настройке всё равно вылазит, что то там управляющий сигнал обгоняет данные, то сям "звон" из-за того, что фронты уехали... А уж РУ5-е доставались "качественные" - половина купленного уходила в брак.
С уважением, Сергей.
aviator
Doomed
Posts: 378
Joined: 10 Dec 2008 08:39
Location: Стокгольм, Швеция

Re: Развиваем Балтик

Post by aviator »

P.S. Вот в Ленине-1 читалка с магнитофона была - моё почтение. Самая лучшая, из тех, что видел. (В Орионе-128 магнитофоном не пользовался совсем, сразу собирал с контроллером дисковода)
С уважением, Сергей.
User avatar
Black_Cat
Doomed
Posts: 574
Joined: 23 Nov 2007 15:53
Location: Saint Petersburg, Russia

Re: Развиваем Балтик

Post by Black_Cat »

aviator wrote: 16 Nov 2025 05:09 Это если у вас рассыпуха "5-й приёмки", где все задержки стабильные и фронта, как в справочнике. А если собирать на обычной 555й серии, то начинались чудеса. Предварительно проверишь на исправность (так как продавали, скорее всего, отбраковку, ворованную с заводов), а при настройке всё равно вылазит, что то там управляющий сигнал обгоняет данные, то сям "звон" из-за того, что фронты уехали... А уж РУ5-е доставались "качественные" - половина купленного уходила в брак.
Все микросхемы моей приёмки - делаешь стенд Ленина со всеми панельками, каждую купленную партию микросхем прогоняешь через стенд, с фиксацией под каким номером потом эти микросхемы ставить.
И Ленинград довольно неприхотлив, преимущественно конечно ставились 1533 и 555, но и 155 частично приходилось ставить - кроме увеличения потребления и нагрева, никаких проблем.

Что касаемо бракованых микросхем, то в Питере на рынке микросхемы можно было проверить на каждом углу, и если появлялась бракованная партия, то об этом мгновенно узнавал весь рынок, и сбыть их по нормальным ценам, или вообще сбыть уже было не реально. Бракованную логику просто никто не покупал ни за какие деньги, а бракованные ОЗУ покупались по демпингу, потом отбраковывались в партии с однотипными битыми четвертушками, и ставились в Ленины с выключенной битой четвертушкой.
"Очень трудно найти чёрную кошку в тёмной комнате... особенно, если её там нет.", "Forever!". :wink:
zx.clan.su - Soviet Union ZX Spectrum Community - форум посвящённый развитию Спека.
User avatar
Shaos
Admin
Posts: 24548
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Развиваем Балтик

Post by Shaos »

Shaos wrote: 15 Nov 2025 19:12
Shaos wrote: 15 Nov 2025 04:08 Я пока только придумал как SIMM30 на 256 кило подцепить к Балтику с полным доступом ко всем страницам - доступ от Z80 будет управляться 4 битами в порту #7FFD (биты 7,2,1,0), а доступ видеоконтроллера - флагом теневой страницы (бит 3 порта #7FFD):

Code: Select all


 AD1 AD0 |  MA0   MA1   MA2   MA3   MA4   MA5   MA6   MA7   MA8
---------|------------------------------------------------------
  0   0  |  A0    A1    A2    A3    A4    A5    A6    A7    A17*
  0   1  |  A8    A9    A19   A11   A12   A13   A14*  A15*  A16*
  1   0  |  C1    C2    C3    C4    C5    C10   C11   C12   C6 (15625 Hz)
  1   1  | SYS11 SYS12 SYS14 SYS15 SYS16 SYS17 SYS18 SYS19* #7FFD.3

NOTE: when page is set through #7FFD it has to be remapped:

 111 -> 101
 101 -> 001
 001 -> 111
...
Аппаратная перенумерация страниц при доступе со стороны Z80 нужна потому, что видеоконтроллер вместо страницы 5 будет брать 1 (абсолютный адрес #04000), а вместо 7 - 5 (абсолютный адрес #14000) - соответственно если мы устанавливаем страницу 5, то в окошко на самом деле надо подсунуть 1 и т.д.
Вот примерно так можно осуществить такую подмену "на лету":

Image

P.S. На следующий день приписал слева биты порта #7FFD для пущей понятности - в схеме ещё нужна будет проверка на A14=A15=1 - тогда реальные A14 и A15 будут подменяться новыми, полученными по вышеприведённой схеме (также в случае если любой из сигналов A14 и A15 принимает нулевое значение старшие биты адреса A16 и A17 должны обнуляться)
Посимулировал в логисиме (добавив до кучи вышеописанную логику проверки на A14=A15=1) - вроде всё работает как надо:
BalticSE-Pages.png
You do not have the required permissions to view the files attached to this post.
User avatar
Shaos
Admin
Posts: 24548
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Развиваем Балтик

Post by Shaos »

Вы наверное будете смеяться, но я похоже придумал как минимальными усилиями поддержать видеорежим 384х192 (с 25й строкой это будет 384х200), в том числе и в варианте с 4 цветами на пиксел :o
BalticSE-WideScreen.jpg
Правда это полетит только на 256-килобайтной версии компа т.к. расширенный экран будет браться из теневого видеобуфера, поэтому Baltic SE v2.1 :roll:

И это всё ещё без FPGA и CPLD!

Code: Select all

Baltic SE v2
   NoFPGA
   NoCPLD
   YesPLD
   YesTTL
You do not have the required permissions to view the files attached to this post.
User avatar
Shaos
Admin
Posts: 24548
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Развиваем Балтик

Post by Shaos »

В этом видеорежиме уже можно будет относительно комфортно разводить печатные платы :mrgreen:
BalticSE-WideScreen-CircuitsCC.jpg
Чёрно-красно-зелёно-синей палитры у нас нет, поэтому тут взята более-менее похожая:

Code: Select all

011 | Black   | Cyan    | Magenta | Yellow |
You do not have the required permissions to view the files attached to this post.
User avatar
Black_Cat
Doomed
Posts: 574
Joined: 23 Nov 2007 15:53
Location: Saint Petersburg, Russia

Re: Развиваем Балтик

Post by Black_Cat »

Shaos wrote: 17 Nov 2025 06:28 Вы наверное будете смеяться, но я похоже придумал как минимальными усилиями поддержать видеорежим 384х192 (с 25й строкой это будет 384х200), в том числе и в варианте с 4 цветами на пиксел :o

BalticSE-WideScreen.jpg

Правда это полетит только на 256-килобайтной версии компа т.к. расширенный экран будет браться из теневого видеобуфера, поэтому Baltic SE v2.1 :roll:
Был уже один мальчик недорасширятель 384х304, до сих пор его бред и некомпетентность икаются :) . Шаос решил пойти по его стопам :)
"Очень трудно найти чёрную кошку в тёмной комнате... особенно, если её там нет.", "Forever!". :wink:
zx.clan.su - Soviet Union ZX Spectrum Community - форум посвящённый развитию Спека.
User avatar
Shaos
Admin
Posts: 24548
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Развиваем Балтик

Post by Shaos »

Ну 304 по вертикали мне не надо - максимум 200 т.к. я буду в том числе и на NTSC запускаться. И кстати как на Пентагоне тот мальчик получил 384? Там же тупо пикселов в строке не хватит т.к. пиксельклок 7 МГц. Или он прям под синхру всё урезал? По идее на Балтике с его 8-мегагерцовым пиксельклоком можно даже 400 пикселов воткнуть по горизонтали, что в режиме hi-res превратится во все 800 правда в монохроме :o
User avatar
Black_Cat
Doomed
Posts: 574
Joined: 23 Nov 2007 15:53
Location: Saint Petersburg, Russia

Re: Развиваем Балтик

Post by Black_Cat »

Shaos wrote: 17 Nov 2025 09:47 Ну 304 по вертикали мне не надо - максимум 200 т.к. я буду в том числе и на NTSC запускаться. И кстати как на Пентагоне тот мальчик получил 384? Там же тупо пикселов в строке не хватит т.к. пиксельклок 7 МГц. Или он прям под синхру всё урезал? По идее на Балтике с его 8-мегагерцовым пиксельклоком можно даже 400 пикселов воткнуть по горизонтали, что в режиме hi-res превратится во все 800 правда в монохроме :o
Мальчик открыл бордюр, и на его место накидал кусочков памяти откуда непопадя :)
Last edited by Black_Cat on 17 Nov 2025 11:17, edited 1 time in total.
"Очень трудно найти чёрную кошку в тёмной комнате... особенно, если её там нет.", "Forever!". :wink:
zx.clan.su - Soviet Union ZX Spectrum Community - форум посвящённый развитию Спека.
User avatar
Shaos
Admin
Posts: 24548
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Развиваем Балтик

Post by Shaos »

Ну то что он бордюр открыл это понятно - я про то, что там пикселов в строке мало - наверное края то и не видны были…
User avatar
Black_Cat
Doomed
Posts: 574
Joined: 23 Nov 2007 15:53
Location: Saint Petersburg, Russia

Re: Развиваем Балтик

Post by Black_Cat »

Shaos wrote: 17 Nov 2025 11:16 Ну то что он бордюр открыл это понятно - я про то, что там пикселов в строке мало - наверное края то и не видны были…
Ну вааще-то мальчик сделал 384х320, но больше чем 384х304 телевизор не показывал :) . На аналоговых телевизорах ручками сзади можно было менять параметры изображения в довольно широких пределах.
"Очень трудно найти чёрную кошку в тёмной комнате... особенно, если её там нет.", "Forever!". :wink:
zx.clan.su - Soviet Union ZX Spectrum Community - форум посвящённый развитию Спека.