Welcome, Guest. Please login or register.

Author Topic: What are your top AmigaOS annoyances that you'd like to see addressed?  (Read 17390 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline cgutjahr

  • Hero Member
  • *****
  • Join Date: Feb 2003
  • Posts: 692
  • Country: 00
    • Show only replies by cgutjahr
Re: What are your top AmigaOS annoyances that you'd like to see addressed?
« Reply #14 on: March 11, 2021, 05:40:16 PM »
Quote
That certainly explains the lack of standardization in the 1.x era. But then we had ASL/GadTools with OS2.0. In other words, why didn't that "fix" the problem from then on? Was it too late by that point to get compliance from developers?
Commodore Germany sold about 1.3 million Amigas running Kickstart 1.x (A1000, A500, most A2000s, CDTV) and some 0.2 million Amigas running 2.x (A500+, 600, later A2000s). Obviously, any sane software developer would target Kickstart 1.x.

The situation would only change later, when the A1200 showed up and most A500 users would abandon the platform for the PC.

Gadtools was by no means a full featured 'widgets' toolkit, it's pretty bare bones in terms of what it offers, and you have to do things like dynamic font size support and dynamic layout yourself which is a chore.
Sure, but we're talking 1990 here, I doubt the competition was doing any better back then?
« Last Edit: March 11, 2021, 06:26:21 PM by cgutjahr »
 

Offline Matt_H

Re: What are your top AmigaOS annoyances that you'd like to see addressed?
« Reply #15 on: March 11, 2021, 06:47:00 PM »
Commodore Germany sold about 1.3 million Amigas running Kickstart 1.x (A1000, A500, most A2000s, CDTV) and some 0.2 million Amigas running 2.x (A500+, 600, later A2000s). Obviously, any sane software developer would target Kickstart 1.x.

The situation would only change later, when the A1200 showed up and most A500 users would abandon the platform for the PC.

Okay, and then by the time most software was being written for 2.0+ in ~1994 we had the other GUI toolkits starting to proliferate, each with their own UI conventions. And that's why the lack of standards has persisted. It makes sense to me now. :) Do I have it right?
 

Offline kolla

Re: What are your top AmigaOS annoyances that you'd like to see addressed?
« Reply #16 on: March 11, 2021, 06:47:54 PM »
What really sucks is when you make drawer on the root of a disk, and just happen to name it “Disk”, confusion ensues... lol

Also sucks that despite having “redraw all”, “update all” and “reset wb” as menu options, NONE of them actually resets the icons to their saved positions on Workbench desktop itself (update all only does it on open volume and drawer windows).
B5D6A1D019D5D45BCC56F4782AC220D8B3E2A6CC
---
A3000/060CSPPC+CVPPC/128MB + 256MB BigRAM/Deneb USB
A4000/CS060/Mediator4000Di/Voodoo5/128MB
A1200/Blz1260/IndyAGA/192MB
A1200/Blz1260/64MB
A1200/Blz1230III/32MB
A1200/ACA1221
A600/V600v2/Subway USB
A600/Apollo630/32MB
A600/A6095
CD32/SX32/32MB/Plipbox
CD32/TF328
A500/V500v2
A500/MTec520
CDTV
MiSTer, MiST, FleaFPGAs and original Minimig
Peg1, SAM440 and Mac minis with MorphOS
 

Offline TribbleSmasher

Re: What are your top AmigaOS annoyances that you'd like to see addressed?
« Reply #17 on: March 13, 2021, 12:31:37 PM »
I really would like to see the whole ixemul idea properly solved, or, well, discarded for good.
Whatever it seems to provide should be incorporated in one way or another into the AmigaOS environment. keeping an API emulation alive for so many years is bonkers, period.
 

Offline NinjaCyborgTopic starter

Re: What are your top AmigaOS annoyances that you'd like to see addressed?
« Reply #18 on: March 13, 2021, 12:44:42 PM »
Ixemul provides a POSIX type environment to help with porting of complex Unix applications that need more than just a basic standard C library. On OS4 this was replaced with newlib which does much the same thing but it is much more up to date and a bit more 'Amiga-like' in it's implementation.

On OS3, there is both the 'libnix' option, which is a static library that does much of what ixemul does, except the latter does it as a shared library so in theory you only need one instance of it in memory, whereas if you use libnix you'll carry some of that weight with you in your own binary (though the linker only adds what you actually use). In practice, memory is cheap now and I'd like to think anyone using Amiga for anything serious, including serious hobby, has at least 6MB RAM if not a lot more. There's also clib2 which is a much expanded standard C library (much more than the old c.lib you got with SAS/C for example) that also goes a long way towards giving you POSIX compatibility.

