kos 만드는중인데요 1일차입니다.
심각도 코드 설명 프로젝트 파일 줄 비표시 오류(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);
}
댓글 달기