Welcome, Guest. Please login or register.
Amiga Kit Amiga Store Iridium Banner AMIStore App Store A600 Memory

AuthorTopic: jAMOS - new AMOS BASIC reimplementation in Java  (Read 2442 times)

0 Members and 1 Guest are viewing this topic.

Offline Mequa

jAMOS - new AMOS BASIC reimplementation in Java
« on: January 31, 2012, 08:06:43 AM »
I present a new AMOS BASIC reimplementation:



Following on from my jAMAL project, this uses an interpreter based on my MequaScript project, and includes all the AMAL support found in jAMAL.
A subset of AMOS BASIC is already supported, albeit with simplified syntax at present.

Written in Java, and fully cross-platform, this is completely unrelated to previous AMOS implementations such as Alvyn Basic and Mattathias Basic.
Like jAMAL before it, this is fully open source with a permissive BSD-style license, and utilises the JGame engine.

jAMOS alpha 0.1 is now ready for public download:
Get it here!
 

Offline ChaosLord

Re: jAMOS - new AMOS BASIC reimplementation in Java
« Reply #1 on: January 31, 2012, 10:33:20 AM »
Congrats. :)

Why not compile the AMOS source into Java Byte Code?

The resulting program would run much faster then, yes?
Wanna try a wonderfull strategy game with lots of handdrawn anims,
Magic Spells and Monsters, Incredible playability and lastability,
English speech, etc. Total Chaos AGA
 

Offline vox

Re: jAMOS - new AMOS BASIC reimplementation in Java
« Reply #2 on: January 31, 2012, 03:53:39 PM »
Quote from: Mequa;678391
I present a new AMOS BASIC reimplementation:



Following on from my jAMAL project, this uses an interpreter based on my MequaScript project, and includes all the AMAL support found in jAMAL.
A subset of AMOS BASIC is already supported, albeit with simplified syntax at present.

Written in Java, and fully cross-platform, this is completely unrelated to previous AMOS implementations such as Alvyn Basic and Mattathias Basic.
Like jAMAL before it, this is fully open source with a permissive BSD-style license, and utilises the JGame engine.

jAMOS alpha 0.1 is now ready for public download:
Get it here!


Nice, now we can run it everywhere except on Classic and AmigaNGs :-(

Hope some Java implementation will make it!
Future Acube and MOS supporter, fi di good, nothing fi di unprofessionals. Learn it harder way! http://www.youtube.com/user/rasvoja and https://www.facebook.com/rasvoja
 

Offline Mrs Beanbag

Re: jAMOS - new AMOS BASIC reimplementation in Java
« Reply #3 on: January 31, 2012, 04:42:45 PM »
Hey!

I was thinking about writing AMOS 3 lately, I wonder if Francois Lionet would let me use the name... it'd be compatible with AMOS Pro programs, but also Object Oriented.
Signature intentionally left blank
 

Offline Mequa

Re: jAMOS - new AMOS BASIC reimplementation in Java
« Reply #4 on: January 31, 2012, 08:09:07 PM »
I am in contact with Fran├žois Lionet, he gave me permission to use the names AMOS and AMAL in my projects. I also obtained permission from Boris van Schooten to use the JGame engine (which wasn't strictly necessary as the license allows for my usage).

The MequaScript project I based this on (my own) has the beginnings of object orientation and multiple threads already, as well as support for C-style syntax in addition to BASIC, and support for changing the type of variables (as with Javascript).

I ported my MequaScript interpreter from C++ to Java which provides the AMOS interpretation, it is working in both languages. The C++ version could be compiled to run on AmigaOS 3.x and AROS 68k and x86 (which I may try), as well as AmigaOS 4.x and MorphOS (which I lack suitable hardware to attempt).

Then the AMAL interpreter could be ported from Java to C++, a suitable sprite engine and editor added, and (with a bit of work) this working without Java on Classic and NG Amigas.
 

Offline Mequa

Re: jAMOS - new AMOS BASIC reimplementation in Java
« Reply #5 on: January 31, 2012, 08:16:35 PM »
Quote from: ChaosLord;678400
Congrats. :)

Why not compile the AMOS source into Java Byte Code?

The resulting program would run much faster then, yes?

Probably not by much, but I have planned to implement compilation from the AMOS source into Java source, which will be compilable into Java Byte Code using javac. This is already largely working for AMAL and AMAL EnvGen scripts.
 

Offline Mequa

Re: jAMOS - new AMOS BASIC reimplementation in Java
« Reply #6 on: January 31, 2012, 10:52:16 PM »
Update: jAMOS 0.11 adds mouse and cursor keys (simulated joystick) input and corresponding examples.
 

Offline Mequa

Re: jAMOS - new AMOS BASIC reimplementation in Java
« Reply #7 on: February 03, 2012, 01:48:36 AM »
Update: jAMOS 0.12

A major milestone has been reached with the first fully playable game created with jAMOS, a simple Breakout clone "jAMOSOut", now added to the examples. Some more AMOS functions have been implemented too.
 

Offline trekiej

Re: jAMOS - new AMOS BASIC reimplementation in Java
« Reply #8 on: February 07, 2012, 05:47:35 PM »
I used it a little bit and I like it.
Amiga 2000 Forever :)
Welcome to the Planar System.
 

