23 May 2012, 17:29 | #1 |
Registered User
Join Date: Nov 2009
Location: UK
Posts: 497
|
XAMOS - new cross-platform rewrite of jAMOS
I present my very latest AMOS BASIC reimplementation.
XAMOS (Cross-AMOS) is a complete re-write of jAMOS in C++ using SDL libraries and Boost headers. The initial release is alpha 0.23, based on the corresponding jAMOS version number. This initial release is run-only and does not feature an editor at this stage. However, it is compatible with almost all programs created with the latest jAMOS editor. All jAMOS examples (without AMAL) are running in XAMOS, often with a serious speed boost over the Java original, particularly on low-end platforms. AMAL is not yet implemented at this stage, although some groundwork has been done and this is planned for a later release. The planned AMAL subsystem for XAMOS will be called XAMAL. Binaries are provided for Win32 (tested on Windows XP, Windows 7 and Windows 8 Consumer Preview) and Linux x86 and x64 (tested on Ubuntu 12.10). Both archives contain batch files for the relevant system for launching the included examples. Enjoy the latest AMOS BASIC reimplementation. Get it here! Update: 64-bit Linux binaries are now available. Last edited by Mequa; 14 December 2012 at 10:20. |
24 May 2012, 13:05 | #2 |
Zone Friend
Join Date: May 2006
Location: France
Posts: 1,835
|
Any plan for an OSX version?
|
24 May 2012, 13:18 | #3 |
Registered User
Join Date: Nov 2009
Location: UK
Posts: 497
|
It shouldn't be too difficult to build for OS X, once the SDK and needed libraries/headers are installed. Use the non-Windows Makefile to build. I don't have access to a Mac at present though, so can't release my own binaries at present. If anyone with experience compiling on Macs wants to have a go trying to build it on OS X, and sharing the resulting binaries/errors, post the results here.
This could eventually be ported to NG Amigas such as OS4, MorphOS and AROS. At present I've had some strange bugs on such platforms which need to be ironed out first. They have support for SDL, so it's certainly feasible. (I might need to remove the dependency on Boost headers beforehand though, I'm just using it for a couple of hash tables at present to speed up development.) The Win32 (MinGW) version, as well as working well on XP, Windows 7 and Windows 8 Consumer Preview, has been confirmed working just fine on good old Windows 98 SE too, and even mostly working on the original Windows 95. |
25 May 2012, 07:53 | #4 |
Registered User
Join Date: Nov 2009
Location: UK
Posts: 497
|
BTW, I'm off to have heart surgery today - I planned my initial release of this project to before the procedure. It was already ahead of schedule so I released it Wednesday. Hopefully things will go well and I'll be continuing this project soon.
|
25 May 2012, 08:38 | #5 |
A3000-Fan
Join Date: Sep 2008
Location: Germany
Posts: 321
|
Get well soon!!!
|
31 May 2012, 04:46 | #6 |
Registered User
Join Date: Nov 2009
Location: UK
Posts: 497
|
Am recovering well thank you, and have been working on porting the AMAL subsystem from Java to C++. Almost all code is ported, however it still requires some major debugging to work in C++.
The AMAL Environment Generator (from AMOS's AMAL Editor) is already mostly working. This was included for legacy reasons in jAMOS and XAMOS as it forms a part of AMOS AMAL .abk banks (not yet directly supported), and was first introduced in jAMAL. The XAMOS parser/interpreter however has already surpassed the Java-based jAMOS one in some areas, such as support for hybrid C-style syntax and support for custom (static) datatypes, which are not yet fully operational in the Java version. The next release will feature an example of this. I'll most likely release my work-in-progress soon, then focus on getting AMAL working. Then once I have the core XAMOS system up to speed with jAMOS (and also fix some bugs in jAMOS), I can look at working in three directions: 1) Expand both jAMOS and XAMOS to support AMOS-like features such as multiple Amiga-style screens, full rainbow support, screen resizing, screen cloning, and of course, collision detection. I'll dig up the Jamagic code for my old Project Myqu (2003) which could be helpful here... 2) Add a lightweight editor to XAMOS similar to the one found in jAMOS, including text console output. Perhaps a sprite bank viewer too. 3) Improve language support in both XAMOS and jAMOS, including syntax error checking, more AMOS-like syntax, and other core language features. |
31 May 2012, 21:54 | #7 |
68k RULEZ
Join Date: Jul 2010
Location: Germany
Posts: 199
|
Why not a clone of the AmosPro Editor ?
|
31 May 2012, 22:06 | #8 |
Alien Breeder
Join Date: Mar 2011
Location: NW Ohio
Posts: 276
|
I would love to see this up and running on MorphOS, AROS, and OS 4 some day!
|
31 May 2012, 22:46 | #9 | |
Registered User
Join Date: Nov 2009
Location: UK
Posts: 497
|
Quote:
I was thinking of using QT for the editor (to initially clone the current jAMOS editor then add improvements later), but that wouldn't work on NG Amigas, so they'd basically need a re-write of their own using MUI/Zune. Oh and BTW, XDelusion, you're not the first. Calls for a NG Amiga port of XAMOS: AROS Exec (AROS) MorphZone (MorphOS) Amigans.net (OS4) Amiga Impact (French forum) P.S. AMAL support in XAMOS is almost complete. Last edited by Mequa; 01 June 2012 at 12:10. |
|
03 June 2012, 16:38 | #10 |
Registered User
Join Date: Nov 2009
Location: UK
Posts: 497
|
Xamos 0.24
Update: XAMOS alpha 0.24:
- AMAL is now implemented in line with jAMOS 0.24, including AMAL Environment Generator. All AMAL examples from jAMOS are added and runnable in XAMOS. - Can translate AMAL (and EnvGen) code into both C++ and Java. - Much code refactoring and debugging. - Removed default startup sound for run-only version (too irritating). - A console-based launcher is added for launching all 40 included examples, along with a batch file. |
03 June 2012, 22:50 | #11 |
Zone Friend
Join Date: May 2006
Location: France
Posts: 1,835
|
Nice work to say the least, any plan to remove boost also to be more portable on platform not supporting it?
Kamel |
03 June 2012, 23:48 | #12 | |
Registered User
Join Date: Nov 2009
Location: UK
Posts: 497
|
Quote:
SDL in XAMOS is implemented as a kind of wrapper too, so it shouldn't be too hard to use an alternative engine to SDL (given a rewrite of the graphical front-end) and make it a compiler option. This would most likely be required to build a version for ARM-based Windows RT tablets (using WinRT and Metro), or Windows 8's Metro (it works on Windows 8 desktop already), which don't support OpenGL and currently not SDL either. It should soon be possible to build a minimal (text-only) version without SDL, for easy debugging on more OS's. Last edited by Mequa; 03 June 2012 at 23:57. |
|
08 June 2012, 07:09 | #13 |
Registered User
Join Date: Nov 2009
Location: UK
Posts: 497
|
Xamos 0.241
Update: XAMOS alpha 0.241:
- Removed the dependency on Boost (now available as a compiler option by editing the Makefile). Fallback to deprecated hash_map type is supported without Boost. - Added the ability to build a minimal text-only build without SDL, for cross-platform testing (tested on AROS/x86 and MorphOS/PPC). - Improved compatibility with 64-bit systems (e.g. Linux/x64). |
08 June 2012, 14:52 | #14 |
Registered User
Join Date: Nov 2009
Location: UK
Posts: 497
|
XAMOS on AROS
Update: XAMOS is now working on AROS!
An AROS x86 binary (and compatible Makefile for building from source) is now available from the SourceForge page. Simply extract the contents of XAMOS_aros_x86.zip over the contents of XAMOS.zip. This initial AROS build has a few small bugs, but is mostly working already. Sound has not yet been tested. |
08 June 2012, 21:27 | #15 |
A3000-Fan
Join Date: Sep 2008
Location: Germany
Posts: 321
|
Great news. But am I right that there is no compiler von XAMOS?
|
09 June 2012, 02:02 | #16 |
Registered User
Join Date: Nov 2009
Location: UK
Posts: 497
|
XAMOS now on MorphOS
A compiler is planned - and I have a very cross-platform method in mind. Translate XAMOS (and AMAL) code into buildable C++ source and invoke G++. AMAL translation is almost working already.
P.S. XAMOS is now up and running on MorphOS 3.0 too. |
11 June 2012, 23:11 | #17 |
68k RULEZ
Join Date: Jul 2010
Location: Germany
Posts: 199
|
Is a 68k Version possible ?
|
12 June 2012, 05:26 | #18 |
Registered User
Join Date: Nov 2009
Location: UK
Posts: 497
|
With RTG, possibly. It will be slow though (even on a 68060@50MHz), unless you use JIT under UAE. The latest WinUAE should be able to get good performance though.
For vanilla OCS Amigas just use the original AMOSPro I don't have a build environment set up for OS3.x (or AROS/68k) with Cybergraphics and SDL libraries, so I can't build a 68k version myself at the moment. Anyone is welcome to try though! Same for an OS4 build. I'd like to know what Makefile configuration would be needed to build this for OS3/OS4, and any modifications to the source. |
02 December 2012, 10:46 | #19 |
Zone Friend
Join Date: May 2006
Location: France
Posts: 1,835
|
Amos Pro Source Code Available.
@Mequa, I hope that the release of the Amos Pro Source Code will help your project. http://www.pianetaamiga.it/downloads...ro_Sources.zip Regards Kamelito
|
03 December 2012, 07:14 | #20 | |
Registered User
Join Date: Nov 2009
Location: UK
Posts: 497
|
AMOSPro sources
Quote:
Unfortunately these original sources aren't much use directly for the XAMOS project, as they are written in 68k assembler, are closely tied to and bang the Amiga hardware, and are not written in an expandable fashion. XAMOS is written in C++ with SDL and OpenGL libraries (possibly other libraries instead in future), and is designed to be cross-platform and portable. I see some folks over at AMOS Factory are considering updating AMOSPro from the original source. I strongly suspect that AMOSPro was not well written and will be extremely difficult to expand upon. Going by my emails with Francois, it may also be extremely difficult to get it to build. On modern hardware, an updated AMOSPro would only really be useful under emulation (and/or FPGA reimplementations). The XAMOS project needs more developers if it is going to progress towards being a solid AMOSPro reimplementation for most modern platforms. Please contact me if you are interested in contributing to the XAMOS project. |
|
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
[PROJECT] ProTracker v2.3D clone for modern platforms | 8bitbubsy | Coders. General | 212 | 19 March 2022 21:05 |
Amiga Sprite/Tile Cross-Platform Software? | diablothe2nd | Amiga scene | 16 | 12 July 2013 17:29 |
Xamos | CardboardSphinx | support.Other | 0 | 05 June 2013 23:53 |
jAMOS - new AMOS BASIC reimplementation in Java | Mequa | News | 16 | 03 June 2012 16:58 |
Cross-platform gui? | ceztko | request.UAE Wishlist | 15 | 03 January 2008 18:50 |
|
|