nedoPC.org

Community for electronics hobbyists, established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 09 Nov 2024 15:42



Reply to topic  [ 303 posts ]  Go to page Previous  1 ... 17, 18, 19, 20, 21  Next
Электроника МК-85 
Author Message
Junior

Joined: 17 May 2024 09:46
Posts: 6
Reply with quote
ZXFanat wrote:
"Оказией" от Петра, получена библиотека с исправлением расчета квадратного корня. Правда, не знаю, куда ее "пристроить" на форуме или где-нибудь отдельно. Год библиотеки не знаю. Получена недавно.

Ну, если с исправлениями, то скорее всего как раз от 21 года и должна быть.
Надо бы у него остальное по списку запросить, было бы очень неплохо.


22 May 2024 13:37
Profile
Writer

Joined: 21 May 2024 00:01
Posts: 24
Location: Tver
Reply with quote
Вот файл с исправлением расчета квадратного корня. Год не знаю.


Attachments:
arithm.c [31.6 KiB]
Downloaded 82 times
23 May 2024 05:10
Profile
Junior

Joined: 17 May 2024 09:46
Posts: 6
Reply with quote
ZXFanat wrote:
Вот файл с исправлением расчета квадратного корня. Год не знаю.
Спасибо, заменил файл в архиве
http://mk.bs0dd.net/piotr433/stmk85.zip

Судя по всему, это наверное и есть версия от 21 года, отличается там именно что только функция расчета корня.
Скомпилировать и запустить мне не на чем, поэтому собирается ли оно - не в курсе (кто может - проверьте).

На всякий пожарный оставил старую версию архива: http://mk.bs0dd.net/piotr433/stmk85_old.zip


23 May 2024 09:33
Profile
Writer

Joined: 21 May 2024 00:01
Posts: 24
Location: Tver
Reply with quote
Не знаю, удобно ли или нет. Петр прислал еще один файл. Вот его сообщение: "..... Вы писали, что не программист, может так будет проще. Вот скомпилированный бинарный файл, который можно прошить с помощью следующей программы: https://www.st.com/en/development-tools ... eprog.html .....". И, прислал на почту во вложении файл: stmk85.elf. Пытался разместить его здесь, но "загорается" предупреждение, такое расширение запрещено модератором. Может не стоит его размещать? Вдруг там вирусный код?

Добавил файл stmk85.elf по просьбе модератора. В zip-архиве.
Хочется узнать мнение, как этим файлом воспользоваться более грамотно.

В моем понимании, может быть стоит, если изменяется какой-либо архив, давать этим архивам понятные по датам имена. К примеру архиву "stmk85.zip" от "Bs0Dd" дать имя "stmk85_17052024.zip". А архив "stmk85_old.zip" пусть и остается под прежним именем, как "stmk85.zip". Путаницы не будет.


Attachments:
stmk85 elf.zip [30.21 KiB]
Downloaded 73 times


Last edited by ZXFanat on 24 May 2024 06:21, edited 4 times in total.

23 May 2024 10:57
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23398
Location: Silicon Valley
Reply with quote
в ZIP заверни просто и всё

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


23 May 2024 22:17
Profile WWW
Writer

Joined: 21 May 2024 00:01
Posts: 24
Location: Tver
Reply with quote
Ранее разместил файл stmk85.elf в zip-архиве. Кому не трудно, напишите, как этим файлом воспользоваться более грамотно, вообще, как его применять? Напрямую можно прошивать и какой программой? Через тот же STM-Link, или только можно специальным программатором прошивать саму микросхему STM32F103, а по ом уж не спаивать на печатные платы?


26 May 2024 03:34
Profile
Writer

Joined: 21 May 2024 00:01
Posts: 24
Location: Tver
Reply with quote


Интересный проект. Убедительная просьба к автору проекта. Может автор разместить отчетливые снимки: печатной платы с радиоэлементами MK_85_CPU и печатной платы с радиэлементами MK_85_USB? Сделал несколько печатных плат и той, и той платы, хочу попробовать этот проект, как говорится, "живьем".


Attachments:
MK_85_USB_gerber 01.png
MK_85_USB_gerber 01.png [ 11.61 KiB | Viewed 2198 times ]
MK_85_CPU_gerber 01.png
MK_85_CPU_gerber 01.png [ 22.43 KiB | Viewed 2198 times ]
05 Jun 2024 10:42
Profile
Junior