Offline Mequa

Re: jAMOS - new AMOS BASIC reimplementation in Java
« Reply #9 on: February 18, 2012, 02:58:17 AM »
Update: jAMOS Alpha 0.13 (February 18th 2012)

- A text output console is now spawned on creation (for HelloWorld.jamos, etc.).
- Default example changed to jAMOSOut (original still available under AMAL examples).
- AMAL examples now default to the first AMAL program in the editor when opened (as with jAMAL).
- More examples were added demonstrating dynamic types, concurrent jAMOS programs and hybrid syntax.
- jAMAL's startup sound is playable from the menu alongside jAMOS's.
- Some minor bug-fixes.
« Last Edit: February 23, 2012, 04:41:06 AM by Mequa »
 

Offline Mequa

Re: jAMOS - new AMOS BASIC reimplementation in Java
« Reply #10 on: February 23, 2012, 04:41:24 AM »
Update: Alpha 0.14 (February 23rd 2012)

- Can now load AMOS sprite banks (.abk) directly.
- Built-in sprite bank viewer now supports image zooming.
 

Offline Mequa

Re: jAMOS - new AMOS BASIC reimplementation in Java
« Reply #11 on: February 27, 2012, 07:17:27 PM »
Update:

Alpha 0.15 (February 25th 2012)
- Graphical drawing subsystem is now operational.
- Paste Bob implemented, including support for AMOS .abk files and two new examples.
- Plot implemented, with two new examples including a simple Mandelbrot generator.

Alpha 0.16 (February 27th 2012)
- Refactored AMOS command wrapper in the source code.
- Fixed some bugs with the graphical subsystem.
- Added more drawing commands and related examples.
- Split the jAMOS example menu.
- Random number generation is now operational in jAMOS code.
- Bob flipping now works with loaded .abk files and with Paste Bob
 

Offline Mequa

Re: jAMOS - new AMOS BASIC reimplementation in Java
« Reply #12 on: February 28, 2012, 10:39:39 PM »
jAMOS Alpha 0.17 (February 28th 2012)

- Added many maths and string functions.
- Added early support for Rainbows (high-level emulated Amiga Copper effects).
- Rainbow and maths examples were added.
 

Offline Mequa

Re: jAMOS - new AMOS BASIC reimplementation in Java
« Reply #13 on: March 21, 2012, 06:29:33 PM »
Update: jAMOS alpha 0.18 (March 21st 2012)

- Basic support for procedures implemented. (To do: passing arguments, local/shared variables, global variable definitions, call without "Proc".)
- Some groundwork done for array support - implementation coming soon!
- AMOS Boom and Shoot sounds implemented (alongside Bell), and added to jAMOSOut and a new procedure example.
 

Offline Mequa

Re: jAMOS - new AMOS BASIC reimplementation in Java
« Reply #14 on: March 25, 2012, 05:57:38 AM »
Update: jAMOS alpha 0.19 (March 24th 2012)

- Can now return an argument from procedures using Param/Param#/Param$. An example was added under the Tutorial menu.
- Some groundwork done for passing arguments to procedures - implementation coming soon.