On OS4 there's the also the most extreme option, AmiCygnix which, like it's inspiration Cygwin, attempts to give you the baseline part of a complete Linux distribution.

VBCC also has a POSIX link library which again covers a lot more than just the baseline C library. Indeed, I'm looking at using that to complete an up to date Python port. But I'm hoping for a decent SDK release for OS3.2.

In short, you can port a lot of non-GUI Unix/Linux software to Amiga these days relatively easily, but of course you'll find a lot of the recent stuff needs far more RAM and processing power than a classic Amiga can provide. And you need a more recent build of GCC too. Finally as always, the lack of Unix fork() creates issues.
 

Offline TribbleSmasher

Re: What are your top AmigaOS annoyances that you'd like to see addressed?
« Reply #19 on: March 13, 2021, 01:24:28 PM »
So what are the most used posix/ixemul calls that needed to be implemented?
1. fork()
...

 

Offline NinjaCyborgTopic starter

Re: What are your top AmigaOS annoyances that you'd like to see addressed?
« Reply #20 on: March 13, 2021, 01:32:52 PM »
It's more than just the C library, full POSIX compliance dictates shell (command line) behaviour, security model, filesystem conventions, and a baseline set of command line tools. The shell conventions and filesystem can be mostly emulated. The security model can be ignored if you don't care about security. But it's not a small amount of work. But as I said, most of that work has been done, at least for OS4, and you can get by on OS3, I just wish there was a standard SDK baseline we were all using, as collaborating is a pain when everyone has slightly different setups for their toolchain.

fork() is not simple to emulate either if you don't have a Unix-like kernel, and compatible hardware, to begin with. Even Cygwin has to jump through hoops to implement fork(). fork is the tool of lazy developers though too. Dependency on fork is why Apache Web Server is inferior to Nginx for example.
 

Offline TribbleSmasher

Re: What are your top AmigaOS annoyances that you'd like to see addressed?
« Reply #21 on: March 13, 2021, 02:21:09 PM »
Is it advised still to persue posix compatibility with AmigaOS just for the sake of faster ports of some nonGUI tools? This ixemul was obviously meant to be a temporarily solution, but seems to stick and i don't like it, it is a sinkhole.
 

Offline NinjaCyborgTopic starter

Re: What are your top AmigaOS annoyances that you'd like to see addressed?
« Reply #22 on: March 13, 2021, 03:18:09 PM »
Back in the early 90s, Amiga was the only mainstream platform with half decent POSIX compatibility that wasn't itself a Unix. This was of course pre- NextSTEP, pre-Windows NT kernel with unix services, pre-BeOS and pre Linux being anything more than a student project.

I attribute this to two things: the Amiga OS developers taking some inspiration from Unix (and the notorious Unix haters handbook I reckon), and more especially, the geekgadgets work. I'm not sure who even did that work, ixemul and friends seem to have just appeared out of thin air. I'm sure someone else will post with more information about that. I, like you, always found GeekGadgets to be a bit too 'un Amiga' like but the fact is it was necessary for some of the more advanced software we got especially in the absence of a more full featured standard C library.

I believe MorphOS has made it a core part of the platform, rather than going down the OS4 path of integrating newlib, which has turned out I think to be the better solution.

[Edit] - well I did some research and apparently Fred Fish was behind it, and in his day job he also worked on the early GDB which explains his familiarity with the GNU suite of software that it was built on, and he worked at Cygnus i.e. he was part of the Cygwin team. Remember, GNU on its own is the layer of common tools that sits on top of the Linux kernel, to make a mostly POSIX compatible complete Linux operating system. RIP Fred. And look at that photo https://en.wikipedia.org/wiki/Fred_Fish - Matt Dillon (DICE C compiler and lots of other stuff), Oliver Wagner (Voyager and all those other MUI internet tools).
« Last Edit: March 13, 2021, 03:24:18 PM by NinjaCyborg »
 

Offline Matt_H

Re: What are your top AmigaOS annoyances that you'd like to see addressed?
« Reply #23 on: March 13, 2021, 05:02:59 PM »
Given that ixemul on 68K has fragmented into so many non-compatible implementations now, I think static/compiler-side linking is the way to go for the future. As said above, memory is cheap now.

And I’ve said this ever since they were introduced, but I think OS4 has its own problems with the SObjs: implementation. With softlinks/hardlinks and different versions of a given SObj mutually incompatible with each other (and none of them have $VER strings), it’s creating dependency hell on AmigaOS. As a user, it feels like it provides zero benefits but lots of headaches. Yes, there’s a convenience factor for developers for porting from *nix, but I’d rather this was handled statically as an improvement to the SDK.
 

Offline NinjaCyborgTopic starter

