English Amiga Board


Go Back   English Amiga Board > Main > Amiga scene

 
 
Thread Tools
Old 07 June 2021, 15:23   #1301
Matt_H
Registered User
Matt_H's Avatar
 
Join Date: Jul 2008
Location: Boston, MA
Posts: 545
Quote:
Originally Posted by Predseda View Post
Next version will be Vista. Or maybe from preventing legal infrigments, Waste?


Quote:
Originally Posted by boemann
The real version numbers (the 3.2 is just a PR number) are much more important as programs rely on these numbers to do the right thing. We are now at 47.
Out of curiosity, what are your internal criteria for bumping up the internal version numbers? In other words, what makes 3.2 v47 instead of e.g. v46.5?
Matt_H is offline  
Old 07 June 2021, 16:08   #1302
Phantasm
Not a Rebel anymore
Phantasm's Avatar
 
Join Date: Apr 2005
Location: UK
Age: 48
Posts: 375
Quote:
Originally Posted by Warty View Post
Is it like crossing the streams? What happens? End of the world type stuff? And who is responsible for this V49(non)K problem?

In all seriousness, where will it go wrong with a '50'? Some kind of backwards compatibility thing?
see here:
https://wiki.amigaos.net/wiki/AmigaOS_Versions

Versions 50+ are already in use as Kickstart 4 and software could easily get confused when requesting specific versions of libraries if they ask for v50 (or higher) of a particular library assuming that they are getting a kickstart 4 (compatible) version.
Phantasm is offline  
Old 07 June 2021, 16:16   #1303
alancfrancis
Registered User

alancfrancis's Avatar
 
Join Date: Jun 2020
Location: Scotland
Posts: 121
I think V50 is AOS4.0 ?
alancfrancis is offline  
Old 07 June 2021, 16:28   #1304
bubbob42
Registered User
 
Join Date: Oct 2012
Location: Germany
Posts: 529
Quote:
Originally Posted by Matt_H View Post
Out of curiosity, what are your internal criteria for bumping up the internal version numbers? In other words, what makes 3.2 v47 instead of e.g. v46.5?
Finally a question about numbers that's not tainted by politics/thingswemustnottell.

For libraries: We bumped to V47, because we extended the API with new Tags, Functions, etc. The version bump is needed so programmers who would like to use the new functions could be sure they would be present by requesting version 47 as minimum when calling OpenLibrary().

For other components: Many updated or new programs of OS3.2 also use the V47 API, so they were bumped as well.
bubbob42 is offline  
Old 07 June 2021, 17:16   #1305
Debvgger
Registered User

 
Join Date: Jun 2020
Location: Another World
Posts: 25
Liking 3.2 so far, thank you very much for your work.
Debvgger is offline  
Old 07 June 2021, 17:29   #1306
Olaf Barthel
Registered User
 
Join Date: Aug 2010
Location: Lehrte, Germany
Posts: 296
Quote:
Originally Posted by Matt_H View Post
Out of curiosity, what are your internal criteria for bumping up the internal version numbers? In other words, what makes 3.2 v47 instead of e.g. v46.5?
As Marcus already mentioned newly introduced operating system API dependencies are the best single criterion.

A weaker criterion are functional changes which are made to an older component, and this updated component then becomes part of a new operating system release. Commodore did that with scsi.device, for example, in Kickstart 3.1. Not all Kickstart ROMs would use scsi.device V40, but would use an older version (V39) instead.
Olaf Barthel is offline  
Old 07 June 2021, 19:09   #1307
Romanujan
Registered User
 
Join Date: Dec 2007
Location: Szczecin/Poland
Posts: 392
Quote:
Originally Posted by Phantasm View Post
Versions 50+ are already in use as Kickstart 4 and software could easily get confused when requesting specific versions of libraries if they ask for v50 (or higher) of a particular library assuming that they are getting a kickstart 4 (compatible) version.

I wonder how many M68K software behaves like this.
Romanujan is offline  
Old 07 June 2021, 23:24   #1308
Warty
Registered User

 
Join Date: Aug 2018
Location: Minneapolis, USA
Posts: 233
Quote:
Originally Posted by alancfrancis View Post
I think V50 is AOS4.0 ?
See, this is why I'm always happier just ignoring the existing of 4.x and pretending it never happened.

I see the problem though, thanks.

#define MINVERSION  40


