nedoPC.org

Community for electronics hobbyists, established in 2002
Last visit was: 08 Nov 2024 17:20
It is currently 08 Nov 2024 17:20



 [ 55 posts ]  Go to page 1, 2, 3, 4  Next
Project Spirit 
Author Message
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23398
Location: Silicon Valley
Вот обдумываю вариант компьютера в стандартный корпус ПЦ, который мог бы запускать софт от Спринтера, но не был бы 100% клоном Спринтера - например имел бы настоящий Z80, а внутри FPGA имел бы другой (виртуальный) проц - например тот же RISC-V (мой вариант Retro-V), который мог бы использоваться как графический сопроцессор и даже как запускатель операционки - т.е. системные вызовы из Z80 шли бы не в Sprinter DOS Estex или Sprinter BIOS, а в код написанный на сях и запускаемый внутренним процессором RISC-V!!! Полное наименование компьютера может быть скажем "8-bit Spirit" или "Spirit PC" или "Retro Spirit" или "Spirit Retro" чтобы аббревиатура в названии материнок была SR - типа SR2023 и т.д.

Attachment:
SpritRetroLogoOlga.png
(лого по-быстрому нарисовано моей супругой-дизайнером в сентябре 2023 по мотивом логотипа петерсплюса)

Фичи прожэкта "Спирит":
  • Видеопамять (256кб или 512кб) должна полностью сидеть внутри FPGA (вместе с палитрами и динамическими знакогенераторами Спринтера);
  • Снаружи может быть основная память на той же плашке SIMM (до 64 Мб c 16-битным доступом и небольшим кэшем внутри FPGA);
  • ПЗУ с биосом и прошивкой FPGA (128кб или больше) также снаружи;
  • Настоящий проц Z80 (с максимальной частотой 20 МГц);
  • Часы реального времени (как на Спринтере);
  • Может быть даже настоящий AY;
  • А также ISA-слоты, чтобы все платы расширения, работающие на Спринтере могли бы работать и тут;
  • Для внешних накопителей надо будет предусмотреть интерфейсы IDE и SD-card (с которой будет работать fatfs скомпилированный под RISC-V);
  • Клава и мыша PS/2;
  • Возможно RS-232 прям на плате;
  • VGA разъём.

Выход видео сразу будет VGA 800x600 (4:3?) т.к. такие "неширокие" мониторы всё ещё продаются (на самом деле из-за особенностей устройства спринтеровской видеопамяти максимальное разрешение графики будет 768x576, а всё, что ширше будет бордюром):

Attachment:
Screenshot from 2022-09-06 02-11-52.png
Источник: http://tinyvga.com/vga-timing/800x600@60Hz

Возможность запуска ZX-софта также вполне может оставаться (причём TRD только по стандартным точкам входа TR-DOS и никаких дискет). Для "чистого" ZX возможно потребуется режим замедленного пиксельклока 33.33 МГц, чтобы было ровно 50 кадров в секунду вместо 60 (но это по видимому будет работать не на всех мониторах). Либо придётся химичить с преобразованием кадра из времянок ZX во времянки SVGA в FPGA на лету, сохраняя уже построенный кадр в промежуточном буфере при этом каждый 5й кадр будет повторяться 2 раза...

P.S. Hackaday-проект про ручной вариант Spirit Retro: https://hackaday.io/project/193074-spirit-retro-handheld


You do not have the required permissions to view the files attached to this post.

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


05 Sep 2022 18:52 WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23398
Location: Silicon Valley
Вот тут я ещё приводил цифры по другим стандартными вариациям разрешения 800x600:
Code:
Mode name        Lines line  sync      back      active     front     whole frame
                 Total width pulse     porch     time       porch     period
                       (us)  (us)(lin) (us)(lin) (us) (lin) (us)(lin) (us) (lin)
VGA 800x600 56Hz 625   28.44  56  1    568  20   17177 604      -1*   17775 625
VGA 800x600 60Hz 628   26.40 106  4    554  21   15945 604      -1*   16579 628
VGA 800x600 72Hz 666   20.80 125  6    436  21   12563 604   728 35   13853 666


