Comments 107
>пачка моих сигарет стоит… примерно $10
С такими ценами можно было бы легко бросить и без всяких Спектрумов :)
С такими ценами можно было бы легко бросить и без всяких Спектрумов :)
моя жаба опять спит и полностью меня игнорирует :(
у нас $40 самые дешевые, как-то не особо бросают )))
UFO just landed and posted this here
Отличный повод начать знакомство с STM32. Спасибо!
офигеть 8( )
Хорошая статья, показывает на что способно современное железо.
ОЗУ на бордюре даже интереснее, я бы так оставил.
В БК есть режим, когда часть видеопамяти используется в качестве доп. ОЗУ, полезная картинка занимает небольшую часть экрана, а под ней видно, что в этой области ОЗУ делается, напомнило.
Клавиатура нужна обязательно, возможность программирования — главное преимущество Спектрума перед Денди.
В БК есть режим, когда часть видеопамяти используется в качестве доп. ОЗУ, полезная картинка занимает небольшую часть экрана, а под ней видно, что в этой области ОЗУ делается, напомнило.
Клавиатура нужна обязательно, возможность программирования — главное преимущество Спектрума перед Денди.
Да, и соблазну сделать своп на карточке не поддаваться ни в коем случае.
Имхо мерцание полей быстро надоест.
Если изготавливать корпус, то можно закрыть эту часть экрана или передней панелью или наклеить рамку.
Если изготавливать корпус, то можно закрыть эту часть экрана или передней панелью или наклеить рамку.
Не было видно, что там было, эта область затенялась. Видимыми оставались несколько строк текста. Если не затенять, что бы всё было видно, то скорость работы с видео озу была меньше чем с основной памятью.
В оригинальном ZX использовалось два «банка» памяти RAM 8*16Кибит + 8*32Кибит, наши поздние клоны как правило изготавливались уже с единой памятью 8*64Кибит, что уже не давало различия по скорости доступа к разным участкам памяти.
Да и нет такого понятия «не показывать затененный участок» вам по прежнему показывают информацию которую регулярно «видеоадаптер» выбирает из памяти, это как полдня сидеть на ютубе на помегабайтном тарифе, а потом заявлять «я же ничего не качал!».
Да и нет такого понятия «не показывать затененный участок» вам по прежнему показывают информацию которую регулярно «видеоадаптер» выбирает из памяти, это как полдня сидеть на ютубе на помегабайтном тарифе, а потом заявлять «я же ничего не качал!».
На спектруме были такие копировщики (списать игру с одной кассеты, записать на другую), нижняя половина экрана начинала использоваться, если игра ровно 48к размером.
там три блока по 2кб, соответственно экран состоял из трех частей (+ 3х256 байт цвета).
мой любимый копировщик был NEW FORMAT COPY, в нем можно было править коды загруженной игры/программы и он тоже использовал память экрана :)
мой любимый копировщик был NEW FORMAT COPY, в нем можно было править коды загруженной игры/программы и он тоже использовал память экрана :)
вспомнились приколы программирования на Зет80 типа: Push — Return и XOR A.
спесси
спекки тогда уж
Эх, жаль видосика нет, интересно посмотреть, как себя «видимопамять» ведет в динамике.
А что за записную книжку вы делали 25 лет назад, КМОП-Z80 и ЖКИ однобитный?
Toshiba, не помню номер, со встроенным контроллером матричного ЖКИ 160x64 вроде. Надо посмотреть в исходниках(сначала найти). Телефонная книжка с DTMF (подносишь к трубке-набирает), факс (если поключить модем и только посылыет), словарь Иврит, Русский, Арабский и Английский, калькулятор, часы-календарь, тетрис разумеется…
Самоделка или продакшен? Фото остались, код?
Это продакшен. И продается до сих пор, недавно видел.
Код — частично остался. Но он собственность израильской компании «кравитц». Код эмулятора (BCC+TASM+WIN32) и бинарники вроде есть все и на них никто не претендует.
Эмулятор включает фотку. Там надо свистелку подправить, чтобы работала под современный Windows, она исключение вызывает, так как работала напрямую с динамиком) Если Вам нужно напишите мне на маил(в гитхабе есть), я вышлю
Код — частично остался. Но он собственность израильской компании «кравитц». Код эмулятора (BCC+TASM+WIN32) и бинарники вроде есть все и на них никто не претендует.
Эмулятор включает фотку. Там надо свистелку подправить, чтобы работала под современный Windows, она исключение вызывает, так как работала напрямую с динамиком) Если Вам нужно напишите мне на маил(в гитхабе есть), я вышлю
Тогда, думаю, по названию+модели можно найти фотки.
И примерные характеристики, сколько ОЗУ, ПЗУ, какой источник питания?
128K static ram 256-512K rom в зависимости от языка, CR2032x2
ПЗУ, конечно, не масочное, чтобы чип не заказывать?
Убейте, не помню.
А ведь там ресурсов хватит, чтобы CP/M запустить.
Возможно, однако нет смысла. Из-за маленького рынка, (Израиль+Иврит) он сильно «overpriced» долларов под сотню. Может сейчас цена и упала, но не думаю что сильно. Да и откровенное барахло по сегодняшним понятиям.
Но можно попробовать на похожей схемотехнике (микропотребляющий нативный, а не эмулируемый Z80, однобитный ЖКИ, ОЗУ и ПЗУ столько же) сделать карманную машину с CP/M примерно с такой же потребляемой мощностью.
Главный жрун все равно дисплей. Процессор уходит в глубокий сон после отработки каждого события(нажатая клавиша, будильник и тд) и это единицы микроампер. Клавиши сканируются на низкой частоте ~32KHz, потом быстренько отрабатывается на полной частоте и опять спать до следующей клавиши.
Дисплей — даже пассивный, уже несколько миллиампер пока не погасишь. То есть батарейки хватит часов на 100-300 работы дисплея.
Дисплей — даже пассивный, уже несколько миллиампер пока не погасишь. То есть батарейки хватит часов на 100-300 работы дисплея.
а смысл? все равно что карманный кассетный плеер разрабатывать на современной базе, если только для собственного удовольствия (тем более для такой специализированной задачи можно написать код для STM32, а не брать за основу более примитивный Z80, который напрямую не может адресовать более 64кб и тд).
ну и смартфоны заменили почти всё, весь мир уже давно в кармане :)
ну и смартфоны заменили почти всё, весь мир уже давно в кармане :)
Плохо видно, что на кнопке с цифрой 6, неужели SPEECH?
Интересно — чем обусловлен выбор именно этой микросхемы? Просто была в наличии или 20К оперативки максимум для этой серии?
Она у меня была. И она самая дешевая и распространенная из подходящих.
Кроме разгона до 112 MHz, в STM32F103C8T6 можно пробовать использовать вторые 64К flash, если очень нужно.
а где почитать? они получается отбраковка от 128 киловых и флеша там внутри таки есть?
Делал по такому туториалу acassis.wordpress.com/2016/06/12/running-nuttx-on-a-less-than-u2-00-board
На моей работало успешно.
На моей работало успешно.
Это не на всех. Есть и 64 и 128. Разные чипы с почти одинаковой маркировкой.Те которые 64 они не разгоняются, сегодня такие получил, впрочем у меня нет статистики 2 на 128 и две на 64 (:
github.com/retrogubbins/pase — эмуляция спектрума на ESP32
UFO just landed and posted this here
Судя по потреблению энергии, это вайфай со спектрумом. :)
Spectrum Next несет на борту вайфай :)
Wifi+BT :)
2 Core + 1 Low power core…
привел как пример тк по цене весьма близка к использованной в статье STM32 )
2 Core + 1 Low power core…
привел как пример тк по цене весьма близка к использованной в статье STM32 )
RPi Zero ($4.95 на сейле) + 3.5'' LCD ($4.95 Aliexpress) + халявные BT+WiFi adapter (сэмплы с alibaba) + халявный блок питания (от старого, не помню какого телефона — их мириады были у меня) + 8GB sd-card (тоже, как ни странно, халявная — но нужна для Raspbian). То бишь я в $10-ку уложился (хотя сигареты покупаю в Nashua, New Hampshire, там они самые дешевые по Штатам, меньше $10).
Сорри, картинки сейчас лень делать, но все работало, как Вы сами понимаете.
Сорри, картинки сейчас лень делать, но все работало, как Вы сами понимаете.
Пруф можно на дисплей?
Соврал, таки $5.95 (но это был какой-то крупный сейл, так они дороже, конечно). Вот он, только подключенный к Rpi2 B, вот скриншот покупки, а ссылку не дам, нет уже того продавца, похоже.
P.S. Но в десятку почти уложился (если не считать «халявное» и то, что было уже дома).
P.S. Но в десятку почти уложился (если не считать «халявное» и то, что было уже дома).
Я когда в GE Medical работал у меня были подарочные сервера Supermicro на 2-4 сокета с последними Xeon-ами от Интеля. Бесплатно.И лично мои. И каждый год новый. В GE они не числились, а Интель их обратно не просил. Так они в GE валяются, думаю что до сих пор. Вопрос стоял не во сколько мне обошлось, а сколько будет стоить если собирать сейчас и не мне.
если собирать сейчас и не мнеЯ написал, сколько будет стоить собирать сейчас и мне :D
Ваша разработка забавная, безусловно, но неужели вы думаете, что все сейчас прямо кинутся создавать такие эмуляторы Zx-ов?
Я когда в GE Medical работал у меня были подарочные сервера Supermicro на 2-4 сокета с последними Xeon-ами от Интеля. Бесплатно.И лично мои.
Чтоб я так жил, мама мия :)
А RPi Zero до сих пор на сейле.
круто, недавно только вертел этот стм32, думал наверно спектрум сможет эмулировать, а тут бац — и готовый проект :)
Ожидал увидеть очередную статью «как я помигал диодом», а тут сюрприз!
btw: для игровой приставки хорошо подойдет что-нибудь типа первой версии MKS-TFT32, там и экран, и sd-карта, и пищалка есть, и даже usb host, чтобы сразу в него геймпад воткнуть…
btw: для игровой приставки хорошо подойдет что-нибудь типа первой версии MKS-TFT32, там и экран, и sd-карта, и пищалка есть, и даже usb host, чтобы сразу в него геймпад воткнуть…
А я бы применил SPI-RAM микросхему, к тому же у STM-контроллеров очень часто встречается аппаратный расширитель памяти именно через SPI, это прибавит плюс к быстродействию.
Спектрум. Теплые воспоминания. А тут еще и любимое современное железо. Спасибо за интересную статью.
Чот я не понял — это как в 20K ram МК можно впихнуть 48К спектрума? Ладно, минус 16К ПЗУ и того экран+рабочая область = 32К, куда девается 12К?
если прочитать статью то можно понять что искомые 12К в «бордере» экрана хранятся, видно на фотках
В «бордере» экранахранится все, что выше sinclair видео RAM: 0x10000-0x5b00 = 42240 bytes
ROM sinclair -16K в STM32 rom, остальное код эмулятора и интерфейса пользователя
В RAM stm32 — sinclair видео RAM, линии кеша(около 100 по 64 байта), таблицы адресов областей подкачки, битовая таблица изменений экрана sinclair для минимизации времени отрисовки на реальный экран, всякие переменные и стек эмулятора и куча для malloc FAT32
Спасибо.
Теперь понятно и почему тормозит… всё же через SPI с кучей доп.организации.
То есть когда нужен доступ к области памяти которая загружена в неиспользуемую область дисплея происходит задержка чтобы подгрузить ее в основное озу микроконтроллера?
Как работает кеш? Что если программа будет каждые несколько тактов обращаться к случайным областям памяти из всего пространства 48к байт?
Как работает кеш? Что если программа будет каждые несколько тактов обращаться к случайным областям памяти из всего пространства 48к байт?
Как работает кеш?
LRU — Если происходит обращение к адресу не в кеше, то самый старый блок на 64 байта или выбрасывается, если в него не было записи, или записывается если запись была. Потом на освобожденное место подчитывается со swap area на ili9341 (рамки дисплея).
Что если программа будет каждые несколько тактов обращаться к случайным областям памяти из всего пространства 48к байт?
Случайное число трудно получить за несколько тактов. :)… Будет работать, но очень медленно и печально.
сложно представить себе такую программу, чтоб постоянно в разные области памяти обращалась. обычно переменные где-то в одном месте свалены, да и сама программа не ходит по каким-то слишком уж длинным алгоритмам. единственное случай в голову приходит — это игры с графикой, где надо постоянно спрайты из памяти на экран тащить, либо смещать изображение на экране
Не плохо бы и схему посмотреть.
Там все провода смапированны:
github.com/sdima1357/specci48/blob/master/Inc/main.h
github.com/sdima1357/specci48/blob/master/Inc/main.h
Восхищаюсь умельцами! Супер!
На чём только не собирали Spectrum: AVR, PLD (ПЛИС), SMT…
Интересно, на чём ещё можно соорудить этот популярный комп?!
На чём только не собирали Spectrum: AVR, PLD (ПЛИС), SMT…
Интересно, на чём ещё можно соорудить этот популярный комп?!
UFO just landed and posted this here
Спасибо, очень интересная и шикарная статья! В половину игр играл в детстве, а спектрумовский клон диггера с видео был моей первой и самой любимой компьютерной игрой — она шла с кассетой в комплекте поставки Компаньон-2 (клон от Ижевского Радиозавода).
Sign up to leave a comment.
Spectrum-48 против пачки сигарет, каша из топора или что может STM32F103C8T6+video(update)