News:

MASM32 SDK Description, downloads and other helpful links
MASM32.com New Forum Link
masmforum WebSite

MemInfoMicro : The Return

Started by Antariy, October 25, 2010, 09:07:43 PM

Previous topic - Next topic

Antariy

Quote from: MichaelW on October 30, 2010, 09:54:40 PM
I forgot to add that the color is off because the display on that system has no red output.

Michael, probably, if I understand right, you meant that the icon does not have red channel?
If that - this is not because hardware things, this is because program change color of the indicator automatically - the more free RAM is available - the much green the indicator; the less memory is available - the more is orange an indicator. This is part of the program. Your Win95 system has very many free RAM - the indicator is bright-green. The color changements of indicator have high sensitivity, dependedly from RAM loading.



Alex

MichaelW

QuoteYour archive, which I downloaded at first time, contains the colored image. ???

Yes, it does. I'm half asleep again, thinking that I was capturing what was actually displayed, instead of what Windows was trying to display.
eschew obfuscation

Antariy

Quote from: MichaelW on October 30, 2010, 10:25:50 PM
QuoteYour archive, which I downloaded at first time, contains the colored image. ???
Yes, it does. I'm half asleep again, thinking that I was capturing what was actually displayed, instead of what Windows was trying to display.

Yes, indicator is green because many free RAM is available. So, all things in program works as planned even on Win95  :bg
Thank you!



Alex

GregL

Quote from: Alex... the more free RAM is available - the much green the indicator; the less memory is available - the more is orange an indicator.

Do you use the MEMORYSTATUSEX.dwMemoryLoad value for this calculation?

Antariy

Quote from: GregL on October 30, 2010, 10:36:30 PM
Quote from: Alex... the more free RAM is available - the much green the indicator; the less memory is available - the more is orange an indicator.

Do you use the MEMORYSTATUSEX.dwMemoryLoad value for this calculation?

No. Current program's algo have 128 levels of the sensitivity, not 100 as in dwMemoryLoad. I use unified loading of size of free memory and total memory size. After that calculated the green channel. Red channel is inversion of the green channel.



Alex

Antariy

Quote from: GregL on October 30, 2010, 10:36:30 PM
Do you use the MEMORYSTATUSEX.dwMemoryLoad value for this calculation?

Probably you found the new way to decrease the program's size for about ~10 bytes, at least.  :bg
But current algo is maded intentionally - must I do something different from Windows?!  :bg



Alex

Antariy

Anybody have a Windows Vista x64? To test the program on it.



Alex

Antariy

Quote from: GregL on October 30, 2010, 10:36:30 PM
Quote from: Alex... the more free RAM is available - the much green the indicator; the less memory is available - the more is orange an indicator.

Do you use the MEMORYSTATUSEX.dwMemoryLoad value for this calculation?

Why I have suggested to see the program under debugger - is fact that you see its algo in work.

You will see, that program use one code path to work with absolutely different structures of two APIs - GlobalMemoryStatus and GlobalMemoryStatusEx.
All needed offsets of members in that structures is different, so code is needed to be universal - it *must* work with different structures, and it *do* that. One part of this - is patching the code, other part of this - is using of unified code, which depends from variables. That variables is setted dependedly from current system capabilityes.

EDITED: Patching change the datasize of FPU loadings only. The variables provide selection of members from different structures.



Alex

Gunther

Alex,

here is the Wine image:



At your service, every day, Alex.

Gunther
Forgive your enemies, but never forget their names.

Antariy


Gunther

Quote from: Antariy, November 28, 2010, at 10:21:56 PMThank you very much!

You're welcome, Alex.

Gunther
Forgive your enemies, but never forget their names.

Antariy

New update of MemInfoMicro is available. The program is 976 bytes long now (8 bytes less).

See the first post of the thread for an updated archive.



Alex

jj2007

It still says that half of my one Gig of RAM is completely wasted. This Forum is just no good for the hardware market.

Antariy

Quote from: jj2007 on December 12, 2010, 11:22:34 PM
It still says that half of my one Gig of RAM is completely wasted. This Forum is just no good for the hardware market.

You meant that that Windows eats too much?

dedndave

i am like Jochen - lol
i need to buy some more RAM for this machine   :P
it has (4) 256 Mb PC-3200 400 MHz DDR SIP's
i need to see what it takes to upgrade
it should be on my christmas list   :bg