Poster | Thread |
vidarh
| |
ACE (Amiga Basic compiler) compiled as cross compiler on Linux Posted on 22-Jul-2010 21:34:03
| | [ #1 ] |
|
|
|
Cult Member |
Joined: 4-Jan-2010 Posts: 580
From: London, UK (ex-pat; originally from Norway) | | |
|
| In case anyone is interested, the source tree is here: http://github.com/vidarh/ACE
I've made made a few bug fixes, and added a small set of workarounds for the (very small) set of Amiga specific API's that the ACE compiler depends on to get it to run under Linux.
Note that this is *ONLY* a port of the compiler itself, so the result is a cross-compiler for ACE basic programs. Not going to be very useful for most people. I did it mostly becuse I am toying with the idea of making it more portable (Linux and AROS) and adding a x86 backend - it depends on a very small m68k subset. The biggest chunk of work would be converting ca. 7k lines worth of runtime library to C.
(If you don't know what ACE is, it's a compiler for most of AmigaBasic + a number of extensions)
_________________ Wiki for new/returning Amiga users - Projects: ACE basic compiler / FrexxEd / Git |
|
Status: Offline |
|
|
Valiant
| |
Re: ACE (Amiga Basic compiler) compiled as cross compiler on Linux Posted on 22-Jul-2010 23:30:21
| | [ #2 ] |
|
|
|
Super Member |
Joined: 21-Oct-2003 Posts: 1110
From: West of Eden, VT USA | | |
|
| @vidarh
Cool! I'd definitely like to see it on AROS. Will be you be adding any additional features like some of the missing graphic objects commands and so forth? And if it could be made to generate PPC-native code... Right now I just need to find a BLink replacement that doesn't GR under AOS4.
_________________ -- -=#Val#=- Valiant@Camelot
Amiga 1000; Amiga 2000; Amiga 3000T; CD-TV; CD32; AmigaOne-XE 800Mhz G4;Sam400ep 666Mhz; AmigaOne X-1000 1.8Ghz PA6T-1682M |
|
Status: Offline |
|
|
vidarh
| |
Re: ACE (Amiga Basic compiler) compiled as cross compiler on Linux Posted on 23-Jul-2010 4:34:40
| | [ #3 ] |
|
|
|
Cult Member |
Joined: 4-Jan-2010 Posts: 580
From: London, UK (ex-pat; originally from Norway) | | |
|
| @Valiant
Quote:
Will be you be adding any additional features like some of the missing graphic objects commands and so forth? |
We'll see. If it's little enough work, perhaps, and if I come across any interesting source to "port" to it.
Quote:
And if it could be made to generate PPC-native code... Right now I just need to find a BLink replacement that doesn't GR under AOS4. |
It'd be easy enough to adjust the asm output so it's possible to use another assembler/linker for starters.
PPC code generation for it shouldn't be hard (if you don't worry too much about the most optimized code...), but it's is a bit of work. ACE uses very simple code generation. An x86 version is simpler - there's a near 1-to-1 correspondence for instructions for the most part, so it's just tedious. PPC is a bit more.
There's ca. 1500 lines of calls to a code generation function that uses M68k asm as text strings - that'd need to be replaced with calls to a code generation API. There's also ca. 7K lines of runtime libs in M68k asm, but most of it is straight forward if boring to convert to C...
_________________ Wiki for new/returning Amiga users - Projects: ACE basic compiler / FrexxEd / Git |
|
Status: Offline |
|
|
Mechanic
| |
Re: ACE (Amiga Basic compiler) compiled as cross compiler on Linux Posted on 23-Jul-2010 18:14:48
| | [ #4 ] |
|
|
|
Elite Member |
Joined: 27-Jul-2003 Posts: 2007
From: Unknown | | |
|
| @vidarh
I'm very glad to see people that still value BASIC. It is an important part of computing. |
|
Status: Offline |
|
|
vidarh
| |
Re: ACE (Amiga Basic compiler) compiled as cross compiler on Linux Posted on 23-Jul-2010 18:42:02
| | [ #5 ] |
|
|
|
Cult Member |
Joined: 4-Jan-2010 Posts: 580
From: London, UK (ex-pat; originally from Norway) | | |
|
| @Mechanic
It's not so much that I value BASIC as that I have a thing for working on compilers, and love "code archeology" - there's so many old basic programs out there it'd be a shame not to be able to let them live on in some form :)
I guess it does have it's place, though.
_________________ Wiki for new/returning Amiga users - Projects: ACE basic compiler / FrexxEd / Git |
|
Status: Offline |
|
|
Valiant
| |
Re: ACE (Amiga Basic compiler) compiled as cross compiler on Linux Posted on 24-Jul-2010 1:13:59
| | [ #6 ] |
|
|
|
Super Member |
Joined: 21-Oct-2003 Posts: 1110
From: West of Eden, VT USA | | |
|
| @vidarh
If there's any 'grunt' work that I might be able to help with, I'd be more than happy to...
_________________ -- -=#Val#=- Valiant@Camelot
Amiga 1000; Amiga 2000; Amiga 3000T; CD-TV; CD32; AmigaOne-XE 800Mhz G4;Sam400ep 666Mhz; AmigaOne X-1000 1.8Ghz PA6T-1682M |
|
Status: Offline |
|
|
vidarh
| |
Re: ACE (Amiga Basic compiler) compiled as cross compiler on Linux Posted on 24-Jul-2010 5:26:03
| | [ #7 ] |
|
|
|
Cult Member |
Joined: 4-Jan-2010 Posts: 580
From: London, UK (ex-pat; originally from Norway) | | |
|
| |
Status: Offline |
|
|
Valiant
| |
Re: ACE (Amiga Basic compiler) compiled as cross compiler on Linux Posted on 31-Mar-2013 16:42:11
| | [ #8 ] |
|
|
|
Super Member |
Joined: 21-Oct-2003 Posts: 1110
From: West of Eden, VT USA | | |
|
| @vidarh
Quote:
vidarh wrote: @Valiant
Once I start work on making the code generator retargetable there will indeed be quite a bit of gruntwork that's fairly simple in changing the current code generator calls.
|
Any further progress on this project?
_________________ -- -=#Val#=- Valiant@Camelot
Amiga 1000; Amiga 2000; Amiga 3000T; CD-TV; CD32; AmigaOne-XE 800Mhz G4;Sam400ep 666Mhz; AmigaOne X-1000 1.8Ghz PA6T-1682M |
|
Status: Offline |
|
|
matthey
| |
Re: ACE (Amiga Basic compiler) compiled as cross compiler on Linux Posted on 1-Apr-2013 22:35:59
| | [ #9 ] |
|
|
|
Elite Member |
Joined: 14-Mar-2007 Posts: 2364
From: Kansas | | |
|
| @Valiant Sorry I don't have any news on the project but I can answer your old question:
Quote:
Valiant wrote: @vidarh
Cool! I'd definitely like to see it on AROS. Will be you be adding any additional features like some of the missing graphic objects commands and so forth? And if it could be made to generate PPC-native code... Right now I just need to find a BLink replacement that doesn't GR under AOS4. |
I recommend Frank Wille's vlink to replace BLink:
http://sun.hasenbraten.de/vlink/
It's currently maintained/developed, supports several output formats, the source is available and it's portable. Vlink is part of the portable vbcc compiler. There is also Frank Wille's vasm if you need a good portable optimizing assembler.
|
|
Status: Offline |
|
|
x303
| |
Re: ACE (Amiga Basic compiler) compiled as cross compiler on Linux Posted on 2-Apr-2013 21:25:40
| | [ #10 ] |
|
|
|
Regular Member |
Joined: 19-Jan-2005 Posts: 179
From: Amsterdam | | |
|
| @vidarh
Quote:
I did it mostly becuse I am toying with the idea of making it more portable (Linux and AROS) |
Currently vbcc isn't available for AROS, although vlink supports the aros file format.
|
|
Status: Offline |
|
|