nedoPC.org

Community for electronics hobbyists, established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 06 Oct 2024 22:07



Reply to topic  [ 110 posts ]  Go to page Previous  1 ... 4, 5, 6, 7, 8  Next
«РАДИО-86РК» - 512 Кб / 16 Мб 
Author Message
Maniac

Joined: 10 Dec 2008 08:39
Posts: 206
Location: Стокгольм, Швеция
Reply with quote
imsushka wrote:
надо сделать свой рк!!!
на 7400 :twisted:

С блекджеком и ш..! Ой! Это другое!... :rotate:

Просто, если делать "продвинутый РК-86", то получится что? Правильно - Специалист или Орион.

_________________
С уважением, Сергей.


26 Feb 2024 14:01
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23357
Location: Silicon Valley
Reply with quote
Неправильно - Специалист это несколько иной компьютер у которого на этом форуме есть свой раздел!
В свою очередь Орион - это попытка облагородить Специалист приделав цвета и натянув на него Радио-монитор
И по нему тоже имеется отдельный раздел :roll:

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


26 Feb 2024 23:10
Profile WWW
Devil

Joined: 06 Oct 2006 03:17
Posts: 877
Location: г.Лянтор,Сургутского р-на,ХМАО
Reply with quote
Shaos wrote:
Орион - это попытка облагородить Специалист приделав цвета и натянув на него Радио-монитор

Shaos, как ты чётко сказал!


27 Feb 2024 09:48
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23357
Location: Silicon Valley
Reply with quote
fifan wrote:
Shaos wrote:
Орион - это попытка облагородить Специалист приделав цвета и натянув на него Радио-монитор

Shaos, как ты чётко сказал!

Слежу за трендами :roll:

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


27 Feb 2024 10:01
Profile WWW
Doomed
User avatar

Joined: 14 Oct 2019 18:10
Posts: 345
Location: Tashkent
Reply with quote
Написал небольшую утилиту для отображения дампа в двух режимах:
  • «G,<конечный_адрес>,<начальный_адрес>» - вывод дампа в режиме 64 Кб
  • «G1,<конечный_адрес>,<начальный_адрес>» - вывод дампа в режиме РК
(Внимание! Именно в таком порядке указания адресов!)

Например:
  • «G,817F,8000» - вывод дампа ОЗУ режима 64 Кб
  • «G1,817F,8000» - вывод дампа ППА ВВ55
  • «G,C17F,C000» - вывод дампа ОЗУ режима 64 Кб
  • «G1,C17F,C000» - вывод дампа ВГ75
  • «G,F97F,F800» - вывод дампа ОЗУ режима 64 Кб
  • «G1,F97F,F800» - вывод дампа ПЗУ

В отлиии от РЛК «Орион», где в ПЗУ Монитора имеются подпрограммы F836 и F839 для доступа к произвольным страницам памяти, в Мониторе РАДИО-86РК, естественно, ничего подобного нет…
Приходится вертеться как уж на сковородке, чтобы добраться к ВВ55/ВТ57/ВГ75, которые, как я уже многократно говорил, в режиме 64 Кб пользователю просто не видны.
Вообще-то, если серьёзно браться за тему «РАДИО-64КБ», нужно писать Монитор и предусмотреть в нём доступ к УВВ…

Вот здесь я уже описал, как обойти этот экран («ограничениями» это назвать не могу, так как 65536 байтов ОЗУ моментального доступа - никак ограничениями не назовёшь!)…

P.S.: Работает пока только в рамках экспериментальной эмуляции для личных целей.
P.P.S.: Ввёл некоторые исправления:
  • Исправил скрипт расширения и заблокировал реакцию индикатора ИПВ, что существенно снижало всю производительность в циклах сканирования клавиатуры (оригинальный Ксоникс теперь летает);
  • Исправил код вывода дампа (при указании адреса выше 7FFF портились ячейки верхних 32 Кб при восстановлении точки останова от директивы G);
  • Дополнил код вывода дампа отображением режима «32 / 64» в углу экрана.


Attachments:
File comment: Программа отображения дампа в режимах 32 / 64
DUMP-64K.RKR.zip [300 Bytes]
Downloaded 37 times
File comment: Исходный текст программы вывода дампа в двух режимах
DUMP64.ASM.zip [1.86 KiB]
Downloaded 48 times
File comment: Расширение браузерному эмулятору для поддержки режима 64 Кб
rk16mb.zip [10 KiB]
Downloaded 33 times
28 Feb 2024 07:00
Profile WWW
Doomed
User avatar

