Overview Features Instructions Performance Forum Downloads Products Reseller Contact

Welcome to the Apollo Forum

This forum is for people interested in the APOLLO CPU.
Please read the forum usage manual.
VISIT APOLLO IRC CHANNEL



All TopicsNewsPerformanceGamesDemosApolloVampireCoffinReleasesLogin
Information about the Apollo CPU and FPU.

Apollo Vamp V4 Mmu Bounty - How To?page  1 2 3 4 

J.M. Lapilainen

Posts 13
22 Sep 2019 02:42


Stefano Briccolani wrote:

  Everyone can run Linux on pc as well as windows.
  Linux on Vampire is a no-sense affair. Hobby computing is a different thing than mainstream needs. Hobby computing it's a sweet passion. Having a crawling Debian distribution on Vampire would raise attention on the qualities of Amiga? I don't think so..
 

  Everyone can run Quake on their PC. Quake on Vampire is a no-sense affair. See what I did there? I agree though, a crawling Quak.. Debian based garbage is probably something nobody wants to see but I think small and fast custom made distribution might be interesting to many. Not necessarily useful, certainly not "Amiga", but interesting. That's why we're talking about a bounty here.

I believe there are many of us who left Amiga (or some other m68k machine) back in the day and I know many who took the Linux pill. I was one and would nowadays feel right at home with a new m68k hardware running some form of Linux or BSD. I guess that's what remains of the passion I had long long time. In my opinion should qualify as a valid example of hobby computing too.


Vojin Vidanovic

Posts 1424
22 Sep 2019 05:21


J.M. Lapilainen wrote:

      I believe there are many of us who left Amiga (or some other m68k machine) back in the day and I know many who took the Linux pill.
   

   
    Thanks for the support of Linux idea. It is futuristic to current v2 and v4 abilities, but return of m68k arch to Linux, even alternate, would be great "Apollo effect" - a modern kernel backport optimized for 080 and a net/rtg driver is a foundation.
 
 
Samuel Crow wrote:

   
    Since MMU.library is closed source you'll have to pay Hyperion to command Thomas Richtor to unwillingly add 68080 support to his library and never release source code.  MuForce is basically Enforcer using MMU.library.  All OS3 MMU dependencies should be using MMU.library by now rendering the second requirement obsolete.
   
    Stretch goal one for AROS will render the first required goal totally obsolete as well because AROS already supports MMUs on other architectures anyway and doesn't need closed source code as a dependency.  Not to mention Gunnar and Thomas have a huge disagreement going on and collaboration between them is unlikely.
 

 
 
  Please propose better goals, not just criticise (with knowledge, for sure).
 
  If AOS 3.x MMU can be solved with licensing a lib, how can we find "how much".
 
  If AROS can already support V4 MMU, how to?
   


Gunnar von Boehn
(Apollo Team Member)
Posts 4171
22 Sep 2019 06:16


Sam you have some misunderstandings in some areas.

Please let me correct them:

A) APOLLO can support smaller pages than you mentioned.
B) Running MMU.library on 68080 can be done and is NOT blocked by Thomas Richter at all. Thomas Richter is open to enhance his library.

In fact there are many options to move forward.
a) Add 68080 Support to Mmu.lib
b) Direct add 68080 support to original Enforcer.
c) Use AROS
d) have 68040 MMU emulation for ease of Linux support.

All options are possible


Steve Ferrell

Posts 378
22 Sep 2019 06:21


@J.M. Lapilainen

The Vampire runs at ~100 MIPS.  Compare and contrast this to a Pentium MMX 200Mhz that runs at ~200 MIPS running Windows 98 and Opera 10.10.  Just getting Opera loaded takes over 30 seconds and rendering a very simple page such as the Amiga.org homepage literally takes minutes, this on a system roughly twice as powerful as a Vampire. 

My point being that running even such an ancient version of Opera brings the Pentium MMX to its knees, but hey at least it WILL render most modern web pages and play videos.  The current version of Opera is version 63.0.3368.94 by the way.

Running even a semi-modern Linux kernel on the Vampire would be ridiculously slow.  If you want Linux on the cheap running at acceptable speeds, buy a RaspberryPi for $30 and be happy.

The argument that developers need an MMU also falls flat.  Anyone doing serious 68K development is either going to use a cross-compiler on the OS of their choice, such as Windows or Linux with GCC, or they'll use native 68K Amiga dev tools under WinUAE/UAE with MMU enabled.

