Subversion Repositories Kolibri OS

Rev

Rev 3671 | Rev 4097 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3671 Rev 3927
1
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2
;;                               ;;
2
;;                               ;;
3
;;          DEVICE SETUP         ;;
3
;;          DEVICE SETUP         ;;
4
;;                               ;;
4
;;                               ;;
5
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
5
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
6
; version:      1.15
6
; version:      1.15
7
; last update:  20/04/2012
7
; last update:  20/04/2012
8
; changed by:   Marat Zakiyanov aka Mario79, aka Mario
8
; changed by:   Marat Zakiyanov aka Mario79, aka Mario
9
; changes:      Add the flag of speaker mute.
9
; changes:      Add the flag of speaker mute.
10
;               Correcting setup.dat
10
;               Correcting setup.dat
11
;---------------------------------------------------------------------
11
;---------------------------------------------------------------------
12
; version:      1.14
12
; version:      1.14
13
; last update:  20/03/2012
13
; last update:  20/03/2012
14
; changed by:   Marat Zakiyanov aka Mario79, aka Mario
14
; changed by:   Marat Zakiyanov aka Mario79, aka Mario
15
; changes:      optimisations and code refactoring
15
; changes:      optimisations and code refactoring
16
;---------------------------------------------------------------------
16
;---------------------------------------------------------------------
17
; Authors: Ville       - original version
17
; Authors: Ville       - original version
18
;          A. Ivushkin - autostart (w launcher)
18
;          A. Ivushkin - autostart (w launcher)
19
;          M. Lisovin  - added many feauters (apply all, save all, set time...)
19
;          M. Lisovin  - added many feauters (apply all, save all, set time...)
20
;          I. Poddubny - fixed russian keymap
20
;          I. Poddubny - fixed russian keymap
21
;14/08/06  Mario79 - added regulation of mouse features
21
;14/08/06  Mario79 - added regulation of mouse features
22
;-------------------------------------------------------------------------------
22
;-------------------------------------------------------------------------------
23
format binary as ""
23
format binary as ""
24
 
24
 
25
        use32
25
        use32
26
        org 0x0
26
        org 0x0
27
 
27
 
28
        db 'MENUET01'   ; 8 byte identifier
28
        db 'MENUET01'   ; 8 byte identifier
29
        dd 0x01         ; header version
29
        dd 0x01         ; header version
30
        dd START        ; pointer to program start
30
        dd START        ; pointer to program start
31
        dd IM_END       ; size of image
31
        dd IM_END       ; size of image
32
        dd I_END        ; reguired amount of memory
32
        dd I_END        ; reguired amount of memory
33
        dd stack_area   ; stack pointer (esp)
33
        dd stack_area   ; stack pointer (esp)
34
        dd boot_param   ; boot parameters
34
        dd boot_param   ; boot parameters
35
        dd 0x0          ; path
35
        dd 0x0          ; path
36
;-------------------------------------------------------------------------------
36
;-------------------------------------------------------------------------------
37
include '..\..\..\macros.inc'
37
include '..\..\..\macros.inc'
38
;-------------------------------------------------------------------------------
38
;-------------------------------------------------------------------------------
39
LLL equ (56+3)
39
LLL equ (56+3)
40
BBB equ 25
40
BBB equ 25
41
;-------------------------------------------------------------------------------
41
;-------------------------------------------------------------------------------
42
apply_all:
42
apply_all:
43
        call    _pci_acc    ;12
43
        call    _pci_acc    ;12
44
        call    _syslang    ;5
44
        call    _syslang    ;5
45
        call    _keyboard    ;2
45
        call    _keyboard    ;2
46
        call    _mouse_speed
46
        call    _mouse_speed
47
        call    _mouse_delay
47
        call    _mouse_delay
48
        call    _speaker_mute
48
        call    _speaker_mute
49
        ret
49
        ret
50
;-------------------------------------------------------------------------------
50
;-------------------------------------------------------------------------------
51
apply_all_and_exit:
51
apply_all_and_exit:
52
        mcall   70,read_fileinfo
52
        mcall   70,read_fileinfo
53
        call    apply_all
53
        call    apply_all
54
        jmp     close
54
        jmp     close
55
;-------------------------------------------------------------------------------
55
;-------------------------------------------------------------------------------
56
set_language_and_exit:
56
set_language_and_exit:
57
        mcall   26,2,9
57
        mcall   26,2,9
58
        cmp     eax,1
58
        cmp     eax,1
59
        je      russian
59
        je      russian
60
 
60
 
61
        xor     eax,eax
61
        xor     eax,eax
62
;--------------------------------------
62
;--------------------------------------
63
set_lang_now:
63
set_lang_now:
64
        mov     [keyboard],eax
64
        mov     [keyboard],eax
65
        call    _keyboard
65
        call    _keyboard
66
        jmp     close
66
        jmp     close
67
;--------------------------------------
67
;--------------------------------------
68
russian:
68
russian:
69
        mov     eax,3
69
        mov     eax,3
70
        jmp     set_lang_now
70
        jmp     set_lang_now
71
;-------------------------------------------------------------------------------
71
;-------------------------------------------------------------------------------
72
set_syslanguage_and_exit:
72
set_syslanguage_and_exit:
73
        mcall   26,5
73
        mcall   26,5
74
        cmp     eax,6
74
        cmp     eax,6
75
        jne     temp
75
        jne     temp
76
        xor     eax,eax
76
        xor     eax,eax
77
;--------------------------------------
77
;--------------------------------------
78
temp:
78
temp:
79
        inc     eax
79
        inc     eax
80
        mov     [syslang],eax
80
        mov     [syslang],eax
81
        call    _syslang
81
        call    _syslang
82
        jmp     close
82
        jmp     close
83
;-------------------------------------------------------------------------------
83
;-------------------------------------------------------------------------------
84
get_setup_values:
84
get_setup_values:
85
        mcall   26,2,9
85
        mcall   26,2,9
86
        dec     eax
86
        dec     eax
87
        mov     [keyboard],eax
87
        mov     [keyboard],eax
88
 
88
 
89
        mcall   26,5
89
        mcall   26,5
90
        mov     [syslang],eax
90
        mov     [syslang],eax
91
 
91
 
92
        mcall   26,11
92
        mcall   26,11
93
        mov     [lba_read],eax
93
        mov     [lba_read],eax
94
 
94
 
95
        mcall   26,12
95
        mcall   26,12
96
        mov     [pci_acc],eax
96
        mov     [pci_acc],eax
97
 
97
 
98
        mcall   18,19,0
98
        mcall   18,19,0
99
        mov     [mouse_speed],eax
99
        mov     [mouse_speed],eax
100
 
100
 
101
        mcall   18,19,2
101
        mcall   18,19,2
102
        mov     [mouse_delay],eax
102
        mov     [mouse_delay],eax
103
        
103
        
104
        mcall   18,8,1
104
        mcall   18,8,1
105
        mov     [speaker_mute],eax
105
        mov     [speaker_mute],eax
106
        ret
106
        ret
107
;-------------------------------------------------------------------------------
107
;-------------------------------------------------------------------------------
108
START:
108
START:
109
        mov     eax,boot_param
109
        mov     eax,boot_param
110
        cmp     [eax],dword 'SLAN'
