]> rtime.felk.cvut.cz Git - l4.git/blob - l4/pkg/ned/doc/alex-example.lua
update
[l4.git] / l4 / pkg / ned / doc / alex-example.lua
1 -- vim:set ft=lua:
2
3 package.path = "rom/?.lua";
4
5 require("L4");
6 require("Aw");
7
8 l = L4.default_loader;
9
10 Aw.io({}, "-vvvv", "rom/x86-legacy.devs", "rom/vbus-config.vbus");
11
12 Aw.rtc();
13 Aw.hid();
14
15 local gui = {
16   -- put the factory caps for both interfaces in rws mode here
17   -- 'mag' is the factory for fully flexible mag-sessions with multiple
18   -- views and buffers and so on. 'svc' is the factory for fixed frame
19   -- buffers.
20   mag = l:new_channel():m("rws");
21   svc = l:new_channel():m("rws");
22 }
23
24 Aw.gui(gui, Aw.fb("0x117"));
25
26 ex1_caps = {
27   fb = gui.mag:create(L4.Proto.Goos);
28 };
29
30 local ldr = {
31   loader = l:new_channel():svr()
32 };
33
34 l:start({ caps = ldr }, "rom/loader" );
35 l:start({ caps = ex1_caps, log = {"sflex"}}, "rom/scout");
36 l:start({ caps = {fb = gui.mag:create(L4.Proto.Goos) }}, "rom/l4_intro");
37
38 local xl = L4.Loader.new({
39   mem = L4.Env.mem_alloc,
40   loader = ldr.loader:m("rws")
41 });
42
43 ex2_caps = {
44   fb = gui.svc:create(L4.Proto.Goos, "530x660");
45 };
46
47 xl:start({caps = ex2_caps, log={"sfix"}}, "rom/scout");
48