Войти
ФлеймФорумЖелезо

8-битный "компьютер мечты"

Страницы: 1 2 320 21 Следующая »
#0
(Правка: 10:14) 10:13, 25 фев. 2019

8-bit-guy продолжает проталкивать свою идею создания такого 8-битного компьютера "своей мечты", который бы с одной стороны тяжело топтался по ностальгическим чувствам, а с другой стороны был бы лишён как можно больших недостатков из 8-битной эры да еще и стоил бы в районе $50.
Правда на пока комп у него получается 16-битный, но ладно.
Основные требования у него - чтобы процессор был из семейства MOS 6502 и чтобы бейсик был как можно более похож на бейсик из Commodore 64, т.к. именно этот комп был у него в прошлом.

И я вот что-то тоже решил призадуматься - а какую архитектуру вот я бы посчитал целесообразной в 8-битном компьютере если бы его можно было сделать с нуля?
Начиная от раскладки памяти, портов ввода-вывода, устройства видеопамяти и т.п.?

Т.к. у меня, как и у многих из вас, был ZX Spectrum, то в качестве процессора я бы выбран Zilog Z80.
Память разбил бы на 4 страницы по 16Кб каждая и чтобы в любой странице можно было выбирать на какой именно чипа памяти в 16Кб он маппится - чипы пронумерованы от 0 до 255, таким образом селектор страницы это байт и всего памяти может быть до 256*16Кб = 4 Мб. Это, имхо, за глаза. Более 1Мб ОЗУ даже смысла не вижу делать, в 8-битке страницы по большей части нужны для подкачки данных.
Поэтому половина страниц зарезервирована под ПЗУ, вторая половина - под ОЗУ. 4 первых страницы ПЗУ зарезервированы под встроенные в сам компьютер, правда что там так богато может быть пока даже не решил.
Зато мне понравился принцип когда в специальный слот можно воткнуть картридж с дополнительным ПЗУ - хоть все оставшиеся страницы. Технически там может быть и ОЗУ, как в картриджах Денди, но в основном такое нужно под какой либо мощный софт.

В общем это пока всё такие неконкретные намётки заради флейма, но было бы интересно послушать мнения со стороны.


#1
(Правка: 10:26) 10:18, 25 фев. 2019

=A=L=X=
> Т.к. у меня, как и у многих из вас, был ZX Spectrum, то в качестве процессора я
> бы выбран Zilog Z80.
> Память разбил бы на 4 страницы по 16Кб каждая и чтобы в любой странице можно
> было выбирать на какой именно чипа памяти в 16Кб он маппится - чипы
> пронумерованы от 0 до 255, таким образом селектор страницы это байт и всего
> памяти может быть до 256*16Кб = 4 Мб. Это, имхо, за глаза. Более 1Мб ОЗУ даже
> смысла не вижу делать, в 8-битке страницы по большей части нужны для подкачки
> данных.
> Поэтому половина страниц зарезервирована под ПЗУ, вторая половина - под ОЗУ. 4
> первых страницы ПЗУ зарезервированы под встроенные в сам компьютер, правда что
> там так богато может быть пока даже не решил.
> Зато мне понравился принцип когда в специальный слот можно воткнуть картридж с
> дополнительным ПЗУ - хоть все оставшиеся страницы. Технически там может быть и
> ОЗУ, как в картриджах Денди, но в основном такое нужно под какой либо мощный
> софт.

Это всё (функционально, конечно же, про реализацию не смотрел подробно) уже есть в MSX и (вид с боку на те же яйцы) в SEGA Master System.  Ну разве что, старый чип графики надо выкинуть и поставить что-нибудь VGA подобное, но с аппаратными спрайтами. 

зы.
Зачем именно 8-бит, не очень понятно... чтобы горело пониже спины, когда надо что-нибудь 16/32-битное делить/умножать?  Какой-нибудь ARM/MIPS + ламповая графика со спрайтами + возможность запускаться с флешек - это, наверное, современный "8-бит" минимум.

#2
10:24, 25 фев. 2019

0iStalker
> уже есть

Ой да не сомневаюсь - тот же ZX Spectrum +2 ради совместимости с CP/M тоже мог свободно свитчить все 4 страницы произвольно, правда из-за необходимости совместимости порты были разбросаны коряво. Конечно принципиально нового тут придумать вряд ли чего то получится, но вот скомбинировать лучшие черты - про это и речь. Ту же видеопамять вот я думаю думаю я бы сделал в консольном стиле - с возможностью свободного скроллинга ввиду того, что места в VRAM есть под кратное степени двойки число знакомест. Это круто было даже при реализации плавного скроллинга обычного текста в редакторе.