110
        cmp     [eax],dword 'SLAN'
111
        je      set_syslanguage_and_exit
111
        je      set_syslanguage_and_exit
112
 
112
 
113
        cmp     [eax],dword 'LANG'
113
        cmp     [eax],dword 'LANG'
114
        je      set_language_and_exit
114
        je      set_language_and_exit
115
 
115
 
116
        cmp     [eax],dword 'BOOT'
116
        cmp     [eax],dword 'BOOT'
117
        je      apply_all_and_exit
117
        je      apply_all_and_exit
118
 
118
 
119
        call    get_setup_values
119
        call    get_setup_values
120
        call    loadtxt
120
        call    loadtxt
121
        call    draw_infotext
121
        call    draw_infotext
122
;-------------------------------------------------------------------------------
122
;-------------------------------------------------------------------------------
123
red:
123
red:
124
        call    draw_window
124
        call    draw_window
125
;-------------------------------------------------------------------------------
125
;-------------------------------------------------------------------------------
126
still:
126
still:
127
sysevent:
127
sysevent:
128
        mcall   23,8          ; wait here for event with timeout
128
        mcall   23,8          ; wait here for event with timeout
129
        cmp     eax,1
129
        cmp     eax,1
130
        jz      red
130
        jz      red
131
 
131
 
132
        cmp     eax,2
132
        cmp     eax,2
133
        jz      key
133
        jz      key
134
 
134
 
135
        cmp     eax,3
135
        cmp     eax,3
136
        jz      button
136
        jz      button
137
 
137
 
138
        jmp     still
138
        jmp     still
139
;-------------------------------------------------------------------------------
139
;-------------------------------------------------------------------------------
140
key:
140
key:
141
        mcall   2
141
        mcall   2
142
        jmp     still
142
        jmp     still
143
;-------------------------------------------------------------------------------
143
;-------------------------------------------------------------------------------
144
button:
144
button:
145
        mcall   17
145
        mcall   17
146
        cmp     ah,99
146
        cmp     ah,99
147
        jne     nosaveall
147
        jne     nosaveall
148
        mcall   70,save_fileinfo
148
        mcall   70,save_fileinfo
149
        jmp     still
149
        jmp     still
150
;--------------------------------------    
150
;--------------------------------------    
151
nosaveall:
151
nosaveall:
152
        cmp     ah,100
152
        cmp     ah,100
153
        jne     no_apply_all
153
        jne     no_apply_all
154
        call    apply_all
154
        call    apply_all
155
        jmp     still
155
        jmp     still
156
;--------------------------------------
156
;--------------------------------------
157
no_apply_all:
157
no_apply_all:
158
        cmp     ah,1    ; CLOSE APPLICATION
158
        cmp     ah,1    ; CLOSE APPLICATION
159
        jne     no_close
159
        jne     no_close
160
;--------------------------------------
160
;--------------------------------------
161
close:
161
close:
162
        or      eax,-1
162
        or      eax,-1
163
        mcall
163
        mcall
164
;--------------------------------------
164
;--------------------------------------
165
no_close:
165
no_close:
166
        cmp     ah,4    ; SET KEYBOARD
166
        cmp     ah,4    ; SET KEYBOARD
167
        jnz     nokm
167
        jnz     nokm
168
        mov     eax,[keyboard]
168
        mov     eax,[keyboard]
169
        test    eax,eax
169
        test    eax,eax
170
        je      downuplbl
170
        je      downuplbl
171
        dec     eax
171
        dec     eax
172
        jmp     nodownup
172
        jmp     nodownup
173
;--------------------------------------
173
;--------------------------------------
174
downuplbl:
174
downuplbl:
175
        mov     eax,7
175
        mov     eax,7
176
;--------------------------------------
176
;--------------------------------------
177
nodownup:
177
nodownup:
178
        mov     [keyboard],eax
178
        mov     [keyboard],eax
179
        call    draw_infotext
179
        call    draw_infotext
180
;--------------------------------------
180
;--------------------------------------
181
nokm:
181
nokm:
182
        cmp     ah,5
182
        cmp     ah,5
183
        jnz     nokp
183
        jnz     nokp
184
        mov     eax,[keyboard]
184
        mov     eax,[keyboard]
185
        cmp     eax,7
185
        cmp     eax,7
186
        je      updownlbl
186
        je      updownlbl
187
        inc     eax
187
        inc     eax
188
        jmp     noupdown
188
        jmp     noupdown
189
;--------------------------------------
189
;--------------------------------------
190
updownlbl:
190
updownlbl:
191
        xor     eax,eax
191
        xor     eax,eax
192
;--------------------------------------
192
;--------------------------------------
193
noupdown:
193
noupdown:
194
        mov     [keyboard],eax
194
        mov     [keyboard],eax
195
        call    draw_infotext
195
        call    draw_infotext
196
;--------------------------------------
196
;--------------------------------------
197
nokp:
197
nokp:
198
        cmp     ah,92   ; SET LBA READ
198
        cmp     ah,92   ; SET LBA READ
199
        jne     no_lba_d
199
        jne     no_lba_d
200
;--------------------------------------
200
;--------------------------------------
201
slbal:
201
slbal:
202
        btc     [lba_read],0
202
        btc     [lba_read],0
203
        call    draw_infotext
203
        call    draw_infotext
204
        jmp     still
204
        jmp     still
205
;--------------------------------------
205
;--------------------------------------
206
no_lba_d:
206
no_lba_d:
207
        cmp     ah,93
207
        cmp     ah,93
208
        jne     no_lba_i
208
        jne     no_lba_i
209
        jmp     slbal
209
        jmp     slbal
210
;--------------------------------------
210
;--------------------------------------
211
no_lba_i:
211
no_lba_i:
212
        cmp     ah,91
212
        cmp     ah,91
213
        jne     no_set_lba_read
213
        jne     no_set_lba_read
214
        call    _lba_read
214
        call    _lba_read
215
        jmp     still
215
        jmp     still
216
;--------------------------------------
216
;--------------------------------------
217
no_set_lba_read:
217
no_set_lba_read:
218
        cmp     ah,102  ; SET PCI ACCESS
218
        cmp     ah,102  ; SET PCI ACCESS
219
        jne     no_pci_d
219
        jne     no_pci_d
220
;--------------------------------------
220
;--------------------------------------
221
pcip:
221
pcip:
222
        btc     [pci_acc],0
222
        btc     [pci_acc],0
223
        call    draw_infotext
223
        call    draw_infotext
224
        jmp     still
224
        jmp     still
225
;--------------------------------------
225
;--------------------------------------
226
no_pci_d:
226
no_pci_d:
227
        cmp     ah,103
227
        cmp     ah,103
228
        jne     no_pci_i
228
        jne     no_pci_i
229
        jmp     pcip
229
        jmp     pcip
230
;--------------------------------------
230
;--------------------------------------
231
no_pci_i:
231
no_pci_i:
232
        cmp     ah,101
232
        cmp     ah,101
233
        jne     no_set_pci_acc
233
        jne     no_set_pci_acc
234
        call    _pci_acc
234
        call    _pci_acc
235
        jmp     still
235
        jmp     still
