Ein bisschen mehr muss schon in die ASM Datei, hier ein Beispiel:
Und die Kernel.cpp
Aber denk an deinen Stack, bevor du zur main springst.
Code: [Auswählen]
[BITS 32]
EXTERN _main
GLOBAL start
jmp start
MULTIBOOT_PAGE_ALIGN equ 1<<0
MULTIBOOT_MEMORY_INFO equ 1<<1
MULTIBOOT_HEADER_MAGIC equ 0x1BADB002
MULTIBOOT_HEADER_FLAGS equ MULTIBOOT_PAGE_ALIGN | MULTIBOOT_MEMORY_INFO
CHECKSUM equ -(MULTIBOOT_HEADER_MAGIC + MULTIBOOT_HEADER_FLAGS)
align 4
dd MULTIBOOT_HEADER_MAGIC
dd MULTIBOOT_HEADER_FLAGS
dd CHECKSUM
start:
push 0
popf
push eax
push ebx
call _mainUnd die Kernel.cpp
Code: [Auswählen]
int main( multiboot_info_t *boot_info, DWORD magic_code )
{
}Aber denk an deinen Stack, bevor du zur main springst.

Übersicht
Wiki
Hilfe
Suche
Einloggen
Registrieren
Drucken
Gespeichert

.