Вход

Просмотр полной версии : ZX+hardware FAQ



jtn
28.01.2005, 19:12
Есть идея сделать сабж. Кто-нибудь задавайте вопросы.

CHRV
31.01.2005, 17:18
Есть идея сделать сабж. Кто-нибудь задавайте вопросы.
Да я тоже давно задавался такой мыслей.
Во первых классификацию устройств надо завести. С базовым описанием для чего оно предназначено. Стандарт портов и небольшое описание.
В принципе все это можно сложить в файлик и получить очень неплохую книжицу.

breeze
13.02.2005, 02:31
Да я тоже давно задавался такой мыслей.
Во первых классификацию устройств надо завести. С базовым описанием для чего оно предназначено. Стандарт портов и небольшое описание.
В принципе все это можно сложить в файлик и получить очень неплохую книжицу.

я думаю это можно сдалать ввиде темы прикрепленной сверху, ну и реадонли, а то быстро превратят во флемообоборот :( а вот дополнения (толковые) можно и в личку прислать. :rolleyes:

fan
15.02.2005, 01:56
Стандарты на "4 метра"??? Порты??? Биты???

Ктонить это реализовывал? Софт был? Если был, то какой?

(Хотел в гредущем повозиться с DMA USC, в очень далёком гредущем...)

jtn
15.02.2005, 07:00
Стандарты на "4 метра"??? Порты??? Биты???

Ктонить это реализовывал? Софт был? Если был, то какой?


был Test4.31 в нем какой-то есть стандарт до 2mb вроде. А вообще моя разработка (не претендующая на стандарт, чисто для ознакомления)

Описание Flash Bios controller. (c) J7n/4D 2000-2001


1. Состав: порты (тоько запись) #7ffb, #fffb, flash 128k, триггер
отключения ПЗУ, схема модификации адреса окна проецирования страниц.

2. Схема позволяет управлять банками ПЗУ (flash 128k), ОЗУ - вне
зависимости от портов #7ffd и #dffd, менять адрес окна проецирования
страниц: #c000/#4000, отключать ПЗУ, отключать порт #dffd, биты 6,7
порта #7ffd, включать альтернативные экраны.

3. Распределение ПЗУ (имеем 8 банков по 16к):
банк: 0 1 2 3 4 5 6 7
содержимое: Bios+RD TrDos 128Bas 48Bas RD RD RD RD
Замечание: RD-RomDisk, 128Basic может быть заменен на RomDisk.

4. Доступ к портам изменения конфигурации: in a,(#fc) - включить,
in a,(#fe) выключить.

5. Порт #fffb (можно использовать #fb с установленным 7 битом в регистре A).
Содержит номер банка ОЗУ. По Reset и при включении питания не
инициализируется! Соответствие битов номеров страниц:

порт #dffd: 7 6 5 4 3 2 1 0 плюс 3 мл. бита #7ffd
(Profi 1Mb) ? ? ?
????????????? ?
? ?????????????
? ? ???????
? ? ?
порт #7ffd: 7 6 5 4 3 2 1 0
(Pentagon 1Mb) ? ? ? ? ? ?
? ??????? ? ? ?
??????? ? ? ? ?
? ? ? ? ? ?
порт #fffb: 7 6 5 4 3 2 1 0
(Altern. 1Mb)

6. Порт конфигурации - #7ffb. По RESET инициализируется: %01000000.
Описание битов:
биты 7,6 - в совокупности с 4м битом порта #7ffd задают номер банка ROM.
(7й - старший бит, 4й - младший). Однако, для того, чтобы активизировать
TrDos, необходима зависимость бита 6 от сигнала DOS. В связи
с этим, в случаях когда, бит 6 не используется для переключения банков Rom
диска он должен быть установлен в 1, а бит 7 в ноль! (что и делается по Reset).
Из этого следует, что можно использовать короткую адресацию этого порта
с маской в рег А - #40;
бит 5 - отключает (если не включен порт #dffd) биты 6,7 порта #7ffd
(0 - выкл, 1 - вкл);
бит 4 - отключает порт #dffd и включает 6,7 биты #7ffd;
Таким образом, используя 4 и 5 биты возможны следующие конфигурации:
%xx00xxxx - ZX Spectrum 128/256 (бит 5 #7ffd не маскируется)
%xx01xxxx - Profi 1024
%xx10xxxx - Pentagon 1024
%xx11xxxx - Profi 1024, т.е. бит 4 является приоритетным.
биты 3,2 - при равенстве обоих 0, имеем конфигурацию, заданную битами 4,5,
но если хотя бы один (3 или 2 или оба) не равен 0, то образуют вместе с
битами порта #fffb номер страницы верхней памяти (64-255);
бит 1 - Все сказанное выше про биты 2 и 3 справедливо только если процессор
обащается к окну проецирования страниц, заданному битом 1 (при значении
0 - окно #c000-#ffff, при значении 1 - окно #4000-#7fff).
бит 0 - при установке в 1 на экране вместо страниц 5 и 7 отображаются
страницы #45 и #47 (абсолютная адресация).
Поясню на примере:
Необходимо перекинуть 16к из страницы #3A (Profi) в #87 (абс.):
DI:IN A,(#FC)
LD BC,#DFFD:LD A,#07:OUT (C),A
LD B,#7F:LD A,#12:OUT (C),A ;ПРОФИНСКИЙ БАНК #3A
LD A,#80+7:OUT (#FB),A ;МЛАДШИЕ БИТЫ НОМЕРА БАНКА
LD A,%01111010:OUT (#FB),A ;ОКНО #4000
; ^^ СТАРШИЕ БИТЫ НОМЕРА БАНКА
LD HL,#C000:LD DE,#4000:LD BC,#4000:LDIR
LD A,%01110000:OUT (#FB),A ;ДЕАКТИВИЗИРУЕМ АЛЬТЕРНАТИВНУЮ
;АДРЕСАЦИЮ
IN A,(#FE) ;ЗАПРЕТ ЗАПИСИ В #XXFB
Пример показывает, что можно сразу использовать как обычную адресацию
страниц (по #7ffd/#dffd), так и альтернативную. При этом отображаться
на экране будет не #87 страница, которая включается в окно #4000-#7fff, а по
прежнему страница #15. Аналогично данному примеру страницы можно переключать
по #7ffd (биты 7,6,5), если включить режим адресации Пентагона (сбросить
бит 4 перед записью в #7ffb).

7. Еще одной возможностью данной схемы является отключение ПЗУ.
Отключение происходит _только_ по сигналу NMI, т.е. по нажатию
Magic кнопки и включается по RESET или при выполнении любой команды
по адресу, старшему #3fff. Во время отключения ПЗУ подключается
страница с абсолютным номером #40.
Пример установки нового обработчика NMI:
DI:IN A,(#FC)
LD A,#80:OUT (#FB),A
LD A,%01111000:OUT (#FB),A
LD HL,NMI_BEG:LD DE,#C066
LD BC,NMI_LEN:LDIR
LD A,%01110000:OUT (#FB),A
IN A,(#FE)
RET
NMI_BEG
.PHASE #0066
LD (STACK),SP
PUSH AF
etc...

.UNPHASE
NMI_LEN EQU $-NMI_BEG

diver
15.02.2005, 08:23
был Test4.31 в нем какой-то есть стандарт до 2mb вроде. А вообще моя разработка (не претендующая на стандарт, чисто для ознакомления)

Описание Flash Bios controller. (c) J7n/4D 2000-2001

Васяня, кончай бескультурничать. прикрепляй аттачем тексты.

jtn
15.02.2005, 19:33
Васяня, кончай бескультурничать. прикрепляй аттачем тексты.
я тя щас удалю и забаню %) кому надо и так поняли

Shiru
15.04.2005, 07:19
Случайно наткнулся тут - схема гигаскрина, почему-то на забугорном сайте, но на русском языке. Наверное, из fido взяли. Вобщем, мало-ли кому надо...

http://zxspectrum.hal.varese.it/gigascreen.txt

ukms[z]
15.04.2005, 13:35
какова на сегодняшний день ситуёвина с модемами ? v90 ? v92 ?
как программируются ? порты ? софт ?

CHRV
15.04.2005, 14:18
']какова на сегодняшний день ситуёвина с модемами ? v90 ? v92 ?
как программируются ? порты ? софт ?
Кондратьевский стандарт наверно самый распространенный!

ukms[z]
15.04.2005, 14:51
Кондратьевский стандарт наверно самый распространенный!
:smile: ты знаешь, мне это ничего не говорит. :)
доку хочу.

Costa
15.04.2005, 19:16
А вообще моя разработка (не претендующая на стандарт, чисто для ознакомления)

Описание Flash Bios controller. (c) J7n/4D 2000-2001
Саму схемку кинь плиз.

jtn
15.04.2005, 21:02
Саму схемку кинь плиз.
она только на бумаге и представляет собой жесткую интеграцию в схему профи v5.x.
с какой целью схемой интересуетесь?

Costa
15.04.2005, 21:28
с какой целью схемой интересуетесь?
Чисто для ознакомления.в общем не важно для какого компа.хотелось посмотреть как чего реализовано.

jtn
16.04.2005, 11:25
пара регистров, триггеров, мультиплексор и чуть логики. выполнено на макетке, выпиленной из Ленинграда, вставляется в панельку вместо штатного пзу.

ukms[z]
25.04.2005, 00:41
я понимаю что мой вопрос в пустоту, но тем не менее его задам.
как дела на спектруме с nmi ? есть ли устройства его использующие кроме кнопки магик ?

Максагор
25.04.2005, 01:09
']я понимаю что мой вопрос в пустоту, но тем не менее его задам.
как дела на спектруме с nmi ? есть ли устройства его использующие кроме кнопки магик ?

Контроллер HAYES п полному стандарту Кондратьева, если не ошибаюсь. Именно для этой схемы всем модемщикам рекомендовалось перешить ПЗУ бейсика-48, подправив там известную ошибку в процедуре обработки NMI (кстати, в текущих версиях ПЗУ для ATM-2+ эта ошибка также подправлена мною).