236
;--------------------------------------
236
;--------------------------------------
237
no_set_pci_acc:
237
no_set_pci_acc:
238
        cmp     ah,42   ; SET SYSTEM LANGUAGE BASE
238
        cmp     ah,42   ; SET SYSTEM LANGUAGE BASE
239
        jnz     nosysm
239
        jnz     nosysm
240
        mov     eax,[syslang]
240
        mov     eax,[syslang]
241
        dec     eax
241
        dec     eax
242
        jz      still
242
        jz      still
243
        mov     [syslang],eax
243
        mov     [syslang],eax
244
        call    draw_infotext
244
        call    draw_infotext
245
;--------------------------------------
245
;--------------------------------------
246
nosysm:
246
nosysm:
247
        cmp     ah,43
247
        cmp     ah,43
248
        jnz     nosysp
248
        jnz     nosysp
249
        mov     eax,[syslang]
249
        mov     eax,[syslang]
250
        cmp     eax,6
250
        cmp     eax,6
251
        je      nosysp
251
        je      nosysp
252
        inc     eax
252
        inc     eax
253
        mov     [syslang],eax
253
        mov     [syslang],eax
254
        call    draw_infotext
254
        call    draw_infotext
255
;--------------------------------------
255
;--------------------------------------
256
nosysp:
256
nosysp:
257
        cmp     ah,41
257
        cmp     ah,41
258
        jnz     nosyss
258
        jnz     nosyss
259
        call    _syslang
259
        call    _syslang
260
        call    cleantxt
260
        call    cleantxt
261
        call    loadtxt
261
        call    loadtxt
262
        call    draw_window
262
        call    draw_window
263
;--------------------------------------
263
;--------------------------------------
264
nosyss:
264
nosyss:
265
        cmp     ah,132  ; SET MOUSE SPEED
265
        cmp     ah,132  ; SET MOUSE SPEED
266
        jnz     .nominus
266
        jnz     .nominus
267
        mov     eax,[mouse_speed]
267
        mov     eax,[mouse_speed]
268
        sub     eax,2
268
        sub     eax,2
269
        cmp     eax,9
269
        cmp     eax,9
270
        jb      @f
270
        jb      @f
271
        mov     eax,8
271
        mov     eax,8
272
;--------------------------------------
272
;--------------------------------------
273
@@:
273
@@:
274
        inc     eax
274
        inc     eax
275
        mov     [mouse_speed],eax
275
        mov     [mouse_speed],eax
276
        call    draw_infotext
276
        call    draw_infotext
277
;--------------------------------------
277
;--------------------------------------
278
.nominus:
278
.nominus:
279
        cmp     ah,133
279
        cmp     ah,133
280
        jnz     .noplus
280
        jnz     .noplus
281
        mov     eax,[mouse_speed]
281
        mov     eax,[mouse_speed]
282
        cmp     eax,9
282
        cmp     eax,9
283
        jb      @f
283
        jb      @f
284
        mov     eax,0
284
        mov     eax,0
285
;--------------------------------------
285
;--------------------------------------
286
@@:
286
@@:
287
        inc     eax
287
        inc     eax
288
        mov     [mouse_speed],eax
288
        mov     [mouse_speed],eax
289
        call    draw_infotext
289
        call    draw_infotext
290
;--------------------------------------
290
;--------------------------------------
291
.noplus:
291
.noplus:
292
        cmp     ah,131
292
        cmp     ah,131
293
        jnz     .noapply
293
        jnz     .noapply
294
        call    _mouse_speed
294
        call    _mouse_speed
295
;--------------------------------------    
295
;--------------------------------------    
296
.noapply:
296
.noapply:
297
mousedelay:
297
mousedelay:
298
        cmp     ah,142        ; SET MOUSE DELAY
298
        cmp     ah,142        ; SET MOUSE DELAY
299
        jnz     .nominus
299
        jnz     .nominus
300
        mov     eax,[mouse_delay]
300
        mov     eax,[mouse_delay]
301
        sub     eax,2
301
        sub     eax,2
302
        cmp     eax,0xfff
302
        cmp     eax,0xfff
303
        jb      @f
303
        jb      @f
304
        mov     eax,0xffe
304
        mov     eax,0xffe
305
;--------------------------------------
305
;--------------------------------------
306
@@:
306
@@:
307
        inc     eax
307
        inc     eax
308
        mov     [mouse_delay],eax
308
        mov     [mouse_delay],eax
309
        call    draw_infotext
309
        call    draw_infotext
310
;--------------------------------------
310
;--------------------------------------
311
.nominus:
311
.nominus:
312
        cmp     ah,143
312
        cmp     ah,143
313
        jnz     .noplus
313
        jnz     .noplus
314
        mov     eax,[mouse_delay]
314
        mov     eax,[mouse_delay]
315
        cmp     eax,0xfff
315
        cmp     eax,0xfff
316
        jb      @f
316
        jb      @f
317
        mov     eax,0
317
        mov     eax,0
318
;--------------------------------------
318
;--------------------------------------
319
@@:
319
@@:
320
        inc     eax
320
        inc     eax
321
        mov     [mouse_delay],eax
321
        mov     [mouse_delay],eax
322
        call    draw_infotext
322
        call    draw_infotext
323
;--------------------------------------
323
;--------------------------------------
324
.noplus:
324
.noplus:
325
        cmp     ah,141
325
        cmp     ah,141
326
        jnz     speakermute
326
        jnz     speakermute
327
        call    _mouse_delay
327
        call    _mouse_delay
328
;--------------------------------------
328
;--------------------------------------
329
speakermute:
329
speakermute:
330
        cmp     ah,152  ; SET SPEAKER
330
        cmp     ah,152  ; SET SPEAKER
331
        jne     no_speaker_d
331
        jne     no_speaker_d
332
;--------------------------------------
332
;--------------------------------------
333
speaker_p:
333
speaker_p:
334
        btc     [speaker_mute],0
334
        btc     [speaker_mute],0
335
        call    draw_infotext
335
        call    draw_infotext
336
        jmp     still
336
        jmp     still
337
;--------------------------------------
337
;--------------------------------------
338
no_speaker_d:
338
no_speaker_d:
339
        cmp     ah,153
339
        cmp     ah,153
340
        jne     no_speaker_i
340
        jne     no_speaker_i
341
        jmp     speaker_p
341
        jmp     speaker_p
342
;--------------------------------------
342
;--------------------------------------
343
no_speaker_i:
343
no_speaker_i:
344
        cmp     ah,151
344
        cmp     ah,151
345
        jne     .noapply
345
        jne     .noapply
346
        call    _speaker_mute
346
        call    _speaker_mute
347
        jmp     still
347
        jmp     still
348
;--------------------------------------
348
;--------------------------------------
349
.noapply:
349
.noapply:
350
        cmp     ah,3          ; SET KEYMAP
350
        cmp     ah,3          ; SET KEYMAP
351
        jne     still
351
        jne     still
352
        call    _keyboard
352
        call    _keyboard
353
        jmp     still
353
        jmp     still
354
;-------------------------------------------------------------------------------
354
;-------------------------------------------------------------------------------
355
_keyboard:
355
_keyboard:
356
        cmp     [keyboard],0    ; english
356
        cmp     [keyboard],0    ; english
357
        jnz     nosetkeyle
