# The Revival of Yellow Box?



## kainjow (Dec 7, 2005)

Cocoa on Windows



> By giving [Xcode] for free, Apple and Jobs hope to give Windows developer a competing alternative to Microsoft's Visual Studio and thus 'contaminate' the Windows environment with Mac-compatible, objective-C applications, instead of letting WINE do just the reverse.





> It is to be announced the very day when the first Intel Apple computer
> is commercially launched.



Now the whole concept of "Universal Binaries" is much clearer!

We also need a French translator for the link in the article (fryke?)


----------



## sourcehound (Dec 7, 2005)

kainjow said:
			
		

> Cocoa on Windows
> 
> 
> 
> ...



I don't believe this for a minute. To get Cocoa applications running under windows would take a lot of work on the programmers part, you can just expect a one-click compile for Windows compatibility. Wishful thinking, but it sometimes pays to dream!


----------



## kainjow (Dec 7, 2005)

Why not? It's been done before with NeXTSTEP?


----------



## AdmiralAK (Dec 7, 2005)

Nextstep apps did not work in windows just like that.

Personally I hope RedBox comes back


----------



## MisterMe (Dec 7, 2005)

AdmiralAK said:
			
		

> Nextstep apps did not work in windows just like that.


No thinking person said they did. OpenSTEP apps on other operating systems ran on a virtual machine, but appear to the user as native apps.


----------



## Mikuro (Dec 8, 2005)

sourcehound said:
			
		

> I don't believe this for a minute. To get Cocoa applications running under windows would take a lot of work on the programmers part


So what? Programmers are not morally opposed to work. 

It takes a lot of work to port some of my REALbasic projects to Windows, too. That doesn't mean I won't do it, and it certainly doesn't mean I'm not very glad to have the ability.

I wouldn't expect such a thing to be as easy as recompiling (at least not in practice), but if Apple makes it possible and _relatively_ easy, developers will take it from there.

Keep in mind that in the early days of OS X (then known as Rhapsody), Apple intended for Cocoa (then known as Yellow Box) to be a cross-platform API. For all you know they've been maintaining a Windows version all these years, just like they were maintaining an x86 version of OS X.

I'm not quite sure I believe it either, but I do think it's possible, and I also think it would be a very good move.


----------



## Lt Major Burns (Dec 8, 2005)

i don't understand


----------



## fryke (Dec 8, 2005)

