I continue working to improve the system and makes it reach the requirements I’ve planed.
Internal functions improved :
Updated sePushToStack to handle local/global variables, Dn & An registers.
Updated seGetFromStack to handle local/global variables, Dn & An registers.
Updated seMultiPushToStack to use sePushToStack capabilities.
Updated seGetMultiFromStack to use seGetFromStack capabilities.
Now, with these changes, direct communication between a Grimoire function (graphic, audio, files, memblocks, etc.) can be done by using as call parameters :
Direct values
Data registers ( D0 - D7 )
Adress registers ( A0 - D7 )
Adress content ( (a0) to (a7), -(a0) to -(a7) and (a0)+ to (a7)+
Global variables
Local variables (when call is done from inside a procedure).
It’s a major improvements concerning the stack use for communication.