Welcome, Guest. Please login or register.

Author Topic: Zune for all platforms  (Read 20514 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline jacadcaps

  • Jr. Member
  • **
  • Join Date: Apr 2003
  • Posts: 65
    • Show all replies
    • http://dreamolers.meanmachine.ch
Re: Zune for all platforms
« on: September 20, 2011, 01:53:43 PM »
Quote from: HenryCase;660100
@Daedalus
Surely it's much simpler than that though.

When you write a program using MUI, you need to reference the MUI header file(s). As long as the Zune header files are named differently, it doesn't matter that the functions contained within them are named the same as their MUI equivalents, as the compiler will link to the functions you intended to use.

Perhaps the view that MUI and Zune cannot co-exist is being put forward by non-coders?


While you could prepare a Zune that'd run alongside MUI on MorphOS, you would indeed need to compile all apps for it with modified headers so that all classes would use a different name (a prefix, like some "non-coder" here suggested could work, but not in the compiler but in headers obviously ;) This of course means that you cannot compile a single binary that'd run using Zune or MUI depending on what's installed. You cannot replace MUI with Zune on MorphOS because MorphOS (for instance, intuition.library) relies on its internals heavily (structures, private methods, attributes, etc). Since those methods are, well, private, they wouldn't be available in Zune. And what would be the point of having two libraries alongside doing virtually the same (but Zune doing obviously less than MUI 4.0 and being poorly integrated)?
 

Offline jacadcaps

  • Jr. Member
  • **
  • Join Date: Apr 2003
  • Posts: 65
    • Show all replies
    • http://dreamolers.meanmachine.ch
Re: Zune for all platforms
« Reply #1 on: September 20, 2011, 02:01:03 PM »
Quote from: HenryCase;660092
So you're saying that the MorphOS developers made no allowances for having multiple versions of MUI running concurrently alongside each other? I find it hard to believe that the MorphOS devs would voluntarily give themselves such a limitation. Are you saying not even applying Zune as a set of statically-linked libraries is possible?


I suggest you read up on the early AmigaOS design concepts like shared libraries and BOOPSI. Since MUI uses both, it obviously cannot run alongside another set of libs/classes unless they would all use a different name (say, a prefix). That'd also mean only programs compiled for the cloned one specifically would use the clone. What would be the point of this? Static linking is against the public class concept, you'd have to modify the client sources a lot in order to be able to use a statically linked Zune (for instance, all places where subclasses are initialized).

Quote
Which version of MUI is available on all platforms?

AmigaOS 3.x and 4.x have MUI 3.8/9, MorphOS is based on MUI 4 and won't work with anything older.