PDA

View Full Version : Techy question on legacy Mac OS


Fastmac
12-23-2008, 09:18 AM
I know OS X is based on Unix and requires objective C to produce OS X apps, but what was OS 6,7,8, etc based on and what language was needed to produce apps for it? Something I've always wanted to know.

Happy Christmas.

fracai
12-23-2008, 09:28 AM
First, OS X isn't limited to Objective C, though Apple certainly pushes that as the preferred route. You could also develop for OS X with: Java, C, C++, Perl, Ruby, Python, etc. I think you can use C# with 3rd party support and the same goes for other languages such as lisp, scheme, and others.

That said, C and C++ and then Java were probably the most popular for pre-X versions of Mac OS. 3rd party support for many of the languages listed above were also available. I think CodeWarrior may have been the leading development environment and Apple had their own production as well, though I forget the name.

jeffo
12-23-2008, 10:32 AM
To answer the part of your question about what was the OS itself based on, I thought it was pascal, but I could be wrong.

trevor
12-23-2008, 10:55 AM
System 6.x (and earlier System software) was written mostly in assembly language. Assembly is difficult to write, but it produces faster and much smaller binaries than compiled high level languages like Pascal and C.

The jump in OS size between System 6.x and System 7.x was astronomical, as 7.x and later were mostly rewritten in compiled high level languages.

Trevor

Fastmac
12-23-2008, 11:13 AM
Thank you very much guys, I think that pretty much covers what I wanted to know. It was one of those things that one ponders on from time to time but never got around to asking about until now.

Mikey-San
12-23-2008, 12:10 PM
System 6 was not primarily written in assembly. The original Inside Macintosh volumes were, as jeffo mentions, Pascal-oriented.

trevor
12-23-2008, 12:43 PM
Oh? What evidence do you have of that? It is commonly written about as having been written in assembly, and it's compactness and speed point to that as well. If you have counter evidence, I'd be very interested.

http://forums.macosxhints.com/showthread.php?p=435584
In my experience, System 6, written in assembly code instead of the high level C, is sleek and fast even when loading extensions.

Mac Plus Vs. 07 AMD DualCore. You Won't Believe Who Wins (http://hubpages.com/hub/_86_Mac_Plus_Vs_07_AMD_DualCore_You_Wont_Believe_Who_Wins86)
System 6.0.8 is not only a lot more compact since it has far fewer (mostly useless) features and therefore less code to process, but also because it was written in assembly code instead of the higher level language C.

http://www.euronet.nl/users/mvdk/why.html
the lower-end models, most notably the so called Compact Macs, the Mac Plus, the SE and the Classic, and the lowend 68020's, the Mac II and the LC, are better off running System 6. They will be a lot faster with System 6 than with System 7. The reason behind this is the fact that System 6 is not only a lot more compact (it has less features and therefore less code to crunch), but also because System 6 was written in assembly code instead of the high level language C.

http://lowendmac.com/myturn/2k1129.html
The reason why the SE with its ancient 68000 processor is faster than the iMac with its G3 processor is the way the operating system and the word processor were produced. Both System 6.08 and WriteNow were written in assembly code, while modern operating systems and word processors are usually written in high level languages and carry a lot of code that is totally irrelevant for someone who only uses his or her machine for word processing.

http://www.loop.ca/ebulletin/feb04/
System 6 was the first major change in the MacOS. It introduced concepts like opening more than one software at one time, accessing multiple disks, and even a more sophisticated Finder that made this first crack at multitasking possible. It took all of the previous OS’s and combined them into, what some call, the best OS prior to OS X. It allowed for full colour support, and operated in the smallest of hard drive space as the language it was written in (Assembly) was very compact. Then came System 7.

http://xyfer.blogspot.com/2007/10/tales-of-guis-and-oses.html
April 1988 System 6 (Mac OS 6, System Software 6.0) Last Mac OS written in assembly. 24 bits memory access.

Trevor

Mikey-San
12-23-2008, 01:06 PM
Dunno why you're jumping down my throat for "sources" here when I cited Inside Macintosh:

http://developer.apple.com/documentation/mac/pdf/MoreMacintoshToolbox.pdf

Edit because I get the feeling you're dying to pound me with links again:

It doesn't appear that it's primarily assembly, like I said. IM was a Pascal-heavy text, but there were lots of assembly resources in it. The system itself may have more asm, but I see no evidence either way for this other than the IM volumes. It sounds like those people you quote are just repeating each other. In fact, two of them contain identical quotes.

