nedoPC.org

Community of electronics hobbyists established in 2002

...
Atom Feed | View unanswered posts | View active topics It is currently 04 Jun 2020 14:00



Reply to topic  [ 130 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6, 7 ... 9  Next
Arduino Nano - эмулятор компьютера под управлением ОС CP/M 
Author Message
Banned
User avatar

Joined: 29 Jun 2018 09:48
Posts: 413
Reply with quote
FoxyLab wrote:
- отвязал при этом аппаратный I2C от прерываний (отказавшись заодно от использования Wire.h)
- отвязал работу с UART от прерываний

"отвязал" - это значит "I2C и UART теперь не работает"?
т.е. теперь доступа к балалайке по интерфейсу UART и I2C - нет?
или "есть, но как-то альтернативно"?
FoxyLab wrote:
- от прерываний я отвязался не зря - таймер 1 после этих ухищрений позволил генерировать...

таймер 2 для этой цели не подходит?


10 Aug 2018 14:55
Profile
Senior

Joined: 27 Jul 2015 16:20
Posts: 124
Reply with quote
Совершенный offtop:
Что интересного в вертолете R66 со сквоком 7000? Обычный гражданский.


10 Aug 2018 15:03
Profile
Banned
User avatar

Joined: 29 Jun 2018 09:48
Posts: 413
Reply with quote
IgorR76 wrote:
Совершенный offtop:
Что интересного в вертолете R66 со сквоком 7000? Обычный гражданский.

не знаю - на тебе ссылко, читай интересное https://en.wikipedia.org/wiki/Robinson_R66


10 Aug 2018 15:10
Profile
Retired

Joined: 21 Mar 2017 07:37
Posts: 73
Reply with quote
IgorR76 wrote:
Совершенный offtop:
Что интересного в вертолете R66 со сквоком 7000? Обычный гражданский.

Наверно то, что это единственный Робинсон, посетивший эти места за много лет )))


Last edited by FoxyLab on 02 Jan 2020 13:31, edited 1 time in total.



12 Aug 2018 06:08
Profile
Retired

Joined: 21 Mar 2017 07:37
Posts: 73
Reply with quote
Клапауций wrote:
FoxyLab wrote:
- отвязал при этом аппаратный I2C от прерываний (отказавшись заодно от использования Wire.h)
- отвязал работу с UART от прерываний

"отвязал" - это значит "I2C и UART теперь не работает"?
т.е. теперь доступа к балалайке по интерфейсу UART и I2C - нет?
или "есть, но как-то альтернативно"?

Естественно, работают :lol: Я напрямую опрашиваю и пишу в регистры UART и I2C, без лишних библиотек, к тому же юзающих прерывания и кушающих память.
Клапауций wrote:
FoxyLab wrote:
- от прерываний я отвязался не зря - таймер 1 после этих ухищрений позволил генерировать...

таймер 2 для этой цели не подходит?

Дело не в номере таймера, а в том, что теперь ничто не прервет генерацию пикселей ТВ-строки.
P.S. Добавил поддержку протокола XMODEM, так что теперь можно загружать файлы и диски в эмулятор из терминальной программы (например, Tera Term).
P.P.S. Причешу код и обновлю на гитхабе.


Last edited by FoxyLab on 02 Jan 2020 13:31, edited 1 time in total.



12 Aug 2018 06:21
Profile
Retired

Joined: 21 Mar 2017 07:37
Posts: 73
Reply with quote
Ардуино запускает загруженный через XMODEM монитор (turnmon) от "Альтаир 8800" (я сделал эмулятор совместимым по портам с ним) - выполнена команда дампа памяти:

Attachment:
cpm4nano_turnmon_d.png
cpm4nano_turnmon_d.png [ 3.13 KiB | Viewed 206 times ]


Восьмеричная система... компьютер на год старше меня :ewink:


Last edited by FoxyLab on 02 Jan 2020 13:31, edited 1 time in total.



12 Aug 2018 11:57
Profile
Retired

Joined: 21 Mar 2017 07:37
Posts: 73
Reply with quote
Нахально похвастаюсь :ewink: Я научил свой «нанокомпьютер» выводить на экран ТВ без джиттера (!) 20 строк текста по 40 колонок в каждой.
На "скриншоте" экрана ТВ показаны результаты выполнения команды DIR и тестов процессора:

Attachment:
cpm4nano_tv_1.png
cpm4nano_tv_1.png [ 99.73 KiB | Viewed 206 times ]


