Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 1163 → Rev 1164

/kernel/branches/net/applications/netcfg/drivers.inc
0,0 → 1,89
driverlist:
db 'RTL8139',0
dd 0x813910ec
dd 0x813810ec
dd 0x12111113
dd 0x13601500
dd 0x13604033
dd 0x13001186
dd 0x13401186
dd 0xab0613d1
dd 0xa1171259
dd 0xa11e1259
dd 0xab0614ea
dd 0xab0714ea
dd 0x123411db
dd 0x91301432
dd 0x101202ac
dd 0x0106018a
dd 0x1211126c
dd 0x81391743
dd 0x8139021b
dd 0x0 ; end
 
db 'RTL8029',0
dd 0x802910ec
dd 0x0
 
db 'I8255X',0
dd 0x12098086
dd 0x10298086
dd 0x12298086
dd 0x10308086
dd 0x24498086
dd 0x0
 
db 'RTL8169',0
dd 0x816810ec
dd 0x816910ec
dd 0x011616ec
dd 0x43001186
dd 0x0
 
db '3C59X',0
dd 0x590010b7
dd 0x592010b7
dd 0x597010b7
dd 0x595010b7
dd 0x595110b7
dd 0x595210b7
dd 0x900010b7
dd 0x900110b7
dd 0x900410b7
dd 0x900510b7
dd 0x900610b7
dd 0x900A10b7
dd 0x905010b7
dd 0x905110b7
dd 0x905510b7
dd 0x905810b7
dd 0x905A10b7
dd 0x920010b7
dd 0x980010b7
dd 0x980510b7
dd 0x764610b7
dd 0x505510b7
dd 0x605510b7
dd 0x605610b7
dd 0x5b5710b7
dd 0x505710b7
dd 0x515710b7
dd 0x525710b7
dd 0x656010b7
dd 0x656210b7
dd 0x656410b7
dd 0x450010b7
dd 0x0
 
db 'SIS900',0
dd 0x09001039
dd 0x70161039
dd 0x0
 
db 'PCNET32',0
dd 0x20001022
dd 0x26251022
dd 0x20011022
dd 0x0
 
dd 0x0 ; driverlist end
/kernel/branches/net/applications/netcfg/macros.inc
0,0 → 1,543
@^ fix macro comment {
^@ fix }
 
; -------------------------
macro library [lname,fname]
{
forward
dd __#lname#_library_table__,__#lname#_library_name__
common
dd 0
forward
align 4
__#lname#_library_name__ db fname,0
}
 
macro import lname,[name,sname]
{
common
align 4
__#lname#_library_table__:
forward
if used name
name dd __#name#_import_name__
end if
common
dd 0
forward
if used name
align 4
__#name#_import_name__ db sname,0
end if
}
 
macro export [name,sname]
{
forward
dd __#name#_export_name__,name
common
dd 0
forward
align 4
__#name#_export_name__ db sname,0
}
; -------------------------
 