As for appeasing the haters out there, haters are just gonna hate, and the most vocal ones such as Kolla wouldn't be satisfied even if Gunnar did add a 68851 compatible MMU. They'd just find something else about the Vampire to attack. The haters obviously have personal issues with Gunnar and the team (and possibly psychological issues too) so they spend their lives attacking Gunnar and the team's work and spreading lies rather than doing anything productive.  It's the same trolls derailing every Vampire thread on every Amiga site that hasn't yet banned them, and that isn't going to change.


Samuel Crow

Posts 353
22 Sep 2019 06:41


Gunnar von Boehn wrote:

Sam you have some misunderstandings in some areas.
 
...
 
All options are possible

Thank-you Gunnar!  I appreciate it!  Options make me happy!  I was concerned that we might be backing into a corner!  I like the idea of byte addressable memory protection too so don't give that up, please!


Gunnar von Boehn
(Apollo Team Member)
Posts 4171
22 Sep 2019 06:48


Steve Ferrell wrote:

Running even a semi-modern Linux kernel on the Vampire would be ridiculously slow. 

Yes, you are certainly right on this.
Linux by design a lot slower than AMIGA OS.
And I think that we all agree that running Linux is not a working strategy to get Firefox on Vampire.

Nevertheless running Linux could make sense for other reasons for some people. The Apollo-Team has its love in the area of Amiga Os or Atari OS ... so Linux is not our main driving motivation. But with a Bounty Motivation for sure we will make Linux happen.


Marian Nowicki

Posts 17
22 Sep 2019 13:17


Nobody need full 68k MMU in vampire.
Something to catch null pointer access and to protect first memory page will be enough.



Gunnar von Boehn
(Apollo Team Member)
Posts 4171
22 Sep 2019 13:19


Marian Nowicki wrote:

  Nobody need full 68k MMU in vampire.
  Something to catch null pointer access and to protect first memory page will be enough.
   
 

  Actually this is already there.
  The MMU discussion is a little strange sometimes.
 
  I think we have several topics here:
  A) Emulated MMU for Full Linux
  B) Catching Bad pointers under Amiga OS
  C) Virtual memory and other obsolete topics


Thellier Alain

Posts 110
22 Sep 2019 13:45


There is not only null pointer to catch but also pointers to non existing memory
Typically an out of bounds indice for an array will give a bad access
Example: I did a Game Maker Studio emulator called GMAP. It load data for a game like tiles then do map with tiles based on their tile number/id
So we got something like
    DrawTile(&Game->Tiles[TileNum]);
Buut sometime no tile is coded TileNum=-1
Banng illegal access!!!

The problem is for writing or reading




Vojin Vidanovic

Posts 1424
22 Sep 2019 17:10


Gunnar von Boehn wrote:

  And I think that we all agree that running Linux is not a working strategy to get Firefox on Vampire.
 
  Nevertheless running Linux could make sense for other reasons for some people.

Vampire will have v6 or asic. We should be ready. I see no other way of bringing FF, vlc, libre etc. class software to vamp


M Rickan

Posts 170
22 Sep 2019 17:53


Gunnar von Boehn wrote:

But with a Bounty Motivation for sure we will make Linux happen.

So perhaps the most critical question is: how much effort/bounty would be required to implement and test the MMU?


M Rickan

Posts 170
22 Sep 2019 18:00


Vojin Vidanovic wrote:
Vampire will have v6 or asic. We should be ready. I see no other way of bringing FF, vlc, libre etc. class software to vamp

Also a valid point.

There is a vocal part of the community that just wants to preserve the past. That option already exists.

But as performance increases, so will expectations and opportunities.


Peter Heginbotham

Posts 165
22 Sep 2019 18:53


Gunnar von Boehn wrote:

Sam you have some misunderstandings in some areas.
 
  Please let me correct them:
 
  A) APOLLO can support smaller pages than you mentioned.
  B) Running MMU.library on 68080 can be done and is NOT blocked by Thomas Richter at all. Thomas Richter is open to enhance his library.
 
  In fact there are many options to move forward.
  a) Add 68080 Support to Mmu.lib
  b) Direct add 68080 support to original Enforcer.
  c) Use AROS
  d) have 68040 MMU emulation for ease of Linux support.
 
  All options are possible

Option a) would be my first choice



Vojin Vidanovic

Posts 1424
22 Sep 2019 19:35


