Welcome, Guest. Please login or register.

Author Topic: Amithl*n and Aros?  (Read 1588 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline ThemambomanTopic starter

  • Lifetime Member
  • Full Member
  • ***
  • Join Date: Mar 2002
  • Posts: 164
    • Show only replies by Themamboman
Amithl*n and Aros?
« on: April 03, 2003, 11:20:53 PM »
Just curious.  I remember seeing that there is a port of GCC for Amithlon that would compile x86 native code for use in Amithlon.

I was wondering if some x86 compiled portions of the AROS system could be dropped into Amithlon for use?

Does anyone know if there is some type of flag to let Amithlon to not try to emulate a section of code?

 

Offline Fats

  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 672
    • Show only replies by Fats
Re: Amithl*n and Aros?
« Reply #1 on: April 04, 2003, 07:34:31 PM »
No code compiled for Amithlon will run on AROS or vice versa. This is because the amithlon code uses the structure alignment and endianness of m68k to be able to run parallel with m68k code. AROS uses the native x86 alignment and endianness.
Trust me...                                              I know what I\'m doing
 

Offline Kronos

  • Resident blue troll
  • Hero Member
  • *****
  • Join Date: Feb 2002
  • Posts: 4017
    • Show only replies by Kronos
    • http://www.SteamDraw.de
Re: Amithl*n and Aros?
« Reply #2 on: April 04, 2003, 09:31:55 PM »
Quote

Themamboman wrote:
Does anyone know if there is some type of flag to let Amithlon to not try to emulate a section of code?



AFAIK remember it was done by calling a function with an odd address
which will lead to an excpetion in the 68k-emu (code has to start
at even addresses on 68k). The exception-handler will than know the
code is x86 and bypass the emu.
1. Make an announcment.
2. Wait a while.
3. Check if it can actually be done.
4. Wait for someone else to do it.
5. Start working on it while giving out hillarious progress-reports.
6. Deny that you have ever announced it
7. Blame someone else