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.