BetaArchive Logo
Navigation Home Database Screenshots Gallery Image Uploader Server Info FTP Servers Wiki Forum RSS Feed Rules Please Donate
UP: 60d, 0h, 9m | CPU: 22% | MEM: 5029MB of 12191MB used
{The community for beta collectors}

Post new topic Reply to topic  [ 16 posts ] 
Author Message
 PostPost subject: 7850's Metro: It Exists, and here's why.        Posted: Wed Jan 01, 2020 5:45 pm 
Reply with quote
FTP Access
Offline

Joined
Thu Mar 02, 2017 2:40 pm

Posts
87

Favourite OS
Win3.0 prerelease, Win8 Pre-8102
A while ago I (poorly) attempted to RE 7850 to get Metro. I did find Metro, but not get it to enable.

7850 has TwinUI, TwinAPI, and Redpill. There's also Metro stuff in imageres.dll. I have verified this utilizing IDA Pro, although the Redpill appears to be different from 79xx-8121 redpill simply due to its version number, which appears to be 8 (with 79xx being 22 or 23), although I am not sure. The registry also has Metro.

TwinUI:
TwinUI is quite a bit smaller than later builds, weighing in at 1.73MB, but it does pack a lot into that 1.73MB. Resource Hacker is all you need here for now.

First, there are 7 IMAGE resources. These are for the Charms Bar, which had 7 buttons at this point. This is accurate to Raymond Chen's post on the evolution of Windows 8 charms https://devblogs.microsoft.com/oldnewthing/20180828-00/?p=99585. Other evidence points to these charms being the original charms, which may indicate that 7850 was one of the first builds to have the Charms bar, followed by a MUI resource with nothing of value present.

We then come to the UIFILE resource. UIFILE resources are used by Microsoft DirectUI, a framework for native applications (somewhat like WPF but predating it by years, being used for the XP login screen as well as the Windows 8 start screen), that is only available internally at Microsoft. They are basically like XAML markup.

The first UIFILE resource appears to be something related to explorer. It references known folders. Searching the GUIDs reveal them to be libraries, downloads, the Desktop known folder, and HomeGroup. It may be a Metro save dialog.

The second one is a Metro recent programs list, or as it is called in the DUIXML styling, "page".

The third one is the Metro Search Pane. At least application search existed judging by the styling.

The fourth one is unknown. It's extremely small and may be a placeholder.

The fifth UIFILE resource appears to be the Start Screen as it makes reference to tiles. I've also considered the possibility that it may be search results of some kind, but it is likely the Start Screen.

The sixth UIFILE resource is a search button. It makes reference to imageres.dll.

The seventh one is also unknown and may be a placeholder.

The eighth resource is the styling that defines toast notifications.

