OCALS
        LOCAL area, uint32_t, 1
    ENDLOCALS
        INVOKE calc_area, my_rect
	mov uint32_t [var(.area)], eax
        INVOKE printf, message, uint32_t [var(.area)]
    ENDPROC

    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    [section .data]
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

    message: declare(NASMX_TCHAR) NASMX_TEXT('area of rectangle = %d'),13,10,0

    ; instantiate a 20 x 20 rectangle
    NASMX_ISTRUC my_rect, RECT
        NASMX_AT top_left.x, 10
        NASMX_AT top_left.y, 10
 