Значок ресурса

Fill Routine

Нет прав на скачивание
Год: 1985
Издатели: Your Computer
Языки: 🇩🇪 Немецкий
Формат: 📼 TZX лента
Требования: 🖥️ ZX Spectrum 16K

Ссылки:
Страница на ZXArt
Страница на World Of Spectrum
Страница на Spectrum Computing

Скриншоты:
FILL-Routine-RUN-1.png


Описание:
"Fill Routine" — это системное программное обеспечение, разработанное в 1985 году для ZX Spectrum 16K и 48K. Предназначенный для манипуляции графикой, этот инструмент позволяет пользователям выполнять машинный код для заполнения графических фигур цветом. Основная задача заключается в инициации заполнения, размещая рутину по определенному адресу памяти.

Программа требует размещения рутины выше RAMtop, обычно по адресу 32000. Это критически важно для ее работы, так как рутина содержит жестко закодированные инструкции CALL, что делает ее несовместимой с другими адресами памяти. Пользователи могут управлять рутиной, загружая и сохраняя ее с помощью определенных команд, обеспечивая корректную работу.

Несмотря на полезность, у рутины есть ограничения. Например, она не может заполнить большие фигуры, такие как круг с радиусом 55, из-за ограничений памяти. Это ограничение заметно даже при отсутствии в памяти программы на BASIC, что подчеркивает важность эффективного управления памятью при использовании этого инструмента.

Опубликованная Your Computer, "Fill Routine" является свидетельством инновационного использования ограниченных ресурсов, доступных в ранней вычислительной технике. Она предоставляет представление о вызовах и решениях, с которыми сталкивались разработчики в 1980-х годах, предлагая функциональный инструмент для манипуляции графикой в рамках ограничений оборудования ZX Spectrum.

Fill Routine





Below is a machine-code fill routine. It is possible to


break it with Symbol Shift and Stop. The routine also


sometimes breaks itself to prevent a crash. When you run


the program, it asks you where to place the routine.


Remember to put it above Ramtop.


Example: Putting the routine at 32000.


Type CLEAR 31999: RUN


Type 32000


SAVE example: (still 32000)


SAVE "fill"CODE 32000,95


LOAD example:


LOAD "fill"CODE 32000


Use the routine this way:


PLOT INVERSE 1;x,y: LET l=USR routine address.





[In fact, the routine contains hard-coded CALL instructions


to call itself recursively, so it will not work if put


anywhere other than at 32000. Unfortunately, this means


that there is not enough space left below RAMtop to fill,


e.g., a circle with radius 55, even with no Basic program


taking up memory.


On the TZX I've first put the fill code, loaded at 32000.


I've also provided the loader program, because it would be


quite possible to change this so that the code does work


from any other address, should you want it to.]
Автор
Verter_bot
Загрузки
0
Просмотры
1
Расширение
zip
Размер
762 байт
Хэш
d5b4dfc500682fac3ba58fb632eb13a3
Первый выпуск
Последнее обновление

Оценки

0.00 звезд(ы) 0 оценок
Назад
Вверх