Mode name       Pixel sync      back  active front whole line
                clock pulse     porch time   porch period
                (MHz) (us)(pix) (pix) (pix)  (pix) (pix)
VGA 800x600 56Hz 36   2     72  125    806    21   1024
VGA 800x600 60Hz 40   3.2  128   85    806    37   1056
VGA 800x600 72Hz 50   2.4  120   61    806    53   1040

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


07 Sep 2022 02:15 WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23398
Location: Silicon Valley
Shaos wrote:
Выход видео сразу будет VGA 800x600 (4:3?) т.к. такие "неширокие" мониторы всё ещё продаются (на самом деле из-за особенностей устройства спринтеровской видеопамяти максимальное разрешение графики будет 768x576, а всё, что ширше будет бордюром)

Выглядеть это может примерно вот так (это одна из моих "запредельных" GFF-картинок 368x288 увеличенная в 2 раза для того чтобы занять максимум площади разрешения 800x600):

Attachment:
GFF-368x288-DoubleX-5x4.jpg

А вот если подключить это к широкоэкранному монитору с соотношением сторон 16:9, то оно уже будет выглядеть растянутым:

Attachment:
GFF-368x288-DoubleX-16x9.jpg

Если скажем не увеличивать в 2 раза горизонтальное разрешение, то картинка сплюснется:

Attachment:
GFF-368x288-TrueX-16x9.jpg

Однако если суметь найти способ горизонтальное разрешение увеличить в полтора раза, то оно начинает выглядеть вполне приемлимо:

Attachment:
GFF-368x288-OneAndHalfX-16x9.jpg

В данном случае видимое соотношение сторон GFF-картинки на скрине примерно 1.28, что близко к нашим 5:4 (или 1.25, а вот более стандартные 4:3 это 1.333). Однако в этом случае горизонтальное разрешение из 800 превращается в 533, что не подходит для наших режимов высокой чёткости (стандартные 640 и далее вплоть до 736) и это значит, что если мы будем ориентироваться на современные мониторы с соотношением сторон 16:9, то для работы и со старым софтом, и с новым софтом, надо поддержать ДВА пиксельклока - на 800 пикселов в строке и на 533 пиксела в строке (в полтора раза меньше). Для этого скажем вместо 40 МГц в качестве основной частоты надо взять 80 и делить их либо на 2, либо на 3, либо на 4. Также теоретически расширение видеорежимов Спринтера в рамках существующей схемы нарезки видеопамяти способно покрыть 896x320 в пределе т.е. мы легко можем получить наши 800x300 целиком и без бордюра в новых софтах (либо полные 800x600 при задействовании расширенной до 512КБ видеопамяти). Причём интересный момент - "полуторное" разрешение 533x300 (наверное надо сделать 536x304 для круглого счёта) будет являться пропорциональным на мониторах с соотношением сторон 16:9 (т.е. пиксели в нём будут выглядеть квадратными в отличие от 800x300 или 800x600).

P.S. Что касается стандартных разрешений Спринтера, то они могут выглядеть так - стандартные 640x256 будут использовать стандартный для 800x600 пиксельклок 40 МГц:

Attachment:
STD-640x256-16x9.jpg

а стандартные 320x256 - "полуторный" пиксельклок 26.66 МГц:

Attachment:
STD-320x256-16x9.jpg

однако некоторые GFF-картинки (и новый софт) могут сразу требовать широкий экран, поэтому они будут использовать пиксельклок 20 МГц:

Attachment:
GFF-368x288HD-16x9.jpg

(возможно надо сделать допустимым вручную переключать SD/HD для LoRes графики скажем какой-то функциональной клавишей, а HiRes будет сразу использовать полный HD и его нельзя будет вручную переключить в SD)


You do not have the required permissions to view the files attached to this post.

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


10 Sep 2023 05:09 WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23398
Location: Silicon Valley
Необходимость иметь максимальный пиксельклок (40 МГц) для HiRes режимов также означает, что даже если один квадрат экрана был заявлен как HiRes (в том числе обычный текстовый режим 80x32), то ВЕСЬ экран надо разворачивать во всю ширь:

Attachment:
STD-640x256-16x9-boot.jpg

Ещё момент - если "полуторный" пиксельклок рассчитан только на LoRes режимы, то там квадратики идут через один и в таком случае максимально возможная ширина будет 112/2*8=448 видимых LoRes пикселов из 533, соответственно в этом режиме будут пустые поля слева и справа (точнее там будет бордюр):

Attachment:
EXT-448x304-over553x304-16x9.png

Надо подумать может оставить LoRes, который 256 цветов на пиксел, максимум как 448x288 (а то и вовсе 368x288 как сейчас в моих "запредельных" режимах на Спринтере), а полные 800x300 (800x600 при наличии 512КБ видеопамяти) будут только в 16-цветном режиме - можно прикинуть как вообще можно нарезать 800x300 в 768x256 байтах графической памяти - берём 256 строк по 400 байтов - и далее нам надо ещё 44 строки (48? 24 сверху и 24 снизу?) по 400 байт, которые можно накромсать половинками по 200 байт с отступом 0x238 (чтобы прибить половинки к правому краю зоны графики) - в итоге ещё останется место под спрайты (тайлы) 168x256 и 200x160 байт либо оставляем зону шрифтов нетронутой и уталкиваем графику в 704x256 байт видеопамяти, что даёт зону тайлов в 104x256 и 200x160 байт...

P.S. С другой стороны если уж ломать логику квадратиков в описателе графики, то можно расширить цикл обхода до предела, получив до 512 LoRes пикселов в строке (128 квадратиков), что даёт разрешение 512x288 с правильным широкоэкранным соотношением сторон 16:9

Attachment:
EXT-512x288-over553x300-16x9.png


You do not have the required permissions to view the files attached to this post.

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


10 Sep 2023 15:12 WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23398
Location: Silicon Valley
Shaos wrote:
Вот обдумываю вариант компьютера в стандартный корпус ПЦ, который мог бы запускать софт от Спринтера, но не был бы 100% клоном Спринтера - например имел бы настоящий Z80, а внутри FPGA имел бы другой (виртуальный) проц - например тот же RISC-V (мой вариант Retro-V), который мог бы использоваться как графический сопроцессор и даже как запускатель операционки - т.е. системные вызовы из Z80 шли бы не в Sprinter DOS Estex или Sprinter BIOS, а в код написанный на сях и запускаемый внутренним процессором RISC-V!!! Полное наименование компьютера может быть скажем "8-bit Spirit" или "Spirit PC" или "Retro Spirit" (или "Spirit Retro" чтобы аббревиатура в названии материнок была SR - типа SR2023 и т.д.).

Видеопамять (256кб или 512кб) должна полностью сидеть внутри FPGA (вместе с палитрами и динамическими знакогенераторами Спринтера)...

Для начала можно вообще сугубо FPGA решение на Verilog нагородить, отталкиваясь от того, что сконвертил КряКря пару лет назад и приделав к этой видеосистеме софткорку Retro-V...

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


10 Sep 2023 23:13 WWW
Maniac

Joined: 01 Jan 2022 04:34
Posts: 200
Location: USSR, Tashkent
Shaos wrote:
Shaos wrote:
Вот обдумываю вариант компьютера в стандартный корпус ПЦ, который мог бы запускать софт от Спринтера, но не был бы 100% клоном Спринтера - например имел бы настоящий Z80, а внутри FPGA имел бы другой (виртуальный) проц - например тот же RISC-V (мой вариант Retro-V), который мог бы использоваться как графический сопроцессор и даже как запускатель операционки - т.е. системные вызовы из Z80 шли бы не в Sprinter DOS Estex или Sprinter BIOS, а в код написанный на сях и запускаемый внутренним процессором RISC-V!!! Полное наименование компьютера может быть скажем "8-bit Spirit" или "Spirit PC" или "Retro Spirit" (или "Spirit Retro" чтобы аббревиатура в названии материнок была SR - типа SR2023 и т.д.).

