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

User Tag List

Страница 26 из 61 ПерваяПервая ... 222324252627282930 ... ПоследняяПоследняя
Показано с 251 по 260 из 601

Тема: Оживление Квант 4С

  1. #251
    Guru
    Регистрация
    02.03.2015
    Адрес
    г. Караганда, Казахстан
    Сообщений
    2,321
    Спасибо Благодарностей отдано 
    35
    Спасибо Благодарностей получено 
    225
    Поблагодарили
    177 сообщений
    Mentioned
    17 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Hunta Посмотреть сообщение
    С другой стороны - логика работы с DW достаточно похожа на логику работы с тем контроллером IDE, который у меня. И регистры тоже похожи
    Так логика работы с любым контроллером HDD одинакова. Никакой из процессоров общего назначения тех времен не был в состоянии обеспечить в PIO-mode поток данных для непосредственной записи/чтения с поверхностей HDD. Да и DMA тех времен не со всеми HDD мог справится. Так, что буфер (минимум на сектор) в таком контроллере есть всегда. А логика работы в PIO-mode с буферизованным контроллером HDD всегда одна.
    Кто мешает тебе выдумать порох непромокаемый? (К.Прутков, мысль № 133)

  2. #252
    Guru Аватар для bigral
    Регистрация
    12.07.2006
    Адрес
    г. Киев, Украина
    Сообщений
    2,147
    Спасибо Благодарностей отдано 
    25
    Спасибо Благодарностей получено 
    95
    Поблагодарили
    82 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Hunta Посмотреть сообщение
    Нет, только один набор.
    Команды не транслирует.
    И ещё раз повторяю - мне именно контроллер DW(MW) напоминает IDE, а не ST-506. И - напоминает, а не копирует.
    Мне кажется что DW это контроллер еще с 70-х, я подозреваю взяли его как раз с reference документации на 8x300 процессор, где был как бы пример применения этого процессора в качестве DSP именно в контроллере диска, может эта схема и послужила прототипом для WD-шных одночиповых контроллеров в последствии. Короче схожесть DW и IDE может и есть, но я вообще не про это говорил! Я говорил ОБ WD-шном котроллере (st506) для ibm pc, и последующем стандарте IDE который разработали совместимым с этим WD-шным контроллером чтоб не менять BIOS. Т.е. суть тут в том что существует некий стандартный набор портов и протоколов работы с ними в следствии того что выпускали новое железо обратно совместимое с первым WD-шным одночиповым контроллером который применили в ibm pc. А значит все IDE контроллеры (которые без DMA) должны примерно одинаково программироваться, потому и идея универсального драйвера для всех qbus ide контроллеров потенциально возможна с моей точки зрения...

  3. #253
    Guru
    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    6,992
    Спасибо Благодарностей отдано 
    285
    Спасибо Благодарностей получено 
    631
    Поблагодарили
    531 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от bigral Посмотреть сообщение
    Мне кажется
    Цитата Сообщение от bigral Посмотреть сообщение
    я подозреваю
    Цитата Сообщение от bigral Посмотреть сообщение
    может
    Цитата Сообщение от bigral Посмотреть сообщение
    А значит все IDE контроллеры
    У меня пока только один вариант контроллера IDE.

    Даже с этим вариантом контроллера и драйверами от создателей есть интересный нюанс - они не стали программировать драйвер на работу по прерываниям, а тупо - опрос до готовности. Вопрос - почему? Я получил первый примерно работающий вариант драйвера по прерываниям. С интересной особенностью. Если поставить точку останова на вход в драйвер, где дальше идёт получения пакета, и руками давать на этой точке останова команду продолжения, то драйвер (вроде) работает. А если не ставить - первое обращение отрабатывает, а второе - зависон. На ошибку в драйвере списать сложно - всё, что я делаю - жму кнопку P (продолжить). Такое впечатление, что нужны какие то задержки при работе с устройством, которые и обеспечивает работа под отладчиком. Проблема схемы? Где то не выдержана времянка цикла обмена с устройством?

    А если в другом контроллере свои "багофичи"? Писать драйвер по невнятному описанию, а так же догадкам - а потом получать отзыв - а вот на моём супе-пупер совместимом твой драйвер ни хрена не работает. Увольте.

    Кстати, кроме как предположение, что с работой по прерываниям у авторов не взлетело - не могу ничего придумать. Проверил, сколько инструкций успеет выполнить Квант от момента подачи команды до момента прерывания по готовности устройства. Достаточно тупой код:
    Код:
    	RESET
    
    	CLR	R0
    	MOV	#2, R1
    	MOV	#100, R2
    ;на приход прерывания по любому вектору - останов по адресу вектор прерывания+4
    10$:	MOV	R1, (R0)+
    	CLR	(R0)+
    	CMP	(R1)+, (R1)+
    	SOB	R2, 10$
    ...
    	MOV	#CS.RD,@R1     	; послать команду, начать выполнение
    
    	CLR	R2
    	CLR	R3
    ; цикл в цикле, максимум 65536*65536 повторений
    32$:	
    34$:	SOB	R2,34$
    	SOB	R3,32$
    	
    	HALT
    Этот же код выяснял - а вообще контроллер по прерывания работает? Как оказалось - вполне. А теперь тотализатор - на карте CF (где никакой механики и задержек, связанных с ней нет) - что было в R2 и R3, когда пришло прерывания? Насколько медленен 1801ВМ3 для современных CF?

  4. #254
    Guru
    Регистрация
    02.03.2015
    Адрес
    г. Караганда, Казахстан
    Сообщений
    2,321
    Спасибо Благодарностей отдано 
    35
    Спасибо Благодарностей получено 
    225
    Поблагодарили
    177 сообщений
    Mentioned
    17 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Hunta Посмотреть сообщение
    И ещё раз повторяю - мне именно контроллер DW(MW) напоминает IDE, а не ST-506. И - напоминает, а не копирует.
    Историю надо знать. Первый контроллер винчестера для IBM PC AT работал с теми же винчестерами с интерфейсом ST-506. Потом этот контроллер (благо его таки миниатюризировали) запихнули на плату винчестера. Те мелочи, что были на плате винтов ST-506, частично просто миниатюризировались (приводы движков, головок, усилители считывания/записи), частично включены в состав контроллера (управление движком, приводами и пр.).Так родился винчестер IDE. А в писюк долгое время втыкался банальный согласователь интерфейсов с опознавателем старших битов адреса.

    Можно считать, что диск с интерфейсом IDE - это тот же диск ST-506, только со встроенным писюшным контроллером дисков этого самого ST-506, несмотря на то, что сам интерфейс ST-506 у них выродился местами до дорожки на плате, а местами и вообще до программной связи разных GPIO микроконтроллера.

    Это позже к ним начали пихать всякие ультра-DMA, Busmaster'ы и пр., тем не менее, совместимость снизу вверх существует, вроде-бы, до сих пор, любой IDE-винчестер спокойно будет работать в PIO-mode.
    Кто мешает тебе выдумать порох непромокаемый? (К.Прутков, мысль № 133)

  5. #255
    Guru
    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    6,992
    Спасибо Благодарностей отдано 
    285
    Спасибо Благодарностей получено 
    631
    Поблагодарили
    531 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от AFZ Посмотреть сообщение
    Историю надо знать
    Вот честно - параллельно фиолетово мне сейчас до истории. Задача весьма конкретно стоит. А уже после её решение под пиво можно и повспоминать-похолливарить. До след задачи.

  6. #256
    Guru
    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    6,992
    Спасибо Благодарностей отдано 
    285
    Спасибо Благодарностей получено 
    631
    Поблагодарили
    531 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    YES!!!! Это были всё таки мои косяки

  7. #256
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  8. #257
    Guru
    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    6,992
    Спасибо Благодарностей отдано 
    285
    Спасибо Благодарностей получено 
    631
    Поблагодарили
    531 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Запустил BAD По расчётам, на 8 гиговой CF будет работать 38 часов

    - - - Добавлено - - -

    Надоело ждать
    INI WQ:TEST/BAD=[NOAUTO]

    Даже интересно, сколько служебной инфы оно запишет - на текущий момент пишет уже минуты три. Как закончит, сфоткаю и выложу

    - - - Добавлено - - -

    Инициализировал 28 минут (примерно). Щас монтирует.

    - - - Добавлено - - -

    Монтировал 2.5 минуты. Сейчас считает занято-свободно

    - - - Добавлено - - -

    Альфа версия драйвера в тепличных условиях

    15 с половиной МИЛЛИОНОВ свободных блоков PIP минут пять считал - сколько же там свободно-занятых блоков

    http://www.kpxx.ru/KBAHT4C/Железо/WQ

    - - - Добавлено - - -

    В общем, по первым результатам - если бы не накосячил (причём дурацкий косяк - но именно такие хрен найдёшь) - за пару дней мог бы нарисовать.

    Следующий этап - привидение драйвера в порядок и автоопределение размера подключённого носителя (благо это уже в стандарте).

    После этого - попробую посмотреть - а нельзя ли сделать работу более быстрой. 32 мб за 5 минут - конечно, в шесть раз быстрее, чем MY, но для CF выглядит странным... Сразу скажу - почему то ОЧЕНЬ большая задержка между выдачей команды чтения и сигналом то устройства, что данные в буфере. На исходных драйверах от разработчиков - тоже самое.
    Последний раз редактировалось Hunta; 10.03.2018 в 01:25.

  9. #258
    Guru
    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    6,992
    Спасибо Благодарностей отдано 
    285
    Спасибо Благодарностей получено 
    631
    Поблагодарили
    531 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Как программировать на MACRO-11 без меток
    Код:
      PROCEDURE WQWAIT
      BEGIN
        PUSH <R1, R0>
        THRU R1 := #0
          MOVB    (R2), R0
          IF RESULT IS PL ANDB #CS.RD SET.IN R0 THEN
            LEAVE LOOP
          END
        END
        IF R1 EQ #0 THEN
          XDTCALL
        END
        POP <R0, R1>
        RETURN
      END WQWAIT

  10. #259
    R.I.P. Аватар для hobot
    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    370
    Поблагодарили
    309 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Hunta Посмотреть сообщение
    Как программировать на MACRO-11 без меток
    Код:
    HD7>mac HTST
    A     1 000000  000000G 000000G         PROCEDURE WQWAIT
    A     3 000006  000000G 000001  000000      PUSH <R1, R0>
            000014  000000
    A     4 000016  000000G 000001  000000      THRU R1 := #0
    A     6 000026  000000G 000000G 000000G       IF RESULT IS PL ANDB #CS.RD SET.IN
     R0 THEN
            000034  000000G 000000G 000000
    A     7 000042  000000G 000000G                 LEAVE LOOP
    A    10 000052  000000G 000001  000000G     IF R1 EQ #0 THEN
            000060  000000
    A    13 000066  000000G 000000  000001      POP <R0, R1>
            000074  000000
    EQ    0                                   END WQWAIT
    ?MACRO-E-Errors detected:  8
    DK:HTST=DK:HTST
    И вот как это компилировать? И не ПАСКАЛЬ и не АССЕМБЛЕР ) Ни тот ни другой
    транслятор такой код не пропустит(!)
    Архив программ для УК-НЦ, ДВК и БК.

    Ищу игру "СТРАНА МОНСТРОВ" [monstr.sav] для ДВК.

  11. #260
    Guru
    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    6,992
    Спасибо Благодарностей отдано 
    285
    Спасибо Благодарностей получено 
    631
    Поблагодарили
    531 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Потому что PROCEDURE, PUSH, THRU, IF, END, ... - это макросы. Я специально написал MACRO-11 - его ключевое отличие от PAL-11 (если кто то знаком с ним) - МАКРОСЫ

    - - - Добавлено - - -

    А также POP, LEAVE и XDTCALL

Страница 26 из 61 ПерваяПервая ... 222324252627282930 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Квант-БК МС0530
    от moxjemi в разделе Клоны на ПЛИС, МК и БМК
    Ответов: 1
    Последнее: 20.05.2020, 17:59
  2. оживление C64
    от Fluffy Dragon в разделе Commodore 16/64/128
    Ответов: 50
    Последнее: 10.05.2017, 18:58
  3. Квант
    от Mx_Serg в разделе Специалист
    Ответов: 45
    Последнее: 20.03.2017, 02:58
  4. Квант-БК на ВГ2
    от Sergei Frolov в разделе Несортированное железо
    Ответов: 1
    Последнее: 27.07.2011, 14:21
  5. Квант 4С
    от Sergei Frolov в разделе ДВК, УКНЦ
    Ответов: 0
    Последнее: 16.04.2008, 14:23

Ваши права

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