The MASM Forum

Members Gallery => Showcase => Topic started by: fearless on July 14, 2019, 06:45:43 AM

Title: MemStatTray UASM x64
Post by: fearless on July 14, 2019, 06:45:43 AM
I created an x64 version of the MemStatTray demo with UASM, to compliment the x86 version in the other topic
Title: Re: MemStatTray UASM x64
Post by: hutch-- on July 14, 2019, 09:47:31 AM
Just tested the file, works fine.  :thumbsup:
Title: Re: MemStatTray UASM x64
Post by: LiaoMi on July 18, 2019, 07:13:23 AM
I created an x64 version of the MemStatTray demo with UASM, to compliment the x86 version in the other topic

Hi fearless,

after three days of intensive use, I noticed that the numbers in the tray no longer change, it's hard to say what influenced this behavior, even if I reset all memory to 30 percent, nothing changes. Any suggestions?
Title: Re: MemStatTray UASM x64
Post by: fearless on July 18, 2019, 08:59:11 AM
Might be a gdi leak somewhere, or a memory leak with constantly setting the shellnotify stuff maybe?
Title: Re: MemStatTray UASM x64
Post by: aw27 on July 19, 2019, 06:59:26 AM
Invoke MUITrayMenuSetTrayIconText, hTrayMenu, Addr szMemLoadPercent, NULL, MUI_RGBCOLOR(96,176,207)
mov hTMIcon, rax ; save returned icon handle for later

does not check for errors coming from MUITrayMenuSetTrayIconText, when it returns NULL in 2 instances.
Title: Re: MemStatTray UASM x64
Post by: fearless on July 19, 2019, 07:04:02 AM
Ok, thanks for looking into it
Title: Re: MemStatTray UASM x64
Post by: aw27 on July 20, 2019, 12:17:12 AM
Ok, thanks for looking into it
I wonder why you did not provide the 64-bit versions of the ModernUI libraries, including source code, required to build your program. A possible cause for the bug is a defective translation to 64-bit.
Title: Re: MemStatTray UASM x64
Post by: LiaoMi on July 20, 2019, 01:24:28 AM
I have repeated the bug three times, unfortunately the attachment through debugger does not work  :sad:
Title: Re: MemStatTray UASM x64
Post by: fearless on July 20, 2019, 07:38:03 AM
I wonder why you did not provide the 64-bit versions of the ModernUI libraries, including source code, required to build your program
The libraries including source code are always available at the github repository: https://github.com/mrfearless/ModernUI and https://github.com/mrfearless/ModernUI64

I didn't include them mainly due to lazyness.

A possible cause for the bug is a defective translation to 64-bit.
Yes its possible there is some bugs in the porting process - I will try and look into it when I get a chance - the x64 version of the libraries are always a little bit behind and any fixes in the x86 version might not have been implemented in the x64 version - or I overlooked/forgot to do them.
Title: Re: MemStatTray UASM x64
Post by: aw27 on July 20, 2019, 04:34:02 PM
Quote
The libraries including source code are always available at the github repository: https://github.com/mrfearless/ModernUI and https://github.com/mrfearless/ModernUI64

I have not seen it because it is not pinned in https://github.com/mrfearless, I should have looked better.

Anyway, it is always a PITA to build when we are dealing with libraries we are not used to, then fix the UASM include files which were never properly updated to 64-bit then look for the definition of some macros that appear out of the blue. This does not apply specifically to the MemStatTrayx64 or to your good work in general.

Title: Re: MemStatTray UASM x64
Post by: hutch-- on July 21, 2019, 02:56:23 AM
I split the topic as I did not want fearless's thread to be ruined by arguments. The rest of the topic is where its easy enough to argue in without wrecking this topic.