GP32 MISC assembler for ARM


jma

Still Fresh
Joined
Apr 28, 2003
Messages
10
Age
48
Location
Salt Lake City, Utah
Website
www.simforth.com
A while back I posted about possibly porting (thanks to gobs of emails requesting) Dragon BASIC to the GP32. At that time, it was going to be based on numerous things (including Jupiter aligning with Saturn) and there being enough interest...

...well, time passes, and development is going well...


Dragon BASIC was built specifically for the GameBoy Advance. So, the first step in getting it ported was to remove GBA specific code. This was done via an experimental project I've been working on for longer than Dragon BASIC: TIN.

TIN (or MF/TIN) is a MISC (minimum instruction set) assembler for the ARM processor. It is a complete programming language by itself. Dragon BASIC no longer compiles to ARM, but now compiles to TIN, which in turn assembles native ARM code. So what?

Well, this intermediate language allowed me to pull out all GBA specific code from Dragon BASIC and make it a lot more "universal". All the GBA API routines that were built into Dragon BASIC are now external files to be imported by TIN. This means that it is possible to write a complete application in TIN for the GP32 (which is ARM based as you all know). Then Dragon BASIC can just as easily be used to compile programs for either the GBA or the GP32! The only difference being which set of API functions are used to program with.

So, before I work much harder on the GP32...

I would like those interested to suf over to http://www.simforth.com/mf and take a look at TIN. What are your impressions? Would you still be interested in this project?

--
Jeff, jma@mfire.com
http://www.simforth.com
 
Wow,

This sounds like a really cool project. I myself like to use standard C for coding my GP32 applications, but the availability of a BASIC language that is compiled should greatly increase the number of possible developers :). I was interested in making a BASIC interpreter for GP32 once, but this project is leagues beyond that. Keep up the good work, man!
 
Excellent! I know of a few people right off-hand who would love to start programming on the GP32 with BASIC, too scared of C ;)

Perhaps the instructions could even be modified over time for other similiar platforms (maybe even the Zodiac?) so the GP32 could benefit from more multi-platform implementations other then SDL.
 
As a non-coder, having a form of BASIC running on the GP would turn me immediately into a potential coder. I used to make games in basic all the time, and I would use & enjoy this quite a lot. Will anything incredibly important be removed in the transition to the GP?
 
yes. give me now! i beg you, finish that and you are god!

oh and yes, it would also interest me what the essential features are that would be changed compared to the gba version and if there would be a different price for it then.
 
There would be little to no difference between the GBA version and the GP32 version. In fact, they way I'm coding it, it would be the same product. It would be able to compile for both the GBA and the GP32.

The differences would lie in the API. Since the GBA and GP32 are both embedded devices, they store data very differently. In the GBA version (for example) there is a function: LOADSPRITE which takes data in ROM and copies it into OAM RAM on the GBA. Based on how the GP32 handles sprites, this function may be the same (doubtful), slightly different, or not exist at all (being replaced by a different function).

The syntax and "features" of the language would be the same between the GBA and GP32 version, though. Much in the same way that C is C, whether on Win32 or the GP32... only the functions change.

There would basically be two different header files that would be included based on your target machine, and a few command line options to the compiler would be different.

How far off? I'm guessing a "barely usable" beta may be about a month away. Once in beta, though, functionality should improve quickly. As for pricing, I doubt that will change at all. But I haven't thought that far ahead yet... I more just want to get something working for now.

Jeff
 
Bionic Bill posted on Oct 27 2003 at 12:52 AM said:
As a non-coder, having a form of BASIC running on the GP would turn me immediately into a potential coder. I used to make games in basic all the time, and I would use & enjoy this quite a lot. Will anything incredibly important be removed in the transition to the GP?
hell yeah.. me too! I dont have a lot of time to learn C/C++ so I could definatly have some fun with Basic (like I did when I was a little kid). Rock on!
 
Last edited by a moderator:
Great news and great work !
This, will allow newbee to have access to easy programing.

But what about the compiler ?
You have to port the dragon basic compiler, don't you ?
I know anything about GBA programing ;)

thank you for your work
 
I remember when you first said you were going to port dragon basic, I didn't believe it would happen, but I'm glad I was wrong. Great work
 
I am extremely willing to support this project. I would love to start getting back into basic programing again. I used to make decisive option adventure games where you get to pick what to do next on my old 286 (like choose your own adventure). Those where the days.

I suppose I could still program now on my current pc, but it's more of an incentive with the gp32 action going on. Progs/games will be popping up all the time if this thing becomes a reality.

Just tell me what I can do to help.
 
Hi Jeff,

I was one of the people who brought the posibility of a GP32 port to your attention, and I am still very interested in using such a tool. TIN itself is a little too scary for me, but a BASIC front end to it - DragonBASIC - is right up my street.

I have a couple of ideas for projects I would like to make for GP32, including a Soccer game and a Qix clone

A couple of questions:
How would sprite scaling be supported on the GP32 seeing as it doesn't have any helper chips like the GBA? Vice versa, what about GP32 only functions such as RF communcation and savign to SMC?

I look forward to any future news.

matt
 
I am intrigued by this idea...

I have been lamenting along the lines of "if only there were a BlitzPlus compiler for the GP32", so this DragonBASIC malarky has certainly grabbed my attention.
 
Are you crackers!
Of COURSE we're interested.

I'm sure a lot of us ex-Amos basic programmers [inc. me] would love this
[For those who don't know, Amos is an Amiga Basic with options for 3D. Pre- BlitzBasic. "Amiga History clippit"]

This windows platform is just too scary to program for and I lost interest but I too bought the GP32 for this fab option in the hopes of kick-starting my brain cells into working again.
 
Well, I'm glag that there is still interest...

Just to clarify something that I think a few of you may be misunderstanding. Dragon BASIC will not be the same from the GBA as it is for the GP32 (ie. you won't have the same code for the same game and just re-target the other platform). Just the code syntax and the compiler will be the same.

But I will keep everybody posted. And I am using this thread to guage interest (I got the forum emailing me on replies to the thread). So if you do wan't this, just keep replying to the thread (or email me) -- even a simple "woo-hoo" ;)

Jeff
 
I'm curious as to what the dragon basic/tin gp32 status might be. Just wondering and I hope everythings going well for you. Good luck and may the forces of carbon sway you in the holy direction of computer code revolution amongst the gp32 failures.
 
Back
Top