79,7 → 79,7 |
|
.entry: |
|
DEBUGF 2,"Loading %s driver\n", my_service |
DEBUGF 2,"Loading driver\n" |
stdcall RegService, my_service, service_proc |
ret |
|
104,7 → 104,7 |
proc service_proc stdcall, ioctl:dword |
|
mov edx, [ioctl] |
mov eax, [IOCTL.io_code] |
mov eax, [edx + IOCTL.io_code] |
|
;------------------------------------------------------ |
|
111,9 → 111,9 |
cmp eax, 0 ;SRV_GETVERSION |
jne @F |
|
cmp [IOCTL.out_size], 4 |
cmp [edx + IOCTL.out_size], 4 |
jb .fail |
mov eax, [IOCTL.output] |
mov eax, [edx + IOCTL.output] |
mov [eax], dword API_VERSION |
|
xor eax, eax |
124,10 → 124,10 |
cmp eax, 1 ;SRV_HOOK |
jne .fail |
|
cmp [IOCTL.inp_size], 3 ; Data input must be at least 3 bytes |
cmp [edx + IOCTL.inp_size], 3 ; Data input must be at least 3 bytes |
jb .fail |
|
mov eax, [IOCTL.input] |
mov eax, [edx + IOCTL.input] |
cmp byte [eax], 1 ; 1 means device number and bus number (pci) are given |
jne .fail ; other types arent supported for this card yet |
|
138,7 → 138,7 |
test ecx, ecx |
jz .firstdevice |
|
; mov eax, [IOCTL.input] ; get the pci bus and device numbers |
; mov eax, [edx + IOCTL.input] ; get the pci bus and device numbers |
mov ax, [eax+1] ; |
.nextdevice: |
mov ebx, [esi] |
167,7 → 167,7 |
|
; save the pci bus and device numbers |
|
mov eax, [IOCTL.input] |
mov eax, [edx + IOCTL.input] |
movzx ecx, byte [eax+1] |
mov [device.pci_bus], ecx |
movzx ecx, byte [eax+2] |