Rev 87 | Rev 115 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 87 | Rev 114 | ||
---|---|---|---|
1 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
1 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
2 | ;; ;; |
2 | ;; ;; |
3 | ;; KERNEL32.INC ;; |
3 | ;; KERNEL32.INC ;; |
4 | ;; ;; |
4 | ;; ;; |
5 | ;; Included 32 bit kernel files for MenuetOS ;; |
5 | ;; Included 32 bit kernel files for MenuetOS ;; |
6 | ;; ;; |
6 | ;; ;; |
7 | ;; This file is kept separate as it will be easier to ;; |
7 | ;; This file is kept separate as it will be easier to ;; |
8 | ;; maintain and compile with an automated SETUP program ;; |
8 | ;; maintain and compile with an automated SETUP program ;; |
9 | ;; in the future. ;; |
9 | ;; in the future. ;; |
10 | ;; ;; |
10 | ;; ;; |
11 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
11 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
12 | 12 | ||
13 | ; structure definition helper |
13 | ; structure definition helper |
14 | macro struct name, [arg] |
14 | macro struct name, [arg] |
15 | { |
15 | { |
16 | common |
16 | common |
17 | name@struct equ name |
17 | name@struct equ name |
18 | struc name arg { |
18 | struc name arg { |
19 | } |
19 | } |
20 | 20 | ||
21 | macro struct_helper name |
21 | macro struct_helper name |
22 | { |
22 | { |
23 | match xname,name |
23 | match xname,name |
24 | \{ |
24 | \{ |
25 | virtual at 0 |
25 | virtual at 0 |
26 | xname xname |
26 | xname xname |
27 | sizeof.#xname = $ - xname |
27 | sizeof.#xname = $ - xname |
28 | name equ sizeof.#xname |
28 | name equ sizeof.#xname |
29 | end virtual |
29 | end virtual |
30 | \} |
30 | \} |
31 | } |
31 | } |
32 | 32 | ||
33 | ends fix } struct_helper name@struct |
33 | ends fix } struct_helper name@struct |
34 | 34 | ||
35 | ;// mike.dld, 2006-29-01 [ |
35 | ;// mike.dld, 2006-29-01 [ |
36 | 36 | ||
37 | ; macros definition |
37 | ; macros definition |
38 | macro diff16 title,l1,l2 |
38 | macro diff16 title,l1,l2 |
39 | { |
39 | { |
40 | local s,d |
40 | local s,d |
41 | s = l2-l1 |
41 | s = l2-l1 |
42 | display title,': 0x' |
42 | display title,': 0x' |
43 | repeat 8 |
43 | repeat 8 |
44 | d = 48 + s shr ((8-%) shl 2) and $0F |
44 | d = 48 + s shr ((8-%) shl 2) and $0F |
45 | if d > 57 |
45 | if d > 57 |
46 | d = d + 65-57-1 |
46 | d = d + 65-57-1 |
47 | end if |
47 | end if |
48 | display d |
48 | display d |
49 | end repeat |
49 | end repeat |
50 | display 13,10 |
50 | display 13,10 |
51 | } |
51 | } |
52 | 52 | ||
53 | struc db [a] { common . db a |
53 | struc db [a] { common . db a |
54 | if ~used . |
54 | if ~used . |
55 | display 'not used db: ',`.,13,10 |
55 | display 'not used db: ',`.,13,10 |
56 | end if } |
56 | end if } |
57 | struc dw [a] { common . dw a |
57 | struc dw [a] { common . dw a |
58 | if ~used . |
58 | if ~used . |
59 | display 'not used dw: ',`.,13,10 |
59 | display 'not used dw: ',`.,13,10 |
60 | end if } |
60 | end if } |
61 | struc dd [a] { common . dd a |
61 | struc dd [a] { common . dd a |
62 | if ~used . |
62 | if ~used . |
63 | display 'not used dd: ',`.,13,10 |
63 | display 'not used dd: ',`.,13,10 |
64 | end if } |
64 | end if } |
65 | struc dp [a] { common . dp a |
65 | struc dp [a] { common . dp a |
66 | if ~used . |
66 | if ~used . |
67 | display 'not used dp: ',`.,13,10 |
67 | display 'not used dp: ',`.,13,10 |
68 | end if } |
68 | end if } |
69 | struc dq [a] { common . dq a |
69 | struc dq [a] { common . dq a |
70 | if ~used . |
70 | if ~used . |
71 | display 'not used dq: ',`.,13,10 |
71 | display 'not used dq: ',`.,13,10 |
72 | end if } |
72 | end if } |
73 | struc dt [a] { common . dt a |
73 | struc dt [a] { common . dt a |
74 | if ~used . |
74 | if ~used . |
75 | display 'not used dt: ',`.,13,10 |
75 | display 'not used dt: ',`.,13,10 |
76 | end if } |
76 | end if } |
- | 77 | ||
- | 78 | struc RECT { |
|
- | 79 | .left dd ? |
|
- | 80 | .top dd ? |
|
- | 81 | .right dd ? |
|
- | 82 | .bottom dd ? |
|
- | 83 | } |
|
- | 84 | virtual at 0 |
|
- | 85 | RECT RECT |
|
- | 86 | end virtual |
|
- | 87 | ||
- | 88 | struc BOX { |
|
- | 89 | .left dd ? |
|
- | 90 | .top dd ? |
|
- | 91 | .width dd ? |
|
- | 92 | .height dd ? |
|
- | 93 | } |
|
- | 94 | virtual at 0 |
|
- | 95 | BOX BOX |
|
- | 96 | end virtual |
|
77 | 97 | ||
78 | ; constants definition |
98 | ; constants definition |
79 | WSTATE_NORMAL = 00000000b |
99 | WSTATE_NORMAL = 00000000b |
80 | WSTATE_MAXIMIZED = 00000001b |
100 | WSTATE_MAXIMIZED = 00000001b |
81 | WSTATE_MINIMIZED = 00000010b |
101 | WSTATE_MINIMIZED = 00000010b |
82 | WSTATE_ROLLEDUP = 00000100b |
102 | WSTATE_ROLLEDUP = 00000100b |
- | 103 | ||
- | 104 | WSTATE_REDRAW = 00000001b |
|
- | 105 | WSTATE_WNDDRAWN = 00000010b |
|
- | 106 | ||
- | 107 | WSTYLE_HASCAPTION = 00010000b |
|
- | 108 | WSTYLE_CLIENTRELATIVE = 00100000b |
|
- | 109 | ||
- | 110 | struc TASKLIST |
|
- | 111 | { |
|
- | 112 | .event_mask dd ? |
|
- | 113 | .pid dd ? |
|
- | 114 | dw ? |
|
- | 115 | .state dw ? |
|
- | 116 | dw ? |
|
- | 117 | .wnd_number db ? |
|
- | 118 | db ? |
|
- | 119 | .mem_start dd ? |
|
- | 120 | .counter_sum dd ? |
|
- | 121 | .counter_add dd ? |
|
- | 122 | .cpu_usage dd ? |
|
- | 123 | } |
|
- | 124 | virtual at 0 |
|
- | 125 | TASKLIST TASKLIST |
|
- | 126 | end virtual |
|
83 | 127 | ||
84 | ; structures definition |
128 | ; structures definition |
85 | struc WDATA { |
- | |
86 | .left dd ? |
129 | struc WDATA { |
87 | .top dd ? |
- | |
88 | .width dd ? |
- | |
89 | .height dd ? |
130 | .box BOX |
90 | .cl_workarea dd ? |
131 | .cl_workarea dd ? |
91 | .cl_titlebar dd ? |
132 | .cl_titlebar dd ? |
92 | .cl_frames dd ? |
133 | .cl_frames dd ? |
93 | .reserved db ? |
134 | .reserved db ? |
94 | .fl_wstate db ? |
135 | .fl_wstate db ? |
95 | .fl_wdrawn db ? |
136 | .fl_wdrawn db ? |
96 | .fl_redraw db ? |
137 | .fl_redraw db ? |
97 | } |
138 | } |
98 | virtual at 0 |
139 | virtual at 0 |
99 | WDATA WDATA |
140 | WDATA WDATA |
100 | end virtual |
141 | end virtual |
101 | label WDATA.fl_wstyle byte at 0x13 ; WDATA.cl_workarea+3 |
142 | label WDATA.fl_wstyle byte at 0x13 |
102 | - | ||
103 | struc RECT { |
- | |
104 | .left dd ? |
- | |
105 | .top dd ? |
- | |
106 | .right dd ? |
- | |
107 | .bottom dd ? |
- | |
108 | } |
- | |
109 | virtual at 0 |
- | |
110 | RECT RECT |
- | |
111 | end virtual |
- | |
112 | 143 | ||
- | 144 | struc APPDATA |
|
- | 145 | { |
|
- | 146 | .app_name db 11 dup(?) |
|
- | 147 | db 5 dup(?) |
|
- | 148 | .fpu_save_area db 108 dup(?) |
|
- | 149 | db 3 dup(?) |
|
- | 150 | .is_fpu_saved db ? |
|
- | 151 | .wnd_shape dd ? |
|
113 | struc BOX { |
152 | .wnd_shape_scale dd ? |
- | 153 | .gdt dd ? |
|
- | 154 | .mem_size dd ? |
|
114 | .left dd ? |
155 | .saved_box BOX |
115 | .top dd ? |
156 | .ipc_start dd ? |
- | 157 | .ipc_size dd ? |
|
- | 158 | .event_mask dd ? |
|
- | 159 | .debugger_slot dd ? |
|
- | 160 | .int40_handler dd ? |
|
- | 161 | .keyboard_mode db ? |
|
116 | .width dd ? |
162 | db 3 dup(?) |
- | 163 | .dir_table dd ? |
|
- | 164 | .dbg_event_mem dd ? |
|
- | 165 | .dbg_regs: |
|
- | 166 | .dbg_regs.dr0 dd ? |
|
- | 167 | .dbg_regs.dr1 dd ? |
|
- | 168 | .dbg_regs.dr2 dd ? |
|
- | 169 | .dbg_regs.dr3 dd ? |
|
- | 170 | .dbg_regs.dr7 dd ? |
|
- | 171 | .wnd_caption dd ? |
|
117 | .height dd ? |
172 | .wnd_clientbox BOX |
118 | } |
173 | } |
119 | virtual at 0 |
174 | virtual at 0 |
120 | BOX BOX |
175 | APPDATA APPDATA |
121 | end virtual |
176 | end virtual |
122 | 177 | ||
123 | ;// mike.dld, 2006-29-01 ] |
178 | ;// mike.dld, 2006-29-01 ] |
124 | 179 | ||
125 | 180 | ||
126 | ; Core functions |
181 | ; Core functions |
127 | include "core/sync.inc" |
182 | include "core/sync.inc" ; macros for synhronization objects |
128 | include "core/sys32.inc" ; process management |
183 | include "core/sys32.inc" ; process management |
129 | include "core/sched.inc" ; process scheduling |
184 | include "core/sched.inc" ; process scheduling |
130 | include "core/syscall.inc" ; system call |
185 | include "core/syscall.inc" ; system call |
131 | include "core/mem.inc" ; high-level memory management |
186 | include "core/mem.inc" ; high-level memory management |
132 | include "core/newproce.inc" ;new process management |
187 | include "core/newproce.inc" ;new process management |
133 | include "core/physmem.inc" ; access to physical memory for applications |
188 | include "core/physmem.inc" ; access to physical memory for applications |
134 | include "core/sync.inc" ; macros for synhronization objects |
- | |
135 | 189 | ||
136 | ; GUI stuff |
190 | ; GUI stuff |
137 | include "gui/window.inc" |
191 | include "gui/window.inc" |
138 | include "gui/event.inc" |
192 | include "gui/event.inc" |
139 | include "gui/font.inc" |
193 | include "gui/font.inc" |
140 | include "gui/button.inc" |
194 | include "gui/button.inc" |
141 | 195 | ||
142 | ; shutdown |
196 | ; shutdown |
143 | 197 | ||
144 | include "boot/shutdown.inc" ; shutdown or restart |
198 | include "boot/shutdown.inc" ; shutdown or restart |
145 | 199 | ||
146 | ; file system |
200 | ; file system |
147 | 201 | ||
148 | include "fs/fs.inc" ; syscall |
202 | include "fs/fs.inc" ; syscall |
149 | include "fs/fat32.inc" ; read / write for fat32 filesystem |
203 | include "fs/fat32.inc" ; read / write for fat32 filesystem |
150 | include "fs/fat12.inc" ; read / write for fat12 filesystem |
204 | include "fs/fat12.inc" ; read / write for fat12 filesystem |
151 | include "blkdev/rd.inc" ; ramdisk read /write |
205 | include "blkdev/rd.inc" ; ramdisk read /write |
152 | include "fs/fs_lfn.inc" ; syscall, version 2 |
206 | include "fs/fs_lfn.inc" ; syscall, version 2 |
153 | include "fs/iso9660.inc" ; read for iso9660 filesystem CD |
207 | include "fs/iso9660.inc" ; read for iso9660 filesystem CD |
154 | 208 | ||
155 | ; sound |
209 | ; sound |
156 | 210 | ||
157 | include "sound/sb16.inc" ; playback for Sound Blaster 16 |
211 | include "sound/sb16.inc" ; playback for Sound Blaster 16 |
158 | include "sound/playnote.inc" ; player Note for Speaker PC |
212 | include "sound/playnote.inc" ; player Note for Speaker PC |
159 | 213 | ||
160 | ; display |
214 | ; display |
161 | 215 | ||
162 | include "video/vesa12.inc" ; Vesa 1.2 functions |
216 | include "video/vesa12.inc" ; Vesa 1.2 functions |
163 | include "video/vesa20.inc" ; Vesa 2.0 functions |
217 | include "video/vesa20.inc" ; Vesa 2.0 functions |
164 | include "video/vga.inc" ; VGA 16 color functions |
218 | include "video/vga.inc" ; VGA 16 color functions |
165 | 219 | ||
166 | ; Network Interface & TCPIP Stack |
220 | ; Network Interface & TCPIP Stack |
167 | 221 | ||
168 | include "network/stack.inc" |
222 | include "network/stack.inc" |
169 | 223 | ||
170 | ; Mouse pointer |
224 | ; Mouse pointer |
171 | 225 | ||
172 | include "gui/mouse.inc" |
226 | include "gui/mouse.inc" |
173 | 227 | ||
174 | ; Window skinning |
228 | ; Window skinning |
175 | 229 | ||
176 | include "gui/skincode.inc" |
230 | include "gui/skincode.inc" |
177 | 231 | ||
178 | ; Pci functions |
232 | ; Pci functions |
179 | 233 | ||
180 | include "bus/pci/pci32.inc" |
234 | include "bus/pci/pci32.inc" |
181 | 235 | ||
182 | ; Floppy drive controller |
236 | ; Floppy drive controller |
183 | 237 | ||
184 | include "blkdev/fdc.inc" |
238 | include "blkdev/fdc.inc" |
185 | include "blkdev/flp_drv.inc" |
239 | include "blkdev/flp_drv.inc" |
186 | 240 | ||
187 | ; CD drive controller |
241 | ; CD drive controller |
188 | 242 | ||
189 | include "blkdev/cdrom.inc" |
243 | include "blkdev/cdrom.inc" |
190 | include "blkdev/cd_drv.inc" |
244 | include "blkdev/cd_drv.inc" |
191 | 245 | ||
192 | ; Character devices |
246 | ; Character devices |
193 | 247 | ||
194 | include "hid/keyboard.inc" |
248 | include "hid/keyboard.inc" |
195 | include "hid/mousedrv.inc" |
249 | include "hid/mousedrv.inc" |
196 | 250 | ||
197 | ; setting date,time,clock and alarm-clock |
251 | ; setting date,time,clock and alarm-clock |
198 | 252 | ||
199 | include "hid/set_dtc.inc" |
253 | include "hid/set_dtc.inc" |
200 | 254 | ||
201 | ;% -include |
255 | ;% -include |