Home
JAQForum Ver 20.06
Log In or Join  
Active Topics
Local Time 13:51 02 May 2024 Privacy Policy
Jump to

Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.

Forum Index : Microcontroller and PC projects : MMBasic Ten Years On

     Page 1 of 2    
Author Message
Geoffg

Guru

Joined: 06/06/2011
Location: Australia
Posts: 3165
Posted: 07:48am 26 Apr 2021
Copy link to clipboard 
Print this post

This morning I was looking through some old documents and realised that it has been exactly ten years since MMBasic was first released.  This was in the March, April and May 2011 issues of Silicon Chip which introduced the first Maximite (the original monochrome version).

A lot has happened since then and it has been a long step by step process for MMBasic.  A little improvement here, a new feature there.  Over time these small incremental changes have amounted to a huge improvement.   And not to forget the bug fixes, there have been a lot of bugs to fix.

The original MMBasic was version 2.0 (V1.0 was never released) and it was positively archaic compared to the current version.  Line numbers were mandatory and you had to enter a program by prefixing each program line with a number, which caused it to be entered into program memory.  It took a lot of typing to enter anything so a 100 line program was considered HUGE.  This was how the original BASICs worked and it seemed normal at the time.  The saving grace was that MMBasic included support for an SD card from the beginning - so you could always enter the program on your PC, save it to an SD card and walk that over to the Maximite.  Tedious but it worked.

The first version was missing many features that we now take for granted.  There were no user subroutines of functions.  All you had was GOTO and GOSUB.  You could set an I/O pin high or low but there were no communication protocols (not even serial ports), there were no PWM, timers, etc.  There were some graphics commands to draw a line or circle, etc but nothing like that provided by the Colour Maximite 2.

However, the one thing that this version did have was a lot of bugs.  Before its release I had done a huge amount of testing and I thought that I had eliminated most bugs but when it got into the hands of the early adopters the bugs came out in force.  Due to the magazines lead time I had done the development a few months prior to publication and by the time the first users started to find the bugs I was in the middle of an extended six month camping trip through the interior of Australia.  So there I was, in the heat of central Australia, with the laptop on a camping table hunting bugs in MMBasic.

There were so many bugs that my view of MMBasic became quite distorted I expected bugs and I was surprised if a program ran without falling over.  For example, I am still faintly amazed when something like Mauro Xaviers Gauntlet runs all the way through without hitting some hidden bug.  The reason why there are so few bugs in the core of MMBasic today is because of the many users on The Back Shed who have diligently reported and documented them.  Without your effort I would still be in some sort of false heaven thinking that there were no bugs to be found.  Thankfully today MMBasic is quite stable.  I might receive reports of a few bugs now and then but most are trivial.

Over time features such as optional line numbers, the built in editor, user defined subroutines/functions, better memory management, optimisations and additional language constructs (CASE, STR$(), etc) have been added.  However a big step was made with the introduction of the Micromite in May 2014.  This introduced many new features such as integers, LCD display panels, CFunctions and more.  The Colour Maximite 2 is built on this branch of MMBasic which is why it is similar in many ways to the Micromite  for example, both save the BASIC program to flash memory.

Peter Mather contributed hugely to the later versions of the Micromite with support for LCD panels, CFunction improvements, updated protocol stacks and the countless bugs that he has found and reported.  Peter is also an expert at porting MMBasic to other platforms including the PIC32MZ, ARM processors and the Raspberry Pi.  He probably knows the internals of MMBasic as well as I do and his latest venture, the Colour Maximite 2, has been hugely successful and illustrates the robustness of the MMBasic core (now that most of the bugs have been removed).

If you are interested in reading more I have documented the original development of the Maximite and MMBasic on this web page and it is worth a read if you have not seen it.

Geoff
Geoff Graham - http://geoffg.net
 
JohnS
Guru

Joined: 18/11/2011
Location: United Kingdom
Posts: 3660
Posted: 08:52am 26 Apr 2021
Copy link to clipboard 
Print this post

Congrats!

John
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 5735
Posted: 10:09am 26 Apr 2021
Copy link to clipboard 
Print this post

The thing is, Geoff, you had the vision to see that this was possible. That was the start - and something that we'll always be grateful for. :) Others have built on that vision and have done a great job! Bugs will always be with us, unfortunately,but that's life. Luckily some really good bug reporters and squashers have got interested in the project.

Ten years ago I didn't know that Silicon Chip even existed. :) It's not a paper mag here in the UK (not under that name anyway).

Here's to the next 10 years! ;)
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 3848
Posted: 10:35am 26 Apr 2021
Copy link to clipboard 
Print this post

My congratulations and thanks to Geoff too.

  Mixtel90 said  Ten years ago I didn't know that Silicon Chip even existed. :) It's not a paper mag here in the UK (not under that name anyway).


