diff options
| author | Miguel <m.i@gmx.at> | 2018-09-03 00:07:20 +0200 |
|---|---|---|
| committer | Miguel <m.i@gmx.at> | 2018-09-03 00:07:20 +0200 |
| commit | 38b1273c7e3a52ae929f36fe07e29bc68ef95102 (patch) | |
| tree | 16734c1c190825159f6ca9696d9c5cfb04e89c8f /asm/mp.asm | |
| parent | fd5a9b87e47bc072aa63fcaf5735232a37338303 (diff) | |
clean filenames etc
Diffstat (limited to 'asm/mp.asm')
| -rw-r--r-- | asm/mp.asm | 89 |
1 files changed, 0 insertions, 89 deletions
diff --git a/asm/mp.asm b/asm/mp.asm deleted file mode 100644 index f0eb9c0..0000000 --- a/asm/mp.asm +++ /dev/null @@ -1,89 +0,0 @@ -global smp_start -extern smp_main -; master boot record for application processors -;[org 0x7000] -smp_start: -[bits 16] - - cli ;switch off interrupts! - lgdt [gdt_descriptor] ;load descriptor table! - - ;switch on 32-bit protected mode - mov eax, cr0 - or eax,0x1 - mov cr0, eax - - jmp 0x8:init_pm - -[bits 32] - - -LLOCK: dd 0 - -init_pm: - - mov ax, 0x10 - mov ds, ax - mov ss, ax - mov es, ax - mov fs, ax - mov gs, ax - - mov ebp, 0x8000 - mov esp, ebp - - call boot_32_pm ;continue booting in 32-bit protected mode - -boot_32_pm: - hlt - jmp boot_32_pm - - ;mov eax, 1 ; semaphore - ;xchg eax, [LLOCK] - ;cmp eax,1 - ;hlt - ;je $ - ;jmp $ ; loop forever here - - ;call [0x8010] ;kernel_ap ;jump into our Kernel! - call smp_main - - jmp $ ; should never be reached - - -gdt_start: - -gdt_null: ;null descriptor (2 x 4 bytes) - dd 0x0 - dd 0x0 - -gdt_code: - ; flags: - ; present: 1 / privilege: 00 / type: 1 - ; code: 1 / conforming: 0 / readable: 1 / accessed: 0 - ; granularity: 1 / 16-bit default: 1 / 64-bit seg: 0 / AVL: 0 - dw 0xffff ;limit - dw 0x0 ;base - db 0x0 ;base - db 10011010b ;flags - db 11001111b ;flags & seg.limit - db 0x0 ;base - -gdt_data: - ; flags: - ; code: 0 / expand down: 0 / writable: 1 / accessed: 0 - dw 0xffff - dw 0x0 - db 0x0 - db 10010010b - db 11001111b - db 0x0 - -gdt_end: - -gdt_descriptor: - dw gdt_end-gdt_start-1 - dd gdt_start - -CODE_SEG equ gdt_code - gdt_start -DATA_SEG equ gdt_data - gdt_start |
