Rev 1028 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1028 | Rev 9478 | ||
---|---|---|---|
Line 1... | Line -... | ||
1 | use32 |
- | |
2 | 1 | use32 |
|
3 | db 'MENUET01' |
- | |
4 | dd 1 |
2 | db 'MENUET01' |
5 | dd start |
- | |
6 | dd i_end |
- | |
7 | dd mem |
3 | dd 1, start, i_end, mem, mem, 0, selfpath |
8 | dd mem |
- | |
9 | dd 0 |
- | |
10 | dd 0 |
- | |
11 | - | ||
Line 12... | Line 4... | ||
12 | start: |
4 | |
- | 5 | start: |
|
- | 6 | ;------ strcat(selfpath, '.drv') |
|
- | 7 | mov eax, selfpath |
|
- | 8 | @@: |
|
- | 9 | inc eax |
|
- | 10 | cmp [eax], byte 0 |
|
- | 11 | jne @b |
|
- | 12 | mov [eax], dword '.drv' |
|
- | 13 | ||
- | 14 | ;------ writing some info |
|
- | 15 | mov edx, info_msg |
|
- | 16 | call debug_string |
|
- | 17 | mov cl, 13 ; line break symbol |
|
- | 18 | int 40h |
|
- | 19 | ||
13 | mov eax, 68 |
20 | ;------ init driver |
14 | mov ebx, 16 |
21 | mov eax, 68 |
15 | mov ecx, sz_sound |
22 | mov ebx, 16 |
16 | int 0x40 |
23 | mov ecx, sz_sound |
17 | test eax, eax |
24 | int 40h |
18 | jnz .exit |
25 | test eax, eax |
Line 19... | Line 26... | ||
19 | 26 | jnz .exit |
|
20 | mov eax, 68 |
27 | |
21 | mov ebx, 21 |
28 | mov eax, 68 |
22 | mov ecx, sz_path |
29 | mov ebx, 21 |
Line 23... | Line 30... | ||
23 | int 0x40 |
30 | mov ecx, selfpath |
24 | 31 | int 40h |
|
25 | .exit: |
32 | |
Line -... | Line 33... | ||
- | 33 | .exit: |
|
- | 34 | mov eax, -1 |
|
- | 35 | int 40h |
|
- | 36 | ||
- | 37 | debug_string: |
|
- | 38 | mov eax,63 |
|
- | 39 | mov ebx,1 |
|
- | 40 | @@: |
|
- | 41 | mov cl,[edx] |
|
- | 42 | test cl,cl |
|
- | 43 | jz @f |
|
- | 44 | int 40h |
|
Line 26... | Line 45... | ||
26 | mov eax, -1 |
45 | inc edx |
27 | int 0x40 |
46 | jmp @b |
- | 47 | @@: |
|
Line 28... | Line 48... | ||
28 | 48 | ret |
|
29 | 49 | ||
30 | sz_sound db 'SOUND',0 |
50 | sz_sound db 'SOUND',0 |
31 | sz_path db '/rd/1/drivers/geode.drv',0 |
51 | info_msg db 'Trying to load the driver: ' |