Turbo Pascal 7 DOS {$L sprite01.obj} Как програмно получить размер этого sprite01.obj?

Разрабатываю программу. В ней будет графика. Все файлы графики обработаны "BINOBJ sprite01 sprite01.obj SPR01" и вставлены в EXE файл программы {$L sprite01.obj}.

Указатель я получаю на SPR01 но не знаю размер данных. Компилировал, смотрел дебагером но нет в ячейках размера ни оригинала ни OBJ файла.

Есть способ получить размер этого OBJ програмно?

Мои варианты решения

  1. Я могу создать переменные с размерами всех спрайтов
  2. В файл спрайта помещать в начало его размер и перед выводом считывать

Ответы (1 шт):

Автор решения: Anton Shchyrov

Однозначно вариант 2 - в первых байтах хранить общую длину спрайта. Потому, что при изменении размера спрайта вы тут же его и укажете, а и не нужно будет менять основной код программы.

А еще лучше не линковать их, а положить отдельными файлами рядом с программой. Бонусом - уйдете от ограничений 64К на линкуемый файл

→ Ссылка