What is it, and what does it do?
The aim of the EMU project is to create a DBP powered scripting
langauge, that will allow users to run code that isn't availible
when the project is compiled (like DBC, where any file can be
included during runtime).
This is done through a DBA file, which contains a function called
EMUCOMMAND(). Simply include the file, and you can run any script
saved in EMU format (which is plain text)
The DBA file is also
dynamically created by a program called
EMU-Make (included with download) and therefore allows users to add
commands, or change their meaning (for instance, you could make 'pr'
become the equivalent of 'print')
So, roughly speaking:
Pro's
Dynamic DBA creation means a customizable commandd list
(add new commands), without having to recompile the EMU code!
Ability to support practically any DBP command !
Stupidly easy to understand and code with
Cons
Coded in 24-hours, and has a small command set (so far -
but by adding commands, you can support he project)
Parameters of commands need to be separated by a line
For example:
print
Print statement here
Supported commands so far (Build 1, 261105)
KEY
-------
in = fully functional (its in the current build)
n/a = not applicable/beyond the scope or purpose of the project
<anything else> = notes about the command and how it runs under EMU
rem = Rem's are read via GetString(), but otherwise ignored
remstart = this command is ignored
remend = this command is ignored
sync on = in
sync off = in
sync = in
sync rate = in
fast sync = in
cls = Works, but needs an extra space after being typed (space for
colour value [optional] )
set cursor = in
print = in
input = works, but stores data to EMU_ReturnString$(1) (array)
dim = currently not possible with the command set
undim = currently not possible with the command set
do = n/a
exit = exit is converted to exitfunction. This is a manual command
and can be changed (held in HEADXXXXXX.ini)
loop = n/a
end = in
goto = !! not supported !!
if = coming soon
else = n/a
endif = n/a
repeat = n/a
until=n/a
while= n/a
endwhile = n/a
for = n/a
next = n/a
load bitmap = in
text = in
suspend for key = in
So...?
Download, and try it out! Here's a small demo (369kb). It includes a
single 'hello world' example (but you can create your own projects
and use EMU with them aswell)
BUT! Please, please
read the readme file! The DBA file isn't
included when you download. Why? You need to run the EMU-MAKE program, which
creates it (hence dynamic creation)
After that, you can simply include and compile...
Enjoy! (and read the manual!)
Comments, bugs and suggestions wanted!
DOWNLOAD:
http://forum.thegamecreators.com/xt/xt_apollo_download.php?i=715594