nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Mar 2024 16:04



Reply to topic  [ 56 posts ]  Go to page Previous  1, 2, 3, 4  Next
580ВМ1 
Author Message
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Mondx wrote:
Ну а что в реале? Проверил как то?

Ну я не такой метеор - просто с работы пришёл и посылку обнаружил ещё…

P.S. Кот проверил лапкой - твёрдое :lol:

_________________
:dj: https://mastodon.social/@Shaos


23 May 2023 01:56
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Проверить можно воткнув в плату для 580ВМ80А - только ноги питания дополнительного подменить ибо питается оно одним +5В (и на одну из ног подать земплю, чтобы включить режим совместимости с ВМ80):
Quote:
Дополнение по процессору ВМ1

Установка процессора ВМ1 очень проста, для это-
го необходимо:
1. Выпаять старый процессор
2. Впаять кроватку (панельку)
3. Отогнуть у ВМ1 3 ножки
4. Вставить ВМ1 в кроватку
5. На одну из отогнутых ног подать 0В
6. Ножку одного из резисторов отпаять
и подать на нее +5В

Что же мы получили? Процессор, который при ра-
боте практически не греется (даже в течении 12 ча-
сов), имеет целый набор дополнительных команд и
регистровую пару H1 и L1.

P.S. По видимому тут речь идёт вот об этих трёх ногах:

Attachment:
580VM1.gif
580VM1.gif [ 28.03 KiB | Viewed 5586 times ]

Нога 11 (C0) будучи подключенной к земле включает режим совместимости с ВМ80, а если на неё подать +5В, то должен включится расширенный ВМ1.
Нога 15 (IO/M) выдаёт 0 при обращении к памяти и 1 при обращении к адресному пространству ввода-вывода.
Нога 28 (EXM) это 16й бит адреса (в режиме совместимости переводится в третье состояние).
И ещё похоже нога 16 (INTA) превращается во вход подтверждения прерывания - видимо как раз его надо через резистор подключать к +5В.

P.P.S. Оказывается в режиме совместимости с ВМ80 остаются работать все новые команды ВМ1 (ну кроме команд обращения в расширенное адресное пространство т.к. бит EXM не выдаётся)

_________________
:dj: https://mastodon.social/@Shaos


24 May 2023 02:38
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Post Re:
Shaos wrote:
и ещё: http://sensi.org/scalar/ware/582/
Quote:
В архиве находится описание системы команд процессора КР580ВМ1 и краткая инструкция по его установке в Вектор от Masterpiece. На векторе есть по крайней мере одна программа, использующая возможности КР580ВМ1 — intro к игре Колобиха от SES. Дополнительная информация по программному определению типа процессора приведена в Scaner №5.
Процессор КР580ВМ1 поддерживается в Эмулятор «Virtual Vector» начиная с версии 5.58.

В архиве представлена таблица для ассемблера The Telemark Assembler (TASM) Version 3.2 (автор Thomas N. Anderson), позволяющая компилировать программы для процессора КР580ВМ1 (подготовил Иван Городецкий).

Cм. также:
«Точность эмуляции КР580ВМ1» http://zx.pk.ru/showthread.php?t=11062
«Загадочный проц КР580ВМ1» http://zx.pk.ru/showthread.php?t=310

Автор: Masterpiece
Имя файла: vm1

Файл: 580vm1.zip (806 Кб)

Вот вытащил из этого архива список новых команд 580ВМ1 - они подменяют "дырки" в таблице инструкций ВМ80 плюс код #28 и #38 является префиксами CS и RS, второй из которых заменяет в далее идущей команде H,L,M на H1,L1,M1:
Code:
ADC  H1    8C38
ADC  L1    8D38
ADC  M1    8E38
ADD  H1    8438
ADD  L1    8538
ADD  M1    8638
ANA  H1    A438
ANA  L1    A538
ANA  M1    A638
ANX        10
CMP  H1    BC38
CMP  L1    BD38
CMP  M1    BE38
CS         28 // PREFIX CS
DAD  H1    2938
DCMP B     CB
DCMP D     DD
DCR  H1    2538
DCR  L1    2D38
DCR  M1    3538
DCX  H1    2B38
DSUB B     08
DSUB D     18
INR  H1    2438
INR  L1    2C38
INR  M1    3438
INX  H1    2338
JOF  *     FD
LH1L1D **  2A38
LH1L1X     ED38
LHLX       ED
LXI  H1,** 2138
MB         28 // PREFIX MB
MOV  B,H1  4438
MOV  B,L1  4538
MOV  B,M1  4638
MOV  C,H1  4C38
MOV  C,L1  4D38
MOV  C,M1  4E38
MOV  D,H1  5438
MOV  D,L1  5538
MOV  D,M1  5638
MOV  E,H1  5C38
MOV  E,L1  5D38
MOV  E,M1  5E38
MOV  H1,B  6038
MOV  H1,C  6138
MOV  H1,D  6238
MOV  H1,E  6338
MOV  H1,H1 6438
MOV  H1,L1 6538
MOV  H1,M1 6638
MOV  H1,A  6738
MOV  L1,B  6838
MOV  L1,C  6938
MOV  L1,D  6A38
MOV  L1,E  6B38
MOV  L1,H1 6C38
MOV  L1,L1 6D38
MOV  L1,M1 6E38
MOV  L1,A  6F38
MOV  M1,B  7038
MOV  M1,C  7138
MOV  M1,D  7238
MOV  M1,E  7338
MOV  M1,H1 7438
MOV  M1,L1 7538
MOV  M1,A  7738
MOV  A,H1  7C38
MOV  A,L1  7D38
MOV  A,M1  7E38
MVI  H1,*  2638
MVI  L1,*  2E38
MVI  M1,*  3638
ORA  H1    B438
ORA  L1    B538
ORA  M1    B638
ORX        20
PCH1L1     E938
POP  H1    E138
PUSH H1    E538
RS         38 // PREFIX RS
SBB  H1    9C38
SBB  L1    9D38
SBB  M1    9E38
SH1L1D **  2238
SH1L1X     D938
SHLX       D9
SMF0       0028
SMF1       7F28
SPH1L1     F938
SUB  H1    9438
SUB  L1    9538
SUB  M1    9638
XRA  H1    AC38
XRA  L1    AD38
XRA  M1    AE38
XRX        30
XTH1L1     E338

