Poster | Thread |
Hypex
| |
Re: Trevor Dickinson nominated for comment of the year! Posted on 31-Oct-2022 15:14:04
| | [ #221 ] |
|
|
|
Elite Member |
Joined: 6-May-2007 Posts: 11200
From: Greensborough, Australia | | |
|
| @V8
Quote:
Who is asking for OS4 SW to be backported to 68k? And why? |
I've seen a lot of 68K people make comments about how they don't see why OS4 components cannot be recompiled as 68K. But not always to run on 68K, since a few would be running under UAE.
In fact, this would already be happening. OS3.2 has updated components and even has FFS7 LongNames. That wouldn't be possible unless it was backported from OS4 FFS7.
Quote:
Almost all OS4 SW is just quick and dirty ports of open source Linux games and small apps anyway. Though they live in private repos and almost never contribute the changes back upstream or take reviews of their patchsets. If you want to run Linux SW, why not just run Linux? |
Most of that Linux software would also run on Windows so might as well just run Windows as well.
So it's more OS4 components than open source ports.
But, there has been interest in running Linux games on 68K. In the past. And more so now with Vampire.
Quote:
If a modern m68, asic or in software, materializes. What OS4 software would anyone in that market be interested in instead of just porting the original linux sw from scratch? |
OS4 software that has an Amiga source.
Quote:
Is there really any ppc os4 software out there that the community cares about or wants to keep? I think not. Any and all amiga software that people care about are m68k. |
OS4 itself would be software a part of the community would like see back ported to 68K. The situation is that PPC is considered a failure and so it is thought that it should be back ported to 68K again. But that argument is fallacious because 68K is just as if not more dead. There are no more 68K CPUs being produced. The fastest current PPC in the AmigaOne series, in the X5000, runs at 2Ghz. The Apollo core has access to fast DDR but in the current state is not even close to Ghz clock rates.
The PPC has done well. It has been with Amiga for almost 30 years and with OS4 for over 15. Though I think at the 10 year mark it needed a replacement.
The 68K back port idea doesn't solve what PPC was intended to solve. It can just be emulated faster now days but it still won't be native. Also, it doesn't help with software using newer features, like 64 bit data types or vectors so is slightly a backwards step for certain types of software. |
|
Status: Offline |
|
|
Deaths_Head
| |
Re: Trevor Dickinson nominated for comment of the year! Posted on 31-Oct-2022 17:29:54
| | [ #222 ] |
|
|
|
Member |
Joined: 15-Apr-2005 Posts: 81
From: Unknown | | |
|
| Considering Apple have moved to arm & chip makers such as AMD & intel have got arm licences, appears to signal that x86 is approaching a ceiling in efficiency, because of this arm appears to be the obvious choice for the next cpu. Such a pity that all the parties can't pool their resources.
Some sort of low end motherboard that could be used in a future A500mini but with space on the board to add more capabilities to be adapted to be used in an entry level A1200 type "maxi" system would be great. A-eon also developing a higher end machine based on the same tech.
|
|
Status: Offline |
|
|
matthey
| |
Re: Trevor Dickinson nominated for comment of the year! Posted on 31-Oct-2022 18:02:06
| | [ #223 ] |
|
|
|
Super Member |
Joined: 14-Mar-2007 Posts: 1999
From: Kansas | | |
|
| Bosanac Quote:
Quote:
In addition calling Qualcomm's latest claims "riddled with inaccuracies," Arm said via email to Fierce Electronics Friday that its original claim against Qualcomm filed in early September is “aimed at protecting the Arm ecosystem and partners who rely on our intellectual property and innovative designs. Qualcomm has violated the terms of the Nuvia license agreement and yet it continues to use the technology, unlicensed. Arm is seeking to enforce Qualcomm’s obligation to destroy and top using the Nuvia designs that were derived from Arm’s technology.” |
https://www.fierceelectronics.com/sensors/arm-qualcomm-legal-battle-suggests-oems-need-arm-ip-licenses-not-chip-firms |
Both Qualcomm and Nuvia hold an architectural license agreement (ALA). This is a top license which allows full custom core designs using ARM ISAs. Apple and Nvidia also hold ALAs and have full custom ARM CPU core designs using ARM ISAs but they aren't being harassed, if Qualcomm's claims are true. The end of ARM's neutrality is likely to fracture their market dominance and standardization achieved using AArch64. Unless ARM relents, this rift is likely to grow with other businesses looking for architecture alternatives. Imagine Qualcomm not being able to use ARM ISAs for their CPUs, Samsung not being able to use AMD or their own GPUs with ARM CPUs in their SoCs or Innovation Technologies not being able to sell their GPUs for inclusion in SoCs with ARM CPUs. If the change in ARM licensing terms is true, there would be many businesses affected including large ones and many billions of dollars redirected. All these businesses that depend on the ARM ecosystem and take it for granted could find themselves feeling naked and vulnerable from the uncertainty.
Hypex Quote:
The 68K did stop production so should be easy enough for a newer CPU to emulate. OTOH, PowerPC hasn't seen mass production since around 2005 and not even a Ryzen can run rings about it with emulation yet. But, 68K only has 16 main registers to deal with. PPC has 32 with FPU as well and a real PowerPC has vectors on top, though they aren't really needed.
|
AMD Ryzen 7 3700X emulates the PPC based Nintendo Wii at 60fps.
Nintendo Wii U emulator for PC: Cemu (install guide: setup / config / tutorial) https://youtu.be/WZK19L2JUGc?t=654
While the Wii Broadway CPU only operates at 729MHz and the OoO integer performance is likely the same as the Gekko predecessor at 2.31DMIPS/MHz which may be slightly inferior to the P1022 CPU used in the A1222 "Tabor", there is a full standard PPC FPU and VMX with 50 added 3D SIMD instructions. The Wii GPU is also being emulated. It's obvious that the low end A1222 system could be emulated easily on a "Ryzen". While the X1000 and X5000 would be more challenging to emulate, they mostly gain CPU performance which is easily emulated. I expect an AMD Ryzen 7 3700X based system that costs half of an X5000 system could emulate the X5000 system.
Perhaps in response to this thread. Trevor Dickinson wrote the following.
https://www.amiga-news.de/en/news/AN-2022-10-00130-EN.html Quote:
My presentation with Enrico was the last event of the show on Sunday and I was surprised how many people were still around to hear our talk. We talked about our respective Amiga Next-generation journeys and outlined our joint plans for release of the A1222 Plus, Enrico alsotalked about the final Sam460 LE production run and revealed details of a PowerPC notebook ACube were developing for the GNU/Linux Open Hardware PowerPC project. During our presentation I made a throwaway comment about not wanting to see AmigaOS 4 running on a PC. I truly believe that any computer that aspires to carry the Amiga name should be a whole system complete with branding. Personally, I don’t care whether it is running on 68k, PowerPC, ARM or even x86 but it must look and feel like an Amiga system. Simply running AmigaOS 4 on any PC hardware does not make it an Amiga IMHO. If you don’t agree with me that is your prerogative and we will have to agree not to agree. At the end of the show, I had the privilege of presenting Markus with a special commemorative Amiga37 framed poster signed by all the VIP attendees. It was a hectic few days but I still had time to be interviewed by Andy Caulfield of Bedrooms to Billions for his latest filming project.
|
Emulation is the result of noncompetitive hardware. Is an Amiga label on PC hardware with a PPC CPU really an Amiga anymore than the same with an x86-64 CPU? Many people like AmigaOS 4 but the hardware is nowhere close to competitive. We don't need high end hardware that can't compete. Lower end hardware is cheaper, the AmigaOS is more competitive down there and the Amiga user base can be expanded faster. There is demand for inexpensive small footprint computers like the 68k Amiga below where standard Linux distros scale. How about creating Amiga hardware that plays to the Amiga's strengths before the Amiga is nothing but a virtual machine running on PC hardware?
Last edited by matthey on 31-Oct-2022 at 06:46 PM.
|
|
Status: Offline |
|
|
cdimauro
| |
Re: Trevor Dickinson nominated for comment of the year! Posted on 31-Oct-2022 19:25:40
| | [ #224 ] |
|
|
|
Elite Member |
Joined: 29-Oct-2012 Posts: 3646
From: Germany | | |
|
| @Hypex
Quote:
Hypex wrote:
The 68K did stop production so should be easy enough for a newer CPU to emulate. OTOH, PowerPC hasn't seen mass production since around 2005 and not even a Ryzen can run rings about it with emulation yet. |
Matt already replied and I agree with him. PCs, even not high-end, draw circles around PowerPC... under emulation. Take a look also at the PS3 emulator, which runs those games faster and/or better than the original system. Quote:
But, 68K only has 16 main registers to deal with. PPC has 32 with FPU as well and a real PowerPC has vectors on top, though they aren't really needed. |
Whatever number of registers are used, emulation is very very fast nowadays. Quote:
But, as byte code, or word code, I think PPC would make sense. Not as a JIT, but at load time, translating to host CPU on load. It's going to be needed if they shift CPU and want an efficient way of executing current apps. |
I don't agree. 68k have the largest software library. Plus, there are no killer apps for PowerPCs. So, there's nothing which could justify adopting the PowerPC as the ISA of reference / CLR for the Amiga/post-Amiga systems. Quote:
Hypex wrote: @OlafS25
Quote:
I thought Amithlon would translate code but not create new binaries? Similar to what Michal now plans with emu68 on ARM |
Not by itself. A special x86 compiler that could compile Amiga sources as x86 binaries. So it wasn't just the JIT but Amiga programs could run in x86 native code while the OS was emulated. |
I had the same idea time ago. This works very well because you can get very optimized native applications (full binaries: no JIT required. It's AoT compilation).
However it only works when you've the sources. Plus you need a complex trans-compiler which... somebody should write; not an easy task, even recycling an existing compiler. Quote:
In theory all the OS components except the core components like Kickstart and kernel could be recompiled and it would have been as close to x86 as AmigaOS could have got. But Hagge & Partner didn't do that despite having sources. Instead they just ripped it off. |
Not needed: AROS is already available for most of it. Quote:
Quote:
And yes transparent integration of system conform developed software like Petunia is not there, either you compile it for X86 or start UAE. Something like Petunia would have been nice on X86 and I even found such a project but it was not finished. Like always lack of motivated developers doing it for fun. MorphOS (and AmigaOS) has advantages there because they were financially supported (at least for some time). That helps a lot. Today I think it is less important to get it. People who use AmigaOS or MorphOS will not change platform anyway. And the people mostly interested in traditional amigas (68k) will not use it anyway. And the "outsiders" are not interested in 68k anyway. More important will be the merge between Aros and Linux. That will offer new opportunities. |
Petunia is fine tuned to run within OS4. Hard to compare with it. Since the 68K code it translates is running on the same endian, |
This first thing that should be forgotten is Petunia (and Trance for MorphOS): 68k code should run on a sandbox, with some transparent interface.
OS4 needs to be ported as it is to a new architecture. So, WITHOUT Petunia. You can think at the 68k sandbox AFTER that you ported the o.s.. Quote:
OS4 itself would be software a part of the community would like see back ported to 68K. |
It can't, because there were too many changes to the original Amiga o.s..
Unless you want to port OS4, as it is, to 68k. Quote:
The situation is that PPC is considered a failure and so it is thought that it should be back ported to 68K again. But that argument is fallacious because 68K is just as if not more dead. There are no more 68K CPUs being produced. The fastest current PPC in the AmigaOne series, in the X5000, runs at 2Ghz. The Apollo core has access to fast DDR but in the current state is not even close to Ghz clock rates. |
Nevertheless, PowerPC (big endian) is as dead as 68k.
Plus, 68k has a bigger software library itself. And 68k has much more external support (emulators, JIT compilers, compilers, tools, etc.). Quote:
The 68K back port idea doesn't solve what PPC was intended to solve. |
PowerPC never solved any 68k problem. So, I don't see the difference from this PoV. Quote:
It can just be emulated faster now days but it still won't be native. |
Neither PowerPC will be. But at least 68k has much more software and better support, as I've already said. Quote:
Also, it doesn't help with software using newer features, like 64 bit data types or vectors so is slightly a backwards step for certain types of software. |
Again, neither PowerPCs can. There's nothing that PowerPCs can make better than 68k, strictly from an architecture (ISA) perspetive. |
|
Status: Offline |
|
|
agami
| |
Re: Trevor Dickinson nominated for comment of the year! Posted on 1-Nov-2022 2:18:00
| | [ #225 ] |
|
|
|
Super Member |
Joined: 30-Jun-2008 Posts: 1648
From: Melbourne, Australia | | |
|
| @Hypex
Quote:
It can just be emulated faster now days but it still won't be native. |
Native schmative.
Here's what the majority of personal computer users, and therefore developers, care about : - Buying a computer with good cost/performance ratio (in any bracket) - Ability to easily purchase/download apps/games, install the apps/games (optional), and then run the apps/games - Apps/games are affordable as compared to mean discretionary income - Apps/games choice is plentiful - Minimum requirements for apps/games are below the median of the specifications range - Recommended requirements for apps/games are no more than one degree of standard deviation above the mode of the specifications range
While Steam gaming with Proton is a recent example, a more apt example was the ability to run PSP games (native MIPS) on PS Vita (native ARM). Yes, if the PSP game was ported to run natively on ARM it would have yielded more performance or run more efficiently, but the emulated running was equal or above PSP performance so gamers were satisfied.
Quote:
Also, it doesn't help with software using newer features, like 64 bit data types or vectors so is slightly a backwards step for certain types of software. |
Step 1. Establish a base 68k CRL which incorporates Soft 68k CPU(s) Step 2. This is entirely optional because there is AROS 68k - Backport AmigaOS 4 to 68k CRL with minimum operating requirement being a high performance soft 68k CPU Step 3. Things could go two ways here, and even in parallel: a) start introducing modern features to the 68k CRL for soft 68k CPUs, e.g. 64bit, b) start introducing new abstraction layers and APIs to the OS which run natively on x86 or ARM (LE).
Running old 68k apps/games is a bonus. Getting NEW apps/games developed is what is needed, and it's what both AmigaOS 4 and MorphOS on PPC didn't really deliver, all things considered.Last edited by agami on 01-Nov-2022 at 02:22 AM. Last edited by agami on 01-Nov-2022 at 02:20 AM.
_________________ All the way, with 68k |
|
Status: Offline |
|
|
pixie
| |
Re: Trevor Dickinson nominated for comment of the year! Posted on 1-Nov-2022 7:53:32
| | [ #226 ] |
|
|
|
Elite Member |
Joined: 10-Mar-2003 Posts: 3118
From: Figueira da Foz - Portugal | | |
|
| @cdimauro
Quote:
cdimauro wrote: In short, you do know nothing about the real emulation status about offloading stuff to the host system.
2D graphics is almost fully hardware accelerated (but it was partially done before it) with the current WiP WinUAE: http://eab.abime.net/showpost.php?p=1567624&postcount=1 - uaegfx all Picasso96 functions are now fully "hardware accelerated" (uses host side native code), excluding line draw. Previously some functions only supported common minterms/mask operations, unsupported operations were handled by Picasso96 software. Minterms that read and invert destination do not anymore invert unused/alpha bits if mode has them (15bit/32bit). Always use RGBFormat parameter in D7 if available, instead of RenderInfo RGBFormat variable. |
And yet strange as it may be, from the benchmarks I've made the stable build is faster then this beta._________________ Indigo 3D Lounge, my second home. The Illusion of Choice | Am*ga |
|
Status: Offline |
|
|
cdimauro
| |
Re: Trevor Dickinson nominated for comment of the year! Posted on 1-Nov-2022 8:40:54
| | [ #227 ] |
|
|
|
Elite Member |
Joined: 29-Oct-2012 Posts: 3646
From: Germany | | |
|
| @pixie
Quote:
pixie wrote: @cdimauro
Quote:
cdimauro wrote: In short, you do know nothing about the real emulation status about offloading stuff to the host system.
2D graphics is almost fully hardware accelerated (but it was partially done before it) with the current WiP WinUAE: http://eab.abime.net/showpost.php?p=1567624&postcount=1 - uaegfx all Picasso96 functions are now fully "hardware accelerated" (uses host side native code), excluding line draw. Previously some functions only supported common minterms/mask operations, unsupported operations were handled by Picasso96 software. Minterms that read and invert destination do not anymore invert unused/alpha bits if mode has them (15bit/32bit). Always use RGBFormat parameter in D7 if available, instead of RenderInfo RGBFormat variable. |
And yet strange as it may be, from the benchmarks I've made the stable build is faster then this beta. |
Which is really strange... :| |
|
Status: Offline |
|
|
pixie
| |
Re: Trevor Dickinson nominated for comment of the year! Posted on 1-Nov-2022 10:51:45
| | [ #228 ] |
|
|
|
Elite Member |
Joined: 10-Mar-2003 Posts: 3118
From: Figueira da Foz - Portugal | | |
|
| @cdimauro
Quote:
Which is really strange... :| |
The base is a previous test made on beta build, that goes on showing that speed fluctuate, nevertheless we can see by the white values being the speed ratio on stable build is bigger.
Quote:
Computer | UAE/AGA CPU | 68040/N/A OS/WB | V40.68/V45.5 SetPatch | V44.38 Chip/Fast | ~4.0MB/128.0MB GFX card | UAEGFX GFX system| Picasso96 Resolution| 1920 x 1080 x 24 Depth/Clrs| 16777216 colors Testlength| 2 stable | beta | function 0164274|0122729|RectFill() 0104693|0098430|RectFill()Pattern 7071457|6997539|WritePixel() 0008634|0008435|WriteChunkyPixels() 0008511|0008506|WritePixelArray8() 0840651|0795631|WritePixelLine8() 0649162|0603674|DrawEllipse() 0768957|0674164|DrawCircle() 0105169|0102961|Draw() 0772484|0685110|Draw()Hor/Ver 1616506|1470640|ScrollRaster()X 1909113|1757759|ScrollRaster()Y 0488982|0461703|PutText() 0602264|0578574|BlitBitMap() 0563534|0525889|BlitBitMapRastPort() 0005144|0005065|BitMapScale()
intuition 0004103|0003851|OpenWindow() 0023271|0026203|MoveWindow() 0006090|0006435|SizeWindow() 0015570|0015090|CON-Output 0000060|0000060|ScreenToFront()
|
Last edited by pixie on 01-Nov-2022 at 11:12 AM. Last edited by pixie on 01-Nov-2022 at 10:52 AM.
_________________ Indigo 3D Lounge, my second home. The Illusion of Choice | Am*ga |
|
Status: Offline |
|
|
Hypex
| |
Re: Trevor Dickinson nominated for comment of the year! Posted on 1-Nov-2022 13:08:40
| | [ #229 ] |
|
|
|
Elite Member |
Joined: 6-May-2007 Posts: 11200
From: Greensborough, Australia | | |
|
| @cdimauro
Quote:
Sure. The original platform has nothing missing from the new ports/rewritings. |
Except the libraries it relies on. A modern GCC would help. A GCC cross compiler would do the trick.
Quote:
RTG, AHI, virtual memory, very limited memory protection were already born with the Amiga o.s.. |
They were but a lot has diverged in OS4.
Quote:
Please, NO! The Amiga o.s. was born without interfaces and with the ubiquitous concept of "one library (interface) to dominate them all". |
LOL! Given they started with a library. I thought they would have called it books. Whose ever walked into a library and found an interface on the shelf?
It was their way of creating a clean way to implement a jump table and expand libraries into different "books" or "editions".
I may have it wrong but the reality is a library base with a negative jump table isn't that portable. What natural C structure can reference function pointers that exist before the structure? How would you define them? Seems some hackery was going on there in their custom ABI. Apart from that, a 68K jump table contained 68K jump instructions, so it's not portable to begin with. The jumps can be, but they they were called by a jump to that function address. I didn't notice it years ago, but a JSR x(Ay) type call doesn't call offset x from pointer in Ay, with a usual register indirect. It calls it from x+Ay, so Ay is used as a base address, despite looking like register indirect which was common in address registers.
That reminds me, OS4 is accused of using double indirection in ABI calls, without much info I have seen given. But, 68K ABI could be accused of the same thing. On 68K, it does a usual JSR x(A6) into the library base, to call a function. This then does a jump to the actual function. PPC ABI loads the base (or interface) into a register. Then it loads the function pointer from that into a register. It can then call it using PPC register conventions. Aside from the conventions it doesn't look much worse to me. What was the complaint about double indirection?
Quote:
It's good to have the additional features that were introduced on the new platforms, but interfaces are certainly NOT needed neither welcome (since they introduced a strong fork of the platform for developers). |
They didn't include a function to open them either. MorphOS manages to call PPC code without extra interfaces. But the function calls did internally use 68K ABI emulation. Now days they have SYSV for Amiga calls.
Interfaces also blur some things. Resources didn't need closing. So were somewhat open ended. But on OS4 a resource needs an interface opened. And then it needs closing. Which is different to one opening, call, then forget about it.
Quote:
PowerPC applications are mostly ports and I'm not aware of existing killer apps. |
The only killer app I know of on OS4 would be OS4. Well it was like that for a while. OS4 would have pushed up the value of PPC accelerators.
Early ports were OS3 programs with extra features. Using the extra power. Audio Evolution being an early example.
Later Linux took over as the source of the ports.
Quote:
So, it makes much more sense to use 68k as the Lingua Franca for the Amiga & post-Amiga worlds. |
Quote:
AROS used Janus-UAE for those cases. |
That's what I found out. Got disappointed there as there was an effort to run 68K apps or commands at least directly interfacing with AROS.
However, when running on x86, I expected Amithlon x86 binary support. Though it would have to somehow emulate the OS calls. |
|
Status: Offline |
|
|
cdimauro
| |
Re: Trevor Dickinson nominated for comment of the year! Posted on 1-Nov-2022 20:56:27
| | [ #230 ] |
|
|
|
Elite Member |
Joined: 29-Oct-2012 Posts: 3646
From: Germany | | |
|
| @pixie
Quote:
pixie wrote: @cdimauro
Quote:
Which is really strange... :| |
The base is a previous test made on beta build, that goes on showing that speed fluctuate, nevertheless we can see by the white values being the speed ratio on stable build is bigger.
Quote:
Computer | UAE/AGA CPU | 68040/N/A OS/WB | V40.68/V45.5 SetPatch | V44.38 Chip/Fast | ~4.0MB/128.0MB GFX card | UAEGFX GFX system| Picasso96 Resolution| 1920 x 1080 x 24 Depth/Clrs| 16777216 colors Testlength| 2 stable | beta | function 0164274|0122729|RectFill() 0104693|0098430|RectFill()Pattern 7071457|6997539|WritePixel() 0008634|0008435|WriteChunkyPixels() 0008511|0008506|WritePixelArray8() 0840651|0795631|WritePixelLine8() 0649162|0603674|DrawEllipse() 0768957|0674164|DrawCircle() 0105169|0102961|Draw() 0772484|0685110|Draw()Hor/Ver 1616506|1470640|ScrollRaster()X 1909113|1757759|ScrollRaster()Y 0488982|0461703|PutText() 0602264|0578574|BlitBitMap() 0563534|0525889|BlitBitMapRastPort() 0005144|0005065|BitMapScale()
intuition 0004103|0003851|OpenWindow() 0023271|0026203|MoveWindow() 0006090|0006435|SizeWindow() 0015570|0015090|CON-Output 0000060|0000060|ScreenToFront()
|
|
Thanks for sharing. To me it looks a clear regression.
Please share it to Toni on the proper thread, if you've an account on EAB. |
|
Status: Offline |
|
|
cdimauro
| |
Re: Trevor Dickinson nominated for comment of the year! Posted on 1-Nov-2022 21:14:23
| | [ #231 ] |
|
|
|
Elite Member |
Joined: 29-Oct-2012 Posts: 3646
From: Germany | | |
|
| @Hypex
Quote:
Hypex wrote: @cdimauro
Quote:
Sure. The original platform has nothing missing from the new ports/rewritings. |
Except the libraries it relies on. A modern GCC would help. A GCC cross compiler would do the trick. |
Only because those weren't ported (except for AROS / 68k, where several tools are updated).
However this isn't a lack of the o.s. itself. Quote:
Quote:
RTG, AHI, virtual memory, very limited memory protection were already born with the Amiga o.s.. |
They were but a lot has diverged in OS4. |
True, but nothing of those technologies is missing on the original o.s.. Quote:
Quote:
Please, NO! The Amiga o.s. was born without interfaces and with the ubiquitous concept of "one library (interface) to dominate them all". |
LOL! Given they started with a library. I thought they would have called it books. Whose ever walked into a library and found an interface on the shelf?
It was their way of creating a clean way to implement a jump table and expand libraries into different "books" or "editions". |
We, Amigans, were out of the "different editions" hell (also called DLL or shared objects hell on other o.ses) thanks to the single library / interface. Quote:
I may have it wrong but the reality is a library base with a negative jump table isn't that portable. What natural C structure can reference function pointers that exist before the structure? How would you define them? Seems some hackery was going on there in their custom ABI. |
C solves it from very long time: it's called... casting! Quote:
Apart from that, a 68K jump table contained 68K jump instructions, so it's not portable to begin with. The jumps can be, but they they were called by a jump to that function address. |
I don't see the problem. You can as well put a jump instruction for other architectures.
If 6 bytes aren't enough for it, you can resort to some different solutions. AROS/x64 has no entries were to put the jump instruction (albeit there was space: it takes 5 bytes), but its mechanism is much faster and flexible (indirect jump to address, which is fetched from memory). Quote:
I didn't notice it years ago, but a JSR x(Ay) type call doesn't call offset x from pointer in Ay, with a usual register indirect. It calls it from x+Ay, so Ay is used as a base address, despite looking like register indirect which was common in address registers.
That reminds me, OS4 is accused of using double indirection in ABI calls, without much info I have seen given. But, 68K ABI could be accused of the same thing. On 68K, it does a usual JSR x(A6) into the library base, to call a function. This then does a jump to the actual function. PPC ABI loads the base (or interface) into a register. Then it loads the function pointer from that into a register. It can then call it using PPC register conventions. Aside from the conventions it doesn't look much worse to me. What was the complaint about double indirection? |
So you don't have to load the library base on a register, but only the interface is loaded on a register and used to calculate the jump to the specific API.
Did I've understand correctly? Quote:
Quote:
PowerPC applications are mostly ports and I'm not aware of existing killer apps. |
The only killer app I know of on OS4 would be OS4. Well it was like that for a while. OS4 would have pushed up the value of PPC accelerators. |
So, people buy OS4 and very expensive under-powered PCs-with-PowerPCs only to... move the windows on the screen?!? Quote:
Early ports were OS3 programs with extra features. Using the extra power. Audio Evolution being an early example.
Later Linux took over as the source of the ports. |
Then there's nothing which justifies going to PowerPCs for the new CLR / Lingua Franca. Quote:
Quote:
AROS used Janus-UAE for those cases. |
That's what I found out. Got disappointed there as there was an effort to run 68K apps or commands at least directly interfacing with AROS.
However, when running on x86, I expected Amithlon x86 binary support. Though it would have to somehow emulate the OS calls. |
AFAIR there was possible to call x86 binaries from Amithlon. |
|
Status: Offline |
|
|
agami
| |
Re: Trevor Dickinson nominated for comment of the year! Posted on 2-Nov-2022 0:13:25
| | [ #232 ] |
|
|
|
Super Member |
Joined: 30-Jun-2008 Posts: 1648
From: Melbourne, Australia | | |
|
| @cdimauro
Quote:
So, people buy OS4 and very expensive under-powered PCs-with-PowerPCs only to... move the windows on the screen?!? |
Correction: To have the unique satisfaction of moving non MS Windows/macOS Finder/KDE Plasma/Gnome/other WM running on generic x86 "PC" hardware, windows on the screen.
Most of the unique Amiga UX concepts have long since been replicated and modernized (surpassed) on other platforms. The ones that haven't, have not been modernized by AmigaOS 4 as it was more interested in mimicking the old Amiga UX, rather than bring AmigaOS 4 users into more contemporary UX workflows.
So are they helping bring Amiga into the current age, or are they helping Amiga users stay in the past?
_________________ All the way, with 68k |
|
Status: Offline |
|
|
MEGA_RJ_MICAL
| |
Re: Trevor Dickinson nominated for comment of the year! Posted on 2-Nov-2022 0:38:49
| | [ #233 ] |
|
|
|
Super Member |
Joined: 13-Dec-2019 Posts: 1200
From: AMIGAWORLD.NET WAS ORIGINALLY FOUNDED BY DAVID DOYLE | | |
|
| Quote:
agami wrote:
Most of the unique Amiga UX concepts have long since been replicated and modernized (surpassed) on other platforms. The ones that haven't (...)
|
The only one I can think of, friend Agami, is draggable screens.
Which is indeed a thing of beauty, but how useful it actually is or - yes, I will dare say it - EVER WAS?
Quote:
So are they helping bring Amiga into the current age, or are they helping Amiga users stay in the past?
|
They are helping some sad greybeards to live a delusion of being still relevant.
/m!_________________ I HAVE ABS OF STEEL -- CAN YOU SEE ME? CAN YOU HEAR ME? OK FOR WORK |
|
Status: Offline |
|
|
cdimauro
| |
Re: Trevor Dickinson nominated for comment of the year! Posted on 2-Nov-2022 5:17:28
| | [ #234 ] |
|
|
|
Elite Member |
Joined: 29-Oct-2012 Posts: 3646
From: Germany | | |
|
| @MEGA_RJ_MICAL: OS4 machines are just PCs with a PowerPC CPU instead of an x86/x64 one. So, they are also using PC's graphic cards.
Then draggable screens are be implemented via (hardware = using the CPU) composing the screens' framebuffers. Nothing that can't be done on PC's o.ses.
AFAR AROS implemented it, but I'm not sure (never tried it). |
|
Status: Offline |
|
|
Karlos
| |
Re: Trevor Dickinson nominated for comment of the year! Posted on 2-Nov-2022 10:51:25
| | [ #235 ] |
|
|
|
Elite Member |
Joined: 24-Aug-2003 Posts: 4402
From: As-sassin-aaate! As-sassin-aaate! Ooh! We forgot the ammunition! | | |
|
| @natives
Just a friendly reminder. Code running under JIT is not emulated, it is native. Only an interpreter model can truly be referred to an emulation, since It provides an actual model that stepwise executes each instruction and the effect each has on a representation of the CPU, its registers and other state.
The exception to this is the hybrid hotspot model where non performance critical code is interpreted and only hot paths JIT compiled to native code.
If you think JIT is an emulation, you are looking at the problem domain from the wrong direction. Instead, think of the code being a tolenised low level programming language that's going to be compiled at runtime. _________________ Doing stupid things for fun... |
|
Status: Offline |
|
|
MEGA_RJ_MICAL
| |
Re: Trevor Dickinson nominated for comment of the year! Posted on 2-Nov-2022 17:03:35
| | [ #236 ] |
|
|
|
Super Member |
Joined: 13-Dec-2019 Posts: 1200
From: AMIGAWORLD.NET WAS ORIGINALLY FOUNDED BY DAVID DOYLE | | |
|
| Quote:
cdimauro wrote: @MEGA_RJ_MICAL: OS4 machines are just PCs with a PowerPC CPU instead of an x86/x64 one. |
Now, now, that's some deep level architectural knowledge.
Impressive!
/m_________________ I HAVE ABS OF STEEL -- CAN YOU SEE ME? CAN YOU HEAR ME? OK FOR WORK |
|
Status: Offline |
|
|
ferrels
| |
Re: Trevor Dickinson nominated for comment of the year! Posted on 2-Nov-2022 19:01:59
| | [ #237 ] |
|
|
|
Cult Member |
Joined: 20-Oct-2005 Posts: 922
From: Arizona | | |
|
| @MEGA_RJ_MICAL
Quote:
there is great OS4 software out there, you wouldn't want to deprive future DickinsOS user of such killer apps. |
LOL! I prefer to shorten the name to DickOS because those who use this OS tend to show up here trying to show that they have the biggest wanker based on all the pedantic and delusional posts they make. |
|
Status: Offline |
|
|
NutsAboutAmiga
| |
Re: Trevor Dickinson nominated for comment of the year! Posted on 2-Nov-2022 19:04:07
| | [ #238 ] |
|
|
|
Elite Member |
Joined: 9-Jun-2004 Posts: 12817
From: Norway | | |
|
| @Karlos
Guess it’s a kind yes and no answer to that, when you JIT something you to keep status of guest OS CPU registers in a table, and status of Guest OS CPU flags, its not like true native programs. there some wait time, for JIT to generate code. If and when the JIT cache is flushed, or it hits new code, that again cannot be compared to true native code.
Also JIT has to complete compilation pretty quickly, while GCC is allowed to spend a lot time thinking about the best result.
Last edited by NutsAboutAmiga on 02-Nov-2022 at 07:57 PM. Last edited by NutsAboutAmiga on 02-Nov-2022 at 07:06 PM.
_________________ http://lifeofliveforit.blogspot.no/ Facebook::LiveForIt Software for AmigaOS |
|
Status: Offline |
|
|
NutsAboutAmiga
| |
Re: Trevor Dickinson nominated for comment of the year! Posted on 2-Nov-2022 19:11:03
| | [ #239 ] |
|
|
|
Elite Member |
Joined: 9-Jun-2004 Posts: 12817
From: Norway | | |
|
| @cdimauro
Yes and this why emulations we have today are pretty poor, considering the hardware is almost the same on host as the guest, only the CPU really is required to be emulated, maybe a few north and southbridge chipsets. Technically you can write OS4 drivers for the host hardware, or the emulation box. Last edited by NutsAboutAmiga on 02-Nov-2022 at 07:53 PM.
_________________ http://lifeofliveforit.blogspot.no/ Facebook::LiveForIt Software for AmigaOS |
|
Status: Offline |
|
|
Karlos
| |
Re: Trevor Dickinson nominated for comment of the year! Posted on 2-Nov-2022 19:48:29
| | [ #240 ] |
|
|
|
Elite Member |
Joined: 24-Aug-2003 Posts: 4402
From: As-sassin-aaate! As-sassin-aaate! Ooh! We forgot the ammunition! | | |
|
| @NutsAboutAmiga
Quote:
Guess it’s a kind yes and no answer to that, when you JIT something you keep status of guest OS CPU registers in a table, and status of Guest OS CPU flags |
Well, that's a possible implementation for a JIT but it's not the only one. Mature JIT implementations have all sorts of global and trace optimised register allocation strategies. The "state" of the guest CPU is not necessarily maintained instruction to instruction the same way it is for an interpreter, rather at the end of a span of translated code, for example._________________ Doing stupid things for fun... |
|
Status: Offline |
|
|