#3
11:37, 25 фев. 2019

> ARM/MIPS
под MSP430 на АСМе писать одно удовольствие

#4
(Правка: 11:57) 11:55, 25 фев. 2019

0iStalker
> Зачем именно 8-бит, не очень понятно...

Тот же самый вопрос звучит в видео 8-bit-guy. Смысл затеи складывается из двух компонент - конечно же во первых ностальгия и аутентичность, а во вторых - минималистичный компьютер каждый аспект которого был бы максимально легко понятен человеку захотевшему разобраться как вообще работают компьютеры. Т.е. от и до - без каких то замысловатых DMA с очередями команд и разделением уровня привелегий по TLB-кешам дескрипторов виртуальных страниц защищённого режима ядра и прочей сломи-ногу-современности. Т.е. вот даже как учебное пособие.

#5
13:28, 25 фев. 2019

Чтo же вы со мною делаете, затейники!
Меня опять потянуло сдувать пыль со своего «x80»…
Видеоконтроллер к нему я тоже до сих пор не додумал…

#6
14:44, 25 фев. 2019

=A=L=X=
> Т.е. от и до - без каких то замысловатых DMA с очередями команд и разделением
> уровня привелегий по TLB-кешам дескрипторов виртуальных страниц защищённого
> режима ядра и прочей сломи-ногу-современности. Т.е. вот даже как учебное
> пособие.
от DMA не стоит отказыватся, крайне удобно для всяких потоковых штук типа звука, и даже видео по SPI на ЖКдисплей отправлять

#7
14:45, 25 фев. 2019

=A=L=X=
> 8-битный "компьютер мечты"
ARM+linux+пачка эмуляторов

#8
15:18, 25 фев. 2019

alexey.ch
> ARM+linux+пачка эмуляторов

Вот прям с третьей или четвёртой минут видео 8-bit-guy это же предложение отвергается.

#9
15:22, 25 фев. 2019

В общем немного помозговав я прихожу к выводу, что самая креативная задача - это видеочип.
Маппинги памяти и всякие звуковые чипы в принципе достаточно очевидны. А вот видеочип, уууу.... тут прямо мысли разбегаются.
Хочется чтобы не хуже чем в денди конечно, но и копировать её подход не хочется.
Чтобы по 32Кб на видеопамять тоже и жирно и неподьёмно для обработки процессором.
В общем надо думать.

Tonal
> от DMA не стоит отказыватся

Возможно, возможно. У SNES был забавный трюк с DMA, позволяющий за время HBlank графику подкручивать без участия процессора реализуя кучу эффектов. Но чтобы всё равно было просто и понятно.

#10
16:40, 25 фев. 2019

=A=L=X=
Укaжи, пожалуйста, в заголовке название архитектуры…

#11
17:51, 25 фев. 2019

Сделай мультипроцессорность.

#12
23:02, 25 фев. 2019

=A=L=X=
> а какую архитектуру вот я бы посчитал целесообразной в 8-битном компьютере если
> бы его можно было сделать с нуля?
Сделать с нуля довольно проблемно, а вот сделать самому ЭМУЛЯТОР восьмибитника мечты совсем не сложно.

#13
1:25, 26 фев. 2019

=A=L=X=
можно на компьютере смоделировать, в виде некоторого количества "двухсторонних" массивов m*n
на которые можно помещать элементы, делать не пересекающие связи между точками и т.п.
мне кажется такое могло бы быть интересно, особенно если 3Д визуализацию какую-нибудь замутить

хотя это посути тот же майнкрафт получается

#14
6:24, 26 фев. 2019

Alikberov
> Укaжи, пожалуйста, в заголовке название архитектуры…

Так смысл в том, чтобы её выдумать же.

Mikle
> Сделать с нуля довольно проблемно

Выдумать сперва надо. Тема даже не про то чтобы сделать (хотя это является задачей 8-bit-guy), а хотя бы просто придумать.

mitroxa
> можно на компьютере смоделировать

Угу, но сперва придумать надо.

Страницы: 1 2 320 21 Следующая »
ФлеймФорумЖелезо