Теперь возможна загрузка obj файлов.Вот примерCode:
#define init_console, '%1'
#define print, '%2'
dll load,'/sys/lib/console.obj' // загрузить библиотеку
dll function,init_console,'con_init' // загрузить в переменную %1 адрес функции con_init
dll function,print,'con_write_asciiz' // загрузить в переменную %2 адрес функции con_write_asciiz
#define title,'%10'
mov title,'Test'
init_console title,-1,-1,-1,-1
mov %11,'Full path VM: '
add %11,PATH
add %11,'\n'
add %11,'File name VM: '
add %11,FILE
add %11,'\n'
add %11,'Dir name VM: '
add %11,DIR
add %11,'\n'
add %11,'File name apps: '
add %11,SFILE
add %11,'\n'
add %11,'Full path apps: '
add %11,SPATH
add %11,'\n'
print %11' // вызов функции
Замете, очень удобно, зная только название функции и что за аргументы передавать можно вызвать любую функцию, параметры передаются в формате не в stdcall, поэтому в обратном порядке, возможно потом поменяю.
Так же добавилСпециальные переменные, которые содержат путь где находиться виртуальная машина, название файла виртуальной машины, папка где находиться виртуальная машина ( пригодиться для загрузки и установки настроек ), путь/название/папка откуда запущен файл приложения для виртуалки.
P.S. все названия хэшируются, все номера переменных тоже, разрешение коллизий везде, поэтому думаю встроить массивы не составит труда.