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

User Tag List

Страница 111 из 183 ПерваяПервая ... 107108109110111112113114115 ... ПоследняяПоследняя
Показано с 1,101 по 1,110 из 1824

Тема: Эмулятор ДВК

  1. #1101
    Guru Аватар для MiX
    Регистрация
    13.12.2013
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,065
    Спасибо Благодарностей отдано 
    34
    Спасибо Благодарностей получено 
    74
    Поблагодарили
    62 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Это оставим для ДВК-4.
    Ок.
    Цитата Сообщение от Patron Посмотреть сообщение
    У ДВК-3М экран был монохромный с синим люминофором :
    Делать компы с цветным контроллером и ч/б трубкой, как-то вне логики.

    Цитата Сообщение от Patron Посмотреть сообщение
    Каждый драйвер в образе HX добавляет секунду к времени загрузки
    Тогда можно добавить в комплект два образа, типа Fast_HX и Full_HX. Образ Full_HX бывает необходим в случае когда надо "подцепить" не загрузочные (по каким либо причинам) диски MY,DW.

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

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    У ДВК-3М экран был монохромный с синим люминфором :
    Это про 6105? Так не с синим, а с белым. Тем самым, которым светили все отечественные ч/б телевизоры. Но да, он был с голубоватым оттенком ("голубые экраны телевизоров" - именно оттуда).

    Цитата Сообщение от MiX Посмотреть сообщение
    Делать компы с цветным контроллером и ч/б трубкой, как-то вне логики.
    Ну, теоретически, можно было заказать и с цветным моном (6106) А так, надо же было заводу избавиться от наштампованных кузовов ДВК-3, вот и затолкали. Да и качество наших 6106 еще то было...
    Кто мешает тебе выдумать порох непромокаемый? (К.Прутков, мысль № 133)

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

    По умолчанию

    Цитата Сообщение от MiX Посмотреть сообщение
    типа Fast_HX и Full_HX.
    Так вот же архив софта - любой системный образ собирайте под свои задачи ) В этом и прикол RT-11, что быстро и без заморочек собрать только нужное и конкретную задачу решить. А образ "всё включено" (!) всегда 2 копии - это у каждого своя специфика.

    Цитата Сообщение от Patron Посмотреть сообщение
    Это оставим для ДВК-4.
    Код:
    
    
    
                                О.С.  Д.E.M.O.С.
                                ....  ..........
    
    
    
                              В е р с и я   3 . 0
                    ..  1 9 9 1 ,   М П   " К р и с т а л л "
    
    
    
    
    
    
    
    
    
    
     (ДВК-4)
    
    Имя:
    - - - Добавлено - - -

    ДВК4 - это же КВАНТ-4? А КВАНТА-4 без КЦГД не бывает ;-)
    Там конечно другая "головная боль совместимости" - версии прошивок КЦГД.
    Архив программ для УК-НЦ, ДВК и БК.

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

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

    По умолчанию

    .

    Обновилась текущая сборка "эмулятора ДВК": DVK_Emulator_18.04.16_14-00

    Изменения:

    1. Исправлена ошибка в эмуляторе процессора 1801ВМ3, приводившая к неопределённому поведению при обращении к регистрам PDR режима KERNEL в режиме USER.

    2. В модуль DSK_module добавлен объект MT, эмулирующий контроллер TM-11 с приводами СМ5300, TS03 или TU10. Настройка: TapeSpeed_char/sec - задаёт скорость ленты для всех подключенных приводов. Возможные значения: 10000, 36000, 64000 или 72000, по умолчанию: 36000. В файлы конфигурации default.cfg и VM3.cfg добавлено создание объекта MT. В образ HDSYS.DSK добавлен драйвер MT.SYS, в комплект поставки добавлен образ MT.810 ( 10-мегабайтной ленты с плотностью записи 800 dpi ). Также возможно подключение образов TAP, 800, 820 и 840. Образы TAP подключаются только для чтения.

    3. В объект SB_DriveButton добавлена настройка ShowTrackNum, позволяющая включить отображение текущего номера дорожки для дисков и процента перемотки для лент. Возможные значения: No, Yes, Bold. По умолчанию: No. Пример использования - в файле: MY\MY.cfg

  5. #1105
    Guru Аватар для form
    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,823
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    281
    Поблагодарили
    227 сообщений
    Mentioned
    29 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    драйвер MT.SYS
    BUP.SAV тогда для ровного счету. Кстати ему (и программе DIR) не требуется полный драйвер.
    Цитата Сообщение от Patron Посмотреть сообщение
    только для чтения
    Создавать образы пока не получится?
    PDP-11/83, Электроника МС0511 (УК-НЦ), DECserver 90M
    Q-Bus: H9278-A, DLV11-J, DZQ11, DHV11, DELQA-M, LPV11, CQD-420/TM, DRV11
    PMI: KDJ11-BF, MSV11-JE
    VT220, CM7209

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

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    Создавать образы пока не получится?
    Нормальные посимвольные образы создавать получится, а создавать новые образы TAP большого смысла нет. Можно написать элементарную утилиту для конвертации посимвольных образов в TAP, но синхронное преобразование содержимого символьного буфера эмулятора в формат TAP в общем случае невозможно, поэтому невозможна и запись в образ TAP во время эмуляции.

  7. #1107
    Guru Аватар для form
    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,823
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    281
    Поблагодарили
    227 сообщений
    Mentioned
    29 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    посимвольные образы
    Сделать бы краткую спецификацию чтобы не копаться по куче документации. Я бы просто добавил функционал в mktape (в том числе для конвертирования одного формата в другой).

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

    Цитата Сообщение от Patron Посмотреть сообщение
    приводившая к неопределённому поведению при обращении к регистрам PDR режима KERNEL в режиме USER.
    А подробности можно узнать? Ибо некоторые падения остались без объяснения, а времени сильно копаться не было.
    PDP-11/83, Электроника МС0511 (УК-НЦ), DECserver 90M
    Q-Bus: H9278-A, DLV11-J, DZQ11, DHV11, DELQA-M, LPV11, CQD-420/TM, DRV11
    PMI: KDJ11-BF, MSV11-JE
    VT220, CM7209

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

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    Сделать бы краткую спецификацию
    Лента - последовательность 9-битных символов, представленная в образах символьного формата последовательностью 16-битных слов, биты 9..15 у которых всегда нулевые.

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

    У символов CRC и LPC - старший бит равноправен с остальными, поэтому символы CRC и/или LPC могут быть нулевыми.

    Организация данных на ленте такова, что промежутки состоят из нулевых символов, а блоки данных - из ненулевых символов. По умолчанию бит паритета для байта данных вычисляется по нечётности. После каждого блока данных находится последовательность: 3 нуля - CRC - 3 нуля - LPC.

    Символы данных, CRC и LPC вычисляются так:

    Код:
    word PDP11A16_MT_deviceClass::MakeNonet( byte uByte, bool bOdd )
    {
    	word  uParity = 0400 * bOdd;
    
    	for( byte mask = 0200 ; mask ; mask >>= 1 )
    	{
    		if( uByte & mask ) { uParity ^= 0400; }
    	}
    	
    	word  nonet = uByte | uParity;
    	
    	if( !nonet ) { nonet = 0400; }
    	
    	wLPC ^= nonet;
    
    	//////////////
    	
    	wCRC ^= nonet;
    	
    	bool bROR_1 = ( wCRC & 1 );
    	
    	wCRC >>= 1;
    
    	if( bROR_1 )
    	{	
    		wCRC |= 0400;
    		wCRC ^= 074;
    	}
    	
    	return nonet;
    }
    Перед записью символа CRC производится завершение вычисления CRC и LPC:

    Код:
    	wCRC ^= 0727;
    	wLPC ^= wCRC;
    Если блок данных состоит из одного символа данных = 023, CRC = 0, LPC = 023 - это метка EOF ( т.е. метка EOF - это последовательность: 023 - 7 нулей - 023 ).

    Промежуток между любыми блоками должен быть не меньше 400 символов. В начале ленты перед первым блоком оставляется промежуток 3200 символов. Перед меткой EOF промежуток 3200 символов.

    Расширение файла символьного образа содержит информацию о плотности записи и положении маркера EOT относительно начала ленты:

    Код:
    800 - лента длиной  600*12*800 =  5'760'000 символов.
    810 - лента длиной 1200*12*800 = 11'520'000 символов.
    820 - лента длиной 2400*12*800 = 23'040'000 символов.
    840 - лента длиной 4800*12*800 = 46'080'000 символов.
    Можно записать 46080000 символов и в файл с расширением 800, но тогда после чтения первых 5760000 из них в эмуляторе - активируется сигнал EOT.

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

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    В модуль DSK_module добавлен объект MT, эмулирующий контроллер TM-11 с приводами СМ5300, TS03 или TU10.
    А как вставить в эмулятор чистую ленту? Мне для возни с ДИАМСом оно очень пригодится: записать из ДИАМСа что-то на ленту, потом прочитать эту ленту из RT-11...
    Кто мешает тебе выдумать порох непромокаемый? (К.Прутков, мысль № 133)

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

    По умолчанию

    Цитата Сообщение от AFZ Посмотреть сообщение
    А как вставить в эмулятор чистую ленту?
    В диалоге выбора файла ввести имя нового образа без расширения и нажать <Ввод>. Операционка спросит - создавать ли новый файл и если да - будет создан пустой образ с раcширением 810.

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

    Цитата Сообщение от form Посмотреть сообщение
    А подробности можно узнать?
    Проблемный код выглядел так:

    Код:
    	switch( nIO_Addr &(~1) )
    	{
    		case 0172300: // PDRK0
    		case 0172302: // PDRK1
    		case 0172304: // PDRK2
    		case 0172306: // PDRK3
    		case 0172310: // PDRK4
    		case 0172312: // PDRK5
    		case 0172314: // PDRK6
    		case 0172316: // PDRK7
    		{
    			PDP11A16_DeviceClass::IO_fun( IO_Mode, IO_Size, nIO_Addr, wData );
    
    			if( IO_Mode == IO_WRITE )
    			{
    				REG_WORD( nIO_Addr &(~1) ) &= 077416;
    			}
    			
    			if( !wCurrMode )
    			{
    				word     nPageNum = ( word(nIO_Addr &(~1))- 0172300)/2;
    				Set_PDR( nPageNum );
    			}
    		}
    // 		--> Ошибка: нет "break;" <--
    		
    		case 0177600: // PDRU0
    		case 0177602: // PDRU1
    		case 0177604: // PDRU2
    		case 0177606: // PDRU3
    		case 0177610: // PDRU4
    		case 0177612: // PDRU5
    		case 0177614: // PDRU6
    		case 0177616: // PDRU7
    		{
    			PDP11A16_DeviceClass::IO_fun( IO_Mode, IO_Size, nIO_Addr, wData );
    
    			if( IO_Mode == IO_WRITE )
    			{
    				REG_WORD( nIO_Addr &(~1) ) &= 077416;
    			}
    			
    			if( wCurrMode )
    			{
    				word     nPageNum = ( word(nIO_Addr &(~1))- 0177600)/2;
    				Set_PDR( nPageNum );
    			}
    		}
    		break;

    В результате - в определённых ситуациях функция Set_PDR( nPageNum ) модифицировала произвольные участки памяти процесса.

Страница 111 из 183 ПерваяПервая ... 107108109110111112113114115 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Эмулятор
    от vladimir53 в разделе Орион
    Ответов: 19
    Последнее: 24.06.2022, 08:02
  2. Эмулятор ПЗУ.
    от ALKO в разделе Память
    Ответов: 8
    Последнее: 17.05.2011, 13:41
  3. Эмулятор AY на AVR
    от serkiri в разделе Звук
    Ответов: 52
    Последнее: 10.06.2010, 09:01
  4. Эмулятор для Mac
    от AlexBel в разделе Эмуляторы
    Ответов: 11
    Последнее: 02.05.2010, 18:53

Ваши права

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