ShaosBox для ZX

Старый спектрумистский форум

Moderator: Shaos

User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Ну какой же это нафик ZXBUS? Кулибины блин :evil:
zxbus.png
http://zx.pk.ru/showpost.php?s=4f4f803b ... ostcount=3

Только из-за одного этого косяка на советских клонах не будет работать подавляющее большинство спектрумовской периферии...

P.S. http://zx-pk.ru/archive/index.php/t-5623.html
Caro: Самое интересное, что в фирменном Спектруме именно /CSROM выведенный на A25, реализован как /RDROM, которого там нет..
KOE: В КАЯх и Скорпионах почему то сделали не так :)
Black_Cat: Наверно всёж стоит ориентироваться на спецификацию NemoBus как стандарта де факто на территории СССР, а не на оригинальную шину ZX Bus и всё делать именно в соответствии с NemoBus спецификациями. Разброд и шатание в стандартах не способствуют популяризации платформы, поэтому отклонения от спецификаций NemoBus должны оцениваться как ошибки проектирования и устраняться. Это непреложное правило стандартизации и моё имхо тоже :) .
О как - оригинальные спектрумы ошибочно спроектированы и должны быть устранены :o
Правильно Caro написал: пора уже вместо "Speccy - наш выбор" написать "Пентагон - наш выбор" :evil:
You do not have the required permissions to view the files attached to this post.
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Shaos wrote:Image
.....
Может добавить снизу ряд контактов NemoBus и барыжить этим на zx.pk.ru? ;)

P.S. Причём соединить только совместимые контакты (помеченные звёздочкой):

Code: Select all

 1 - * A15 | A14 *
 2 - * A13 | A12 *
 3 - *  D7 | +5V *
 4 -    NC | +9V - у NemoBus тут BLK (CSDS) и DOS (DCDOS)
 5 -  разделитель - у NemoBus справа тут 14MHz (Kay) или +12V (Scorpion), а слева в ZX-Evo обрзначено как TURBO, но никуда не подключено
 6 - *  D0 | GND *
 7 - *  D1 | GND * 
 8 - *  D2 | CLK * - у NemoBus тут тоже 3.5MHz, но не CLK, а /RAS (Scorpion) 
 9 - *  D6 | A0  *
