Skip to content

cheery/icicle-binfmt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A rudimentary platform-independent program loader and
compatibility layer.

You can try it out by building and then using loader on the demo program:

    sh build.sh
    ./load demo.prog

It's not implicitly clear what this project attempts to do, so I'll explain
a bit. Whenever need arises, we'll design bunch of interfaces that work
across systems. Others will write their programs into containers that we
have designed. Later anyone can download anyone other's program and get it work
on their platform directly with no dependency- or software-originated compatibility issues.

Well.. that's the plan. Please submit some issues or patches.

To give an idea about, I added the first interface. Logger is used for logging.

LOGGER:
    void log(uint8* text);
    void logerror(uint8* text);

It is obvious what it does. Here's the code that calls it:

    #include <icicle.h>
    #include <logger.h>

    int load(REQUIRE require){
        LOGGER logger;
        if (!(logger = require("logger"))) return 1;
        logger->log("hello log");
        return 0;
    }

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published