357
        jnz     nosetkeyle
358
        
358
        
359
        mcall   21,2,1,en_keymap
359
        mcall   21,2,1,en_keymap
360
        
360
        
361
        inc     ecx
361
        inc     ecx
362
        mcall   21,,,en_keymap_shift
362
        mcall   21,,,en_keymap_shift
363
 
363
 
364
        mcall   21,,9,1
364
        mcall   21,,9,1
365
        call    alt_gen
365
        call    alt_gen
366
;--------------------------------------
366
;--------------------------------------
367
nosetkeyle:
367
nosetkeyle:
368
        cmp     [keyboard],1    ; finnish
368
        cmp     [keyboard],1    ; finnish
369
        jnz     nosetkeylfi
369
        jnz     nosetkeylfi
370
 
370
 
371
        mcall   21,2,1,fi_keymap
371
        mcall   21,2,1,fi_keymap
372
        
372
        
373
        inc     ecx
373
        inc     ecx
374
        mcall   21,,,fi_keymap_shift
374
        mcall   21,,,fi_keymap_shift
375
 
375
 
376
        mcall   21,,9,2
376
        mcall   21,,9,2
377
        call    alt_gen
377
        call    alt_gen
378
;--------------------------------------
378
;--------------------------------------
379
nosetkeylfi:
379
nosetkeylfi:
380
        cmp  [keyboard],2       ; german
380
        cmp  [keyboard],2       ; german
381
        jnz  nosetkeylge
381
        jnz  nosetkeylge
382
 
382
 
383
        mcall   21,2,1,ge_keymap
383
        mcall   21,2,1,ge_keymap
384
        
384
        
385
        inc     ecx
385
        inc     ecx
386
        mcall   21,,,ge_keymap_shift
386
        mcall   21,,,ge_keymap_shift
387
 
387
 
388
        mcall   21,,9,3
388
        mcall   21,,9,3
389
        call    alt_gen
389
        call    alt_gen
390
;--------------------------------------
390
;--------------------------------------
391
nosetkeylge:
391
nosetkeylge:
392
        cmp     [keyboard],3    ; russian
392
        cmp     [keyboard],3    ; russian
393
        jnz     nosetkeylru
393
        jnz     nosetkeylru
394
    
394
    
395
        mcall   21,2,1,ru_keymap
395
        mcall   21,2,1,ru_keymap
396
        
396
        
397
        inc     ecx
397
        inc     ecx
398
        mcall   21,,,ru_keymap_shift
398
        mcall   21,,,ru_keymap_shift
399
 
399
 
400
        mcall   21,,9,4
400
        mcall   21,,9,4
401
        call    alt_gen
401
        call    alt_gen
402
;--------------------------------------
402
;--------------------------------------
403
nosetkeylru:
403
nosetkeylru:
404
        cmp     [keyboard],4    ;french
404
        cmp     [keyboard],4    ;french
405
        jnz     nosetkeylfr
405
        jnz     nosetkeylfr
406
 
406
 
407
        mcall   21,2,1,fr_keymap
407
        mcall   21,2,1,fr_keymap
408
        
408
        
409
        inc     ecx
409
        inc     ecx
410
        mcall   21,,,fr_keymap_shift
410
        mcall   21,,,fr_keymap_shift
411
 
411
 
412
        inc  ecx
412
        inc  ecx
413
        mcall   21,,,fr_keymap_alt_gr
413
        mcall   21,,,fr_keymap_alt_gr
414
 
414
 
415
        mcall   21,,9,5
415
        mcall   21,,9,5
416
;--------------------------------------
416
;--------------------------------------
417
nosetkeylfr:
417
nosetkeylfr:
418
        cmp     [keyboard],5    ; estonian
418
        cmp     [keyboard],5    ; estonian
419
        jnz     nosetkeylet
419
        jnz     nosetkeylet
420
 
420
 
421
        mcall   21,2,1,et_keymap
421
        mcall   21,2,1,et_keymap
422
        
422
        
423
        inc     ecx
423
        inc     ecx
424
        mcall   21,,,et_keymap_shift
424
        mcall   21,,,et_keymap_shift
425
 
425
 
426
        mcall   21,,9,6
426
        mcall   21,,9,6
427
        call    alt_gen
427
        call    alt_gen
428
;--------------------------------------
428
;--------------------------------------
429
nosetkeylet:
429
nosetkeylet:
430
        cmp     [keyboard],6    ;belgian
430
        cmp     [keyboard],6    ;belgian
431
        jnz     nosetkeylit
431
        jnz     nosetkeylit
432
 
432
 
433
        mcall   21,2,1,be_keymap
433
        mcall   21,2,1,be_keymap
434
        
434
        
435
        inc     ecx
435
        inc     ecx
436
        mcall   21,,,be_keymap_shift
436
        mcall   21,,,be_keymap_shift
437
 
437
 
438
        inc  ecx
438
        inc  ecx
439
        mcall   21,,,be_keymap_alt_gr
439
        mcall   21,,,be_keymap_alt_gr
440
 
440
 
441
        mcall   21,,9,7
441
        mcall   21,,9,7
442
;--------------------------------------
442
;--------------------------------------
443
nosetkeylit:
443
nosetkeylit:
444
        cmp     [keyboard],7    ;italian
444
        cmp     [keyboard],7    ;italian
445
        jnz     nosetkeylbe
445
        jnz     nosetkeylbe
446
        
446
        
447
        mcall   21,2,1,it_keymap
447
        mcall   21,2,1,it_keymap
448
        
448
        
449
        inc     ecx
449
        inc     ecx
450
        mcall   21,,,it_keymap_shift
450
        mcall   21,,,it_keymap_shift
451
        
451
        
452
        inc     ecx
452
        inc     ecx
453
        mcall   21,,,it_keymap_alt_gr
453
        mcall   21,,,it_keymap_alt_gr
454
        
454
        
455
        mcall   21,,9,8
455
        mcall   21,,9,8
456
;--------------------------------------
456
;--------------------------------------
457
 
457
 
458
nosetkeylbe:
458
nosetkeylbe:
459
        ret
459
        ret
460
;-------------------------------------------------------------------------------
460
;-------------------------------------------------------------------------------
461
alt_gen:
461
alt_gen:
462
        mcall   21,,3,alt_general
462
        mcall   21,,3,alt_general
463
        ret
463
        ret
464
;-------------------------------------------------------------------------------
464
;-------------------------------------------------------------------------------
465
draw_buttons:
465
draw_buttons:
466
        pusha
466
        pusha
467
        shl  ecx,16
467
        shl  ecx,16
468
        add  ecx,12
468
        add  ecx,12
469
        mcall   8,<(350-57),(46+BBB)>
469
        mcall   8,<(350-57),(46+BBB)>
470
 
470
 
471
        inc     edx
471
        inc     edx
472
        mcall   ,<(350-85),9>
472
        mcall   ,<(350-85),9>
473
 
473
 
474
        inc     edx
474
        inc     edx
475
        mcall   ,<(350-73),9>
475
        mcall   ,<(350-73),9>
476
 
476
 
477
        popa
477
        popa
478
        ret
478
        ret