10 - *  D5 | A1  *
11 - *  D3 | A2  *
12 - *  D4 | A3  *
13 - ? INT | IORQGE * - у NemoBus слева стоит прочерк (но INT в ZX-Evo)
14 - * NMI | GND *
15 - ?HALT | VIDEO - у NemoBus тут прочерк (но HALT в ZX-Evo) и RDR (CSROMCE)
16 - *MREQ | Y - у NemoBus справа тут RS (BIT_4 OF #7FFD)
17 - *IORQ | V - у NemoBus справа тут "not used"
18 - *  RD | U - у NemoBus справа тут "not used"
19 - *  WR | BUSRQ*
20 -   -5V | RESET* - у NemoBus слева тут "not used"
21 - *WAIT | A7  *
22 - ?+12V | A6  * - у NemoBus слева тут "not used", т.е. теоретически можно подцепить +12V от 29B
23 - 12VAC | A5  * - у NemoBus слева тут "not used"
24 - *  M1 | A4  *
25 - *RFSH | ROMCS*
26 - *  A8 | BUSACK*
27 - * A10 | A9  *
28 -    NC | A11 * - у NemoBus тут слева "not used" или +5V (Kay)
29 - отсутствует - у NemoBus тут +12V (Kay) и +5V (Kay)
30 - отсутствует - у NemoBus тут GND и GND
в ZX-Evo есть ещё 31-я пара (видимо для того чтобы ISA-шные разъёмы ставить), и туда даже что-то подключено...
Возможный переходник с ZX-BUS на NEMOBUS:

6 right & 7 right (GND) -> 30 left & 30 right (GND) & 16 right (RS) ???
3 right (+5V) -> 28 left & 29 right (+5V)
4 right (+9V) -> NOT CONNECTED
22 left (+12V) -> 29 left (+12V)
25 right (ROMCS) -> 15 right (RDR / CSROMCE)
A14 | A15 | MREQ -> 4 right (DOS / DCDOS) - NemoIDE им пользуется например
Тоже самое можно подать на 25 right (ROMCS) NemoBus, где оно используется только на ввод информации о выборе рома

Остаются неподключенными BLK (CSDS), TURBO, 14 МГц и на RS всегда будет идти 0

Возможный переходник с NEMOBUS на ZX-BUS:

29 left (+12V) -> 22 left (+12V)
15 right (RDR / CSROMCE) -> 25 right (ROMCS)

Остаются неподключенными +9V, -5V, 12VAC (или -12V) и VIDEO/Y/V/U (подать на них землю?)

P.S. Я смотрю NeoGS использует обе ноги ROMCS (в советских клонах это вход) и CSROMCE (а это выход отключения внутреннего пзу) - надо понять как разрулить эту фигню...
Last edited by Shaos on 27 Sep 2013 06:21, edited 5 times in total.
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
MC68k
Retired
Posts: 1328
Joined: 25 Jul 2011 00:14
Location: WWW

Post by MC68k »

скорее речь о том, что лучше два стандарта(ZX original и NemoBus), чем тысячи разных от "именитых производителей".

меня больше привлекает ZX original. внезапно пентагон-48 /ROMCS :3
User avatar
HardWareMan
Banned
Posts: 2139
Joined: 20 Mar 2005 13:41
Location: От туда

Post by HardWareMan »

MC68k wrote:скорее речь о том, что лучше два стандарта(ZX original и NemoBus), чем тысячи разных от "именитых производителей".

меня больше привлекает ZX original. внезапно пентагон-48 /ROMCS :3
Ну там же весь смак в управлении OE сигналом. НО зато сколько там тёплых ламповых КТ315-х и перемычек! :3
User avatar
MC68k
Retired
Posts: 1328
Joined: 25 Jul 2011 00:14
Location: WWW

Post by MC68k »

что не так? при обращении к памяти включаем ПЗУ, а вывод разрешаем, когда A14&A15=0

КТ315 то да - адово наследие светлого прошлого.
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Shaos wrote:Возможный переходник с NEMOBUS на ZX-BUS:

29 left (+12V) -> 22 left (+12V)
15 right (RDR / CSROMCE) -> 25 right (ROMCS)

Остаются неподключенными +9V, -5V, 12VAC (или -12V) и VIDEO/Y/V/U (подать на них землю?)

P.S. Я смотрю NeoGS использует обе ноги ROMCS (в советских клонах это вход) и CSROMCE (а это выход отключения внутреннего пзу) - надо понять как разрулить эту фигню...
Вот примерно так будет выглядеть переходник с NemoBus на ZXBus:

Image

Контактные площадки опять нарисовались ширше чем они есть на самом деле...
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Shaos wrote:
Shaos wrote:
MC68k wrote:
Shaos wrote: P.S. Кстати идея - адаптер с этой SD-карточко-держалки на бредборду :)
на ибенях спаянный "$3 free shipping"
понятно - с китайской ценовой политикой бороца бесполезно - придётся покупать готовый ;)
купил парочку SD-адаптеров на ебее по смешным ценам - фотки позже
а вот и фотка:

Image

они всё ещё соединены вместе - надо разломать...
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Shaos wrote:Вот сделал ещё такую платку:

Image
Через четыре месяца дошли руки сфоткать вживую :)

Image

http://nedopc.org/nedopc/zx/files/speccybb1-eagle.zip (251K)

P.S. До кучи сделал общую картинку - пояснялку:

Image

P.P.S. Пропеарился на зх-пк-ру :)
http://zx.pk.ru/showthread.php?t=21704&page=2
Last edited by Shaos on 21 Sep 2014 19:50, edited 1 time in total.
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Заметки на полях: Найти время дособирать клона "Interface-007" и проверить его в работе, а потом отписаться вот тут:

http://www.worldofspectrum.org/forums/s ... 35&page=10

P.S. worldofspectrum.org страшно тормозит...
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Shaos wrote:
Shaos wrote:Вот сделал ещё такую платку:

Image
Через четыре месяца дошли руки сфоткать вживую :)

Image

http://nedopc.org/nedopc/zx/files/speccybb1-eagle.zip (251K)

P.S. До кучи сделал общую картинку - пояснялку:

