Datasheet

4D SYSTEMS DIABLO16 Processor
© 2014 4D SYSTEMS Page 21 of 33 www.4dsystems.com.au
DIABLO16 PROCESSOR
flash_Copy()
flash_WriteBlock()
An application in one bank can store applications
from microSD card and writing them to a bank for
future execution using the 4DGL function
flash_LoadFile()
An application in one bank can read data stored in
another bank, such as graphics or strings stored
there, and retrieve them and display them as
required. Reading of data from another bank is
achieved using 4DGL functions such as:
flash_GetByte()
flash_GetWord()
flash_putstr()
flash_Blit2()
flash_Blit4()
flash_Blit8()
flash_Blit16()
An application in a bank can erase other banks if
required, and can also erase itself which
essentially formats the processor. Erasing of a
bank is achieved in 4DGL using the
flash_EraseBank() function.
Note: The flash_EraseBank() function should be
used with caution as it will permanently erase any
applications and/or data stored on that bank.
Please refer to the separate document titled
'DIABLO16-4DGL-Internal-Functions.pdf' for more
information on how to read/write/erase/access
and change between FLASH banks.
RAM (Both System and User) 6.5.
The DIABLO16 processor has two banks of RAM,
one is 32kb of User RAM, and the other is a much
smaller bank of System RAM which is only usable
by the system, for its internal processes.
The System RAM is reserved for the system and is
not accessible by the user. It is used for processes
such as Audio Buffer, Intermediate File Buffers,
Graphics Rendering, etc. This RAM ensures the
users RAM is not taken by the system.
No matter what options are enabled by the
system, or by the user to influence the system
(such as the size of the audio buffer), the system
will never run out of RAM and try to encroach into
the users RAM space.
The DIABLO16’s 32768 (32kb) of User RAM is used
to store variables and for user applications, sub
programs etc. Sub programs and Functions stored
in RAM can be released when no longer required,
freeing the memory for the user.
The user has full access to this 32kb of User RAM,
and all internal processes of the DIABLO16 utilise
only the separate System RAM.