User Tag List

Страница 5 из 5 ПерваяПервая 12345
Показано с 41 по 43 из 43

Тема: RT-11 и аргументы командной строки

  1. #41

    Регистрация
    25.08.2012
    Адрес
    г. Красноярск
    Сообщений
    1,245
    Спасибо Благодарностей отдано 
    343
    Спасибо Благодарностей получено 
    369
    Поблагодарили
    261 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    После .CSISPC - никак - потребуются отдельные действия

    Самое простое - посмотреть в области каналов (через смещения RMON).
    Описание содержимого блока каналов есть в System Internals.
    гм


    Универсальный вариант - сначала вызвать .CSTAT, проверить по слову имени устройства что .CSTAT работает (его нет в SJ мониторе, но ошибки не будет), если не работает - получить информацию через смещения RMON (для SJ каналы гарантированно там).
    увы это первое, что я опробовал и потому уточнял что у меня SJ (это БКшка и там своя перепиленная RT11)

    .CSISPC опробовал, но он блин имеет неприятный побочный эффект, после него RT11 хочет ПЗУ КНГМД которое я хочу отключить
    Все о БК ДВК УКНЦ VAX Alpha

    Архив ПО для ретрокомпьютеров

    предоставляю бесплатный хостинг на PDP-11.RU для проектов о ретрокомпьютерах

  2. #42

    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    3,247
    Спасибо Благодарностей отдано 
    360
    Спасибо Благодарностей получено 
    638
    Поблагодарили
    414 сообщений
    Mentioned
    46 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от SuperMax Посмотреть сообщение
    гм
    Пункт 2.3.1 в данном документе описывает структуру каналов. По умолчанию в SJ их 16 (от 0 до 17 восьмеричные). Расположены каналы со смещения 4 в RMON (ячейка 54 - начало RMON), на каждый канал выделено 5 слов.
    Для .CSIGEN это каналы от 0 до 2 для вывода и от 3 до 10 для ввода. Смотрите слово статуса канала (смещение 0, бит 15), что канал открыт, соответственно в слове со смещением 4 - размер файла.

  3. #43

    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,850
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    289
    Поблагодарили
    233 сообщений
    Mentioned
    30 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Универсальный вариант. Подпрограмма берет номер канала (0-17) из R0, в R1 возвращает адрес блока информации о канале.
    Если на выходе C=1 - канал не открыт. Подпрограмма сработает в любом мониторе (включая TSX).
    Для SB/FB/XM/XB/ZM/ZB/TSX сработает .CSTAT, в этом случае пофигу FG или BG задание работает (и номер канала тоже любой годится).
    Для SJ .CSTAT не сработает и не выдаст ошибки - это для нас сигнал: ошибки нет, но канал не открыт (если верить блоку состояния канала). Поскольку в SJ у нас есть только BG - можно смело брать информацию о каналах 0-17 из RMON.
    Код:
    	.TITLE	CSTAT
    	.IDENT	/V01.00/
    
    $SYPTR	=:	54			;УКАЗАТЕЛЬ НА RMON
    
    ;+
    ;$CSTAT	-- ПОЛУЧЕНИЕ ИНФОРМАЦИИ О КАНАЛЕ
    ;
    ;НА ВХОДЕ:
    ;	R0	- НОМЕР КАНАЛА (0-17)
    ;
    ;НА ВЫХОДЕ:
    ;	C	- 0=ИНФОРМАЦИЯ ПОЛУЧЕНА, 1=КАНАЛ НЕ ОТКРЫТ
    ;	R1	- АДРЕС БЛОКА ИНФОРМАЦИИ
    ;		  +00	- СЛОВО СОСТОЯНИЯ КАНАЛА
    ;		  +02	- НАЧАЛЬНЫЙ БЛОК НА УСТРОЙСТВЕ (0 ДЛЯ УСТРОЙСТВА)
    ;		  +04	- ДЛИНА ФАЙЛА В БЛОКАХ (0 ДЛЯ УСТРОЙСТВА)
    ;		  +10	- БАЙТ, КОЛИЧЕСТВО ЗАПРОСОВ В ОЧЕРЕДИ
    ;		  +11	- БАЙТ, НОМЕР УСТРОЙСТВА
    ;-
    $CSTAT::
    	MOV	R0,-(SP)		;@SP=CH
    	MOV	#STAT,R1		;R1=БЛОК СОСТОЯНИЯ
    	CLR	@R1			;ИНИЦИАЛИЗИРУЕМ БЛОК
    	.CSTAT	#AREA,@SP,R1		;ПОЛУЧАЕМ ИНФОРМАЦИЮ О КАНАЛЕ
    	BCS	10$			;CS - КАНАЛ НЕ ОТКРЫТ
    	TST	@R1			;ПРОВЕРЯЕМ БИТ ОТКРЫТОГО КАНАЛА
    	BMI	10$			;MI - КАНАЛ ОТКРЫТ - .CSTAT СРАБОТАЛ
    	MOV	@#$SYPTR,R1		;R1=RMON
    	CMP	(R1)+,(R1)+		;R1=$CSW
    	ASL	@SP			;@SP=CH*2
    	ADD	@SP,R1			;R1=$CSW+CH*2
    	ASL	@SP			;@SP=CH*4
    	ASL	@SP			;@SP=CH*10
    	ADD	@SP,R1			;R1=$CSW+CH*12
    	CMP	@R1,#100000		;УСТАНАВЛИВАЕМ C ЕСЛИ КАНАЛ НЕ ОТКРЫТ
    10$:	MOV	@SP,(SP)+		;ВОССТАНАВЛИВАЕМ СТЕК (НЕ ТРОГАЯ C)
    	RETURN				;ВОЗВРАТ
    
    AREA:	.BLKW	2			;БЛОК EMT
    STAT:	.BLKW	6			;БЛОК СОСТОЯНИЯ КАНАЛА
    
    	.END
    Последний раз редактировалось form; 30.09.2021 в 09:37.
    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

    Этот пользователь поблагодарил form за это полезное сообщение:

    SuperMax(30.09.2021)

Страница 5 из 5 ПерваяПервая 12345

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

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

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

Похожие темы

  1. Утилиты для командной строки.
    от NEO SPECTRUMAN в разделе Софт
    Ответов: 5
    Последнее: 02.05.2012, 18:48
  2. Основной экран в 24 строки
    от Den Zurin в разделе Для начинающих
    Ответов: 5
    Последнее: 12.12.2010, 09:07
  3. Google ищет по TAP файлам! Нашел строки Ваксона!
    от Raider в разделе Разный софт
    Ответов: 7
    Последнее: 18.12.2006, 11:25
  4. Скроллирование строки
    от caro в разделе Программирование
    Ответов: 76
    Последнее: 16.05.2006, 17:11

Ваши права

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