Rev 7899 | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
195 | heavyiron | 1 | ; |
2 | ; Kolibri Bus Disconnect |
||
3 | ; Test for bus disconnect |
||
4 | ; |
||
5 | ; Compile with FASM for Menuet |
||
6 | ; |
||
7 | ; |
||
8 | |||
485 | heavyiron | 9 | include '..\..\..\macros.inc' |
3612 | fedesco | 10 | include 'lang.inc' |
195 | heavyiron | 11 | |
12 | memsize = 1000h |
||
13 | org 0 |
||
14 | PARAMS = memsize - 1024 |
||
15 | |||
16 | appname equ 'Kolibri Bus Disconnect' |
||
17 | version equ ' 1.1 ' |
||
3612 | fedesco | 18 | |
195 | heavyiron | 19 | use32 ; включить 32-битный режим ассемблера |
20 | |||
21 | db 'MENUET01' ; 8 byte id |
||
502 | heavyiron | 22 | dd 0x01 ; header version |
195 | heavyiron | 23 | dd START ; start of code |
24 | dd I_END ; size of image |
||
25 | dd memsize ; memory for app |
||
26 | dd memsize - 1024 ; esp |
||
27 | dd PARAMS , 0x0 ; I_Param , I_Icon |
||
28 | |||
29 | |||
30 | |||
31 | ;--------------------------------------------------------------------- |
||
32 | ;--- НАЧАЛО ПРОГРАММЫ ---------------------------------------------- |
||
33 | ;--------------------------------------------------------------------- |
||
34 | |||
35 | START: |
||
36 | cmp [PARAMS], byte 0 |
||
37 | jne check_parameters |
||
38 | |||
39 | no_params: |
||
40 | call find_north_bridg |
||
41 | |||
9885 | Doczom | 42 | test dword[bd_id], -1 ; check zero |
43 | jnz drawwindow |
||
44 | |||
45 | controller_not_found: |
||
46 | push .notify |
||
47 | dec esp |
||
48 | push 0 |
||
49 | push 0 |
||
50 | push .error_message |
||
51 | push 0 |
||
52 | push dword 7 ;SSF_START_APP |
||
53 | |||
54 | mcall 70, esp |
||
55 | add esp, 6*4 + 1 |
||
56 | mcall -1 |
||
57 | .error_message: |
||
58 | db '"KBD\nController not found" -tdE',0 |
||
59 | .notify: |
||
60 | db '/sys/@notify',0 |
||
61 | |||
3612 | fedesco | 62 | drawwindow: |
195 | heavyiron | 63 | mov eax,48 |
64 | mov ebx,3 |
||
65 | mov ecx,sc |
||
66 | mov edx,sizeof.system_colors |
||
485 | heavyiron | 67 | mcall |
195 | heavyiron | 68 | |
3612 | fedesco | 69 | mov eax, 12 |
70 | mov ebx, 1 ; start redraw |
||
71 | mcall |
||
195 | heavyiron | 72 | |
3612 | fedesco | 73 | mov eax, 0 ; window |
74 | mov ebx, 100 shl 16 + 300 |
||
75 | mov ecx, 100 shl 16 + 90 |
||
76 | mov edx, [sc.work] |
||
195 | heavyiron | 77 | or edx, 0x13000000 |
3612 | fedesco | 78 | mov edi, title |
79 | mcall |
||
195 | heavyiron | 80 | |
3612 | fedesco | 81 | mov eax, 4 |
82 | mov ebx, 17 shl 16 + 30 |
||
195 | heavyiron | 83 | mov ecx, [sc.work_text] |
3612 | fedesco | 84 | mov edx, msg_nb |
85 | mov esi, msg_nb.length |
||
86 | mcall |
||
195 | heavyiron | 87 | |
3612 | fedesco | 88 | mov ebx, 105 shl 16 + 30 |
89 | mov edx, [nb_name] |
||
90 | movzx esi, byte[edx] |
||
91 | inc edx |
||
92 | mcall |
||
195 | heavyiron | 93 | |
3612 | fedesco | 94 | mov ebx, 17 shl 16 + 40 |
95 | mov edx, msg_stat |
||
96 | mov esi, msg_stat.length |
||
97 | mcall |
||
195 | heavyiron | 98 | |
3612 | fedesco | 99 | mov ebx, 102 shl 16 + 50 |
100 | mov edx, msg_divs |
||
101 | mov esi, msg_divs.length |
||
102 | mcall |
||
103 | mov ebx, 17 shl 16 + 62 |
||
104 | mov edx, msg_hdd |
||
105 | mov esi, msg_hdd.length |
||
106 | mcall |
||
107 | mov ebx, 17 shl 16 + 72 |
||
108 | mov edx, msg_sgd |
||
109 | mov esi, msg_sgd.length |
||
110 | mcall |
||
195 | heavyiron | 111 | |
3612 | fedesco | 112 | call get_divs |
113 | mov eax, 47 |
||
114 | mov ebx, 0x30000 |
||
115 | mov ecx, [val_hdd] |
||
116 | mov edx, 8 |
||
117 | shl edx, cl |
||
118 | mov ecx, edx |
||
119 | mov edx, 80 shl 16 + 62 |
||
120 | mov esi, [sc.work_text] |
||
121 | mcall |
||
122 | |||
123 | mov ecx, [val_sgd] |
||
124 | mov edx, 8 |
||
125 | shl edx, cl |
||
126 | mov ecx, edx |
||
127 | mov edx, 80 shl 16 + 72 |
||
128 | mcall |
||
129 | |||
130 | |||
131 | call get_bd_stat |
||
132 | mov ecx, [sc.work_text] |
||
133 | mov esi, msg_nf.length |
||
134 | mov ebx, 105 shl 16 + 40 |
||
135 | mov edx, msg_nf |
||
136 | mov al, [bd_stat] |
||
137 | test al, al |
||
138 | jz @f |
||
139 | mov edx, msg_dis |
||
140 | dec al |
||
141 | jz @f |
||
142 | mov edx, msg_en |
||
143 | mov esi, msg_en.length |
||
144 | @@: mov eax, 4 |
||
145 | mcall |
||
146 | |||
147 | ; Создаём кнопку |
||
148 | mov ecx, 27 shl 16 + 20 |
||
149 | mov eax, 8 |
||
150 | mov ebx, 220 shl 16 + 70 |
||
151 | mov esi, [sc.work_button] |
||
152 | mov edx, 2 |
||
153 | mcall |
||
154 | |||
155 | ; И ещё 14 ;) |
||
156 | mov edi, 7 |
||
157 | mov ecx, 60 shl 16 + 10 |
||
158 | mov eax, 8 |
||
159 | mov ebx, 105 shl 16 + 25 |
||
160 | mov edx, 3 |
||
161 | |||
162 | @@: mcall |
||
163 | inc edx |
||
164 | add ebx, 27 shl 16 |
||
165 | dec edi |
||
166 | jnz @b |
||
167 | |||
168 | add ecx, 12 shl 16 |
||
169 | mov ebx, 105 shl 16 + 25 |
||
170 | mov edi, 7 |
||
171 | @@: mcall |
||
172 | inc edx |
||
173 | add ebx, 27 shl 16 |
||
174 | dec edi |
||
175 | jnz @b |
||
176 | |||
177 | end_dr: mov eax, 12 |
||
178 | mov ebx, 2 ; end redraw |
||
179 | mcall |
||
180 | |||
195 | heavyiron | 181 | ; Wait for event ... |
3612 | fedesco | 182 | mov eax, 10 |
183 | mcall |
||
184 | |||
185 | cmp al, 3 |
||
186 | jne not_bt |
||
187 | |||
188 | mov eax, 17 ; get id |
||
189 | mcall |
||
190 | cmp ah, 1 |
||
191 | jne no_exit |
||
192 | mov eax, -1 ; close this program |
||
193 | mcall |
||
195 | heavyiron | 194 | no_exit: |
3612 | fedesco | 195 | cmp ah, 2 |
196 | jne no_ch_bt |
||
197 | mov dl, [bd_stat] |
||
198 | test dl, dl |
||
199 | jz drawwindow |
||
200 | xor eax, eax |
||
201 | dec dl |
||
202 | jnz @f |
||
203 | inc eax |
||
204 | @@: call set_bd_stat |
||
205 | jmp drawwindow |
||
206 | |||
195 | heavyiron | 207 | no_ch_bt: |
3612 | fedesco | 208 | cmp ah, 9 |
209 | jg no_hdd_bt |
||
210 | sub ah, 3 |
||
211 | movzx esi, ah |
||
212 | mov edi, [val_sgd] |
||
213 | call set_divs |
||
214 | jmp drawwindow |
||
195 | heavyiron | 215 | no_hdd_bt: |
3612 | fedesco | 216 | sub ah, 10 |
217 | movzx edi, ah |
||
218 | mov esi, [val_hdd] |
||
219 | call set_divs |
||
220 | jmp drawwindow |
||
195 | heavyiron | 221 | |
3612 | fedesco | 222 | |
223 | not_bt: cmp al, 2 |
||
224 | jne drawwindow |
||
225 | mov eax, 2 ; пока клава не поддерживается - читаем и забываем |
||
226 | mcall |
||
227 | jmp drawwindow |
||
195 | heavyiron | 228 | ;-------------------------------------------------------------------------- |
3612 | fedesco | 229 | bus_num: db 2 ; Номер шины |
230 | devfn: db 255 |
||
231 | bd_id: dd 0 ; Идентификатор устройства |
||
232 | bd_stat: db 0 ; 0 - не найден, 1 - выключен, 2 - включен |
||
195 | heavyiron | 233 | |
3612 | fedesco | 234 | nb_name dd nb_nf |
235 | bd_msk dd msk_i440 |
||
195 | heavyiron | 236 | |
3612 | fedesco | 237 | if lang eq it |
238 | ;nb_nf db 9, 'Non trovato' |
||
239 | nb_nf db 11, 'Non trovato' |
||
240 | else |
||
241 | nb_nf db 9, 'Not found' |
||
242 | end if |
||
243 | msk_i440 db 0 |
||
244 | nb_i440 db 4, 'i440' |
||
245 | msk_nforce db 0x6D, 0x80, 0xE7, 0x06, 0 ; номер регистра, маска, номер регистра, маска, ... , 0 |
||
246 | nb_nforce db 6, 'nForce' |
||
247 | msk_nforce2 db 0x6F, 0x10, 0 |
||
248 | nb_nforce2 db 8, 'nForce 2' |
||
249 | msk_sis730 db 0x6B, 0x01, 0 |
||
250 | nb_sis730 db 7, 'SiS 730' |
||
251 | nb_sis733 db 7, 'SiS 733' |
||
252 | msk_sis735 db 0x6A, 0x03, 0 |
||
253 | nb_sis735 db 7, 'SiS 735' |
||
254 | nb_sis740 db 7, 'SiS 740' |
||
255 | nb_sis741 db 7, 'SiS 741' |
||
256 | nb_sis745 db 7, 'SiS 745' |
||
257 | msk_sis746 db 0x6C, 0x01, 0 |
||
258 | nb_sis746 db 7, 'SiS 746' |
||
259 | nb_sis748 db 7, 'SiS 748' |
||
260 | msk_amd751 db 0x62, 0x06, 0 |
||
261 | nb_amd751 db 7, 'AMD 751' |
||
262 | nb_amd751s db 8, 'AMD 751S' |
||
263 | nb_amd761 db 7, 'AMD 761' |
||
264 | msk_amd762 db 0x62, 0x02, 0x6A, 0x02, 0 |
||
265 | nb_amd762 db 7, 'AMD 762' |
||
266 | msk_viakt133 db 0x52, 0x80, 0x70, 0x08, 0 |
||
267 | nb_viakt133 db 30, 'VIA KT133(A)/KM133/KL133/KN133' |
||
268 | nb_viakx133 db 9, 'VIA KX133' |
||
269 | nb_viakle133 db 10, 'VIA KLE133' |
||
270 | msk_viakt266 db 0x92, 0x80, 0x95, 0x02, 0x70, 0x08, 0 |
||
271 | nb_viakt266 db 18, 'VIA KT266(A)/KT333' |
||
272 | nb_viakm266 db 21, 'VIA KM266/KL266/KM333' |
||
273 | nb_viakn266 db 9, 'VIA KN266' |
||
274 | msk_viakt400 db 0xD2, 0x80, 0xD5, 0x02, 0x70, 0x08, 0 |
||
275 | nb_viakt400 db 18, 'VIA KT400(A)/KT600' |
||
276 | nb_viakm400 db 9, 'VIA KM400' |
||
277 | msk_viakt880 db 0x82, 0x80, 0x85, 0x02, 0 |
||
278 | nb_viakt880 db 9, 'VIA KT880' |
||
195 | heavyiron | 279 | |
280 | |||
3612 | fedesco | 281 | bd_table: dd 0x70061022 ; AMD 751 ---- |
282 | dd nb_amd751 |
||
283 | dd msk_amd751 |
||
284 | |||
285 | dd 0x70041022 ; AMD 751S |
||
286 | dd nb_amd751s |
||
287 | dd msk_amd751 |
||
288 | |||
289 | dd 0x700E1022 ; AMD 761 |
||
290 | dd nb_amd761 |
||
291 | dd msk_amd751 |
||
292 | |||
293 | dd 0x700C1022 ; AMD 762 |
||
294 | dd nb_amd762 |
||
295 | dd msk_amd762 |
||
296 | |||
297 | dd 0x71908086 ; i440 --- |
||
298 | dd nb_i440 |
||
299 | dd msk_i440 |
||
300 | |||
301 | dd 0x01A410DE ; nForce ---- |
||
302 | dd nb_nforce |
||
303 | dd msk_nforce |
||
304 | |||
305 | dd 0x01E010DE ; nForce 2 |
||
306 | dd nb_nforce2 |
||
307 | dd msk_nforce2 |
||
308 | |||
309 | dd 0x07301039 ; SiS 730 ---- |
||
310 | dd nb_sis730 |
||
311 | dd msk_sis730 |
||
312 | |||
313 | dd 0x07331039 ; SiS 733 |
||
314 | dd nb_sis733 |
||
315 | dd msk_sis730 |
||
316 | |||
317 | dd 0x07351039 ; SiS 735 |
||
318 | dd nb_sis735 |
||
319 | dd msk_sis735 |
||
320 | |||
321 | dd 0x07401039 ; SiS 740 |
||
322 | dd nb_sis740 |
||
323 | dd msk_sis735 |
||
324 | |||
325 | dd 0x07411039 ; SiS 741 |
||
326 | dd nb_sis741 |
||
327 | dd msk_sis735 |
||
328 | |||
329 | dd 0x07451039 ; SiS 745 |
||
330 | dd nb_sis745 |
||
331 | dd msk_sis735 |
||
332 | |||
333 | dd 0x07461039 ; SiS 746 |
||
334 | dd nb_sis746 |
||
335 | dd msk_sis746 |
||
336 | |||
337 | dd 0x07481039 ; SiS 748 |
||
338 | dd nb_sis748 |
||
339 | dd msk_sis746 |
||
340 | |||
341 | dd 0x03051106 ; VIA KT133(A)/KM133/KL133/KN133 ---- |
||
342 | dd nb_viakt133 |
||
343 | dd msk_viakt133 |
||
344 | |||
345 | dd 0x03911106 ; VIA KX133 |
||
346 | dd nb_viakx133 |
||
347 | dd msk_viakt133 |
||
348 | |||
349 | dd 0x06911106 ; VIA KLE133 |
||
350 | dd nb_viakle133 |
||
351 | dd msk_viakt133 |
||
352 | |||
353 | dd 0x30991106 ; VIA KT266(A)/KT333 |
||
354 | dd nb_viakt266 |
||
355 | dd msk_viakt266 |
||
356 | |||
357 | dd 0x31161106 ; VIA KM266/KL266/KM333 |
||
358 | dd nb_viakm266 |
||
359 | dd msk_viakt266 |
||
360 | |||
361 | dd 0x31561106 ; VIA KN266 |
||
362 | dd nb_viakn266 |
||
363 | dd msk_viakt266 |
||
364 | |||
365 | dd 0x31891106 ; VIA KT400(A)/KT600 |
||
366 | dd nb_viakt400 |
||
367 | dd msk_viakt400 |
||
368 | |||
369 | dd 0x32051106 ; VIA KM400 |
||
370 | dd nb_viakm400 |
||
371 | dd msk_viakt400 |
||
372 | |||
373 | dd 0x22691106 ; VIA KT880 |
||
374 | dd nb_viakt880 |
||
375 | dd msk_viakt880 |
||
195 | heavyiron | 376 | bd_table_end: |
377 | |||
378 | |||
379 | find_north_bridg: |
||
3612 | fedesco | 380 | mov bl, 6 |
381 | xor cl, cl |
||
382 | nbus: mov bh, [bus_num] |
||
383 | ndevfn: mov ch, [devfn] |
||
384 | mov eax, 62 |
||
385 | mcall |
||
386 | cmp eax, 0xffffffff |
||
387 | je bd_next |
||
388 | ;--------- |
||
389 | mov esi, bd_table_end - bd_table - 12 |
||
390 | @@: cmp eax, [bd_table + esi] |
||
391 | je bd_found |
||
392 | test esi, esi |
||
393 | jz bd_next |
||
394 | sub esi, 12 |
||
395 | jmp @b |
||
396 | ;--------- |
||
397 | bd_next:dec byte[devfn] |
||
398 | jns ndevfn |
||
399 | mov byte[devfn], 0 |
||
400 | dec byte[bus_num] |
||
401 | jns nbus |
||
402 | ret |
||
195 | heavyiron | 403 | bd_found: |
3612 | fedesco | 404 | add esi, bd_table + 4 |
405 | mov edi, nb_name |
||
406 | mov ecx, 2 |
||
407 | rep movsd |
||
195 | heavyiron | 408 | |
3612 | fedesco | 409 | mov [bd_id], eax |
410 | ret |
||
195 | heavyiron | 411 | |
412 | ;---------------------- |
||
3612 | fedesco | 413 | ;bd_stat: db 0 ; 0 - не найден, 1 - выключен, 2 - включен |
195 | heavyiron | 414 | get_bd_stat: |
3612 | fedesco | 415 | mov byte[bd_stat], 1 |
416 | cld |
||
417 | mov esi, [bd_msk] |
||
418 | lodsw |
||
419 | test al, al |
||
420 | jnz @f |
||
421 | mov byte[bd_stat], 0 |
||
422 | ret |
||
423 | @@: push eax |
||
424 | mov bh, [bus_num] |
||
425 | mov bl, 4 |
||
426 | mov ch, [devfn] |
||
427 | mov cl, al |
||
428 | mov eax, 62 |
||
429 | mcall |
||
430 | pop edx |
||
431 | and al, dh |
||
432 | jnz @f |
||
433 | lodsw |
||
434 | test al, al |
||
435 | jnz @b |
||
436 | ret |
||
437 | @@: mov byte[bd_stat], 2 |
||
438 | ret |
||
195 | heavyiron | 439 | ;---------------------- |
440 | set_bd_stat: |
||
3612 | fedesco | 441 | cmp dword[bd_id], 0x01E010DE ; специально для nForce2 400 |
442 | je set_stat_nforce2 |
||
443 | |||
444 | mov edi, eax |
||
445 | cld |
||
446 | mov esi, [bd_msk] |
||
195 | heavyiron | 447 | bd_ss_nxt: |
3612 | fedesco | 448 | lodsw |
449 | test al, al |
||
450 | jz bd_ss_end |
||
451 | mov dl, ah ; маска |
||
452 | mov bh, [bus_num] |
||
453 | mov bl, 4 |
||
454 | mov ch, [devfn] |
||
455 | mov cl, al |
||
456 | mov eax, 62 |
||
457 | mcall |
||
458 | mov bl, 8 |
||
459 | test edi, edi |
||
460 | jz @f |
||
461 | or al, dl |
||
462 | mov dl, al |
||
463 | mov eax, 62 |
||
464 | mcall |
||
465 | jmp bd_ss_nxt |
||
466 | @@: not dl |
||
467 | and al, dl |
||
468 | mov dl, al |
||
469 | mov eax, 62 |
||
470 | mcall |
||
471 | jmp bd_ss_nxt |
||
195 | heavyiron | 472 | bd_ss_end: |
3612 | fedesco | 473 | ret |
195 | heavyiron | 474 | ;------- nForce 2 ----------- |
475 | set_stat_nforce2: |
||
476 | ; IN : eax = 0 - disable, !0 - enable |
||
3612 | fedesco | 477 | push eax |
478 | mov bh, [bus_num] |
||
479 | mov bl, 4 |
||
480 | mov ch, [devfn] |
||
481 | mov cl, 0x6f |
||
482 | mov eax, 62 |
||
483 | mcall |
||
484 | and al, 0x1F |
||
485 | mov dl, al |
||
486 | mov bl, 8 |
||
487 | mov eax, 62 |
||
488 | mcall |
||
489 | pop eax |
||
490 | test eax, eax |
||
491 | jz @f |
||
492 | or dl, 0x10 |
||
493 | mov eax, 62 |
||
494 | mcall |
||
495 | ret |
||
496 | @@: and dl, 0xef |
||
497 | mov eax, 62 |
||
498 | mcall |
||
499 | ret |
||
195 | heavyiron | 500 | ;-------------------------------------------------------------------------- |
501 | ; x8 x16 x32 x64 x128 x256 x512 |
||
3612 | fedesco | 502 | div_hdd: db 0x23, 0x27, 0x2B, 0x2F, 0x63, 0x67, 0x6B ; Halt Disconnect Divisor |
503 | div_sgd: db 0x12, 0x52, 0x92, 0xD2, 0x12, 0x52, 0x92 ; Stop Grand Divisor |
||
195 | heavyiron | 504 | ; low word of 0xC001001B MSR |
505 | ; HDD\SGD 8 16 32 64 128 256 512 |
||
506 | ; 8 0x1223 0x5223 0x9223 0xD223 | 0x1223 0x5223 0x9223 |
||
507 | ; 16 0x1227 | |
||
508 | ; 32 0x122B | |
||
509 | ; 64 0x122F | 0x522F |
||
510 | ; 128 0x1263 | |
||
197 | Ghost | 511 | ; 256 0x1267 & bit 18 is clear | & bit 18 is set |
195 | heavyiron | 512 | ; 512 0x126B | |
513 | ; ^^^^ |
||
514 | ; ||||_HDD |
||
515 | ; ||_SGD |
||
516 | set_divs: |
||
517 | ; IN : ESI - hdd (0 = x8, 1 = x16 ..) |
||
518 | ; EDI - sgd (0 = x8, 1 = x16 ..) |
||
3612 | fedesco | 519 | mov eax, 68 |
520 | mov ebx, 3 |
||
521 | mov edx, 0xC001001b |
||
522 | mcall |
||
523 | mov al, [div_hdd + esi] |
||
524 | mov ah, [div_sgd + edi] |
||
525 | and eax, 0xFFFBFFFF |
||
526 | cmp edi, 3 |
||
527 | jle @f |
||
528 | or eax, 0x40000 |
||
529 | @@: mov edi, eax |
||
530 | mov esi, ebx |
||
531 | mov eax, 68 |
||
532 | mov ebx, 4 |
||
533 | mcall |
||
534 | ret |
||
195 | heavyiron | 535 | |
536 | get_divs: |
||
537 | ; OUT : val_hdd - hdd (0 = x8, 1 = x16 ..) |
||
538 | ; val_sgd - sgd ... |
||
3612 | fedesco | 539 | mov eax, 68 |
540 | mov ebx, 3 |
||
541 | mov edx, 0xC001001b |
||
542 | mcall |
||
543 | mov ecx, 7 |
||
544 | @@: cmp [div_hdd + ecx - 1], al |
||
545 | je @f |
||
546 | loop @b |
||
547 | @@: dec ecx |
||
548 | mov [val_hdd], ecx |
||
549 | mov ecx, 4 |
||
550 | @@: cmp [div_sgd + ecx - 1], ah |
||
551 | je @f |
||
552 | loop @b |
||
553 | @@: dec ecx |
||
554 | test eax, 0x40000 |
||
555 | jz @f |
||
556 | add ecx, 4 |
||
557 | @@: mov [val_sgd], ecx |
||
558 | ret |
||
195 | heavyiron | 559 | |
560 | ;****************************************************************************** |
||
561 | |||
562 | check_parameters: |
||
563 | cmp [PARAMS], dword "BOOT" ; received BOOT parameter -> goto handler |
||
564 | je boot_bd_enable |
||
565 | jmp no_params |
||
566 | |||
567 | ;****************************************************************************** |
||
568 | |||
569 | boot_bd_enable: |
||
570 | |||
571 | call find_north_bridg |
||
9885 | Doczom | 572 | test dword[bd_id], -1 ; check zero |
573 | jz controller_not_found |
||
574 | |||
195 | heavyiron | 575 | call set_bd_stat |
576 | mcall -1 |
||
577 | |||
578 | ;****************************************************************************** |
||
579 | |||
580 | |||
581 | ;-------------------------------------------------------------------------- |
||
582 | |||
3612 | fedesco | 583 | title db appname,version,0 |
195 | heavyiron | 584 | |
3612 | fedesco | 585 | msg_divs db ' x8 x16 x32 x64 x128 x256 x512' |
586 | .length = $ - msg_divs |
||
587 | msg_hdd db 'Hatl Disc.' |
||
588 | .length = $ - msg_hdd |
||
589 | msg_sgd db 'Stop Grand' |
||
590 | .length = $ - msg_sgd |
||
591 | msg_nb db 'North bridge :' |
||
592 | .length = $ - msg_nb |
||
593 | msg_stat db 'Status :' |
||
594 | .length = $ - msg_stat |
||
195 | heavyiron | 595 | |
3612 | fedesco | 596 | if lang eq it |
597 | msg_en db 'Abilitato ' |
||
598 | .length = $ - msg_en |
||
599 | msg_dis db 'Disabilitato' |
||
600 | .length = $ - msg_dis |
||
601 | msg_nf db 'Non trovato ' |
||
602 | .length = $ - msg_nf |
||
603 | else |
||
604 | msg_en db 'Enabled ' |
||
605 | .length = $ - msg_en |
||
606 | msg_dis db 'Disabled ' |
||
607 | .length = $ - msg_dis |
||
608 | msg_nf db 'Not found' |
||
609 | .length = $ - msg_nf |
||
610 | end if |
||
611 | |||
195 | heavyiron | 612 | I_END: |
613 | |||
3612 | fedesco | 614 | sc system_colors |
615 | val_hdd dd ? |
||
616 | val_sgd dd ? |
||
617 |