Subversion Repositories Kolibri OS

Rev

Rev 1198 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1159 hidnplayr 1
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2
;;                                                              ;;
3
;; Copyright (C) KolibriOS team 2004-2008. All rights reserved. ;;
4
;; Distributed under terms of the GNU General Public License    ;;
5
;;                                                              ;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
7
 
1206 hidnplayr 8
$Revision: 1206 $
1159 hidnplayr 9
 
10
 
11
keymap:
12
 
13
     db   '6',27
14
     db   '1234567890-=',8,9
15
     db   'qwertyuiop[]',13
16
     db   '~asdfghjkl;',39,96,0,'\zxcvbnm,./',0,'45 '
17
     db   '@234567890123',180,178,184,'6',176,'7'
18
     db   179,'8',181,177,183,185,182
19
     db   'AB
20
     db   'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
21
     db   'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
22
     db   'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
23
 
24
keymap_shift:
25
     db   '6',27
26
     db   '!@#$%^&*()_+',8,9
27
     db   'QWERTYUIOP{}',13
28
     db   '~ASDFGHJKL:"~',0,'|ZXCVBNM<>?',0,'45 '
29
     db   '@234567890123',180,178,184,'6',176,'7'
30
     db   179,'8',181,177,183,185,182
31
     db   'AB>D',255,'FGHIJKLMNOPQRSTUVWXYZ'
32
     db   'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
33
     db   'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
34
     db   'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
35
 
36
 
37
keymap_alt:
38
     db   ' ',27
39
     db   ' @ $  {[]}\ ',8,9
40
     db   '            ',13
41
     db   '             ',0,'           ',0,'4',0,' '
42
     db   '             ',180,178,184,'6',176,'7'
43
     db   179,'8',181,177,183,185,182
44
     db   'ABCD',255,'FGHIJKLMNOPQRSTUVWXYZ'
45
     db   'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
46
     db   'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
47
     db   'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
48
 
49
 
50
 
1198 clevermous 51
  boot_memdetect    db   'Determining amount of memory',0
52
  boot_fonts        db   'Fonts loaded',0
53
  boot_tss          db   'Setting TSSs',0
54
  boot_cpuid        db   'Reading CPUIDs',0
55
  boot_devices      db   'Detecting devices',0
56
  boot_timer        db   'Setting timer',0
57
  boot_irqs         db   'Reprogramming IRQs',0
58
  boot_setmouse     db   'Setting mouse',0
59
  boot_windefs      db   'Setting window defaults',0
60
  boot_bgr          db   'Calculating background',0
61
  boot_resirqports  db   'Reserving IRQs & ports',0
62
  boot_setrports    db   'Setting addresses for IRQs',0
63
  boot_setostask    db   'Setting OS task',0
64
  boot_allirqs      db   'Unmasking all IRQs',0
65
  boot_tsc          db   'Reading TSC',0
66
  boot_cpufreq      db   'CPU frequency is ','    ',' MHz',0
67
  boot_pal_ega      db   'Setting EGA/CGA 320x200 palette',0
68
  boot_pal_vga      db   'Setting VGA 640x480 palette',0
69
  boot_failed       db   'Failed to start first app',0
70
  boot_mtrr         db   'Setting MTRR',0
1159 hidnplayr 71
if preboot_blogesc
1198 clevermous 72
  boot_tasking      db   'All set - press ESC to start',0
1159 hidnplayr 73
end if
74
 
1198 clevermous 75
;new_process_loading db 'K : New Process - loading',13,10,0
76
;new_process_running db 'K : New Process - done',13,10,0
1159 hidnplayr 77
start_not_enough_memory db 'K : New Process - not enough memory',13,10,0
78
 
79
msg_unresolved db 'unresolved ',0
80
msg_module     db 'in module ',0
81
msg_version    db 'incompatible driver version',13,10,0
82
msg_www        db 'please visit www.kolibrios.org',13,10,0
1198 clevermous 83
msg_CR         db  13,10,0
1159 hidnplayr 84
aSis           db 'SIS',0
85
 
86
intel_str      db "GenuineIntel",0
87
AMD_str        db "AuthenticAMD",0
88
 
89
;szSound        db 'SOUND',0
90
;szInfinity     db 'INFINITY',0
1198 clevermous 91
szHwMouse       db 'ATI2D',0
92
szPS2MDriver    db 'PS2MOUSE',0
93
;szCOM_MDriver   db 'COM_MOUSE',0
94
szUSB           db 'USB',0
95
szAtiHW         db '/rd/1/drivers/ati2d.drv',0
1159 hidnplayr 96
 
97
szSTART        db 'START',0
98
szEXPORTS      db 'EXPORTS',0
99
sz_EXPORTS     db '_EXPORTS',0
100
 
101
szIMPORTS      db 'IMPORTS',0
102
 
103
read_firstapp  db '/sys/'
104
firstapp       db  'LAUNCHER',0
105
 
1198 clevermous 106
char    db '/sys/FONTS/CHAR.MT',0
107
char2   db '/sys/FONTS/CHAR2.MT',0
1159 hidnplayr 108
 
109
bootpath       db  '/KOLIBRI    '
110
bootpath2      db  0
1198 clevermous 111
vmode          db  '/sys/drivers/VMODE.MDR',0
112
vrr_m          db  'VRR_M',0
1159 hidnplayr 113
kernel_file    db  'KERNEL  MNT'
114
 
115
 
116
align 4
117
 
118
shmem_list:
119
 .bk           dd shmem_list
120
 .fd           dd shmem_list
121
 
122
; supported videomodes
123
 
124
mode_1280_1024_32:
125
  dw 1280,1024,32,60
126
mode_1280_1024_24:
127
  dw 1280,1024,24,60
128
mode_1024_768_32:
129
  dw 1024,768,32,60
130
mode_1024_768_24:
131
  dw 1024,768,24,60
132
mode_800_600_32:
133
  dw 800,600,32,60
134
mode_800_600_24:
135
  dw 800,600,24,60
136
mode_640_480_32:
137
  dw 640,480,32,60
138
mode_640_480_24:
139
  dw 640,480,24,60
140
mode_640_480_16:
141
  dw 640,480,16,60
142
mode_320_240_8:
143
  dw 320,240,8,60
144
 
145
; mike.dld {
146
db 0
147
dd servetable-0x10000
1198 clevermous 148
draw_line       dd __sys_draw_line
149
disable_mouse   dd __sys_disable_mouse
150
draw_pointer    dd __sys_draw_pointer
1159 hidnplayr 151
;//mike.dld, 2006-08-02 [
152
;drawbar         dd __sys_drawbar
1198 clevermous 153
drawbar         dd __sys_drawbar.forced
1159 hidnplayr 154
;//mike.dld, 2006-08-02 ]
1198 clevermous 155
putpixel        dd __sys_putpixel
1159 hidnplayr 156
; } mike.dld
157
 
158
 
159
align 4
160
keyboard   dd 1
161
syslang    dd 1
162
 
1198 clevermous 163
boot_y     dd 10
1159 hidnplayr 164
 
1198 clevermous 165
pci_bios_entry  dd 0
166
                dw pci_code_sel
1159 hidnplayr 167
 
168
if __DEBUG__ eq 1
169
  include_debug_strings
170
end if
171
 
172
IncludeIGlobals
173
 
174
align 16
175
gdts:
176
 
1198 clevermous 177
        dw     gdte-$-1
178
        dd     gdts
179
        dw     0
1159 hidnplayr 180
 
181
; Attention! Do not change the order of the first four selectors. They are used in Fast System Call
182
; must be : os_code, os_data, app_code, app_data, ....
183
 
184
int_code_l:
185
os_code_l:
1198 clevermous 186
        dw     0xffff
187
        dw     0x0000
188
        db     0x00
189
        dw     11011111b *256 +10011010b
190
        db     0x00
1159 hidnplayr 191
 
192
int_data_l:
193
os_data_l:
1198 clevermous 194
        dw     0xffff
195
        dw     0x0000
196
        db     0x00
197
        dw     11011111b *256 +10010010b
198
        db     0x00
1159 hidnplayr 199
 
200
app_code_l:
1198 clevermous 201
        dw 0xFFFF
202
        dw 0
203
        db 0
204
        db cpl3
205
        dw G32+D32+(new_app_base shr 16)+0xF;
1159 hidnplayr 206
 
207
app_data_l:
1198 clevermous 208
        dw 0xFFFF
209
        dw 0
210
        db 0
211
        db drw3
212
        dw G32+D32+(new_app_base shr 16)+0xF;
1159 hidnplayr 213
 
214
; ------------- PCI BIOS ------------------
215
 
216
pci_code_32:
1198 clevermous 217
        dw 0         ;lim  0-15
218
        dw 0         ;base 0-15
219
        db 0         ;base 16-23
220
        db cpl0      ;type
221
        db D32       ;lim 16-19+props
222
        db 0         ;base 24-31
1159 hidnplayr 223
 
224
pci_data_32:
1198 clevermous 225
        dw 0         ;lim  0-15
226
        dw 0         ;base 0-15
227
        db 0         ;base 16-23
228
        db dpl0      ;type
229
        db D32       ;lim 16-19+props
230
        db 0         ;base 24-31
1159 hidnplayr 231
 
232
; --------------- APM ---------------------
233
apm_code_32:
1198 clevermous 234
        dw     0x0f        ; limit 64kb
235
        db     0, 0, 0
236
        dw     11010000b *256 +10011010b
237
        db     0x00
1159 hidnplayr 238
apm_code_16:
1198 clevermous 239
        dw     0x0f
240
        db     0, 0, 0
241
        dw     10010000b *256 +10011010b
242
        db     0x00
1159 hidnplayr 243
apm_data_16:
1198 clevermous 244
        dw     0x0f
245
        db     0, 0, 0
246
        dw     10010000b *256 +10010010b
247
        db     0x00
1159 hidnplayr 248
; -----------------------------------------
249
 
250
graph_data_l:
251
 
1198 clevermous 252
        dw     0x7ff
253
        dw     0x0000
254
        db     0x00
255
        dw     11010000b *256 +11110010b
256
        db     0x00
1159 hidnplayr 257
tss0_l:
1198 clevermous 258
        dw     TSS_SIZE-1
259
        dw     tss and 0xFFFF
260
        db     (tss shr 16) and 0xFF
261
        db     10001001b
262
        dw     (tss shr 16) and 0xFF00
1159 hidnplayr 263
endofcode:
264
gdte:
265
 
266
align 16
1198 clevermous 267
cur_saved_data    rb 4096
268
fpu_data:         rb 512
1159 hidnplayr 269
 
270
; device irq owners
1198 clevermous 271
irq_owner         rd 16 ; process id
1159 hidnplayr 272
 
273
; on irq read ports
274
 
1198 clevermous 275
irq00read         rd 16
276
irq01read         rd 16
277
irq02read         rd 16
278
irq03read         rd 16
279
irq04read         rd 16
280
irq05read         rd 16
281
irq06read         rd 16
282
irq07read         rd 16
283
irq08read         rd 16
284
irq09read         rd 16
285
irq10read         rd 16
286
irq11read         rd 16
287
irq12read         rd 16
288
irq13read         rd 16
289
irq14read         rd 16
290
irq15read         rd 16
1159 hidnplayr 291
 
1198 clevermous 292
irq_tab           rd 16
1159 hidnplayr 293
 
1198 clevermous 294
mem_block_map     rb 512
295
mem_block_list    rd 64
1159 hidnplayr 296
large_block_list  rd 31
1198 clevermous 297
mem_block_mask    rd 2
1159 hidnplayr 298
large_block_mask  rd 1
299
 
300
mem_used.fd       rd 1
301
mem_used.bk       rd 1
302
 
1198 clevermous 303
mem_block_arr     rd 1
1159 hidnplayr 304
mem_block_start   rd 1
1198 clevermous 305
mem_block_end     rd 1
1159 hidnplayr 306
 
307
heap_mutex        rd 1
308
heap_size         rd 1
309
heap_free         rd 1
310
heap_blocks       rd 1
311
free_blocks       rd 1
312
 
313
mst MEM_STATE
314
 
315
page_start        rd 1
316
page_end          rd 1
1198 clevermous 317
sys_page_map      rd 1
318
os_stack_seg      rd 1
1159 hidnplayr 319
 
320
 
1198 clevermous 321
srv.fd            rd 1
322
srv.bk            rd 1
1159 hidnplayr 323
 
1198 clevermous 324
scr_width         rd 1
325
scr_height        rd 1
1159 hidnplayr 326
 
1198 clevermous 327
create_cursor     rd 1
1159 hidnplayr 328
select_hw_cursor  rd 1
1198 clevermous 329
set_hw_cursor     rd 1
330
hw_restore        rd 1
1159 hidnplayr 331
 
1198 clevermous 332
def_cursor        rd 1
333
current_cursor    rd 1
334
hw_cursor         rd 1
335
cur_def_interl    rd 1
336
cur_saved_base    rd 1
1159 hidnplayr 337
cur_saved_interl  rd 1
1198 clevermous 338
cur_saved_w       rd 1
339
cur_saved_h       rd 1
1159 hidnplayr 340
 
1198 clevermous 341
ipc_tmp           rd 1
342
ipc_pdir          rd 1
343
ipc_ptab          rd 1
1159 hidnplayr 344
 
1198 clevermous 345
proc_mem_map      rd 1
346
proc_mem_pdir     rd 1
347
proc_mem_tab      rd 1
1159 hidnplayr 348
 
1198 clevermous 349
tmp_task_pdir     rd 1
350
tmp_task_ptab     rd 1
1159 hidnplayr 351
 
1198 clevermous 352
default_io_map    rd 1
1159 hidnplayr 353
 
1198 clevermous 354
LFBSize           rd 1
1159 hidnplayr 355
 
1198 clevermous 356
stall_mcs         rd 1
357
current_slot      rd 1
1159 hidnplayr 358
 
359
; status
1198 clevermous 360
hd1_status                  rd 1  ; 0 - free : other - pid
1159 hidnplayr 361
application_table_status    rd 1  ; 0 - free : other - pid
362
 
363
; device addresses
1198 clevermous 364
mididp            rd 1
365
midisp            rd 1
1159 hidnplayr 366
 
1198 clevermous 367
cdbase            rd 1
368
cdid              rd 1
1159 hidnplayr 369
 
1198 clevermous 370
hdbase            rd 1    ; for boot 0x1f0
371
hdid              rd 1
372
hdpos             rd 1    ; for boot 0x1
373
fat32part         rd 1    ; for boot 0x1
374
cdpos             rd 1
1159 hidnplayr 375
 
376
;CPUID information
1198 clevermous 377
cpu_vendor        rd 3
378
cpu_sign          rd 1
379
cpu_info          rd 1
380
cpu_caps          rd 4
1159 hidnplayr 381
 
382
 
1198 clevermous 383
pg_data           PG_DATA
384
heap_test         rd 1
1159 hidnplayr 385
 
1198 clevermous 386
buttontype        rd 1
1159 hidnplayr 387
windowtypechanged rd 1
388
 
1198 clevermous 389
hd_entries        rd 1     ;unused ? 0xfe10
1159 hidnplayr 390
 
391
;* start code - Mario79
392
 
1198 clevermous 393
mouse_active          rd 1
394
mouse_pause           rd 1
1159 hidnplayr 395
MouseTickCounter      rd 1
396
 
397
;* end code - Mario79
398
 
1198 clevermous 399
img_background        rd 1
400
mem_BACKGROUND        rd 1
401
static_background_data rd 1
1159 hidnplayr 402
 
403
cache_ide0:
1198 clevermous 404
cache_ide0_pointer            rd 1
405
cache_ide0_size               rd 1   ; not use
1159 hidnplayr 406
cache_ide0_data_pointer       rd 1
407
cache_ide0_system_data_size   rd 1   ; not use
408
cache_ide0_appl_data_size     rd 1   ; not use
1198 clevermous 409
cache_ide0_system_data        rd 1
410
cache_ide0_appl_data          rd 1
1159 hidnplayr 411
cache_ide0_system_sad_size    rd 1
412
cache_ide0_appl_sad_size      rd 1
413
cache_ide0_search_start       rd 1
414
cache_ide0_appl_search_start  rd 1
415
 
416
cache_ide1:
1198 clevermous 417
cache_ide1_pointer            rd 1
418
cache_ide1_size               rd 1   ; not use
1159 hidnplayr 419
cache_ide1_data_pointer       rd 1
420
cache_ide1_system_data_size   rd 1   ; not use
421
cache_ide1_appl_data_size     rd 1   ; not use
1198 clevermous 422
cache_ide1_system_data        rd 1
423
cache_ide1_appl_data          rd 1
1159 hidnplayr 424
cache_ide1_system_sad_size    rd 1
425
cache_ide1_appl_sad_size      rd 1
426
cache_ide1_search_start       rd 1
427
cache_ide1_appl_search_start  rd 1
428
 
429
cache_ide2:
1198 clevermous 430
cache_ide2_pointer            rd 1
431
cache_ide2_size               rd 1   ; not use
1159 hidnplayr 432
cache_ide2_data_pointer       rd 1
433
cache_ide2_system_data_size   rd 1   ; not use
434
cache_ide2_appl_data_size     rd 1   ; not use
1198 clevermous 435
cache_ide2_system_data        rd 1
436
cache_ide2_appl_data          rd 1
1159 hidnplayr 437
cache_ide2_system_sad_size    rd 1
438
cache_ide2_appl_sad_size      rd 1
439
cache_ide2_search_start       rd 1
440
cache_ide2_appl_search_start  rd 1
441
 
442
cache_ide3:
1198 clevermous 443
cache_ide3_pointer            rd 1
444
cache_ide3_size               rd 1   ; not use
1159 hidnplayr 445
cache_ide3_data_pointer       rd 1
446
cache_ide3_system_data_size   rd 1   ; not use
447
cache_ide3_appl_data_size     rd 1   ; not use
1198 clevermous 448
cache_ide3_system_data        rd 1
449
cache_ide3_appl_data          rd 1
1159 hidnplayr 450
cache_ide3_system_sad_size    rd 1
451
cache_ide3_appl_sad_size      rd 1
452
cache_ide3_search_start       rd 1
453
cache_ide3_appl_search_start  rd 1
454
 
455
debug_step_pointer rd 1
456
hdd_appl_data rb 1 ; 0 = system cache, 1 - application cache
457
cd_appl_data rb 1 ; 0 = system cache, 1 - application cache
458
 
459
lba_read_enabled      rd 1  ; 0 = disabled , 1 = enabled
460
pci_access_enabled    rd 1  ; 0 = disabled , 1 = enabled
1198 clevermous 461
timer_ticks_enable rb 1         ; for cd driver
1159 hidnplayr 462
 
1198 clevermous 463
NumBiosDisks    rd 1
464
BiosDisksData   rb 200h
465
BiosDiskCaches  rb 80h*(cache_ide1-cache_ide0)
1159 hidnplayr 466
BiosDiskPartitions rd 80h
467
 
468
IncludeUGlobals