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

User Tag List

Страница 4 из 32 ПерваяПервая 12345678 ... ПоследняяПоследняя
Показано с 31 по 40 из 311

Тема: Эмулятор НЕМИГА

  1. #31
    Veteran Аватар для nzeemin
    Регистрация
    20.12.2005
    Адрес
    Москва
    Сообщений
    1,996
    Спасибо Благодарностей отдано 
    1,061
    Спасибо Благодарностей получено 
    1,224
    Поблагодарили
    478 сообщений
    Mentioned
    15 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Раскапываю прошивку Немиги версии 3.03.

    Интересный трюк -- подпрограмма, которая (по-видимому) вызывается чтобы остальную часть подпограммы выполнить в режиме HALT:
    Код:
    ; Вызов подпрограммы в режиме HALT и возврат в USER?? 
    163512: MOVB	#000003, @#170006	; Включение HALT??
    163520: CALL	@(SP)+			; Выполняем как п/п то что после CALL @#163512
    163522: MOVB	#000000, @#170006	; Возврат в USER??
    163530: RETURN
    В коде пультового терминала обнаружил команду пульта 'X', которая не описана в ТО. Оказалось, что эта команда работает с каким-то устройством с адресом 177170, которое также не описано в ТО.
    Код:
    161666: MOV	#177170, R1		; ?? Что за устройство??
    161672: MOV	#040000, (R1)
    161676: BITB	R2, (R1)
    161700: BEQ	161676

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

  3. #32
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    177170 - адрес контроллера RX, который обслуживается драйверами DX ( RX01 ) и DY ( RX02 ).

    В ПЗУ ДВК-1 загрузчик с RX01 выглядит так:
    Код:
    ROM:173000 RX01_Loader:
    ROM:173000                 Mov     #100247, R2
    ROM:173004 loc_173004:
    ROM:173004                 Mov     #177170, R1
    ROM:173010 loc_173010:
    ROM:173010                 BiTB    R2, (R1)
    ROM:173012                 BEq     loc_173010
    ROM:173014                 MovB    #7, R3
    ROM:173020                 Mov     R1, R0
    ROM:173022                 Mov     R2, (R0)+
    ROM:173024                 Br      loc_173032
    ROM:173026 loc_173026:
    ROM:173026                 Mov     #1, (R0)
    ROM:173032 loc_173032:
    ROM:173032                 ASR     R3
    ROM:173034                 BCS     loc_173042
    ROM:173036                 MovB    (PC)+, (R1)
    ROM:173040 loc_173040:
    ROM:173040                 MovB    (R0), (R3)+
    ROM:173042 loc_173042:
    ROM:173042                 BiT     R2, (R1)
    ROM:173044                 BEq     loc_173042
    ROM:173046                 BMi     loc_173004
    ROM:173050                 BCS     loc_173026
    ROM:173052                 TstB    (R1)
    ROM:173054                 BMi     loc_173040
    ROM:173056                 Clr     R0
    ROM:173060                 Cmp     #240, (R0)
    ROM:173064                 BNE     loc_173004
    ROM:173066                 CmpB    #247, R2
    ROM:173072                 AdC     R0
    ROM:173074                 Clr     @#CPC
    ROM:173100                 Mov     #340, @#CPSW
    ROM:173106                 START
    а загрузчик с RX02 выглядит так:
    Код:
    ROM:173200 RX02_Loader:
    ROM:173200                 Mov     #400, R0
    ROM:173204                 Mov     #177170, R3
    ROM:173210                 Mov     #177172, R4
    ROM:173214                 Mov     #401, R5
    ROM:173220                 Mov     #200, R1
    ROM:173224                 BiT     #400, R0
    ROM:173230                 BNE     loc_173236
    ROM:173232                 Mov     #100, R1
    ROM:173236 loc_173236:
    ROM:173236                 Clr     R2
    ROM:173240 loc_173240:
    ROM:173240                 BiC     #177357, R0
    ROM:173244 loc_173244:
    ROM:173244                 BiS     #7, R0
    ROM:173250 loc_173250:
    ROM:173250                 Mov     R0, (R3)
    ROM:173252 loc_173252:
    ROM:173252                 BiT     #100200, (R3)
    ROM:173256                 BEq     loc_173252
    ROM:173260                 BMi     loc_173250
    ROM:173262                 MovB    R5, (R4)
    ROM:173264 loc_173264:
    ROM:173264                 BiT     #100200, (R3)
    ROM:173270                 BEq     loc_173264
    ROM:173272                 BMi     loc_173250
    ROM:173274                 SwaB    R5
    ROM:173276                 MovB    R5, (R4)
    ROM:173300                 SwaB    R5
    ROM:173302 loc_173302:
    ROM:173302                 BiT     #100040, (R3)
    ROM:173306                 BEq     loc_173302
    ROM:173310                 BMi     loc_173244
    ROM:173312                 BiC     #177357, R0
    ROM:173316                 BiS     #3, R0
    ROM:173322 loc_173322:
    ROM:173322                 Mov     R0, (R3)
    ROM:173324 loc_173324:
    ROM:173324                 BiT     #100200, (R3)
    ROM:173330                 BEq     loc_173324
    ROM:173332                 BMi     loc_173322
    ROM:173334                 Mov     R1, (R4)
    ROM:173336 loc_173336:
    ROM:173336                 BiT     #100200, (R3)
    ROM:173342                 BEq     loc_173336
    ROM:173344                 BMi     loc_173322
    ROM:173346                 Mov     R2, (R4)
    ROM:173350 loc_173350:
    ROM:173350                 BiT     #100040, (R3)
    ROM:173354                 BEq     loc_173350
    ROM:173356                 BMi     loc_173240
    ROM:173360                 CmpB    (R5)+, (R5)+
    ROM:173362                 Add     R1, R2
    ROM:173364                 Add     R1, R2
    ROM:173366                 Cmp     R2, #1000
    ROM:173372                 BCS     loc_173240
    ROM:173374                 Mov     R0, R1
    ROM:173376                 Clr     R0
    ROM:173400                 BiT     #20, R1
    ROM:173404                 BEq     loc_173410
    ROM:173406                 Inc     R0
    ROM:173410 loc_173410:
    ROM:173410                 BiC     #177377, R1
    ROM:173414                 Clr     @#CPC
    ROM:173420                 Mov     #340, @#CPSW
    ROM:173426                 START
    Последний раз редактировалось Patron; 04.01.2013 в 00:53.

  4. #33
    Veteran Аватар для nzeemin
    Регистрация
    20.12.2005
    Адрес
    Москва
    Сообщений
    1,996
    Спасибо Благодарностей отдано 
    1,061
    Спасибо Благодарностей получено 
    1,224
    Поблагодарили
    478 сообщений
    Mentioned
    15 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Более полно у меня загрузчик выглядит так:
    Код:
    ; Команда 'X' -- ??
    161646: MOV	#100247, R2
    161652: CMP	R5, #000001
    161656: BLO	161666
    161660:	BHI	161516			; Показываем признак ошибки, возврат в пульт
    161662:	BIS	#000020, R2
    161666: MOV	#177170, R1		; ?? Что за устройство??
    161672: MOV	#040000, (R1)
    161676: BITB	R2, (R1)
    161700: BEQ	161676			; Цикл ожидания готовности??
    161702:	MOV	#000007, R3
    161706:	MOV	R1, R0
    161710:	MOV	R2, (R0)+
    161712:	BR	161720
    161714:	MOV    	#000001, (R0)
    161720:	ASR    	R3
    161722:	BLO    	161730
    161724:	MOV    	#111023, (R1)		; ?? тут либо трюк
    161726:	MOVB   	(R0), (R3)+		; ?? либо неправильно дизассемблировано
    161730:	BIT    	R2, (R1)
    161732:	BEQ    	161730
    161734:	BMI    	161676
    161736:	BLO    	161714
    161740:	TSTB   	(R1)
    161742:	BMI    	161726
    161744:	CLR    	R0
    161746:	CMPB   	#000247, R2
    161752:	ADC    	R0
    161754:	MOV    	#000200, @#177766
    161762:	CLR    	PC			; Запуск полученного блока??
    На входе в R5 походу приходит номер устройства -- т.е. можно ввести 1X например.
    Правильно ли я понимаю, что здесь мы имеем дело с контроллером дисковода формата DX («ГМД-70», «ГМД-7012») ?

  5. #34
    Guru
    Регистрация
    15.09.2009
    Адрес
    SPb
    Сообщений
    7,163
    Спасибо Благодарностей отдано 
    230
    Спасибо Благодарностей получено 
    262
    Поблагодарили
    190 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Не пробовали этот кусок кода (да и вообще кусок кода загрузки ПЗУ) сравнить с 1801РЕ1/2-054?

  6. #35
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от nzeemin Посмотреть сообщение
    Правильно ли я понимаю, что здесь мы имеем дело с контроллером дисковода формата DX («ГМД-70», «ГМД-7012») ?
    Это практически один-в-один загрузчик DX LSI-11 по адресу 173000 ( скопированный в ПЗУ Электроники-60 и всех прошивках ДВК ).

    Выше я привёл код этого загрузчика из ПЗУ ДВК - видно, что они практически идентичны.

    ...
    Последний раз редактировалось Patron; 04.01.2013 в 14:34.

  7. #36
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

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

    Обычные причины - неправильная обработка команды STEP эмулятором контроллера или недостаточная задержка после выдачи STEP в драйвере.

    В контроллере MX задержка после выдачи STEP делается в драйвере путём запуска встроенного таймера контроллера MX, который запускается установкой бита 0200 в регистре состояния ( CSR ) и при работе - устанавливает этот бит 2000 раз в секунду, сбрасывая его после каждого чтения CSR.

    ...
    Последний раз редактировалось Patron; 04.01.2013 в 16:55.

  8. #37
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

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

    ---------- Post added at 17:45 ---------- Previous post was at 17:41 ----------

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

    ...
    Последний раз редактировалось Patron; 04.01.2013 в 18:43.

  9. #38
    Veteran Аватар для nzeemin
    Регистрация
    20.12.2005
    Адрес
    Москва
    Сообщений
    1,996
    Спасибо Благодарностей отдано 
    1,061
    Спасибо Благодарностей получено 
    1,224
    Поблагодарили
    478 сообщений
    Mentioned
    15 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию beta 2

    Однако, мы загрузились:



    Patron и dk_spb, ваши комментарии очень помогли!

    Берите более свежую версию ниже.
    Последний раз редактировалось nzeemin; 09.01.2013 в 00:43.

  10. #39
    Guru Аватар для ZEman
    Регистрация
    28.10.2005
    Адрес
    Омск
    Сообщений
    2,052
    Спасибо Благодарностей отдано 
    113
    Спасибо Благодарностей получено 
    34
    Поблагодарили
    23 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    подскажите, где взять образы дискет для немиги.

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

    По умолчанию

    Цитата Сообщение от nzeemin Посмотреть сообщение
    dk_spb
    Дискеты? Можно в этой теме ожидать в ближайшем будущем? С целью подшивки к развивающемуся эмулятору и изучения содержимого?

    ---------- Post added at 19:18 ---------- Previous post was at 19:01 ----------


    местны SL ) Крутизна неимоверная, очень медленно работает дисковод - так и на реале наверное? Ошибки чтения пишет часто - куда делся курсор? Отдельно спасибо за граф. клавиатуру - без неё пока вообще никак )
    Надо 10 образов дискет, а не 1 с числом просмотров 10 конечно же )

    ---------- Post added at 19:25 ---------- Previous post was at 19:18 ----------

    RT-11 рулит !
    Архив программ для УК-НЦ, ДВК и БК.

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

Страница 4 из 32 ПерваяПервая 12345678 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Эмулятор ДВК
    от Patron в разделе Эмуляторы отечественных компьютеров
    Ответов: 1823
    Последнее: 18.04.2024, 22:11
  2. Учебный комплекс НЕМИГА.
    от felix в разделе ДВК, УКНЦ
    Ответов: 401
    Последнее: 21.06.2023, 16:17
  3. Эмулятор
    от vladimir53 в разделе Орион
    Ответов: 19
    Последнее: 24.06.2022, 08:02
  4. Эмулятор для Mac
    от AlexBel в разделе Эмуляторы
    Ответов: 11
    Последнее: 02.05.2010, 18:53

Ваши права

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