Видеопамять (256кб или 512кб) должна полностью сидеть внутри FPGA (вместе с палитрами и динамическими знакогенераторами Спринтера)...

Для начала можно вообще сугубо FPGA решение на Verilog нагородить, отталкиваясь от того, что сконвертил КряКря пару лет назад и приделав к этой видеосистеме софткорку Retro-V...


а может в ISA AT слот платку ? а адресацию портов на стм/авр/плис ?


11 Sep 2023 03:25
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23398
Location: Silicon Valley
imsushka wrote:
Shaos wrote:
Shaos wrote:
Вот обдумываю вариант компьютера в стандартный корпус ПЦ, который мог бы запускать софт от Спринтера, но не был бы 100% клоном Спринтера - например имел бы настоящий Z80, а внутри FPGA имел бы другой (виртуальный) проц - например тот же RISC-V (мой вариант Retro-V), который мог бы использоваться как графический сопроцессор и даже как запускатель операционки - т.е. системные вызовы из Z80 шли бы не в Sprinter DOS Estex или Sprinter BIOS, а в код написанный на сях и запускаемый внутренним процессором RISC-V!!! Полное наименование компьютера может быть скажем "8-bit Spirit" или "Spirit PC" или "Retro Spirit" (или "Spirit Retro" чтобы аббревиатура в названии материнок была SR - типа SR2023 и т.д.).

Видеопамять (256кб или 512кб) должна полностью сидеть внутри FPGA (вместе с палитрами и динамическими знакогенераторами Спринтера)...

Для начала можно вообще сугубо FPGA решение на Verilog нагородить, отталкиваясь от того, что сконвертил КряКря пару лет назад и приделав к этой видеосистеме софткорку Retro-V...
а может в ISA AT слот платку ? а адресацию портов на стм/авр/плис ?
ISA будет сильно потом (и без стм/авр)

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


11 Sep 2023 08:50 WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23398
Location: Silicon Valley
При наличии 512КБ видеопамяти появляются 2 дополнительные видеостраницы для стандартных режимов (т.е. всего их станет четыре - 0,1,2,3), а также будет возможность получить полноценные 800x600 при 16 цветах на пиксел:

Attachment:
GFF-800x600HD-16x9.png


Attachment:
GFF-800x600HD2-16x9.png

для сравнения 800х300 будут выглядеть так (с удвоенными строками будучи растянуты в 16:9):

Attachment:
GFF-800x300HD2-16x9.png

к слову вот так я могу показать эту картинку на обычном Спринтере:

Attachment:
GFF-736x288HD2-16x9.png

т.е. наверное по большому счёту полноэкранные режимы 800x300 и даже 800x600 по сути и не очень то требуются, а самым большим разрешением первое время может быть околоспектрумовополутекстовый Mode 0x01 с "бордюром":

Attachment:
GFF-768x288HD3-16x9.png


You do not have the required permissions to view the files attached to this post.

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


11 Sep 2023 23:55 WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23398
Location: Silicon Valley
Shaos wrote:
imsushka wrote:
Shaos wrote:
Shaos wrote:
Вот обдумываю вариант компьютера в стандартный корпус ПЦ, который мог бы запускать софт от Спринтера, но не был бы 100% клоном Спринтера - например имел бы настоящий Z80, а внутри FPGA имел бы другой (виртуальный) проц - например тот же RISC-V (мой вариант Retro-V), который мог бы использоваться как графический сопроцессор и даже как запускатель операционки - т.е. системные вызовы из Z80 шли бы не в Sprinter DOS Estex или Sprinter BIOS, а в код написанный на сях и запускаемый внутренним процессором RISC-V!!! Полное наименование компьютера может быть скажем "8-bit Spirit" или "Spirit PC" или "Retro Spirit" (или "Spirit Retro" чтобы аббревиатура в названии материнок была SR - типа SR2023 и т.д.).

Видеопамять (256кб или 512кб) должна полностью сидеть внутри FPGA (вместе с палитрами и динамическими знакогенераторами Спринтера)...