Joined: 17 May 2024 09:46
Posts: 6
Reply with quote
fantaseour wrote:
Мне кажестся, нигде не упомянут эмулятор на javascript, a он есть.

https://github.com/KP1533TM2/js-mk85

насколько полный не могу сказать, но он тоже грузит пзу, т.е. это эмулятор.
Простоватый эмулятор, немножко даже недоделанный я бы сказал.
Главная его проблема была - неправильный инкремент/декремент при адресации с регистром.
Для регистров R6 и R7 (SP и PC) при использовании инкремента/декремента значение регистра всегда меняется не на 1, а на 2, поскольку они хранят адрес, а он всегда четный.
В эмуляторе особенность учли для R7, а про R6 забыли. В итоге происходит ситуация: запускаем эмулятор, просто пытаемся выполнить команду ASCI (с аргументом конечно),
процессор попадается на команду с инкрементом, увеличивает R6 не на 2, а на 1, получается нечетный адрес, возникает прерывание 4 (TRAP_BUS_ERROR)
и процессор встает колом, плюнув в консоль "Caught bus error trap within itself. CPU HALTED.".

Еще были не сделаны некоторые неиспользуемые прошивкой инструкции, а также инструкции режима HALT.

Адресацию починил (спасибо чату Сергея Фролова, сам я в архитектуре PDP-11 весьма темный), реализовал недостающие инструкции (не уверен, что верно, но хотя бы есть основа).
Ну и понеслось.

Вышло вот такое. "Морда" из эмулятора Петра. Панель полностью своя. Вместо кук данные хранятся в "локальном хранилище".
Есть быстрая замена RAM (с сохранением на компьютер) и ROM, создание новой RAM с нужным размером.
Показ количества свободной памяти для программ (поскольку местный индикатор выше 9999 показать нормально не может, а памяти можно до 32кб напихать).
Пауза/рестарт, включение/выключение. Сделал раскладку, чтобы обычной компьютерной клавиатурой охватывать все клавиши микрокомпьютера.
Самое интересное - "адекватный" турбо режим (см. после картинки), такого, похоже, нет даже у Петра. Кальк можно включить в турбо не только кнопкой на панели (или поменять режим на горячую), но и по старинке, зажать плюсик и включить. Панель показывает и режим (турбо/нормал) и наличие включенного делителя частоты в 8 раз.
 Screenshot
Attachment:
Screenshot_20240707_011103.png
Screenshot_20240707_011103.png [ 88.4 KiB | Viewed 1573 times ]


Насчет турбо у эмулятора Петра есть неприятная проблема. Если "разогнать" аппарат (даже на примерную скорость реального турбо), подкрутив в конфиге скорость, то и надписи выводятся очень быстро, и ввод "дребезжит" (за одно нажатие клавиши она может раз 6 продублироваться на экране). Вот только на реальном МК85 (а их у меня два) такого не наблюдается.
Дело в том, что как уже обсуждали здесь касаемо работы турбо, режимы турбо/нормал рулятся через 3 бит в регистре конфигурации, который меняет режим работы 4 последних выводов параллельного порта, которые подключены к тактирующей части. Вот только так выходит, что в эмуляторе Петра (я может конечно и плохо искал) этот бит не учитывается, а при турбо режиме он крайне важен.
Если устройство включается в турбо (прошивка ставит бит), то процессор в турбо режиме не находится все время. При столь "тонких" операциях, как вывод текста на экран и опрос клавиш, прошивка не только включает делитель частоты, но и убирает турбо-бит, тем самым временно отключая турбо. У Петра по сути включается только делитель, но замедления в 8 раз явно недостаточно, если стоит частота турбо, поэтому подпрограммы работают быстрее чем нужно, что нарушает их нормальное поведение. У меня сделано раздельное изменение скорости для нормала и турбо, поэтому, в сущности, можно сильно увеличить турбо, вычисления будут идти быстрее, а дребезга клавиш и слишком быстрого вывода текста не будет, подпрограммы все равно на нормал-частоте выполняются.

