News:

Masm32 SDK description, downloads and other helpful links
Message to All Guests
NB: Posting URL's See here: Posted URL Change

Main Menu

Game of Life

Started by zedd151, June 29, 2024, 08:11:25 AM

Previous topic - Next topic

daydreamer

Quote from: tenkey on August 24, 2024, 02:11:41 AM
Quote from: NoCforMe on August 23, 2024, 03:06:18 PMJust curious: why did you feel compelled to move this into 64-bit land?
I'm interested in 64-bit and I've known about Conway's Life for a long time. People have been creating patterns on very large playing fields. That calls for the ability to zoom the display in and out, as some visual effects can only be seen from a macro view. The large amount of data means speed and compactness become important. My effort is just a tiny poke into this world.

I suppose I should make a UASM version. It will break MASM compatibility. But it would be cleaner.
Kudos for 64 bit version
I am interested in 128bit SIMD and MMX later SSE2 instructions are made for speedup image processing and if user has 4k screen ,option for use that kind of screen resolution and padd  instructions you can add together number of neighbouring pixels in parallel
my none asm creations
https://masm32.com/board/index.php?topic=6937.msg74303#msg74303
I am an Invoker
"An Invoker is a mage who specializes in the manipulation of raw and elemental energies."
Like SIMD coding

tenkey

Quote from: sinsi on August 24, 2024, 12:11:38 PM
Quote from: jj2007 on August 23, 2024, 05:26:22 PMand you can use push & pop where needed:
If you know what you are doing  :biggrin:
Dangerous otherwise.


AFAICT it's only a real concern if you want to handle exceptions or pass exceptions back to C++ code. An interesting question is if UASM PROC args, USES, LOCALs, INVOKE, and RET properly work together--involving issues I had to consider when constructing STRUCTs for local (stack) data.

sinsi

If you ignore shadow/spill space, ML64 will correctly setup LOCAL variables, PROC args and USES via RBP.
You still need to spill the first 4 args if needed, though.

tenkey

Quote from: tenkey on August 25, 2024, 01:52:38 AMAn interesting question is if UASM PROC args, USES, LOCALs, INVOKE, and RET properly work together--involving issues I had to consider when constructing STRUCTs for local (stack) data.

The automatic generation of STACKBASE:RSP code is broken, so there will not be a UASM version of Life. I have some ideas for fixing it.

There is an almost MASM-compatible interface with STACKBASE:RBP (default), but that's not what I'm aiming for.