479
;-------------------------------------------------------------------------------
479
;-------------------------------------------------------------------------------
480
; ********************************************
480
; ********************************************
481
; ******* WINDOW DEFINITIONS AND DRAW  *******
481
; ******* WINDOW DEFINITIONS AND DRAW  *******
482
; ********************************************
482
; ********************************************
483
draw_window:
483
draw_window:
484
        pusha
484
        pusha
485
        mcall   12,1
485
        mcall   12,1
486
 
486
 
487
        xor     eax,eax       ; DRAW WINDOW
487
        xor     eax,eax       ; DRAW WINDOW
488
        xor     esi,esi
488
        xor     esi,esi
489
        mcall   ,<40,(355+BBB)>,<40,(12*16)>,0xB4111199,,title
489
        mcall   ,<40,(355+BBB)>,<40,(12*16)>,0xB4111199,,title
490
        
490
        
491
        mcall   9,procinfo,-1
491
        mcall   9,procinfo,-1
492
        
492
        
493
        mov     eax,[ebx+70] ;status of window
493
        mov     eax,[ebx+70] ;status of window
494
        test    eax,100b
494
        test    eax,100b
495
        jne     .end
495
        jne     .end
496
 
496
 
497
        mcall   8,<(350-85),100>,<(5+16*8),12>,100,0x005588dd   ; APPLY ALL
497
        mcall   8,<(350-85),100>,<(5+16*8),12>,100,0x005588dd   ; APPLY ALL
498
 
498
 
499
        add     ecx,16*65536          ; SAVE ALL
499
        add     ecx,16*65536          ; SAVE ALL
500
        dec     edx
500
        dec     edx
501
        mcall
501
        mcall
502
 
502
 
503
        mov     esi,0x5580c0
503
        mov     esi,0x5580c0
504
 
504
 
505
        mov     edx,41
505
        mov     edx,41
506
        mov     ecx,5+0*8
506
        mov     ecx,5+0*8
507
        call    draw_buttons
507
        call    draw_buttons
508
 
508
 
509
        mov     edx,3
509
        mov     edx,3
510
        mov     ecx,5+2*8
510
        mov     ecx,5+2*8
511
        call    draw_buttons
511
        call    draw_buttons
512
 
512
 
513
        mov     edx,91
513
        mov     edx,91
514
        mov     ecx,5+4*8
514
        mov     ecx,5+4*8
515
        call    draw_buttons
515
        call    draw_buttons
516
 
516
 
517
        mov     edx,101
517
        mov     edx,101
518
        mov     ecx,5+6*8
518
        mov     ecx,5+6*8
519
        call    draw_buttons
519
        call    draw_buttons
520
 
520
 
521
        mov     edx,131
521
        mov     edx,131
522
        mov     ecx,5+8*8
522
        mov     ecx,5+8*8
523
        call    draw_buttons
523
        call    draw_buttons
524
 
524
 
525
        mov     edx,141
525
        mov     edx,141
526
        mov     ecx,5+10*8
526
        mov     ecx,5+10*8
527
        call    draw_buttons
527
        call    draw_buttons
528
        
528
        
529
        mov     edx,151
529
        mov     edx,151
530
        mov     ecx,5+12*8
530
        mov     ecx,5+12*8
531
        call    draw_buttons
531
        call    draw_buttons
532
 
532
 
533
        call    draw_infotext
533
        call    draw_infotext
534
.end:
534
.end:
535
        mcall   12,2
535
        mcall   12,2
536
        popa
536
        popa
537
        ret
537
        ret
538
;-------------------------------------------------------------------------------
538
;-------------------------------------------------------------------------------
539
draw_infotext:
539
draw_infotext:
540
        pusha
540
        pusha
541
        mov     eax,[keyboard]       ; KEYBOARD
541
        mov     eax,[keyboard]       ; KEYBOARD
542
        test    eax,eax
542
        test    eax,eax
543
        jnz     noen
543
        jnz     noen
544
        mov     [text00+LLL*1+28],dword 'ENGL'
544
        mov     [text00+LLL*1+28],dword 'ENGL'
545
        mov     [text00+LLL*1+32],dword 'ISH '
545
        mov     [text00+LLL*1+32],dword 'ISH '
546
;--------------------------------------
546
;--------------------------------------
547
noen:
547
noen:
548
        cmp     eax,1
548
        cmp     eax,1
549
        jnz     nofi
549
        jnz     nofi
550
        mov     [text00+LLL*1+28],dword 'FINN'
550
        mov     [text00+LLL*1+28],dword 'FINN'
551
        mov     [text00+LLL*1+32],dword 'ISH '
551
        mov     [text00+LLL*1+32],dword 'ISH '
552
;--------------------------------------
552
;--------------------------------------
553
nofi:
553
nofi:
554
        cmp     eax,2
554
        cmp     eax,2
555
        jnz     noge
555
        jnz     noge
556
        mov     [text00+LLL*1+28],dword 'GERM'
556
        mov     [text00+LLL*1+28],dword 'GERM'
557
        mov     [text00+LLL*1+32],dword 'AN  '
557
        mov     [text00+LLL*1+32],dword 'AN  '
558
;--------------------------------------
558
;--------------------------------------
559
noge:
559
noge:
560
        cmp     eax,3
560
        cmp     eax,3
561
        jnz     nogr
561
        jnz     nogr
562
        mov     [text00+LLL*1+28],dword 'RUSS'
562
        mov     [text00+LLL*1+28],dword 'RUSS'
563
        mov     [text00+LLL*1+32],dword 'IAN '
563
        mov     [text00+LLL*1+32],dword 'IAN '
564
;--------------------------------------
564
;--------------------------------------
565
nogr:
565
nogr:
566
        cmp     eax,4
566
        cmp     eax,4
567
        jnz     nofr
567
        jnz     nofr
568
        mov     [text00+LLL*1+28],dword 'FREN'
568
        mov     [text00+LLL*1+28],dword 'FREN'
569
        mov     [text00+LLL*1+32],dword 'CH  '
569
        mov     [text00+LLL*1+32],dword 'CH  '
570
;--------------------------------------
570
;--------------------------------------
571
nofr:
571
nofr:
572
        cmp     eax,5
572
        cmp     eax,5
573
        jnz     noet
573
        jnz     noet
574
        mov     [text00+LLL*1+28],dword 'ESTO'
574
        mov     [text00+LLL*1+28],dword 'EEST'
575
        mov     [text00+LLL*1+32],dword 'NIAN'
575
        mov     [text00+LLL*1+32],dword 'I   '
576
;--------------------------------------
576
;--------------------------------------
577
noet:
577
noet:
578
        cmp     eax,6
578
        cmp     eax,6
579
        jnz     nobe
579
        jnz     nobe
580
        mov     [text00+LLL*1+28],dword 'BELG'
580
        mov     [text00+LLL*1+28],dword 'BELG'
581
        mov     [text00+LLL*1+32],dword 'IAN '
581
        mov     [text00+LLL*1+32],dword 'IAN '
582
;--------------------------------------
582
;--------------------------------------
583
nobe:
583
nobe:
584
        cmp     eax,7
584
        cmp     eax,7
585
        jnz     noit
585
        jnz     noit
586
        mov     [text00+LLL*1+28],dword 'ITAL'
586
        mov     [text00+LLL*1+28],dword 'ITAL'
