Screen saver creation
The goal of this page is to explain how to create a screen saver software for the graphical interface of FORTH Core.
For that, it is essential to use the application economiseur.txt which
modifies the source code of the software after validation of this one.
This modification makes it possible to the FORTH core manager to
install the validated screen saver.
application is loaded in the memory, the following instruction can be
Screen saver creation assistance application
It is possible to generate a GIF
picture to obtain a screen shot.
The screen saver creatin assistance application allows to:
- to detect the data stack errors to each step of the software (initialization, execution, configuration),
- to modify the source code so that it is accepted by the FORTH core manager,
- to carry out the screen saver as long as there is no data stack error,
- to generate an image GIF to obtain a screen shot.
The source code of the screen saver must be cut out in 4 areas in the following order:
- an information exchange area between the FORTH Core manager and the software,
- an optional parameters area,
- an area containing the displaying code of the screen
saver called every 25 ms by the FORTH Core manager when it goes in this
- an optional area containing the code called at the
time of the screen saver starting mode, this code allows to possibly
initialize the screen by taking of account the personalization
- an optional area allowing to personalize the displaying parameters.
The exchange area consists of a 4x32 bits data table:
- 0 --> program address of saver on 4 bytes
- 4 --> displayable area limits address on 4 bytes updated by the system
- 8 --> parameters configuration program address on 4 bytes forced to 0 if not any parameters
- 12 --> initialization program address on 4 bytes forced to 0 if not any initialization.
The corresponding code is the following:
HERE 8 ALLOT CONSTANT INDX_VEILLE
The optional parameters area can contain the various variables of the software.
The displaying code area is a
FORTH instruction not consuming and not providing any element of the
data stack. Its address must be placed in the first 4 bytes of the
: PRGM_VEILLE ( - --> - )
FIND PRGM_VEILLE INDX_VEILLE 2!
The optional initialization area contains the corresponding code whose
address must be placed in bytes 12 to 15 of the exchange area if this
: INIT_VEILLE ( - --> - )
FIND INIT_VEILLE INDX_VEILLE 12+ 2!
The optional configuration area contains the corresponding code in front of conforming to the rules of the graphic programming interface. Its address must be placed in bytes 8 to 11 of the exchange area if this code exists:
FEN: PRGM_CONFIG ( fen --> - )
PRGM_CONFIG INDX_VEILLE 8+ 2!
When the software is validated, the screen saver creatin assistance application adds a checking sum at the end of the source code file in the following format (example):
( SOM_VEILLE 0000238782 )