logoalt Hacker News

musicaletoday at 12:50 AM2 repliesview on HN

Lisa 2 was cheaper than many later Macs, but the Mac folks seemed to have little interest in convergent evolution for the platforms or in integrating Lisa features like memory protection into the Mac. The result was that Lisa died as the Macintosh XL (ex-Lisa), with a Mac compatibility environment (MacWorks, which looked terrible with the stock Lisa rectangular pixels but better with a "Screen Kit" square pixel upgrade) as a consolation prize, while Mac users had to wait until Mac OS X for memory protection. Ultimately the Lisa hardware was able to run 68K versions of Mac OS through 7.6.1 in 1997.


Replies

II2IItoday at 1:13 AM

Assuming the Mac folks had no interest in converging the platform in favour of the Lisa is somewhat unfair. While it sounds like some code was shared between the two platforms, the Lisa's operating system was quite different. It would have been difficult to make Lisa software operate under the Macintosh System Software. To my knowledge, there was virtually no software for the Lisa anyhow. Breaking software compatibility on the Macintosh to get the benefits of Lisa would have been a terrible business decision.

Aside from that, the MMU in the Lisa would have been a custom solution which Apple would have to support. When Motorola introduced an MMU, it was for 68020 generation machines. Apple should have been able to introduce memory protection at that point, but didn't. One of the reasons was that Apple struggled to make that next generation operating system while retaining compatibility with existing software (albeit, memory protection may have been only one of many problems). This was by no means a problem exclusive to Apple. Other platforms ran into similar issues.

show 2 replies
pjmlptoday at 5:37 AM

Or fully embracing the Pascal programming model.

I think it was in one of the On the Metal interviews where one of the guests mentions MPW was a submarine project, from UNIX background engineers, to eventually replace Pascal with C++.

show 3 replies