Бинго! Тем более, переключать собрался статичные банки. Программно все удобнее, нежели дипсвичи пальчиками тыркать, правильно?Lavr wrote:Чтобы уменьшить число соединительных проводников... обычно...Shaos wrote:зачем создавать извратомонстра, где обычная память адресуется последовательно?
ShaosBox для ZX
Moderator: Shaos
-
- Banned
- Posts: 2139
- Joined: 20 Mar 2005 13:41
- Location: От туда
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
ну в данном конкретном случае дипсвич нужен, чтобы указать с какого образа бутать комп - если после бута надо ещё программулину на экран выводить, в которой надо выбрать ручками с чего пускаться, то это надо ещё программу писать и одна банка 16К уже под эту программу будет отведена...HardWareMan wrote:Бинго! Тем более, переключать собрался статичные банки. Программно все удобнее, нежели дипсвичи пальчиками тыркать, правильно?Lavr wrote:Чтобы уменьшить число соединительных проводников... обычно...Shaos wrote:зачем создавать извратомонстра, где обычная память адресуется последовательно?
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Схема (добавил кнопку RESET):Shaos wrote:А пока есть время - собрал первый прототип ромулуса на жёлтой плате:Shaos wrote:Добавил светодиоды и переключатель для установки стартовой страницы, а также переразвёл плату вручную:Shaos wrote:В пзуху можно прошить два IF2 рома (можно переключатель установить) или один сжатый SNA (любой 48К) с простым копировщиком - аналогично вот этому:Shaos wrote:А чего её смотреть-то? Пайка как пайкаMC68k wrote:шустро. пайку-то покажи
Вторая спектрум-плата:
Это двухстраничный заменитель рома спектрума - туда можно игры из IF2-картриджей прошивать ну или OpenSE бейсик от Owen-a![]()
http://trastero.speccy.org/cosas/droy/z ... cart_e.htm
Только одна игра за раз и без IF2-посредника. Потом можно ещё парочку светодиодов присобачить, показывающих подключенность рома и второй страницы.
P.S. SNA-заливалка может стартовать из любой страницы - она при старте переключится в первую (ручной переключатель стартовой страницы действует только в момент ресета, чтобы триггер страницы сбросить в нужное состояние, а потом программно можно какую угодно страницу выставить не взирая на положение переключателя).
По ходу дела поправил пару косячков и добавил два светодиода и ручной переключатель стартовой странички, чтобы протоип соответствовал более позднему "зелёному" дизайну:
Прошил первую половинку 32К OpenSE басик от Овена, а во вторую - шахматы с картриджа - и всё работает![]()

Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
По идее "speccy romulus 32K" уже можно использовать для распостранения платного софта 
P.S. Хотя можно на двух вот таких епромах построить совсем простой (и дешёвый) заменитель рома, который можно будет программировать прямо на спектруме!
P.P.S. Его даже можно обозвать "speccy remus 16K" в противовес ромулусу