Hmm. Maybe it would be ok to leapfrog the 50s, and go to 60 at some point? (is 4.x in active development still? Or even just tack on a 100, so it goes 47, 48, 49, 150, 151?

Seems to me the team is making pretty significant changes with 3.1.4 and 3.2, so it's not really an academic exercise: you're going to hit the limit of 50 within 5-6 years at current pace, no?

My CD came today, and let me say this: Great job on the installation doc! I especially like the back inside cover.

Does anyone know why there is no FAQ available on the Hyperion site? The front page says it's available to registered users, but I'm registered, and I don't see anything in the downloads section or FAQ section??
Warty is offline  
Old 07 June 2021, 23:34   #1309
Romanujan
Registered User
 
Join Date: Dec 2007
Location: Szczecin/Poland
Posts: 392
Quote:
Originally Posted by Warty View Post
See, this is why I'm always happier just ignoring the existing of 4.x and pretending it never happened.

I don't know what the developers intend to, but IMHO there is no good, universal solution possible. I fear there will be some versioning changes which will prevent old (classic) software from properly reporting library versions (they will show something like 49.xx even on OS 3.12 in the distant future) - not fun at all.
Romanujan is offline  
Old 08 June 2021, 11:05   #1310
Phantasm
Not a Rebel anymore
Phantasm's Avatar
 
Join Date: Apr 2005
Location: UK
Age: 48
Posts: 375
Quote:
Originally Posted by Romanujan View Post
I don't know what the developers intend to, but IMHO there is no good, universal solution possible. I fear there will be some versioning changes which will prevent old (classic) software from properly reporting library versions (they will show something like 49.xx even on OS 3.12 in the distant future) - not fun at all.

The problem with that is that when you request a minimum version of a library using openlibrary at the moment you only have the option of specifying the major part of the version number - you cannot request eg you want 49.32 as a minimum. This could be changed I guess but it leaves little option for separating out major and minor releases. You could move to a multi-part version numbering system eg 49.1.1 49.2.1 etc i guess but i've no doubt that whatever the devs decide to do it will be a significant change and will end up breaking something as that probably can't be helped
Phantasm is offline  
Old 08 June 2021, 11:12   #1311
Minuous
Coder/webmaster/gamer
Minuous's Avatar
 
Join Date: Oct 2001
Location: Canberra/Australia
Posts: 2,325
You can check the lib_Revision field of the library after opening.
Minuous is offline  
Old 09 June 2021, 02:23   #1312
coldacid
WinUAE 1200/40, V4SA
coldacid's Avatar
 
Join Date: Apr 2020
Location: Candinavia
Posts: 279
Can always start treating the `version` argument to OpenLibrary as signed and start over again from LONG_MIN!
coldacid is offline  
Old 09 June 2021, 03:29   #1313
wiser3
Registered User

 
Join Date: Sep 2018
Location: Canada
Posts: 63
How about we jump from v49 to v60. Yeah it screws over OS4.x stuff, but there isn't much of it and that's ok with me.
wiser3 is offline  
Old 09 June 2021, 05:52   #1314
Warty
Registered User

 
Join Date: Aug 2018
Location: Minneapolis, USA
Posts: 233
Quote:
Originally Posted by Olaf Barthel View Post
Can't think of a reason why it won't

Come to think of it, I don't remember if we actually baked a SuperKickstart disk as part of the distribution. Hm... but https://aminet.net/util/misc/MakeSuperDisk.lha should see you through.
Has anyone got this working yet?

I dug out an old PowerCD I found in a dumpster 15 years ago and after installing AmiCDFS on my 1.3/3.1 A3000, the 3.2 disk loaded right up. Installation was smooth. (after rebooting some interesting things happened, LoadModule didn't like my AMAX partition, but... )

However, when I put the super kick I made from my bonus code and from the kicka3000.rom file into DEVS/ as "Kickstart", and reboot, it get flashing yellow screen after a while. I also made a super kick 1.3/3.2 disk, and that doesn't work either. I reverted to the 3.1 kick in DEVS, and computer comes up fine.

file size of the 31 superkick is identical to file size of 32 super kick. 526848.

I used that same kicka3000.rom file with UAE and didn't have any trouble.
Warty is offline  
Old 09 June 2021, 15:45   #1315
Romanujan
Registered User
 
Join Date: Dec 2007
Location: Szczecin/Poland
Posts: 392
Quote:
Originally Posted by wiser3 View Post
How about we jump from v49 to v60. Yeah it screws over OS4.x stuff, but there isn't much of it and that's ok with me.
Precisely (or re-use 50.x version). OS 4 never really took off, OS 4.2 development was announced nearly a decade ago and is still not available, Tabor was announced 6 years ago and is still not available, probably not much 68k software can utilize 50.x extra features. IMHO the most problematic might be some installers, trying to install PPC binaries - but this isn’t anything unfixable.
Romanujan is offline  
Old 09 June 2021, 15:49   #1316
Ulysses13
Registered User

 
Join Date: May 2020
Location: Surrey / UK
Posts: 102
Add a zero and go to 500.

Avoid bumping into established canon by travelling into the far future, just like Star Trek Discovery...
Ulysses13 is offline  
Old 09 June 2021, 16:30   #1317
Olaf Barthel
Registered User
 
Join Date: Aug 2010
Location: Lehrte, Germany
Posts: 296
Quote:
Originally Posted by Ulysses13 View Post
Add a zero and go to 500.
Version numbers of libraries cover the range of 1..255 for now unless program code uses the exec.library/MakeLibrary function (which is rarely used because there is a more convenient way to accomplish this). The limitation is in the 'Resident' structure:

Code:
struct Resident {
    UWORD rt_MatchWord;	/* word to match on (ILLEGAL)	*/
    struct Resident *rt_MatchTag; /* pointer to the above	*/
    APTR  rt_EndSkip;		/* address to continue scan	*/
    UBYTE rt_Flags;		/* various tag flags		*/
    UBYTE rt_Version;		/* release version number	*/
    UBYTE rt_Type;		/* type of module (NT_XXXXXX)	*/
    BYTE  rt_Pri;		/* initialization priority */
    char  *rt_Name;		/* pointer to node name	*/
    char  *rt_IdString;	/* pointer to identification string */
    APTR  rt_Init;		/* pointer to init code	*/
};
This is what's being used when a library or device is loaded into memory and initialized. No workaround for this limitation is available yet, but, as I mentioned, we have a few ideas on how to resolve the version numbering issue
Olaf Barthel is offline  
Old 09 June 2021, 16:33   #1318
Olaf Barthel
Registered User
 
Join Date: Aug 2010
Location: Lehrte, Germany
Posts: 296
Quote:
Originally Posted by Warty View Post
Has anyone got this working yet?
Not yet. We have a good idea now as to what's going on (the MMU setup which makes the SuperKickstart resident gets wiped out when the Kickstart is initialized for the first time). This still needs a bit more research & development, I'm afraid
Olaf Barthel is offline  
Old 09 June 2021, 17:44   #1319
Daedalus
Registered User

Daedalus's Avatar
 
Join Date: Jun 2009
Location: Dublin, then Glasgow
Posts: 5,349
Regarding OS4, there's still a small amount of development going on, with the most recent update being released just before Christmas. It's currently using V54.x components.

I happen to use 68k software that's OS4-aware, so there's definitely software that could fall foul of such a versioning conflict unless it's somehow worked around.

It's not ideal, but OS4 has a concept of API versions, which means a single library can have multiple different interfaces, which allows overlapping and potentially incompatible functions to be segregated. If no specific interface version is requested, you get the old 3.1-style interface for compatibility with older software, and to use newer versions of the functions, you need to request an appropriate API version. Perhaps a similar scheme could be adopted, or even the same scheme, with the 68k exec defaulting to requesting a specific 68k interface version?
Daedalus is offline  
Old 09 June 2021, 21:09   #1320
E-Penguin
Banana

E-Penguin's Avatar
 
Join Date: Jul 2016
Location: Darmstadt
Posts: 1,062
Code:
----- Library Base Structure ----------------------------------*/
/* Also used for Devices and some Resources */
struct Library {
    struct  Node lib_Node;
    UBYTE   lib_Flags;
    UBYTE   lib_pad;
    UWORD   lib_NegSize;	    /* number of bytes before library */
    UWORD   lib_PosSize;	    /* number of bytes after library */
    UWORD   lib_Version;	    /* major */
    UWORD   lib_Revision;	    /* minor */
    APTR    lib_IdString;	    /* ASCII identification */
    ULONG   lib_Sum;		    /* the checksum itself */
    UWORD   lib_OpenCnt;	    /* number of current opens */
};	/* Warning: size is not a longword multiple! */
Scope for using the revision field? Should be good all the way through to V49.255...
E-Penguin is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
AmigaOS 3.1.x v 3.9 steve_mynott New to Emulation or Amiga scene 35 19 April 2020 06:23
AmigaOS 3.9 PoLoMoTo support.WinUAE 8 27 August 2011 18:06
AmigaOS 3.5 or 3.9 maddoc666 support.Apps 12 22 February 2010 08:02
AmigaOS koncool request.Apps 6 04 June 2003 17:45
AmigaOS XL sturme New to Emulation or Amiga scene 4 15 January 2002 02:13

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 20:22.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, vBulletin Solutions Inc.
Page generated in 0.12214 seconds with 14 queries