You probably know, but {Everyday} Practical Electronics which is published in "dead tree" format in the UK seems to contain a lot of reprinted Silicon Chip material - I subscribed for a while, but gave it up through lack of the time to learn enough to understand more than 20% of what was being said.

Best wishes,

Tom
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
RendPhys

Newbie

Joined: 29/10/2020
Location: Netherlands
Posts: 5
Posted: 11:33am 26 Apr 2021
Copy link to clipboard 
Print this post

Congratulations, Geoff!

Nice story and thanks for all the effort    

Sometimes it is good that you don't know in advance what amount of work something will bring!

Best wishes,
Henk.
 
lizby
Guru

Joined: 17/05/2016
Location: United States
Posts: 3016
Posted: 12:33pm 26 Apr 2021
Copy link to clipboard 
Print this post

What a rich and powerful environment has been built over the years from such beginnings.

Thanks very much to Geoff and to Peter and to all the other contributors through the years who have provided us bit-twiddlers with such a rewarding piece of kit--software and hardware.
PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed
 
Cyber

Senior Member

Joined: 13/01/2019
Location: Ukraine
Posts: 161
Posted: 12:42pm 26 Apr 2021
Copy link to clipboard 
Print this post

Happy Birthday, MMBasic!
Congratulations with 10th anniversary!
Thank You, Geoff, Peter and everybody elese involved in giving life to such great creation!

Maximite Story is a very interesting read.
 
Turbo46

Guru

Joined: 24/12/2017
Location: Australia
Posts: 1593
Posted: 12:58pm 26 Apr 2021
Copy link to clipboard 
Print this post

Geoff, I sometimes wonder whether you had any idea what you were starting with that original Maximite. Look at the members of this forum and you will see they come from all over the world. The Maximite brings us back to the origins of home computers but with much more capability.

I have all three varieties of the Maximite and the first two are still very capable machines, all they need is MMBasic 5  

MMBasic for DOS/Windows is a great tool for developing programs and functions for the Maximite and Micromite.

The Micromite backpacks are incredibly useful and your various projects using them demonstrate that like the 'super clock' and others.

There are quite a few that are deriving an income from your efforts and you still have no 'donate' button.

Many thanks to you and all of the others that have helped further the MMBasic cause.

Bill
Keep safe. Live long and prosper.
 
gadgetjack
Senior Member

Joined: 15/07/2016
Location: United States
Posts: 127
Posted: 04:24pm 26 Apr 2021
Copy link to clipboard 
Print this post

I have followed this quite eagerly since I found the site you created. I have always loved basic programming and building circuits so this fit in so easy. I think I have about 11 or 12 different boards of your design doing various functions. Keep up the great work. I will be waiting for your next improvement or "bug fix". Thank you.
 
panky

Guru

Joined: 02/10/2012
Location: Australia
Posts: 1094
Posted: 12:20am 27 Apr 2021
Copy link to clipboard 
Print this post

+1 for the congratulations to both Geoff and Peter and also all the other contributors to the development and supporting software packages.

I have only used one implimentation of the Micromite in anger ( a Peter M 470 backpack which I designed into a Caravan Power System Controller - battery volts, amps, power usage plus input power management) but I have almost every version of the Maximimite/Micromite/Armmite/PiMite family - just enjoy firing them up with the new software releases and testing.

Never could get the PiMite working reliably (my fault, not Peters) so it has ended up in the back of a drawer somewhere but all the others get fired up regularly.

Once again, thanks to all who have contributed to the '-mite'sphere - a truly wonderful effort.

Doug.
... almost all of the Maximites, the MicromMites, the MM Extremes, the ArmMites, the PicoMite and loving it!
 
Goksteroo
Senior Member

Joined: 15/03/2021
Location: Australia
Posts: 110
Posted: 12:38am 27 Apr 2021
Copy link to clipboard 
Print this post

Congratulations on MM Basic and the CMM2 (and its previous incantations). Together they have taken me back to my early days in computing with the Dick Smith Super-80, Amstrads and Atari STs.

Thanks for the journey that, for me, has just began.

Geoff
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 3550
Posted: 07:13am 27 Apr 2021
Copy link to clipboard 
Print this post

Geoff, thanks for your thought " how hard can it be" without it we all would be writing C, and Peter would have wasted much of his time improving picaxes...

Your effort then, and niw, have given us so much..
PicomiteVGA PETSCII ROBOTS
 
jirsoft

Guru

Joined: 18/09/2020
Location: Czech Republic
Posts: 532
Posted: 07:40am 27 Apr 2021
Copy link to clipboard 
Print this post

Also big thanks to Geoff and Peter, it brought me back to my childhood with much better toy I had in those times...  
Jiri
Napoleon Commander and SimplEd for CMM2 (GitHub),  CMM2.fun
 
MustardMan

Senior Member

