In the early 1970s a group of scruffy computer bums sank into their beanbags at Xerox PARC and devised an OS with bit-mapped graphics, scrollbars and pop-up menus. Sound familiar? Ben Hardwidge finds out where Windows first started
The key to Smalltalk was that it worked via the display, which Bob Taylor, a manager at PARC at the time, had already recognised as the ideal way for humans to interact with computers. Perhaps more importantly, however, the display was also bitmapped, and once you have a bitmapped display, you enter a much more complicated world.
This was all incredibly new stuff at the time, and according to Robson, the early versions were quite different from how we see the GUI today. By 1974, Xerox had already developed its Alto personal computer, which had a bitmapped display but didn't have what we now recognise as windows. According to Robson: 'You could only divide the screen horizontally to treat separate areas differently. You would typically use the bottom quarter of the screen as a kind of teletype interface, where you typed something and the system typed something back, and then you'd use the top three quarters as an area for drawing.'
The Alto was a start, and it had already made a major impact just by being a GUI-based computer that didn't take up an entire room. But the really big breakthrough for the GUI came when PARC developed 'BitBlt', which meant you could put your application 'window' wherever you liked. The Alto's machine-language emulator was based on the popular Nova computer of the time, which had an instruction called 'Blit' for transferring blocks from one area to another. However, this block transfer system was based on 16-bit words, and to make the bitmapped display truly flexible, PARC needed to move everything in specific bits.
It would be a huge project. As Dave Robson put it: 'Imagine the difficulty of having to pick the bits out of the bitmap, masking the pieces that aren't part of the piece you want to transfer, rotating it in case it shows up in a different part of the destination, masking it again and then putting it back down.' These were all problems PARC had to conquer just to move something from one part of the screen to another, but one of PARC's top programmers, Dan Ingalls, went off for a few days and programmed a new bit-based block transfer instruction and called it 'BitBlt'. The rest is history.
Once BitBlt had been programmed, windows and everything we associate with them became possible. Robson remembered that from that time onwards 'Smalltalk was the first system to have what we think of as windows - in other words, a rectangular area with contents that you could move around to different locations on the screen. You could even do pop-up menus, so whenever you pushed your middle mouse button, the menu would show up underneath wherever the cursor was, and you could then highlight different parts of it by holding it down'.
Smalltalk even had scrollbars and icons. The latter started off as title tags for the application windows, which would stay in place when you collapsed the windows. Then, when PARC developed the Star computer, they became the picture-based icons we recognise today. The Star didn't come out until 1981, but according to Robson, PARC was developing it for a long time before then, and Smalltalk was featuring icons as far back as the late 1970s.
Fastest, cheapest 3G mobile broadband dongles from 3, Vodafone, T-Mobile and Orange
from just £10/month