kolibrios/kernel/branches/Kolibri-A/utilities/amon/diag.inc
Artem Jerdev (art_zh) e626668c98 A-version of GMON
git-svn-id: svn://kolibrios.org@3007 a494cfbc-eb01-0410-851d-a64ba20cac60
2012-11-05 20:19:33 +00:00

64 lines
1.1 KiB
PHP

;
; Ghost Monitor - óòèëèòà (ñòðåññ) òåñòèðîâàíèÿ è ìîíèòîðèíãà ñèñòåìû
; Copyright (C) 2005, 2006, 2007 Mihailov Ilia (ghost.nsk@mail.ru)
; All Right Reserved
; struc DiagramData size,color
; {
; .color dd color
; times size db 0 ;;change to value > 100
; }
;------------------------------------------------------
d_show:
; esi - pointer to struct
; åñëè öâåò ôîíà, òî íå ðèñóåì
cmp dword[esi], tcol
jne @f
ret
@@: pusha
mov edx, [esi]
add esi, 4
mov edi, esi
add edi, 285
mov ebx, 12 * 65536 + 13
xor eax, eax
lodsb
mov cx, 240
sub ecx, eax
@@: shl ecx, 16
mov cx, 240
lodsb
sub ecx, eax
mov eax, 38
int 0x40
add ebx, 0x10001
cmp esi, edi
jle @b
popa
ret
;------------------------------------------------------
d_add:
; esi - pointer to struct
; al - value
pusha
cmp byte [diag_add_v], 0 ; äîáàâëÿåì òîëüêî ïî òàéìåðó
je d_add_end
cld
mov ecx, 285
add esi, 4
mov edi, esi
inc esi
rep movsb
cmp al, 100
jbe @f
mov al, 100
@@: mov [edi], al
d_add_end:
popa
ret