X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=KernelLand%2FKernel%2FGenSyscalls.php;fp=KernelLand%2FKernel%2FGenSyscalls.php;h=d451d1dd89175db4fb96f56b53cca21a84ee7fd0;hb=48743e39650eb1ef988380e9d95f27fd40d3a9ce;hp=0000000000000000000000000000000000000000;hpb=a2495c6ea4f4cab16b5d339ae511428e92e89e73;p=tpg%2Facess2.git diff --git a/KernelLand/Kernel/GenSyscalls.php b/KernelLand/Kernel/GenSyscalls.php new file mode 100644 index 00000000..d451d1dd --- /dev/null +++ b/KernelLand/Kernel/GenSyscalls.php @@ -0,0 +1,76 @@ +$call) +{ + if($i != $num) { + $lHeader .= "\n"; + $lAsmInc .= "\n"; + } + + $lHeader .= "#define {$call[0]}\t{$num}"; + $lHeader .= "\t// {$num} - {$call[1]}\n"; + + $lAsmInc .= "%define {$call[0]}\t{$num}\t; {$call[1]}\n"; + + + if($i != $num) + $i = $num+1; + else + $i ++; +} +$lHeader .= "#define NUM_SYSCALLS\t$i\n"; +$lHeader .= "#define SYS_DEBUG\t0x100 // 0x100 - Print a debug string\n"; +$lHeader .= "\n"; +$lHeader .= "#ifdef __GNUC__\n"; +$lHeader .= "static const char *cSYSCALL_NAMES[] = {\n\t"; + +$j = 0; +for($i=0;$i<$lMax;$i++) +{ + if(!isset($lSyscalls[$i])) + $lHeader .= "\"\","; + else + $lHeader .= "\"".$lSyscalls[$i][0]."\","; + $j ++; + if($j == 6) { + $lHeader .= "\n\t"; + $j = 0; + } +} +$lHeader .= "\"\"\n};\n" +$lHeader .= "#endif\n"; +$lHeader .= "#endif\n"; + +$fp = fopen("include/syscalls.h", "w"); fwrite($fp, $lHeader); fclose($fp); +$fp = fopen("include/syscalls.inc.asm", "w"); fwrite($fp, $lAsmInc); fclose($fp); + +?>