P.S. Судя по примерам из архива возможно одновременное использование префиксов CS и RS:
Code:
   cs

   dad   h1      ;H1L1=H1L1+H1L1
   rs\ dad b      ;H1L1=H1L1+BC
   rs\ dad d      ;H1L1=H1L1+DE
   rs\ dad sp      ;H1L1=H1L1+SP
   cs\ dad b      ;HL=HL+BC+CY
   cs\ dad d      ;HL=HL+DE+CY
   cs\ dad h1      ;H1L1=H1L1+H1L1+CY
   cs\ dad sp      ;HL=HL+SP+CY
   cs\ rs\ dad b   ;H1L1=H1L1+BC+CY
   cs\ rs\ dad d   ;H1L1=H1L1+DE+CY
   cs\ rs\ dad sp   ;H1L1=H1L1+SP+CY

   dcmp   b
   rs\ dcmp b      ;H1L1-BC
   cs\ dcmp b      ;HL-BC-CY
   cs\ rs\ dcmp b   ;H1L1-BC-CY
   dcmp   d
   rs\ dcmp d      ;H1L1-DE
   cs\ dcmp d      ;HL-DE-CY
   cs\ rs\ dcmp d   ;H1L1-DE-CY

   dcr   h1
   dcr   l1
   dcr   m1

   dcx   h1

   dsub   b      ;HL=HL-BC
   rs\ dsub b      ;H1L1=H1L1-BC
   cs\ rs\ dsub b   ;H1L1=H1L1-DE-CY
   dsub   d      ;HL=HL-DE
   rs\ dsub d      ;H1L1=H1L1-DE
   cs\ rs\ dsub d   ;H1L1=H1L1-DE-CY

Получается префикс CS включает использование флага CY в далее идущей 2-байтовой арифметической операции!

P.P.S. Тут как-то странно - код #28 (префикс CS) ещё приписан опкоду MB, который судя по описанию является префиксом дополнительного адресного пространства - меняет бит MF (D3 во флагах) на противоположный на время выполнения следующей команды), а так MF можно установить командами SMF0 и SMF1. Также судя по описанию префикс CS воздействует только на команды DAD, DSUB и DCMP, т.е. во всех остальных случаях он определяется как префикс MB.

P.P.P.S. Судя по всему автор таблицы доп.инструкций Иван Городецкий неправильно указал M1 в наименованиях некоторых команд т.к. по коду там обращение к [H1L1], а по доке M1 это обращение в "теневую" память, т.е. по тому же самому адресу [HL], что и в случае M, но с инвертированным старшим адресом памяти MF - т.е. использование префикса MB (#28), а не префикса RS (#38)...

_________________
:dj: https://mastodon.social/@Shaos


24 May 2023 03:14
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Вобщем план такой:
- сначала проверяем в режиме совместимости с ВМ80 (нопами);
- потом проверяем в расширенном режиме ВМ1 (тут более сложно).

_________________
:dj: https://mastodon.social/@Shaos


14 Jul 2023 00:08
Profile WWW
Doomed
User avatar

Joined: 23 Nov 2007 15:53
Posts: 441
Location: Saint Petersburg, Russia
Reply with quote
Shaos wrote:
Снизу на двух микрухах написано 1855, а ещё на двух - 1857


Включал уже? Это действительно реальные 580ВМ1?

_________________
"Очень трудно найти чёрную кошку в тёмной комнате... особенно, если её там нет.", "Forever!". :wink:
zx.clan.su - Soviet Union ZX Spectrum Community - форум посвящённый развитию Спека.


14 Jul 2023 14:29
Profile WWW
Doomed

Joined: 10 Aug 2022 07:27
Posts: 351
Reply with quote
А даже если и 580ВМ1 и что? Ладно, какой нибудь табличный Асм ещё можно приспособить, а компилятор? Писать самому? Тогда в чём фишка? Или я что то не понимаю?


15 Jul 2023 06:56
Profile
Doomed
User avatar

Joined: 23 Nov 2007 15:53
Posts: 441
Location: Saint Petersburg, Russia
Reply with quote
Mondx wrote:
А даже если и 580ВМ1 и что? Ладно, какой нибудь табличный Асм ещё можно приспособить, а компилятор? Писать самому? Тогда в чём фишка? Или я что то не понимаю?


Ну, народ апгрейтит машины на ВМ80 как минимум, а там уже и софт какой подтянется. А можно ещё в ПЛИС загнать. Полюбому, чтоб что-то написать под ВМ1, нужен оригинал чтоб проверять совместимость.

_________________
"Очень трудно найти чёрную кошку в тёмной комнате... особенно, если её там нет.", "Forever!". :wink:
zx.clan.su - Soviet Union ZX Spectrum Community - форум посвящённый развитию Спека.


16 Jul 2023 01:30
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Mondx wrote:
А даже если и 580ВМ1 и что? Ладно, какой нибудь табличный Асм ещё можно приспособить, а компилятор? Писать самому? Тогда в чём фишка? Или я что то не понимаю?

Ну я могу адаптировать nedoPC SDK (aka RW1P2) если уж на то пошло, а так конечно же ассемблер (табличку для своего RASM я уже сделал, правда придётся переделать из-за недоразумения с M1)

P.S. А идея заиметь ВМ1 корку для FPGA вполне здравая :)
Можно взять какую-то легковесную реализацию 8080 на верилоге и расширить ;)

