conditional assembly problem

From: Jackson A. Marshall (
Date: 01/21/05

Date: Fri, 21 Jan 2005 18:45:07 +0000 (UTC)

Using "Microsoft (R) Macro Assembler Version 6.11"

Conditional assembly problem. I wish
to exclude part of an array of structures
but it is not working :

include file
NPB typedef near ptr byte
true equ 1
false equ 0

use3and4 equ false ; conditional

Some struct
 next NPB ?
 last NPB ?
Some ends
pSome typedef ptr Some

data area
$one db "one",0
$two db "two",0
$three db "three",0
$four db "four",0
$five db "five",0
$six db "six",0

; Some array
some Some \
{ offset $one, offset $two },
IF use3and4 eq true
{ offset $three, offset $four },
{ offset $five, offset $six }

typical code
  mov bx, offset some
  assume bx : pSome
  mov si, [bx].last ; get ptr
  assume bx : nothing
  insert "some[0].last = %s\n", bx
  invoke printf, bx, si


"Capitalism is the extraordinary belief that the
nastiest of men, for the nastiest of reasons, will
somehow work for the benefit of us all."
[John Maynard Keynes]