P.S. Хотя можно на двух вот таких епромах построить совсем простой (и дешёвый) заменитель рома, который можно будет программировать прямо на спектруме!
P.P.S. Его даже можно обозвать "speccy remus 16K" в противовес ромулусу

Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
BOM: 2 x 28C64, 74LS32, 74LS00 (всё в соиках)Shaos wrote:По идее "speccy romulus 32K" уже можно использовать для распостранения платного софта
P.S. Хотя можно на двух вот таких епромах построить совсем простой (и дешёвый) заменитель рома, который можно будет программировать прямо на спектруме!
P.P.S. Его даже можно обозвать "speccy remus 16K" в противовес ромулусу
как бесплатное дополнение - опциональная NMI кнопка подключённая через триггер и кондёр с диодом (будет работать корректно только если ром картриджа подключен к памяти спектрума и там есть поддержка NMI по адресу #0066 - там например можно держать универсальное меню с сохранялками-загружалками)
варианты сборки:
1) speccy remus 8K - одна EEPROM (вторая 28C64 и 74LS00 не припаивются)
2) speccy remus 16K - две EEPROM с запрещённой записью (входы WR подтянуты к +5В)
3) speccy remus 8K+8K/RW - вторая EEPROM может быть перезаписана прямо на спектруме (только один вход WR подтянут к +5В)
4) speccy remus 16K/RW - обе EEPROM могут быть перезаписаны прямо на спектруме
первые 2 варианта предназначены для распостранения софта - с приклеенной сверху картинкой (чтобы выглядело как картридж) - юзер при желании может сам припаять разрешение WR и перезаписать содержимое
P.S. распостранять софт можно так - будут продаваться картриджи (три ценовые категории в зависимости от сложности игры - часть выручки с продаж пойдёт авторам) и в то же время можно скачать образ рома (если автор опенсорцник, то ещё и сырцы) и любой человек может сделать себе "клон" - вобщем как-то так...
P.P.S. большой плюс таких картриджей - возможность сохраняться прямо на картридж (в варианте 8K+8K/RW) - т.е. картридж может помнить состояние игры после выключения!
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
хотя наверное кнопка NMI тут всё таки лишняя, а свободные 2 гейта NAND можно использовать как генераторы логической "1" для запрещения записи в EEPROM-ы - тогда можно на плате держать джамперы которые будут разрешать-запрещать запись в каждую EEPROM независимо друг от друга (подключая вход WR каждой EEPROM к "1" либо к MWR = MREQ or WR)Shaos wrote:как бесплатное дополнение - опциональная NMI кнопка подключённая через триггер и кондёр с диодом (будет работать корректно только если ром картриджа подключен к памяти спектрума и там есть поддержка NMI по адресу #0066 - там например можно держать универсальное меню с сохранялками-загружалками)
P.S. а вот кнопка RESET тут бы не помешала...
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Хотел было на мелкой CMOS логике, но похоже будет тяжеловасто - видимо первую версию сделаю на пиковском микроконтроллере - можно взять большой 40-ногий PIC16F871 у которого есть параллельный слейв порт, который можно повесить на записть и чтение по адресу #1F (Kempston на чтение и просто байт на запись). Свободные порты пика настроить на вывод записываемого в порт байта скажем на 2 семисегментных индикатора в HEX-виде...Shaos wrote: В ближайших планах - сделать NES/SNES-адартер (раз уж пообещал уже на WOS-е) - назвать его скажем speccy snes2kemp...
P.S. Видимо буду делать как и предполагал:
Дополнительные кнопки никуда не пойдут - разве что только на индикацию. Индикация представляет из себя 2 семисегментных индикатора, куда будет рисоваться посланный в порт #1F байт либо последняя нажатая кнопка джойстика (для теста). На борту пика есть 64 байта EEPROM, которые можно задействовать для сохранения игровой информации, например путём посылания какой-то хитрой последовательности байтов в порт #1F и чтения байта обратно из порта кемпстона (того же #1F)...Shaos wrote:Вобщем ежели ставить универсальный 9-пиновый разъём, способный работать как в режиме NES/SNES, так и "Multisystem", то раскладка будет такой:
1 - NC or UP (делаем всегда UP)
2 - DATA or DOWN *
3 - LATCH or LEFT *
4 - CLOCK or RIGHT *
5 - NC or BUTTON3 (делаем всегда BUTTON3)
6 - POWER or BUTTON1 *
7 - NC or POWER (делаем всегда POWER)
8 - GROUND or GROUND (делаем всегда GROUND)
9 - NC or BUTTON2 (делаем всегда BUTTON2)
Звёздочкой помечены 4 случая, когда назначение сигнала меняется в зависимости от того, какой джойстик воткнут. Представим, что у нас будет 4 переключателя (или джампера), которыми можно будет менять назначение этих сигналов. Кроме того на плате будет место под NES-разъём и SNES-разъём - главное чтобы юзер туда одновременно 3 джойстика не втыкал.
Кнопки джойстиков на порт #1F (Kempston) замаплены так ("1" означает, что нажато):
bit 7 - BUTTON2 (MULTI) or B (NES) or Y (SNES) - левая лицевая кнопка на NES/SNES
bit 6 - 0 (MULTI) or START (NES/SNES)
bit 5 - BUTTON3 (MULTI) or SELECT (NES/SNES)
bit 4 - BUTTON1 (MULTI) or A (NES) or B (SNES) - правая лицевая кнопка на NES и нижняя лицевая на SNES (главная)
bit 3 - UP (MULTI/NES/SNES)
bit 2 - DOWN (MULTI/NES/SNES)
bit 1 - LEFT (MULTI/NES/SNES)
bit 0 - RIGHT (MULTI/NES/SNES)
Дополнительные кнопки SNES-контроллера (читаются через AY в режиме отключённого принтера):
AYB4 - A (правая кнопка из четырёх лицевых)
AYB5 - X (верхняя кнопка из четырёх лицевых)
AYB6 - L (левое плечо)
AYB7 - R (правое плечо)
P.S. Расположение второй и третьей кнопки в порту кемпстона #1F позаимствовано отсюда
Наименование продукта - speccy snesjoy v1
P.P.S. Можно предусмотреть возможность перепрограммирования пика со спека - тогда он вполне может выполнять роль сопроцессора, правда при этом придётся поставить кварц на 20 МГц, чтобы работал на полную мощь

P.P.P.S. А ещё можно опционально заюзать АЦП и последовательный порт этого пика...
P.P.P.P.S. Примерные прикидки по себестоимости при небольшом производстве:
PCB - ориентировочно 3 доллара (Китай)
ZX коннектор - ориентировочно 25 центов
NES или SNES коннектор - ориентировочно 2 доллара
D-Sub 9-пиновый папа коннектор - $0.50 (для мультисистемных джойстиков и фамиклонов)
PLCC44 сокет - $1.18
PIC16F871 в PLCC - $4.45
74HCT00 - $0.26
74HCT4075 - $1.29
2 x 0.1 uF - $0.50
2 x 7-сегментных индикатора - $1.90
2 x резисторные сборки - $0.96
переключатель - $0.37 (выбирает Multisystem или NES/SNES)
Итого - $16.66
Плюс пересылка долларов 10 и на непредвиденные расходы добавить - тридцатку как минимум надо за такой девайс брать...
Last edited by Shaos on 21 Sep 2013 18:57, edited 11 times in total.
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
купил парочку SD-адаптеров на ебее по смешным ценам - фотки позжеShaos wrote:понятно - с китайской ценовой политикой бороца бесполезно - придётся покупать готовыйMC68k wrote:на ибенях спаянный "$3 free shipping"Shaos wrote: P.S. Кстати идея - адаптер с этой SD-карточко-держалки на бредборду
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Retired
- Posts: 1328
- Joined: 25 Jul 2011 00:14
- Location: WWW
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
-
- Retired
- Posts: 1328
- Joined: 25 Jul 2011 00:14
- Location: WWW
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Чего-то передумал я делать горизонтальный дизайн - буду делать вертикальный.
Причём продолжение для втыкания следующих девайсов будет присоединяемое - по аналогии вот с этим:
http://www.worldofspectrum.org/forums/s ... hp?t=43893
но втыкаемым будет не мама, а папа...
P.S. И потом наверное сделаю возможным вырезать из этой платы универсальную платку с PIC16F871 по типу nedoCPU-16
Причём продолжение для втыкания следующих девайсов будет присоединяемое - по аналогии вот с этим:
http://www.worldofspectrum.org/forums/s ... hp?t=43893
но втыкаемым будет не мама, а папа...
P.S. И потом наверное сделаю возможным вырезать из этой платы универсальную платку с PIC16F871 по типу nedoCPU-16
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Admin
- Posts: 24011
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Задумал было конвертер из ZXBus в NemoBus, а jameco.com перестало торговать дешёвыми IBM-овскими коннекторами 31/62 - остался только digikey.com со своими недецкими ценами:
http://www.digikey.com/product-detail/e ... -ND/210777
P.S. Хотя вот нашёл подешевле:
http://www.electronicsurplus.com/Item/4 ... 421021-31/
http://www.digikey.com/product-detail/e ... -ND/210777
P.S. Хотя вот нашёл подешевле:
http://www.electronicsurplus.com/Item/4 ... 421021-31/
Я тут за главного - если что шлите мыло на me собака shaos точка net