mirror of
https://github.com/xomboverlord/xomb-bare-bones.git
synced 2026-01-11 18:33:15 +01:00
I have added a 32-bit build. I had to enable SSE for it to work! Also, I updated the GRUB stage2 so that I do not get any unsupported binary formats or whatever anymore.
Signed-off-by: The XOmB Overlord <overlord@xomb.net>
This commit is contained in:
committed by
The XOmB Overlord
parent
9d7a7dbb91
commit
49379a5d11
Binary file not shown.
@@ -59,8 +59,19 @@ _start:
|
|||||||
mov esp, stack+STACK_SIZE
|
mov esp, stack+STACK_SIZE
|
||||||
|
|
||||||
; pass multiboot information
|
; pass multiboot information
|
||||||
push eax
|
|
||||||
push ebx
|
push ebx
|
||||||
|
push eax
|
||||||
|
|
||||||
|
; enable SSE
|
||||||
|
mov ecx, cr0
|
||||||
|
btr ecx, 2 ; clear CR0.EM bit
|
||||||
|
bts ecx, 1 ; set CR0.MP bit
|
||||||
|
mov cr0, ecx
|
||||||
|
|
||||||
|
mov ecx, cr4
|
||||||
|
bts ecx, 9 ; set CR4.OSFXSR bit
|
||||||
|
bts ecx, 10 ; set CR4.OSXMMEXCPT bit
|
||||||
|
mov cr4, ecx
|
||||||
|
|
||||||
; call kmain
|
; call kmain
|
||||||
call kmain
|
call kmain
|
||||||
|
|||||||
@@ -189,7 +189,7 @@ template isPointerType(T)
|
|||||||
|
|
||||||
template isPointerType(T : T*)
|
template isPointerType(T : T*)
|
||||||
{
|
{
|
||||||
const bool isPointerType = true;
|
const bool isPointerType = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -363,7 +363,7 @@ char[] itoa(char[] buf, char base, long d)
|
|||||||
if(base == 'd' && d < 0)
|
if(base == 'd' && d < 0)
|
||||||
{
|
{
|
||||||
negative = true;
|
negative = true;
|
||||||
ud = -d;
|
ud = 0 - d;
|
||||||
}
|
}
|
||||||
else if(base == 'x')
|
else if(base == 'x')
|
||||||
divisor = 16;
|
divisor = 16;
|
||||||
|
|||||||
Reference in New Issue
Block a user