macro m2m dest,src {
push src
pop dest
}
 
 
macro iglobal {
IGlobals equ IGlobals,
macro __IGlobalBlock { }
macro uglobal {
UGlobals equ UGlobals,
macro __UGlobalBlock { }
 
endg fix } ; Use endg for ending iglobal and uglobal blocks.
 
 
macro IncludeIGlobals{
macro IGlobals dummy,[n] \{ __IGlobalBlock
purge __IGlobalBlock \}
match I, IGlobals \{ I \} }
 
macro IncludeUGlobals{
macro UGlobals dummy,[n] \{
\common
\local begin, size
begin = $
virtual at $
\forward
__UGlobalBlock
purge __UGlobalBlock
\common
size = $ - begin
end virtual
rb size
\}
match U, UGlobals \{ U \} }
 
uglobal
endg
iglobal
endg
 
 
; new application structure
macro meos_app_start
{
use32
org 0x0
 
db 'MENUET01'
dd 0x01
dd __start
dd __end
dd __memory
dd __stack
 
if used __params & ~defined __params
dd __params
else
dd 0x0
end if
 
dd 0x0
}
MEOS_APP_START fix meos_app_start
 
macro code
{
__start:
}
CODE fix code
 
macro data
{
__data:
IncludeIGlobals
}
DATA fix data
 
macro udata
{
if used __params & ~defined __params
__params:
db 0
__end:
rb 255
else
__end:
end if
__udata:
IncludeUGlobals
}
UDATA fix udata
 
macro meos_app_end
{
align 32
rb 2048
__stack:
__memory:
}
MEOS_APP_END fix meos_app_end
 
 
; macro for defining multiline text data
struc mstr [sstring]
{
forward
local ssize
virtual at 0
db sstring
ssize = $
end virtual
dd ssize
db sstring
common
dd -1
}
 
; macro for defining multiline text data
struc mls [sstring]
{
forward
local ssize
virtual at 0
db sstring ; mod
ssize = $
end virtual
db ssize
db sstring
common
db -1 ; mod
}
 
 
 
; strings
macro sz name,[data] { ; from MFAR [mike.dld]
common
if used name
name db data
.size = $-name
end if
}
 
macro lsz name,[lng,data] { ; from MFAR [mike.dld]
common
if used name
label name
forward
if lang eq lng
db data
end if
common
.size = $-name
end if
}
 
macro szc name,elsz,[data] { ; from MFAR [mike.dld]
common
local s,m
m = 0
if used name
label name
forward
virtual at 0
db data
s = $
end virtual
d#elsz s
if m < s
m = s
end if
db data
common
.size = $-name
.maxl = m
end if
}
 
macro lszc name,elsz,[lng,data] { ; from MFAR [mike.dld]
common
local s,m,c
m = 0
c = 0
if used name
label name
forward
if lang eq lng
virtual at 0
db data
s = $
end virtual
d#elsz s
if m < s
m = s
end if
db data
c = c+1
end if
common
.size = $-name
.maxl = m
.count = c
end if
}
 
 
; easy system call macro
macro mpack dest, hsrc, lsrc
{
if (hsrc eqtype 0) & (lsrc eqtype 0)
mov dest, (hsrc) shl 16 + lsrc
else
if (hsrc eqtype 0) & (~lsrc eqtype 0)
mov dest, (hsrc) shl 16
add dest, lsrc
else
mov dest, hsrc
shl dest, 16
add dest, lsrc
end if
end if
}
 
macro __mov reg,a,b { ; mike.dld
if (~a eq)&(~b eq)
mpack reg,a,b
else if (~a eq)&(b eq)
mov reg,a
end if
}
 
 
__CPU_type equ p5
SYSENTER_VAR equ 0
 
macro mcall a,b,c,d,e,f { ; mike.dld, updated by Ghost for Fast System Calls
local ..ret_point
__mov eax,a
__mov ebx,b
__mov ecx,c
__mov edx,d
__mov esi,e
__mov edi,f
 
if __CPU_type eq p5
int 0x40
else
if __CPU_type eq p6
push ebp
mov ebp, esp
push ..ret_point ; it may be 2 or 5 byte
sysenter
..ret_point:
pop edx
pop ecx
 
else
if __CPU_type eq k6
push ecx
syscall
pop ecx
else
display 'ERROR : unknown CPU type (set to p5)', 10, 13
__CPU_type equ p5
int 0x40
end if
end if
end if
}
 
 
; -------------------------
macro header a,[b] {
common
use32
org 0
db 'MENUET',a
forward
if b eq
dd 0
else
dd b
end if }
macro section name { align 16
label name }
macro func name {
if ~used name
display 'FUNC NOT USED: ',`name,13,10
else
align 4
name:
;diff16 `name,0,name
;pushad
;pushfd
;dps `name
;newline
;mcall 5,1
;popfd
;popad
}
macro endf { end if }
 
macro diff16 title,l1,l2
{
local s,d
s = l2-l1
display title,': 0x'
repeat 8
d = '0' + s shr ((8-%) shl 2) and $0F
if d > '9'
d = d + 'A'-'9'-1
end if
display d
end repeat
display 13,10
}
 
macro diff10 title,l1,l2
{
local s,d,z,m
s = l2-l1
z = 0
m = 1000000000
display title,': '
repeat 10
d = '0' + s / m
s = s - (s/m)*m
m = m / 10
if d <> '0'
z = 1
end if
if z <> 0
display d
end if
end repeat
display 13,10
}
 
; optimize the code for size
__regs fix <eax,ebx,ecx,edx,esi,edi,ebp,esp>
 
macro add arg1,arg2
{
if (arg2 eqtype 0)
if (arg2) = 1
inc arg1
else
add arg1,arg2
end if
else
add arg1,arg2
end if
}
 
macro sub arg1,arg2
{
if (arg2 eqtype 0)
if (arg2) = 1
dec arg1
else
sub arg1,arg2
end if
else
sub arg1,arg2
end if
}
 
macro mov arg1,arg2
{
if (arg1 in __regs) & ((arg2 eqtype 0) | (arg2 eqtype '0'))
if (arg2) = 0
xor arg1,arg1
else if (arg2) = 1
xor arg1,arg1
inc arg1
else if (arg2) = -1
or arg1,-1
else if (arg2) > -128 & (arg2) < 128
push arg2
pop arg1
else
mov arg1,arg2
end if
else
mov arg1,arg2
end if
}
 
 
macro RGB [a] {
common
match (r=,g=,b),a \{
\dd ((r) shl 16) or ((g) shl 8) or (b)
\}
}
 
 
struc POINT _t,_dx,_dy {
.x _t _dx
.y _t _dy
}
 
; structure definition helper
include 'struct.inc'
 
struct RECT
left dd ?
top dd ?
right dd ?
bottom dd ?
ends
 
struct BOX
left dd ?
top dd ?
width dd ?
height dd ?
ends
 
; structures used in MeOS
struct process_information
cpu_usage dd ? ; +0
window_stack_position dw ? ; +4
window_stack_value dw ? ; +6
dw ? ; +8
process_name rb 12 ; +10
memory_start dd ? ; +22
used_memory dd ? ; +26
PID dd ? ; +30
box BOX ; +34
slot_state dw ? ; +50
dw ? ; +52
client_box BOX ; +54
wnd_state db ? ; +70
rb (1024-71)
ends
 
struct system_colors
frame dd ?
grab dd ?
grab_button dd ?
grab_button_text dd ?
grab_text dd ?
work dd ?
work_button dd ?
work_button_text dd ?
work_text dd ?
work_graph dd ?
ends
 
struct FILEDATE
Second db ?
Minute db ?
Hour db ?
db ?
Day db ?
Month db ?
Year dw ?
ends
 
struct FILEINFO
Attributes dd ?
IsUnicode db ?
db 3 dup(?)
DateCreate FILEDATE
DateAccess FILEDATE
DateModify FILEDATE
Size dq ?
ends
 
; constants
 
; events
EV_IDLE = 0
EV_TIMER = 0
EV_REDRAW = 1
EV_KEY = 2
EV_BUTTON = 3
EV_EXIT = 4
EV_BACKGROUND = 5
EV_MOUSE = 6
EV_IPC = 7
EV_STACK = 8
 
; event mask bits for function 40
EVM_REDRAW = 1b
EVM_KEY = 10b
EVM_BUTTON = 100b
EVM_EXIT = 1000b
EVM_BACKGROUND = 10000b
EVM_MOUSE = 100000b
EVM_IPC = 1000000b
EVM_STACK = 10000000b
 
/kernel/branches/net/applications/netcfg/netcfg.asm
0,0 → 1,466
include 'macros.inc'
MEOS_APP_START
 
type_ethernet equ 1
 
CODE
call draw_window
 
still: mcall 10 ; wait here for event
dec eax ; redraw request ?
jz red
dec eax ; key in buffer ?
jz key
dec eax ; button in buffer ?
jz button
jmp still
 
red: ; redraw
mcall 9, Proc_Info, -1 ; window redraw requested so get new window coordinates and size
mov eax, [Proc_Info.box.left]; store the window coordinates into the Form Structure
mov [Form + 2], ax ; x start position
mov eax, [Proc_Info.box.top];
mov [Form + 6], ax ; ystart position
mov eax, [Proc_Info.box.width] ;
mov [Form], ax ; window width
mov eax, [Proc_Info.box.height] ;
mov [Form + 4] ,ax ; window height
call draw_window ; go redraw window now
jmp still
 
key: ; key
mcall 2 ; just read it and ignore
jmp still
button: ; button
mcall 17 ; get id
 
cmp ah, 1 ; button id = 1 ?
jne @f
mcall -1 ; close this program
@@:
cmp eax,0x0000fe00
jg @f
 
cmp ah, 4
je hook
 
jmp still
@@:
shr eax, 16
mov dword[MAC],0
mov word [MAC+4],0
mov word [selected], ax
 
call load_drv
call draw_window
 
jmp still
 
load_drv:
; mov ax , [selected]
test ax , ax
jz still
 
mov bl , 6 ; get a dword
mov bh , ah ; bus
mov ch , al ; dev
mov cl , 0 ; offset to device/vendor id
mcall 62 ; get ID's
 
mov word [PCI_Vendor], ax
shr eax, 16
mov word [PCI_Device], ax
call get_drv_ptr
 
mov ecx, eax
mcall 68, 16
 
mov [IOCTL.handle], eax
 
ret
 
hook:
mov ax , [selected]
test ax , ax
jz still
 
mov [hardwareinfo.pci_dev], al
mov [hardwareinfo.pci_bus], ah
 
mov [IOCTL.io_code], 1 ; SRV_HOOK
mov [IOCTL.inp_size], 3
mov [IOCTL.input], hardwareinfo
mov [IOCTL.out_size], 0
mov [IOCTL.output], 0
 
mcall 68, 17, IOCTL
 
mov byte[drivernumber], al
 
printhdwaddr:
 
call draw_window
 
jmp still
 
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
 
call Get_PCI_Info ; get pci version and last bus, scan for and draw each pci device
 
cmp edx, 20 shl 16 + 110
je .nonefound
 
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
 
mcall 4, 137 shl 16 + 57, 1 shl 31 + 0x00ffffff , btn_start
mcall , 140 shl 16 + 77, , btn_stop
 
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 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
 
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:
mcall 12, 2 ; end of draw
ret
 
 
;------------------------------------------------------------------
;* Gets the PCI Version and Last Bus
Get_PCI_Info:
mcall 62, 0
mov word [PCI_Version], ax
mcall 62, 1
mov byte [PCI_LastBus], al
;----------------------------------------------------------
;* Get all devices on PCI Bus
mov edx, 20 shl 16 + 110 ; set start write position
cmp al , 0xff ; 0xFF means no pci bus found
jne Pci_Exists ;
ret ; if no bus then leave
Pci_Exists:
mov byte [V_Bus], 0 ; reset varibles
mov byte [V_Dev], 0 ;
Start_Enum:
mov bl , 6 ; get a dword
mov bh , byte [V_Bus] ; bus of pci device
mov ch , byte [V_Dev] ; device number/function
mov cl , 0 ; offset to device/vendor id
mcall 62 ; get ID's
 
cmp ax, 0 ; Vendor ID should not be 0 or 0xFFFF
je nextDev ; check next device if nothing exists here
cmp ax, 0xffff ;
je nextDev ;
 
mov word [PCI_Vendor], ax ; There is a device here, save the ID's
shr eax, 16 ;
mov word [PCI_Device], ax ;
mov bl , 4 ; Read config byte
mov bh , byte [V_Bus] ; Bus #
mov ch , byte [V_Dev] ; Device # on bus
mov cl , 0x08 ; Register to read (Get Revision)
mcall 62 ; Read it
mov byte [PCI_Rev], al ; Save it
mov cl , 0x0b ; Register to read (Get class)
mcall 62 ; Read it
mov byte [PCI_Class], al ; Save it
mov cl , 0x0a ; Register to read (Get Subclass)
mcall 62 ; Read it
mov byte [PCI_SubClass], al ; Save it
mov cl , 0x09 ; Register to read (Get Interface)
mcall 62 ; Read it
mov [PCI_Interface], al ; Save it
mov cl , 0x3c ; Register to read (Get IRQ)
@@: mcall 62 ; Read it
mov [PCI_IRQ], al ; Save it
;
; inc byte [total] ; one more device found
 
cmp byte [PCI_Class],2
jne nextDev
 
call Print_New_Device ; print device info to screen
nextDev:
add byte [V_Dev], 8 ; lower 3 bits are the function number
 
jnz Start_Enum ; jump until we reach zero
mov byte [V_Dev], 0 ; reset device number
inc byte [V_Bus] ; next bus
mov al , byte [PCI_LastBus] ; get last bus
cmp byte [V_Bus], al ; was it last bus
jbe Start_Enum ; if not jump to keep searching
ret
 
;------------------------------------------------------------------
;* Print device info to screen
Print_New_Device:
 
push edx ; Magic ! (to print a button...)
 
mov ebx, 18 shl 16
mov bx , [Form]
sub bx , 36
 
mov cx , dx
dec cx
shl ecx, 16
add ecx, 9
 
movzx edx, byte [V_Bus]
shl dx , 8
mov dl , byte [V_Dev]
 
mov esi, 0x0000c0ff ; color: yellow if selected, blue otherwise
cmp word [selected], dx
jne @f
mov esi, 0x00c0c000
@@:
 
shl edx, 8
or dl , 0xff
 
mcall 8
pop edx
 
xor esi, esi ; Color of text
movzx ecx, word [PCI_Vendor] ; number to be written
mcall 47, 0x00040100 ; Write Vendor ID
 
add edx, (4*6+18) shl 16
movzx ecx, word [PCI_Device] ; get Vendor ID
mcall ; Draw Vendor ID to Window
 
add edx, (4*6+18) shl 16
movzx ecx, byte [V_Bus] ; get bus number
mcall ,0x00020100 ; draw bus number to screen
 
add edx, (2*6+18) shl 16
movzx ecx, byte [V_Dev] ; get device number
shr ecx, 3 ; device number is bits 3-7
mcall ; Draw device Number To Window
 
add edx, (2*6+18) shl 16
movzx ecx, byte [PCI_Rev] ; get revision number
mcall ; Draw Revision to screen
 
add edx, (2*6+18) shl 16
movzx ecx, [PCI_IRQ]
cmp cl , 0x0f ; IRQ must be between 0 and 15
ja @f
mcall
@@:
;
;Write Names
movzx ebx, dx ; Set y position
or ebx, 230 shl 16 ; set Xposition
 
;------------------------------------------------------------------
; Prints the Vendor's Name based on Vendor ID
;------------------------------------------------------------------
mov edx, VendorsTab
mov cx , word[PCI_Vendor]
.fn: mov ax , [edx]
add edx, 6
test ax , ax
jz .find
cmp ax , cx
jne .fn
.find: mov edx, [edx - 4]
mcall 4,, 0x80000000 ; lets print the vendor Name
 
;------------------------------------------------------------------
; Get description based on Class/Subclass
;------------------------------------------------------------------
mov eax, dword [PCI_Class]
and eax, 0xffffff
xor edx, edx
xor esi, esi
.fnc: inc esi
mov ecx, [Classes + esi * 8 - 8]
cmp cx , 0xffff
je .endfc
cmp cx , ax
jne .fnc
test ecx, 0xff000000
jz @f
mov edx, [Classes + esi * 8 - 4]
jmp .fnc
@@: cmp eax, ecx
jne .fnc
xor edx, edx
.endfc: test edx, edx
jnz @f
mov edx, [Classes + esi * 8 - 4]
@@:
add ebx, 288 shl 16
mcall 4,, 0x80000000,, 32 ; draw the text
movzx edx, bx ; get y coordinate
add edx, 0x0014000A ; add 10 to y coordinate and set x coordinate to 20
 
;------------------------------------------------------------------
; Print Driver Name
;------------------------------------------------------------------
push edx
add ebx, 120 shl 16
push ebx
 
call get_drv_ptr
mov edx, eax
pop ebx
mcall 4,,0x80000000 ; lets print the vendor Name
pop edx
ret
 
get_drv_ptr:
mov eax, driverlist ; eax will be the pointer to latest driver title
mov ebx, driverlist ; ebx is the current pointer
mov ecx, dword[PCI_Vendor] ; the device/vendor id of we want to find
 
driverloop:
inc ebx
 
cmp byte[ebx],0
jne driverloop
 
inc ebx ; the device/vendor id list for the driver eax is pointing to starts here.
 
deviceloop:
cmp dword[ebx],0
je nextdriver
 
cmp dword[ebx],ecx
je driverfound
 
add ebx,4
jmp deviceloop
 
nextdriver:
add ebx,4
 
cmp dword[ebx],0
je nodriver
 
mov eax,ebx
jmp driverloop
 
nodriver:
mov eax, lbl_none ; lets print the vendor Name
ret
 
driverfound:
ret
 
include 'VENDORS.INC'
include 'DRIVERS.INC'
;------------------------------------------------------------------
; DATA AREA
DATA
 
 
Form: dw 800 ; window width (no more, special for 800x600)
dw 100 ; window x start
dw 220 ; window height
dw 100 ; window y start
 
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
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
lbl_none db 'none',0
lbl_unknown db 'unknown',0
lbl_ethernet db 'ethernet',0
 
 
IOCTL:
.handle dd ?
.io_code dd ?
.input dd ?
.inp_size dd ?
.output dd ?
.out_size dd ?
 
drivernumber db ?
MAC dp ?
 
hardwareinfo:
.type db 1 ; pci
.pci_bus db ?
.pci_dev db ?
 
 
;------------------------------------------------------------------
; UNINITIALIZED DATA AREA
UDATA
 
type db ?
selected dw ?
V_Bus db ?
V_Dev db ?
PCI_Version dw ?
PCI_LastBus db ?
PCI_Vendor dw ?
PCI_Device dw ?
PCI_Bus db ?
PCI_Dev db ?
PCI_Rev db ?
; don`t change order!!!
PCI_Class db ?
PCI_SubClass db ?
PCI_Interface db ?
PCI_IRQ db ?
 
Proc_Info process_information
 
 
MEOS_APP_END
/kernel/branches/net/applications/netcfg/proc32.inc
0,0 → 1,270
 
; Macroinstructions for defining and calling procedures
 
macro stdcall proc,[arg] ; directly call STDCALL procedure
{ common
if ~ arg eq
reverse
pushd arg
common
end if
call proc }
 
macro invoke proc,[arg] ; indirectly call STDCALL procedure
{ common
if ~ arg eq
reverse
pushd arg
common
end if
call [proc] }
 
macro ccall proc,[arg] ; directly call CDECL procedure
{ common
size@ccall = 0
if ~ arg eq
reverse
pushd arg
size@ccall = size@ccall+4
common
end if
call proc
if size@ccall
add esp,size@ccall
end if }
 
macro cinvoke proc,[arg] ; indirectly call CDECL procedure
{ common
size@ccall = 0
if ~ arg eq
reverse
pushd arg
size@ccall = size@ccall+4
common
end if
call [proc]
if size@ccall
add esp,size@ccall
end if }
 
macro proc [args] ; define procedure
{ common
match name params, args>
\{ define@proc name,<params \} }
 
prologue@proc equ prologuedef
 
macro prologuedef procname,flag,parmbytes,localbytes,reglist
{ if parmbytes | localbytes
push ebp
mov ebp,esp
if localbytes
sub esp,localbytes
end if
end if
irps reg, reglist \{ push reg \} }
 
epilogue@proc equ epiloguedef
 
macro epiloguedef procname,flag,parmbytes,localbytes,reglist
{ irps reg, reglist \{ reverse pop reg \}
if parmbytes | localbytes
leave
end if
if flag and 10000b
retn
else
retn parmbytes
end if }
 
macro define@proc name,statement
{ local params,flag,regs,parmbytes,localbytes,current
if used name
name:
match =stdcall args, statement \{ params equ args
flag = 11b \}
match =stdcall, statement \{ params equ
flag = 11b \}
match =c args, statement \{ params equ args
flag = 10001b \}
match =c, statement \{ params equ
flag = 10001b \}
match =params, params \{ params equ statement
flag = 0 \}
virtual at ebp+8
match =uses reglist=,args, params \{ regs equ reglist
params equ args \}
match =regs =uses reglist, regs params \{ regs equ reglist
params equ \}
match =regs, regs \{ regs equ \}
match =,args, params \{ defargs@proc args \}
match =args@proc args, args@proc params \{ defargs@proc args \}
parmbytes = $ - (ebp+8)
end virtual
name # % = parmbytes/4
all@vars equ
current = 0
match prologue:reglist, prologue@proc:<regs> \{ prologue name,flag,parmbytes,localbytes,reglist \}
macro locals
\{ virtual at ebp-localbytes+current
macro label def \\{ match . type,def> \\\{ deflocal@proc .,label,<type \\\} \\}
struc db [val] \\{ \common deflocal@proc .,db,val \\}
struc du [val] \\{ \common deflocal@proc .,du,val \\}
struc dw [val] \\{ \common deflocal@proc .,dw,val \\}
struc dp [val] \\{ \common deflocal@proc .,dp,val \\}
struc dd [val] \\{ \common deflocal@proc .,dd,val \\}
struc dt [val] \\{ \common deflocal@proc .,dt,val \\}
struc dq [val] \\{ \common deflocal@proc .,dq,val \\}
struc rb cnt \\{ deflocal@proc .,rb cnt, \\}
struc rw cnt \\{ deflocal@proc .,rw cnt, \\}
struc rp cnt \\{ deflocal@proc .,rp cnt, \\}
struc rd cnt \\{ deflocal@proc .,rd cnt, \\}
struc rt cnt \\{ deflocal@proc .,rt cnt, \\}
struc rq cnt \\{ deflocal@proc .,rq cnt, \\} \}
macro endl
\{ purge label
restruc db,du,dw,dp,dd,dt,dq
restruc rb,rw,rp,rd,rt,rq
current = $-(ebp-localbytes)
end virtual \}
macro ret operand
\{ match any, operand \\{ retn operand \\}
match , operand \\{ match epilogue:reglist, epilogue@proc:<regs>
\\\{ epilogue name,flag,parmbytes,localbytes,reglist \\\} \\} \}
macro finish@proc \{ localbytes = (((current-1) shr 2)+1) shl 2
end if \} }
 
macro defargs@proc [arg]
{ common
if ~ arg eq
forward
local ..arg,current@arg
match argname:type, arg
\{ current@arg equ argname
label ..arg type
argname equ ..arg
if dqword eq type
dd ?,?,?,?
else if tbyte eq type
dd ?,?,?
else if qword eq type | pword eq type
dd ?,?
else
dd ?
end if \}
match =current@arg,current@arg
\{ current@arg equ arg
arg equ ..arg
..arg dd ? \}
common
args@proc equ current@arg
forward
restore current@arg
common
end if }
 
macro deflocal@proc name,def,[val]
{ common
match vars, all@vars \{ all@vars equ all@vars, \}
all@vars equ all@vars name
forward
local ..var,..tmp
match =label,def \{ ..tmp equ \}
match tmp,..tmp \{ ..var def val \}
match ,..tmp \{ label ..var val \}
match =?, val \{ ..tmp equ \}
match any =dup (=?), val \{ ..tmp equ \}
match tmp : value, ..tmp : val
\{ tmp: end virtual
initlocal@proc ..var,def value
virtual at tmp\}
common
match first rest, ..var, \{ name equ first \} }
 
macro initlocal@proc name,def
{ virtual at name
def
size@initlocal = $ - name
end virtual
position@initlocal = 0
while size@initlocal > position@initlocal
virtual at name
def
if size@initlocal - position@initlocal < 2
current@initlocal = 1
load byte@initlocal byte from name+position@initlocal
else if size@initlocal - position@initlocal < 4
current@initlocal = 2
load word@initlocal word from name+position@initlocal
else
current@initlocal = 4
load dword@initlocal dword from name+position@initlocal
end if
end virtual
if current@initlocal = 1
mov byte [name+position@initlocal],byte@initlocal
else if current@initlocal = 2
mov word [name+position@initlocal],word@initlocal
else
mov dword [name+position@initlocal],dword@initlocal
end if
position@initlocal = position@initlocal + current@initlocal
end while }
 
macro endp
{ purge ret,locals,endl
finish@proc
purge finish@proc
restore regs@proc
match all,args@proc \{ restore all \}
restore args@proc
match all,all@vars \{ restore all \} }
 
macro local [var]
{ common
locals
forward done@local equ
match varname[count]:vartype, var
\{ match =BYTE, vartype \\{ varname rb count
restore done@local \\}
match =WORD, vartype \\{ varname rw count
restore done@local \\}
match =DWORD, vartype \\{ varname rd count
restore done@local \\}
match =PWORD, vartype \\{ varname rp count
restore done@local \\}
match =QWORD, vartype \\{ varname rq count
restore done@local \\}
match =TBYTE, vartype \\{ varname rt count
restore done@local \\}
match =DQWORD, vartype \\{ label varname dqword
rq count+count
restore done@local \\}
match , done@local \\{ virtual
varname vartype
end virtual
rb count*sizeof.\#vartype
restore done@local \\} \}
match :varname:vartype, done@local:var
\{ match =BYTE, vartype \\{ varname db ?
restore done@local \\}
match =WORD, vartype \\{ varname dw ?
restore done@local \\}
match =DWORD, vartype \\{ varname dd ?
restore done@local \\}
match =PWORD, vartype \\{ varname dp ?
restore done@local \\}
match =QWORD, vartype \\{ varname dq ?
restore done@local \\}
match =TBYTE, vartype \\{ varname dt ?
restore done@local \\}
match =DQWORD, vartype \\{ label varname dqword
dq ?,?
restore done@local \\}
match , done@local \\{ varname vartype
restore done@local \\} \}
match ,done@local
\{ var
restore done@local \}
common
endl }
/kernel/branches/net/applications/netcfg/struct.inc
0,0 → 1,180
; Macroinstructions for defining data structures
 
macro struct name
{ fields@struct equ name
match child parent, name \{ fields@struct equ child,fields@\#parent \}
sub@struct equ
struc db [val] \{ \common fields@struct equ fields@struct,.,db,<val> \}
struc dw [val] \{ \common fields@struct equ fields@struct,.,dw,<val> \}
struc du [val] \{ \common fields@struct equ fields@struct,.,du,<val> \}
struc dd [val] \{ \common fields@struct equ fields@struct,.,dd,<val> \}
struc dp [val] \{ \common fields@struct equ fields@struct,.,dp,<val> \}
struc dq [val] \{ \common fields@struct equ fields@struct,.,dq,<val> \}
struc dt [val] \{ \common fields@struct equ fields@struct,.,dt,<val> \}
struc rb count \{ fields@struct equ fields@struct,.,db,count dup (?) \}
struc rw count \{ fields@struct equ fields@struct,.,dw,count dup (?) \}
struc rd count \{ fields@struct equ fields@struct,.,dd,count dup (?) \}
struc rp count \{ fields@struct equ fields@struct,.,dp,count dup (?) \}
struc rq count \{ fields@struct equ fields@struct,.,dq,count dup (?) \}
struc rt count \{ fields@struct equ fields@struct,.,dt,count dup (?) \}
macro db [val] \{ \common \local anonymous
fields@struct equ fields@struct,anonymous,db,<val> \}
macro dw [val] \{ \common \local anonymous
fields@struct equ fields@struct,anonymous,dw,<val> \}
macro du [val] \{ \common \local anonymous
fields@struct equ fields@struct,anonymous,du,<val> \}
macro dd [val] \{ \common \local anonymous
fields@struct equ fields@struct,anonymous,dd,<val> \}
macro dp [val] \{ \common \local anonymous
fields@struct equ fields@struct,anonymous,dp,<val> \}
macro dq [val] \{ \common \local anonymous
fields@struct equ fields@struct,anonymous,dq,<val> \}
macro dt [val] \{ \common \local anonymous
fields@struct equ fields@struct,anonymous,dt,<val> \}
macro rb count \{ \local anonymous
fields@struct equ fields@struct,anonymous,db,count dup (?) \}
macro rw count \{ \local anonymous
fields@struct equ fields@struct,anonymous,dw,count dup (?) \}
macro rd count \{ \local anonymous
fields@struct equ fields@struct,anonymous,dd,count dup (?) \}
macro rp count \{ \local anonymous
fields@struct equ fields@struct,anonymous,dp,count dup (?) \}
macro rq count \{ \local anonymous
fields@struct equ fields@struct,anonymous,dq,count dup (?) \}
macro rt count \{ \local anonymous
fields@struct equ fields@struct,anonymous,dt,count dup (?) \}
macro union \{ fields@struct equ fields@struct,,union,<
sub@struct equ union \}
macro struct \{ fields@struct equ fields@struct,,substruct,<
sub@struct equ substruct \}
virtual at 0 }
 
macro ends
{ match , sub@struct \{ restruc db,dw,du,dd,dp,dq,dt
restruc rb,rw,rd,rp,rq,rt
purge db,dw,du,dd,dp,dq,dt
purge rb,rw,rd,rp,rq,rt
purge union,struct
match name=,fields,fields@struct \\{ fields@struct equ
make@struct name,fields
fields@\\#name equ fields \\}
end virtual \}
match any, sub@struct \{ fields@struct equ fields@struct> \}
restore sub@struct }
 
macro make@struct name,[field,type,def]
{ common
if $
display 'Error: definition of ',`name,' contains illegal instructions.',0Dh,0Ah
err
end if
local define
define equ name
forward
local sub
match , field \{ make@substruct type,name,sub def
define equ define,.,sub, \}
match any, field \{ define equ define,.#field,type,<def> \}
common
match fields, define \{ define@struct fields \} }
 
macro define@struct name,[field,type,def]
{ common
local list
list equ
forward
if ~ field eq .
name#field type def
sizeof.#name#field = $ - name#field
else
rb sizeof.#type
end if
local value
match any, list \{ list equ list, \}
list equ list <value>
common
sizeof.#name = $
restruc name
match values, list \{
struc name value \\{
match any, fields@struct \\\{ fields@struct equ fields@struct,.,name,<values> \\\}
match , fields@struct \\\{ label .
forward
match , value \\\\{ field type def \\\\}
match any, value \\\\{ field type value
if ~ field eq .
rb sizeof.#name#field - ($-field)
end if \\\\}
common \\\} \\} \} }
 
macro enable@substruct
{ macro make@substruct substruct,parent,name,[field,type,def]
\{ \common
\local define
define equ parent,name
\forward
\local sub
match , field \\{ match any, type \\\{ enable@substruct
make@substruct type,name,sub def
purge make@substruct
define equ define,.,sub, \\\} \\}
match any, field \\{ define equ define,.\#field,type,<def> \\}
\common
match fields, define \\{ define@\#substruct fields \\} \} }
 
enable@substruct
 
macro define@union parent,name,[field,type,def]
{ common
virtual at 0
forward
if ~ field eq .
virtual at 0
parent#field type def
sizeof.#parent#field = $ - parent#field
end virtual
if sizeof.#parent#field > $
rb sizeof.#parent#field - $
end if
else if sizeof.#type > $
rb sizeof.#type - $
end if
common
sizeof.#name = $
end virtual
struc name [value] \{ \common
label .\#name
last@union equ
forward
match any, last@union \\{ virtual at .\#name
field type def
end virtual \\}
match , last@union \\{ match , value \\\{ field type def \\\}
match any, value \\\{ field type value \\\} \\}
last@union equ field
common rb sizeof.#name - ($ - .\#name) \} }
 
macro define@substruct parent,name,[field,type,def]
{ common
virtual at 0
forward
if ~ field eq .
parent#field type def
sizeof.#parent#field = $ - parent#field
else
rb sizeof.#type
end if
local value
common
sizeof.#name = $
end virtual
struc name value \{
label .\#name
forward
match , value \\{ field type def \\}
match any, value \\{ field type value
if ~ field eq .
rb sizeof.#parent#field - ($-field)
end if \\}
common \} }
 
/kernel/branches/net/applications/netcfg/vendors.inc
0,0 → 1,1071
; AUTHOR: Victor Alberto Gil Hancco Laquita <vhanla@gmail.com>
; This list might content mistakes, plz report it
; There are 865 Lists of Vendors' Names
; Date: 8/14/2005
;
; maybe this list is outdated...
; (the source was from 2004 list)
 
; changed 11/05/2006: + 3 vendors and no more label 'PREVIOUSVERSIONLIST'
; so the total quantity of vendors is 875 now (changes by Sergey Kuzmin)
 
; changed 16/08/2006: + 122 vendors
; so the total quantity of vendors is 987 now (changes by Sergey Kuzmin)
 
; changed ??/04/2007:
; size optimezed
; total quantity of vendors is 997 now (changes by Mihailov Ilia)
 
 
macro VendorID a,b { ; by mike.dld
dw a
dd _vtmp#a
\iglobal
_vtmp#a db b
db 0
\};endg
}
 
macro ClassID a,b,c,d {
db a
db b
local tt
 
if c eq
db 0
db 1
tt = 'x'
else
db c
db 0
tt = c
end if
dd _ctmp#a#b#tt
\iglobal
_ctmp#a#b#tt db d
db 0
\};endg
}
 
;--------------------------------------
VendorsTab:
VendorID 0x0033, 'PARADYNE CORP.'
VendorID 0x003D, 'Lockheed Martin Corp'
VendorID 0x0100, 'NCIPHER CORP. LTD'
VendorID 0x0675, 'DYNALINK'
VendorID 0x0571, 'BERKOM'
VendorID 0x0A89, 'BREA TECHNOLOGIES INC'
VendorID 0x0E11, 'COMPAQ COMPUTER CORP.'
VendorID 0x1000, 'SYMBIOS LOGIC INC/LSI Logic'
VendorID 0x1001, 'KOLTER ELECTRONIC'
VendorID 0x1002, 'ATI TECHNOLOGIES INC'
VendorID 0x1003, 'ULSI'
VendorID 0x1004, 'VLSI TECHNOLOGY INC'
VendorID 0x1005, 'ADL'
VendorID 0x100B, 'NATIONAL SEMICONDUCTOR CORPORATION'
VendorID 0x100C, 'Tseng Labs'
VendorID 0x100E, 'Weitek'
VendorID 0x1010, 'VIDEO LOGIC LTD'
VendorID 0x1011, 'Digital Equipment Corporation'
VendorID 0x1013, 'Cirrus Logic'
VendorID 0x1014, 'IBM'
VendorID 0x1017, 'Spea Software AG'
VendorID 0x1018, 'UNISYS CORPORATION'
VendorID 0x1019, 'ELITEGROUP COMPUTER SYS'
VendorID 0x101A, 'NCR Corporation'
VendorID 0x101E, 'AMERICAN MEGATRENDS'
VendorID 0x1020, 'HITACHI COMPUTER PRODUCTS'
VendorID 0x1021, 'OKI ELECTRIC INDUSTRY CO. LTD.'
VendorID 0x1022, 'Advanced Micro Devices'
VendorID 0x1023, 'TRIDENT MICROSYSTEMS'
VendorID 0x1025, 'Acer Incorporated'
VendorID 0x1028, 'DELL COMPUTER CORPORATION'
VendorID 0x102A, 'LSI LOGIC CORPORATION'
VendorID 0x102B, 'MATROX GRAPHICS'
VendorID 0x102C, 'Asiliant (Chips And Technologies)'
VendorID 0x102D, 'Wyse Technologies'
VendorID 0x102F, 'TOSHIBA AMERICA'
VendorID 0x1031, 'miro Computer Products AG'
VendorID 0x1033, 'NEC CORPORATION'
VendorID 0x1036, 'Future Domain'
VendorID 0x1038, 'AMP'
VendorID 0x1039, 'SILICON INTEGRATED SYSTEMS'
VendorID 0x103C, 'Hewlett-Packard Company'
VendorID 0x103F, 'SYNOPSYS/LOGIC MODELING GROUP'
VendorID 0x1042, 'Micron Electronics'
VendorID 0x1043, 'ASUSTEK COMPUTER'
VendorID 0x1044, 'DISTRIBUTED PROCESSING TECHNOLOGY'
VendorID 0x1045, 'OPTI INC.'
VendorID 0x1048, 'ELSA AG'
VendorID 0x1049, 'FOUNTAIN TECHNOLOGIES'
VendorID 0x104A, 'STMicroelectronics'
VendorID 0x104B, 'BusLogic'
VendorID 0x104C, 'TEXAS INSTRUMENTS'
VendorID 0x104D, 'SONY CORPORATION'
VendorID 0x104E, 'Oak Technology'
VendorID 0x104F, 'Co-Time Computer Ltd.'
VendorID 0x1050, 'WINBOND ELECTRONICS CORP'
VendorID 0x1051, 'Anigma Corp.'
VendorID 0x1054, 'HITACHI'
VendorID 0x1055, 'Standard Microsystems Corp.'
VendorID 0x1057, 'Motorola'
VendorID 0x1058, 'ETRI'
VendorID 0x1059, 'TEKNOR INDUSTRIAL COMPUTERS INC'
VendorID 0x105A, 'PROMISE TECHNOLOGY'
VendorID 0x105B, 'FOXCONN INTERNATIONAL INC'
VendorID 0x105D, 'NUMBER 9 VISUAL TECHNOLOGY'
VendorID 0x105F, 'INFOTRONIC AMERICA INC'
VendorID 0x1060, 'United Microelectronics'
VendorID 0x1061, '8x8 Inc.'
VendorID 0x1063, 'OCEAN MANUFACTURING LTD'
VendorID 0x1064, 'ALCATEL'
VendorID 0x1065, 'Texas Microsystems'
VendorID 0x1066, 'Picopower Technology'
VendorID 0x1067, 'MITSUBISHI ELECTRIC AMERICA'
VendorID 0x1068, 'DIVERSIFIED TECHNOLOGY'
VendorID 0x1069, 'MYLEX CORPORATION'
VendorID 0x106B, 'APPLE COMPUTER INC.'
VendorID 0x106C, 'Hyundai Electronics America'
VendorID 0x106D, 'SEQUENT COMPUTER SYSTEMS'
VendorID 0x1070, 'DAEWOO TELECOM LTD'
VendorID 0x1071, 'MITAC'
VendorID 0x1073, 'YAMAHA CORPORATION'
VendorID 0x1074, 'Nexgen Microsystems'
VendorID 0x1076, 'Chaintech Comp.'
VendorID 0x1077, 'QLOGIC Corporation'
VendorID 0x1078, 'Cyrix Corporation'
VendorID 0x1079, 'I-BUS'
VendorID 0x107B, 'GATEWAY 2000'
VendorID 0x107D, 'Leadtek Research'
VendorID 0x107E, 'INTERPHASE CORPORATION'
VendorID 0x107F, 'Data Technology Corporation'
VendorID 0x1080, 'Cypress Semiconductor'
VendorID 0x1081, 'Radius Inc.'
VendorID 0x1083, 'Forex Computer Corporation'
VendorID 0x1085, 'Tulip Computers International BV'
VendorID 0x1087, 'Cache Computer'
VendorID 0x108A, 'SBS Operations'
VendorID 0x108D, 'OLICOM'
VendorID 0x108E, 'Sun Microsystems'
VendorID 0x1091, 'Intergraph Corporation'
VendorID 0x1092, 'Diamond Computer Systems'
VendorID 0x1093, 'National Instruments'
VendorID 0x1095, 'SILICON IMAGE (WAS CMD TECHNOLOGY INC)'
VendorID 0x1096, 'ALACRON'
VendorID 0x1097, 'APPIAN Graphics/ETMA'
VendorID 0x1098, 'Quantum Designs Ltd.'
VendorID 0x109A, 'PACKARD BELL NEC'
VendorID 0x109E, 'BROOKTREE CORPORATION'
VendorID 0x109F, 'TRIGEM COMPUTER INC.'
VendorID 0x10A0, 'MEIDENSHA CORPORATION'
VendorID 0x10A2, 'QUANTUM EFFECT DESIGN'
VendorID 0x10A4, 'Globe Manufacturing Sales'
VendorID 0x10A8, 'Sierra Semiconductor'
VendorID 0x10A9, 'SILICON GRAPHICS'
VendorID 0x10AC, 'HONEYWELL IAC'
VendorID 0x10AD, 'Winbond Systems Labs'
VendorID 0x10AF, 'MICRO COMPUTER SYSTEMS INC'
VendorID 0x10B5, 'PLX TECHNOLOGY.'
VendorID 0x10B6, 'MADGE NETWORKS'
VendorID 0x10B7, '3COM Corp, Networking Division'
VendorID 0x10B8, 'Standard Microsystems Corporation'
VendorID 0x10B9, 'ACER LABS Incorp.'
VendorID 0x10BA, 'MITSUBISHI ELECTRIC CORP.'
VendorID 0x10BD, 'Surecom Technology'
VendorID 0x10C2, 'AUSPEX SYSTEMS INC.'
VendorID 0x10C3, 'Samsung Semiconductors'
VendorID 0x10C4, 'Award Software International Inc.'
VendorID 0x10C8, 'NEOMAGIC CORPORATION'
VendorID 0x10CA, 'FUJITSU MICROELECTRONIC'
VendorID 0x10CB, 'OMRON CORPORATION'
VendorID 0x10CD, 'ADVANCED SYSTEM PRODUCTS'
VendorID 0x10CF, 'FUJITSU LIMITED'
VendorID 0x10D1, 'FUTUREPLUS SYSTEMS CORP.'
VendorID 0x10D2, 'MOLEX INCORPORATED'
VendorID 0x10D9, 'Macronix International Co. Ltd.'
VendorID 0x10DB, 'ROHM LSI SYSTEMS'
VendorID 0x10DC, 'CERN-European Lab. for Particle Physics'
VendorID 0x10DD, 'EVANS & SUTHERLAND'
VendorID 0x10DE, 'NVIDIA CORPORATION'
VendorID 0x10DF, 'EMULEX CORPORATION'
VendorID 0x10E1, 'TEKRAM TECHNOLOGY CO.LTD.'
VendorID 0x10E3, 'TUNDRA SEMICONDUCTOR CORP'
VendorID 0x10E5, 'MICRO INDUSTRIES CORPORATION'
VendorID 0x10E8, 'Applied Micro Circuits Corp.'
VendorID 0x10EA, 'Tvia, Inc.'
VendorID 0x10EB, 'Artist Graphics'
VendorID 0x10EC, 'REALTEK SEMICONDUCTOR CORP.'
VendorID 0x10ED, 'Ascii Corporation'
VendorID 0x10EE, 'XILINX'
VendorID 0x10EF, 'Racore Computer Products'
VendorID 0x10F0, 'Curtiss-Wright Controls Embedded Computing'
VendorID 0x10F1, 'TYAN COMPUTER'
VendorID 0x10F4, 'S-Mos Systems'
VendorID 0x10F5, 'NKK CORPORATION'
VendorID 0x10F6, 'Creative Electronic Systems SA'
VendorID 0x10FA, 'Truevision'
VendorID 0x10FB, 'Thesys Microelectronics'
VendorID 0x10FC, 'I-O DATA DEVICE'
VendorID 0x10FE, 'FAST MULTIMEDIA AG'
VendorID 0x1101, 'INITIO CORPORATION'
VendorID 0x1102, 'Creative Labs'
VendorID 0x1105, 'SIGMA DESIGNS'
VendorID 0x1106, 'VIA TECHNOLOGIES'
VendorID 0x1107, 'ASCEND COMMUNICATIONS/Stratus Computer'
VendorID 0x1108, 'Proteon Inc.'
VendorID 0x1109, 'Adaptec/Cogent Data Technologies Inc'
VendorID 0x110A, 'SIEMENS PC SYSTEME GMBH'
VendorID 0x110B, 'Chromatic Research Inc'
VendorID 0x1111, 'SANTA CRUZ OPERATION'
VendorID 0x1112, 'Osicom Technologies Inc.'
VendorID 0x1113, 'ACCTON TECHNOLOGY'
VendorID 0x1114, 'Atmel Corp.'
VendorID 0x1116, 'Media 100, Inc.'
VendorID 0x1117, 'Datacube Inc.'
VendorID 0x1118, 'FCI ELECTRONICS'
VendorID 0x1119, 'ICP-VORTEX COMPUTERSYSTEM GMBH'
VendorID 0x111A, 'EFFICIENT NETWORKS'
VendorID 0x111C, 'Tricord Systems Inc.'
VendorID 0x111D, 'INTEGRATED DEVICE TECH'
VendorID 0x111F, 'Precision Digital Images'
VendorID 0x1120, 'EMC CORPORATION'
VendorID 0x1127, 'FORE SYSTEMS INC'
VendorID 0x112A, 'HERMES ELECTRONICS COMPANY'
VendorID 0x112E, 'Infomedia'
VendorID 0x112F, 'IMAGING TECHNOLOGY'
VendorID 0x1131, 'PHILIPS SEMICONDUCTORS'
VendorID 0x1132, 'MITEL CORP'
VendorID 0x1133, 'Eicon Networks Corporation'
VendorID 0x1134, 'MERCURY COMPUTER SYSTEMS'
VendorID 0x1135, 'FUJI XEROX CO LTD'
VendorID 0x1136, 'MOMENTUM DATA SYSTEMS'
VendorID 0x1137, 'CISCO SYSTEMS INC'
VendorID 0x1138, 'ZIATECH CORPORATION'
VendorID 0x113C, 'CYCLONE MICROSYSTEMS.'
VendorID 0x113E, 'SANYO ELECTRIC CO-Information Systems Division'
VendorID 0x113F, 'Equinox Systems'
VendorID 0x1141, 'CREST MICROSYSTEM INC.'
VendorID 0x1142, 'Alliance Semiconductor CA - USA'
VendorID 0x1144, 'Cincinnati Milacron'
VendorID 0x1145, 'WORKBIT CORPORATION'
VendorID 0x1146, 'FORCE COMPUTERS GMBH'
VendorID 0x1147, 'Interface Corp'
VendorID 0x1148, 'SYSKONNECT/Marvell'
VendorID 0x114A, 'VMIC'
VendorID 0x114C, 'ANNABOOKS'
VendorID 0x114F, 'DIGI INTERNATIONAL'
VendorID 0x1154, 'MELCO INC'
VendorID 0x1155, 'Pine Technology Ltd'
VendorID 0x1158, 'Voarx R&D Inc'
VendorID 0x1159, 'Mutech'
VendorID 0x115C, 'PHOTRON LTD.'
VendorID 0x115D, 'XIRCOM'
VendorID 0x1161, 'PFU LIMITED'
VendorID 0x1163, 'RENDITION'
VendorID 0x1165, 'Imagraph Corporation'
VendorID 0x1166, 'Reliance Computer Corp./ServerWorks'
VendorID 0x1169, 'Centre f/Dev. of Adv. Computing'
VendorID 0x116A, 'Polaris Communications'
VendorID 0x116E, 'ELECTRONICS FOR IMAGING'
VendorID 0x1170, 'INVENTEC CORPORATION'
VendorID 0x1171, 'BLUE WAVE SYSTEMS'
VendorID 0x1172, 'ALTERA CORPORATION'
VendorID 0x1176, 'SBE'
VendorID 0x1178, 'Alfa Inc'
VendorID 0x1179, 'TOSHIBA AMERICA INFO SYSTEMS'
VendorID 0x117B, 'GCE-8320B'
VendorID 0x117E, 'T/R Systems'
VendorID 0x1180, 'RICOH CO LTD'
VendorID 0x1185, 'Dataworld'
VendorID 0x1186, 'D-LINK SYSTEM INC'
VendorID 0x1187, 'ADVANCED TECHNOLOGY LABORATORIES'
VendorID 0x1189, 'MATSUSHITA ELECTIC INDUSTRIAL CO LTD'
VendorID 0x118B, 'PLATYPUS TECHNOLOGY PTY LTD'
VendorID 0x118C, 'Corollary Inc'
VendorID 0x118D, 'BitFlow Inc'
VendorID 0x118E, 'Hermstedt AG'
VendorID 0x1190, 'Tripace'
VendorID 0x1191, 'ACARD TECHNOLOGY'
VendorID 0x1193, 'ZeitNet'
VendorID 0x1195, 'RATOC SYSTEMS INC'
VendorID 0x1197, 'Gage Applied Technologies'
VendorID 0x1199, 'Attachmate Corp.'
VendorID 0x119A, 'MINDSHARE.'
VendorID 0x119B, 'Omega Micro Inc.'
VendorID 0x119D, 'BUG.'
VendorID 0x119E, 'FUJITSU MICROELECTRONICS LTD.'
VendorID 0x119F, 'BULL HN INFORMATION SYSTEMS'
VendorID 0x11A1, 'HAMAMATSU PHOTONICS K.K.'
VendorID 0x11A8, 'Systech Corp.'
VendorID 0x11A9, 'InnoSys Inc.'
VendorID 0x11AA, 'ACTEL'
VendorID 0x11AB, 'GALILEO TECHNOLOGY LTD/Marvell Semiconductor, Inc.'
VendorID 0x11AD, 'LITE-ON COMMUNICATIONS INC'
VendorID 0x11AE, 'SCITEX CORPORATION'
VendorID 0x11AF, 'AVID TECHNOLOGY INC'
VendorID 0x11B0, 'V3 SEMICONDUCTOR INC./Quicklogic Corp'
VendorID 0x11B2, 'EASTMAN KODAK'
VendorID 0x11B3, 'BARR SYSTEMS INC.'
VendorID 0x11B5, 'Radstone Technology Ltd.'
VendorID 0x11B8, 'Xpoint Technologies Inc'
VendorID 0x11B9, 'Pathlight Technology Inc.'
VendorID 0x11BC, 'Network Peripherals Inc'
VendorID 0x11BD, 'Pinnacle Systems Inc.'
VendorID 0x11BF, 'ASTRODESIGN'
VendorID 0x11C1, 'AGERE/LUCENT'
VendorID 0x11C6, 'DAINIPPON SCREEN MFG. CO. LTD'
VendorID 0x11C8, 'DOLPHIN INTERCONNECT SOLUTIONS AS'
VendorID 0x11C9, 'MAGMA'
VendorID 0x11CA, 'LSI SYSTEMS'
VendorID 0x11CB, 'SPECIALIX INTERNATIONAL LTD'
VendorID 0x11CE, 'NETACCESS/Primary Rate Inc'
VendorID 0x11D0, 'LOCKHEED MARTIN-Electronics & Communications'
VendorID 0x11D1, 'AuraVision Corporation'
VendorID 0x11D2, 'INTERCOM INC.'
VendorID 0x11D4, 'Analog Devices, Inc.'
VendorID 0x11D5, 'IKON CORPORATION/Tahoma Technology'
VendorID 0x11D9, 'TOSHIBA TEC CORPORATION'
VendorID 0x11DA, 'NOVELL'
VendorID 0x11DB, 'Sega Enterprises Ltd'
VendorID 0x11DE, 'Zoran Corporation'
VendorID 0x11DF, 'NEW WAVE PDG'
VendorID 0x11E3, 'QUICKLOGIC CORPORATION'
VendorID 0x11EC, 'CORECO INC'
VendorID 0x11EE, 'DOME IMAGING SYSTEMS INC'
VendorID 0x11F0, 'Compu-Shack GmbH'
VendorID 0x11F4, 'Kinetic Systems Corporation'
VendorID 0x11F6, 'Powermatic Data Systems Ltd'
VendorID 0x11F8, 'PMC-SIERRA INC'
VendorID 0x11FE, 'Comtrol Corp'
VendorID 0x1202, 'Network General Corp'
VendorID 0x1203, 'AGFA CORPORATION'
VendorID 0x1206, 'AMDAHL CORPORATION'
VendorID 0x1208, 'Parsytec GmbH'
VendorID 0x1209, 'Sci Systems Inc'
VendorID 0x120E, 'Cyclades Corporation'
VendorID 0x120F, 'ESSENTIAL COMMUNICATIONS'
VendorID 0x1214, 'PERFORMANCE TECHNOLOGIES.'
VendorID 0x1216, 'PURUP-EskoFot A/S'
VendorID 0x1217, 'O2MICRO.'
VendorID 0x121A, '3DFX INTERACTIVE'
VendorID 0x121B, 'VIRATA LTD'
VendorID 0x1220, 'Ariel Corporation'
VendorID 0x1221, 'CONTEC CO. LTD'
VendorID 0x1223, 'ARTESYN COMMUNICATIONS PRODUCTS INC'
VendorID 0x1224, 'Interactive Images'
VendorID 0x1227, 'TECH-SOURCE'
VendorID 0x122C, 'SICAN GMBH'
VendorID 0x122D, 'Aztech System Ltd'
VendorID 0x1232, 'MARCONI COMMUNICATIONS LTD'
VendorID 0x1236, 'Sigma Designs, Inc'
VendorID 0x124C, 'Solitron Technologies Inc.'
VendorID 0x124D, 'Stallion Technologies'
VendorID 0x124F, 'Infortrend Technology Inc'
VendorID 0x1256, 'Perceptive Solutions Inc.'
VendorID 0x1258, 'Gilbarco Inc.'
VendorID 0x125B, 'Asix Electronics Corp.'
VendorID 0x1266, 'Microdyne Corp.'
VendorID 0x1267, 'S.A. Telecommunications'
VendorID 0x1361, 'SOLITON SYSTEMS K.K.'
VendorID 0x123C, 'CENTURY SYSTEMS.'
VendorID 0x123D, 'Engineering Design Team Inc.'
VendorID 0x123F, 'C-CUBE MICROSYSTEMS'
VendorID 0x1242, 'JAYCOR NETWORKS INC./JNI Corporation'
VendorID 0x1244, 'AVM AUDIOVISUELLES MKTG & COMPUTER SYSTEM GMBH'
VendorID 0x124B, 'SBS TECHNOLOGIES'
VendorID 0x1250, 'Hitachi Microcomputer System Ltd.'
VendorID 0x1253, 'GUZIK TECHNICAL ENTERPRISES'
VendorID 0x1255, 'OPTIBASE LTD'
VendorID 0x1259, 'ALLIED TELESYN INTERNATIONAL'
VendorID 0x125C, 'AURORA TECHNOLOGIES.'
VendorID 0x125D, 'ESS TECHNOLOGY, INC.'
VendorID 0x125F, 'CONCURRENT TECHNOLOGIES'
VendorID 0x1260, 'INTERSIL CORP'
VendorID 0x1261, 'MATSUSHITA-KOTOBUKI ELECTRONICS'
VendorID 0x1264, 'AVAL NAGASAKI CORPORATION'
VendorID 0x1268, 'TEKTRONIX'
VendorID 0x126C, 'Nortel Networks Corp.'
VendorID 0x126D, 'SPLASH TECHNOLOGY.'
VendorID 0x126E, 'SUMITOMO METAL INDUSTRIES'
VendorID 0x126F, 'SILICON MOTION.'
VendorID 0x1270, 'OLYMPUS OPTICAL CO. LTD.'
VendorID 0x1274, 'Creative Labs (was Ensoniq, Malvern)'
VendorID 0x1275, 'NETWORK APPLIANCE CORPORATION'
VendorID 0x1278, 'Transtech Parallel Systems'
VendorID 0x1279, 'TRANSMETA CORPORATION'
VendorID 0x127A, 'CONEXANT, ROCKWELL'
VendorID 0x127D, 'VELA RESEARCH LP'
VendorID 0x127F, 'FUJIFILM'
VendorID 0x1281, 'YOKOGAWA ELECTRIC CORPORATION'
VendorID 0x1283, 'Integrated Technology Express Inc.'
VendorID 0x1286, 'MAZET GMBH'
VendorID 0x128B, 'TRANSWITCH CORPORATION'
VendorID 0x128D, 'G2 Networks Inc.'
VendorID 0x128F, 'TATENO DENNOU.'
VendorID 0x1290, 'TOSHIBA PERSONAL COMPUTER SYSTEM CORP.'
VendorID 0x1291, 'NCS COMPUTER ITALIA SRL'
VendorID 0x1292, 'TRITECH MICROELECTRONICS INC'
VendorID 0x1297, 'SHUTTLE COMPUTER'
VendorID 0x1299, 'KNOWLEDGE TECHNOLOGY LAB.'
VendorID 0x129A, 'VMETRO Inc.'
VendorID 0x129E, 'VICTOR COMPANY OF JAPAN'
VendorID 0x12A0, 'ALLEN- BRADLEY COMPANY'
VendorID 0x12A3, 'Lucent Technologies AMR'
VendorID 0x12A7, 'AMO GMBH'
VendorID 0x12A9, 'XIOTECH CORPORATION'
VendorID 0x12AB, 'YUAN YUAN ENTERPRISE CO. LTD.'
VendorID 0x12AE, 'Alteon Networks Inc.'
VendorID 0x12B6, 'NATURAL MICROSYSTEMS'
VendorID 0x12B7, 'COGNEX MODULAR VISION SYSTEMS DIV.-ACUMEN INC.'
VendorID 0x12B9, '3Com Corp, Modem Division'
VendorID 0x12BC, 'ARRAY MICROSYSTEMS'
VendorID 0x12BE, 'ANCHOR CHIPS INC.'
VendorID 0x12BF, 'Fujifilm Microdevices'
VendorID 0x12C0, 'INFIMED'
VendorID 0x12C3, 'Holtek Microelectronics Inc.'
VendorID 0x12C4, 'Connect Tech Inc'
VendorID 0x12C6, 'Mitan Corporation'
VendorID 0x12C7, 'Dialogic Corp'
VendorID 0x12CA, 'Integrated Computing Engines'
VendorID 0x12CD, 'Aims Lab'
VendorID 0x12D2, 'NVIDIA (WAS: STB,SGS THOMPSON)'
VendorID 0x12D3, 'GE VINGMED ULTRASOUND AS'
VendorID 0x12D4, 'COMVERSE NETWORKS SYSTEM & Ulticom, Inc.'
VendorID 0x12D5, 'Equator Technologies'
VendorID 0x12D6, 'Analogic Corp'
VendorID 0x12D8, 'PERICOM SEMICONDUCTOR'
VendorID 0x12D9, 'Aculab PLC'
VendorID 0x12DA, 'True Time Inc.'
VendorID 0x12DE, 'Rainbow Technologies'
VendorID 0x12DF, 'SBS Technologies Inc'
VendorID 0x12E0, 'Chase Research PLC'
VendorID 0x12E2, 'Datum Inc. Bancomm-Timing Division'
VendorID 0x12E4, 'Brooktrout Technology Inc'
VendorID 0x12E7, 'Sebring Systems'
VendorID 0x12EA, 'Real Vision'
VendorID 0x12EB, 'Aureal Semiconductor'
VendorID 0x12EC, '3A'
VendorID 0x12F0, 'PENTEK'
VendorID 0x12F7, 'COGNEX INC.'
VendorID 0x12FB, 'Spectrum Signal Processing'
VendorID 0x12FC, 'CAPITAL EQUIPMENT CORP'
VendorID 0x12FE, 'ESD Electronic System Design GmbH'
VendorID 0x1304, 'Juniper Networks Inc.'
VendorID 0x1307, 'Computer Boards'
VendorID 0x1308, 'LEVEL ONE COMMUNICATIONS/Jato Technologies Inc.'
VendorID 0x130A, 'Mitsubishi Electric MicroComputer'
VendorID 0x130B, 'Colorgraphic Communications Corp'
VendorID 0x130F, 'Advanet Inc'
VendorID 0x1310, 'GESPAC'
VendorID 0x1313, 'YASKAWA ELECTRIC CO.'
VendorID 0x1316, 'TERADYNE INC.'
VendorID 0x1317, 'ADMTEK INC'
VendorID 0x1318, 'Packet Engines Inc.'
VendorID 0x1319, 'ForteMedia'
VendorID 0x131F, 'SIIG Inc'
VendorID 0x1325, 'SALIX TECHNOLOGIES INC'
VendorID 0x1326, 'SeaChange International'
VendorID 0x1331, 'RadiSys Corp.'
VendorID 0x133D, 'PRISA NETWORKS'
VendorID 0x133F, 'SCM MICROSYSTEMS'
VendorID 0x1342, 'PROMAX SYSTEMS INC'
VendorID 0x1344, 'MICRON TECHNOLOGY INC'
VendorID 0x134A, 'Domex'
VendorID 0x134B, 'ARK RESEARCH CORP.'
VendorID 0x134C, 'CHORI JOHO SYSTEM CO. LTD'
VendorID 0x134D, 'PC-TEL INC'
VendorID 0x135A, 'BRAIN BOXES LIMITED'
VendorID 0x135C, 'QUATECH INC'
VendorID 0x135E, 'SEALEVEL SYSTEMS INC'
VendorID 0x135F, 'I-DATA INTERNATIONAL A-S'
VendorID 0x1360, 'MEINBERG FUNKUHREN'
VendorID 0x1363, 'PHOENIX TECHNOLOGIES LTD'
VendorID 0x1365, 'HYPERCOPE'
VendorID 0x1367, 'HITACHI ZOSEN CORPORATION'
VendorID 0x1368, 'SKYWARE CORPORATION'
VendorID 0x1369, 'DIGIGRAM'
VendorID 0x136B, 'KAWASAKI STEEL CORPORATION'
VendorID 0x136C, 'ADTEK SYSTEM SCIENCE CO LTD'
VendorID 0x1375, 'BOEING-SUNNYVALE'
VendorID 0x1376, 'LAN Media Corporation'
VendorID 0x1377, 'ELECTRONIC EQUIPMENT PRODUCTION & DISTRIBUTION'
VendorID 0x137A, 'MARK OF THE UNICORN INC'
VendorID 0x137B, 'PPT VISION'
VendorID 0x137C, 'IWATSU ELECTRIC CO LTD'
VendorID 0x137D, 'DYNACHIP CORPORATION'
VendorID 0x1380, 'SANRITZ AUTOMATION CO LTC'
VendorID 0x1381, 'BRAINS CO. LTD'
VendorID 0x1383, 'CONTROLNET INC'
VendorID 0x1384, 'STELLAR SEMICONDUCTOR INC'
VendorID 0x1385, 'NETGEAR'
VendorID 0x1387, 'SYSTRAN CORP'
VendorID 0x1388, 'HITACHI INFORMATION TECHNOLOGY CO LTD'
VendorID 0x1389, 'APPLICOM INTERNATIONAL'
VendorID 0x138A, 'SITERA'
VendorID 0x138B, 'TOKIMEC INC'
VendorID 0x138E, 'BASLER GMBH'
VendorID 0x138F, 'PATAPSCO DESIGNS INC'
VendorID 0x1393, 'MOXA TECHNOLOGIES CO LTD'
VendorID 0x1394, 'LEVEL ONE COMMUNICATIONS'
VendorID 0x1395, 'AMBICOM INC'
VendorID 0x1396, 'CIPHER SYSTEMS INC'
VendorID 0x1397, 'COLOGNE CHIP DESIGNS GMBH'
VendorID 0x1398, 'CLARION CO. LTD'
VendorID 0x1399, 'RIOS SYSTEMS CO LTD'
VendorID 0x139A, 'ALACRITECH INC'
VendorID 0x139C, 'QUANTUM 3D INC'
VendorID 0x139D, 'XSTREAMS PLC/ EPL LIMITED'
VendorID 0x139E, 'ECHOSTAR DATA NETWORKS'
VendorID 0x139F, 'AETHRA S.R.L.'
VendorID 0x13A0, 'CRYSTAL GROUP INC'
VendorID 0x13A1, 'KAWASAKI HEAVY INDUSTRIES LTD'
VendorID 0x13A2, 'OSITECH COMMUNICATIONS INC'
VendorID 0x13A4, 'RASCOM INC'
VendorID 0x13A7, 'TELES AG'
VendorID 0x13A8, 'EXAR CORP.'
VendorID 0x13A9, 'SIEMENS MEDICAL SYSTEMS'
VendorID 0x13AA, 'NORTEL NETWORKS-BWA DIVISION'
VendorID 0x13AF, 'T.SQWARE'
VendorID 0x13B1, 'TAMURA CORPORATION'
VendorID 0x13B4, 'WELLBEAN CO INC'
VendorID 0x13B5, 'ARM Ltd'
VendorID 0x13B6, 'DLoG GMBH'
VendorID 0x13B8, 'NOKIA TELECOMMUNICATIONS OY'
VendorID 0x13BD, 'SHARP CORPORATION'
VendorID 0x13BF, 'SHAREWAVE INC'
VendorID 0x13C0, 'Microgate Corp.'
VendorID 0x13C1, '3ware Inc.'
VendorID 0x13C2, 'TECHNOTREND SYSTEMTECHNIK GMBH'
VendorID 0x13C3, 'JANZ COMPUTER AG'
VendorID 0x13C6, 'CONDOR ENGINEERING INC'
VendorID 0x13C7, 'BLUE CHIP TECHNOLOGY LTD'
VendorID 0x13CA, 'IOMEGA CORPORATION'
VendorID 0x13CC, 'METHEUS CORPORATION'
VendorID 0x13CF, 'STUDIO AUDIO & VIDEO LTD'
VendorID 0x13D0, 'B2C2'
VendorID 0x13D1, 'ABOCOM SYSTEMS'
VendorID 0x13D2, 'SHARK MULTIMEDIA INC'
VendorID 0x13D3, 'IMC NETWORKS'
VendorID 0x13D4, 'GRAPHICS MICROSYSTEMS INC'
VendorID 0x13D6, 'K.I. TECHNOLOGY CO LTD'
VendorID 0x13D7, 'TOSHIBA ENGINEERING CORPORATION'
VendorID 0x13D8, 'PHOBOS CORPORATION'
VendorID 0x13D9, 'APEX INC'
VendorID 0x13DC, 'NETBOOST CORPORATION'
VendorID 0x13DE, 'ABB ROBOTICS PRODUCTS'
VendorID 0x13DF, 'E-TECH INC'
VendorID 0x13E0, 'GVC CORPORATION'
VendorID 0x13E3, 'NEST INC'
VendorID 0x13E4, 'CALCULEX INC'
VendorID 0x13E5, 'TELESOFT DESIGN LTD'
VendorID 0x13E9, 'INTRASERVER TECHNOLOGY INC'
VendorID 0x13EA, 'DALLAS SEMICONDUCTOR'
VendorID 0x13F0, 'SUNDANCE TECHNOLOGY INC'
VendorID 0x13F1, 'OCE-TECHNOLOGIES B.V.'
VendorID 0x13F2, 'FORD MICROELECTRONICS INC'
VendorID 0x13F4, 'TROIKA NETWORKS INC'
VendorID 0x13F6, 'C-MEDIA ELECTRONICS INC'
VendorID 0x13F9, 'NTT ADVANCED TECHNOLOGY CORP.'
VendorID 0x13FB, 'AYDIN CORP'
VendorID 0x13FD, 'MICRO SCIENCE INC'
VendorID 0x1400, 'ARTX INC'
VendorID 0x1402, 'Meilhaus Electronic GmbH Germany'
VendorID 0x1404, 'FUNDAMENTAL SOFTWARE INC'
VendorID 0x1406, 'OCE PRINTING SYSTEMS GmbH'
VendorID 0x1407, 'LAVA COMPUTER MFG INC'
VendorID 0x1408, 'ALOKA CO. LTD'
VendorID 0x140A, 'DSP RESEARCH INC'
VendorID 0x140B, 'RAMIX INC'
VendorID 0x140D, 'MATSUSHITA ELECTRIC WORKS LTD'
VendorID 0x1412, 'ICEnsemble'
VendorID 0x1413, 'ADDONICS'
VendorID 0x1415, 'OXFORD SEMICONDUCTOR LTD'
VendorID 0x1418, 'KYUSHU ELECTRONICS SYSTEMS INC'
VendorID 0x1419, 'EXCEL SWITCHING CORP'
VendorID 0x141B, 'ZOOM TELEPHONICS INC'
VendorID 0x141E, 'FANUC LTD'
VendorID 0x1420, 'PSION DACOM PLC'
VendorID 0x1428, 'EDEC CO LTD'
VendorID 0x1429, 'UNEX TECHNOLOGY CORP'
VendorID 0x142A, 'KINGMAX TECHNOLOGY INC'
VendorID 0x142B, 'RADIOLAN'
VendorID 0x142C, 'MINTON OPTIC INDUSTRY CO LTD'
VendorID 0x142D, 'PIXSTREAM INC'
VendorID 0x1430, 'ITT AEROSPACE/COMMUNICATIONS DIVISION'
VendorID 0x1433, 'ELTEC ELEKTRONIK GMBH'
VendorID 0x1436, 'CIS TECHNOLOGY INC'
VendorID 0x1437, 'NISSIN INC CO'
VendorID 0x1438, 'ATMEL-DREAM'
VendorID 0x143F, 'LIGHTWELL CO LTD-ZAX DIVISION'
VendorID 0x1441, 'AGIE SA'
VendorID 0x1445, 'LOGICAL CO LTD'
VendorID 0x1446, 'GRAPHIN CO. LTD'
VendorID 0x1447, 'AIM GMBH'
VendorID 0x144A, 'ADLINK Technology Inc'
VendorID 0x144B, 'LORONIX INFORMATION SYSTEMS INC'
VendorID 0x144D, 'SAMSUNG ELECTRONICS CO LTD'
VendorID 0x1450, 'OCTAVE COMMUNICATIONS IND.'
VendorID 0x1451, 'SP3D CHIP DESIGN GMBH'
VendorID 0x1453, 'MYCOM INC'
VendorID 0x1455, 'LOGIC PLUS PLUS INC'
VendorID 0x1458, 'GIGA-BYTE TECHNOLOGY'
VendorID 0x145C, 'CRYPTEK'
VendorID 0x145F, 'BALDOR ELECTRIC COMPANY'
VendorID 0x1460, 'DYNARC INC'
VendorID 0x1461, 'AVERMEDIA Tech.'
VendorID 0x1462, 'MICRO-STAR INTERNATIONAL CO LTD'
VendorID 0x1463, 'FAST CORPORATION'
VendorID 0x1464, 'INTERACTIVE CIRCUITS & SYSTEMS LTD'
VendorID 0x1465, 'GN NETTEST TELECOM DIV.'
VendorID 0x1468, 'AMBIT MICROSYSTEMS CORP.'
VendorID 0x1469, 'CLEVELAND MOTION CONTROLS'
VendorID 0x146C, 'RUBY TECH CORP.'
VendorID 0x146D, 'TACHYON'
VendorID 0x146E, 'WILLIAMS ELECTRONICS GAMES.'
VendorID 0x1471, 'INTEGRATED TELECOM EXPRESS INC'
VendorID 0x1473, 'ZAPEX TECHNOLOGIES INC'
VendorID 0x1474, 'DOUG CARSON & ASSOCIATES'
VendorID 0x1477, 'NET INSIGHT'
VendorID 0x1478, 'DIATREND CORPORATION'
VendorID 0x147B, 'ABIT Computer'
VendorID 0x147F, 'NIHON UNISYS'
VendorID 0x1482, 'ISYTEC-Integrierte Systemtechnik Gmbh'
VendorID 0x1483, 'LABWAY COPORATION'
VendorID 0x1485, 'ERMA-ELECTRONIC GMBH'
VendorID 0x1489, 'KYE SYSTEMS CORPORATION'
VendorID 0x148A, 'OPTO 22'
VendorID 0x148B, 'INNOMEDIALOGIC INC.'
VendorID 0x148E, 'OSI PLUS CORPORATION'
VendorID 0x148F, 'PLANT EQUIPMENT.'
VendorID 0x1490, 'TC LABS PTY LTD.'
VendorID 0x1493, 'MAKER COMMUNICATIONS'
VendorID 0x1495, 'TOKAI COMMUNICATIONS INDUSTRY CO. LTD'
VendorID 0x1496, 'JOYTECH COMPUTER CO. LTD.'
VendorID 0x1497, 'SMA REGELSYSTEME GMBH'
VendorID 0x1499, 'EMTEC CO. LTD'
VendorID 0x149A, 'ANDOR TECHNOLOGY LTD'
VendorID 0x149B, 'SEIKO INSTRUMENTS INC'
VendorID 0x149C, 'OVISLINK CORP.'
VendorID 0x149D, 'NEWTEK INC'
VendorID 0x149E, 'MAPLETREE NETWORKS INC.'
VendorID 0x149F, 'LECTRON CO LTD'
VendorID 0x14A0, 'SOFTING GMBH'
VendorID 0x14A1, 'SYSTEMBASE CO LTD'
VendorID 0x14A2, 'MILLENNIUM ENGINEERING INC'
VendorID 0x14A3, 'MAVERICK NETWORKS'
VendorID 0x14A4, 'GVC/BCM ADVANCED RESEARCH'
VendorID 0x14A5, 'XIONICS DOCUMENT TECHNOLOGIES INC.'
VendorID 0x14A6, 'INOVA COMPUTERS GMBH & CO KG'
VendorID 0x14A8, 'FEATRON TECHNOLOGIES CORPORATION'
VendorID 0x14A9, 'HIVERTEC INC.'
VendorID 0x14AB, 'MENTOR GRAPHICS CORP.'
VendorID 0x14AC, 'NOVAWEB TECHNOLOGIES INC'
VendorID 0x14AD, 'TIME SPACE RADIO AB'
VendorID 0x14AE, 'CTI PET Systems'
VendorID 0x14AF, 'GUILLEMOT CORPORATION'
VendorID 0x14B0, 'BST COMMUNICATION TECHNOLOGY LTD'
VendorID 0x14B1, 'NEXTCOM K.K.'
VendorID 0x14B2, 'ENNOVATE NETWORKS INC'
VendorID 0x14B3, 'XPEED INC.'
VendorID 0x14B4, 'PHILIPS BUSINESS ELECTRONICS B.V.'
VendorID 0x14B5, 'CREAMWARE GMBH'
VendorID 0x14B6, 'QUANTUM DATA CORP.'
VendorID 0x14B7, 'PROXIM INC'
VendorID 0x14B8, 'TECHSOFT TECHNOLOGY CO LTD'
VendorID 0x14B9, 'AIRONET WIRELESS COMMUNICATIONS'
VendorID 0x14BA, 'INTERNIX INC.'
VendorID 0x14BB, 'SEMTECH CORPORATION'
VendorID 0x14BC, 'GLOBESPAN SEMICONDUCTOR INC.'
VendorID 0x14BD, 'CARDIO CONTROL N.V.'
VendorID 0x14BE, 'L3 COMMUNICATIONS'
VendorID 0x14BF, 'SPIDER COMMUNICATIONS INC.'
VendorID 0x14C0, 'COMPAL ELECTRONICS INC'
VendorID 0x14C1, 'MYRICOM INC.'
VendorID 0x14C2, 'DTK COMPUTER'
VendorID 0x14C3, 'MEDIATEK CORP.'
VendorID 0x14C4, 'IWASAKI INFORMATION SYSTEMS CO LTD'
VendorID 0x14C5, 'ABB AUTOMATION PRODUCTS'
VendorID 0x14C6, 'DATA RACE INC'
VendorID 0x14C7, 'MODULAR TECHNOLOY HOLDINGS LTD'
VendorID 0x14C8, 'TURBOCOMM TECH. INC.'
VendorID 0x14C9, 'ODIN TELESYSTEMS INC'
VendorID 0x14CA, 'PE LOGIC CORP.'
VendorID 0x14CB, 'Billionton Systems Inc./Cadmus Micro Inc.'
VendorID 0x14CC, 'NAKAYO TELECOMMUNICATIONS INC'
VendorID 0x14CD, 'UNIVERSAL SCIENTIFIC IND'
VendorID 0x14CE, 'WHISTLE COMMUNICATIONS'
VendorID 0x14CF, 'TEK MICROSYSTEMS INC.'
VendorID 0x14D0, 'ERICSSON AXE R & D'
VendorID 0x14D1, 'COMPUTER HI-TECH CO LTD'
VendorID 0x14D2, 'TITAN ELECTRONICS INC'
VendorID 0x14D3, 'CIRTECH (UK) LTD'
VendorID 0x14D4, 'PANACOM TECHNOLOGY CORP'
VendorID 0x14D5, 'NITSUKO CORPORATION'
VendorID 0x14D6, 'ACCUSYS'
VendorID 0x14D7, 'HIRAKAWA HEWTECH CORP'
VendorID 0x14D8, 'HOPF ELEKTRONIK GMBH'
VendorID 0x14D9, 'ALPHA PROCESSOR INC'
VendorID 0x14DA, 'NATIONAL AEROSPACE LABORATORIES'
VendorID 0x14DB, 'AVLAB TECHNOLOGY INC'
VendorID 0x14DC, 'AMPLICON LIVELINE LTD'
VendorID 0x14DD, 'IMODL INC.'
VendorID 0x14DE, 'APPLIED INTEGRATION CORPORATION'
VendorID 0x14DF, 'BASIS COMMUNICATIONS CORP'
VendorID 0x14E1, 'INVERTEX'
VendorID 0x14E2, 'INFOLIBRIA'
VendorID 0x14E3, 'AMTELCO'
VendorID 0x14E4, 'BROADCOM CORPORATION'
VendorID 0x14E5, 'PIXELFUSION LTD'
VendorID 0x14E6, 'SHINING TECHNOLOGY INC'
VendorID 0x14E7, '3CX'
VendorID 0x14E8, 'RAYCER INC'
VendorID 0x14E9, 'GARNETS SYSTEM CO LTD'
VendorID 0x14EA, 'PLANEX COMMUNICATIONS INC'
VendorID 0x14EB, 'SEIKO EPSON CORPORATION'
VendorID 0x14EC, 'ACQIRIS'
VendorID 0x14ED, 'DATAKINETICS LTD'
VendorID 0x14EE, 'MASPRO KENKOH CORP'
VendorID 0x14EF, 'CARRY COMPUTER ENG. CO LTD'
VendorID 0x14F0, 'CANON RESEACH CENTRE FRANCE'
VendorID 0x14F1, 'Conexant Systems, Inc'
VendorID 0x14F2, 'Mobility Electronics, Inc.'
VendorID 0x14F3, 'BROADLOGIC'
VendorID 0x14F4, 'TOKYO ELECTRONIC INDUSTRY CO LTD'
VendorID 0x14F5, 'SOPAC LTD'
VendorID 0x14F6, 'COYOTE TECHNOLOGIES LLC'
VendorID 0x14F7, 'WOLF TECHNOLOGY INC'
VendorID 0x14F8, 'AUDIOCODES INC'
VendorID 0x14F9, 'AG COMMUNICATIONS'
VendorID 0x14FA, 'WAVETEK WANDEL & GOLTERMANN'
VendorID 0x14FB, 'TRANSAS MARINE (UK) LTD'
VendorID 0x14FC, 'QUADRICS SUPERCOMPUTERS WORLD'
VendorID 0x14FD, 'JAPAN COMPUTER INDUSTRY INC.'
VendorID 0x14FE, 'ARCHTEK TELECOM CORP.'
VendorID 0x14FF, 'TWINHEAD INTERNATIONAL CORP'
VendorID 0x1500, 'LANTECH COMPUTER COMPANY'
VendorID 0x1501, 'BANKSOFT CANADA LTD'
VendorID 0x1502, 'MITSUBISHI ELECTRIC LOGISTICS SUPPORT CO'
VendorID 0x1503, 'KAWASAKI LSI USA INC'
VendorID 0x1504, 'KAISER ELECTRONICS'
VendorID 0x1505, 'ITA INGENIEURBURO FUR TESTAUFGABEN GMBH'
VendorID 0x1506, 'CHAMELEON SYSTEMS INC'
VendorID 0x1507, 'HTEC LTD'
VendorID 0x1508, 'HONDA CONNECTORS/MHOTRONICS INC'
VendorID 0x1509, 'FIRST INTERNATIONAL COMPUTER INC'
VendorID 0x150A, 'FORVUS RESEARCH INC'
VendorID 0x150B, 'YAMASHITA SYSTEMS CORP'
VendorID 0x150C, 'KYOPAL CO LTD'
VendorID 0x150D, 'WARPSPPED INC'
VendorID 0x150E, 'C-PORT CORPORATION'
VendorID 0x150F, 'INTEC GMBH'
VendorID 0x1510, 'BEHAVIOR TECH COMPUTER CORP'
VendorID 0x1511, 'CENTILLIUM TECHNOLOGY CORP'
VendorID 0x1512, 'ROSUN TECHNOLOGIES INC'
VendorID 0x1513, 'RAYCHEM'
VendorID 0x1514, 'TFL LAN INC'
VendorID 0x1515, 'ICS ADVENT'
VendorID 0x1516, 'MYSON TECHNOLOGY INC'
VendorID 0x1517, 'ECHOTEK CORPORATION'
VendorID 0x1518, 'PEP MODULAR COMPUTERS GMBH'
VendorID 0x1519, 'TELEFON AKTIEBOLAGET LM Ericsson'
VendorID 0x151A, 'GLOBETEK INC'
VendorID 0x151B, 'COMBOX LTD'
VendorID 0x151C, 'DIGITAL AUDIO LABS INC'
VendorID 0x151D, 'FUJITSU COMPUTER PRODUCTS OF AMERICA'
VendorID 0x151E, 'MATRIX CORP.'
VendorID 0x151F, 'TOPIC SEMICONDUCTOR CORP'
VendorID 0x1520, 'CHAPLET SYSTEM INC'
VendorID 0x1521, 'BELL CORPORATION'
VendorID 0x1522, 'MAINPINE LIMITED'
VendorID 0x1523, 'MUSIC SEMICONDUCTORS'
VendorID 0x1524, 'ENE TECHNOLOGY INC'
VendorID 0x1525, 'IMPACT TECHNOLOGIES'
VendorID 0x1526, 'ISS'
VendorID 0x1527, 'SOLECTRON'
VendorID 0x1528, 'ACKSYS'
VendorID 0x1529, 'AMERICAN MICROSYSTEMS INC'
VendorID 0x152A, 'QUICKTURN DESIGN SYSTEMS'
VendorID 0x152B, 'FLYTECH TECHNOLOGY CO LTD'
VendorID 0x152C, 'MACRAIGOR SYSTEMS LLC'
VendorID 0x152D, 'QUANTA COMPUTER INC'
VendorID 0x152E, 'MELEC INC'
VendorID 0x152F, 'PHILIPS-CRYPTO'
VendorID 0x1530, 'ACQIS TECHNOLOGY'
VendorID 0x1531, 'CHRYON CORP.'
VendorID 0x1532, 'ECHELON CORPORATION'
VendorID 0x1533, 'BALTIMORE'
VendorID 0x1534, 'ROAD CORPORATION'
VendorID 0x1535, 'EVERGREEN TECHNOLOGIES INC'
VendorID 0x1537, 'DATALEX COMMUNCATIONS'
VendorID 0x1538, 'ARALION INC.'
VendorID 0x1539, 'ATELIER INFORMATIQUES et ELECTRONIQUE ETUDES S.A.'
VendorID 0x153A, 'ONO SOKKI'
VendorID 0x153B, 'TERRATEC ELECTRONIC GMBH'
VendorID 0x153C, 'ANTAL ELECTRONIC'
VendorID 0x153D, 'FILANET CORPORATION'
VendorID 0x153E, 'TECHWELL INC'
VendorID 0x153F, 'MIPS DENMARK'
VendorID 0x1540, 'PROVIDEO MULTIMEDIA CO LTD'
VendorID 0x1541, 'TELOSITY INC.'
VendorID 0x1542, 'VIVID TECHNOLOGY INC'
VendorID 0x1543, 'SILICON LABORATORIES'
VendorID 0x1544, 'DCM DATA SYSTEMS'
VendorID 0x1545, 'VISIONTEK'
VendorID 0x1546, 'IOI TECHNOLOGY CORP.'
VendorID 0x1547, 'MITUTOYO CORPORATION'
VendorID 0x1548, 'JET PROPULSION LABORATORY'
VendorID 0x1549, 'INTERCONNECT SYSTEMS SOLUTIONS'
VendorID 0x154A, 'MAX TECHNOLOGIES INC.'
VendorID 0x154B, 'COMPUTEX CO LTD'
VendorID 0x154C, 'VISUAL TECHNOLOGY INC.'
VendorID 0x154D, 'PAN INTERNATIONAL INDUSTRIAL CORP'
VendorID 0x154E, 'SERVOTEST LTD'
VendorID 0x154F, 'STRATABEAM TECHNOLOGY'
VendorID 0x1550, 'OPEN NETWORK CO LTD'
VendorID 0x1551, 'SMART ELECTRONIC DEVELOPMENT GMBH'
VendorID 0x1552, 'RACAL AIRTECH LTD'
VendorID 0x1553, 'CHICONY ELECTRONICS CO LTD'
VendorID 0x1554, 'PROLINK MICROSYSTEMS CORP.'
VendorID 0x1555, 'GESYTEC GMBH'
VendorID 0x1556, 'PLD APPLICATIONS'
VendorID 0x1557, 'MEDIASTAR CO. LTD'
VendorID 0x1558, 'CLEVO/KAPOK COMPUTER'
VendorID 0x1559, 'SI LOGIC LTD'
VendorID 0x155A, 'INNOMEDIA INC'
VendorID 0x155B, 'PROTAC INTERNATIONAL CORP'
VendorID 0x155C, 'CEMAX-ICON INC'
VendorID 0x155D, 'MAC SYSTEM CO LTD'
VendorID 0x155E, 'LP ELEKTRONIK GMBH/KUKA Controls GmbH'
VendorID 0x155F, 'PERLE SYSTEMS LIMITED'
VendorID 0x1560, 'TERAYON COMMUNICATIONS SYSTEMS'
VendorID 0x1561, 'VIEWGRAPHICS INC'
VendorID 0x1562, 'Symbol Technologies, Inc.'
VendorID 0x1563, 'A-TREND'
VendorID 0x1564, 'YAMAKATSU ELECTRONICS INDUSTRY CO LTD'
VendorID 0x1565, 'BIOSTAR MICROTECH INT CORP'
VendorID 0x1566, 'ARDENT TECHNOLOGIES INC'
VendorID 0x1567, 'JUNGSOFT'
VendorID 0x1568, 'DDK ELECTRONICS INC'
VendorID 0x1569, 'PALIT MICROSYSTEMS INC'
VendorID 0x156A, 'AVTEC SYSTEMS'
VendorID 0x156B, '2WIRE'
VendorID 0x156C, 'VIDAC ELECTRONICS GMBH'
VendorID 0x156D, 'ALPHA-TOP CORP'
VendorID 0x156E, 'ALFA INC'
VendorID 0x156F, 'M-SYSTEMS FLASH DISK PIONEERS LTD'
VendorID 0x1570, 'LECROY CORPORATION'
VendorID 0x1571, 'CONTEMPORARY CONTROLS'
VendorID 0x1572, 'OTIS ELEVATOR COMPANY'
VendorID 0x1573, 'LATTICE-VANTIS'
VendorID 0x1574, 'FAIRCHILD SEMICONDUCTOR'
VendorID 0x1575, 'VOLTAIRE ADVANCED DATA SECURITY LTD'
VendorID 0x1576, 'VIEWCAST COM'
VendorID 0x1578, 'HITT'
VendorID 0x1579, 'DUAL TECHNOLOGY CORPORATION'
VendorID 0x157A, 'JAPAN ELECRONICS IND. INC'
VendorID 0x157B, 'STAR MULTIMEDIA CORP.'
VendorID 0x157C, 'EUROSOFT (UK) LTD'
VendorID 0x157D, 'GEMFLEX NETWORKS'
VendorID 0x157E, 'TRANSITION NETWORKS'
VendorID 0x157F, 'PX INSTRUMENTS TECHNOLOGY LTD'
VendorID 0x1580, 'PRIMEX AEROSPACE CO.'
VendorID 0x1581, 'SEH COMPUTERTECHNIK GMBH'
VendorID 0x1582, 'CYTEC CORPORATION'
VendorID 0x1583, 'INET TECHNOLOGIES INC'
VendorID 0x1584, 'UNIWILL COMPUTER CORP'
VendorID 0x1585, 'LOGITRON'
VendorID 0x1586, 'LANCAST INC'
VendorID 0x1587, 'KONICA CORPORATION'
VendorID 0x1588, 'SOLIDUM SYSTEMS CORP'
VendorID 0x1589, 'ATLANTEK MICROSYSTEMS PTY LTD'
VendorID 0x158A, 'DIGALOG SYSTEMS INC'
VendorID 0x158B, 'ALLIED DATA TECHNOLOGIES'
VendorID 0x158C, 'HITACHI SEMICONDUCTOR & DEVICES SALES CO LTD'
VendorID 0x158D, 'POINT MULTIMEDIA SYSTEMS'
VendorID 0x158E, 'LARA TECHNOLOGY INC'
VendorID 0x158F, 'DITECT COOP'
VendorID 0x1590, '3PARDATA'
VendorID 0x1591, 'ARN'
VendorID 0x1592, 'SYBA TECH LIMITED'
VendorID 0x1593, 'BOPS INC'
VendorID 0x1594, 'NETGAME LTD'
VendorID 0x1595, 'DIVA SYSTEMS CORP.'
VendorID 0x1596, 'FOLSOM RESEARCH INC'
VendorID 0x1597, 'MEMEC DESIGN SERVICES'
VendorID 0x1598, 'GRANITE MICROSYSTEMS'
VendorID 0x1599, 'DELTA ELECTRONICS INC'
VendorID 0x159A, 'GENERAL INSTRUMENT'
VendorID 0x159B, 'FARADAY TECHNOLOGY CORP'
VendorID 0x159C, 'STRATUS COMPUTER SYSTEMS'
VendorID 0x159D, 'NINGBO HARRISON ELECTRONICS CO LTD'
VendorID 0x159E, 'A-MAX TECHNOLOGY'
VendorID 0x159F, 'GALEA NETWORK SECURITY'
VendorID 0x15A0, 'COMPUMASTER SRL'
VendorID 0x15A1, 'GEOCAST NETWORK SYSTEMS INC'
VendorID 0x15A2, 'CATALYST ENTERPRISES INC'
VendorID 0x15A3, 'ITALTEL'
VendorID 0x15A4, 'X-NET OY'
VendorID 0x15A5, 'TOYOTA MACS INC'
VendorID 0x15A6, 'SUNLIGHT ULTRASOUND TECHNOLOGIES LTD'
VendorID 0x15A7, 'SSE TELECOM INC'
VendorID 0x15A8, 'SHANGHAI COMMUNICATIONS TECHNOLOGIES CENTER'
VendorID 0x15AA, 'MORETON BAY'
VendorID 0x15AB, 'BLUESTEEL NETWORKS INC'
VendorID 0x15AC, 'NORTH ATLANTIC INSTRUMENTS'
VendorID 0x15AD, 'VMware Inc.'
VendorID 0x15AE, 'AMERSHAM PHARMACIA BIOTECH'
VendorID 0x15B0, 'ZOLTRIX INTERNATIONAL LIMITED'
VendorID 0x15B1, 'SOURCE TECHNOLOGY INC'
VendorID 0x15B2, 'MOSAID TECHNOLOGIES INC.'
VendorID 0x15B3, 'MELLANOX TECHNOLOGY'
VendorID 0x15B4, 'CCI/TRIAD'
VendorID 0x15B5, 'CIMETRICS INC'
VendorID 0x15B6, 'TEXAS MEMORY SYSTEMS INC'
VendorID 0x15B7, 'SANDISK CORP.'
VendorID 0x15B8, 'ADDI-DATA GMBH'
VendorID 0x15B9, 'MAESTRO DIGITAL COMMUNICATIONS'
VendorID 0x15BA, 'IMPACCT TECHNOLOGY CORP'
VendorID 0x15BB, 'PORTWELL INC'
VendorID 0x15BC, 'AGILENT TECHNOLOGIES'
VendorID 0x15BD, 'DFI INC.'
VendorID 0x15BE, 'SOLA ELECTRONICS'
VendorID 0x15BF, 'HIGH TECH COMPUTER CORP (HTC)'
VendorID 0x15C0, 'BVM LIMITED'
VendorID 0x15C1, 'QUANTEL'
VendorID 0x15C2, 'NEWER TECHNOLOGY INC'
VendorID 0x15C3, 'TAIWAN MYCOMP CO LTD'
VendorID 0x15C4, 'EVSX'
VendorID 0x15C5, 'PROCOMP INFORMATICS LTD'
VendorID 0x15C6, 'TECHNICAL UNIVERSITY OF BUDAPEST'
VendorID 0x15C7, 'TATEYAMA SYSTEM LABORATORY CO LTD'
VendorID 0x15C8, 'PENTA MEDIA CO. LTD'
VendorID 0x15C9, 'SEROME TECHNOLOGY INC'
VendorID 0x15CA, 'BITBOYS OY'
VendorID 0x15CB, 'AG ELECTRONICS LTD'
VendorID 0x15CC, 'HOTRAIL INC.'
VendorID 0x15CD, 'DREAMTECH CO LTD'
VendorID 0x15CE, 'GENRAD INC.'
VendorID 0x15CF, 'HILSCHER GMBH'
VendorID 0x15D1, 'INFINEON TECHNOLOGIES AG'
VendorID 0x15D2, 'FIC (FIRST INTERNATIONAL COMPUTER INC)'
VendorID 0x15D3, 'NDS TECHNOLOGIES ISRAEL LTD'
VendorID 0x15D4, 'IWILL CORPORATION'
VendorID 0x15D5, 'TATUNG CO.'
VendorID 0x15D6, 'ENTRIDIA CORPORATION'
VendorID 0x15D7, 'Rockwell-Collins Inc'
VendorID 0x15D8, 'CYBERNETICS TECHNOLOGY CO LTD'
VendorID 0x15D9, 'SUPER MICRO COMPUTER INC'
VendorID 0x15DA, 'CYBERFIRM INC.'
VendorID 0x15DB, 'APPLIED COMPUTING SYSTEMS INC.'
VendorID 0x15DC, 'LITRONIC INC'
VendorID 0x15DD, 'SIGMATEL INC.'
VendorID 0x15DE, 'MALLEABLE TECHNOLOGIES INC'
VendorID 0x15DF, 'INFINILINK CORP.'
VendorID 0x15E0, 'CACHEFLOW INC'
VendorID 0x15E1, 'VOICE TECHNOLOGIES GROUP INC'
VendorID 0x15E2, 'QUICKNET TECHNOLOGIES INC'
VendorID 0x15E3, 'NETWORTH TECHNOLOGIES INC'
VendorID 0x15E4, 'VSN SYSTEMEN BV'
VendorID 0x15E5, 'VALLEY TECHNOLOGIES INC'
VendorID 0x15E6, 'AGERE INC.'
VendorID 0x15E7, 'GET ENGINEERING CORP.'
VendorID 0x15E8, 'NATIONAL DATACOMM CORP.'
VendorID 0x15E9, 'PACIFIC DIGITAL CORP.'
VendorID 0x15EA, 'TOKYO DENSHI SEKEI K.K.'
VendorID 0x15EB, 'DRSEARCH GMBH'
VendorID 0x15EC, 'BECKHOFF GMBH'
VendorID 0x15ED, 'MACROLINK INC'
VendorID 0x15EE, 'IN WIN DEVELOPMENT INC.'
VendorID 0x15EF, 'INTELLIGENT PARADIGM INC'
VendorID 0x15F0, 'B-TREE SYSTEMS INC'
VendorID 0x15F1, 'TIMES N SYSTEMS INC'
VendorID 0x15F2, 'DIAGNOSTIC INSTRUMENTS INC'
VendorID 0x15F3, 'DIGITMEDIA CORP.'
VendorID 0x15F4, 'VALUESOFT'
VendorID 0x15F5, 'POWER MICRO RESEARCH'
VendorID 0x15F6, 'EXTREME PACKET DEVICE INC'
VendorID 0x15F7, 'BANCTEC'
VendorID 0x15F8, 'KOGA ELECTRONICS CO'
VendorID 0x15F9, 'ZENITH ELECTRONICS CORPORATION'
VendorID 0x15FA, 'J P AXZAM CORPORATION'
VendorID 0x15FB, 'ZILOG INC.'
VendorID 0x15FC, 'TECHSAN ELECTRONICS CO LTD'
VendorID 0x15FD, 'N-CUBED.NET'
VendorID 0x15FE, 'KINPO ELECTRONICS INC'
VendorID 0x15FF, 'FASTPOINT TECHNOLOGIES INC.'
VendorID 0x1600, 'NORTHROP GRUMMAN-CANADA LTD'
VendorID 0x1601, 'TENTA TECHNOLOGY'
VendorID 0x1602, 'PROSYS-TEC INC.'
VendorID 0x1603, 'NOKIA WIRELESS BUSINESS COMMUNICATIONS'
VendorID 0x1604, 'CENTRAL SYSTEM RESEARCH CO LTD'
VendorID 0x1605, 'PAIRGAIN TECHNOLOGIES'
VendorID 0x1606, 'EUROPOP AG'
VendorID 0x1607, 'LAVA SEMICONDUCTOR MANUFACTURING INC.'
VendorID 0x1608, 'AUTOMATED WAGERING INTERNATIONAL'
VendorID 0x1609, 'SCIEMETRIC INSTRUMENTS INC'
VendorID 0x166D, 'Broadcom -SiByte'
VendorID 0x1695, 'EPOX Computer Co'
VendorID 0x17F2, 'ALBATRON Corp.'
VendorID 0x1813, 'AMBIENT TECHNOLOGIES INC'
VendorID 0x1849, 'ASROCK Inc'
VendorID 0x1B13, 'Jaton Corp'
VendorID 0x2001, 'TEMPORAL RESEARCH LTD'
VendorID 0x270F, 'CHAINTECH COMPUTER CO. LTD'
VendorID 0x3388, 'HINT CORP'
VendorID 0x3411, 'QUANTUM DESIGNS (H.K.) INC.'
VendorID 0x4005, 'AVANCE LOGIC INC'
VendorID 0x4033, 'DELTA NETWORKS INC'
VendorID 0x416C, 'ALADDIN KNOWLEDGE SYSTEMS'
VendorID 0x4444, 'CONEXANT (WAS ICOMPRESION INC.)'
VendorID 0x4943, 'GROWTH NETWORKS'
VendorID 0x4CA1, 'SEANIX TECHNOLOGY INC'
VendorID 0x4D51, 'MEDIAQ INC.'
VendorID 0x4D54, 'MICROTECHNICA CO LTD'
VendorID 0x5136, 'S S TECHNOLOGIES'
VendorID 0x5333, 'S3 Graphics Co., Ltd.'
VendorID 0x544C, 'TERALOGIC INC'
VendorID 0x5555, 'GENROCO INC'
VendorID 0x6409, 'LOGITEC CORP.'
VendorID 0x6666, 'DECISION COMPUTER INTERNATIONAL CO.'
VendorID 0x8086, 'Intel Corp.'
VendorID 0x8888, 'SILICON MAGIC CORP.'
VendorID 0x8E0E, 'COMPUTONE CORPORATION'
VendorID 0x9004, 'Adaptec Inc'
VendorID 0x919A, 'GIGAPIXEL CORP'
VendorID 0x9412, 'HOLTEK'
VendorID 0x9699, 'OMNI MEDIA TECHNOLOGY INC.'
VendorID 0x9710, 'NetMos'
VendorID 0xA0A0, 'AOPEN INC.'
VendorID 0xA259, 'HEWLETT PACKARD'
VendorID 0xAC1E, 'DIGITAL RECEIVER TECHNOLOGY INC'
VendorID 0xC0DE, 'MOTOROLA'
VendorID 0xC0FE, 'MOTION ENGINEERING.'
VendorID 0xCA50, 'VARIAN AUSTRIALIA PTY LTD'
VendorID 0xCAFE, 'CHRYSALIS-ITS'
VendorID 0xCCCC, 'CATAPULT COMMUNICATIONS'
VendorID 0xD4D4, 'DY4 Systems Inc/Curtiss-Wright Controls Embed. Com'
VendorID 0xE159, 'TigerJet'
VendorID 0xE4BF, 'EKF ELEKTRONIK GMBH'
VendorID 0xEA01, 'EAGLE TECHNOLOGY'
VendorID 0xFA57, 'FAST SEARCH & TRANSFER ASA'
VendorID 0xFEDA, 'EPIGRAM INC'
VendorID 0, 'Unknown' ; <- terminator
 
;--------------------------------------
Classes:
; Class, Subclass, [Interface], Name
ClassID 2, 0, , 'Ethernet'
ClassID 2, 1, , 'Token Ring'
ClassID 2, 2, , 'FDDI'
ClassID 2, 3, , 'ATM'
ClassID 2, 4, , 'ISDN'
ClassID 2, 5, , 'WorldFip'
ClassID 2, 6, , 'PICMG 2.14'
ClassID 2, 0x80, , 'misc'
 
ClassID 0x0d, 0x20, , 'Wlan (802.11a)'
ClassID 0x0d, 0x21, , 'Wlan (802.11b)'
 
 
ClassID 0xff, 0xff, , 'Unknown' ; <- terminator