forked from KolibriOS/kolibrios
geode loader: load driver from the same folder
git-svn-id: svn://kolibrios.org@9478 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
f7761a485b
commit
7acdbd2b5b
3
drivers/audio/a5536/Tupfile.lua
Normal file
3
drivers/audio/a5536/Tupfile.lua
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
if tup.getconfig("NO_FASM") ~= "" then return end
|
||||||
|
ROOT = "../../.."
|
||||||
|
tup.rule("geode.asm", "fasm %f %o " .. tup.getconfig("PESTRIP_CMD") .. tup.getconfig("KPACK_CMD"), "%B")
|
@ -1,35 +1,55 @@
|
|||||||
|
|
||||||
use32
|
use32
|
||||||
|
|
||||||
db 'MENUET01'
|
db 'MENUET01'
|
||||||
dd 1
|
dd 1, start, i_end, mem, mem, 0, selfpath
|
||||||
dd start
|
|
||||||
dd i_end
|
|
||||||
dd mem
|
|
||||||
dd mem
|
|
||||||
dd 0
|
|
||||||
dd 0
|
|
||||||
|
|
||||||
start:
|
start:
|
||||||
mov eax, 68
|
;------ strcat(selfpath, '.drv')
|
||||||
mov ebx, 16
|
mov eax, selfpath
|
||||||
mov ecx, sz_sound
|
@@:
|
||||||
int 0x40
|
inc eax
|
||||||
test eax, eax
|
cmp [eax], byte 0
|
||||||
jnz .exit
|
jne @b
|
||||||
|
mov [eax], dword '.drv'
|
||||||
|
|
||||||
mov eax, 68
|
;------ writing some info
|
||||||
mov ebx, 21
|
mov edx, info_msg
|
||||||
mov ecx, sz_path
|
call debug_string
|
||||||
int 0x40
|
mov cl, 13 ; line break symbol
|
||||||
|
int 40h
|
||||||
|
|
||||||
|
;------ init driver
|
||||||
|
mov eax, 68
|
||||||
|
mov ebx, 16
|
||||||
|
mov ecx, sz_sound
|
||||||
|
int 40h
|
||||||
|
test eax, eax
|
||||||
|
jnz .exit
|
||||||
|
|
||||||
|
mov eax, 68
|
||||||
|
mov ebx, 21
|
||||||
|
mov ecx, selfpath
|
||||||
|
int 40h
|
||||||
|
|
||||||
.exit:
|
.exit:
|
||||||
mov eax, -1
|
mov eax, -1
|
||||||
int 0x40
|
int 40h
|
||||||
|
|
||||||
|
debug_string:
|
||||||
|
mov eax,63
|
||||||
|
mov ebx,1
|
||||||
|
@@:
|
||||||
|
mov cl,[edx]
|
||||||
|
test cl,cl
|
||||||
|
jz @f
|
||||||
|
int 40h
|
||||||
|
inc edx
|
||||||
|
jmp @b
|
||||||
|
@@:
|
||||||
|
ret
|
||||||
|
|
||||||
sz_sound db 'SOUND',0
|
sz_sound db 'SOUND',0
|
||||||
sz_path db '/rd/1/drivers/geode.drv',0
|
info_msg db 'Trying to load the driver: '
|
||||||
|
selfpath rb 4096
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
i_end:
|
i_end:
|
||||||
|
Loading…
Reference in New Issue
Block a user