m rickan wrote:

 
Gunnar von Boehn wrote:

  But with a Bounty Motivation for sure we will make Linux happen.
 

 
  So perhaps the most critical question is: how much effort/bounty would be required to implement and test the MMU?
 

 
  Would love to know that answer, too.
 
  For any bounty we need
 
  - clear amounth of prize, preferably no set date but paid 50-50 or all on completion
  - skilled coder that accepts it

Peter Heginbotham wrote:

  Option a) would be my first choice

I am OK with mmu.lib solution for AmigaOS, but would like to have linux kernel still :)


Gunnar von Boehn
(Apollo Team Member)
Posts 4171
22 Sep 2019 19:48


Vojin Vidanovic wrote:

  I am OK with mmu.lib solution for AmigaOS, but would like to have linux kernel still :)
 

 
MMU.lib is a complex topic.

Lets explain this by looking at other libs:
The 68040 needs the 68040.lib - as it misses some FPU instruction.
The 68060 really urgently needs the 68060 library - as it misses not only some FPU instructions but even some important Normal instructions.
 
Apollo 68080 does not miss these instructions - therefore it not needs those libraries.
In a clean AMIGA system we not want such libraries patching us when we not need them.

 
The MMU lib one the one hand side tries to offer a generic way to "open/use" the MMU - this idea is a good idea.
On the other hand it tries to work around some bugs in some old accelerators by "using" the MMU.
 
These are pretty ugly work arounds.
Vampire does not need such dirty hacks.
And in a clean system we actually do not want to have such hacks at all.




Samuel Crow

Posts 353
22 Sep 2019 20:02


Peter Heginbotham wrote:

Gunnar von Boehn wrote:

  In fact there are many options to move forward.
  a) Add 68080 Support to Mmu.lib
  b) Direct add 68080 support to original Enforcer.
  c) Use AROS
  d) have 68040 MMU emulation for ease of Linux support.
 
  All options are possible
 

 
  Option a) would be my first choice

That's up to Thomas Richter.  Option D as a linker lib could actually help option A as a temporary solution if Thomas isn't interested in the full job of the bounty and AmigaOS 3.2 at the same time.

Option D could also be a starting point for option C (although I'd like to see Kalamatee eligible for the stage 1 bounty because he needs the money as badly as anyone and knows more than I do about it).

Since MuForce supercedes Enforcer, can we at least rule out option B?  Likewise the rest of the MuTools replace all other MMU support for Amiga.  Memory.library that comes with MMU.library even replaces GigaMem.library!


Samuel Crow

Posts 353
22 Sep 2019 20:24


Vojin Vidanovic wrote:

Gunnar von Boehn wrote:
  And I think that we all agree that running Linux is not a working strategy to get Firefox on Vampire.
 
  Nevertheless running Linux could make sense for other reasons for some people.
 
Vampire will have v6 or asic. We should be ready. I see no other way of bringing FF, vlc, libre etc. class software to vamp

Firefox is being slowly rewritten in Rust for added parallelism.  Most of the Rust support libraries are portable due to very strict syntax that catches most bugs and all memory leaks and race conditions as well... ...as long as external code is confined to a few files' "unsafe" references.

This makes up-to-date compilers as important or more than new operating systems!  That said, the currently stalled LLVM backend for 68k is likely to depend on Bebbo's runtimes on AmigaOS3.  It will need cross compilation on Linux 64-bit at least to link current versions of Clang.  Not to mention that LLVM 68k is the backend for the Rust compiler.

Shall I start another thread about compilers and runtime libraries?


Gunnar von Boehn
(Apollo Team Member)
Posts 4171
23 Sep 2019 06:44


Vojin Vidanovic wrote:

  - clear amounth of prize, preferably no set date but paid 50-50 or all on completion
  - skilled coder that accepts it

Lets do this and size it.
From developers time perspective, right now is a very hot time.
The A34 and everyone in the team is preparing for the V4 launch,
compiling AROS, preparing new HW to demonstrate..
But I think after the computer fair we can tackle this.


Marian Nowicki

Posts 17
23 Sep 2019 10:07



Actually this is already there.

Cool. It is avaible to download somewhere?



Peeri the Sunlight

Posts 33
23 Sep 2019 11:02


Even I'm cooder I don't want that Apollo team spend efforts for "worthless" MMU. (master Seka don't utilize MMU) It is part of the fun to reboot after hours of coding and forgetting to save. It is eventually make code better and better.

Can we also rise a bounty for general developement of 080. Maybe bounty for Apollo core AISC?

posts 75page  1 2 3 4