For the people that checked out my repository at https://github.com/mingodad/tinycc.git
I'll try explain what my "virtual io" is for.
I've tried on the past achieve something like etcl did, I mean a self contained interpreter with the ability to mix c code.
I've tried to use libtcc but it depends on auxiliary files been installed on a specific folder and nee be distributed along side the interpreter/embedded application.
Then I started this "virtual io" and with a bin2c program that allow incorporate the auxiliary files directly inside the library/interpreter.
To test the idea and achieve a self contained tcc that doesn't depend on auxiliary files installed elsewhere I've created a small script that does that "mk-it" on my distribution, to achieve a small self contained tcc it's best to edit config.mak and change "CFLAGS=-Os" and run "./mk-it" the result tcc is self contained and can be used from anywhere without any auxiliary files/folder.