На текущий момент в проекте cpm4nano одна (!) Arduino Nano (!):
— эмулирует процессор i8080;
— загружает ОС CP/M и выполняет ее программы;
— обменивается информацией по последовательному порту;
— выводит изображение на экран ТВ.
P.S. Шрифт, конечно, подправлю, на мониторе "Байта" спектрумовский сжатый шрифт смотрелся получше.


Last edited by FoxyLab on 02 Jan 2020 13:30, edited 1 time in total.



23 Aug 2018 13:14
Profile
Doomed
User avatar

Joined: 13 Nov 2007 12:09
Posts: 391
Location: Ставрополь
Reply with quote
Бедняжко, да как же она трудится, маленькая... ;)
Ссылку на тестовую прогу можно? Попробую на своём реальчике (Z80 правда, но мож что скажет, а то всё тестирую через DDT).


23 Aug 2018 14:32
Profile WWW
Retired

Joined: 21 Mar 2017 07:37
Posts: 73
Reply with quote
rw6hrm wrote:
Бедняжко, да как же она трудится, маленькая... ;)
Ссылку на тестовую прогу можно? Попробую на своём реальчике (Z80 правда, но мож что скажет, а то всё тестирую через DDT).

Она натурально греется :esmile: Ей маленький радиатор на корпус меги не помешает. А с тестами - та еще тема, особенно с флагом AC :twisted: Вот для 8080 набор тестов под CP/M: http://altairclone.com/downloads/cpu_tests/


Last edited by FoxyLab on 02 Jan 2020 13:30, edited 1 time in total.



23 Aug 2018 14:42
Profile
Retired

Joined: 21 Mar 2017 07:37
Posts: 73
Reply with quote
Текущая схема проекта:

Attachment:
cpm4nano_mk4_cir.png
cpm4nano_mk4_cir.png [ 39.9 KiB | Viewed 206 times ]

В минимальной конфигурации требуется:
Arduino Nano 3.0;
SD-карточка с адаптером;
преобразователь USB-UART.


Last edited by FoxyLab on 02 Jan 2020 13:30, edited 1 time in total.



26 Aug 2018 13:44
Profile
Retired

Joined: 21 Mar 2017 07:37
Posts: 73
Reply with quote
С добавление интерфейса PS/2 для подключения клавиатуры мой "нанокомпьютер" стал самодостаточным:


Attachments:
ps2_uart_cir.png
ps2_uart_cir.png [ 46.99 KiB | Viewed 206 times ]


Last edited by FoxyLab on 02 Jan 2020 13:30, edited 1 time in total.

30 Aug 2018 00:35
Profile
Doomed
User avatar

Joined: 13 Nov 2007 12:09
Posts: 391
Location: Ставрополь
Reply with quote
Судя по схеме, интерфейс работает только в одну сторону и светодиодиками на клаве не помигать...


30 Aug 2018 01:01
Profile WWW
Retired

Joined: 21 Mar 2017 07:37
Posts: 73
Reply with quote
rw6hrm wrote:
Судя по схеме, интерфейс работает только в одну сторону и светодиодиками на клаве не помигать...

Верно! Но у STM-ки есть два выхода с открытым коллектором (стоком) для I2C, вот их я и использую в дальнейшем для этого.
P.S. Мигать STM-ка будет сама, без участия Arduino, так же как она сама режим строчные/заглавные переключает.


Last edited by FoxyLab on 02 Jan 2020 13:31, edited 1 time in total.



30 Aug 2018 02:06
Profile
Doomed
User avatar

Joined: 13 Nov 2007 12:09
Posts: 391
Location: Ставрополь
Reply with quote
FoxyLab wrote:
так же как она сама режим строчные/заглавные переключает.

Если появится режим рус/лат, хотя бы через нажатие ScrollLock - хотелось бы алгоритм посмотреть. Именно алгоритм, программно не нужно.


30 Aug 2018 03:23
Profile WWW
Retired

Joined: 21 Mar 2017 07:37
Posts: 73
Reply with quote
rw6hrm wrote:
FoxyLab wrote:
так же как она сама режим строчные/заглавные переключает.

Если появится режим рус/лат, хотя бы через нажатие ScrollLock - хотелось бы алгоритм посмотреть. Именно алгоритм, программно не нужно.

Просекаем make-код SCROLL (0x7E), переключаем флаг языка, и в большом switch вместо Q для скан-кода клавиши Q (0x15) посылаем Й. Такие дела :wink:


Last edited by FoxyLab on 02 Jan 2020 13:32, edited 1 time in total.



30 Aug 2018 03:43
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 130 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6, 7 ... 9  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.