Для начала можно вообще сугубо FPGA решение на Verilog нагородить, отталкиваясь от того, что сконвертил КряКря пару лет назад и приделав к этой видеосистеме софткорку Retro-V...
а может в ISA AT слот платку ? а адресацию портов на стм/авр/плис ?
ISA будет сильно потом (и без стм/авр)

Кстати в ISA слот можно платку с Z80 воткнуть :mrgreen:
Правда слот придётся расширить (т.к. проц должен будет некоторыми ногами быть подключен к FPGA, который будет на материнке) - я где-то тут свою старую идею вроде озвучивал - берём ISA16 и расширяем короткую его часть до полноценных 62 контактов (вторых), т.е. к стандарту ISA16 добавляется 26 сигналов, которые мы можем использовать по своему усмотрению.

К процу на плату может быть установлено что-то ещё, что будет всегда напрямую к нему подключено, например 16КБ FastRAM - в этом случае процессор при необходимости сможет работать без FPGA (например в процессе перезагрузки оного). Кроме того на той же плате может находиться Serial EPROM с прошивкой для FPGA - т.е. теоретически могут быть другие процессорные платы, с другими процами и другими прошивками, которые будут превращать материнку Spirit в другой компьютер!

Получается если мы втыкаем в материнку Spirit плату Z80 с прошивкой где сидит видеоподсистема Спринтера и мой RISC-V вариант Retro-V, то получаем компьютер Spirit Retro-V/Z80, а если втыкаем плату с современным ускоренным 6502, то получаем компьютер Spirit Commo 2024 например, или даже Spirit PC86 с 8086 ;)

P.S. Вот вам ещё 16-цветных кaртинок 736x288, которые также теоретически могут на оригинальном Спринтере быть показаны:


You do not have the required permissions to view the files attached to this post.

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


14 Sep 2023 23:14 WWW
Maniac

Joined: 01 Jan 2022 04:34
Posts: 200
Location: USSR, Tashkent
зачем мучать материнку ?
есть корзина в которую вставляешь любой набор платок. z80/6502/8088/68000 и vga/cga/vdp9958/синклеровский экран/wifi/ethernet/multicard/......

типа s100 но на ISA16

скорости исы хватает на все эти хотелки
а универсальность хороша для многообразия платформ


и да, только последняя картинка приличная, по качеству


15 Sep 2023 04:35
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23398
Location: Silicon Valley
А зачем мне корзина если я хочу стандартный корпус коих на каждом углу сотнями продают задёшево? ;)

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


15 Sep 2023 08:04 WWW
Maniac

Joined: 01 Jan 2022 04:34
Posts: 200
Location: USSR, Tashkent
Shaos wrote:
А зачем мне корзина если я хочу стандартный корпус коих на каждом углу сотнями продают задёшево? ;)

АТХ ?
ну вот в него и корзину как у Alexandru Groza


15 Sep 2023 08:43
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23398
Location: Silicon Valley
ITX/DTX - а чем мать то не угодила? На ней слоты - зачем корзина? :roll:

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


15 Sep 2023 11:28 WWW
Maniac

Joined: 01 Jan 2022 04:34
Posts: 200
Location: USSR, Tashkent
Shaos wrote:
ITX/DTX - а чем мать то не угодила? На ней слоты - зачем корзина? :roll:


я плату с разьемами и больше ничего, называю корзиной
так и ЕС1840/1 было и в Искре-1256 и в S100

корзина - куда все складывается, не важно какие разьемы стоят


15 Sep 2023 11:39
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23398
Location: Silicon Valley
Ну а тут будет «корзина» с FPGA, SIMM-модулем и разъёмами - PS/2 и VGA :)
Ну и несколькими ISA-слотами напротив обычных дырок в корпусе
(с платы Z80 наверное даже можно высунуть в дырку классический краевой разъём ZX)

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


15 Sep 2023 13:24 WWW
 [ 55 posts ]  Go to page 1, 2, 3, 4  Next

Who is online

Users browsing this forum: Claude AI [Bot] and 0 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

Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.