Microsoft KB Archive/39235

= Declaring a Communal Variable of a Record Type =

Article ID: 39235

Article Last Modified on 10/22/2003

-

APPLIES TO


 * Microsoft Macro Assembler 5.0
 * Microsoft Macro Assembler 5.1 Standard Edition
 * Microsoft Macro Assembler 5.1a
 * Microsoft Macro Assembler 6.0 Standard Edition
 * Microsoft Macro Assembler 6.0a
 * Microsoft Macro Assembler 6.0b

-



This article was previously published under Q39235



SUMMARY
In order to declare a communal variable of a record type, declare the variable whose size matches the size of the record type. There is no need to specify that the variable is of the record type.



MORE INFORMATION
The following sample program demonstrates this information:

Sample Code
;Assemble options needed: none


 * module 1

.model small DOSSEG

EXTRN  proc2:proc .stack 100h

.data color  RECORD   blink:1, back:3, intense:1, fore:3 COMM    near pixel:byte     ; use &quot;byte&quot; because ; color has size byte. .code start: MOV ax, @data MOV ds, ax

MOV pixel, color <1,2,1,3> ; now the variable pixel ; should contain abh (1 010 1 011) CALL proc2 MOV ax, 4c00h INT 21h

END start


 * module 2
 * module 2

.model small DOSSEG

.stack 100h

.data color  RECORD   blink:1, back:3, intense:1, fore:3 COMM    near pixel:byte

.code PUBLIC proc2

proc2  PROC MOV ah, 0 MOV ah, pixel ; ah should contain abh (1 010 1 011) RET proc2  ENDP

END

Additional query words: 5.00 5.10 5.10a 6.00 6.00a 6.00b

Keywords: KB39235

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.