Image

P.P.S. Пропеарился на зх-пк-ру :)
http://zx.pk.ru/showthread.php?t=21704&page=2
Выложил на Tindie и пропиарился на WoS:

Image
Last edited by Shaos on 07 Feb 2015 02:35, edited 1 time in total.
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Отправил бредборду в Финляндию в пупырчатом конверте в этот понедельник самым дешёвым способом и она была получена адресатом сегодня в пятницу - на ПЯТЫЙ день! :o
Я тут за главного - если что шлите мыло на me собака shaos точка net
jdigreze
God
Posts: 1388
Joined: 02 Jan 2006 02:28
Location: Abakan

Post by jdigreze »

А мне из Москвы посылка с химией уже неделю едет, никак не доедет :(
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: speccy romulus 32K

Post by Shaos »

Shaos wrote:
Shaos wrote:
Shaos wrote:
Shaos wrote:
Shaos wrote:Вторая спектрум-плата:

Image

Это двухстраничный заменитель рома спектрума - туда можно игры из IF2-картриджей прошивать ну или OpenSE бейсик от Owen-a ;)
В пзуху можно прошить два IF2 рома (можно переключатель установить) или один сжатый SNA (любой 48К) с простым копировщиком - аналогично вот этому:

http://trastero.speccy.org/cosas/droy/z ... cart_e.htm

Только одна игра за раз и без IF2-посредника. Потом можно ещё парочку светодиодов присобачить, показывающих подключенность рома и второй страницы.
Добавил светодиоды и переключатель для установки стартовой страницы, а также переразвёл плату вручную:

Image

P.S. SNA-заливалка может стартовать из любой страницы - она при старте переключится в первую (ручной переключатель стартовой страницы действует только в момент ресета, чтобы триггер страницы сбросить в нужное состояние, а потом программно можно какую угодно страницу выставить не взирая на положение переключателя).
А пока есть время - собрал первый прототип ромулуса на жёлтой плате:

Image

По ходу дела поправил пару косячков и добавил два светодиода и ручной переключатель стартовой странички, чтобы протоип соответствовал более позднему "зелёному" дизайну:

Image

Прошил первую половинку 32К OpenSE басик от Овена, а во вторую - шахматы с картриджа - и всё работает :rotate:

Image

Image
Схема (добавил кнопку RESET):

Image
Вот с этой платой я в своё время (октябрь 2013) застрял, т.к. выяснилась неприятная деталь - куча спектрумовского софта пишет в область ПЗУ (и игры, и собственно сам бейсик), а я путём записи туда как бы странички ПЗУ переключаю - вобщем вот мой "репорт" от октября 2013, который я постил тогда на WoS:
I've just modified FUSE sources a little (to print warning every time when program is trying to write into the ROM) and run simple test in it - BASIC writes to #0000,#0001,#0002,#0003,#0004 different values every time when basic line is added to the program, but not during actual program execution, so technically my board is safe for games, but not safe for BASIC programming...

.....................................

I added 1 line at the end of function writebyte_internal in memory.c:

Code: Select all

if(!mapping->writable) printf("WARNING: Write #%2.2X to ROM address #%4.4X\n",b,address);
And when I add 10 PRINT "hello" in FUSE it prints this:

Code: Select all

