|
;; $Id: kernel.inc,v 1.1 2007-09-01 22:44:05 niro Exp $ |
|
1 |
;; ----------------------------------------------------------------------- |
;; ----------------------------------------------------------------------- |
2 |
;; |
;; |
3 |
;; Copyright 1994-2002 H. Peter Anvin - All Rights Reserved |
;; Copyright 1994-2008 H. Peter Anvin - All Rights Reserved |
4 |
;; |
;; |
5 |
;; This program is free software; you can redistribute it and/or modify |
;; This program is free software; you can redistribute it and/or modify |
6 |
;; it under the terms of the GNU General Public License as published by |
;; it under the terms of the GNU General Public License as published by |
12 |
|
|
13 |
;; |
;; |
14 |
;; kernel.inc |
;; kernel.inc |
15 |
;; |
;; |
16 |
;; Header file for the kernel interface definitions |
;; Header file for the kernel interface definitions |
17 |
;; |
;; |
18 |
|
|
56 |
su_pad1 resw 1 ; 0226 |
su_pad1 resw 1 ; 0226 |
57 |
su_cmd_line_ptr resd 1 ; 0228 |
su_cmd_line_ptr resd 1 ; 0228 |
58 |
su_ramdisk_max resd 1 ; 022C |
su_ramdisk_max resd 1 ; 022C |
59 |
resb (9000h-12)-($-$$) ; Were bootsect.S puts it... |
resb (0f800h-12)-($-$$) |
60 |
linux_stack equ $ ; 8FF4 |
linux_stack equ $ ; F7F4 |
61 |
linux_fdctab equ $ |
linux_fdctab resb 12 |
62 |
resb 9000h-($-$$) |
cmd_line_here equ $ ; F800 Should be out of the way |
|
cmd_line_here equ $ ; 9000 Should be out of the way |
|
63 |
endstruc |
endstruc |
64 |
|
|
65 |
; |
; |
66 |
; Kernel command line signature |
; Old kernel command line signature |
67 |
; |
; |
68 |
CMD_MAGIC equ 0A33Fh ; Command line magic |
CMD_MAGIC equ 0A33Fh ; Command line magic |
69 |
|
|
70 |
; |
; |
71 |
|
; If we're loading the command line old-style, we need a smaller |
72 |
|
; heap. |
73 |
|
; |
74 |
|
old_cmd_line_here equ 9800h |
75 |
|
old_max_cmd_len equ 2047 |
76 |
|
old_linux_fdctab equ old_cmd_line_here-12 |
77 |
|
old_linux_stack equ old_linux_fdctab |
78 |
|
|
79 |
|
; |
80 |
; Magic number of su_header field |
; Magic number of su_header field |
81 |
; |
; |
82 |
HEADER_ID equ 'HdrS' ; HdrS (in littleendian hex) |
HEADER_ID equ 'HdrS' ; HdrS (in littleendian hex) |
85 |
; Flags for the su_loadflags field |
; Flags for the su_loadflags field |
86 |
; |
; |
87 |
LOAD_HIGH equ 01h ; Large kernel, load high |
LOAD_HIGH equ 01h ; Large kernel, load high |
88 |
|
QUIET_FLAG equ 20h ; Quiet the kernel |
89 |
|
KEEP_SEGMENTS equ 40h ; Don't reload segments |
90 |
CAN_USE_HEAP equ 80h ; Boot loader reports heap size |
CAN_USE_HEAP equ 80h ; Boot loader reports heap size |
91 |
|
|
92 |
; |
; |
97 |
isolinux_id equ 033h ; 3 = SYSLINUX family; 3 = ISOLINUX |
isolinux_id equ 033h ; 3 = SYSLINUX family; 3 = ISOLINUX |
98 |
extlinux_id equ 034h ; 3 = SYSLINUX family; 4 = EXTLINUX |
extlinux_id equ 034h ; 3 = SYSLINUX family; 4 = EXTLINUX |
99 |
|
|
100 |
|
; |
101 |
|
; Types of vkernels |
102 |
|
; |
103 |
|
VK_LOCALBOOT equ -1 ; localboot (no actual kernel loaded) |
104 |
|
VK_KERNEL equ 0 ; Choose by filename |
105 |
|
VK_LINUX equ 1 ; Linux kernel image |
106 |
|
VK_BOOT equ 2 ; Boot sector |
107 |
|
VK_BSS equ 3 ; BSS boot sector |
108 |
|
VK_PXE equ 4 ; PXE NBP |
109 |
|
VK_FDIMAGE equ 5 ; Floppy disk image |
110 |
|
VK_COMBOOT equ 6 ; COMBOOT image |
111 |
|
VK_COM32 equ 7 ; COM32 image |
112 |
|
VK_CONFIG equ 8 ; Configuration file |
113 |
|
VK_TYPES equ 9 ; Number of VK types |
114 |
|
|
115 |
%endif ; _KERNEL_INC |
%endif ; _KERNEL_INC |