how to change background color screen to display masm32 !! :icon_exclaim:
I am not sure what you mean but if its the editor colour, go to the settings on the edit menu and change the colours to what you find OK.
not color masm32 editor
but color window to display results (of after run program) :icon_exclaim:
Quote from: imadhx30 on March 04, 2014, 06:53:22 AMbut color window to display results (of after run program) :icon_exclaim:
GUI or console window? More details please!! :icon_exclaim:
If I understand you correctly, you execute a program created by masm32. If this is a Console App, then right click in the Title bar, and select Properties, then select Colors. Someone else (Hutch?) will have to explain what to do if this is a windows App.
Dave.
it can be done programatically in the console by using FillConsoleOutputAttribute
this is a console clear screen routine - it uses the current colors
but, i commented the line where DX holds a word with attributes
you can set that to whatever foreground/background combination you like
;***********************************************************************************************
ConCls PROC USES EBX
;Console Clear-Screen
;Version 1.0, David R. Sheldon, 10-2013
;-----------------------------------
;Call With: Nothing
;
; Returns: EAX = hStdOut, console output handle
; ECX = total number of characters in screen buffer
; EDX = buffer character attributes used to clear screen
;
;Also Uses: EBX, ESI, EDI, EBP are preserved
;-----------------------------------
LOCAL _csbi :CONSOLE_SCREEN_BUFFER_INFO
LOCAL _nChars :DWORD
;-----------------------------------
INVOKE GetStdHandle,STD_OUTPUT_HANDLE
xchg eax,ebx ;EBX = hConsole
INVOKE GetConsoleScreenBufferInfo,ebx,addr _csbi
movzx eax,word ptr _csbi.dwSize.x
movzx edx,word ptr _csbi.dwSize.y
lea ecx,_nChars
mul edx
INVOKE FillConsoleOutputCharacter,ebx,32,eax,0,ecx
movzx edx,word ptr _csbi.wAttributes ;DX = current attributes
push edx
INVOKE FillConsoleOutputAttribute,ebx,edx,_nChars,0,addr _nChars
INVOKE SetConsoleCursorPosition,ebx,0
xchg eax,ebx
mov ecx,_nChars
pop edx
ret
ConCls ENDP
;***********************************************************************************************
http://msdn.microsoft.com/en-us/library/windows/desktop/ms682662%28v=vs.85%29.aspx (http://msdn.microsoft.com/en-us/library/windows/desktop/ms682662%28v=vs.85%29.aspx)
http://msdn.microsoft.com/en-us/library/windows/desktop/ms682088%28v=vs.85%29.aspx#_win32_character_attributes (http://msdn.microsoft.com/en-us/library/windows/desktop/ms682088%28v=vs.85%29.aspx#_win32_character_attributes)
ok - slight problem
the above code sets the attributes in the buffer
however, any new text displayed uses the current console attributes
by calling both FillConsoleOutputAttribute and SetConsoleTextAttribute, you set both
see the attached...
thank you dedndav :t
:t