Moved const and extern identifiers to the left

This commit is contained in:
2025-04-04 20:15:31 +02:00
parent 863fb7de5a
commit ba34637dc1
20 changed files with 69 additions and 86 deletions

View File

@ -1,3 +1,13 @@
cp const {
utf8 65001
}
kernel32 extern {
SetConsoleCP(cp uint)
SetConsoleOutputCP(cp uint)
ExitProcess(code uint)
}
init() {
kernel32.SetConsoleCP(cp.utf8)
kernel32.SetConsoleOutputCP(cp.utf8)
@ -11,14 +21,4 @@ exit() {
crash() {
kernel32.ExitProcess(1)
}
const cp {
utf8 65001
}
extern kernel32 {
SetConsoleCP(cp uint)
SetConsoleOutputCP(cp uint)
ExitProcess(code uint)
}

View File

@ -1,5 +1,23 @@
import sys
std const {
in 0
out 1
err 2
}
in(buffer []byte) -> int {
return sys.read(std.in, buffer, len(buffer))
}
out(buffer []byte) -> int {
return sys.write(std.out, buffer, len(buffer))
}
error(buffer []byte) -> int {
return sys.write(std.err, buffer, len(buffer))
}
read(fd int, buffer []byte) -> int {
return sys.read(fd, buffer, len(buffer))
}

View File

@ -1,19 +0,0 @@
import sys
in(buffer []byte) -> int {
return sys.read(std.in, buffer, len(buffer))
}
out(buffer []byte) -> int {
return sys.write(std.out, buffer, len(buffer))
}
error(buffer []byte) -> int {
return sys.write(std.err, buffer, len(buffer))
}
const std {
in 0
out 1
err 2
}

View File

@ -1,4 +1,4 @@
extern kernel32 {
kernel32 extern {
VirtualAlloc(address int, size uint, flags uint32, protection uint32) -> *any
}

View File

@ -1,9 +1,9 @@
const prot {
read 0x1
prot const {
read 0x1
write 0x2
}
const map {
private 0x02
map const {
private 0x02
anonymous 0x20
}

View File

@ -1,9 +1,9 @@
const prot {
read 0x1
prot const {
read 0x1
write 0x2
}
const map {
private 0x02
map const {
private 0x02
anonymous 0x1000
}

View File

@ -1,9 +1,9 @@
const page {
page const {
readwrite 0x0004
}
const mem {
commit 0x1000
reserve 0x2000
mem const {
commit 0x1000
reserve 0x2000
decommit 0x4000
}

View File

@ -1,4 +1,4 @@
extern kernel32 {
kernel32 extern {
VirtualFree(address *any, size uint, type uint32) -> bool
}

View File

@ -10,7 +10,7 @@ write(fd int, buffer *byte, length int) -> int {
return length
}
extern kernel32 {
kernel32 extern {
GetStdHandle(handle int64) -> int64
ReadConsole(fd int64, buffer *byte, length uint32, written *uint32) -> bool
WriteConsoleA(fd int64, buffer *byte, length uint32, written *uint32) -> bool

View File

@ -1,6 +1,16 @@
import core
import sys
clone const {
vm 0x100
fs 0x200
files 0x400
sighand 0x800
parent 0x8000
thread 0x10000
io 0x80000000
}
create(func *any) -> int {
stack := sys.mmap(0, 4096, 0x1|0x2, 0x02|0x20|0x100)
stack += 4096 - 8
@ -8,14 +18,4 @@ create(func *any) -> int {
stack -= 8
store(stack, 8, func)
return sys.clone(clone.vm|clone.fs|clone.files|clone.sighand|clone.parent|clone.thread|clone.io, stack, 0, 0, 0)
}
const clone {
vm 0x100
fs 0x200
files 0x400
sighand 0x800
parent 0x8000
thread 0x10000
io 0x80000000
}

View File

@ -1,7 +1,7 @@
create(func *any) -> int {
return kernel32.CreateThread(0, 4096, func, 0)
kernel32 extern {
CreateThread(attributes int, stackSize int, address *any, parameter int) -> int
}
extern kernel32 {
CreateThread(attributes int, stackSize int, address *any, parameter int) -> int
create(func *any) -> int {
return kernel32.CreateThread(0, 4096, func, 0)
}