Joined: 30/08/2019
Location: Australia
Posts: 175
Posted: 09:21am 27 Apr 2021
Copy link to clipboard 
Print this post

I've found MMbasic to be an incredibly useful tool, and my hat goes off to Geoff, Peter, and everyone else who has contributed in some way towards the 'mite. Even the "helper" programs like MMedit and FontTweak, and the guides & tutorials people have written (like the CFunction walkthough).

MMbasic is SO much more than BASICs of the past. The TRS80 level 3 basic couldn't do even 10% (shift that decimal point... 1% !!) of what MMbasic can.

My undoubted favourite 'mite is the MM+ which I have used (and am still using) to develop hardware - my forte.

It is unfortunate that the 'mite is overshadowed by arduino. When someone at work asked me how I discovered the 'mite in the first place, I said 'internet search'. After a half day of searching (without deliberately using the terms "micromite" "maximite" or "mmbasic") he had found NOTHING. I was surprised, and disappointed too, and began to wonder how I had originally found it (I gave up SC in the early 2000's and switched to Circuit Cellar and Elektor). I still don't know.

It is a real shame that the 'mites are almost non existent on the 'net without doing a deliberate search, but I don't know how to change it.

Cheers,
 
lizby
Guru

Joined: 17/05/2016
Location: United States
Posts: 3016
Posted: 11:52am 27 Apr 2021
Copy link to clipboard 
Print this post

  MustardMan said   When someone at work asked me how I discovered the 'mite in the first place, I said 'internet search'. After a half day of searching (without deliberately using the terms "micromite" "maximite" or "mmbasic") he had found NOTHING.

Don't know why a search wouldn't work. This is the initial display when I search for "micromite" (brave browser, duckduckgo search engine).


PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed
 
Cyber

Senior Member

Joined: 13/01/2019
Location: Ukraine
Posts: 161
Posted: 12:16pm 27 Apr 2021
Copy link to clipboard 
Print this post

  MustardMan said  When someone at work asked me how I discovered the 'mite in the first place, I said 'internet search'. After a half day of searching (without deliberately using the terms "micromite" "maximite" or "mmbasic") he had found NOTHING.
I learned about MMBasic from The 8-Bit Guy's video about first Colour Maximite. I fell in love from the first sight, and almost immediately ordered one from Altronics.

lizby, MustardMan meant to search without using the terms "micromite" "maximite" or "mmbasic".
.
Edited 2021-04-27 22:17 by Cyber
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 8592
Posted: 12:19pm 27 Apr 2021
Copy link to clipboard 
Print this post

  Quote  Don't know why a search wouldn't work.


  Quote  After a half day of searching (without deliberately using the terms "micromite" "maximite" or "mmbasic")
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 3848
Posted: 12:30pm 27 Apr 2021
Copy link to clipboard 
Print this post

  Cyber said  I learned about MMBasic from The 8-Bit Guy's video about first Colour Maximite.


Ditto the 8-bit Guy, I ordered one because I was learning electronics and I wanted something interesting to solder ... and now I am *stuck* back doing programming again

Tom
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
RetroJoe

Senior Member

Joined: 06/08/2020
Location: Canada
Posts: 290
Posted: 02:24pm 27 Apr 2021
Copy link to clipboard 
Print this post

Congrats on this important milestone!

I too discovered the Maximite via The 8-Bit Guy. I was originally following his Commander X16 project, which regrettably seems to have fallen into a development abyss. At this rate, I expect we'll see a "CMM3" appear before the X16 ships :)

Dave's review of the original CMM was intriguing, but it was his follow-up episode on the CMM2 and its eye-popping interpreter speed that convinced me to pull the trigger.

Many hours of fun have ensued, not least or which is the microcontroller, coding and retro computing badinage that takes place here on the pages of The Back Shed.

Here's to a second awesome decade - MMBasic Forever!
Edited 2021-04-28 00:25 by RetroJoe
Enjoy Every Sandwich / Joe P.
 
epsilon

Senior Member

Joined: 30/07/2020
Location: Belgium
Posts: 255
Posted: 08:01pm 27 Apr 2021
Copy link to clipboard 
Print this post

  RetroJoe said  I too discovered the Maximite via The 8-Bit Guy. I was originally following his Commander X16 project


Same here. To be very honest, initially I saw MMBasic as a disadvantage because I was looking for a to-the-metal programming environment where I can understand at clock cycle level exactly what is going on. But down the rabbit hole I went, and I don't regret it. Along the way, I developed a lot of respect for MMBasic and the platform around it. The Maximite story added a lot of color to the picture.

Geoff, you are like the grandmother in the story: A semi-mythical person from the land of Oz, creating a Basic ;-) Congratulations on MMBasic's first decade!
Epsilon CMM2 projects
 
     Page 1 of 2    
Print this page
© JAQ Software 2024