Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 1191 → Rev 1192

/kernel/branches/net/applications/netcfg/netcfg.asm
44,11 → 44,15
cmp ah, 4
je hook
 
cmp ah, 5
je reset
 
cmp ah, 6
je unload
 
jmp still
@@:
shr eax, 16
mov dword[MAC],0
mov word [MAC+4],0
mov word [selected], ax
 
call load_drv
97,19 → 101,25
 
mov byte[drivernumber], al
 
printhdwaddr:
reset:
movzx ebx, byte[drivernumber]
mcall 73,,2
 
call draw_window
ret
 
jmp still
unload:
movzx ebx, byte[drivernumber]
mcall 73,,3
 
ret
 
draw_window:
mcall 12, 1 ; start of draw
mcall 0, dword [Form], dword [Form + 4], 0x13ffffff, 0x805080d0, title
 
mcall 73, 0
mov ecx, eax
mcall 47, 1 shl 18, , 50 shl 16 + 10, 0x00000000
; 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
 
118,49 → 128,22
 
mcall 4, 20 shl 16 + 100, 1 shl 31 + 0x00000000 , caption
 
mcall 8, 122 shl 16 + 100, 50 shl 16 + 18, 0x00000004, 0x00007f00
mcall ,, 70 shl 16 + 18, 0x00000005, 0x007f0000
mov ax , [selected]
test ax, ax
jz .done
 
mcall 4, 137 shl 16 + 57, 1 shl 31 + 0x00ffffff , btn_start
mcall , 140 shl 16 + 77, , btn_stop
mcall 8, 18 shl 16 + 100, 35 shl 16 + 18, 4, 0x00007f00
mcall ,, 55 shl 16 + 18, 5, 0x0000007f
mcall ,, 75 shl 16 + 18, 6, 0x007f0000
 
mcall , 240 shl 16 + 77, 1 shl 31 + 0x00000000 , lbl_hdw_addr
mcall , 312 shl 16 + 57, , lbl_type
add ebx, 38 shl 16
cmp byte [type],type_ethernet
jne @f
mcall , , 1 shl 31 + 0x00000000, lbl_ethernet
mcall 4, 33 shl 16 + 42, 1 shl 31 + 0x00ffffff , btn_start
mcall , 33 shl 16 + 62, , btn_reset
mcall , 36 shl 16 + 82, , btn_stop
 
mcall 8,345 shl 16 + 17, 73 shl 16 + 14, 0x00000006, 0x00aaaa00
mcall ,365 shl 16 + 17, , 0x00000007
mcall ,385 shl 16 + 17, , 0x00000008
mcall ,405 shl 16 + 17, , 0x00000009
mcall ,425 shl 16 + 17, , 0x0000000a
mcall ,445 shl 16 + 17, , 0x0000000b
movzx ecx,byte[MAC]
mcall 47, 1 shl 17 + 1 shl 8,,349 shl 16 + 77, 0x000022cc
movzx ecx,byte[MAC+1]
add edx, 20 shl 16
mcall
movzx ecx,byte[MAC+2]
add edx, 20 shl 16
mcall
movzx ecx,byte[MAC+3]
add edx, 20 shl 16
mcall
movzx ecx,byte[MAC+4]
add edx, 20 shl 16
mcall
movzx ecx,byte[MAC+5]
add edx, 20 shl 16
mcall
; mcall , 140 shl 16 + 62, 1 shl 31 + 0x00000000 , devicename
 
jmp .done
 
@@:
mcall 4, , 1 shl 31 + 0x00ff0000, lbl_unknown
jmp .done
 
.nonefound :
mcall 4, 20 shl 16 + 30, 1 shl 31 + 0x00ff0000 , nonefound
.done:
411,17 → 394,22
title db 'Network Driver Control Center', 0
 
caption db 'Vendor Device Bus Dev Rev IRQ Company Description DRIVER',0
lbl_1 db 'Hardware control',0
;lbl_1 db 'Hardware control',0
nonefound db 'No compatible devices were found!',0
btn_start db 'Start driver',0
btn_stop db 'Stop driver',0
lbl_hdw_addr db 'hardware address:',0
lbl_type db 'type:',0
btn_start db 'Start device',0
btn_reset db 'Reset device',0
btn_stop db 'Stop device',0
;lbl_hdw_addr db 'hardware address:',0
;lbl_type db 'type:',0
lbl_none db 'none',0
lbl_unknown db 'unknown',0
lbl_ethernet db 'ethernet',0
;lbl_unknown db 'unknown',0
;lbl_ethernet db 'ethernet',0
 
devicename db 'test'
rb 64
db 0
 
 
IOCTL:
.handle dd ?
.io_code dd ?
/kernel/branches/net/applications/netstat/netstat.asm
1,5 → 1,5
;
; Netstat for KolibriOS v0.1
; Netstat for KolibriOS v0.1 (still alpha version)
;
; hidnplayr@gmail.com
;
11,9 → 11,9
db 'MENUET01' ; 8 byte id
dd 0x01 ; header version
dd START ; start of code
dd I_END ; size of image
dd IM_END ; memory for app
dd IM_END ; esp
dd IM_END ; size of image
dd (I_END+0x100) ; memory for app
dd (I_END+0x100) ; esp
dd I_PARAM , 0x0 ; I_Param , I_Icon
 