Joined: 14 Oct 2019 18:10
Posts: 345
Location: Tashkent
Reply with quote
Вообще-то, идея сделать подобную адресацию появилась не вчера, а ещё раньше даже того описания.
Как минимум, шесть лет занимаюсь в этом направлении.

Вычурные выкрутасы требуются в режиме 64 Кб потому, что:
  • Во-первых, в отличии от Монитора РЛК Орион-128, отсутствуют подпрограммы F836 и F839
  • Во-вторых, указатель стека не может быть выше 7FFF при обращениях к подпрограммам Монитора
То есть, в любом случае, нужно переписывать код ПЗУ Монитора, если хочется этот режим в 64 Кб поддержать.

Как минимум, директивы C/D/F/L/M/S/T должны поддерживать работу с верхними 32 Кб.

А как максимум:
  • Буфер экрана должен быть в адресах F6D0…F6FF
  • Предусмотреть максимальный режим 80x64 - 5120 символов (весь буфер - EC00…FFFF)
  • Рабочие ячейки Монитора должны быть в адресах EB00…EBFF
Реализовать это можно, но на данном этапе - слишком сложно по известным причинам (код Монитора не видит 8000…FFFF как стек и ОЗУ: Все обращения к верхним 32 Кб нужно производить так же, как и работает директива G - JMP 7626).


29 Feb 2024 03:00
Profile WWW
Doomed
User avatar

Joined: 14 Oct 2019 18:10
Posts: 345
Location: Tashkent
Reply with quote
Повторюсь, идее 64 Кб ОЗУ - шесть лет как минимум!
(Учитывая, что форум - не дневник и мысли должны были дозревать ещё какое-то время до публикации…)

Оказывается, мало просто прикрутить все 65536 байтов ОЗУ пользователю.
Важно хорошо понимать, как ими распорядиться!

Допустим, возьмём «Бейсик-Микрон» и попытаемся поправить…
  1. Грузим сам Бейсик-Микрон
  2. В ячейках 0026/0027 исправляем байты с «01 22» на «01 80»
  3. В ячейках 1606/1607/1608 заменяем команду «2A 01 00» на «21 FF FF»
По плану, текст листинга должен начинаться теперь с адреса 8001¹, а верхний предел - FFFF².
Однако, после запуска экран просто сносит!
Продолжаем править:
  1. Ячейки 160D/160E/160F/1610 c байтами «11 CE FF 19» меняем на «21 FF 74 00»
Запускаем…
Вводим «PRINT FRE(1)» и получаем весёлое сообщение: «Мало ОЗУ!» :mrgreen:

Получается, мало заполучить полное адресное пространство.
Нужно ещё понимать все тонкости имеющегося программного обеспечения и разбираться в рабочих ячейках интерпретаторов. :roll:

Я уже не говорю про пакет «Редактор/Ассемблер Микрон» и компиляторы! :esurprised:

Интересно было бы получить хоть какую-то консультацию от специалистов в области устройства интерпретаторов и трансляторов.

Спасибо!

P.S.:
¹- в режиме 64 Кб с адреса 8000 вместо ППА размещается ОЗУ.
²- в режиме 64 Кб по адрес FFFF вместо ПЗУ - только сплошное ОЗУ.


01 Mar 2024 14:00
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23357
Location: Silicon Valley
Reply with quote
А я пошёл другим путём:
  • прикручиваем много памяти со страничным доступом (на сегодняшний день это 128К с четырьмя страницами по 32К)
  • пишем свой компилирующий бейсик, который сможет этими страницами пользоваться :lol:

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


01 Mar 2024 22:05
Profile WWW
Doomed
User avatar

Joined: 14 Oct 2019 18:10
Posts: 345
Location: Tashkent
Reply with quote
Shaos wrote:
А я пошёл другим путём:
  • прикручиваем много памяти со страничным доступом (на сегодняшний день это 128К с четырьмя страницами по 32К)
  • пишем свой компилирующий бейсик, который сможет этими страницами пользоваться :lol:
Из набросков памяти темы можно видеть, что переключения целых регионов по 32 Кб тоже страницами предусматривалось в четырёх режимах доступа (инструкции, стек, запись и чтение).
Только это получается уже не РАДИО-86РК, а что-то иное новое, требующее разработки узла управления страницами и с поддержкой MOV-префиксов.


02 Mar 2024 03:23
Profile WWW
Senior

