Welcome, Guest. Please login or register.

Author Topic: Hyperion: "Halloween special double-treat for the Classic AmigaOS"  (Read 37243 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline Iggy

  • Hero Member
  • *****
  • Join Date: Aug 2009
  • Posts: 5348
    • Show only replies by Iggy
Re: Hyperion: "Halloween special double-treat for the Classic AmigaOS"
« Reply #89 on: October 16, 2016, 10:55:50 PM »
Quote from: kolla;815399
Good for you, I am just happy I do not share your needs, I have my own needs and they are in general much better covered by open source based software.



You probably mean FreeBSD, but whatever - it is the BSD community, of which Apple is a part with their DarwinBSD which is the foundation of OSX, now macOS.



No, it could not "easily" have been built on something else, Steve Jobs was very clear about this.



It is not at all a fact, it is at best an illusion.

Quality of code has nothing to with whether it is open source or not, but open source allows _education_ and _participation_, from which great stuff and new opportunities can arise.

Bah! Free BSD, OpenBSD, both OS' with less market than Linux, and Linux is pretty dreadful.
 OSX/DarwinBSD - Which is the better of the two? Oh yeah, the COMMERCIAL version.
 So, what you think of as an illusion is a fact in the marketplace.
 Serious users don't rely on open source software (well, anywhere outside Germany).
 AND, Excel is significantly better than the spreadsheets offered in open software.
 
 Again, you get what you pay for.
"Not making any hard and fast rules means that the moderators can use their good judgment in moderation, and we think the results speak for themselves." - Amiga.org, terms of service

"You, got to stem the evil tide, and keep it on the the inside" - Rogers Waters

"God was never on your side" - Lemmy

Amiga! "Our appeal has become more selective"
 

Offline wawrzon

Re: Hyperion: "Halloween special double-treat for the Classic AmigaOS"
« Reply #90 on: October 16, 2016, 11:24:06 PM »
Quote from: Thomas Richter;815393
Sources do not follow the usual convention of .h files, rather depend on a delicate toolchain to generate these from the sources,

im not sure what you are talking about, but we have some similar kind of mechanism on aros too, to define library interface, and even building a regular third party amiga library is involving generating something like that from sources, so it shouldnt be unthinkable of by a regular amiga coder.


Quote
together with some assembler stubs that depend on implementation details of the compilers, plus several compiler-specific extensions - as for example to put the library base pointer into a specific register - which, even worse, are completely undocumented.
yes, libbase goes on68k in a particular register, was it a6? aros has a set of macros for that. there are complaints it isnt directly supported by the compiler and that the macro solution is ugly, yet i dont understand enough of this to tell why and how to make it better. however with some entity behind it, it might be easier to convince the gcc maintenance team to at least review the proposals of the patches pushed upstream for an obsolete os for an almost obsolete cpu architecture. i dont place much hopes with it, but if anything maybe apollo softcores may have some significance here.

Quote
I fiddled about a week understanding one particular compiler switch for the Lattice compiler that was nowhere in a manual and that was specifically added for CBMs needs and then left alone....

therefore im not sure if sticking to abandoned tools is always better than switching to currently used ones. but im noob in programming as i said.

Quote
In short: Too much to do, too many chances to get break something, with too little people to clean it up => just stick with what you have and of what you know that it does its job.  

As said, it compiles under Linux, so it's not that bad anymore, actually.

right, or at least one step at a time. however i was only loosely mentioning that there could be ways to consider if the general attitude was not to keep everything behind the closed doors. as it is, this way people will never learn, and there are ocassional gifted newcomers, only not to os4 camp, where they would have to sign nda beforehand. that is really killing all the spirit. but lets them have it their way.
 

Offline kolla

Re: Hyperion: "Halloween special double-treat for the Classic AmigaOS"
« Reply #91 on: October 17, 2016, 07:15:21 AM »
Quote from: Iggy;815403
Serious users don't rely on open source software

So which router are you using? And which operating system? There are quite a few open source based components in Windows too, you know.
« Last Edit: October 17, 2016, 07:18:47 AM by kolla »
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 olsen

Re: Hyperion: "Halloween special double-treat for the Classic AmigaOS"
« Reply #92 on: October 17, 2016, 08:11:02 AM »
Quote from: kolla;815401
You should get Iggy to buy you SCO UNIX, the old one, before they started relying on FreeBSD, maybe Xenix! Then it would be so much better! :laughing:
Thomas mentioned Linux as a build platform with regard to a different application.

The Amiga V40 operating system can be built completely natively, using tools which only run on the Amiga operating system itself. That's nice, but not so nice if you wanted to perform automated build verification / smoke testing / integration testing. This is best performed automatically, regularly on a dedicated build server.

How do you do that? Thomas found a solution for that problem, and it involves Linux (but could also run on FreeBSD/NetBSD/OpenBSD/MacOS X/CygWin/AmigaOS).

And, no, SCO Unix will not do, due to its age.
« Last Edit: October 17, 2016, 09:01:31 AM by olsen »
 

Offline Iggy

  • Hero Member
  • *****
  • Join Date: Aug 2009
  • Posts: 5348
    • Show only replies by Iggy
Re: Hyperion: "Halloween special double-treat for the Classic AmigaOS"
« Reply #93 on: October 17, 2016, 08:17:38 AM »
Quote from: kolla;815410
So which router are you using? And which operating system? There are quite a few open source based components in Windows too, you know.

I'm sure there are pieces of open source software in many proprietary OS'.
 I just don't feel comfortable relying on an entirely open OS.
 I've had much better experiences with closed operating systems, AND I can get support without having to go to a forum and asking for advice.
 
 As to my router, who really cares?
 I was using one when I purchased my internet service from Comcast.
 That's shelved as I'm using a higher tier FIOS connection (and Verizon supplied to hardware, so...).
 
 Look, I used to work with OS' that were often found in embedded applications, that's actually where I developed my intense dislike for Linux.
 So you're not going to sell me on open source OS' with an argument focused in that direction.
 
 And I must admit that I've occasionally considered exploring BSD, but its not a practical primary OS for me (any more than Linux would be).
 
 Now when I buy an X5000, I'll admit that I will be running Linux on it part of the time.
 BUT, that's a hobbyist system for me, so I'll accept some compromises.
"Not making any hard and fast rules means that the moderators can use their good judgment in moderation, and we think the results speak for themselves." - Amiga.org, terms of service

"You, got to stem the evil tide, and keep it on the the inside" - Rogers Waters

"God was never on your side" - Lemmy

Amiga! "Our appeal has become more selective"
 

Offline psxphill

Re: Hyperion: "Halloween special double-treat for the Classic AmigaOS"
« Reply #94 on: October 17, 2016, 08:34:30 AM »
Quote from: kolla;815399
No, it could not "easily" have been built on something else, Steve Jobs was very clear about this.

Steve Jobs was very clear about anything that would result in more money for Apple. His reality distortion field was strong.
« Last Edit: October 17, 2016, 08:39:22 AM by psxphill »
 

Offline kolla

Re: Hyperion: "Halloween special double-treat for the Classic AmigaOS"
« Reply #95 on: October 17, 2016, 09:59:27 AM »
Quote from: Iggy;815412
I'm sure there are pieces of open source software in many proprietary OS'.
 I just don't feel comfortable relying on an entirely open OS.
 I've had much better experiences with closed operating systems, AND I can get support without having to go to a forum and asking for advice.


From where do you get the idea that you have to go to a forum? Most open source software has bugtrackers where you submit bugs you encounter, and patches are welcome too. It was just two days ago I submitted a bug-report and a patch to have a piece of software build on non-x86 hardware, and this morning I got report saying the patch was accepted, appreciated and pushed upstream for next release.

Quote
 
 As to my router, who really cares?


You, according to yourself - "Serious users don't rely on open source software"

Maybe you do not rely on being online? Maybe you do not rely on service providers online?

Quote
I was using one when I purchased my internet service from Comcast.
 That's shelved as I'm using a higher tier FIOS connection (and Verizon supplied to hardware, so...).

 
What are the odds of that running Linux and busybox, do you think?

Quote

 Look, I used to work with OS' that were often found in embedded applications, that's actually where I developed my intense dislike for Linux.
 So you're not going to sell me on open source OS' with an argument focused in that direction.


I see, it is very personal, you worked with embedded, embedded moved to Linux, you got a dislike for it (which I can fully appreciate), and now you have a dislike for all open source just because "linux took my job".

Quote
And I must admit that I've occasionally considered exploring BSD, but its not a practical primary OS for me (any more than Linux would be).


macOS is pretty great as desktop. You could also look at TrueOS and GhostBSD. But, if Windows is your home, you will not feel at home anywhere else... well, maybe ReactOS.

Quote

 Now when I buy an X5000, I'll admit that I will be running Linux on it part of the time.


Then maybe you can send people like me some good vibes, who make sure software builds and works on that (and other) architectures that not at all "mainstream" for desktop use.

Quote

 BUT, that's a hobbyist system for me, so I'll accept some compromises.


Well, this hobby of yours is what runs the intertubes these days.
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 kolla

Re: Hyperion: "Halloween special double-treat for the Classic AmigaOS"
« Reply #96 on: October 17, 2016, 10:36:53 AM »
Quote from: olsen;815411
The Amiga V40 operating system can be built completely natively, using tools which only run on the Amiga operating system itself. That's nice, but not so nice if you wanted to perform automated build verification / smoke testing / integration testing.

Indeed, I fully appreciate that.

Quote
This is best performed automatically, regularly on a dedicated build server.

How do you do that? Thomas found a solution for that problem, and it involves Linux (but could also run on FreeBSD/NetBSD/OpenBSD/MacOS X/CygWin/AmigaOS).

It relies on the emulator (cannot recall the name) he has been working on, I suppose. This is great for future development, simplifies things a lot. The next steps would be to bit-by-bit replace the pieces of code that relies on "exotic" compiler options. This will most likely mean that you have to break the 512kB barrier for the kickstart - but so be it, at least temporary.

How do aspiring young developers, students etc, get to learn about how things work and how they can participate in improving the OS? No-one is getting any younger here.

Quote
And, no, SCO Unix will not do, due to its age.
Well, it is now called OpenServer and is based on FreeBSD, so I am sure it would work :laughing:
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
 

guest11527

  • Guest
Re: Hyperion: "Halloween special double-treat for the Classic AmigaOS"
« Reply #97 on: October 17, 2016, 12:28:56 PM »
Quote from: kolla;815415
It relies on the emulator (cannot recall the name) he has been working on, I suppose. This is great for future development, simplifies things a lot.
If anyone wants to know, most of the credits go to Christian Vogelsang, who set this project up. Its name is "vamos", and you find my branch here:

https://github.com/thorfdbg/amitools

Modifications I make there go back into Christian's repository, so don't worry. I don't want to separate this repository from his.

In addition to vamos, you need the V45 shell. Oh, and of course the Os sources.

Quote from: kolla;815415
The next steps would be to bit-by-bit replace the pieces of code that relies on "exotic" compiler options.  
Actually, the next step should be to collect all the pieces together and create a consistent Os source. That is, to fit back the "known good" upgrades back into the sources. From my side, this is layer, shell, "more", mathieee, - and what is not yet out - audio, keymap and keyboard (all from my side).

There are other components out there I would *like* to merge back, but of which I do not have the latest sources. SetPatch, FFS, scsi.

Once that is done, one can think on how to proceed from there. So first things first, please.
 

Offline kamelito

Re: Hyperion: "Halloween special double-treat for the Classic AmigaOS"
« Reply #98 on: October 17, 2016, 08:45:25 PM »
@Thomas Richter
I suppose that this is a kind of dream come true to you ;-)
Kamelito
 

Offline kolla

Re: Hyperion: "Halloween special double-treat for the Classic AmigaOS"
« Reply #99 on: October 18, 2016, 09:01:14 AM »
Quote from: Thomas Richter;815420
If anyone wants to know, most of the credits go to Christian Vogelsang, who set this project up. Its name is "vamos", and you find my branch here:

https://github.com/thorfdbg/amitools

Modifications I make there go back into Christian's repository, so don't worry. I don't want to separate this repository from his.


I must look into that, still have a few projects that have been "stalled" for years since I haven't bothered to keep a functional ADE/GG toolchain around on any of my Amiga systems. It would be great to just move it all into the "usual" workflow I have these days (git, jenkins+docker, repos).

Quote
In addition to vamos, you need the V45 shell. Oh, and of course the Os sources.


All available :)

Quote
Actually, the next step should be to collect all the pieces together and create a consistent Os source. That is, to fit back the "known good" upgrades back into the sources. From my side, this is layer, shell, "more", mathieee, - and what is not yet out - audio, keymap and keyboard (all from my side).


Actually, I would rather do it the other way around - first create consistent OS source of 3.1 as it was (and if possible, so one can "easily" build "clean" 3.1 from that), and then update the various components to their later incarnations, and add new components in a timely and tidy fashion. But, of course that is my opinion, you probably have compelling arguments for not doing it like this.