__DEBUG__ equ 1
79,8 → 79,6
mov edx, str_queue_out
mcall
 
push end_of_draw
 
mov ebx,1337 shl 16 + 4
mov bh, [device]
mcall 75
88,7 → 86,8
push bx
 
mov edx, 135 shl 16 + 75 + 4*18
jmp draw_mac
call draw_mac
jmp end_of_draw
 
@@:
 
201,18 → 200,21
mov ebx, 1337 shl 16 + 0
mov bh, [device]
@@:
push ebx
mcall 75
pop ebx
push eax
inc bl
cmp bl, 3
jle @r
 
inc bl ;5
inc bl ;6
 
inc bl
inc bl
 
@@:
push ebx
mcall 75
pop ebx
push eax
inc bl
cmp bl, 7
251,10 → 253,14
 
mov ebx, 0 shl 16
mov bh, [device]
push ebx
mcall 75
pop ebx
push eax
inc bl
push ebx
mcall 75
pop ebx
push eax
inc bl
 
279,13 → 285,19
 
mov ebx, 0x0608 shl 16 + 0
mov bh, [device]
push ebx
mcall 75
pop ebx
push eax
inc bl
push ebx
mcall 75
pop ebx
push eax
inc bl
push ebx
mcall 75
pop ebx
push eax
inc bl
 
312,10 → 324,14
 
mov ebx, 1 shl 16 + 0
mov bh, [device]
push ebx
mcall 75
pop ebx
push eax
inc bl
push ebx
mcall 75
pop ebx
push eax
inc bl
 
339,10 → 355,14
 
mov ebx, 17 shl 16 + 0
mov bh, [device]
push ebx
mcall 75
pop ebx
push eax
inc bl
push ebx
mcall 75
pop ebx
push eax
inc bl
 
366,10 → 386,14
 
mov ebx, 6 shl 16 + 0
mov bh, [device]
push ebx
mcall 75
pop ebx
push eax
inc bl
push ebx
mcall 75
pop ebx
push eax
inc bl
 
414,33 → 438,34
mov esi, 0x40000000
mov edi, 0x00bcbcbc
 
mov cl, [esp]
mov cl, [esp+4]
mcall
 
mov cl, [esp+1]
mov cl, [esp+4+1]
add edx, 15 shl 16
mcall
 
mov cl, [esp+2]
mov cl, [esp+4+2]
add edx, 15 shl 16
mcall
 
mov cl, [esp+3]
mov cl, [esp+4+3]
add edx, 15 shl 16
mcall
 
mov cl, [esp+4]
mov cl, [esp+4+4]
add edx, 15 shl 16
mcall
 
mov cl, [esp+5]
mov cl, [esp+4+5]
add edx, 15 shl 16
mcall
 
add esp, 6
mov eax, [esp]
add esp, 6+4
sub edx, 5*15 shl 16
 
ret
jmp eax
 
 
draw_ip:
475,7 → 500,7
 
; DATA AREA
 
I_END:
IM_END:
 
name db 'Netstat',0
mode db 101
499,6 → 524,6
 
I_PARAM rb 1024
 
IM_END:
I_END:
 
 
/kernel/branches/net/applications/zeroconf/zeroconf.asm
12,8 → 12,8
dd 0x01 ; header version
dd START ; start of code
dd IM_END ; size of image
dd I_END ; memory for app
dd I_END ; esp
dd (I_END+0x100) ; memory for app
dd (I_END+0x100) ; esp
dd 0x0 , path ; I_Param , I_Icon
 
; CONFIGURATION
/kernel/branches/net/network/stack.inc
119,7 → 119,7
je .exit
 
mov [last_1hsTick], eax
; call tcp_tx_handler
call tcp_tx_handler
 
.sec_tick:
 
134,7 → 134,7
 
call ARP_decrease_entry_ttls
call IPv4_decrease_fragment_ttls
; call tcp_tcb_handler
call tcp_tcb_handler
 
.exit:
ret
201,7 → 201,8
test bl, bl ; 0 = Get device type (ethernet/token ring/...)
jnz @f
 
;TODO: write code here
xor eax, eax
jmp .return
 
 
@@:
215,20 → 216,38
mov ecx, 64 ; max length
repnz movsb
 
ret
xor eax, eax
jmp .return
 
; TODO: create function wich outputs number of active network devices
@@:
 
dec bl ; 2 = Reset the device
jnz @f
 
mov esi, [esi + ETH_DRV_LIST]
call [esi + ETH_DEVICE.reset]
jmp .return
 
@@:
 
dec bl ; 3 = Stop driver for this device
jnz @f
 
mov esi, [esi + ETH_DRV_LIST]
call [esi + ETH_DEVICE.unload]
jmp .return
 
@@:
 
.doesnt_exist:
DEBUGF 1,"sys_network: invalid device/function specified!\n"
mov eax, -1
 
.return:
mov [esp+28+4], eax
ret
 
 
 
 
;----------------------------------------------------------------
;
; System Function To work with Protocols (75)