                           Modifying Group Icons



	Windows 3.0 is a terrific program. 

	One of the things that makes it such a great program is it's
capacity to allow the user to configure so many parts of it to the
user's own personal preferences. Experimentation with the Control
Panel, especially the specialty palette, should result in color
settings that can please anyone's taste.

	One of the things that Microsoft does not yet let one
customize are the boring Group Icons in the Program Manager. (I'm
hoping that Microsoft fixes this in the next version.) Until you
get into a specific group, it all looks pretty drab. All of the
icons are identical, so that you cannot select them on the basis
of differences in color or design, as one should be able to do with
a GUI. This has lead some people to "save" the program manager, at
the end of a session, so that it next starts with several groups
already opened. 

	I was personally determined to find a way to change the icons
themselves. I uploaded several messages to Compuserve's Window's
forum, but everyone said it couldn't be done. 

	They were, in fact, both right and wrong. After some time with
the Windows' Technical Reference Manual, and several hours of
experimentation, I have learned a great deal about group icons. 

	It is, first of all, correct that the Program Manager group
icons cannot yet be differentiated. Unlike what one can do through
the "Properties" utility for individual programs (which is great,
and has led to the development of hundreds of creative icons),
there is no way to get the PM to call anything but the same group
file icon for every group. The Program Manager simply makes the
same icon call to the section in itself where the group icon map
is located. (The PM also contains the eight other basic PM icons:
windows, DOS, etc).

	It is possible, however, to modify the internal map of the
Group Icon, so that at least the multiple opening group icons look
more colorful and reflective of the Windows user. The following procedure 
will allow the user to change the colors of the 3 lower file folders in the icon, the 3 upper folders, and the top border. (With just a little more experimentation, it is also possible to modify the design of the icon and colors in the remaining areas: side border, internal background, etc). 

What you need:
	1. To take personal responsibility for the modifications to
the Program Manager that you make.
	2. A back-up copy of the Progman.exe file, in case you make
a mistake. 
	3. A file sector editor: Professional Master-Key, Norton, etc.
	4. A VGA display, I think. PM contains and calls different
icon maps depending on the kind of display that Windows believes
that you are using. I have only found, and worked with, the map
called for VGA. You can try these changes for other displays, but
I'm not sure what you'll get.

What to do:
	1. Load Progman.exe into the file edit area of the sector
editor. 
	2. Go to relative sector 102. (All of the icon maps are
located at this end of the PM file.) You should see a display like
that below. I have marked with symbols the 3 sections of bytes that
you will want to change. (There will be other numbers/letters
currently in the spaces marked with the symbols.)

 3FFFFFFC 3FFFFFFC 3818181C 3BDBDBDC 3BDBDBDC 3BDBDBDC
 3B1B1B1C 3B3B3B3C 3878787C 3FFFFFFC 3FFFFFFC 3818181C
 3BDBDBDC 3BDBDBDC 3BDBDBDC 3B1B1B1C 3B3B3B3C 3878787C
 3FFFFFFC 3FFFFFFC 00000000 2AAAAAA8 15555554 00000000
 00000000 00000000 00000000 00000000 FFFFFFFF FFFFFFFF
 FFFFFFFF 80000001 80000001 80000001 80000001 80000001
 80000001 80000001 80000001 80000001 80000001 80000001
 80000001 80000001 80000001 80000001 80000001 80000001
 80000001 80000001 80000001 80000001 80000001 80000001
 80000001 80000001 FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF
 28000000 20000000 40000000 01000400 00000000 00000000
 00000000 00000000 00000000 00000000 00000000 00008000
 00800000 00808000 80000000 80008000 80800000 80808000
 C0C0C000 0000FF00 00FF0000 00FFFF00 FF000000 FF00FF00
 FFFF0000 FFFFFF00 00000000 00000000 00000000 00000000
 00000000 00000000 00000000 00000000 00777777 77777777
 77777777 77777777 00777777 77777777 77777777 77777777
 00000000 00000000 00000000 00000077 0FFFFFFF FFFFFFFF
 FFFFFFFF FFFFF077 0FFFFFFF FFFFFFFF FFFFFFFF FFFFF077 ??= 24 bytes
 0FFF0000 00FF0000 00FF0000 00FFF077 0FFF0??? ?0FF0??? for bottom
 ?0FF0??? ?0FFF077 0FFF0??? ?0FF0??? ?0FF0??? ?0FFF077  folders
 0FFF0??? ?0FF0???
  Editing "PROGMAN .EXE" relative sector 102. 

	4. Go to relative sector 103. You should see something like
the following display, except I have again substituted symbols in
key bytes:

 ?0FF0??? ?0FFF077 0FFF0??0 00FF0??0 00FF0??0 00FFF077
 0FFF0??0 0FFF0??0 0FFF0??0 0FFFF077 0FFF0000 FFFF0000
 FFFF0000 FFFFF077 0FFFFFFF FFFFFFFF FFFFFFFF FFFFF077
 0FFFFFFF FFFFFFFF FFFFFFFF FFFFF077 0FFF0000 00FF0000
 00FF0000 00FFF077 0FFF0+++ +0FF0+++ +0FF0+++ +0FFF077 ++= 24 bytes
 0FFF0+++ +0FF0+++ +0FF0+++ +0FFF077 0FFF0+++ +0FF0+++   for top
 +0FF0+++ +0FFF077 0FFF0++0 00FF0++0 00FF0++0 00FFF077  folders
 0FFF0++0 0FFF0++0 0FFF0++0 0FFFF077 0FFF0000 FFFF0000
 FFFF0000 FFFFF077 0FFFFFFF FFFFFFFF FFFFFFFF FFFFF077
 0FFFFFFF FFFFFFFF FFFFFFFF FFFFF077 00000000 00000000
 00000000 00000077 0******* ******** ******** *****077 **= 28 bytes
 0******* ******** ******** *****000 00000000 00000000  for top
 00000000 00000000 00000000 00000000 00000000 00000000   border
 00000000 00000000 00000000 00000000 00000000 00000000
 00000000 00000000 FFFFFFFF FFFFFFFF C0000000 C0000000
 00000000 00000000 00000000 00000000 00000000 00000000
 00000000 00000000 00000000 00000000 00000000 00000000
 00000000 00000000 00000000 00000000 00000000 00000000
 00000000 00000000 00000000 00000000 00000000 00000003
 00000003 FFFFFFFF FFFFFFFF FFFFFFFF 00000000 00000000
 28000000 20000000 20000000 01000100 00000000 00000000
 00000000 00000000
  Editing "PROGMAN .EXE" relative sector 103.  
 	
	(You're almost there.)

	5. Now substitute the hex codes for the colors that you
want to appear in the 3 locations. The codes for the basic
colors are:

	99: Red
	AA: Green
	BB: Yellow
	CC: Blue

	Obviously be careful only to modify the right bytes. (Although
since this is a map section, an error will usually only end up as
an error in the icon versus a program crash.)
	6. Save the changes to each sector.
	7. Exit Windows, if you've been working in it, and re-start
Windows. The new icons will be displayed as the PM initializes. 

	That's all there is to it. 

	I like the way my new Group Icons look. With a little
experimentation, I hope that you will like yours too. 

	Now all I wish is that Microsoft makes it possible to fully
customize group icons in the next version of Windows.

	Enjoy,

				
				Jerry Miller
				September 30, 1990
				Compuserve: 75016,2406
				Genie: JM.Miller