WARNING: Write #00 to ROM address #0000
WARNING: Write #00 to ROM address #0001
WARNING: Write #00 to ROM address #0002
WARNING: Write #00 to ROM address #0003
WARNING: Write #00 to ROM address #0004
WARNING: Write #00 to ROM address #0000
WARNING: Write #00 to ROM address #0001
WARNING: Write #01 to ROM address #0002
WARNING: Write #00 to ROM address #0003
WARNING: Write #00 to ROM address #0004
WARNING: Write #80 to ROM address #0000
WARNING: Write #00 to ROM address #0001
WARNING: Write #00 to ROM address #0002
WARNING: Write #00 to ROM address #0003
WARNING: Write #00 to ROM address #0004
WARNING: Write #81 to ROM address #0000
WARNING: Write #49 to ROM address #0001
WARNING: Write #0F to ROM address #0002
WARNING: Write #DA to ROM address #0003
WARNING: Write #A2 to ROM address #0004
WARNING: Write #00 to ROM address #0000
WARNING: Write #00 to ROM address #0001
WARNING: Write #00 to ROM address #0002
WARNING: Write #00 to ROM address #0003
WARNING: Write #00 to ROM address #0004
WARNING: Write #00 to ROM address #0000
WARNING: Write #00 to ROM address #0001
WARNING: Write #01 to ROM address #0002
WARNING: Write #00 to ROM address #0003
WARNING: Write #00 to ROM address #0004
WARNING: Write #80 to ROM address #0000
WARNING: Write #00 to ROM address #0001
WARNING: Write #00 to ROM address #0002
WARNING: Write #00 to ROM address #0003
WARNING: Write #00 to ROM address #0004
WARNING: Write #81 to ROM address #0000
WARNING: Write #49 to ROM address #0001
WARNING: Write #0F to ROM address #0002
WARNING: Write #DA to ROM address #0003
WARNING: Write #A2 to ROM address #0004
WARNING: Write #00 to ROM address #0000
WARNING: Write #00 to ROM address #0001
WARNING: Write #00 to ROM address #0002
WARNING: Write #00 to ROM address #0003
WARNING: Write #00 to ROM address #0004
WARNING: Write #00 to ROM address #0000
WARNING: Write #00 to ROM address #0001
WARNING: Write #01 to ROM address #0002
WARNING: Write #00 to ROM address #0003
WARNING: Write #00 to ROM address #0004
WARNING: Write #80 to ROM address #0000
WARNING: Write #00 to ROM address #0001
WARNING: Write #00 to ROM address #0002
WARNING: Write #00 to ROM address #0003
WARNING: Write #00 to ROM address #0004
WARNING: Write #81 to ROM address #0000
WARNING: Write #49 to ROM address #0001
WARNING: Write #0F to ROM address #0002
WARNING: Write #DA to ROM address #0003
WARNING: Write #A2 to ROM address #0004
WARNING: Write #00 to ROM address #0000
WARNING: Write #00 to ROM address #0001
WARNING: Write #00 to ROM address #0002
WARNING: Write #00 to ROM address #0003
WARNING: Write #00 to ROM address #0004
WARNING: Write #00 to ROM address #0000
WARNING: Write #00 to ROM address #0001
WARNING: Write #01 to ROM address #0002
WARNING: Write #00 to ROM address #0003
WARNING: Write #00 to ROM address #0004
WARNING: Write #80 to ROM address #0000
WARNING: Write #00 to ROM address #0001
WARNING: Write #00 to ROM address #0002
WARNING: Write #00 to ROM address #0003
WARNING: Write #00 to ROM address #0004
WARNING: Write #81 to ROM address #0000
WARNING: Write #49 to ROM address #0001
WARNING: Write #0F to ROM address #0002
WARNING: Write #DA to ROM address #0003
WARNING: Write #A2 to ROM address #0004
P.S. I tested TAP-version of Tomahawk in modified FUSE and it looks like this game doesn't write into ROM area

P.P.S. Exolon massively writes into ROM area different values in addresses from #0000 to #01F3

P.P.P.S. Buzzsaw is also writing into ROM (#0000 and #0001)...

.........

Basically solution is to lock switching trigger (until next RESET) after the board switched to BASIC to prevent switching back to external ROM when some game is accidentally writing into ROM area...
Суть "фикса" - отключаем один из входов ИЛИ IC4A (нога 1 - та что идёт на A12) и подключаем его к выходу триггера IC3A, где сидит 0 если спектрум юзает ПЗУ картриджа (нога 5) - после этого переключение обратно в бейсик запретит дальнейшую подмену ПЗУ, ну и декодироваться теперь будет 000xxxxx xxxxxxxx вместо 0000xxxx xxxxxxx (т.е. теперь условие декода будет ADR<0x2000 вместо ADR<0x1000)...
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: ShaosBox для ZX16K

Post by Shaos »

Исправил и сразу же заказал десяток у китайцев - для зелёных двухслоек такого размера получилось чуть меньше $3 за платку:





http://nedopc.org/nedopc/zx/files/speccyr32-eagle.zip (341KB)
Я тут за главного - если что шлите мыло на me собака shaos точка net