38,8 → 38,8 |
jne @f |
mcall -1 ; close this program |
@@: |
cmp eax,0x0000fe00 |
jg @f |
cmp eax,0x0000ff00 |
jg load_drv |
|
cmp ah, 4 |
je hook |
51,19 → 51,11 |
je unload |
|
jmp still |
@@: |
shr eax, 16 |
mov word [selected], ax |
|
call load_drv |
call draw_window |
|
jmp still |
|
load_drv: |
; mov ax , [selected] |
test ax , ax |
jz still |
shr eax, 16 |
mov word [selected], ax |
|
mov bl , 6 ; get a dword |
mov bh , ah ; bus |
81,8 → 73,16 |
|
mov [IOCTL.handle], eax |
|
ret |
call draw_window |
|
cmp [IOCTL.handle], 0 |
jne still |
|
mcall 4, 20 shl 16 + 30, 1 shl 31 + 0x00ff0000 , load_error |
|
jmp still |
|
|
hook: |
mov ax , [selected] |
test ax , ax |
101,26 → 101,24 |
|
mov byte[drivernumber], al |
|
jmp still |
|
reset: |
movzx ebx, byte[drivernumber] |
mcall 73,,2 |
|
ret |
jmp still |
|
unload: |
movzx ebx, byte[drivernumber] |
mcall 73,,3 |
|
ret |
jmp still |
|
draw_window: |
mcall 12, 1 ; start of draw |
mcall 0, dword [Form], dword [Form + 4], 0x13ffffff, 0x805080d0, title |
|
; mcall 73, 1, |
; mov ecx, eax |
; mcall 47, 1 shl 18, , 50 shl 16 + 10, 0x00000000 |
|
call Get_PCI_Info ; get pci version and last bus, scan for and draw each pci device |
|
cmp edx, 20 shl 16 + 110 |
128,9 → 126,10 |
|
mcall 4, 20 shl 16 + 100, 1 shl 31 + 0x00000000 , caption |
|
mov ax , [selected] |
test ax, ax |
cmp [selected], 0 |
jz .done |
cmp [IOCTL.handle] ,0 |
jz .done |
|
mcall 8, 18 shl 16 + 100, 35 shl 16 + 18, 4, 0x00007f00 |
mcall ,, 55 shl 16 + 18, 5, 0x0000007f |
379,8 → 378,8 |
driverfound: |
ret |
|
include 'VENDORS.INC' |
include 'DRIVERS.INC' |
include 'vendors.inc' |
include 'drivers.inc' |
;------------------------------------------------------------------ |
; DATA AREA |
DATA |
404,6 → 403,7 |
lbl_none db 'none',0 |
;lbl_unknown db 'unknown',0 |
;lbl_ethernet db 'ethernet',0 |
load_error db 'Could not load driver!',0 |
|
devicename db 'test' |
rb 64 |