Quote
There are other components out there I would *like* to merge back, but of which I do not have the latest sources. SetPatch, FFS, scsi.


Why not start with what you do have, surely the processes can work in parallel?

Quote
Once that is done, one can think on how to proceed from there. So first things first, please.


Right, don't let us amateur thumb twiddlers slow you down :) :laughing:
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
 

guest11527

  • Guest
Re: Hyperion: "Halloween special double-treat for the Classic AmigaOS"
« Reply #100 on: October 18, 2016, 11:24:22 AM »
Quote from: kolla;815465
Actually, I would rather do it the other way around - first create consistent OS source of 3.1 as it was (and if possible, so one can "easily" build "clean" 3.1 from that), and then update the various components to their later incarnations, and add new components in a timely and tidy fashion. But, of course that is my opinion, you probably have compelling arguments for not doing it like this.
Just to be precise here: There is absolutely no problem building the Os. Type "make", and wait. So the build system works, and the Os sources work correctly. Don't worry about that.

The problem with the Os sources is that they delicately depend on the tools in the toolchain, so you cannot just take "a generic C compiler" and a generic 68K assembler. Instead, there are two compilers (lattice C and SAS 6.59), one assembler, a specific version of "gnuMake" and some other binaries that are compiled from scratch using the tools. Which is already an improvement given that intuition originally required a third compiler.