587
        mov     [text00+LLL*1+32],dword 'IAN'
587
        mov     [text00+LLL*1+32],dword 'IAN'
588
;--------------------------------------
588
;--------------------------------------
589
noit:
589
noit:
590
        mov     eax,[syslang]             ; SYSTEM LANGUAGE
590
        mov     eax,[syslang]             ; SYSTEM LANGUAGE
591
        dec     eax
591
        dec     eax
592
        test    eax,eax
592
        test    eax,eax
593
        jnz     noen5
593
        jnz     noen5
594
        mov     [text00+LLL*0+28],dword 'ENGL'
594
        mov     [text00+LLL*0+28],dword 'ENGL'
595
        mov     [text00+LLL*0+32],dword 'ISH '
595
        mov     [text00+LLL*0+32],dword 'ISH '
596
;--------------------------------------
596
;--------------------------------------
597
noen5:
597
noen5:
598
        cmp     eax,1
598
        cmp     eax,1
599
        jnz     nofi5
599
        jnz     nofi5
600
        mov     [text00+LLL*0+28],dword 'FINN'
600
        mov     [text00+LLL*0+28],dword 'FINN'
601
        mov     [text00+LLL*0+32],dword 'ISH '
601
        mov     [text00+LLL*0+32],dword 'ISH '
602
;--------------------------------------
602
;--------------------------------------
603
nofi5:
603
nofi5:
604
        cmp     eax,2
604
        cmp     eax,2
605
        jnz     noge5
605
        jnz     noge5
606
        mov     [text00+LLL*0+28],dword 'GERM'
606
        mov     [text00+LLL*0+28],dword 'GERM'
607
        mov     [text00+LLL*0+32],dword 'AN  '
607
        mov     [text00+LLL*0+32],dword 'AN  '
608
;--------------------------------------
608
;--------------------------------------
609
noge5:
609
noge5:
610
        cmp     eax,3
610
        cmp     eax,3
611
        jnz     nogr5
611
        jnz     nogr5
612
        mov     [text00+LLL*0+28],dword 'RUSS'
612
        mov     [text00+LLL*0+28],dword 'RUSS'
613
        mov     [text00+LLL*0+32],dword 'IAN '
613
        mov     [text00+LLL*0+32],dword 'IAN '
614
;--------------------------------------
614
;--------------------------------------
615
nogr5:
615
nogr5:
616
        cmp     eax,4
616
        cmp     eax,4
617
        jne     nofr5
617
        jne     nofr5
618
        mov     [text00+LLL*0+28],dword 'FREN'
618
        mov     [text00+LLL*0+28],dword 'FREN'
619
        mov     [text00+LLL*0+32],dword 'CH  '
619
        mov     [text00+LLL*0+32],dword 'CH  '
620
;--------------------------------------
620
;--------------------------------------
621
nofr5:
621
nofr5:
622
        cmp     eax,5
622
        cmp     eax,5
623
        jne     noet5
623
        jne     noet5
624
        mov     [text00+LLL*0+28],dword 'ESTO'
624
        mov     [text00+LLL*0+28],dword 'EEST'
625
        mov     [text00+LLL*0+32],dword 'NIAN'
625
        mov     [text00+LLL*0+32],dword 'I   '
626
;--------------------------------------
626
;--------------------------------------
627
noet5:
627
noet5:
628
        mov     eax,[lba_read]
628
        mov     eax,[lba_read]
629
        call    onoff                           ; LBA READ
629
        call    onoff                           ; LBA READ
630
        mov     [text00+LLL*2+28],ebx
630
        mov     [text00+LLL*2+28],ebx
631
 
631
 
632
        mov     eax,[pci_acc]
632
        mov     eax,[pci_acc]
633
        call    onoff                           ; PCI ACCESS
633
        call    onoff                           ; PCI ACCESS
634
        mov     [text00+LLL*3+28],ebx
634
        mov     [text00+LLL*3+28],ebx
635
        
635
        
636
        mov     eax,[speaker_mute]
636
        mov     eax,[speaker_mute]
637
        call    onoff                           ; SPEAKER
637
        call    onoff                           ; SPEAKER
638
        mov     [text00+LLL*6+28],ebx
638
        mov     [text00+LLL*6+28],ebx
639
 
639
 
640
        mov     eax,[mouse_speed]               ; MOUSE SPEED
640
        mov     eax,[mouse_speed]               ; MOUSE SPEED
641
        add     al,48
641
        add     al,48
642
        mov     [text00+LLL*4+28],al
642
        mov     [text00+LLL*4+28],al
643
 
643
 
644
        mov     eax,[mouse_delay]
644
        mov     eax,[mouse_delay]
645
        mov     esi,text00+LLL*5+32
645
        mov     esi,text00+LLL*5+32
646
        call    hexconvert                      ; MOUSE DELAY
646
        call    hexconvert                      ; MOUSE DELAY
647
        call    text_out
647
        call    text_out
648
        
648
        
649
        popa
649
        popa
650
        ret
650
        ret
651
;-------------------------------------------------------------------------------
651
;-------------------------------------------------------------------------------
652
text_out:
652
text_out:
653
        mcall   13,<165,85>,<0,(14*8)>,0x80111199       ;0x80111199-19
653
        mcall   13,<165,85>,<0,(14*8)>,0x80111199       ;0x80111199-19
654
 
654
 
655
        mov     edx,text00
655
        mov     edx,text00
656
        mov     ebx,3*65536+7
656
        mov     ebx,3*65536+7
657
        mov     eax,4
657
        mov     eax,4
658
        mov     ecx,0xffffff
658
        mov     ecx,0xffffff
659
        mov     esi,LLL
659
        mov     esi,LLL
660
        mov     ebp,text1_strings
660
        mov     ebp,text1_strings
661
;--------------------------------------
661
;--------------------------------------
662
newline:
662
newline:
663
        mcall
663
        mcall
664
        add     ebx,8+8
664
        add     ebx,8+8
665
        add     edx,esi
665
        add     edx,esi
666
        dec     ebp
666
        dec     ebp
667
        jnz     newline
667
        jnz     newline
668
 
668
 
669
        mov     ebp,text2_strings
669
        mov     ebp,text2_strings
670
        add     ebx,8+8
670
        add     ebx,8+8
671
;--------------------------------------
671
;--------------------------------------
672
@@:
672
@@:
673
        mcall
673
        mcall
674
        add     ebx,8+8
674
        add     ebx,8+8
675
        add     edx,esi
675
        add     edx,esi
676
        dec     ebp
676
        dec     ebp
677
        jnz     @b
677
        jnz     @b
678
        ret
678
        ret
679
;-------------------------------------------------------------------------------
679
;-------------------------------------------------------------------------------
680
hexconvert:          ;converting dec to hex in ascii
680
hexconvert:          ;converting dec to hex in ascii
681
        xor     ebx,ebx
681
        xor     ebx,ebx
682
        mov     bl,al
682
        mov     bl,al
683
        and     bl,15
683
        and     bl,15
684
        add     ebx,hex
684
        add     ebx,hex
685
        mov     cl,[ebx]
685
        mov     cl,[ebx]
686
        mov     [esi],cl
686
        mov     [esi],cl
687
        shr     eax,4
687
        shr     eax,4
688
        xor     ebx,ebx
688
        xor     ebx,ebx
689
        mov     bl,al
689
        mov     bl,al
690
        and     bl,15
690
        and     bl,15
691
        add     ebx,hex
691
        add     ebx,hex
692
        mov     cl,[ebx]
692
        mov     cl,[ebx]
693
        dec     esi
693
        dec     esi
694
        mov     [esi],cl
694
        mov     [esi],cl
695
        shr     eax,4
695
        shr     eax,4
696
        xor     ebx,ebx
696
        xor     ebx,ebx
697
        mov     bl,al
697
        mov     bl,al
698
        and     bl,15
698
        and     bl,15
699
        add     ebx,hex
699
        add     ebx,hex
700
        mov     cl,[ebx]
700
        mov     cl,[ebx]
701
        dec     esi
701
        dec     esi
702
        mov     [esi],cl
702
        mov     [esi],cl
703
        ret
703
        ret
704
;-------------------------------------------------------------------------------
704
;-------------------------------------------------------------------------------
705
onoff:
705
onoff:
706
        cmp     [syslang],4
706
        cmp     [syslang],4
707
        jne     norus1
707
        jne     norus1
708
        mov     ebx,'„€  '
708
        mov     ebx,'„€  '
709
        cmp     eax,1
709
        cmp     eax,1
710
        je      exitsub
710
        je      exitsub
711
        mov     ebx,'…’ '
711
        mov     ebx,'…’ '
712
        ret
712
        ret
713
;--------------------------------------
-
 
714
norus1:
713
norus1:
-
 
714
        cmp     [syslang],6
-
 
715
        jne     noet1
-
 
716
        mov     ebx,'SEES'
-
 
717
        cmp     eax,1
-
 
718
        je      exitsub
-
 
719
        mov     ebx,'VÄL.'
-
 
720
        ret
-
 
721
;--------------------------------------
-
 
722
noet1:
715
        mov     ebx,'ON  '
723
        mov     ebx,'ON  '
716
        cmp     eax,1
724
        cmp     eax,1
717
        je      exitsub
725
        je      exitsub
718
        mov     ebx,'OFF '
726
        mov     ebx,'OFF '
719
;--------------------------------------
727
;--------------------------------------
720
exitsub:
728
exitsub:
721
        ret
729
        ret
722
;-------------------------------------------------------------------------------
730
;-------------------------------------------------------------------------------
723
_lba_read:
731
_lba_read:
724
        mcall   21,11,[lba_read]
732
        mcall   21,11,[lba_read]
725
        ret
733
        ret
726
;-------------------------------------------------------------------------------
734
;-------------------------------------------------------------------------------
727
_pci_acc:
735
_pci_acc:
728
        mcall   21,12,[pci_acc]
736
        mcall   21,12,[pci_acc]
729
        ret
737
        ret
730
;-------------------------------------------------------------------------------
738
;-------------------------------------------------------------------------------
731
_syslang:
739
_syslang:
732
        mcall   21,5,[syslang]
740
        mcall   21,5,[syslang]
733
        ret
741
        ret
734
;-------------------------------------------------------------------------------
742
;-------------------------------------------------------------------------------
735
_mouse_speed:
743
_mouse_speed:
736
        mcall   18,19,1,[mouse_speed]
744
        mcall   18,19,1,[mouse_speed]
737
        ret
745
        ret
738
;-------------------------------------------------------------------------------
746
;-------------------------------------------------------------------------------
739
_mouse_delay:
747
_mouse_delay:
740
        mcall   18,19,3,[mouse_delay]
748
        mcall   18,19,3,[mouse_delay]
741
        ret
749
        ret
742
;-------------------------------------------------------------------------------
750
;-------------------------------------------------------------------------------
743
_speaker_mute:
751
_speaker_mute:
744
        mcall   18,8,1
752
        mcall   18,8,1
745
        cmp     [speaker_mute],eax
753
        cmp     [speaker_mute],eax
746
        je      @f
754
        je      @f
747
        inc     ecx
755
        inc     ecx
748
        mcall   18
756
        mcall   18
749
;-------------------------------------- 
757
;-------------------------------------- 
750
@@:
758
@@:
751
        ret
759
        ret
752
;-------------------------------------------------------------------------------
760
;-------------------------------------------------------------------------------
753
loadtxt:
761
loadtxt:
754
        mov     edi,text00
762
        mov     edi,text00
755
        mov     ecx,LLL*(text1_strings + text2_strings)/4+1
763
        mov     ecx,LLL*(text1_strings + text2_strings)/4+1
756
        cmp     [syslang],4
764
        cmp     [syslang],4
757
        jne     norus
765
        jne     loadet
758
 
766
 
759
        mov     esi,textrus
767
        mov     esi,textrus
760
        jmp     sload
768
        jmp     sload		
-
 
769
loadet:
-
 
770
        mov     edi,text00
-
 
771
        mov     ecx,LLL*(text1_strings + text2_strings)/4+1
-
 
772
        cmp     [syslang],6
-
 
773
        jne     norus
-
 
774
		mov     esi,textet
-
 
775
        jmp     sload
761
;--------------------------------------
776
;--------------------------------------
762
norus:
777
norus:
763
        mov     esi,texteng
778
        mov     esi,texteng
764
;--------------------------------------
779
;--------------------------------------
765
sload:
780
sload:
766
        rep     movsd
781
        rep     movsd
767
        ret
782
        ret
768
;-------------------------------------------------------------------------------
783
;-------------------------------------------------------------------------------
769
cleantxt:
784
cleantxt:
770
        xor     eax,eax
785
        xor     eax,eax
771
        mov     ecx,LLL*(text1_strings + text2_strings)/4
786
        mov     ecx,LLL*(text1_strings + text2_strings)/4
772
        cld
787
        cld
773
        mov     edi,text00
788
        mov     edi,text00
774
        rep     stosd
789
        rep     stosd
775
        mov     [text00+1711],byte 'x'
790
        mov     [text00+1711],byte 'x'
776
        ret
791
        ret
777
;-------------------------------------------------------------------------------
792
;-------------------------------------------------------------------------------
778
; DATA AREA
793
; DATA AREA
779
count:          db 0x0
794
count:          db 0x0
780
blinkpar:       dd 0x0
795
blinkpar:       dd 0x0
781
time:           dw 0x0
796
time:           dw 0x0
782
date:           dd 0x0
797
date:           dd 0x0
783
;-------------------------------------------------------------------------------
798
;-------------------------------------------------------------------------------
784
textrus:
799
textrus:
785
        db 'Ÿ§ëª á¨áâ¥¬ë              : ENGLISH         - +   à¨¬¥­¨âì'
800
        db 'Ÿ§ëª á¨áâ¥¬ë              : ENGLISH         - +   à¨¬¥­¨âì'
786
        db ' áª« ¤ª  ª« ¢¨ âãàë      : ENGLISH         - +   à¨¬¥­¨âì'
801
        db ' áª« ¤ª  ª« ¢¨ âãàë      : ENGLISH         - +   à¨¬¥­¨âì'
787
        db '‚ª«îç¨âì LBA              : OFF             - +   à¨¬¥­¨âì'
802
        db '‚ª«îç¨âì LBA              : OFF             - +   à¨¬¥­¨âì'