_________________
:dj: https://mastodon.social/@Shaos


16 Jul 2023 14:46
Profile WWW
Junior

Joined: 17 Jul 2023 11:16
Posts: 9
Reply with quote
Чем дело закончилось ?)


17 Jul 2023 12:45
Profile
Junior

Joined: 17 Jul 2023 11:16
Posts: 9
Reply with quote
Удалось проверить камень?


18 Jul 2023 06:16
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Уже почти начал проверять :oops:
Пункт 0 ещё должен быть - подключаем питание к нужным ногам через амперметр и смотрим, что ничего не заискрило :roll:
Shaos wrote:
Вобщем план такой:
- сначала проверяем в режиме совместимости с ВМ80 (нопами);
- потом проверяем в расширенном режиме ВМ1 (тут более сложно).

_________________
:dj: https://mastodon.social/@Shaos


18 Jul 2023 22:05
Profile WWW
Junior

Joined: 17 Jul 2023 11:16
Posts: 9
Reply with quote
Я подключал вм1 к реальному компу, вместо вм80, орион-128 и корвет. Так что, если будут вопросы, подскажу...


19 Jul 2023 08:16
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Sancho45 wrote:
Я подключал вм1 к реальному компу, вместо вм80, орион-128 и корвет. Так что, если будут вопросы, подскажу...

Нужна конкретика по вот этому описанию - по ногам я угадал или не очень?
Shaos wrote:
Проверить можно воткнув в плату для 580ВМ80А - только ноги питания дополнительного подменить ибо питается оно одним +5В (и на одну из ног подать земплю, чтобы включить режим совместимости с ВМ80):
Quote:
Дополнение по процессору ВМ1

Установка процессора ВМ1 очень проста, для это-
го необходимо:
1. Выпаять старый процессор
2. Впаять кроватку (панельку)
3. Отогнуть у ВМ1 3 ножки
4. Вставить ВМ1 в кроватку
5. На одну из отогнутых ног подать 0В
6. Ножку одного из резисторов отпаять
и подать на нее +5В

Что же мы получили? Процессор, который при ра-
боте практически не греется (даже в течении 12 ча-
сов), имеет целый набор дополнительных команд и
регистровую пару H1 и L1.

P.S. По видимому тут речь идёт вот об этих трёх ногах:
...
Нога 11 (C0) будучи подключенной к земле включает режим совместимости с ВМ80, а если на неё подать +5В, то должен включится расширенный ВМ1.
Нога 15 (IO/M) выдаёт 0 при обращении к памяти и 1 при обращении к адресному пространству ввода-вывода.
Нога 28 (EXM) это 16й бит адреса (в режиме совместимости переводится в третье состояние).
И ещё похоже нога 16 (INTA) превращается во вход подтверждения прерывания - видимо как раз его надо через резистор подключать к +5В.

_________________
:dj: https://mastodon.social/@Shaos


19 Jul 2023 09:27
Profile WWW
Junior

Joined: 17 Jul 2023 11:16
Posts: 9
Reply with quote
INTA это выход в расширенном режиме. В обычном подключать не надо

надо сначала включить в стандартном режиме, если от 5в с одним тактовым и на 5 МГц заведется, то скорее всего это уже не вм80)))
В расширеном логика управляющих сигналов меняется


19 Jul 2023 09:51
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Ну дык какие конкретно ножки надо подогнуть, какие отогнуть, чтобы можно было воткнуть на место ВМ80?

_________________
:dj: https://mastodon.social/@Shaos


20 Jul 2023 00:59
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 56 posts ]  Go to page Previous  1, 2, 3, 4  Next

Who is online

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