Why do you mean you need french translation? The first post in the thread's in English. And it doesn't say much... My guess is that Apple _has_ updated Cocoa for Windows continuously (why not, it's a great thing to have lying around...). Maybe they've even used it for iTunes on Windows. The porting of WebKit was also rumoured to have been part of the iTunes for Windows thing, but someone from Apple cleared that up (it's not Safari inside iTunes).
Basically: I think Apple will not in the near future port more apps to Windows, that'd be counterproductive. Also I don't see them give Cocoa for Windows out anytime soon. But that might just be a personal opinion/feeling kinda thing.


----------



## whitesaint (Dec 8, 2005)

I thought openstep apps ran on any OS natively?  Afterall, NeXT had openstep/cocoa running on solaris, windows nt, and mac os.  Anybody remember openstep enterprise?  I may be wrong i just thought that cocoa/openstep apps could run on top of any reasonably powerful operating system, natively.

This would be a great thing, i've already compiled several apps for both powerpc and intel processors, and it only took two modifications to the projects, alot easier than i thought!  If this was true i would dance with joy, cocoa apps are far better than any windows apps, and to have windows users a choice of using cocoa is mind blowing.  It sure would give the developer a much wider audience than just the mac users.

However one bad side of it, if windows users can use mac apps, why switch to a mac?


----------



## fryke (Dec 8, 2005)

Yes, that's exactly what we're talking about here, whitesaint. The Yellow Box was Rhapsody's name for the openstep-package running on Windows (and Rhapsody both on intel and Mac hardware).


----------



## Lt Major Burns (Dec 8, 2005)

fryke said:
			
		

> Maybe they've even used [cocoa] for iTunes on Windows.



iTunes is one of the only main apps left in macos that is carbon, isn't it?


----------



## Mikuro (Dec 8, 2005)

iTunes, the Finder and QuickTime Player are all Carbon. I'm assuming that the Finder will be rewritten from scratch soon. But then again, I've been assuming that for _4 years_, and Apple has still barely touched the damned thing......*grumble*

I think it would be incredibly stupid for Apple to start releasing their own Cocoa apps for Windows. That's exactly the opposite of the impression I got when I heard about this. The biggest attraction to the Mac OS for many people is Apple's iApp suite.

Apple should not be encouraging Mac developers to port their programs to Windows. They need to promote the opposite. Delivering Cocoa and Xcode for Windows could help do that. It needs to be attractive to Windows developers who _aren't_ interested in the Mac. Then when they start using Cocoa and they realize it would be easy to make a Mac version and cover the entire market, then hey, they will.

But I don't see what Apple has to gain by releasing their own programs for Windows. Safari would just make Apple look bad, because let's face it: the only reasons anyone uses Safari on the Mac are A) it's standard and B) the Mac version of Firefox sucks in several key ways.


If Apple starts porting their apps to Windows and encouraging their developers to do the same, then I'll be left with the feeling that Apple is looking to phase out the Mac OS entirely in 5-10 years. And I don't like that idea one bit.


----------



## kainjow (Dec 8, 2005)

fryke, the guy posts a link to http://www.macbidouille.com/news/2005-12-01/#11945... not sure if it's relevent or not.


----------



## Mikuro (Dec 8, 2005)

Translation URL: http://translate.google.com/translate?hl=en&sl=fr&u=http://www.macbidouille.com/news/2005-12-01/ (last article on the page)

The translation is actually comprehensible (although still a bit of a chore to read). To summarize: They're saying that allowing OS X apps to run on Windows, using the OS X look & feel, would be a good way to give people using non-Apple PCs a taste of OS X while still keeping OS X locked to Apple's hardware. It would also attract Windows developers who want a way to make good cross-platform software, and would not elicit the ire of Microsoft as much as making OS X compete head-on with Windows.

I don't personally agree with that reasoning, but there's something to it.


----------



## fryke (Dec 8, 2005)

I just noticed that, too. Well: _That_ story merely is a write-up of thoughts on how Apple could avoid people installing cracked versions of intel OS X on their PCs - and calls the revival of Yellow Box (Cocoa for Windows) a possible solution, because that way, people could use Mac applications without having to install OS X in the first place. (Failing completely to see that those people want to see OS X, not OS X' applications...)


----------



## kainjow (Dec 8, 2005)

Mikuro said:
			
		

> iTunes, the Finder and QuickTime Player are all Carbon. I'm assuming that the Finder will be rewritten from scratch soon. But then again, I've been assuming that for _4 years_, and Apple has still barely touched the damned thing......*grumble*


QuickTime Player, at least in Tiger, is Cocoa. I hope that the Finder is rewritten in Cocoa for Leopard. *Please be true*



			
				Mikuro said:
			
		

> But I don't see what Apple has to gain by releasing their own programs for Windows. Safari would just make Apple look bad, because let's face it: the only reasons anyone uses Safari on the Mac are A) it's standard and B) the Mac version of Firefox sucks in several key ways.


No one said Apple would be releasing their own apps for Windows besides Safari. Apple realizes Safari is the dominant browser for Mac OS X because it obeys both Aqua and Internet standards, unlike Firefox, IE, Opera, iCab p), etc etc. There is nothing like that for Windows. Firefox still sucks on Windows - it's not native enough. IE is native, but is a security hole and doesn't obey standards. If Cocoa on Windows uses 100% native Windows GUI, then Safari for Windows would be killer.


----------



## symphonix (Dec 8, 2005)

> Maybe they've even used it for iTunes on Windows.



I'm not sure about iTunes, but I know for fact that QuickTime 7 is written in Cocoa, so this would imply that Apple have been maintaining some sort of Cocoa toolkit API for Windows. Whether this is in a form that is good enough for general release though is a mystery.



> iTunes, the Finder and QuickTime Player are all Carbon.



Not true. As of QuickTime version 7, QuickTime has been completely rebuilt in Cocoa. Check the packages and see for yourself.


----------



## Mikuro (Dec 8, 2005)

I stand corrected on QT7. I did not know that. Although it does still link the Carbon framework, so it's not 100% Cocoa. I notice that iTunes links the Cocoa framework, too, although I _think_ it's still primarily Carbon. The line has been a bit blurred since I think Jaguar, when it became possible to use both Carbon and Cocoa in the same app.

Out of curiosity, what are the telltale signs within the packages? I'm poking through the binaries themselves in HexEdit to see what frameworks they link against. Is there a simpler way to tell?