The ninth resource references bitmap 5002. Bitmap 5002 is a Windows logo, likely the Metro Start Button. It looks completely different from any other build (and, notably, doesn't have much in the way of flat design) and it appears to be called "Pearl".

The next resource appears to be the toast notification close buttons. They reference a bunch of close buttons in Twinui. Again, these don't have much in the flat design department. In fact, this and the Metro start button look quite Aero-y. The Charms Bar is the only thing that looks like Metro.

The eleventh resource is the Charms Bar. It's white like in 79xx but it has the original 7 charms.

This is followed by the user name and user tile on the start screen. These reference nonexistent resources. They were most likely unfinished.

The final one is a Metro error.

This is followed by a WEVT_TEMPLATE, or Windows Event Tracing Template resource. This is used for event tracing and debugging. In this case, this resource holds tons of strings related to Metro - including start screen, charms, and metro. The strings are here: https://pastebin.com/quAKNAUZ

Notable strings include:
ImmersiveShell_Startup etc: ImmersiveShell, or the Start Screen, existed here.
Stash_InitUI etc: This means that the Stash charm existed and was implemented in this build to some degree.
SharingManager_GetAppTarget etc: This is most likely the component behind Win8's Metro sharing features at this point in its development.

This is followed by various bitmaps. Notable ones include:
Bitmap 2210 - This appears to be a background of some sort. Search flyout, perhaps?
Image
Bitmap 5002 - Calls itself "Pearl". This may be the metro start button. There isn't much flat design here.
Image
Bitmaps 6201-6215: Various aero-y toast notification close buttons.
Image
Bitmap 6206.
Registry
Registry keys exist for Metro.

When starting Metro, Explorer attempts to verify SHSXS version and functionality. This fails due to the massive difference in SHSXS between 7850 and 8102. Due to this failure, Explorer queries HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\SHSXSWasEnabled and sets it to 0 if it is not 0. This is as far as we have got insofar as it relates to getting Metro to initalise.

Explorer then queries the key HKCU\Software\Microsoft\CurrentVersion\ImmersiveShell. If it exists (it does not in a stock 7850 install), it queries the value HKCU\Software\Microsoft\CurrentVersion\ImmersiveShell\EnablePrototypeGestures - presumably for the Charms bar gestures. If redpill has failed to clear the system for starting Metro and SHSXSWasEnabled was set to 0, it doesn't do anything with these values. This occurs even without SHSXS.

Accent pattern (or start screen background) information is also saved at the value HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Accent\AccentId in the registry, the default value being 0x1471.

Conclusion

7850 does have Metro, even if some areas (like the start screen) may not be functional. Due to the massive difference in what 7850's Explorer wants SHSXS's functions to be and what 8102's SHSXS has, Metro does not initalise even with SHSXS.

Some ways to resolve this issue have been considered. Creating a dummy shsxs that only returns 8 to RP_VersionCheck, which would satisfy what Explorer wants. Alternatively, completely removing Redpill is possible, although difficult.


Top  Profile
 PostPost subject: Re: 7850's Metro: It Exists, and here's why.        Posted: Wed Jan 01, 2020 10:07 pm 
Reply with quote
FTP Access
Offline

Joined
Thu Jan 31, 2019 3:05 am

Posts
31

Favourite OS
Windows 7
Now that is interesting. Will the start screen be usable with modifications? Or is it not possible? I honestly did not 7850 had Metro features in it.


Top  Profile
 PostPost subject: Re: 7850's Metro: It Exists, and here's why.        Posted: Wed Jan 01, 2020 10:18 pm 
Reply with quote
FTP Access
Offline

Joined
Thu Mar 02, 2017 2:40 pm

Posts
87

Favourite OS
Win3.0 prerelease, Win8 Pre-8102
Technically, it is almost certainly possible.

In practice, it would be far harder than unlocking metro on 79xx. This is because what 7850's explorer expects SHSXS to have and what 8102 SHSXS has is very different.

If you put in the effort to do it you could do it.


Top  Profile
 PostPost subject: Re: 7850's Metro: It Exists, and here's why.        Posted: Wed Jan 01, 2020 10:23 pm 
Reply with quote
FTP Access
User avatar
Offline

Joined
Fri Jan 31, 2014 12:07 am

Posts
402

Location
Winnipeg, Manitoba, Canada, North America, Earth, Solar System, Milky Way, Universe, Existence

Favourite OS
Windows XP SP3, Windows 1.0 DR5
Moline wrote:
Now that is interesting. Will the start screen be usable with modifications? Or is it not possible? I honestly did not 7850 had Metro features in it.

We've known it has metro stuff in it since the leak pretty much. It has a few metro apps and the ribbon.


Top  Profile
 PostPost subject: Re: 7850's Metro: It Exists, and here's why.        Posted: Thu Jan 02, 2020 12:35 am 
Reply with quote
FTP Access
User avatar
Offline

Joined
Thu May 01, 2014 10:26 pm

Posts
1507

Location
Inside the space between . and I

Favourite OS
Nashville 4.00.83
Offtopic Comment
There is also an easter egg in twinui.dll. This is what being painted onto the 'ImmersiveBackgroundWindow':
Code:
             *     ,MMM8&&&.            *     
                    MMMM88&&&&&    .           
                   MMMM88&&&&&&&               
       *           MMM88&&&&&&&&               
                   MMM88&&&&&&&&               
                   'MMM88&&&&&&'               
                     'MMM8&&&'      *           
            |\___/|     /\___/\                 
            )     (     )    ~( .              '
           =\     /=   =\~    /=               
             )===(       ) ~ (                 
            /     \     /     \                 
            |     |     ) ~   (                 
           /       \   /     ~ \               
           \       /   \~     ~/               
    _/\_/\_/\__  _/_/\_/\__~__/_/\_/\_/\_/\_/\_
    |  |  |  |( (  |  |  | ))  |  |  |  |  |  |
    |  |  |  | ) ) |  |  |//|  |  |  |  |  |  |
    |  |  |  |(_(  |  |  (( |  |  |  |  |  |  |
    |  |  |  |  |  |  |  |\)|  |  |  |  |  |  |
    |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
------------------------------------------------
              *     ,MMM8&&&.            *     
                    MMMM88&&&&&    .           
                   MMMM88&&&&&&&               
       *           MMM88&&&&&&&&               
                   MMM88&&&&&&&&               
                   'MMM88&&&&&&'               
                     'MMM8&&&'      *           
            |\___/|     /\___/\                 
            )     (     )    ~( .              '
           =\     /=   =\~    /=               
             )===(       ) ~ (                 
            /     \     /     \                 
            |     |     ) ~   (                 
           /       \   /     ~ \               
           \       /   \~     ~/               
    _/\_/\_/\__  _/_/\_/\__~__/_/\_/\_/\_/\_/\_
    |  |  |  |) )| |  |  (( |  |  |  |  |  |  |
    |  |  |  ( ( | |  |  |\\|  |  |  |  |  |  |
    |  |  |  |)_)  |  |  |))|  |  |  |  |  |  |
    |  |  |  |  |  |  |  |\)|  |  |  |  |  |  |
    |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