Joined: 01 Jan 2022 04:34
Posts: 198
Location: USSR, Tashkent
Reply with quote
Alikberov wrote:
Shaos wrote:
А я пошёл другим путём:
  • прикручиваем много памяти со страничным доступом (на сегодняшний день это 128К с четырьмя страницами по 32К)
  • пишем свой компилирующий бейсик, который сможет этими страницами пользоваться :lol:
Из набросков памяти темы можно видеть, что переключения целых регионов по 32 Кб тоже страницами предусматривалось в четырёх режимах доступа (инструкции, стек, запись и чтение).
Только это получается уже не РАДИО-86РК, а что-то иное новое, требующее разработки узла управления страницами и с поддержкой MOV-префиксов.


это как рк с цветом. или как рк с другим адресным дешифратором.
рк - это то что напечатали в журнале радио в 86 году


02 Mar 2024 10:21
Profile
Doomed
User avatar

Joined: 14 Oct 2019 18:10
Posts: 345
Location: Tashkent
Reply with quote
Кое-как начал делать наброски Монитора с поддержкой памяти в 64 Кб.
Можно заметить, значительно расширился набор пользовательских подпрограмм:
  • F836 - Чтение байта из памяти в режиме БСВВ (аналогично как в Орионе)
  • F839 - Запись байта в память в режиме БСВВ (аналогично как в Орионе)
  • F83C - резерв (в Орионе - устанавливает позицию курсора)
  • F83F - резерв (в Орионе - выдаёт звуковой сигнал)
  • F842 - резерв (в Орионе - хранит версию Монитора)
  • F845 - Установка точки входа в обработчик ловушки (ошибка ввода/вывода, Escape-код и т.д.)
Идей по опредению назначения трёх резервных точек пока нет. Надо подумать.


Attachments:
File comment: Как выглядит дамп первой части Монитора для 64 Кб режима РК
Дамп_Монитора-64.png
Дамп_Монитора-64.png [ 107.74 KiB | Viewed 1012 times ]
02 Mar 2024 13:00
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23357
Location: Silicon Valley
Reply with quote
А сразу можно озвучить подробности того, как будет "аналогично как в Орионе"?
Чтобы два раза не вставать, как говориться :oops:

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


02 Mar 2024 13:11
Profile WWW
Doomed
User avatar

Joined: 14 Oct 2019 18:10
Posts: 345
Location: Tashkent
Reply with quote
Shaos wrote:
А сразу можно озвучить подробности того, как будет "аналогично как в Орионе"?
Чтобы два раза не вставать, как говориться :oops:
Пока не знаю. Если в Орионе описываются:
  • F836 - Чтение ячейки по HL из страницы с индексом в A регистра C
  • F839 - Запись в ячейку по HL страницы с индексом в A регистра C
То у меня на данном этапе всё кипит лишь вокруг 64 Кб ОЗУ.
Так как с позиции приложения область 8000-FFFF видится как ОЗУ, чтобы перепрограммировать ВИ53/ВТ57/ВГ75, нужно уже вызывать подпрограммы (оболочка ROM-Диска уже тоже не работает и к ППА D14 требуется обращаться только через F836/F839), что вызывает некоторые неудобства.

P.S.: Потому здесь понятие аналогичности довольно размытое, так как на практике я всё это прощупываю на началах первопроходца, пытаясь хоть как-то сориентироваться.


02 Mar 2024 13:30
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23357
Location: Silicon Valley
Reply with quote
Мне для доступа к памяти теневых страниц надо будет сделать аналогично

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


02 Mar 2024 13:50
Profile WWW
Doomed
User avatar

Joined: 14 Oct 2019 18:10
Posts: 345
Location: Tashkent
Reply with quote
Shaos wrote:
Мне для доступа к памяти теневых страниц надо будет сделать аналогично
У меня чуть проще. Там просто команды «MOV A,M» и «MOV M,A» поставить надо... Т.е. прямо сейчас дамп можно и так сделать:
Code:
     .0 .1 .2 .3 .4 .5 .6 .7 .8 .9 .A .B .C .D .E .F
F830 2A 31 76 C3 56 FF 7E C9 ?? 77 C9 ?? C3 ?? ?? C3
Тогда, после переделки, определённые программы заработают как прежде. :roll:


02 Mar 2024 13:58
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 110 posts ]  Go to page Previous  1 ... 4, 5, 6, 7, 8  Next

Who is online

Users browsing this forum: emax and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.