User Tag List

Страница 79 из 122 ПерваяПервая ... 757677787980818283 ... ПоследняяПоследняя
Показано с 781 по 790 из 1564

Тема: Программирование на УКНЦ как?

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

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

    По умолчанию

    Цитата Сообщение от MacBuster Посмотреть сообщение
    Проверил - да, похоже что с ним получается только код с 6-байтовым заголовком. Заголовок не смотрел.
    Формат LDA описан в RT-11 Volume And File Formats Manual. В общем случае файл делится на куски, каждый из них предваряется заголовком в котором прописан адрес в который этот кусок грузится и его длина, а в конце идет контрольная сумма. Заканчивается файл голым заголовком который сообщает стартовый адрес или 1 если его нет. Формат предназначен для записи на перфоленту. Так же используется в XXDP для запускаемых файлов (там формат немного расширен для использования расширенной памяти).

    Если нужен чистый код без нулевого блока SAV файла, то проще сделать
    Код:
    .SPLIT FILE.SAV/B:1 ,FILE.BIN
    (нужна программа SPLIT.SAV из стандартного набора RT-11).
    Последний раз редактировалось form; 27.12.2018 в 22:08.
    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

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

  3. #2

    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    374
    Поблагодарили
    311 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от S_V_B Посмотреть сообщение
    Подскажите как в ЦП по простому синхронизироваться с сетевым таймером?
    Задача стереть-вывести спрайт с началом обратного хода.
    В ПП все тривиально: 7130 - 1, 7132- адрес процедуры.
    перекинул вопрос в тему, надо системнее справочки шпаргалочки, потом искать проще )
    @S_V_B
    Последний раз редактировалось hobot; 28.05.2019 в 11:24.
    Архив программ для УК-НЦ, ДВК и БК.

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

  4. #3

    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    374
    Поблагодарили
    311 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    Question Как и можно ли выполнить LOAD SYS из программы?

    Как и можно ли выполнить LOAD SYS из программы?

    допустим я хотел бы из своей программы запускать часики @form 'a CL.SYS которые?
    Это хороший пример, поскольку часики для старта не нужны никакие SET, just LO CL?
    Последний раз редактировалось hobot; 30.05.2019 в 03:03.
    Архив программ для УК-НЦ, ДВК и БК.

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

  5. #4

    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    7,507
    Спасибо Благодарностей отдано 
    344
    Спасибо Благодарностей получено 
    714
    Поблагодарили
    596 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от hobot Посмотреть сообщение
    Как и можно ли выполнить LOAD SYS из программы?
    Код:
    	.TITLE	RELEAS
    ;In this example, the Null handler (NL) is loaded into memory,
    ;used, then released. If NL is LOADed the handler is
    ;resident, and .FETCH will return HSPACE in R0.
    	.MCALL	.FETCH,.RELEAS,.EXIT,.PRINT
    START:	.FETCH	#HSPACE,#NLNAME	;Load NL handler
    	BCS	FERR	;Not available
    
    ; Use handler
    
    	.RELEAS	#NLNAME	;Mark NL no longer in memory
    	.EXIT
    FERR:	.PRINT	#NONL	;NL not available
    	.EXIT
    NLNAME:	.RAD50	/NL /	;Name for NL handler
    NONL:	.ASCIZ	/?ERELEA-F-NL handler not available/
    	.EVEN
    HSPACE:			;Beginning of handler area
    	.END	START

  6. #5

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

    По умолчанию

    Цитата Сообщение от hobot Посмотреть сообщение
    Как и можно ли выполнить LOAD SYS из программы?
    Выше Hunta привет пример.
    Вроде CL поддерживает вызов .FETCH - не помню уже. Если нет - можно сделать

    Разве что замечу, что метка перед .END не всегда будет последним адресом программы. Более универсальный метод - взять значение по адресу 50 и прибавить к нему 2 (или взять значение, генерируемое директивой .LIMIT).
    Последний раз редактировалось form; 30.05.2019 в 07:43.
    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

  7. #6

    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    7,507
    Спасибо Благодарностей отдано 
    344
    Спасибо Благодарностей получено 
    714
    Поблагодарили
    596 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    Более универсальный метод - взять значение по адресу 50 и прибавить к нему 2
    Более правильный метод - получить размер драйвера (.DSTAT?), выделить кусок памяти соответствующего размера и грузить драйвер туда. Но это если в SJ/FB. А если в XM и виртуальная программа - с ходу не скажу - таких я мало писал

  8. #7

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

    По умолчанию

    Цитата Сообщение от Hunta Посмотреть сообщение
    Более правильный метод - получить размер драйвера (.DSTAT?), выделить кусок памяти соответствующего размера и грузить драйвер туда. Но это если в SJ/FB. А если в XM и виртуальная программа - с ходу не скажу - таких я мало писал
    Использование .DSTAT и .SETTOP имеет смысл если хочется грузить драйвера начиная сверху вниз, а промежуток до них использовать на свое усмотрение. MU BASIC-11 так делает например.
    В остальном смысла особого нет так как единственное что делает .SETTOP - это просто переставляет значение ячейки 50.
    Так что если нет нужды в вышеописанном варианте, можно просто использовать .FETCH с указанием первого свободного адреса, а на выходе получать новый свободный адрес с учетом загруженного драйвера.
    Бонусом будет отсутствие лишней суеты с файлом SWAP.SYS после выхода из программы
    Что касается XM, в нем FG job е может использовать .FETCH, а в виртуальной BG программе .SETTOP просто переставит лимит задачи на который .FETCH и загруженному драйверу глубоко наплевать
    Ну и для полноты картины, остается упомянуть VBGEXE BG job - в этом случае указанный в .FETCH адрес вообще никак не используется.
    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

  9. #8

    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    7,507
    Спасибо Благодарностей отдано 
    344
    Спасибо Благодарностей получено 
    714
    Поблагодарили
    596 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

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

  10. #9

    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    374
    Поблагодарили
    311 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    .FETCH с указанием первого свободного адреса, а на выходе получать новый свободный адрес с учетом загруженного драйвера.
    как это значение получить, ведь у всех свои конфиги ?
    Архив программ для УК-НЦ, ДВК и БК.

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

  11. #10

    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    374
    Поблагодарили
    311 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Hunta,
    form, благодарю )

    пока результат такой, буду эксп-ть )

    Код:
    *** CТOП ***                                                                    
    000016/ 000000                                                                  
    @ 0                                                                             
    *** ДBOЙНOE ЗABИCAНИE ***                                                       
    000006/ 000000                                                                  
    @
    двойное зависание - обожаю, но "сбой аппаратуры" это абсолютный хит!
    Архив программ для УК-НЦ, ДВК и БК.

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

Страница 79 из 122 ПерваяПервая ... 757677787980818283 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Программирование на Эмуляторе. Возможно ли это?
    от Toxic в разделе Программирование
    Ответов: 10
    Последнее: 20.01.2008, 19:20
  2. Программирование Altera и JTAG
    от Mikka_A в разделе Несортированное железо
    Ответов: 7
    Последнее: 18.01.2008, 09:07
  3. Программирование и софтмейк на NES
    от Splinter в разделе Nintendo
    Ответов: 7
    Последнее: 30.06.2006, 04:31

Ваши права

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