kos 만드는중인데요 1일차입니다.

tok 79@Google의 이미지

심각도 코드 설명 프로젝트 파일 줄 비표시 오류(Suppression) 상태 세부 정보
오류 LNK2019 main"int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ) 함수에서 참조되는 확인할 수 없는 외부 기호 kos E:\kos\MSVCRTD.lib(exe_main.obj) 1

>>

오류이구요

현재 boot.asm

BITS 16

ORG 0x7C00

start:

; Set up stack

xor ax, ax

mov ss, ax

mov sp, 0x7C00

; Print "SecurLang" to screen

mov ah, 0x0E

mov al, 'S'

int 0x10

mov al, 'e'

int 0x10

mov al, 'c'

int 0x10

mov al, 'u'

int 0x10

mov al, 'r'

int 0x10

mov al, 'L'

int 0x10

mov al, 'a'

int 0x10

mov al, 'n'

int 0x10

mov al, 'g'

int 0x10

; Load kernel

mov bx, 0x1000

mov dh, 0

mov dl, 0

mov ah, 0x02

mov al, 1

int 0x13

; Jump to kernel

jmp 0x1000:0

hang:

jmp hang

times 510-($-$$) db 0

dw 0xAA55

kernel.c 까지 만들었습니다.

// kernel.c

void kernel_main() {

const char* str = "Welcome to SecurLang KOS";

char* vidptr = (char*)0xb8000; // Video memory starts here.

unsigned int i = 0;

unsigned int j = 0;

while (j < 80 * 25 * 2) {

vidptr[j] = ' ';

vidptr[j + 1] = 0x07; // Attribute-byte: light grey on black screen

j = j + 2;

}

j = 0;

while (str[j] != '\0') {

vidptr[i] = str[j];

vidptr[i + 1] = 0x07;

++j;

i = i + 2;

}

while (1);

}