Hasty Briefsbeta

How did the Windows 95 user interface code get brought to the Windows NT?

a day ago
  • #User Interface
  • #Windows Development
  • #Legacy Systems
  • The Windows 95 and Windows NT UI teams collaborated closely during development.
  • Windows NT 4.0 implemented the Windows 95 UI by using it as a reference rather than merging code directly.
  • Explorer and other user-mode components were directly copied into Windows NT and then updated for compatibility.
  • Changes between Windows 95 and Windows NT were managed carefully to avoid introducing bugs into Windows 95.
  • The Windows NT team used macros like `TCHAR` and `LPCTSTR` to maintain compatibility across both systems.
  • The `SIZEOF` macro was introduced to track inspected `sizeof` directives for Windows NT compatibility.
  • Source code management was handled via SLM (Source Library Manager), which lacked branching support.
  • The porting team included Dave Plummer, known for his YouTube channel Dave’s Garage.
  • SLM was notoriously inefficient, requiring manual merges and lengthy enlistment processes.
  • Some system DLLs in Windows 95 used shared memory, causing compatibility issues when ported to Windows NT.
  • The `LENGTHOF` macro was not used to minimize changes and avoid confusion during debugging.
  • Windows NT 4.0 included some of the same Easter eggs as Windows 95, showing shared UI code.
  • The OpenGL screensavers in Windows NT and 95 had similar Easter eggs, later removed in Windows 2000.
  • The use of `TCHAR` and related macros persists, though often misunderstood by developers.
  • UTF-8 support in Windows 10 revives the relevance of `TCHAR` macros for easier migration to UTF-8.
  • NewShell was a Windows 95-style UI project for NT 3.51, previewing the UI changes in NT 4.0.