Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Windows before some version (maybe before XP?) only supported BMP wallpapers. BMP is uncompressed, a 1024x768 24-bit BMP is 2.25MB. That could be 7% of the 32MB system RAM and if the image got paged out - you were looking at it being redrawn line by line...yeah, I'm not doing that :)


My recollection is Windows 98 popping up a box like “Click yes to enable Active Desktop to do this” when I had AD disabled and tried to set a JPEG wallpaper. That would imply SHELL32 >= 4.7 https://www.geoffchappell.com/studies/windows/shell/shell32/...

Wikipedia sez “Since Windows XP, if a non-BMP image is used as Windows Desktop wallpaper, Windows will convert non-BMP image to BMP image in background.” and Group Policy has some relevant options:

“Enable Active Desktop” (“ForceActiveDesktopOn”) https://admx.help/?Category=Windows_11_2022&Policy=Microsoft... has the description “Allows HTML and JPEG Wallpaper”.

Also “Allow only bitmapped wallpaper” (“NoHTMLPaper”) option: https://admx.help/?Category=Windows_11_2022&Policy=Microsoft...

“If users select files with other image formats, such as JPEG, GIF, PNG, or HTML, through the Browse button on the Desktop tab, the wallpaper does not load. Files that are autoconverted to a .bmp format, such as JPEG, GIF, and PNG, can be set as Wallpaper by right-clicking the image and selecting "Set as Wallpaper".”

Both “Supported on: Windows Server 2003, Windows XP, and Windows 2000 only”.


Windows 98 introduced Active Desktop, allowing you to use JPG wallpapers. In my experience, enabling Active Desktop would make everything slower, so I always opted to take the RAM hit on BMP wallpapers. It was even better if I could save the BMP in 8-bit and still have it look good.


Yep.

It's because Active Desktop was essentially running an instance of Internet Explorer rendering to your desktop, of course it's slow and memory intensive.

Disabling Active Desktop and the fancy views on the left pane of Windows Explorer made Windows 98 change from quite slow to super responsive.


Didn't Active Desktop let you set a webpage as your wallpaper?

Crazy times.


It would let you just drop gifs on the desktop too.

IIRC I had (at my first job, at the age of like 12) a bunch of constantly moving mechwarrior gifs on my desktop. Timberwolf and Vulture for sure.


All in order to prove that the browser should be part of the OS and was not at all gratuitous tying to defeat Netscape.


Yes. I wrote some js to have a drawing of a woman blink her eyes with random intervals. Was fun but super distracting.


And the best lesson new generations got out of that experience was to ship a whole browser alongside the application.


Early versions of Windows included smaller bitmaps that could be tiled and, if I recall correctly, software would only render visible portions of the screen. (Though I could be confusing it for classic Mac OS, since I didn't really try GUI programming until I replaced my ailing 486 with a used Mac.) So it was possible to have a pretty desktop without crushing performance.


This was a problem even for systems with more RAM, because that background bitmap was always a tempting target for the memory manager looking to page out long idle memory. It was exacerbated by the aggressive disk cache, which could cause even programs that didn't allocate much memory directly to swap out the background by doing enough regular buffered I/O.


Huge performance increase I still do (probably with negligible effects) was to manually set the disk cache (or whatever it's called - ram using HDD) to a set amount (usually double the ram). Letting windows manage it meant it was constantly changing in size and moving around the drive and with spinning disks killed performance. Also made defragging often mkre necessary. And of course disabling system restore.

I still do it out of habit with SSDs and I imagine it's mostly unnecessary but never ran into issues. I figure at worst it may increase the life of the SSD


Add that before UDMA modes any disk I/O burned CPU cycles as well. A single core CPU spent most of the time reading from a slow disk. Good times!


The first tech support call to a PC manufacturer I remember from the 90's was because of this. Was playing around on the 486 in our family room and set a high color wallpaper on windows 3.11. Took forever to boot and we didn't know why.


It might have been NT that added support: I used Windows XP Service Pack 3 extensively, and by that time Windows supported JPEG pictures as desktop backgrounds. That is, JPG pictures in Windows-speak ;)


BMP supports compression, but its basic, RLE style, so only line art compresses well.


Win 3.11 allowed 256 color .bmp wallpapers

After Dark allowed everything.


I mean, you have to uncompress an image to display it anyway, so it would've made no difference.


This assumes that memory for the system and the graphics card is shared.


Yeah, Windows in this era already had the concept of bitmaps in system memory and bitmaps in device memory, so the desktop background could have been decompressed into GPU memory and then thrown away to free up CPU-side RAM. Not sure whether it would actually do that though.


Or, that desktop rendering is not GPU accelerated.


But the uncompressed data doesn't need to stick around. It could be uncompressed piece by piece into a much smaller temp buffer, with the revealed parts of the areas of interest copied into video RAM as necessary.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: