Subversion Repositories Kolibri OS

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
205 heavyiron 1
;
2
;
3
;
4
; Вкладка тестов
5
;
6
;
7
;
8
;
9
; "GenuineIntel" - International Electronics
10
; "GenuineTMx86" - Transmeta Processor
11
; "AuthenticAMD" - Advanced Micro Devices
12
; "AMD ISBETTER" - Advanced Micro Devices
13
; "UMC UMC UMC " - United Microelectronics Corporation
14
; "CyrixInstead" - Cyrix Processor
15
; "Geode by NSC" - National Semiconductor Processor
16
; "SiS SiS SiS " - SiS Processor
17
; "RiseRiseRise" - Rise Processor
18
; "NexGenDriven" - NexGen Processor  (acquired by AMD)
19
; "CentaurHauls" - IDT/Centaur, now VIA Processor
20
 
21
	; Pentium (P5) button
22
	mov	eax, 8
23
	mov	ebx, 17 * 65536 + 145
24
	mov	ecx, 277 * 65536 + 25
25
	mov	edx, 6
26
	mov	esi, tcol
27
	cmp	byte[Vendor + 11], 'l'
28
	jne	p5n
29
	cmp	byte[CPU_fam], 5
30
	jne	p5n
31
	mov	esi, atcol
32
p5n:	int	0x40
33
	; Pentium Pro / II / III (P6) button
34
	add	ecx, 27 * 65536
35
	inc	edx
36
	mov	esi, tcol
37
	cmp	byte[Vendor + 11], 'l'
38
	jne	p6n
39
	cmp	byte[CPU_fam], 6
40
	jne	p6n
41
	mov	esi, atcol
42
p6n:	int	0x40
43
	; AMD K6 button
44
	add	ecx, 27 * 65536
45
	inc	edx
46
	mov	esi, tcol
47
	cmp	byte[Vendor], 'A'
48
	jne	k6n
49
	cmp	byte[CPU_fam], 5
50
	jne	k6n
51
	mov	esi, atcol
52
k6n:	int	0x40
53
	; AMD K7 (Athlon / Duron)
54
	add	ecx, 27 * 65536
55
	inc	edx
56
	mov	esi, tcol
57
	cmp	byte[Vendor], 'A'
58
	jne	k7n
59
	cmp	byte[CPU_fam], 6
60
	jne	k7n
61
	mov	esi, atcol
62
k7n:	int	0x40
63
	; MMX тест
64
	; add	ecx, 27 * 65536
65
	; inc	edx
66
	; mov	esi, tcol
67
	; cmp	byte[CPU_mmx], 1
68
	; jne	mmxn
69
	; mov	esi, atcol
70
; mmxn:	int	0x40
71
	; Пишем названия кнопок
72
	mov	eax, 4
73
	mov	ebx, 30 * 65536 + 287
74
	mov	esi, 7
75
	mov	edx, tmsg_p	; P5
76
	mov	ecx, 0x10000000
77
	cmp	byte[test_id], 6
78
	jne	nr1
79
	mov	ecx, 0x10FF0000
80
nr1:	int	0x40
81
	mov	ebx, 30 * 65536 + 287 + 27
82
	mov	esi, 20		; P6
83
	mov	ecx, 0x10000000
84
	cmp	byte[test_id], 7
85
	jne	nr2
86
	mov	ecx, 0x10FF0000
87
nr2:	int	0x40
88
	mov	ebx, 30 * 65536 + 287 + 27 + 27
89
	mov	edx, tmsg_k6	; K6
90
	mov	esi, 13
91
	mov	ecx, 0x10000000
92
	cmp	byte[test_id], 8
93
	jne	nr3
94
	mov	ecx, 0x10FF0000
95
nr3:	int	0x40
96
	mov	ebx, 30 * 65536 + 287 + 27 + 27 + 27
97
	mov	edx, tmsg_k7	; K7
98
	mov	esi, 15
99
	mov	ecx, 0x10000000
100
	cmp	byte[test_id], 9
101
	jne	nr4
102
	mov	ecx, 0x10FF0000
103
nr4:	int	0x40
104
	; mov	ebx, 30 * 65536 + 287 + 27 + 27 + 27 + 27
105
	; mov	edx, tmsg_mmx	; MMX
106
	; mov	esi, 12
107
	; mov	ecx, 0x10000000
108
	; cmp	byte[test_id], 10
109
	; jne	nr5
110
	; mov	ecx, 0x10FF0000
111
; nr5:	int	0x40
112
	; recommendate
113
	mov	ecx, 0x10000000
114
	mov	ebx, 190 * 65536 + 400
115
	mov	edx, tmsg_rec
116
	mov	esi, 14
117
	int	0x40
118
	; read about
119
	mov	ebx, 30 * 65536 + 262
120
	mov	edx, tmsg_war
121
	mov	esi, 34
122
	mov	ecx, 0x10FF0000
123
	int	0x40
124
	; recommendate color
125
	mov	eax, 13
126
	mov	ebx, 170 * 65536 + 10
127
	mov	ecx, 398 * 65536 + 10
128
	mov	edx, atcol
129
	int	0x40
130
 
131
 
132
	jmp	end_drow_tab
133
 
134
tmsg_p	db	'Pentium (Pro/II/III)'	; 7/20
135
tmsg_k6	db	'K6 (I/II/III)'		; 13
136
tmsg_k7	db	'K7/Athlon/Duron'	; 15
137
;tmsg_mmx db	'MMX (memory)'		; 12
138
tmsg_rec db	'- recommendate'	; 14
139
tmsg_war db	'May permanent damage to electronic' ; 34