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

User Tag List

Страница 27 из 28 ПерваяПервая ... 232425262728 ПоследняяПоследняя
Показано с 261 по 270 из 276

Тема: Практическое программирование в среде RT-11 на ассемблере.

  1. #261
    Moderator Аватар для MM
    Регистрация
    20.04.2013
    Адрес
    г. Павловский Посад
    Сообщений
    4,133
    Спасибо Благодарностей отдано 
    470
    Спасибо Благодарностей получено 
    519
    Поблагодарили
    412 сообщений
    Mentioned
    42 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Очень практический вопрос :
    нужна маленькая программа под RT-11 SJ V5.00, которая запрашивает имя файла ( с клавиатуры ), и читает его в адрес 020000. При этом считанный файл не должен быть длинее 020000 ( 8 ).
    Если кто силен в ассемблере - опубликуйте , пожалуйста, программу в виде восьмеричных цифр. Адрес начала программы - 002000 ( 8 ).
    Блог : http://collectingrd.kxk.ru/ . В ЛС прошу не писать, все сообщения [email protected]

  2. #262
    Moderator Аватар для MM
    Регистрация
    20.04.2013
    Адрес
    г. Павловский Посад
    Сообщений
    4,133
    Спасибо Благодарностей отдано 
    470
    Спасибо Благодарностей получено 
    519
    Поблагодарили
    412 сообщений
    Mentioned
    42 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от MM Посмотреть сообщение
    практический вопрос
    Ладно, по причине отсуствия реальных программеров вопрос снимается - общественность будет просто указавать номер сектора диска BY: для чтения контента для программатора ЭСППЗУ.
    Блог : http://collectingrd.kxk.ru/ . В ЛС прошу не писать, все сообщения [email protected]

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

    По умолчанию

    Цитата Сообщение от MM Посмотреть сообщение
    по причине отсуствия реальных программеров вопрос снимается
    Ну почему же? Вот программуля. Учитывая, что предполагается ввод ее с пульта, сделана предельно упрощенной. Поэтому:
    1. Драйвер диска, с которого будут загружаться данные, должен быть загружен заранее (или быть резидентным).
    2. USR должна быть загружена (SET USR NOSWAP)
    3. Ошибки проверяются, но не анализируются, по любой ошибке будет сообщение "*** ERROR ***"
    4. Имя файла принимается по .CSISPC, т.е. после запуска программы она выдаст звездочку, после которой надо набрать имя файла. Дефолтный тип файла .ROM

    Архив содержит всё, включая дамп значимого блока модуля .SAV (CHG.DMP). Название, кстати, осталось от какой-то моей старой программы, что-то я там изменял, а для этой выдернул начало не вникая, что там дальше.

    Если нет возможности перенести программу на загружаемый диск, то можно попробовать набрать ее с пульта и сохранить на диске командой SAVE.
    Последний раз редактировалось AFZ; 03.08.2018 в 07:16.
    Кто мешает тебе выдумать порох непромокаемый? (К.Прутков, мысль № 133)

  4. #264
    Moderator Аватар для MM
    Регистрация
    20.04.2013
    Адрес
    г. Павловский Посад
    Сообщений
    4,133
    Спасибо Благодарностей отдано 
    470
    Спасибо Благодарностей получено 
    519
    Поблагодарили
    412 сообщений
    Mentioned
    42 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Практический вопрос о карте загрузки блоков программы типа .SAV, размещается с 360 ячейки 0 блока.
    Например, значение адреса 360 "000377" соответствует каким именно загружаемым блокам ?
    В русском переводе мануала по модулю .SAV этот вопрос рассмотрен слишком кратко, без примеров.
    Блог : http://collectingrd.kxk.ru/ . В ЛС прошу не писать, все сообщения [email protected]

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

    По умолчанию

    Ну, судя по тому, что в моей CHG.SAV загружаются блоки 0 и 2, а в ячейке 360 лежит код 240, очевидно, что 7-й бит (0200) отвечает за блок 0, а 5-й (040) за блок 2. Остальные, видимо, по аналогии.
    Кто мешает тебе выдумать порох непромокаемый? (К.Прутков, мысль № 133)

  6. #266
    Activist Аватар для randomizer
    Регистрация
    05.04.2016
    Адрес
    г. Мончегорск, Мурманская обл.
    Сообщений
    411
    Спасибо Благодарностей отдано 
    94
    Спасибо Благодарностей получено 
    67
    Поблагодарили
    44 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию загрузка файла в память

    Как можно загрузить файл в регион памяти. Пробую загрузить изображение используя следующий код, отрабатывает без ошибок, но не загружается даже хотя бы одного блока.
    Код:
    
    ReadFile:       ;------------------------------------------------------------{{{
                    .LOOKUP #AREA,#0,#FileName      ;.LOOKUP area,chan,dblk[,seqnum]
                    BCC     1$
                    .PRINT  LERR
    1$:             .READW  #AREA,#0,#FB,9600.,#0   ;.READW  area,chan,buf,wcnt,blk[,BMODE=strg]
                    BCC     2$
                    .PRINT  RERR
    2$:             .CLOSE  #0                      ;.CLOSE  chan
                    RETURN
    
    LERR:           .ASCIIZ /Lookup error/
    RERR:           .ASCIIZ /Read error/
                    .Even
    AREA:           .BLKW   5       ;EMT Argument Block
    FileName:       .RAD50  /DK REBELSBPS/
    ;----------------------------------------------------------------------------}}}

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

    По умолчанию

    Цитата Сообщение от randomizer Посмотреть сообщение
    не загружается даже хотя бы одного блока
    Недостаточно информации. К примеру чему равно FB. Все мониторы кроме SJ (включая SB) проверяют что адрес принадлежит задаче (то есть если адрес где-то в странице I/O, номер не пройдет.
    В строках, печатющих ошибку - ошибка - результат будет не тот, что ожидается (адрес символа пишется с #)
    В самих строках сообщений тоже (там получается .ASCII, а не .ASCIZ как предполагалось).
    Последний раз редактировалось form; 04.12.2018 в 18:18.
    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. #268
    Activist Аватар для randomizer
    Регистрация
    05.04.2016
    Адрес
    г. Мончегорск, Мурманская обл.
    Сообщений
    411
    Спасибо Благодарностей отдано 
    94
    Спасибо Благодарностей получено 
    67
    Поблагодарили
    44 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    FB определён в теле программы как
    Код:
    FB::            ;framebuffer
                    .=BP12
                    .BLKW   <320*240*2/16>
    Цитата Сообщение от form Посмотреть сообщение
    Все мониторы кроме SJ (включая SB) проверяют что адрес принадлежит задаче
    А я как раз использую SJ монитор версии 5.04g, на УКНЦ.
    Цитата Сообщение от form Посмотреть сообщение
    В строках, печатющих ошибку - ошибка - результат будет не тот, что ожидается (адрес символа пишется с #)
    упс...

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

    По умолчанию

    Цитата Сообщение от randomizer Посмотреть сообщение
    А я как раз использую SJ монитор версии 5.04g, на УКНЦ.
    5.04g переходная система к новым - там может так же быть. Или как минимум может проверяться, что адрес указывает выше самой системы в памяти. Так, что тут смотреть надо. В любом случае если адрес из I/O page, лучше через буфер делать.

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

    Да, ну и само устройство (или его эмуляция раз речь про УКНЦ) может не предусматривать передачу данных в I/O page.
    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

  10. #270
    Activist Аватар для randomizer
    Регистрация
    05.04.2016
    Адрес
    г. Мончегорск, Мурманская обл.
    Сообщений
    411
    Спасибо Благодарностей отдано 
    94
    Спасибо Благодарностей получено 
    67
    Поблагодарили
    44 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    Да, ну и само устройство (или его эмуляция раз речь про УКНЦ) может не предусматривать передачу данных в I/O page.
    Я пытаюсь загрузить как раз в память которая ниже ОС, в нижние 32КБ(в УКНЦ только их можно использовать как видеопамять с прямым доступом).

    Попробую ещё вечером запустить исправив ошибки с выводом сообщений на экран.

    Кстати, из описания вызова не совсем ясно как он работает: необходимо задать wcnt - количество слов для чтения и blk - блок для чтения. Я так понимаю что если задать wcnt=128, и blk=0, при размере блока 512 байт, в буфер будут занесены 256 байт. А если задать wcnt больше размера блока? Будут прочитаны несколько блоков?

Страница 27 из 28 ПерваяПервая ... 232425262728 ПоследняяПоследняя

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

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

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

Похожие темы

  1. Арифметические процедуры на ассемблере
    от spensor в разделе Программирование
    Ответов: 27
    Последнее: 13.05.2017, 20:56
  2. Пишем на ассемблере под эмулятором
    от GM BIT в разделе Для начинающих
    Ответов: 76
    Последнее: 15.07.2016, 20:04
  3. try-catch на ассемблере z80
    от siril в разделе Программирование
    Ответов: 22
    Последнее: 30.10.2012, 21:17
  4. Продам книгу- AMIGA: программирование на ассемблере
    от Doctor Max в разделе Барахолка (архив)
    Ответов: 11
    Последнее: 01.03.2012, 00:35
  5. Подпрограмма на ассемблере в памяти?
    от jimled в разделе Программирование
    Ответов: 1
    Последнее: 29.11.2009, 06:46

Ваши права

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