Год: 1985
Издатели: Your Computer
Языки:
Немецкий
Формат:
TZX лента
Требования:
ZX Spectrum 16K
Ссылки:
Страница на ZXArt
Страница на World Of Spectrum
Страница на Spectrum Computing
Скриншоты:
Описание:
"Fill Routine" — это системное программное обеспечение, разработанное в 1985 году для ZX Spectrum 16K и 48K. Предназначенный для манипуляции графикой, этот инструмент позволяет пользователям выполнять машинный код для заполнения графических фигур цветом. Основная задача заключается в инициации заполнения, размещая рутину по определенному адресу памяти.
Программа требует размещения рутины выше RAMtop, обычно по адресу 32000. Это критически важно для ее работы, так как рутина содержит жестко закодированные инструкции CALL, что делает ее несовместимой с другими адресами памяти. Пользователи могут управлять рутиной, загружая и сохраняя ее с помощью определенных команд, обеспечивая корректную работу.
Несмотря на полезность, у рутины есть ограничения. Например, она не может заполнить большие фигуры, такие как круг с радиусом 55, из-за ограничений памяти. Это ограничение заметно даже при отсутствии в памяти программы на BASIC, что подчеркивает важность эффективного управления памятью при использовании этого инструмента.
Опубликованная Your Computer, "Fill Routine" является свидетельством инновационного использования ограниченных ресурсов, доступных в ранней вычислительной технике. Она предоставляет представление о вызовах и решениях, с которыми сталкивались разработчики в 1980-х годах, предлагая функциональный инструмент для манипуляции графикой в рамках ограничений оборудования ZX Spectrum.
Издатели: Your Computer
Языки:
Формат:
Требования:
Ссылки:
Скриншоты:
Описание:
"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.]
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.]