We have been working to mitigateongoing DDoS attacks. Thank you for your patience.
Please consider supporting us onPatreon.

Solitaire (Windows, 2007)

From The Cutting Room Floor
Jump to navigationJump to search
This page containschanges which are not marked for translation.
Other languages:
English • ‎français • ‎polski • ‎日本語 • ‎한국어

Title Screen

Solitaire

Developers:Oberon Media,Microsoft
Publisher:Microsoft
Platform:Windows
Released internationally: January 30, 2007


CodeIcon.png This game hasunused code.
DebugIcon.png This game hasdebugging material.


The 2007 version ofSolitaire included with Windows Vista and 7 is a reworked version ofthe 1990 original with shiny Frutiger Aero themed graphics and some new features. Other than that, though, it plays exactly the same.

Hmmm...
To do:
  • See if more of the options work in the Vista version. This was tested with the Windows 7 version.
  • There's much more to document. A good place to start would be to use Resource Hacker on the game executable and DLLs.
  • Add subpage forMedia Center Solitaire, a full-screen version of the game embedded into the game's executable which, while technically used since it can be launched from Windows Media Center, is not documented in any Help menus and contains a whole bunch of unused content the normal game doesn't.
  • Multiple prototypes exist in various Windows Longhorn/Vista prototypes. Collect all of them and create a Prototype page.
  • Win8 DP1 (6.2.8102.0 (winmain_win8m3.110823-1455)) saw the removal of the built-in Windows games from the edition manifest for Prerelease(ARM); this change would be later expanded through the removal of most Win7 client editions (excluding Starter(N), Professional(N) and Enterprise(N)) from the source tree during early 830x, orphaning the games entirely. The only catch to this, however, is that the Win7 games were still compiled from until as late as Win10 v1703, which is when MS decided to ditch the rest of the older editions entirely. The binaries were included in the provided repair content sources for the following builds: 8250 (Win8 Consumer Preview), 8400 (Win8 Release Preview), 9200 (Win8 RTM), 9431 (Win8.1 BlueMP), 9600 (Blue RTM), 10586 (Win10 v1511) and 14393 x86 (Win10 v1607). As the enablement flags for the games are still present in every SKU's product policies, it'd be a good idea if someone were to re-enable them through ProductPolicyEditor and look through any noticeable code changes from within their binaries.

Contents

Cheat Code

HoldingCtrl + Alt + Shift while clicking on the deck causes only one card to be drawn regardless of the Draw Three options. It also enables you to move any card or bunch to any other stack irrespective of card color or number.

Debug Mode

By setting the internal g_bDebugEnabled variable to a nonzero value, various debugging features are enabled. This value isn't written to by the game, so it must be set manually.

Menu

SolVistaDbgMenu.png

Instead of the normal menu (resource 102), the game loads this alternative one (resource 103) fromSolitaire.exe.mui. Most of it is self-explanatory, but "Toggle Deck Lock" appears to have no effect.


Block Mode

Solitaire-y confinement


HoldingF6 causes the playfield to be rendered in gray with ever grayer boxes representing the cards.

Pause Mode

PressingHome causes the display to freeze. Nothing else stops, so the time continues in timed games and sound effects still play, but with no visual feedback. PressingEnd resumes the display.Insert can be used to toggle this on and off.

Solver Debugging

Solitaire07-solverdebug.png

A different debugging option can be enabled by launching the executable with the-solverdebug argument. This is also present inSpider Solitaire.

Logging

Like with debugging, there are two internal variables that control UTF-16 logging either tolog.txt in the current directory (g_uiFileMask) or redirected standard output (g_uiConsoleMask). Also like debugging, they are not written to by the game so it must be enabled manually.

A sample log:

SolLogGeneral: (673) SolitaireGame::FindHigherCardToPutOnStack() - Not a main stack, don't bother checking.CardLibLogGeneral: (674) CardStack::SetHighlight()::bHighlight == falseCardLibLogGeneral: (675) Card::SetHighlight()::bHighlight == false0x00002000: (676) Hide tipRendering: (884) SetState: 260Rendering: (885) (RenderManager.cpp:2156) Present Failed: 88760868(D3DERR_DEVICELOST)Rendering: (886) (RenderManager.cpp:1704) Resuming after lost deviceRendering: (887) (Font.cpp:691) Invalidating a font cacheRendering: (888) (Font.cpp:691) Invalidating a font cacheRendering: (889) (RenderManager.cpp:2253) Reset: 800 x 496 format 22Rendering: (890) (RenderManager.cpp:1465) RecreateDefaultResources()UI: (891) Recreating font: Segoe UIUI: (892) Recreating font: Segoe UIRendering: (893) (RenderManager.cpp:150) CreateCachedBackBuffer()Rendering: (894) SetState: 4096Core: (909) Engine_GotFocus()Timekeeping: (910) Reset timersCore: (911) Engine_LostFocus()Core: (912) Engine_GotFocus()Timekeeping: (913) Reset timersRendering: (914) (RenderManager.cpp:2369) Saved the back buffer for cached presentationCardLibLogGeneral: (915) CardStack::SetEnabled()::bAccess == trueCore: (916) Engine_LostFocus()

With logging and debug mode enabled, pressingF11 dumps the in-use images and sounds to the log.

XInput Support

An interesting feature that isn't documented anywhere (Help Menu-wise) is XInput (gamepad) support - if the game detects an Xbox 360 controller plugged into one of your USB ports, the P1 corner on the controller will light up, signifying the controller can be used.

Possibly undocumented because Microsoft thought people were too used to the traditional controls, and a gamepad wouldn't work well for a card game. It's a neat little feature, nonetheless.

Controls

ButtonEffect
Left analog stick/D-Pad/Shoulder Buttons/TriggersMoves the cursor. Oddly, they can also be used to navigate the menu bar.
B/BackUndoes the previous move.
A/XSelects the card the cursor is on. Moving the cursor onto another card and pressingA orX again moves the previous card onto the stack. Double-tapping either button moves a card to the home stack.
Y/StartOpens the Game Menu.
v · t · e
Introduced in Windows 1.0Reversi (1985)
Introduced in Windows 3.xHearts (1993) (Prototypes) •Minesweeper (1990) (Prototypes) •Solitaire (1990) (Prototypes)
Introduced in Windows 95FreeCell (1991) •Hover! (1995) (Prototypes)
Introduced in Windows 20003D Pinball: Space Cadet (Prototypes) •Spider Solitaire (1998) (Prototype)
Introduced in Windows XPInkBall
Introduced in Windows VistaChess Titans •FreeCell (2007) •Hearts (2007) •Minesweeper (2007) •Purble Place (Prototypes) •Solitaire (2007) •Spider Solitaire (2007)
Introduced in Windows 8 Developer Preview5 in a Row •Labyrinth •Treehouse Stampede! •Zero Gravity
Introduced in Windows 10Microsoft Solitaire Collection
OtherGeoSafari for Bob
See also
Microsoft Entertainment Pack
Retrieved from "https://tcrf.net/index.php?title=Solitaire_(Windows,_2007)&oldid=1750708"
Categories:


Cleanup >Pages missing date references
Cleanup >Pages missing developer references
Cleanup >Pages missing publisher references
Cleanup >To do
Games >Games by content >Games with debugging functions
Games >Games by content >Games with unused code
Games >Games by developer >Games developed by Microsoft
Games >Games by developer >Games developed by Oberon Media
Games >Games by platform >Windows games
Games >Games by publisher >Games published by Microsoft
Games >Games by release date >Games released in 2007
Games >Games by release date >Games released in January
Games >Games by release date >Games released in January >Games released on January 30
Games >Games by series >Bundled Windows Games