----------



## kainjow (Dec 8, 2005)

The QuickTime Player in QuickTime 7 is a Cocoa application. QTKit is Cocoa. However, QuickTime itself uses Carbon.

Usually I can tell an app is Cocoa just by looking at the interface. Carbon is not as good looking. Also, 99% of all Cocoa apps use the same About window, which has text fields that are selectable. Carbon doesn't have this by default.


----------



## whitesaint (Dec 8, 2005)

I'm thinking it's very easy to port apps to intel/powepc.  Once written for Intel, im sure the apps could run on some existing cocoa framework.  Afterall, not only is it processor independent, but kernel independent too of somesort.  Steve Jobs spend a good amount of time making sure the cocoa framework ran on any operating system, including Mach/BSD.

you guys are all right on the money.  I think Apple used some sort of carbon/cocoa hybrid to port itunes over, from what we know, they used the quicktime framework since the beginning when itunes was released.  They're probably installing a little bit of frameworks to make these programs work no matter what processor or OS.  just my 2 cents.


----------



## Lt Major Burns (Dec 8, 2005)

Cocoa Apps will always respect the dock when resizing.  you cannot resize past the dock with a cocoa app, carbon will happily let apps be bigger.

iphoto, garageband, safari, and now quicktime can't be resized past the dock.  itunes, the finder etc can be.


----------



## kainjow (Dec 10, 2005)

Safari on Windows XP? http://img487.imageshack.us/my.php?image=safwins5om.jpg


----------



## Mikuro (Dec 10, 2005)

Lt Major Burns said:
			
		

> Cocoa Apps will always respect the dock when resizing.  you cannot resize past the dock with a cocoa app, carbon will happily let apps be bigger.


These behaviors aren't really inherent to Carbon or Cocoa. True, many Carbon apps don't respect the Dock, but there's no reason they can't  it's just that developers don't get it "for free", like they usually would in Cocoa, and they're too lazy to implement it themselves (which would not be hard to do). Photoshop is an example of a Carbon program that does acknowledge the size and position of the Dock. (Although Adobe's behavior is slightly different from the standard Cocoa behavior, it's clearly an intentional difference.) Likewise, there are some Cocoa apps that use custom resizing routines, and they're in the same boat as Carbon apps.

QuickTime Player 6 respected the Dock, too, although not _quite_ the same way QTP7 and most Cocoa apps do.



			
				kainjow said:
			
		

> Safari on Windows XP? http://img487.imageshack.us/my.php?image=safwins5om.jpg


Where did that pic come from?


----------



## kainjow (Dec 10, 2005)

Mikuro said:
			
		

> Where did that pic come from?


Linked from http://www.osnews.com/permalink.php?news_id=12906&comment_id=70161


----------



## fryke (Dec 11, 2005)

Probably a Firefox or IE skin...


----------



## Mikuro (Dec 11, 2005)

Or a pure fabrication. Anybody's guess, really.

The pic contradicts the original linked post, though, in that it does not use Quartz-style font smoothing. Well, the title bar is smoothed, but nothing else. Too bad the picture doesn't show a page with actual text....


----------



## MisterMe (Dec 11, 2005)

The _OS News_ post says that the picture comes from elsewhere else.


----------



## fryke (Dec 12, 2005)

Hm. "Quartz-style font smoothing" is the part that's killing me about this rumour. Windows XP has _better_ font smoothing technology than Quartz', and I think it would be stupid to make YellowBox apps use Apple's own technology instead of the already integrated font smoothing technology Windows has.


----------



## Quicksilver (Dec 13, 2005)

So does this mean that if you develop an application on mac it will also run on windows?

Or

Is Apple releasing xCode for windows so that any xCode application developed on windows by developers will also run on a mac?

.


----------



## Lt Major Burns (Dec 14, 2005)

i could be wrong, but i thought it was just xcode is now on windows, so windows users don't have to buy a mac to develop their one piece of software for mac. once they've finished their windows version they can fire up xcode and port it across to macos, without actually having to buy a mac meaning more software for mac.

right? or wrong?


----------



## fryke (Dec 14, 2005)

Wrong. The idea of the Yellow Box on Windows (Cocoa) is to have a runtime-environment for Cocoa applications on Windows. You'd use Xcode on either an intel or PPC Mac to develop the app and then build 'universal' for OSX-PPC, OSX-intel and Windows-with-Cocoa.


----------