------------------------------------------------
                                               
              *     ,MMM8&&&.            *     
                    MMMM88&&&&&    .           
                   MMMM88&&&&&&&               
       *           MMM88&&&&&&&&               
                   MMM88&&&&&&&&               
                   'MMM88&&&&&&'               
            |\___/|     /\___/\                 
            )     (     )    ~( .              '
           =\     /=   =\~    /=               
             )===(       ) ~ (                 
            /     \     /     \                 
            |     |     ) ~   (                 
           /       \   /     ~ \               
           \       /   \~     ~/               
    _/\_/\_/\__  _/_/\_/\__~__/_/\_/\_/\_/\_/\_
    |  |  |  |) )| |  |  (( |  |  |  |  |  |  |
    |  |  |  ( ( | |  |  |\\|  |  |  |  |  |  |
    |  |  |  |)_)  |  |  |))|  |  |  |  |  |  |
    |  |  |  |  |  |  |  |\)|  |  |  |  |  |  |
    |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
------------------------------------------------
                                               
                                               
              *     ,MMM8&&&.            *     
                    MMMM88&&&&&    .           
                   MMMM88&&&&&&&               
       *           MMM88&&&&&&&&               
                   MMM88&&&&&&&&               
            |\___/|     /\___/\                 
            )     (     )    ~( .              '
           =\     /=   =\~    /=               
             )===(       ) ~ (                 
            /     \     /     \                 
            |     |     ) ~   (                 
           /       \   /     ~ \               
           \       /   \~     ~/               
    _/\_/\_/\__  _/_/\_/\__~__/_/\_/\_/\_/\_/\_
    |  |  |  |) )| |  |  (( |  |  |  |  |  |  |
    |  |  |  ( ( | |  |  |\\|  |  |  |  |  |  |
    |  |  |  |)_)  |  |  |))|  |  |  |  |  |  |
    |  |  |  |  |  |  |  |\)|  |  |  |  |  |  |
    |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
