Интерполятор спрайтов для ZX Spectrum (ВАЖНО)
|
|
Black_Cat | Дата: Воскресенье, 11.11.2012, 00:14 | Сообщение # 21 |
Координатор
Группа: Координаторы
Сообщений: 730
Статус: Offline
| Quote (Hazar) А есть для примера схема где эта шина отображается (картинка) Схема с изображением разъёмов шины NemoBus? На схеме KAY-1024 NemoBus v.1.0, у ZXM-Phoenix - NemoBus v.1.1m.
Quote (Hazar) Новые (характерные) сигналы шины NemoBus v2.0 Шины NemoBus v.2.0 пока нет ни у кого, поэтому для начала ориентируйся на NemoBus v.1.0/1.1m
"Трудно найти чёрную кошку в тёмной комнате.. ...особенно, если её там нет", "Forever!". "Я никогда не причиняю им зла. Я говорю им правду, и они думают, что это - зло." Гарри Трумэн
|
|
| |
Hazar | Дата: Воскресенье, 11.11.2012, 17:27 | Сообщение # 22 |
80h
Группа: Пользователи
Сообщений: 231
Статус: Offline
| Вопрос так сказать на засыпку как грамотно организовать несколько портов (ну скажем пока 5 хватит)
что-бы это не кого не задело в смысле софта и постороннего железа
Spectrum жив в нашей душе навсегда
|
|
| |
Black_Cat | Дата: Воскресенье, 11.11.2012, 18:09 | Сообщение # 23 |
Координатор
Группа: Координаторы
Сообщений: 730
Статус: Offline
| Адреса портов в полной 16-разрядной адресации для контроллера на шине NemoBus - не проблема, с этим можно определиться в последний момент, когда будет точно ясно сколько их надо.
"Трудно найти чёрную кошку в тёмной комнате.. ...особенно, если её там нет", "Forever!". "Я никогда не причиняю им зла. Я говорю им правду, и они думают, что это - зло." Гарри Трумэн
|
|
| |
Hazar | Дата: Воскресенье, 11.11.2012, 18:18 | Сообщение # 24 |
80h
Группа: Пользователи
Сообщений: 231
Статус: Offline
| Quote (Black_Cat) Адреса портов в полной 16-разрядной адресации для контроллера на шине NemoBus - не проблема, с этим можно определиться в последний момент, когда будет точно ясно сколько их надо.
То-есть использовать только 16 разрядную адресацию (например такой FFFF пойдет)
Spectrum жив в нашей душе навсегда
|
|
| |
Black_Cat | Дата: Воскресенье, 11.11.2012, 18:43 | Сообщение # 25 |
Координатор
Группа: Координаторы
Сообщений: 730
Статус: Offline
| именно #FFFF не пойдёт, ну а обращение и дешифрация - да, 16 разрядные
"Трудно найти чёрную кошку в тёмной комнате.. ...особенно, если её там нет", "Forever!". "Я никогда не причиняю им зла. Я говорю им правду, и они думают, что это - зло." Гарри Трумэн
|
|
| |
Hazar | Дата: Понедельник, 12.11.2012, 16:45 | Сообщение # 26 |
80h
Группа: Пользователи
Сообщений: 231
Статус: Offline
| Quote (Black_Cat) именно #FFFF не пойдёт
Ну вот а я размечтался такой хороший порт FFFF (и уже занят?)
Пока планирую такие порты (но это не значит что они будут в устройстве пока думаю)
Порт FFFF порт для управления атрибутами экрана (различные манипуляции со цветом. метод наложения на черно-белый видео сигнал)
бит 0 - поддержка стандартного режима 8*8 бит 1 - мой режим бит 2,3,4,5,6 сторонние методы отображения атрибутов (скорее всего до них руки не дойдут)
Порт FFFE (порт управления яркостным сигналом 6-бит. ЦАП) только для моего режима
Порт FFFD (порт управления для менеджера экранов, переключения экранов)
Порт FFFС (порт для управления видео-эффектами например прозрачность) аппаратной реализации пока нет
Порт FFFB ( управление генератором шума )
Порт FFFA ( общее управление интерполятором )
Spectrum жив в нашей душе навсегда
Сообщение отредактировал Hazar - Понедельник, 12.11.2012, 16:51 |
|
| |
Black_Cat | Дата: Понедельник, 12.11.2012, 22:14 | Сообщение # 27 |
Координатор
Группа: Координаторы
Сообщений: 730
Статус: Offline
| Quote (Hazar) FFFE FFFD FFFС FFFB FFFA На Спектруме порты выбираются по другому, всё что ты написал трогать низзя . Как определишься с точным количеством, подберём порты.
"Трудно найти чёрную кошку в тёмной комнате.. ...особенно, если её там нет", "Forever!". "Я никогда не причиняю им зла. Я говорю им правду, и они думают, что это - зло." Гарри Трумэн
|
|
| |
Hazar | Дата: Среда, 14.11.2012, 15:52 | Сообщение # 28 |
80h
Группа: Пользователи
Сообщений: 231
Статус: Offline
| Quote (Black_Cat) всё что ты написал трогать низзя
если можно подробнее почему нельзя? Заодно вспомним как порты работают
Spectrum жив в нашей душе навсегда
|
|
| |
Black_Cat | Дата: Среда, 14.11.2012, 22:45 | Сообщение # 29 |
Координатор
Группа: Координаторы
Сообщений: 730
Статус: Offline
| На Спектруме свободных портов нет, во многом из-за использования упрощённой дешифрации портов.Эту проблему в основном решила архитектура шины NemoBus, хотя тут тоже есть определённые правила, в т.ч. правила касающиеся разработки:
1) На платформе Спектрума при выборе портов сначала выбирают основание адреса #XY (младшая часть адреса), определяющее диапазон используемых портов, а потом в этом диапазоне назначают порты #abXY.
2) Все адресные основания #XY на Спектруме уже были когда-то кем-то заняты, поэтому единственный путь получения основания - захват его у какого-то морально устаревшего и ныне малоиспользуемого устройства. Но и здесь в основном уже все основания заняты по второму разу. Но если не нужен весь диапазон в 256 адресов, то в уже занятых основаниях можно поискать свободные адреса в их диапазонах.
"Трудно найти чёрную кошку в тёмной комнате.. ...особенно, если её там нет", "Forever!". "Я никогда не причиняю им зла. Я говорю им правду, и они думают, что это - зло." Гарри Трумэн
|
|
| |
Hazar | Дата: Четверг, 15.11.2012, 16:16 | Сообщение # 30 |
80h
Группа: Пользователи
Сообщений: 231
Статус: Offline
| Quote (Black_Cat) На Спектруме свободных портов нет, во многом из-за использования упрощённой дешифрации портов.Эту проблему в основном решила архитектура шины NemoBus
Насколько я понимаю архитектура процессора Z80 не накладывает никаких ограничений на количество портов для внешних устройств (а вы наверно говорите о ограничениях программной среды SOS и оригинальной схемотехники ZX Spectrum)
Есть адресная шина процессора и диапазон адресов от 0 до 65535 можно выбрать любой незанятый.
Когда у меня был еще ZX Spectrum Новосибирский вариант я делал свой порт 65535 (на k555 ла2 2 шт, 555 лл1 и 555 ап6)
Давал команду из бейсика и получал на выходе АП6 нужную мне информацию все работало. Сам по себе порт правда не использовался во время работы игр и нужен был для одиночных пересылок данных в короткое время .
Quote (Black_Cat) Все адресные основания #XY на Спектруме уже были когда-то кем-то заняты, поэтому единственный путь получения основания - захват его у какого-то морально устаревшего и ныне малоиспользуемого устройства. Но и здесь в основном уже все основания заняты по второму разу. Но если не нужен весь диапазон в 256 адресов, то в уже занятых основаниях можно поискать свободные адреса в их диапазонах.
Добавлено (15.11.2012, 16:16) --------------------------------------------- Порты стандартного ZX Spectrum
#FE - клавиатура, цвет бордюра, бипер, магнитофон #7FFE - полуряд Space...B #BFFE - полуряд Enter...H #DFFE - полуряд P...V #EFFE - полуряд 0...6 #F7FE - полуряд 1...5 #FBFE - полуряд Q...T #FDFE - полуряд A...G #FEFE - полуряд CS...V #FF - порт атрибутов
Порты ZX Spectrum 128K
#1FFD - управление конфигурацией компьютера для моделей +2A/+3 #7FFD - управление конфигурацией компьютера для любых 128K моделей #FFFD - регистр адреса AY-3-8910 #BFFD - регистр данных AY-3-8910
Зарубежная периферия
#07 - порт синтезатора речи Cheetah Sweet Talker #1F - порт Kempston-джойстика #3F - Fuller Box, регистр AY-3-8912 #5F - Fuller Box, данные AY-3-8912 #7F - Fuller Box, порт джойстика #7B - интерфейс для подключения принтера ZX Lprint III #DF - данные для ЦАП ударной машины Cheetah SpecDrum #E7 - ZX Interface 1, данные для микродрайва #EF - ZX Interface 1, управление RS232 и сеть #F7 - ZX Interface 1, управление RS232 и сеть #FB - интерфейс для подключения принтера ZX Lprint III
Отечественная периферия
#0F - SounDrive, канал A #1F - SounDrive, канал B #4F - SounDrive, канал C #5F - SounDrive, канал D #B3 - регистр данных General Sound #B7 - XTR-modem #BB - регистр команд и статуса General Sound #DD - порт Covox на компьютере Profi #1FFD - управление конфигурацией компьютера Scorpion #7FFD - управление конфигурацией компьютера Pentagon #BFF7 - регистр данных часов реального времени #DFF7 - регистр адреса часов реального времени #DFFD - управление конфигурацией компьютера Profi #EFF7 - управление ресурсами Pentagon 1024 #FADF - Kempston mouse, состояние кнопок #FBDF - Kempston mouse, X-координата #FDDF - управление конфигурацией компьютера ATM Turbo #FFDF - Kempston mouse, Y-координата #FB - стандартный порт Covox
Beta Disk Interface
Все порты - теневые, доступны только из ПЗУ TR-DOS.
#1F - регистр команд КР1818ВГ93 #3F - регистр дорожки КР1818ВГ93 #5F - регистр сектора КР1818ВГ93 #7F - регистр данных КР1818ВГ93 #FF - системный порт BDI
Зарубежные доработки
#BF3B - управление палитрами ULAplus #FF3B - данные палитр ULAplus
Spectrum жив в нашей душе навсегда
Сообщение отредактировал Hazar - Четверг, 15.11.2012, 16:30 |
|
| |
Black_Cat | Дата: Четверг, 15.11.2012, 18:02 | Сообщение # 31 |
Координатор
Группа: Координаторы
Сообщений: 730
Статус: Offline
| Quote (Hazar) о ограничениях программной среды SOS и оригинальной схемотехники ZX Spectrum только схемотехники Quote (Hazar) Порты стандартного ZX Spectrum Я выложил новый "Путеводитель по портам ZX Spectrum" . Скачай и посмотри
"Трудно найти чёрную кошку в тёмной комнате.. ...особенно, если её там нет", "Forever!". "Я никогда не причиняю им зла. Я говорю им правду, и они думают, что это - зло." Гарри Трумэн
|
|
| |
Hazar | Дата: Суббота, 17.11.2012, 11:56 | Сообщение # 32 |
80h
Группа: Пользователи
Сообщений: 231
Статус: Offline
| Quote (Black_Cat) Я выложил новый "Путеводитель по портам ZX Spectrum" smile . Скачай и посмотри
Ну ладно по портам пока вопросов нет
Пример интерполяции цвета со стандартными атрибутами
--------------------------------------------- Осталось найти наилучшее решение для быстрого преобразования в реальном времени
Интересно можно ли решить такую задачку чисто "электрическим методом" за счет электроники без применения процессора и программы интерполятора
Spectrum жив в нашей душе навсегда
Сообщение отредактировал Hazar - Суббота, 17.11.2012, 11:56 |
|
| |