mirror of
https://gitlab.os-k.eu/os-k-team/kvisc.git
synced 2023-08-25 14:05:46 +02:00
53 lines
1.0 KiB
Plaintext
53 lines
1.0 KiB
Plaintext
; The OS/K Team licenses this file to you under the MIT license.
|
|
; See the LICENSE file in the project root for more information.
|
|
|
|
__sysmain:
|
|
jmp start
|
|
|
|
#include "crt/crt.k"
|
|
|
|
;
|
|
; Special addresses
|
|
;
|
|
#define DOSKRNL_CODE 0x100000 // 1MB
|
|
#define DOSKRNL_STACK 0x104000 // + 16KB
|
|
#define TRAP0_STACK 0x104800 // + 18KB
|
|
#define INTR0_STACK 0x105000 // + 20KB
|
|
#define EXCT0_STACK 0x105800 // + 22KB
|
|
|
|
; The kernel guarantees that COMMAND.COM
|
|
; will always be loaded on a 16KB boundary
|
|
; This is guaranteed to be the case in all
|
|
; future versions as well
|
|
#define CMDCOM_LOADP 0x108000 // + 32KB
|
|
#define CMDCOM_MAXSZ 0x80000 // 512KB
|
|
|
|
;
|
|
; Entry point
|
|
;
|
|
start:
|
|
mov esp, DOSKRNL_STACK
|
|
mov ebp, zero
|
|
|
|
;dump
|
|
|
|
call main
|
|
|
|
crash
|
|
|
|
;
|
|
; Disk Operating System
|
|
;
|
|
|
|
#include "sys/drv/cpudev.k"
|
|
#include "sys/drv/memdev.k"
|
|
#include "sys/drv/diskdev.k"
|
|
|
|
#include "sys/intr/excepts.k"
|
|
#include "sys/intr/common.k"
|
|
#include "sys/intr/trap0.k"
|
|
|
|
#include "sys/dumprf.k"
|
|
#include "sys/main.k"
|
|
|