The MASM Forum

Projects => Rarely Used Projects => GoAsm => Topic started by: Borneq on December 14, 2012, 04:55:26 AM

Title: Adress by letter?
Post by: Borneq on December 14, 2012, 04:55:26 AM
I view sample except2.asm from Except32.zip from http://godevtool.com/ExceptFrame.htm (http://godevtool.com/ExceptFrame.htm)
Is unclear for me what is a letter B and D? CMP B[EXC_TYPE],104D
OR B[HANDLERFLAG],1     ;ensure that read/write message is written into listbox
CMP B[EXC_TYPE],104D    ;see if read test
TEST B[HANDLERFLAG],1   ;see if first read/write message
AND B[HANDLERFLAG],0FEh ;don't come here again
CMP D[EBX+14h],1        ;see if write error flag from 1st part of array
ADD D[RECT],2           ;allow for lhs border
MOV D[MESSDELAY],3000D  ;3 seconds
Title: Re: Adress by letter?
Post by: ragdog on December 14, 2012, 05:11:11 AM
Hi

I canot Goasm but i think B for Byte and D for dword ;)
Title: Re: Adress by letter?
Post by: Borneq on December 14, 2012, 06:34:57 AM
Is "CMP B[EXC_TYPE],104D"
Title: Re: Adress by letter?
Post by: dedndave on December 14, 2012, 06:40:33 AM
that one caught my eye, too - lol
but "104D" is 104 decimal   :P
so, that is a valid byte comparison
Title: Re: Adress by letter?
Post by: Donkey on December 16, 2012, 01:06:04 PM
Hi,

As stated above the type indicators (BWD & Q) are used to specify the width of the data being acted about when it is not implicite in the instruction. That normally happens when moving absolutes into and out of memory as well as other partial mov instructions such as MOVSX. Unlike MASM, GoAsm does not strongly type memory based data so you must specify how much you wish to act upon.

Edgar