trevor
12-23-2008, 01:24 PM
That document is copyright 1993. System 7 was introduced in 1991, two years prior. By 1993 we were well into System 7.1. Therefore, that document refers to stuff after System 6.

Trevor

http://upload.wikimedia.org/wikipedia/en/timeline/60046c6c00050988490be73cab244165.png

Mikey-San
12-23-2008, 01:28 PM
http://www.euronet.nl/users/mvdk/developunder.html
http://www.amazon.com/Macintosh-Pascal-Programming-Primer-programming/dp/020157084X
http://developer.apple.com/samplecode/SettingUpStdFile/listing1.html

Seriously, this is retarded. It's pretty clear that Apple used Pascal and assembly in the System 6 days.

Mikey-San
12-23-2008, 01:33 PM
http://serenity.uncc.edu/web/ADC/2005/Developer_CD_Series/August/%20What's%20New/Technical%20Notes%20and%20Q&As/ADC%20Reference%20Library/technotes/cm/pdf/cm_505.pdf

http://books.google.com/books?id=PYS6S1L62akC&pg=PA373&lpg=PA373&dq=%22system+6%22+toolbox+pascal&source=web&ots=DKIuvlFiZc&sig=9D4SD2vXs5FxnkTA2P6tZX3I2eM&hl=en&sa=X&oi=book_result&resnum=4&ct=result

trevor
12-23-2008, 01:36 PM
There's no question that Apple used Pascal in those days, and encouraged application developers to do the same, but the question at hand is whether or not they wrote the majority of System 6 OS in Pascal. I have seen no evidence to that effect, and a lot of people saying that it was written in Assembly.

Trevor

Mikey-San
12-23-2008, 01:37 PM
Dude, the Mac Toolbox was Pascal. Do you really think Apple was not using Toolbox to build large portions of the operating system?

http://www.tikirobot.net/wp/tag/mac/

I see a lot of underinformed people repeating each other, and I see a lot of technical evidence that says Apple used at least as much Pascal as anything else.

jeffo
12-23-2008, 03:42 PM
HO-LEEE-COW!!! I did not mean to get some fist fight going here!

Fastmac
12-23-2008, 04:18 PM
HO-LEEE-COW!!! I did not mean to get some fist fight going here!

Seconded. It's going to be the longest thread here at this rate.:)

acme.mail.order
12-23-2008, 07:02 PM
Seconded. It's going to be the longest thread here at this rate.:)

Nah. The I-want-to-monitor-my-children threads already have that dubious honour.

The original Mac (1984) OS evolved rather directly from the Lisa, mainly written in Pascal. I am right now looking at a June, 1983 story about Bill Atkinson (one of the key software architects for Apple in the early '80s in case you didn't know) which breaks down MacPaint's source code as:

5,804 lines Pascal code
2,738 lines 68000 assembly

Which compiled into under 0.05 megabytes (~50k) of executable.

It also notes that the original MacPaint pushed the limits of the original Mac to the point where there was sometimes only 100 bytes of available memory in the entire machine.

Therefore, it is rather more likely that OS7 was the first Mac OS devleoped entirely in a high level language, and that the transition was not the binary choice alluded to by the bunch of people quoting each other.

Mikey-San
12-23-2008, 07:15 PM
Nah. The I-want-to-monitor-my-children threads already have that dubious honour.

Those threads should be instantly closable. I remember a thread like that earlier this year where some schmuck wanted to spy on his wife or something.

acme.mail.order
12-23-2008, 07:31 PM
Mikey: in answer to the question you edited out, the info came from "Revolution in the Valley" by Andy Hertsfeld. Yes, an old-fashioned book. Anyone remember books?

Mikey-San
12-23-2008, 07:45 PM
Mikey: in answer to the question you edited out, the info came from "Revolution in the Valley" by Andy Hertsfeld. Yes, an old-fashioned book. Anyone remember books?

Yeah, as soon as I posted, I remembered to search on Folklore.org and found it instantly. me == fail

VirtualTracy
12-24-2008, 04:24 AM
Anyone remember books?

I had one of those moments on the weekend last, at a local market I hadn't been to for many months. While browsing the stalls I saw a trestle table laden with old books ....

I experienced a Farenheit 451 flash-back/forward