------------------------------------------------
                                               
                                               
                                               
              *     ,MMM8&&&.            *     
                    MMMM88&&&&&    .           
                   MMMM88&&&&&&&               
       *           MMM88&&&&&&&&               
            |\___/|     /\___/\                 
            )     (     )    ~( .              '
           =\     /=   =\~    /=               
             )===(       ) ~ (                 
            /     \     /     \                 
            |     |     ) ~   (                 
           /       \   /     ~ \               
           \       /   \~     ~/               
    _/\_/\_/\__  _/_/\_/\__~__/_/\_/\_/\_/\_/\_
    |  |  |  |) )| |  |  (( |  |  |  |  |  |  |
    |  |  |  ( ( | |  |  |\\|  |  |  |  |  |  |
    |  |  |  |)_)  |  |  |))|  |  |  |  |  |  |
    |  |  |  |  |  |  |  |\)|  |  |  |  |  |  |
    |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
------------------------------------------------
                                               
                                               
                                               
                                               
              *     ,MMM8&&&.            *     
                    MMMM88&&&&&    .           
                   MMMM88&&&&&&&               
            |\___/|     /\___/\                 
            )     (     )    ~( .              '
           =\     /=   =\~    /=               
             )===(       ) ~ (                 
            /     \     /     \                 
            |     |     ) ~   (                 
           /       \   /     ~ \               
           \       /   \~     ~/               
    _/\_/\_/\__  _/_/\_/\__~__/_/\_/\_/\_/\_/\_
    |  |  |  |) )| |  |  (( |  |  |  |  |  |  |
    |  |  |  ( ( | |  |  |\\|  |  |  |  |  |  |
    |  |  |  |)_)  |  |  |))|  |  |  |  |  |  |
    |  |  |  |  |  |  |  |\)|  |  |  |  |  |  |
    |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
------------------------------------------------
                                               
                                               
                                               
                                               
                                               
                    MMMM88&&&&&    .           
                   MMMM88&&&&&&&               
            |\___/|     /\___/\                 
            )     (     )    ~( .              '
           =\     /=   =\~    /=               
             )===(       ) ~ (                 
            /     \     /     \                 
            |     |     ) ~   (                 
           /       \   /     ~ \               
           \       /   \~     ~/               
    _/\_/\_/\__  _/_/\_/\__~__/_/\_/\_/\_/\_/\_
    |  |  |  |) )| |  |  (( |  |  |  |  |  |  |
    |  |  |  ( ( | |  |  |\\|  |  |  |  |  |  |
    |  |  |  |)_)  |  |  |))|  |  |  |  |  |  |
    |  |  |  |  |  |  |  |\)|  |  |  |  |  |  |
    |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
------------------------------------------------
                                               
                                               
                                               
                                               
                                               
                                               
                   MMMM88&&&&&&&               
            |\___/|     /\___/\                 
            )     (     )    ~( .              '
           =\     /=   =\~    /=               
             )===(       ) ~ (                 
            /     \     /     \                 
            |     |     ) ~   (                 
           /       \   /     ~ \               
           \       /   \~     ~/               
    _/\_/\_/\__  _/_/\_/\__~__/_/\_/\_/\_/\_/\_
    |  |  |  |) )| |  |  (( |  |  |  |  |  |  |
    |  |  |  ( ( | |  |  |\\|  |  |  |  |  |  |
    |  |  |  |)_)  |  |  |))|  |  |  |  |  |  |
    |  |  |  |  |  |  |  |\)|  |  |  |  |  |  |
    |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
------------------------------------------------
                                               
                                               
               __________________               
               |Good Night Moon!|               
               \   ==============               
                | /                             
                \/                             
            |\___/|     /\___/\                 
            )     (     )    ~( .              '
           =\     /=   =\~    /=               
             )===(       ) ~ (                 
            /     \     /     \                 
            |     |     ) ~   (                 
           /       \   /     ~ \               
           \       /   \~     ~/               
    _/\_/\_/\__  _/_/\_/\__~__/_/\_/\_/\_/\_/\_
    |  |  |  |) )| |  |  (( |  |  |  |  |  |  |
    |  |  |  ( ( | |  |  |\\|  |  |  |  |  |  |
    |  |  |  |)_)  |  |  |))|  |  |  |  |  |  |
    |  |  |  |  |  |  |  |\)|  |  |  |  |  |  |
    |  |  |  |  |  |  |  |  |  |  |  |  |  |  |

_________________
Image
You cannot escape Windows 10.


Top  Profile
 PostPost subject: Re: 7850's Metro: It Exists, and here's why.        Posted: Thu Jan 02, 2020 9:17 pm 
Reply with quote
FTP Access
Offline

Joined
Fri May 22, 2009 5:21 pm

Posts
372

Location
France
Nice find guys :)


Top  Profile
 PostPost subject: Re: 7850's Metro: It Exists, and here's why.        Posted: Fri Jan 03, 2020 12:52 am 
Reply with quote
FTP Access
Offline

Joined
Thu Mar 02, 2017 2:40 pm

Posts
87

Favourite OS
Win3.0 prerelease, Win8 Pre-8102
Thanks!!


Top  Profile
 PostPost subject: Re: 7850's Metro: It Exists, and here's why.        Posted: Fri Jan 03, 2020 2:17 am 
Reply with quote
FTP Access
Offline

Joined
Thu Jan 31, 2019 3:05 am

Posts
31

Favourite OS
Windows 7
JimOlive wrote:
Moline wrote:
Now that is interesting. Will the start screen be usable with modifications? Or is it not possible? I honestly did not 7850 had Metro features in it.

We've known it has metro stuff in it since the leak pretty much. It has a few metro apps and the ribbon.


I knew about those features, just not about it having full blown metro within it. Since this build has full blown metro (and not partial metro like I thought), it is clear that Metro was indeed to be included in 8 from the start, and that it wasn't a later addition. Whether or not they had planned on retaining the full blown Windows 7 interface is very debatable, but I'm fairly certain I saw a quote that someone posted here from a Microsoft(?) employee saying they were gearing up for Windows on ARM, and that it would retain the interface of 7. If indeed true, that hints Windows 8 could have shipped with the 7 interface (but still have Metro), but for some reason, it was scrapped and replaced with what ultimately RTMed, an interface that very much foreshadows that of Windows 10.


Top  Profile
 PostPost subject: Re: 7850's Metro: It Exists, and here's why.        Posted: Sat Jan 04, 2020 1:21 pm 
Reply with quote
Offline

Joined
Fri Dec 21, 2018 9:45 am

Posts
171

Location
Asia

Favourite OS
Windows 7, 8.1 and 10
winnt32 wrote:
Bitmap 2210 - This appears to be a background of some sort. Search flyout, perhaps?
Image

This looks like Windows 7 Control Panel left applets bar texture.

_________________
Goodbye Windows 7 (2009-2020) - We'il miss you! You're a legend! :'( Time to upgrade to Windows 8.1 or 10!


Top  Profile
 PostPost subject: Re: 7850's Metro: It Exists, and here's why.        Posted: Sat Jan 04, 2020 10:53 pm 
Reply with quote
Donator
User avatar
Offline

Joined
Mon Jul 23, 2012 9:40 pm

Posts
1143

Location
Flying high in a DC10

Favourite OS
NT3.X Family
Except without the aero texture applied.

_________________
Quote:
"C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off"


Top  Profile
 PostPost subject: Re: 7850's Metro: It Exists, and here's why.        Posted: Sun Jan 05, 2020 5:18 am 
Reply with quote
Offline

Joined
Fri Dec 21, 2018 9:45 am

Posts
171

Location
Asia

Favourite OS
Windows 7, 8.1 and 10
yourepicfailure wrote:
Except without the aero texture applied.

Windows 8 Release Preview used the one without the Aero texture.

_________________
Goodbye Windows 7 (2009-2020) - We'il miss you! You're a legend! :'( Time to upgrade to Windows 8.1 or 10!


Top  Profile
 PostPost subject: Re: 7850's Metro: It Exists, and here's why.        Posted: Tue Jan 14, 2020 7:10 pm 
Reply with quote
FTP Access
Offline

Joined
Thu Mar 02, 2017 2:40 pm

Posts
87

