nedoPC.org

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



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

Joined: 21 Mar 2017 06:37
Posts: 73
Reply with quote
Сделал эмуляцию устройства управления памятью (MMU) с переключением банков, что позволило иметь доступ к 512 КБайтам памяти.
Я разделил адресное пространство 0x0000...0xFFFF на 16 блоков (с номерами от 0x0 до 0xF) размером по 4 КБайта. Каждый блок может быть отображен в один из 8 банков (размер банка - 64 КБайта). Соответствие банков блокам определяется значениями (номерами банков от 0 до 7) в наборе из 16 регистров (при запуске эмулятора активен только банк 0).
Для задания номера банка для определенного блока используются две команды вывода в порт:
OUT D0, номер_блока
OUT D1, номер_банка
Также для переключения блока памяти X на банк памяти Y можно использовать команду монитора YXY.


Last edited by FoxyLab on 02 Jan 2020 12:32, edited 2 times in total.



27 Apr 2017 10:48
Profile
Retired

Joined: 21 Mar 2017 06:37
Posts: 73
Reply with quote
Тестирование 8 банков (512 килобайт) памяти:

Attachment:
cpm_start_banks.png
cpm_start_banks.png [ 6.19 KiB | Viewed 5261 times ]


Last edited by FoxyLab on 02 Jan 2020 12:33, edited 1 time in total.



29 Apr 2017 22:25
Profile
Retired

Joined: 21 Mar 2017 06:37
Posts: 73
Reply with quote
cpm4nano Mk II
(использовал адаптер для подключения microSD-карточки)


Attachments:
cpm_mk2.jpg
cpm_mk2.jpg [ 29.86 KiB | Viewed 5261 times ]


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

17 May 2017 11:08
Profile
Retired

Joined: 21 Mar 2017 06:37
Posts: 73
Reply with quote
Новый рекорд - я прогнал без сбоев 7400 проходов теста памяти (ардуинка непрерывно молотила больше двух суток):

Attachment:
memtest_7400.png
memtest_7400.png [ 2 KiB | Viewed 5261 times ]


Так что опасения в быстром выходе из строя карточки немного преувеличены.


Last edited by FoxyLab on 02 Jan 2020 12:33, edited 1 time in total.



25 May 2017 22:58
Profile
Retired

Joined: 21 Mar 2017 06:37
Posts: 73
Reply with quote
Новости проекта:
- подключил два чипа FRAM (32 КБайта каждый), причем сделал автоконфигурацию чипов (их может быть до 8 ) по банкам, так что эти два чипа закрыли нулевой банк ОЗУ
- отвязал при этом аппаратный I2C от прерываний (отказавшись заодно от использования Wire.h)
- отвязал работу с UART от прерываний
- от прерываний я отвязался не зря - таймер 1 после этих ухищрений позволил генерировать частоту строчной развертки для вывода на ТВ; я смог подобрать набор ассемблерных команд, которые позволят выводить пиксел за 7 тактов процессора (причем знаки берутся из знакогенератора - массива во флэш-памяти, а не экранного буфера в ОЗУ), а это при 56 мкс активной части строки даст 128 пикселей, т.е. Arduino Nano (одна!!!) сможет и эмулировать, и выводить на экран через композитный вход ТВ 24 символа в строке (при шрифте 5 x 8 ), хотя и утратив несколько в производительности (но все же не до такой степени, как ZX80 сэра Клайва :-) )
- переписал код эмуляции, сэкономив несколько килобайт флэша
Продолжение (и новая версия кода на гитхабе, а также дополненное описание на https://acdc.foxylab.com/node/76) следует


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



10 Aug 2018 12:39
Profile
Banned
User avatar

Joined: 29 Jun 2018 08:48
Posts: 413
Reply with quote
FoxyLab wrote:
Arduino Nano (одна!!!) сможет и эмулировать, и выводить на экран через композитный вход ТВ 24 символа в строке (при шрифте 5 x 8 )

смочь то сможет, но что это даёт практически на фоне смешных цен на графические индикаторы любого типоразмера?
ты сможешь носить в кармане устройство, а телевизор будет стоять дома?


10 Aug 2018 13:07
Profile
Banned
User avatar

Joined: 29 Jun 2018 08:48
Posts: 413
Reply with quote
https://www.acdc.foxylab.com походу, враги зобанили - перетащи всё бобро на https://pages.github.com или исправь файл реадми https://acdc.foxylab.com/
спасибо.


10 Aug 2018 13:13
Profile
Retired

Joined: 21 Mar 2017 06:37
Posts: 73
Reply with quote
Клапауций wrote:
www.acdc.foxylab.com походу, враги зобанили - перетащи всё бобро на https://pages.github.com или исправь файл реадми https://acdc.foxylab.com/
спасибо.

без www ! https://acdc.foxylab.com (где я упоминал www acdc foxylab com?)
Это же моя VPS-ка, перетаскивать с VPS на банальный файловый хостинг, извольте :-)


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



10 Aug 2018 13:26
Profile
Banned
User avatar

Joined: 29 Jun 2018 08:48
Posts: 413
Reply with quote
FoxyLab wrote:
(где я упоминал www acdc foxylab com?)

https://github.com/Dreamy16101976/cpm4nano файл README.md


10 Aug 2018 13:29
Profile
Banned
User avatar

Joined: 29 Jun 2018 08:48
Posts: 413
Reply with quote
FoxyLab wrote:
Это же моя VPS-ка, перетаскивать с VPS на банальный файловый хостинг, извольте :-)

я подумал, что на помойке и лежит, а ты не проплатил и всё похерилось медной п...


10 Aug 2018 13:31
Profile
Retired

Joined: 21 Mar 2017 06:37
Posts: 73
Reply with quote
Клапауций wrote:
FoxyLab wrote:
Arduino Nano (одна!!!) сможет и эмулировать, и выводить на экран через композитный вход ТВ 24 символа в строке (при шрифте 5 x 8 )

смочь то сможет, но что это даёт практически на фоне смешных цен на графические индикаторы любого типоразмера?
ты сможешь носить в кармане устройство, а телевизор будет стоять дома?

old school :) Кстати, как оказалось, я не одинок в идее эмулирования ОЗУ посредством SD-карточки - англоязычный товарищ похожим образом PDP эмулирует :wink:


Last edited by FoxyLab on 02 Jan 2020 12:33, edited 1 time in total.



10 Aug 2018 13:33
Profile
Retired

Joined: 21 Mar 2017 06:37
Posts: 73
Reply with quote
Клапауций wrote:
FoxyLab wrote:
(где я упоминал www acdc foxylab com?)

https://github.com/Dreamy16101976/cpm4nano файл README.md

Спасибо, исправил


Last edited by FoxyLab on 02 Jan 2020 12:33, edited 2 times in total.



10 Aug 2018 13:34
Profile
Retired

Joined: 21 Mar 2017 06:37
Posts: 73
Reply with quote
Клапауций wrote:
FoxyLab wrote:
Это же моя VPS-ка, перетаскивать с VPS на банальный файловый хостинг, извольте :-)

я подумал, что на помойке и лежит, а ты не проплатил и всё похерилось медной п...

:)


Last edited by FoxyLab on 02 Jan 2020 12:33, edited 1 time in total.



10 Aug 2018 13:35
Profile
Banned
User avatar

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

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

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


10 Aug 2018 13:55
Profile
Senior

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


10 Aug 2018 14:03
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 121 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6 ... 9  Next

Who is online

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