Welcome, Guest. Please login or register.

Author Topic: C# Framework  (Read 3638 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline bburtonpaTopic starter

  • Newbie
  • *
  • Join Date: Sep 2006
  • Posts: 20
    • Show only replies by bburtonpa
C# Framework
« on: June 02, 2010, 01:43:51 PM »
Like many old time Amiga coders, I find myself irresistibly drawn back to the platform these days.  I no longer have any Amiga hardware, only Amiga Forever to play around with.

For many years, I have been kicking around in my head a plan for wrapping the Amiga API within C++ header files to make a bit easier to use.  Work, life, etc. always seemed to get in the way for my doing anything about it until now.

I am aware of the stillborn Amiga Java project(s).  There is also a C# project going on based on Mono, but who has the time to spend on all of that.  My thoughts were to create a C# like framework for C++ that gave the modern coder a familiar environment.  I think I have succeeded in doing just that (see attached).

To do this, I needed properties and events.  A quick Google search and I had exactly what I needed.  As anyone familiar with C# (and to some degree Java) can see by the attached code sample,  I have put together a simple, event driven demo with all the flavor of C# and very little C++.  The executable was compiled using AmiDevCpp and is just 75kb.  A bit large for Amiga apps, but certainly acceptable given the ease of use.  You will notice there is no message loop.  That is contained in the forms.h header file which I have chosen not to release just yet as there is still a LOT more to do.  When I do release the code, it will be done so under GPL type licensing without any restrictions on it's use.  BTW - Since all of the code is in the form of C++ headers, there is no reason at all that the framework could not be used "as is" on Amiga 4.x, AROS and/or MorphOS systems.

My next task will be to wrap the menu and gadget subsystems and provide event driven notifications similar to what I have already produced for window events.

Here is where I need some help. It's been a LONG time since I have done any C++ coding...most of the past ten years have been spent with Java and/or C#.  It's been almost fifteen years since I've done any serious Amiga coding.  What I am looking for is a person or persons interested in helping make some of the decisions on this project, specifically in regards to message handling.  For instance, do we do it the Windows way and handle ALL messages in the message loop or do we allow users to turn off specific, resource eating messages of (e. g. ReportMouse).  I'll do the work, I just need someone who is more up to date with the Amiga API than I am, involved with the project.  I don't see this as comsuming a lot of anyone's time...

I would appreciate any comments you may have on the work I have done so far and suggesstions on how it should proceed in the future.

Barry

p. s. While amiga.org will always be my "home" forum, I plan to post this message in a couple of other locations in order to generate interest in the project.
 

Offline bloodline

  • Master Sock Abuser
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 12113
    • Show only replies by bloodline
    • http://www.troubled-mind.com
Re: C# Framework
« Reply #1 on: June 02, 2010, 02:12:19 PM »
I find myself having similar thoughts around porting the OpenStep runtime to Amiga/AROS... But only because I have recently learned Obj-C and rather like it :)

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16878
  • Country: gb
  • Thanked: 5 times
    • Show only replies by Karlos
Re: C# Framework
« Reply #2 on: June 02, 2010, 07:10:33 PM »
I once started something like this, got pretty far too. Then I had no further time to work on it and it slowly rotted on my HD.

However, I was recently made redundant (this is my last week). So, who knows? I may actually look into bumping it.
int p; // A
 

Offline bburtonpaTopic starter

  • Newbie
  • *
  • Join Date: Sep 2006
  • Posts: 20
    • Show only replies by bburtonpa
Re: C# Framework
« Reply #3 on: June 02, 2010, 07:45:02 PM »
Since I have no desire to "reinvent the wheel", if you have something that is further along in the development process, I would be more than happy to yield to your project.  My goal is simply to attract younger and/or hobbyist developers and give them something they are familiar with e. g. Java/C# syntax.

Sorry to hear that you have been made "redundant"...I know how if feels.
 

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16878
  • Country: gb
  • Thanked: 5 times
    • Show only replies by Karlos
Re: C# Framework
« Reply #4 on: June 02, 2010, 07:48:21 PM »
That depends. My goals might not be aligned with yours. I wasn't aiming at something purely for amigaos, but something that would make it easier for me to write code across a variety of platforms. It was targeted at simple multimedia stuff.

I can probably find some old example code. There's a screen shot in the gallery of a silly example program that could load an image and warp it in realtime that was implemented on an early version of the code:

« Last Edit: June 02, 2010, 07:50:42 PM by Karlos »
int p; // A