Favourite OS
Win3.0 prerelease, Win8 Pre-8102
I noticed on BetaWiki that there was some feature labelled "ApplicationExplorer (for early start screen?)". After some digging on MDL it turns out to be a named folder - Applications.{4234d49b-0245-4df3-b780-3893943456e1}.

This opens a list of all installed apps, with several very interesting tabs.

The first is "Host environment", which is set to "Desktop" for all apps. I assume this determines if the app is a Metro app or not.

The others are "Order", "Group ID" (as in start menu groups, I believe), "Section ID" (no idea), "Tile state" (as in Start Screen tiles), and "AppSpace xml path".


Top  Profile
 PostPost subject: Re: 7850's Metro: It Exists, and here's why.        Posted: Tue Jan 14, 2020 8:48 pm 
Reply with quote
User avatar
Offline

Joined
Tue Sep 22, 2015 9:49 pm

Posts
117

Favourite OS
9600 or something idk
...I apologize if this was previously addressed, wasn't too clear...I can't help but wonder, there may be a few hypotheses as to how this stuff could be unlocked, but in practice, is there any hope of ever actually getting to see any of it in action?


winnt32 wrote:
-snip-

That folder seems to still exist in Windows 8.1 - I haven't looked extensively, but typing "shell:::{4234d49b-0245-4df3-b780-3893943456e1}" into the Run dialog on Windows 8.1 does open the...well, the same thing as typing "shell:::AppsFolder". I presume that shouldn't come as much of a surprise?

Also, purely out of curiousity...has anyone tried seeing if the latter location also exists in 7850?


Top  Profile
 PostPost subject: Re: 7850's Metro: It Exists, and here's why.        Posted: Tue Jan 14, 2020 9:14 pm 
Reply with quote
FTP Access
Offline

Joined
Thu Mar 02, 2017 2:40 pm

Posts
87

Favourite OS
Win3.0 prerelease, Win8 Pre-8102
@splitwirez unfortunately, shsxs is completely different in 7850 than 8102 and unlocking metro is probably extremely hard or impossible as twinui wants COM classes that contain the code for the metro stuff. i could try and port the 7850 metro styling onto 7927 though.


Top  Profile
 PostPost subject: Re: 7850's Metro: It Exists, and here's why.        Posted: Tue Jan 14, 2020 9:22 pm 
Reply with quote
User avatar
Offline

Joined
Tue Sep 22, 2015 9:49 pm

Posts
117

Favourite OS
9600 or something idk
winnt32 wrote:
@splitwirez unfortunately, shsxs is completely different in 7850 than 8102 and unlocking metro is probably extremely hard or impossible as twinui wants COM classes that contain the code for the metro stuff.

Darn...guess that rules out the hypothetical dummy SHSXS mentioned in the OP then, huh?

winnt32 wrote:
i could try and port the 7850 metro styling onto 7927 though.

I'd love to see that. Ever since I first saw 7989's default user avatar, I've wondered if, at any point in time, the plan may not have been for the "Metro" GUI to be as flat as it ended up being, so having concrete evidence that that may have been a thing that happened at one point in development is quite intriguing to hear. Seeing even part of it would be even more so, even if it's some frankenskin for 7927 or something.
Offtopic Comment
tbh I can barely remember the last time I touched a UIFILE...


Top  Profile
 PostPost subject: Re: 7850's Metro: It Exists, and here's why.        Posted: Tue Jan 14, 2020 9:29 pm 
Reply with quote
FTP Access
Offline

Joined
Thu Mar 02, 2017 2:40 pm

Posts
87

Favourite OS
Win3.0 prerelease, Win8 Pre-8102
as for the dummy SHSXS, you could make one, although how much functionality the ensuing metro would have is unknown.


Top  Profile
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 16 posts ] 




Who is online

Users browsing this forum: TwilyDev and 4 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  

All views expressed in these forums are those of the author and do not necessarily represent the views of the BetaArchive site owner.

Powered by phpBB® Forum Software © phpBB Group

Copyright © 2006-2020

 

Sitemap | XML | RSS