Short: Running E code from other processes Author: m88jrh@uk.ac.ox.ecs (Jason R. Hulance) Uploader: m88jrh uk ac ox ecs (Jason R Hulance) Type: dev/e Architecture: m68k-amigaos This archive contains a few E sources which use SetFunction() to patch some library calls. They serve to show how to run E code from other processes. The important point is that E uses the A4 register for its global variables so this must be preserved. The examples show a running E program setting up a storage place for a copy of A4, and then code from this program can be run from another process (after first restoring A4). The "other process" is the examples is the process which calls the patched system function. Code which does not use global variables is easier to deal with, since this does not require restoration of A4. However, a lot of code implicitly uses global variables, since things like library calls use the global library base variables. Also, E built-in functions use a number of globals, e.g., WriteF uses "stdout" and "conout".