Subversion Repositories Kolibri OS

Rev

Rev 223 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 223 Rev 313
-
 
1
;
-
 
2
; Ghost Monitor - óòèëèòà (ñòðåññ) òåñòèðîâàíèÿ è ìîíèòîðèíãà ñèñòåìû
-
 
3
; Copyright (C) 2005, 2006, 2007 Mihailov Ilia (ghost.nsk@mail.ru)
-
 
4
; All Right Reserved
-
 
5
 
1
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
6
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
2
; SMBus interface
7
; SMBus interface
3
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
8
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
4
 
9
 
5
;include		'smb_nf2.inc'
10
include		'smb_nf2.inc'
6
 
11
 
7
smb_base	dd	0	; IO port base for SMBus acces
12
smb_base	dd	0	; IO port base for SMBus acces
8
smb_slave	dd	0	; SMBus addres for monitoring chip
13
smb_slave	dd	0	; SMBus addres for monitoring chip
9
 
14
 
10
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
15
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
11
smbInit:
16
smbInit:
12
	; Èçìåíèòü, êîä òîëüêî äëÿ òåñòèðîâàíèÿ !!!
17
	; Èçìåíèòü, êîä òîëüêî äëÿ òåñòèðîâàíèÿ !!!
13
	; mov	dword[IO_Read ], nf2_readb
18
	; mov	dword[IO_Read ], nf2_readb
14
	; mov	dword[IO_Write], nf2_writeb
19
	; mov	dword[IO_Write], nf2_writeb
15
	
20
	
16
	
21
	
17
	; See pci_pm.c -> pci_pm_smb_prob
22
	; See pci_pm.c -> pci_pm_smb_prob
18
	
23
	
19
 
24
 
20
.exit_err:
25
.exit_err:
21
	stc
26
	stc
22
	ret
27
	ret
23
.exit_ok:
28
.exit_ok:
24
	clc
29
	clc
25
	ret
30
	ret
26
	
31
	
27
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
32
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
28
; pci_bus_num:	db	2	; Íîìåð øèíû
33
; pci_bus_num:	db	2	; Íîìåð øèíû
29
; pci_devfn:	db	255
34
; pci_devfn:	db	255
30
 
35
 
31
; find_north_bridg:
36
; find_north_bridg:
32
	; mov	bl, 6
37
	; mov	bl, 6
33
	; xor	cl, cl
38
	; xor	cl, cl
34
; nbus:	mov	bh, [pci_bus_num]
39
; nbus:	mov	bh, [pci_bus_num]
35
; ndevfn:	mov	ch, [pci_devfn]
40
; ndevfn:	mov	ch, [pci_devfn]
36
	; mov	eax, 62
41
	; mov	eax, 62
37
	; int	0x40
42
	; int	0x40
38
	; cmp	eax, 0xffffffff
43
	; cmp	eax, 0xffffffff
39
	; je	bd_next
44
	; je	bd_next
40
	;;;;---------
45
	;;;;---------
41
	; mov	esi, bd_table_end - bd_table - 12
46
	; mov	esi, bd_table_end - bd_table - 12
42
; @@:	cmp	eax, [bd_table + esi]
47
; @@:	cmp	eax, [bd_table + esi]
43
	; je	bd_found
48
	; je	bd_found
44
	; test	esi, esi
49
	; test	esi, esi
45
	; jz	bd_next
50
	; jz	bd_next
46
	; sub	esi, 12
51
	; sub	esi, 12
47
	; jmp	@b
52
	; jmp	@b
48
	;;;;---------
53
	;;;;---------
49
; bd_next:dec	byte[pci_devfn]
54
; bd_next:dec	byte[pci_devfn]
50
	; jns	ndevfn
55
	; jns	ndevfn
51
	; mov	byte[pci_devfn], 0
56
	; mov	byte[pci_devfn], 0
52
	; dec	byte[pci_bus_num]
57
	; dec	byte[pci_bus_num]
53
	; jns	nbus
58
	; jns	nbus
54
	; ret
59
	; ret
55
; bd_found:
60
; bd_found:
56
	; add	esi, bd_table + 4
61
	; add	esi, bd_table + 4
57
	; mov	edi, nb_name
62
	; mov	edi, nb_name
58
	; mov	ecx, 2
63
	; mov	ecx, 2
59
	; rep	movsd
64
	; rep	movsd
60
 
65
 
61
	; mov	[bd_id], eax
66
	; mov	[bd_id], eax
62
	; ret
67
	; ret
63
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
68
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
64
smbClose:
69
smbClose:
65
	
70
	
66
	ret
71
	ret
67
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
72
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=