News:

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

Win32 magnifier development problems

Started by iAPX86, July 22, 2005, 07:32:35 AM

Previous topic - Next topic

iAPX86

I must build a super-efficient windows magnifier program.  It must pick up a small rectangle of pixels from underneath the magnifier window, which must track the mouse, and stretch it to its own larger rectangular window.  It must continue performing this operation nonstop to redisplay movies running in Microsoft Windows Media Player (WMP) without slowing WMP down.

As a mathematician, I have been exploring a new model for visual processing by nervous systems.  It has already successfully demonstrated characteristics known to experimental psychologists but not achieved using even the most sophisticated published image transform techniques.  For instance, I can discriminate three points from their diffraction pattern when the distance apart is less than 1/10th Airy disk radius, and the image contains only the first two rings, plus a bit of the third.

My goal is to perform transforms on the pixel buffer after picking it up and prior to stretching it onto the larger window.  The transforms are many layers deep (over 20 layers).  Some of the transforms are quite commonplace, such as convolving the image with an averaging window.  Others are harder to describe, but involve various distribution and collection strategies.  The combination of transforms is very expensive to calculate.  I have had some success with C++ valarrays, but covet the improvement I know can be had from assembler.  I am aiming to have a frame rate of about 20 to 40 frames per second with a window size of about 256 by 256.

I am excruciatingly pained by my poor understanding of Windows programming and have been held up for months and could be held up for more months trying to get the simple magnifier foundation working properly.  I find that I am fairly quick when designing and writing fast algorithms, but horribly slow with Windows basics.

The honest truth is that I am competent at Intel iAPX86 assembly, but largely incompetent in Windows, although a heavy user.  Do you think you could advise me how to make the magnifier foundation program?  Helping me choose the right assembler would be a start.  I am intrigued by RosAsm (used to be Spasm).  MASM appears to be the standard, though, and I will assume that is the one to use.

This last question is asking too much, but, if that foundation is already available, I would be very grateful for a URL.

Farabi

The only thing I know is to resize a pixel you have to made a rect pixel.

Use strech bit block transfer, it is already on the Windows API. But if you want to made your own function it will not be easy, at least for me.
Those who had universe knowledges can control the world by a micro processor.
http://www.wix.com/farabio/firstpage

"Etos siperi elegi"