The Old New Thing

Practical development throughout the evolution of Windows.

Latest posts

Sep 10, 2026
Post comments count 7
Post likes count 5

Why is the x86 undefined instruction called ud2? Why 2?

Raymond Chen

It came after <CODE>ud0</CODE> and <CODE>ud1</CODE>.

Sep 9, 2026
Post comments count 7
Post likes count 8

What algorithm did Windows XP use to choose your initial user picture?

Raymond Chen

It's random, really.

Sep 8, 2026
Post comments count 2
Post likes count 3

A sample use of the winstart.bat file in Windows 95

Raymond Chen

For a driver that needs high resolution mode only in Windows.

Sep 7, 2026
Post comments count 3
Post likes count 1

Why don’t we allow stacks to be sparse, instead of forcing them to be contiguous?

Raymond Chen

Imagining how to report a memory allocation failure for a sparse page.

Sep 4, 2026
Post comments count 2
Post likes count 2

What happens if you change a window class’s GCL_CB­WND­EXTRA?

Raymond Chen

You're changing the value for future windows.

Sep 3, 2026
Post comments count 2
Post likes count 1

The case of the progress callback that never got called when progress happened

Raymond Chen

Are you talking to the right guy?

Sep 2, 2026
Post comments count 6
Post likes count 2

The perils of binding to value types in XAML

Raymond Chen

Loss of identity.

Sep 1, 2026
Post comments count 3
Post likes count 2

Microspeak: Funded / unfunded

Raymond Chen

People are our most valuable asset.

Aug 31, 2026
Post comments count 11
Post likes count 3

AWE does not require PAE, though PAE makes it much more useful

Raymond Chen

All dressed up with nowhere to go.