788
        db '„®áâ㯠ª 設¥ PCI         : OFF             - +   à¨¬¥­¨âì'
803
        db '„®áâ㯠ª 設¥ PCI         : OFF             - +   à¨¬¥­¨âì'
789
        db '‘ª®à®áâì ªãàá®à  ¬ëè¨     : 1               - +   à¨¬¥­¨âì'
804
        db '‘ª®à®áâì ªãàá®à  ¬ëè¨     : 1               - +   à¨¬¥­¨âì'
790
        db '‡ ¤¥à¦ª  ã᪮७¨ï ¬ëè¨   : 0x00a           - +   à¨¬¥­¨âì'
805
        db '‡ ¤¥à¦ª  ã᪮७¨ï ¬ëè¨   : 0x00a           - +   à¨¬¥­¨âì'
791
        db '‚몫îç¨âì SPEAKER         : OFF             - +   à¨¬¥­¨âì'
806
        db '‚몫îç¨âì SPEAKER         : OFF             - +   à¨¬¥­¨âì'
792
        
807
        
793
        db '‚ˆŒ€ˆ…:                                    à¨¬¥­¨âì ¢á¥ '
808
        db '‚ˆŒ€ˆ…:                                    à¨¬¥­¨âì ¢á¥ '
794
        db '… ‡€“„œ’… ‘Ž•€ˆ’œ €‘’Ž‰Šˆ              ‘®åà ­¨âì ¢á¥ '
809
        db '… ‡€“„œ’… ‘Ž•€ˆ’œ €‘’Ž‰Šˆ              ‘®åà ­¨âì ¢á¥ '
795
;-------------------------------------------------------------------------------
810
;-------------------------------------------------------------------------------
796
texteng:
811
texteng:
797
        db 'System language           : ENGLISH         - +     Apply  '
812
        db 'System language           : ENGLISH         - +     Apply  '
798
        db 'Keyboard layout           : ENGLISH         - +     Apply  '
813
        db 'Keyboard layout           : ENGLISH         - +     Apply  '
799
        db 'LBA read enabled          : OFF             - +     Apply  '
814
        db 'LBA read enabled          : OFF             - +     Apply  '
800
        db 'PCI access for appl.      : OFF             - +     Apply  '
815
        db 'PCI access for appl.      : OFF             - +     Apply  '
801
        db 'Mouse pointer speed       : 1               - +     Apply  '
816
        db 'Mouse pointer speed       : 1               - +     Apply  '
802
        db 'Mouse pointer delay       : 0x00a           - +     Apply  '
817
        db 'Mouse pointer delay       : 0x00a           - +     Apply  '
803
        db 'SPEAKER disabled          : OFF             - +     Apply  '
818
        db 'SPEAKER disabled          : OFF             - +     Apply  '
804
text1_strings = 7
819
text1_strings = 7
805
 
820
 
806
        db 'NOTE:                                           Apply all  '
821
        db 'NOTE:                                           Apply all  '
807
        db 'SAVE YOUR SETTINGS BEFORE QUITING KOLIBRI       Save all   '
822
        db 'SAVE YOUR SETTINGS BEFORE QUITING KOLIBRI       Save all   '
-
 
823
textet:
-
 
824
        db 'Süsteemi keel             : ENGLISH         - +    Kinnita '
-
 
825
        db 'Klaviatuuri paigutus      : ENGLISH         - +    Kinnita '
-
 
826
        db 'LBA lugemine lubatud      : VÄL.            - +    Kinnita '
-
 
827
        db 'PCI juurdepääs programm.  : VÄL.            - +    Kinnita '
-
 
828
        db 'Hiire kursori kiirus      : 1               - +    Kinnita '
-
 
829
        db 'Hiire kursori viide       : 0x00a           - +    Kinnita '
-
 
830
        db 'SPEAKER disabled          : VÄL.            - +    Kinnita '
-
 
831
        db 'MÄRKUS:                                        Kinnita kõik'
-
 
832
        db 'SALVESTA SEADED ENNE KOLIBRIST VÄLJUMIST      Salvesta kõik'
808
text2_strings = 2
833
text2_strings = 3
809
;-------------------------------------------------------------------------------
834
;-------------------------------------------------------------------------------
810
title   db 'System setup',0
835
title   db 'System setup',0
811
 
836
 
812
hex     db '0123456789ABCDEF'
837
hex     db '0123456789ABCDEF'
813
;-------------------------------------------------------------------------------
838
;-------------------------------------------------------------------------------
814
include 'keymaps.inc'
839
include 'keymaps.inc'
815
;-------------------------------------------------------------------------------
840
;-------------------------------------------------------------------------------
816
read_fileinfo:
841
read_fileinfo:
817
        dd 0
842
        dd 0
818
        dd 0
843
        dd 0
819
        dd 0
844
        dd 0
820
        dd 28
845
        dd 28
821
        dd keyboard
846
        dd keyboard
822
        db 0
847
        db 0
823
        dd file_name
848
        dd file_name
824
;-------------------------------------------------------------------------------
849
;-------------------------------------------------------------------------------
825
save_fileinfo:
850
save_fileinfo:
826
        dd 2
851
        dd 2
827
        dd 0
852
        dd 0
828
        dd 0
853
        dd 0
829
        dd 28
854
        dd 28
830
        dd keyboard
855
        dd keyboard
831
file_name:      db '/sys/setup.dat',0
856
file_name:      db '/sys/setup.dat',0
832
;-------------------------------------------------------------------------------
857
;-------------------------------------------------------------------------------
833
keyboard        dd 0x0
858
keyboard        dd 0x0
834
syslang         dd 0x4  ; 4 - rus
859
syslang         dd 0x4  ; 4 - rus
835
lba_read        dd 0x1
860
lba_read        dd 0x1
836
pci_acc         dd 0x1
861
pci_acc         dd 0x1
837
mouse_speed     dd 0x2
862
mouse_speed     dd 0x2
838
mouse_delay     dd 0xa
863
mouse_delay     dd 0xa
839
speaker_mute    dd 0    ; 0 - enable, 1 - disable
864
speaker_mute    dd 0    ; 0 - enable, 1 - disable
840
;-----------------------------------------------------------------------------
865
;-----------------------------------------------------------------------------
841
IM_END:
866
IM_END:
842
;-----------------------------------------------------------------------------
867
;-----------------------------------------------------------------------------
843
align 4
868
align 4
844
text00:
869
text00:
845
        rb LLL*(text1_strings + text2_strings)+4
870
        rb LLL*(text1_strings + text2_strings)+4
846
;-----------------------------------------------------------------------------
871
;-----------------------------------------------------------------------------
847
align 4
872
align 4
848
boot_param:
873
boot_param:
849
procinfo:
874
procinfo:
850
        rb 1024
875
        rb 1024
851
;-----------------------------------------------------------------------------
876
;-----------------------------------------------------------------------------
852
align 4
877
align 4
853
        rb 0x1000
878
        rb 0x1000
854
stack_area:
879
stack_area:
855
;-----------------------------------------------------------------------------
880
;-----------------------------------------------------------------------------
856
I_END:
881
I_END:
857
;-------------------------------------------------------------------------------
882
;-------------------------------------------------------------------------------