Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 19:43 27 Jul 2026 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 : "My First MMBasic Program" – A Beginner's Tutorial (German)

Author Message
ManiB
Senior Member

Joined: 12/10/2019
Location: Germany
Posts: 153
Posted: 10:46pm 24 Jul 2026
Copy link to clipboard 
Print this post

Hello everyone,

Over the last few months I have been working on a German beginner's tutorial for MMBasic, mainly for the PicoMite and the Colour Maximite 2.




The goal is to create a book that starts with the very first PRINT statement and gradually introduces programming concepts through practical examples and complete projects.

One of my main goals is that every major topic is accompanied by a complete, working BASIC program.

Rather than showing only isolated code fragments, readers can download and run the complete source code exactly as presented in the book. I hope this approach makes learning MMBasic easier, especially for beginners.

Some of the topics include:

- Variables and INPUT
- IF...THEN...ELSE
- Loops
- Arrays
- Strings
- SUBs and FUNCTIONs
- File handling
- Graphics
- Animation
- GPIO
- PWM
- Sound
- Interrupts
- Serial communication
- WS2812 LEDs
- Sprites
- Building complete games

The tutorial currently contains more than 500 pages and is still a work in progress.

To accompany the book, I have started a GitHub repository containing all example programs. At the moment, the first ten programs are available, and I will continue adding the remaining examples as I complete each chapter.

GitHub repository:

https://github.com/ManiBecker/MeinErstesMMBasicProgramm

Although the tutorial itself is written in German, all BASIC source code is language-independent and may be useful to other MMBasic users.

My current plan is to finish the German edition first. If there is enough interest, I may later create a completely new English edition rather than simply translating the existing book.

I would be very interested in your feedback.

Would a comprehensive English beginner's tutorial for MMBasic be useful to the community?

Best regards,

Manfred

PS: Here is a snapshot of the first chapter:

Edited 2026-07-25 08:47 by ManiB
 
ville56
Guru

Joined: 08/06/2022
Location: Austria
Posts: 556
Posted: 08:04am 25 Jul 2026
Copy link to clipboard 
Print this post

Good start in any way !!!!

TBH, I could never do something even close to what you've already done. Documentation was always my weakest point  

I personally would have also set a focus on what the hardware is that you can run MMBasic on at the beginning. As PicoMite and Maximite are quite different targets, I feel it could be helpful for the reader to understand what is needed to get something running that covers his vision. This could be from a stamp sized board controlling some external hardware to a more or less self contained system. If you present that broad line of possibilities beforehand, maybe in some short examples ranging from-to (maybe just by mentioning some examples that one may imagine to be implemented), it could help the reader to get a better view of what he can excepect to get. From my POV you jump into the language without giving a broader picture first, but the language itself is only part of the game.
                                                                 
73 de OE1HGA, Gerald
 
v.lenzer
Senior Member

Joined: 04/05/2024
Location: Germany
Posts: 130
Posted: 09:27am 25 Jul 2026
Copy link to clipboard 
Print this post

Hello Manfred!
This is fantastic work—not just in terms of content, but also the presentation. Simply brilliant!!!
Best wishes! Joachim
 
v.lenzer
Senior Member

Joined: 04/05/2024
Location: Germany
Posts: 130
Posted: 09:31am 25 Jul 2026
Copy link to clipboard 
Print this post

Hello Manfred!
This is fantastic work—not just the content, but the visuals too. Simply brilliant!
It’s a good thing I assembled the VGA Pico board and fitted it with an RP2350A just a few weeks ago. That way, I can follow along with everything in practice.
Best wishes! Joachim
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1488
Posted: 09:51am 25 Jul 2026
Copy link to clipboard 
Print this post

Hello Manfred!
I’ve just had a quick look at the website.
The barrier to entry is even lower than you describe.(point "Welche Hardware benötigst du?")
You can start with just a Pico and a terminal programme.
At least, that’s how it was for me. Then I soldered on the VGA output, then and an SD card reader and then the Audio output. It all cost just a few cents. If you’re put off by that, you can also try it out first with DOS-MMBASIC or MMB4W without needing any additional hardware at all.
But your book is still a brilliant idea; I’ll carry on reading it. Have a lovely weekend
Cheers
Martin
'no comment
 
ManiB
Senior Member

Joined: 12/10/2019
Location: Germany
Posts: 153
Posted: 08:24pm 25 Jul 2026
Copy link to clipboard 
Print this post

  ville56 said  Good start in any way !!!!

