📂 Документ: orion128-soft-cpm80-acpm-ld_clean.html


 

LD.COM для отладки программ, работает с  ACP/M SP-Computer Club,Орион-128

LD.COM, Программа заменяет также стандартную утилиту LOAD.COM, так как может работать как с данными в "чистом" виде, так и с файлами формата "HEX", формируемыми ассемблером

. .

Продаю платы и наборы микросхем, куплю микросхемы

Все версии CP/M-80

Все версии ORDOS

 Авторский контроллер НГМД. Мы собираем именно такой и на нем работаем.  Читайте про пакет Атлас. Также дискеты можно отформатировать из под ORDOS пакетом программ Атлас.

Руководство системного программиста OS DOS ORION-SOFT

LD.COM для отладки игровых программ

ДОКУМЕНТАЦИЯ К ПРОГРАММЕ LD.COM

Load/Run/Save CP/M Utility (tm)        LD.COM      release  2.30/09.02.92         (C) Sp-Computer   Club 1991, 1992

    Программа LD.COM - системная    утилита   ОС CP/M    для ПРК   "Орион-128", распространяется в составе дистрибутива  Advanced CP/M SP-Computer Club-а. Программа предназначена для использования программистами при разработке программ на ПРК   "Орион-128", но   может применяться и пользователями для загрузки и запуска многоблочных    программ, работающих в основной    странице ОЗУ компьютера.   Программа рассчитана на работу в CP/M использующей 1-вую дополнительную страницу ОЗУ компьютера,   т.е будет работать на "Орионе-128" с любой     CP/M, кроме версии авторов (В. Сугоняко,  "Orion-Soft"). Программа была написана А. Новгородовым в 1991 г. для отладки игры   "Silent-Service" на языке (макро)ассемблера. LD.COM позволяет загружать блоки данных из файлов на диске, в память основной страницы (по  указанным адресам), передавать управление программам в основной  странице ОЗУ, а   также записывать участки     памяти из основной страницы в виде файлов на дискету. Программа заменяет также стандартную утилиту LOAD.COM, так как может работать как с данными в "чистом" виде, так и с файлами формата "HEX", формируемыми ассемблером. Программа существенно облегчает отладку больших программ состоящих из модулей расположенных в разных участках ОЗУ (напр:  игр адаптируемых от   "Синклера"). Кроме этой программы в серию утилит для "Ориона-128" входит программа LDC.COM (LD Compiler), которая применяется для формирования готового модуля игры: т.е      формируется файл, содержащий загрузчик   всех модулей, причем полученная    программа может   стартовать с любого адреса в любой странице ОЗУ (программа сама определяет где находится, после чего загружается по рабочим адресам).

 Вызов программы: LD  <имя TBL-файла>

Имя TBL-файла указывается без расширения. Файл должен иметь расширение ".TBL".     Если имя файла не указано: по умолчанию  файл - MAP.TBL.

(Не путать с версиями 1.XX (1991) программы LD.COM, где    всегда используется имя файла MAP.TBL).

 Файл "-.TBL" должен содержать имена файлов, адреса их загрузки, запуска     или считывания.  Этот файл можно  создать  любым редактором (или даже просто PIP-ом т.е: PIP PRG.TBL=CON: <ВК> ТЕКСТ ^Z).

 Файл содержит имена файлов и шестнадцатеричные адреса их размещения, отделенные пробелом (или TAB-ом). Каждый файл с  адресом  располагается с новой  строки.  Файл "-.TBL" может содержать строки 3 типов:

 NAME.EXT  пробел  HEX-адрес *адрес =NAME.EXT  пробел  начальный. адрес, конечный. адрес (между Н.А и К.А - запятая)

  Для указания адреса запуска применяется символ      "*". Стоящее сразу за символом "*" HEX-число считается адресом, куда будет передано управление. Запускаемая программа может не нарушая стек вернуть управление назад, программе LD.COM. В этом    случае продолжится "интерпретация" TBL-файла и загрузка файлов, указанных в последующих строках.

Если для "-.HEX" файла не указан адрес загрузки, то он грузится  по адресам, определенным директивой ORG при его трансляции    ассемблером! (Таким образом LD.COM заменяет LOAD.COM  для работы в 0-странице) Если первым символом стоит "=",    то осуществляется запись в файл    с указанным именем блока данных расположенных по указанным шестнадцатеричным адресам (!!! - разделитель: ","). Если файл с указанным именем на диске уже существует, то    запись не будет   производиться (будет сообщение, что такой файл уже существует).

 ПРИМЕР 1:  (Загрузка игры ORC-ATTACK от  ZX Spectrum)

 Файл ORC.TBL:

ZXFONT.DAT  3D00

KBD-RK.MAP  5000 

KBD-MS.MAP  6000    Запуск:     LD ORC.

ORC.HEX      8000  

PROTEC.DAT  F200 

*F200

 ПРИМЕР 2:  (Загрузка ORDOS-программы)

   Этот пример -   конечно, чисто условный (это извращение   - так использовать программу LD.COM), но он позволяет понять применение программы LD.COM при отладке программ.

   К сожалению до сих пор находятся "уроды", которые в своих играх, которым     для работы совершенно не требуется ORDOS делают    обращения к функциям ORDOS (см.Радио 07.91). При этом совершенно не учитывается то, что   самой ORDOS может и не оказаться в ОЗУ (пользователям с    НГМД ORDOS не нужна,   игры удобнее грузятся с дискеты). Обычно эти обращения делаются по примеру авторского бэйсика:  с целью    узнать не достигла ли вершина    RAM-диска "области атрибутов цвета/второй плоскости экрана", т.е можно ли использовать цвет,    не опасаясь погубить файлы ORDOS.

При отсутствии ORDOS такая программа "улетает" (Грамотная программа должна была бы сначала проверить наличие ORDOS). С помощью программы LD.COM можно загрузить такую программу вместе с  самой ORDOS, а с помощью программы  LDC.COM  получить обычный COM-файл.

 Файл BAS-OR.TBL:

BASIC$.DAT      ; по умолчанию адрес = 0

ORDOS.DAT   B800    ; грузим все 2 К ORDOS

F-RAM.DAT   F340    ; запись FF    в 1:0000

*F340           ; отформатируем RAM

*0

      Запуск - LD BAS-OR

      Файл F-RAM.DAT - коды программы: MVI A,1 : MVI C,FF

                               LXI H,0 : JMP F839

                           (или     CALL F839 : JMP   0)

      Version History: LD.COM Release 1.05/12.1991 (и ниже)   Note: Все эти ранние версии   портят знакогенератор F000  и "забывают" его восстановить! Нет команды чтения "="   и возврата в LD после исполнения "*".

 Copyright: All right reserved  Distributing: Only with Advanced CP/M and this text    Программа LDC.COM написана на   языке "C" и стоит всего 1,5$ (USA).

Кроме этой программы продается еще ряд программ, облегчающих адаптацию игр для  Z80 от "Синклера" (например: читалка дискет TR-DOS, всего 2$).

 С предложениями и замечаниями обращаться по      адресу:     192238 Санкт-Петербург а/я 175  Чистяков Владимир     если очень надо, можно звонить: (812)-106-35-24

           Sp-Computer   Club, август 1992

    

 

Полезные и интересные статьи

На предыдущую страницу  На главную страницу  На следующую страницу