Важная информация

User Tag List

Страница 36 из 45 ПерваяПервая ... 323334353637383940 ... ПоследняяПоследняя
Показано с 351 по 360 из 448

Тема: ОРИОН-2010 на ПЛИС.

  1. #351
    Activist
    Регистрация
    18.09.2009
    Адрес
    г.Ногинск, МО
    Сообщений
    246
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    Влад, на сайте лежит документ поновее...
    Спасибо, скачал, прочитал - медленно, но есть прогресс.
    Так вот, я об ошибках, которые были выделены красным цветом в моем письме. Только два примера (это все равно не исправлено!) из документации:

    "D0 - блокирует порты F400 - FB00, оставляя только 18....FB как I/O. Вся область памяти F400-F7FF становится доступна как ОЗУ."
    18 - я выделил (в письме!) красным цветом, чтобы обратить твое внимание: у нас сейчас, реально, есть такой порт?

    "Как дополнение, опишу работу сигнала fullram (FA(5)) - блокирует порты, проецируемые на память, отключает ПЗУ из линейки адресов, для записи/чтения доступен весь диапазон адресов..."
    FA- я тоже выделил красным цветом, спрашивая: ты не ошибаешься? Может быть разговор идет о FB, где действительно D5=fullram?
    Ну, и так далее по тексту моего письма...

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    ...твои пожелания (в письме) учел, сейчас буду разбираться.
    Я так понял, это насчет векторов прерываний?
    Хочу спросить честно, в лоб (прости старика за скверный характер): ты реально проверял работу всего этого механизма прерываний, где используется mode2? Т.е. написал программульку, разместил вектор перехода в "FF" и... все заработало? Или это было сделано, основываясь на теоретических познаниях? То, что ты запускал Синклеровские игрушки, еще ни о чем не говорит - Спектрум не использует прерывания в режиме mode2. У него вообще, достаточно упрощенное использование прерываний.

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    Я убился открывавши файл .psd...
    Виноват. Прошляпил и прицепил не то. Я в Фотошопе, к картинке, добавлял адреса наших векторов, чтобы было более наглядно.

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    Дык переходи на телевизор.
    Сейчас мне удобнее работать с монитором VGA, но потом, в задуманном проекте на базе Ориона, будет только телевизор.

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    Хорошо. Я буду поглядывать...
    Да нет проблем! Я могу всю эту "кухню" по отработке документации, вести и на форуме. Будем народ развлекать...
    Если ты чего-то не знаешь, то это не значит, что этого не может быть.

  2. #352
    Super Moderator Аватар для Ewgeny7
    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    10,168
    Спасибо Благодарностей отдано 
    146
    Спасибо Благодарностей получено 
    76
    Поблагодарили
    51 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от pvlad Посмотреть сообщение
    ты реально проверял работу всего этого механизма прерываний, где используется mode2? Т.е. написал программульку, разместил вектор перехода в "FF" и... все заработало?
    Немножко напрягши склероз, вспоминаем о тестовой программке написанной Сергеем. Она проверяла работу одновременно INT50 по вектору FF и USART по вектору FD. Странно, конечно, но она работала и на реале и в эмуле

    Цитата Сообщение от pvlad Посмотреть сообщение
    Спектрум не использует прерывания в режиме mode2.
    Ооо!!! Новая новость!
    Спектрум использует в большинстве ПО именно IM2. На нем вешается музыка как правило. Чуть реже - заодно и графика.

    Цитата Сообщение от pvlad Посмотреть сообщение
    Ну, и так далее по тексту моего письма...
    Верно, очепяток там хватает
    Сижу, вычитываю. Вчера не смог, ScorpEvo'й занимался (второй проект).
    ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
    Speccy-2007 128/AY/TR-DOS

    Сайт с документацией к "Scorpion ZS 256"

  3. #353
    Activist
    Регистрация
    18.09.2009
    Адрес
    г.Ногинск, МО
    Сообщений
    246
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    Немножко напрягши склероз...
    Ты можешь мне выслать исходник этой программули. Я хочу сам повозиться. Благо теперь есть на чем.
    В интернет-фирме заказал LPT-PCMCIA адаптер. Без него у меня геморой с прошивкой Альтеры. Заказ приняли, а вот когда исполнят (и исполнят - ли?) - молчат стервеци. Похоже, на складе нет - будут заказывать где-то. Ты не мог бы пошарить по фирмам в С-П. Может у вас там реально в наличии есть?

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    Ооо!!! Новая новость!
    Я не спекирумист, чтобы взять это утверждение со своего опыта. Разбираясь с векторами, и набирая статистику по различным источникам,
    в какой-то книжке по Спектруму вычитал это утверждение. Если это принципиально (для меня, орионщика, - нет!), могу вернуться и поискать.
    Если ты чего-то не знаешь, то это не значит, что этого не может быть.

  4. #354
    Super Moderator Аватар для Ewgeny7
    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    10,168
    Спасибо Благодарностей отдано 
    146
    Спасибо Благодарностей получено 
    76
    Поблагодарили
    51 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от pvlad Посмотреть сообщение
    Ты можешь мне выслать исходник этой программули.
    В аттаче.

    Цитата Сообщение от pvlad Посмотреть сообщение
    в какой-то книжке по Спектруму вычитал это утверждение.
    Забудь про книжки по спектруму. Современные знания о природе вещей во многом не соответствуют первобытным данным, выбитым на скале первобытным человеком

    Влад, ты получил по почте новый файл мануала?
    Вложения Вложения
    ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
    Speccy-2007 128/AY/TR-DOS

    Сайт с документацией к "Scorpion ZS 256"

  5. #355
    Super Moderator Аватар для Ewgeny7
    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    10,168
    Спасибо Благодарностей отдано 
    146
    Спасибо Благодарностей получено 
    76
    Поблагодарили
    51 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    На Спектрумах аппаратного вектора нет как такового. Источником вектора является сама ненагруженная шина данных, на которой благодаря "подтяжке" резисторами находится как раз FF. Это позволило достаточно просто организовать IM2. Воспроизведение музыки на спектрумах как раз и завязано на второй режим, когда обработчик прерываний обслуживает очередной "квант" звука, а далее передает управление уже в стандартный обработчик, вызываемый по IM0 (обслуживающий клавиатуру).

    ---------- Post added at 11:41 ---------- Previous post was at 11:28 ----------

    Готовлю версию 1.12. Здесь я исправил мелкие недогляды, и "прошерстил" работу с внешними устройствами. Сигнал csf76 заменил на csf6, соответственно сделал преселект этого адресного диапазона. Давайте для начала примем, что все внешние устройства на слоте расширения адресуются как порты F60x (30-3F). Пока так, ибо расширять диапазон пока несколько затруднительно и туманно.
    Буфера на слоте расширения работают следующим образом - адреса и управлящие сигналы идут всегда с Ориона на слот, данные же идут чуть сложнее. Когда процессор выдает сигнал RD='0' и (IORQ='0' или CSF6_n='0') то буфер данных "разворачивается". В противном случае данные идут с Ориона на слот. Обратите внимание, что F60x доступны для работы как I/O и как ячейки памяти! Сделал это просто для удобства отладки.
    ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
    Speccy-2007 128/AY/TR-DOS

    Сайт с документацией к "Scorpion ZS 256"

  6. #356
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    107
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Слот расширения должен позволять подключение не только вв55 принтера (порт f60x, на нём же и ide), но и стандартные порты расширения диапазона f7xx
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  7. #357
    Activist
    Регистрация
    18.09.2009
    Адрес
    г.Ногинск, МО
    Сообщений
    246
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    Забудь про книжки по спектруму.
    Так-то оно так, но это переводная книга. Боюсь, вы господа-синклеристы, со своими клонами слишком далеко отошли от оригинального ZX и теперь считаете, что так и було! (см.вложение)

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    На Спектрумах аппаратного вектора нет как такового.
    Совершенно верно! Прерывание INT1 жестко привязано к вектору 0038 и плевать, что на шине.

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    Влад, ты получил по почте новый файл мануала?
    Получил, но на работе не дают сосредоточиться. Вечером, дома разгоню свой народ спать и сяду внимать...


    Посмотрел программульку. Структура и логика мне понятна. В свое время, мне практически не пришлось поработать с мнемоникой Z80, поэтому сейчас надо посидеть над командами Z80. Мне самому интересно - почему она работает!
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	Программирование в машинных кодах_002.jpg 
Просмотров:	267 
Размер:	61.6 Кб 
ID:	19847   Нажмите на изображение для увеличения. 