TBH, I could never do something even close to what you've already done. Documentation was always my weakest point  

I personally would have also set a focus on what the hardware is that you can run MMBasic on at the beginning. As PicoMite and Maximite are quite different targets, I feel it could be helpful for the reader to understand what is needed to get something running that covers his vision. This could be from a stamp sized board controlling some external hardware to a more or less self contained system. If you present that broad line of possibilities beforehand, maybe in some short examples ranging from-to (maybe just by mentioning some examples that one may imagine to be implemented), it could help the reader to get a better view of what he can excepect to get. From my POV you jump into the language without giving a broader picture first, but the language itself is only part of the game.


Thank you very much for your kind words and your thoughtful feedback.

I think you have a very good point.

My original idea was to get beginners programming as quickly as possible, which is why I start with the first PRINT statement almost immediately.

However, I agree that readers who are completely new to MMBasic would probably benefit from a short introduction explaining the different MMBasic platforms and what can be built with them.

I already have photos of several MMBasic systems, so adding a short introductory chapter before the programming lessons sounds like a good idea.

Thank you for the suggestion!
 
ManiB
Senior Member

Joined: 12/10/2019
Location: Germany
Posts: 153
Posted: 08:26pm 25 Jul 2026
Copy link to clipboard 
Print this post

  v.lenzer said  Hello Manfred!
This is fantastic work—not just the content, but the visuals too. Simply brilliant!
It’s a good thing I assembled the VGA Pico board and fitted it with an RP2350A just a few weeks ago. That way, I can follow along with everything in practice.


Thank you very much!

I'm really happy to hear that you like both the content and the visual design of the tutorial.

My goal is to make learning MMBasic as easy and enjoyable as possible, especially for beginners.

It's great that you already have a VGA PicoMite with an RP2350A. That means you'll be able to try almost all of the examples directly on your own hardware.

Please let me know if you find anything that could be improved as you work through the tutorial. Feedback from experienced MMBasic users is always welcome.
 
ManiB
Senior Member

Joined: 12/10/2019
Location: Germany
Posts: 153
Posted: 08:33pm 25 Jul 2026
Copy link to clipboard 
Print this post

  Martin H. said  Hello Manfred!
I’ve just had a quick look at the website.
The barrier to entry is even lower than you describe.(point "Welche Hardware benötigst du?")
You can start with just a Pico and a terminal programme.
At least, that’s how it was for me. Then I soldered on the VGA output, then and an SD card reader and then the Audio output. It all cost just a few cents. If you’re put off by that, you can also try it out first with DOS-MMBASIC or MMB4W without needing any additional hardware at all.
But your book is still a brilliant idea; I’ll carry on reading it. Have a lovely weekend
Cheers
Martin


Hello Martin,

thank you very much for your feedback.

You are absolutely right. I should probably make it clearer that there are several different ways to get started with MMBasic, ranging from MMB4W or DOS-MMBasic on a PC to a bare Pico connected via USB, and finally to complete PicoMite and Colour Maximite systems.

My own focus has been on the PicoMite because that's where I started, but I agree that showing the different entry points would make the tutorial more welcoming for complete beginners.

Thanks again for your suggestions, and I hope you'll enjoy the rest of the book.

Have a great weekend!

Manfred
 
magi
Newbie

Joined: 25/07/2026
Location: Canada
Posts: 1
Posted: 02:24am 26 Jul 2026
Copy link to clipboard 
Print this post

Good Day Manfred,

Been lurking here for over a year, you just gave a reason to come out of hiding!

You're book is marvelous, a beginners dream, you've done a fantastic job, please continue, we beginners need all the help we can get.

I very much like the PicoMite and MMBasic combination, Python and I aren't on speaking terms and I know there's no chance whatever of a reconciliation!

I did Pic assembly many, many years ago but in my old age I am most comfortable with BASIC, it just feels natural to me.

Please to consider an English version, I'll pay for it when available just put me on the list.

All the best,

Marc
Retired, doing what I want when I want to!
 
v.lenzer
Senior Member

Joined: 04/05/2024
Location: Germany
Posts: 130
Posted: 11:27am 26 Jul 2026
Copy link to clipboard 
Print this post

  Quote  Please let me know if you find anything that could be improved as you work through the tutorial. Feedback from experienced MMBasic users is always welcome.


Hello Manfred!
I am currently working with the serial interface that I connect to the VGA-Pico. When I looked at your program for it, I noticed that the RX/TX pin assignments are not specified in the source code—for example: `SETPIN GP5, GP4, COM2`. A beginner might get stuck on this.
Best wishes! Joachim
 
ManiB
Senior Member

Joined: 12/10/2019
Location: Germany
Posts: 153
Posted: 07:30pm 26 Jul 2026
Copy link to clipboard 
Print this post

  magi said  Good Day Manfred,

Been lurking here for over a year, you just gave a reason to come out of hiding!

You're book is marvelous, a beginners dream, you've done a fantastic job, please continue, we beginners need all the help we can get.

I very much like the PicoMite and MMBasic combination, Python and I aren't on speaking terms and I know there's no chance whatever of a reconciliation!

I did Pic assembly many, many years ago but in my old age I am most comfortable with BASIC, it just feels natural to me.

Please to consider an English version, I'll pay for it when available just put me on the list.

All the best,

Marc
Retired, doing what I want when I want to!


Hello Marc,

Thank you very much for your encouraging words.

I'm especially pleased that my project convinced you to make your first post after following the forum for such a long time.

Your comments are very motivating and confirm that there is still a need for beginner-friendly learning material for MMBasic.

My priority is to finish the German edition first, but the positive feedback from this thread is certainly making me think seriously about creating a dedicated English edition in the future.

One thing is already certain: the tutorial itself will always be available free of charge as a PDF. I want everyone to be able to learn MMBasic without any barriers.

However, I also plan to publish the book through Amazon KDP for those who simply prefer reading and learning from a printed book instead of a PDF. Buying the printed edition would be entirely optional and would mainly cover printing costs and make the tutorial easier to use away from the computer.

Thank you again for your support, and I hope you'll continue to follow the project.

Best regards,

Manfred
 
ManiB
Senior Member

Joined: 12/10/2019
Location: Germany
Posts: 153
Posted: 07:33pm 26 Jul 2026
Copy link to clipboard 
Print this post

  v.lenzer said  
  Quote  Please let me know if you find anything that could be improved as you work through the tutorial. Feedback from experienced MMBasic users is always welcome.


Hello Manfred!
I am currently working with the serial interface that I connect to the VGA-Pico. When I looked at your program for it, I noticed that the RX/TX pin assignments are not specified in the source code—for example: `SETPIN GP5, GP4, COM2`. A beginner might get stuck on this.


Hello v.lenzer,

Thank you for pointing that out.

You're absolutely right. A beginner should not have to guess which pins are assigned to COM2.

I will update the example and explicitly include the required SETPIN statement so that the program is completely self-contained and can be copied and run without referring back to the surrounding text.

Thanks again for the helpful suggestion!
 
v.lenzer
Senior Member

Joined: 04/05/2024
Location: Germany
Posts: 130
Posted: 09:04pm 26 Jul 2026
Copy link to clipboard 
Print this post

Hi Manfred!
In the "structured programming" program, the `Begruessung` subroutine appears twice. This causes an error. I’m not sure, though, if you intended this and want the user to delete parts of the program. Just a heads-up. And don't worry—I'm sure I'll find something else ;)
Best wishes! Joachim
 
ManiB
Senior Member

Joined: 12/10/2019
Location: Germany
Posts: 153
Posted: 09:23pm 26 Jul 2026
Copy link to clipboard 
Print this post

  v.lenzer said  Hi Manfred!
In the "structured programming" program, the `Begruessung` subroutine appears twice. This causes an error. I’m not sure, though, if you intended this and want the user to delete parts of the program. Just a heads-up. And don't worry—I'm sure I'll find something else ;)


Thanks Joachim! Good catch. That duplicate Begruessung subroutine was indeed a mistake and has already been fixed. I appreciate you taking the time to work through the examples so carefully. Keep the comments coming—I'm sure there are still a few things left to polish before version 1.0.
 
ManiB
Senior Member

Joined: 12/10/2019
Location: Germany
Posts: 153
Posted: 08:40am 27 Jul 2026
Copy link to clipboard 
Print this post

I've already received a few comments saying that people without a GitHub account are having trouble accessing my GitHub repo.

For this reason, the current version of the PDF can be downloaded from my blog using the download button at the very bottom of the page:

Mein erstes MMBasic Programm
 
Print this page


To reply to this topic, you need to log in.

The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2026