From 2f5e4de57fff376ea7584aa126c6a70e3e5b2670 Mon Sep 17 00:00:00 2001 From: pavelyakov Date: Fri, 6 Nov 2015 18:11:25 +0000 Subject: [PATCH] fs.obj: new functions and dynamic buffer git-svn-id: svn://kolibrios.org@5890 a494cfbc-eb01-0410-851d-a64ba20cac60 --- data/common/lib/fs.obj | Bin 3408 -> 3696 bytes programs/cmm/lib/obj/fs.h | 12 ++++++++++++ 2 files changed, 12 insertions(+) diff --git a/data/common/lib/fs.obj b/data/common/lib/fs.obj index cd3e8721f97b1aefc0d385b7b00e0f4dfb00b6a6..41891db76b93f7a374b77fdaf999787cc08831a4 100644 GIT binary patch literal 3696 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 diff --git a/programs/cmm/lib/obj/fs.h b/programs/cmm/lib/obj/fs.h index 6e961a5f25..5214e05fd4 100644 --- a/programs/cmm/lib/obj/fs.h +++ b/programs/cmm/lib/obj/fs.h @@ -18,6 +18,9 @@ dword read_pointer; dword read(dword path); + dword run_pointer; + dword run(dword path,arg); + dword move_pointer; byte move(dword path1,path2); @@ -42,6 +45,14 @@ return EAX; } +:dword FILE_SYSTEM_FUNCTION::run(dword path,arg) +{ + dword tmp1 = path1; + dword tmp2 = arg; + run_pointer stdcall(tmp1,tmp2); + return EAX; +} + :qword FILE_SYSTEM_FUNCTION::get_size(dword path) { dword tmp = path; @@ -75,6 +86,7 @@ fs.move_pointer = library.get("fs.move"); fs.copy_pointer = library.get("fs.copy"); fs.read_pointer = library.get("fs.read"); + fs.run_pointer = library.get("fs.execute"); __CHECK_FS__ = true; }