Cleaning this up, in particular cleaning up graphics, is a non-trivial task. Since it compiles and works stable, this is not an issue at this very moment.

The point is: Given the delicate nature of the system, it is very likely that a seemingly triival change breaks the messy parts of Os. If it ain't broken, don't fix it.
 

Offline olsen

Re: Hyperion: "Halloween special double-treat for the Classic AmigaOS"
« Reply #101 on: October 18, 2016, 11:55:19 AM »
Quote from: Thomas Richter;815468
The problem with the Os sources is that they delicately depend on the tools in the toolchain, so you cannot just take "a generic C compiler" and a generic 68K assembler. Instead, there are two compilers (lattice C and SAS 6.59), one assembler, a specific version of "gnuMake" and some other binaries that are compiled from scratch using the tools. Which is already an improvement given that intuition originally required a third compiler.


I would like to add that the build tools which are used to orchestrate the entire build process, as well as those specialist tools which knit together the Kickstart and Workbench contents, are available with full source code. The AmigaOS 3.1 build is almost entirely self-contained.

The only exceptions are the two compilers and the 68k assembler being used. I am not the expert, but it appears likely to me that the specific 68k assembler could be replaced. Which leaves the Amiga-platform-specific compilers as the biggest stumbling block. Please note that the compilers are not just used for building executable code, their respective debugging tools are important, too. The debuggers are really hard to replace.
 

Offline apa

  • Newbie
  • *
  • Join Date: Jan 2012
  • Posts: 47
    • Show only replies by apa
Re: Hyperion: "Halloween special double-treat for the Classic AmigaOS"
« Reply #102 on: October 18, 2016, 12:05:21 PM »
Two things i'd like to see in a future update is Peter Ks excellent rewritten icon.library included as default if possible (and allowed by him), and maybe pfs as a default filesystem (with PFSIO maybe) and an updated hdinstalltools.
 

Offline olsen

Re: Hyperion: "Halloween special double-treat for the Classic AmigaOS"
« Reply #103 on: October 18, 2016, 12:31:34 PM »
Quote from: apa;815470
Two things i'd like to see in a future update is Peter Ks excellent rewritten icon.library included as default if possible (and allowed by him)


The workbench.library/icon.library combo has, in my opinion, hit the wall so hard by now that it's coming out on the other side. The way in which workbench.library and icon.library interact with directory scanning is something I hesitate to call a self-inflicted injury. It certainly is not helpful. It is not helpful either to use large icon files. The interaction between the three parties (workbench, icon, dos) sort of works, but it works no better than it did in 1986: only the storage devices have become larger, and the CPUs have become faster.

Finally, I doubt the wisdom in including such a large (it's one single file), complex assembly language implementation in the operating system. It's bad enough that we have to deal with the FFS and the scsi.device driver family, and even dos.library. There is a place for assembly language code in the operating system, but in my opinion the solution should match the problem at hand in terms of complexity and maintainability.
 

Offline Gulliver

Re: Hyperion: "Halloween special double-treat for the Classic AmigaOS"
« Reply #104 from previous page: October 19, 2016, 12:24:18 AM »
Quote from: olsen;815471
Finally, I doubt the wisdom in including such a large (it's one single file), complex assembly language implementation in the operating system. It's bad enough that we have to deal with the FFS and the scsi.device driver family, and even dos.library. There is a place for assembly language code in the operating system, but in my opinion the solution should match the problem at hand in terms of complexity and maintainability.

In the end who cares about maintainability when you havent released a single patch to fix all the shortcomings of icon.library in more than a decade.

Maintainability is of no use if no one maintains it (which is pretty much what you did). Which is casually the opposite of what PeterK has been doing for a couple of years, despite it is in assembler, despite he had no sources to start with, despite he hadnt earn a dime during that process, and despite he added lots of advanced features to it, he still maintains it and takes care of any bug reports.

Of course, using assembler, does not apply in all situations, like components which have been actively maintained by Thomas Richter. But in the particular case of icon.library, PeterK`s solution is indeed much better in both features and performance than your own implementation of icon.library 45.x which has been unmaintained for more than a decade.

Assembler is not the best solution, but it is certainly better than unmaintained,  buggy and slow C code.
« Last Edit: October 19, 2016, 12:27:02 AM by Gulliver »