Бонусом к эмулятору 85го, в короткие сроки код был переадаптирован для... эмулятора 87го ("морда опять с эмулятора Петра, автор Дмитрий Штатнов).
Устройства родственные, аппаратных различий не так много. Убрал с панели некоторые не нужные 87му функции, добавил кнопки-шорткаты для вызова сброса и секретных функций.
Еще, к крайней упоротости, написал близкий к оригиналу (насколько пока хватило возможности "пощупать" этот оригинал через чужие руки) симулятор встроенного часового модуля "Электроника 51".
По умолчанию устанавливается текущее время, но есть кнопочки, можно переключать режимы отображения, менять дату/время, сбрасывать.
 Screenshot
Attachment:
Screenshot_20240707_014749.png
Screenshot_20240707_014749.png [ 131.01 KiB | Viewed 1573 times ]


Справки и дебаггера у них пока еще нет, просто резервированные кнопки, делать буду позже.

Поиграться с безобразием можно на http://mk.bs0dd.net, либо по кратким ссылкам http://bs0dd.net/js85 и http://bs0dd.net/js87

Исходники - на гитхабе: https://github.com/Bs0Dd/JS85EMU и https://github.com/Bs0Dd/JS87EMU

P.S.: у 87го шизанутая записная книжка, прям очень. Если бы не инструкция, фиг бы понял, как с ней работать. :rotate:


06 Jul 2024 17:01
Profile
Writer

Joined: 21 May 2024 00:01
Posts: 24
Location: Tver
Reply with quote
Shaos wrote:
Поставил себе Lazarus и пересобрал эмуль МК85 из дельфийских исходников, а также внёс кое-какие правки :mrgreen:

А можно сделать эмулятор "Электроника" МК85ММ для Android? Сейчас это актуально.


31 Aug 2024 10:05
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23398
Location: Silicon Valley
Reply with quote
ZXFanat wrote:
Shaos wrote:
Поставил себе Lazarus и пересобрал эмуль МК85 из дельфийских исходников, а также внёс кое-какие правки :mrgreen:

А можно сделать эмулятор "Электроника" МК85ММ для Android? Сейчас это актуально.

Не - с ондроедами я уже 15 лет как не играю :no:

P.S. Надо как-нибудь расширенную прошивку допилить, чтобы показывала объём свободной расширенной памяти, а то сейчас там переполнение получается и оно палочки показыват, если все 32 кило включить...

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


31 Aug 2024 14:08
Profile WWW
Writer

Joined: 21 May 2024 00:01
Posts: 24
Location: Tver
Reply with quote
Shaos wrote:
ZXFanat wrote:
Shaos wrote:
Поставил себе Lazarus и пересобрал эмуль МК85 из дельфийских исходников, а также внёс кое-какие правки :mrgreen:

А можно сделать эмулятор "Электроника" МК85ММ для Android? Сейчас это актуально.

Не - с ондроедами я уже 15 лет как не играю :no:

P.S. Надо как-нибудь расширенную прошивку допилить, чтобы показывала объём свободной расширенной памяти, а то сейчас там переполнение получается и оно палочки показыват, если все 32 кило включить...

А в самой расширенной прошивке что добавлено, в сравнении с "нерасширенной". Может пора размести и ее, если не была размещена. И, попутный вопрос!? А схема подключения 32 "кило" есть? Можно тоже разместить?


Last edited by ZXFanat on 01 Sep 2024 10:06, edited 1 time in total.



31 Aug 2024 22:52
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23398
Location: Silicon Valley
Reply with quote
Схемы подключения 32КБ к реальному МК-85 нет т.к. "МК-85ММ" был сугубо виртуальным проектом, где не только ОЗУ больше, но также есть чуть большее количество элементов отображения на ЖКИ (есть расширенный мною софтверный эмулятор и в перспективе предполагалось создание железного "эмулятора" МК-85MM на основе nedoPC-85-MK, где все дополнительные индикаторы уже добавлены). Реверснутые исходники стандартной прошивки МК-85 и исходники патча к ней (который включает все изменения от Piotr Piatek) лежат у меня на гитлабе:

https://gitlab.com/nedopc/mk85/-/tree/master/firmware

Code:
<><><><><><><><><><><><><><><><><>
Patched ROM for Elektronika MK-85
<><><><><><><><><><><><><><><><><>

This assembler is needed to build:
https://gitlab.com/shaos/pdp11asm85


Version 23a - Nov 2007 (Piotr Piatek)
=====================================

1. additional commands and functions:
POKE
CALL
SAVE
LOAD
SDATA
I2CSTART
I2CSTOP
I2CWBYTE
OFF
PEEK
LDATA
I2CRBYTE

Please see the page http://mk85.republika.pl/rom.html for descriptions.
Feel free to ask should you not understand something.

2. extended operand range for MODE
MODE 7
MODE 8

3. autostart of the first BASIC program containing the command RUN in
the last line

4. support for hexadecimal numbers preceded with "&H", as with the Casio
pocket computers

5. the sequence "&H" is cumbersome to type, so in order to make it
easier it can be typed with "EE", "H"


Version 27b - Nov 2010 (Piotr Piatek)
=====================================

1. PEEK, POKE - 16-bit memory access for the address range
&H0100-&H0104, otherwise 8-bit

2. command BEEP

3. the key [INS] switches between the "insert" and "overwrite" edit
modes (permanently, not only for a single character)

4. the key [DEL] at the end of the line acts as a "backspace"

All these modifications were suggested by the users. I only implemented
them. It was an interesting programming challenge.

None of the bugs listed on the page:
> http://www.pisi.com.pl/piotr433/mk85bue.htm
have been fixed.


Version 28b - Jan 2018 (Piotr Piatek)
=====================================

1. ITOA - converting integer to string
Новая прошивка собирается моей модификацей vinxru-шной тулзы pdp11asm, которая называется pdp11asm85 - она умеет считать и прописывать в образ ПЗУ контрольную сумму по алгоритму МК-85: https://gitlab.com/shaos/pdp11asm85

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


31 Aug 2024 23:10
Profile WWW
Writer

Joined: 21 May 2024 00:01
Posts: 24
Location: Tver
Reply with quote
Rusic wrote:
Attachment:
Schematic-Reload.png

.....:

[.....]

https://github.com/Rusic850/MK85-Reload-

Большая просьба к автору проекта "MK85-Reload-" ("Rusic"), написать назначение сигналов разъема, обозначенного на схеме зеленным цветом, чтобы понимать, можно ли через этот разъем программировать непосредственно STM32 на уже припаянной в микрокомпьютер печатной плате с STM32, и, разместить схему передника от этого разъем к разному, который может (или должен) соединяться с программатором или с каким-либо разъемом периферии персонального компьютера и пояснить, с помощью какой программы можно определять микрокомпьютер (по версии автора) через разъем USB, как внешний носитель, и с возможностью сохранения на "жестком диске" персонального компьютера набранных программ из памяти микрокомпьютера в формате *.bin. В описании на Гитхаб нет такого описания на разъем в микрокомпьютере, нет схемы переходника для этого разьема и нет программы, с помощью которой происходит сопряжение микрокомпьютера с персональным компьютером.


01 Sep 2024 08:47
Profile
Junior

Joined: 28 Mar 2024 10:29
Posts: 8
Reply with quote
Bs0Dd wrote:

Адресацию починил (спасибо чату Сергея Фролова, сам я в архитектуре PDP-11 весьма темный), реализовал недостающие инструкции (не уверен, что верно, но хотя бы есть основа).
Ну и понеслось.


Боже мой, как здорово! Спасибо!


29 Sep 2024 11:27
Profile
Writer

Joined: 21 May 2024 00:01
Posts: 24
Location: Tver
Reply with quote
По состоянию на 30.09.2024 прекращаю какое-либо обсуждение по "модернизации" микрокомпьютера "Электроника МК85" на этом форуме, в связи с неопределенностью исполнения обещаний участниками форума, связанных с размещением на этом форуме отдельных инструкций и схем, и, все обсуждения, любые файлы в развитие "модернизации" этого устройства будут публиковаться на форуме "Speccy - наш выбор!" (zx-pk.ru), в соответствующей теме: "Микрокомпьютер "Электроника МК85(М)".


30 Sep 2024 05:00
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 303 posts ]  Go to page Previous  1 ... 17, 18, 19, 20, 21  Next

Who is online

Users browsing this forum: No registered users 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.