Название:	Программирование в машинных кодах_043.jpg 
Просмотров:	255 
Размер:	45.3 Кб 
ID:	19848  
    Если ты чего-то не знаешь, то это не значит, что этого не может быть.

  8. #358
    Super Moderator Аватар для Ewgeny7
    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    10,168
    Спасибо Благодарностей отдано 
    146
    Спасибо Благодарностей получено 
    76
    Поблагодарили
    51 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от pvlad Посмотреть сообщение
    Так-то оно так, но это переводная книга. Боюсь, вы господа-синклеристы, со своими клонами слишком далеко отошли от оригинального ZX и теперь считаете, что так и було!
    Понятно, ВАПРИНТ. Хорошие книжки печатал. Но не всегда верные.
    Точнее, спектрумы оригинальные всегда могли использовать IM2 (если размер памяти 48кб и более). просто на тот момент этот выкрутас с прерыванием был вероятно неизвестен забугорным программистам, ибо в официальных доках не упоминался. Но для русских чтение инструкций всегда было делом ненужным
    поэтому наши сначали делали, а потом уже узнавали что это сделать невозможно

    ---------- Post added at 15:46 ---------- Previous post was at 15:39 ----------

    Цитата Сообщение от pvlad Посмотреть сообщение
    Совершенно верно! Прерывание INT1 жестко привязано к вектору 0038 и плевать, что на шине.
    Совершенно верно. И при этом шина данных подтянута к +5в. А в режиме ИМ2, когда проц пытается считать вектор с шд, оттудова естесственно считывается FF.
    ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
    Speccy-2007 128/AY/TR-DOS

    Сайт с документацией к "Scorpion ZS 256"

  9. #359
    Activist
    Регистрация
    18.09.2009
    Адрес
    г.Ногинск, МО
    Сообщений
    246
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Слот расширения должен позволять подключение не только вв55 принтера (порт f60x, на нём же и ide), но и стандартные порты расширения диапазона f7xx
    Порт F7xx чисто системный и внутренний порт, и по логике он не нужен (может быть я и не прав!) на системной шине. Все что он дешифрирует - должно находиться внутри ПЛИС. Я понимаю, что ты имеешь ввиду под "стандартные порты расширения диапазона f7xx" - необходимость еще подключить часы и муз.проц. Но эти вещи должны быть внутри ПЛИС.
    Я абсолютно не против создания Ориона-2010 нового поколения, где поместится все. Я за то, чтобы этот проект довести до логического конца, и оставить "потомкам" готовое изделие - в меру дешевое и не сложное. А уже потом, используя накопленное и отработанное (ведь в новый проект войдет не менее 60-70% этого проекта) взяться за новый проект. Надо отдавать себе отчет, что все равно придется разбираться с векторами, осваивать PS/2 и писать новый драйвер для нее, переделывать Монитор и т.д. Все это можно сделать и на этой платке. А если все, что я перечислил окончиться обычной болтовней (а такое вполне может быть - пока нас только двое, кто согласился что-то написать!), то незачем попусту тратиться и щеки надувать?
    Поэтому для общего применения надо выводить CS_F6, а для тебя можно сделать спец версию, с тем, чтобы на плате расширения ты смог повесить дополнительные прибамбасы (если не заленишься взять в руки паяльник!). Ты сможешь уже сейчас заниматься в своей любимой среде "обитания", а мы подождем будущее...

    ---------- Post added at 15:59 ---------- Previous post was at 15:54 ----------

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    Но для русских чтение инструкций всегда было делом ненужным
    У меня нет комментариев!!!!! Не в бровь, а в глаз!

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    А в режиме ИМ2, когда проц пытается считать вектор с шд, оттудова естесственно считывается FF.
    Не согласен. Когда буду готов прошиваться (если к тому времени к тебе не придет просветление!), сделаешь мне спец.версию по "моим" векторам, и я начну эксперименты.

    РС. Стоп! Возможно он и читает FF, но так как самый младший бит не учитывается, то получается FE, и этот фокус проходит. Но так делать безграмотно!
    Последний раз редактировалось pvlad; 10.08.2010 в 16:02.
    Если ты чего-то не знаешь, то это не значит, что этого не может быть.

  10. #360
    Super Moderator Аватар для Ewgeny7
    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    10,168
    Спасибо Благодарностей отдано 
    146
    Спасибо Благодарностей получено 
    76
    Поблагодарили
    51 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от pvlad Посмотреть сообщение
    РС. Стоп! Возможно он и читает FF, но так как самый младший бит не учитывается, то получается FE, и этот фокус проходит. Но так делать безграмотно!
    Кхм... Сергей, объясните товарищу откуда берется второй байт...

    ---------- Post added at 16:27 ---------- Previous post was at 16:16 ----------

    "IM 2".
    ~~~~~~~~
    Путем установки "IM 2" Вы можете использовать прерывания
    для Ваших собственных целей. Тут уже все зависит только от Вас.
    С помощью "IM 2" возможно менять вектор прерываний как про-
    граммно, так и аппаратно.
    Режим "IM 2" сложен. При получении прерывания по линии
    "INT" процессор запоминает адрес следующей команды программы на
    машинном стеке, затем просматривает ячейку, указанную шиной
    данных плюс 256, умноженное на содержимое регистра "I" и пе-
    редает управление к адресу, содержащемуся в этой ячейке плюс
    (256, умноженное на содержимое следующей ячейки). Вообще-то,
    считается дурным тоном иметь бит ноль на шине данных активиро-
    ванным в качестве указателя в режиме "IM 2", т.к. указатель
    всегда будет стартовать с адреса, пронумерованного четным чис-
    лом, но, к сожалению, в "СПЕКТРУМЕ" нет выбора.




    ПРИМЕР 1.
    В регистре "I" содержится число 10 (0AH), а на шине данных
    выставлено число 255 (0FFH). При этом :
    10*256=2560
    2560+255=2815.
    Этот адрес находится в ПЗУ "СПЕКТРУМА", поэтому точка, к
    которой будет сделан переход, возьмется из содержимого адреса
    2815+(256, умноженное на число по адресу 2816). В ячейке 2815
    содержится 34, а в 2816 - 128. В этом можно убедиться с помощью
    оператора "PEEK". Таким образом, адрес перехода равен :
    34+(256*128)=32802.

    ПРИМЕР 2.
    Регистр "I" содержит 200, шина данных 255.
    200*256=51200
    51200+255=51455.
    Переход будет сделан по адресу, который Вы поместите в
    ячейки 51455 и 51456.
    Гораздо проще все выглядит в шестнадцатиричном виде. Тут
    уже не надо вычислять адрес, откуда брать точку для перехода.
    Просто шина данных формирует младший байт адреса, а регистр "I"
    - старший байт. По этому адресу берется точка перехода на про-
    грамму обработки прерываний, где опять-таки данный адрес со-
    держит младший байт, а следующий за ним - старший байт адреса
    программы.
    Все это можно представить, как косвенную адресацию по
    содержимому регистровой пары, причем регистровую пару на этот
    раз составляет шина данных и регистр "I". Это своего рода
    команда CALL (I+ШД). Но, т.к. такой команды не существует, и
    она не может разместить собственный адрес возврата, то адрес
    после последней выполненной команды кладется процессором на
    машинный стек, и к нему будет осуществлен возврат после выпол-
    нения программы обработки прерываний.
    Как Вы видите, программное изменение вектора прерываний
    задается с помощью перезаписи регистра "I", а аппаратное -
    благодаря шине данных.
    Обычно в момент прерывания на шине данных содержится - 255
    ( 0FFH ), но если Вы подключите внешнее устройство, изменяющее

    в этот момент состояние шины данных, то Вы можете, не переписы-
    вая регистр "I", менять в небольших пределах адрес программы
    обработки "IM 2". Порой такое необходимо при подключении нес-
    кольких периферийных устройств, чтобы процессор знал, какое из
    них ему обслуживать на данный момент. Вдобавок ко всему, Вы
    можете еще перехватывать управление линией "INT" для аппарат-
    ного включения или выключения прерываний в необходимый момент
    времени. Именно так и делает контроллер дисковода.
    Последний раз редактировалось Ewgeny7; 10.08.2010 в 16:29.
    ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
    Speccy-2007 128/AY/TR-DOS

    Сайт с документацией к "Scorpion ZS 256"

Страница 36 из 45 ПерваяПервая ... 323334353637383940 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. ПЛИС и всё что с ними связано
    от Sayman в разделе Для начинающих
    Ответов: 1900
    Последнее: 04.11.2023, 09:55
  2. Вопрос по ПЛИС
    от Zloy в разделе Несортированное железо
    Ответов: 23
    Последнее: 17.10.2015, 17:12
  3. Орион-2010. Hard & Soft
    от Error404 в разделе Орион
    Ответов: 1198
    Последнее: 24.11.2013, 15:35
  4. Ответов: 92
    Последнее: 19.02.2009, 17:33

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •