nedoPC.org

Community of electronics hobbyists established in 2002

...
Atom Feed | View unanswered posts | View active topics It is currently 19 Oct 2018 02:31



Reply to topic  [ 29 posts ]  Go to page Previous  1, 2
"Специалист" на 6502 
Author Message
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 17014
Location: Colorado
Reply with quote
Post 
Lavr wrote:
Послать-то ты можешь, но весь вопрос - как оно дойдет.
Я хоть и ближе живу, но я так понимаю, что jdigreze так Новогоднего слона и не получил?


То был обычный конверт без таможенной декларации - я больше так засылать небуду :(

_________________
:eugeek: https://twitter.com/Shaos1973


21 Feb 2015 19:07
Profile WWW
Fanat

Joined: 10 Dec 2008 09:39
Posts: 90
Location: Белгород, Россия
Reply with quote
Post 
Сейчас обострение. В Россию ни письма, ни бандероли с "запада" не доходят. Главное "туда - прекрасно и быстро, а "обратно" - застревают где-то в "европах", включая терминалы международных курьеров в Москве. До почты России просто не доходят.

P.S. Что самое странное, из интернет-магазинов доходит прекрасно. А вот от физлица к физлицу - нет.

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


23 Feb 2015 06:25
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Post 
Lavr wrote:
уже купил 6 штук - уже в России они, ~300 p. доставка.
... вроде как чипы от Rockwell...

Да, они уже не только в России, а уже у меня дома. Утром мне их на работу завезли.
А приехали они сюда еще где-то в пятницу, но поскольку выходные совпали с 23-м
февраля, а он у нас выходной, человек решил меня не беспокоить на праздники.

Микропроцессоры, действительно, от Rockwell: R65C02P2
------------Image
Фото не моё, но мои - точно такие-же.

Упакованы очень хорошо, в кассетницы из проводящей пластмассы, завернуты в полиэтилен,
обмотаны скотчем, и завернуты в пузырчатую пленку.
Собственно, я их еще и и не распаковал, а развернул пленку и точно посмотрел маркировку,
чтобы скачать даташит.

С учетом, что заказ мы сделали 28-го января, то доехали они с Алибабы примерно за 20...22
дня в совокупности.
Если говорят правду, что у нас все отправления идут через Москву, то в Москву, видимо,
доставка быстрее, хотя географически я к Китаю чуть поближе живу... :wink:

_________________
iLavr


24 Feb 2015 09:51
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Post 
Lavr wrote:
Микропроцессоры, действительно, от Rockwell: R65C02P2

Посмотрел я что это за R65C02P2, поскольку документация у меня была подобрана только
на чипы от "Famicon", а чипы от Rockwell имеют некоторые отличия.

Микропроцессор R65C02P2 представляет собой расширенную CMOS версию 6502 с
максимальной тактовой частотой 2 МГц, с 32 дополнительными инструкциями, и дополнительным
режимом адресации.

Отличий от 6502 в цоколевке микропроцессор R65C02P2 не имеет.

Image

Quote:
The changes in the R65C02 are as follows:
increment instructions can now use accumulator addressing!
There are bit manipulation instructions (RMB, SMB, BBR, BBS).
X register indexing now allows JMP (addr,X).
JMP (addr) can now straddle a page boundary (not so on the 6502).
Undefined opcodes are now NOP instructions (of various lengths).
The D flag is cleared on reset or after an interrupt.
The N flag is now valid in decimal mode.
The entirely new instructions in the R65C02 are:

BRA — unconditional branch (always)
PHX — push X onto stack.
PHY — push Y onto stack.
PLX — pull X from stack.
PLY — pull Y from stack.
STZ — store zero to memory.
TRB — test and reset memory bits against accumulator
TSB — test and set memory bits against accumulator

The extra address mode is a "zero page test relative" that the Rockwell documentation calls
simply "relative" addressing, despite the fact that the original 6502 had a relative mode
(used only for branching).

В микропроцессоре R65C02 имеют место следующие изменения:
- инструкции приращения (инкремента) могут теперь использовать аккумуляторную адресацию!
- Есть инструкции манипуляции битами (RMB, SMB, BBR, BBS).
- Режим индексации по регистру X позволяет выполнение команды JMP (addr,X).
- Команда JMP (addr) может теперь пересекать границу страницы (не так, как у 6502).
- Неопределенные коды операций в настоящее время выполняются как инструкции NOP (различной длины).
- Флаг D очищается при сбросе или после прерывания.
- Флаг N теперь действителен (доступен) и в десятичном режиме.

Совершенно новыми инструкции в микропроцессоре R65C02 являются:
- BRA — безусловный переход (выполняется всегда)
- PHX — занести X в стек.
- PHY — занести Y в стек.
- PLX — вытащить X из стека.
- PLY — вытащить Y из стека.
- STZ — записать нуль в ячейку памяти.
- TRB — тестирование и сброс битов памяти по состоянию аккумулятора
- TSB — тестирование и установка битов памяти по состоянию аккумулятора.

Дополнительный режим адресации "относительный тестовый нулевой страницы", который
документация Rockwell называет просто "относительной" адресацией, несмотря на то, что
в оригинальном 6502 был режим относительной адресации (используемый только
для ветвлений).


Кстати говоря, отечественный микропроцессор 4.К602ВМ1, о котором шла речь выше,
разработан как раз по образу и подобию R65C02P2, а не оригинальных 6502 и 65С02.

_________________
iLavr


25 Feb 2015 20:36
Profile
Banned
User avatar

Joined: 04 Jan 2013 11:09
Posts: 398
Location: 95.24.178.158
Reply with quote
Post 
Lavr wrote:
Так что мне только Алибаба и Алиэкспресс...
...
уже купил 6 штук - уже в России они, ~300 p. доставка.

Интересно. Действительно, и выбор есть, и сравнительно не дорого, несмотря на кризис.

http://ru.aliexpress.com/item/5PCS-R65C02P2-MICROPROCESSORS-CPU/1441786714.html
http://ru.aliexpress.com/item/Free-Shipping-10PCS-R65C02P2/2021632480.html
http://ru.aliexpress.com/item/R65C02P2-R65C02P1-R65C02P3-R65C02P3E-R65C02P4-Plastic-Dual-DZ/953872881.html

Пожалуй, тоже попробую здесь заказать несколько штук, раз уж у Вас так удачно прошло.

А то я с такими CPU опыта не имел, и не поимею, если цены поднимутся!
А простых и интересных конструкций на этом процессоре есть прилично:
http://www.grappendorf.net/projects/6502-home-computer
http://searle.hostei.com/grant/6502/Simple6502.html
http://www.chrisward.org.uk/6502/


27 Feb 2015 15:59
Profile
Maniac
User avatar

Joined: 19 Feb 2017 04:46
Posts: 215
Location: Россия
Reply with quote
Post Re:
Lavr wrote:
где Волков мог увидеть схему "мака" в Днепропетровске в 1984 г.?
Схему Apple Mac-128, что выпускался с января 1984 А.Волков не смог бы увидеть, если бы захотел и в 90-тые. Схемы не поставлялись.

Вообще всё для Макинтоша стараниями Стива Джобса было закрыто и засекречено, чтобы избежать конкуренции. Даже программистам информации, чтобы писать программы не хватало. Потому (в основном) и удалось избежать клонирования. Но это-то и довело Apple почти до краха к середине 90-тых и вызвало проигрыш Mac-компьютеров в конкуренции с PC.

Если бы не применялись засекреченные и недоступные для повторения БИС и клонмейкеры могли бы штамповать дешёвые клоны, то благодаря лучшим параметрам железа и программ Apple в итоге вытеснил бы PC, став мировым стандартом. А так фирма Apple будучи монополистом и удерживая цены много зарабатывала в 80-тые, но доля машин MAC у населения быстро падала, составив в итоге лишь крошечную часть парка компьютеров, особенно вне США.

И даже, если бы А.Волков поимел схему Mac-128 в 1984-85, то это ему нисколько бы не помогло в разработке Специалиста. На схеме видны только соединения БИС-ов, из чего невозможно почерпнуть ни одной идеи.

Похоже тема установки 6502 в Специалист заглохла ? Угас энтузиазм или сломили технические трудности ?


03 Jun 2018 19:46
Profile
Maniac
User avatar

Joined: 13 Nov 2007 12:09
Posts: 276
Location: Ставрополь
Reply with quote
Скорее давит вопрос наличия необходимости, ибо сваять железную схему это у нас запросто, только без софта она как бы и нафиг не нужна... А его нет, как и на сам Спец (считать наплаканное котом количество наличием софта ну просто стыдно).


03 Jun 2018 22:40
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
rw6hrm wrote:
Скорее давит вопрос наличия необходимости, ибо сваять железную схему это у нас запросто,
только без софта она как бы и нафиг не нужна...

Вот с этим - соглашусь. Нужен хотя бы Монитор. Поэтому запасся Монитором от Эппл-1 Возняка.
Изучаю, что и как там у него, чтобы адаптировать под железо "Специалиста".

_________________
iLavr


04 Jun 2018 08:50
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
barsik wrote:
Похоже тема установки 6502 в Специалист заглохла ? Угас энтузиазм или сломили технические трудности ?

Да мы в общем-то давно выяснили, что Волков не подглядывал ни в какие Эпплы, а руководствовался,
возможно, материалами из отечественной технической литературы и хорошим здравым смыслом.

А тема установки 6502 в "Специалист" не заглохла, и "технические трудности" никакие особо не предвиделись.
Благо у меня накоплен большой материал по семотехнике устройств на этом самом 6502...

Просто вышло так, что коллега PVV предложил очень хорошую схему преобразователя 5 в 12 Вольт из подручных материалов.
А посетитель форума - kossky77 - попросил здесь проработать сборку "Простейшей микроЭВМ (К580ВМ80А)"
для школьников.

Поскольку мне понравилось делать такие схемы на беспаечных макетках в "пошаговой" последовательности,
когда после запуска тактового генератора и проверки микропроцессора на исполнение NOP, схема далее
работоспособна практически на каждом шагу, я и решил отложить пока в сторону эксперименты
по установке 6502 в "Специалист", а сделать, наконец, эту самую "Простейшую микроЭВМ (К580ВМ80А)"
в варианте, доступном для повторения школьниками:

Image

Но, собрав этот макет, я подумал, что скорее всего нынешние школьники с этим не справятся... :osad:

А установка 6502 в "Специалист" - на очереди... но это не будет классический "Специалист", а, возможно,
устройство с картой памяти, похожей на "Специалист_МХ" (она мне нравится), и с выводом на LCD.


P.S. Хотя, возможно, меня тема с микроконтролером на 1801ВМ2 отвлекет от поделки на 6502,
поскольку для 1801ВМ2 я практически отработал программу Монитора, не ориентированную на БК.

_________________
iLavr


05 Jun 2018 11:51
Profile
Maniac
User avatar

Joined: 19 Feb 2017 04:46
Posts: 215
Location: Россия
Reply with quote
Post 
.
Есть альтернативный и нетравмирующий способ установки другого процессора в РК86 или Специалист, который сохраняет исходную "юзабельность" компьютера с процессором КР580.

Идея заключается в применении простого внешнего ядра со статическим ОЗУ и использовании платы Специалиста в качестве экранного терминала. Любой компьютер имеющий порт ввода можно использовать в качестве терминала. Такое решение удобно и при отладке контроллеров.

Чтобы получить экспериментальную систему на процессоре 6502 (или другом), берём плату Специалиста, вставляем в него немного изменённое ПЗУ и, используя имеющийся порт ВВ55, подключаем по параллельному или последовательному интерфейсу к крошечной платке, представляющей собой минимальное ядро на процессоре 6502.

Параллельный интерфейс быстрее и позволяет обмен в обе стороны. Это легко делается на ВВ55, например, используя порт A на ввод, порт B на вывод, а биты порта C в качестве управляющих сигналов. Обмен в обе стороны нужен, если нужно использовать клавиатуру Специалиста или дисковод подключенный к Специалисту.

Под последовательным интерфейсом понимается не применение ВВ51 и подобных БИС, а программная эмуляция интерфейса, что совсем не требует доп.деталей (не считая проволоки). Для интерфейса на вывод в терминал достаточно трёх проводов, - данные от управляющей машины, сигнал READY от терминала и земля.

Применение готовности необходимо, т.к плата Специалиста, получив из линии символ или команду, какое-то время занята выводом на экран и не реагирует на посыл новых символов. Подключить к Специалисту кабель в 3 провода намного легче, чем кабель с 20-тью проводами, а скорость передачи при этом остаётся достаточно высокой, - до 8 кб в секунду (т.е до 64 кбод).

Установка внутрь платы Специалиста процессора 6502 имеет меньше смысла, т.к использование заимствованного ПО требует смены архитектуры, т.е потребуется полное раскурочивание платы (и доработка, чтобы сделать 12 кб экран теневым). Преимуществом терминальной системы является возможность разгона 6502 до максимума и произвольный выбор архитектуры. Получается как бы двухпроцессорный компьютер, в котором второй процессор работает в качестве видео-адаптера.

Более того. Соответственно выбрав архитектуру можно эмулировать некоторые простые компьютеры на 6502. Т.к у меня есть вся информация только по Apple-II, есть Apple-клавиатура, прошивки ПЗУ и 50 дискет с играми, а с другими ЭВМ с 6502 я совсем не знаком, то выбор очевиден.

Процессорное ядро может содержать 6502, статическое ОЗУ на 64 кб, большое ПЗУ и аппаратную клавиатуру, стоящую идентично Apple-II. Можно написать ROM-BIOS совместимый по входам с ПЗУ F800 Apple-II (который ввод делает с клавиатуры Apple-II, а экранный вывод производит в терминал). А ещё проще (измененив в нём лишь адрес перехода по RESET), применить само ПЗУ F800 от Apple-II, т.к в нём процедуры вывода работают через вектор, что позволяет загрузить свой драйвер вывода. Благодаря векторизации, например, если в бейсике написать PRINT #3 при установленном в 3-тий слот 80-ти колонной видео-карте, то дальнейший вывод идёт на 80-ти колонный экран.

Потому если по сбросу CONOUT ПЗУ F800 будет инициализироваться так, что вывод будет происходить на терминал, то можно использовать не только RAM-монитор F800, но и всё системное ПО Apple-II, т.к оно работает корректно.

В частности, обеспечив наличие в ПЗУ (или ОЗУ) резидентного эпловского бейсика и резидентного мини-отладчика их можно использовать без переделок. Это позволит в мини-ассемблере набирать и отлаживать программы и использовать программы на бейсике. Т.о такой компьютер изначально не будет полностью лишённым ПО.

Игры даже для текстового режима пишут прямо в экранный буфер, и обычно используют блочно-цветные режимы низкого разрешения (что потребует соответствующей эмуляции в Специалисте). Графические игры для экрана 280*192 также, естественно, напрямую пишут в экран. Такие программы можно визуализировать. Для этого можно или аппаратно отлавливать запись в экран и побайтово визуализировать по NMI (это меньший расход ресурса), или визуализировать покадрово.

Для покадровой визуализации, имея запас по скорости примерно вдвое, можно несколько раз в секунду вызывать процедуру визуализации и сливать текстовый или граф.экран Apple-II в экран Специалиста. Для визуализации графич.экрана для ускорения нужен параллельный интерфейс и Специалист на Z80 с тактом 4 МГЦ (и у меня есть такой).

Чтобы картинка на экране Специалиста была полностью идентична Apple-II, можно сделать простые доработки видеогенератора Специалиста. Чтобы к такой системе подключить Apple-КНГМД с целью использовать Apple-DOS, придётся ввести программное переключение клока, т.к КНГМД программный и требует такта 6502 в 1.023 МГЦ. С учётом того, что платка ядра 6502 содержит всего десяток корпусов, в Специалисте-Экспресс менее 40 корпусов, то такой компьютер намного дешевле, чем Агат на 200 корпусах.


04 Jul 2018 04:29
Profile
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 17014
Location: Colorado
Reply with quote
Я примерно так хочу подружить 8085 и 1801ВМ2 в своём клоне МК-85 - 1801ВМ2 при записи в "видеопамять" (диапазон адресов 0x0080...0x00FF) будет аппаратно дёргать 8085, вводя его в прерывание, а сам останавливаясь, ожидая пока 8085 заберёт очередной байт и адрес, куда его записывают...

_________________
:eugeek: https://twitter.com/Shaos1973


04 Jul 2018 05:22
Profile WWW
Maniac
User avatar

Joined: 13 Nov 2007 12:09
Posts: 276
Location: Ставрополь
Reply with quote
Ещё подкину вариантЪ - просто ставим в Специалист 6502, соответствующе переделав шину управления. В ПЗУ прописываем симулятор процессора 8080 объёмом в полтора килобайта, https://vk.com/doc-72949118_393612968 Вопрос "совместимости" с существующим для Спеца ПО возможно будет практически решён.
Да, остаётся только один косяк - для 6502 ПЗУ просто обязано находиться в самых верхних адресах, чего в Спеце не сделано (там сидит ВВ55) и требует некоторых аппаратно-программных костылей. Но это особо и не важно, в верхнем ПЗУ можно прописать загрузчик и симулятор, и отключать его при обращении к ВВ55. ПЗУ Спеца остаётся в полной сохранности (кроме процедуры первоначального старта) и на прежнем месте.


04 Jul 2018 05:54
Profile WWW
Maniac
User avatar

Joined: 19 Feb 2017 04:46
Posts: 215
Location: Россия
Reply with quote
Post 
rw6hrm wrote:
симулятор процессора 8080 объёмом в полтора килобайта
Вот документация получше. Симулятор впечатляет, но есть большие сомнения в применимости его для реальных задач в силу тормознутости.

Вы считаете, что эта программа-симулятор позволяет на 6502 прогонять программы для КР580 ещё на приемлемой скорости? В описании написано, что это тормозятина, но не указано насколько. Указано, что выигрыш по скорости и объёму кода достигается благодаря логичной системе команд КР580. Но неясно насколько.

Обычная покомандная эмуляция тормозит не менее, чем в 25 раз. Так что, если 6502 стоИт в Специалисте синхронно и прозрачно, т.е такт 6502 - 1 МГЦ, а такт RAS-CAS 2 МГЦ, то имеем эффективный такт эмулируемого КР580 в 80 КГЦ (а в реальности ещё меньше в силу различия методов адресации). Если в базовом Специалисте ролик экрана длится треть секунды, то на 6502 это будет уже более 8-ми секунд.

Чтобы мы могли узнать реальную скорость симуляции прогоните вот эту подпрограммку с секундомером и сообщите сколько секунд она прогоняется под симулятором КР580 на 6502. Я знаю сколько она прогоняется в реальных компьютерах.
Code:
PAUSE:  CALL    BEEP
        LD      B,0
LOOP_1: LD      HL,4000H
LOOP_2: DEC     HL
        PUSH    DE
        POP     DE
        LD      A,H
        OR      L
        JP      NZ,LOOP_2
        DEC     B
        JP      NZ,LOOP_1
        JP      BEEP
rw6hrm wrote:
Вопрос "совместимости" с существующим для Спеца ПО возможно будет практически решён
Вряд-ли надо ставить 6502, лишаясь тем самым Специалиста, чтобы снова прогонять те же программы Специалиста, даже если это будет без потерь в скорости.
rw6hrm wrote:
остаётся только один косяк - для 6502 ПЗУ просто обязано находиться в самых верхних адресах
Из-за этого особых проблем нет, т.к на ППА тратятся только 4 ячейки FF00...FF03, так что в области FFFx можно получить ПЗУ просто совместив двумя диодами чип-селект ПЗУ C800 и чип-селект области FF80...FFFF (расход деталей в 555 ИД7 и 2 диода). Но на самом деле и это не надо, т.к выгоднее перенести порты (лучше в область C000, а 12К ПЗУ с бейсиком и монитором - на D000...FFFF).

Задача стоИт обратная, минимальной ценой получить систему на 6502 и желательно так, чтобы хоть какое-то ПО было. Свой ROM-BIOS в кодах 6502 можно написать за несколько дней. Кажется исходники бейсиков для 6502 (по крайней мере TINY-бейсика) можно найти в Интернете и адаптировать. И это похоже всё, что без чересчур больших усилий получится поиметь, если 6502 поставить внутрь платы Специалиста.

Полезнее было бы иметь обратную программу, - симулятор 6502 на процессоре КР580. Эту задачу я решил на Z80, но получилось очень тормознуто. В то время, как эмуляция КР580 на Z80 тормозила в 25 раз, то эмуляция 6502 на Z80 тормозила в 50 раз.

У меня есть блок эмуляции 6502 на Z80, что я написал >20 лет назад. При этом эмулировался CPU, ROM-BIOS и текстовый режим Apple-II. Я рассчитывал, что на ОРИОНЕ с Z80H 10 МГЦ скорость будет приемлемой (вдвое-втрое тормознее, чем реальный Apple), но из-за больших отличий CPU торможение оказалось намного больше. И это я ещё не знал, что при том же такте 6502 вдвое быстрее и исходил из знания, что 6502 тормозной.


04 Jul 2018 10:54
Profile
Maniac
User avatar

Joined: 13 Nov 2007 12:09
Posts: 276
Location: Ставрополь
Reply with quote
Как я уже упоминал, мне удалось запустить вариант СР/М для 8080 под симулятором. Тогда я просто не знал, насколько быстро ось работает. Теперь могу сказать - тогда было несколько медленней, нежели сейчас СР/М работает на 4 МГц Z80. Но и тогда это было на глаз приемлемо, поскольку был использован 65С02 на 2 МГц (а разогнать мы его можем спокойно до 5 МГц и выше).
К сожалению программно уже проверить ничего не могу, поскольку и контроллер на 6502 разобран, и от Спеца с удовольствием избавился. Это прошедший этап. Теперь - http://www.qsl.net/rw6hrm/html/z80.htm , но это уже оффтоп в теме.
Симулятор 6502 под СР/М у меня есть в архиве (не помню в каком - N8VEM или Walnut Creek), но пока не запускал. Если надо - поищу, скину ссылку.


04 Jul 2018 12:27
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 29 posts ]  Go to page Previous  1, 2

Who is online

Users browsing this forum: No registered users and 1 guest


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:  
cron
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.