Re: What are your top AmigaOS annoyances that you'd like to see addressed?
« Reply #24 on: March 13, 2021, 05:23:13 PM »
Yeah SObjs is bad enough on Linux where it somehow originated as a way to share small amounts of resident code by forcing the MMU to do loads of unnecessary extra work. So much for Torvalds obsession with efficiency. In practice as you say it leads to DLL hell, worse even than on windows where everybody long ago gave up and just keeps their DLLs in their own directory. Releasing things as SObjs in theory incentivises developers to do interface management. In practice they don't. The only advantage it brings to OS4 is making it slightly easier to port code that's structured that way. But if you're going to use it you best put the versions you need in your own application specific PROGDIR:SObjs drawer.
 

Offline nyteschayde

  • VIP / Donor - Lifetime Member
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 643
    • Show only replies by nyteschayde
    • http://www.nyteshade.com
Re: What are your top AmigaOS annoyances that you'd like to see addressed?
« Reply #25 on: March 13, 2021, 07:04:46 PM »
Fonts!

The severe lack of fonts. All the tools to get truetype fonts to work are all kludges. The closest to best is using AFAOS, which doesn't always work, but when it does, it adds support for anti-aliasing which makes a huge difference with larger screen resolutions and RTG.

My dream is that 3.2 would support truetype fonts out the door.
Senior MTS Software Engineer with PayPal
Amigas: A1200T 060/603e PPC • A1200T 060 • A4000D 040 • A3000 (x2) • A2000 Vamp/V2 • A1200 (x4) • A1000 (x3) • A600 Vamp/V1 • A500
 

Offline Gulliver

Re: What are your top AmigaOS annoyances that you'd like to see addressed?
« Reply #26 on: March 13, 2021, 08:11:29 PM »
Fonts!

The severe lack of fonts. All the tools to get truetype fonts to work are all kludges. The closest to best is using AFAOS, which doesn't always work, but when it does, it adds support for anti-aliasing which makes a huge difference with larger screen resolutions and RTG.

My dream is that 3.2 would support truetype fonts out the door.

Unfortunately, truetype was not planned for 3.2.

However, I reiterate the invitaion to join us, and maybe then you can help us accomplish that for AmigaOS 3.3.

Think about it.  ;)
 

Offline Matt_H

Re: What are your top AmigaOS annoyances that you'd like to see addressed?
« Reply #27 on: March 13, 2021, 09:55:49 PM »
But if you're going to use it you best put the versions you need in your own application specific PROGDIR:SObjs drawer.

While I hope that the OS4 roadmap calls for phasing out SObjs entirely at some point, this is a great interim/medium-term solution. I admire the OS4 devs' desire to make *nix code more portable, but I think that effort would be better spent on build systems and development libraries rather than new runtime paradigms for users.
 

Offline NinjaCyborgTopic starter

Re: What are your top AmigaOS annoyances that you'd like to see addressed?
« Reply #28 on: March 13, 2021, 10:05:04 PM »
Fonts! Oh a huge annoyance for the longest time was the difficulty of making font aware user interfaces. Thanks be for Reaction and those who did the work in 3.9 and now 3.2 to reimplement everything using it. That's one annoyance that can be crossed off the list.

But I know what @nyteschayde means. Steve Jobs was famously as picky about fonts and font rendering as he was about rounded corners and that's one area where classic MacOS undeniably beat us back in the day. Both the default choice of fonts and the font engine leave a lot to be desired. Praise be also for the freetype2 port.

I'd also settle for a redesign of topaz 8 that is easier on the eye but which has all the same glyph dimensions.

Even OS4 comes with some pretty iffy fonts from the limited pool of fonts that were totally free in 2005. Let's hope the next version leverages some of the nice free for all uses fonts Google has been spitting out in recent years.
 

Offline Matt_H

Re: What are your top AmigaOS annoyances that you'd like to see addressed?
« Reply #29 from previous page: March 14, 2021, 01:10:05 AM »
OS4 has made some progress on fonts by unifying all (most?) outline font types under a single TypeManager/Intellifont/Fountain-like program. On OS3 we still need separate font install utils for TTF, PostScript, Intellifont, etc. So step 1 would be bringing a similar unified utility to OS3.

Step 2 would be  better font family detection across the board. I'd like to see ASL font requesters display, e.g., just Arial and not all of Arial, Arial Bold, Arial Italic, Arial Bold Italic, etc. The subtype should be selectable from another gadget in the requester. And if I have a font and I set it to be italic I want the system to automatically use the italic variety of that font, not apply some algorithmic distortion to it.

Step 3 would be the ability to drop some .ttf or .otf files into Fonts: and have them just work - without having to "install" them.