Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 07:28 26 Nov 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 : New Version of MMBasic. Version 3.2

     Page 1 of 4    
Author Message
Geoffg

Guru

Joined: 06/06/2011
Location: Australia
Posts: 3194
Posted: 04:47am 18 Apr 2012
Copy link to clipboard 
Print this post

A new version of MMBasic (ver 3.2) is available for download from:
- http://geoffg.net/maximite.html (for the Maximite and DuinoMite)
- http://geoffg.net/ubw32.html (for the UBW32).

This version introduces a number of new features:

- Defined Functions. These compliment defined subroutines and allows the programmer to add a function to MMBasic that operates the same as the built in functions. See the "MMBasic 3.X Features.pdf" (included in the update) for a tutorial on defined functions.

- Dynamic memory management. This greatly expands the amount of usefully available memory. Now memory for all functions (program, variables and general use) is automatically allocated from a central pool which can be as large as 109KB (with video turned off). This translates into the ability to run very large programs (greater than 3,000 lines) or to allocate huge arrays with more than 20,000 elements.

- A version of MMBasic that runs in a DOS window on Windows XP/Vista/7.

- For the DuinoMite added support for the hardware serial interfaces (COM3: and COM4:). They operate exactly the same as the standard ports and support speeds up to 460800 baud (no, that is not a typo). Added support for measuring the battery voltage, added support for I/O pins 11 and 12 (with caveats) and implemented a reliable method of detecting when the micro SD card has been removed or changed. It is now no longer necessary to reset the DuiniMite when changing the SD card.

Two other improvements in 3.2 are:

- Rewritten the SPI function to improve performance and provide much needed features. The transmission mode and the number of bits to send/receive can now be set and the clock speed has been increased to 3MHz.

- Corrected a number of issues with the UBW32 version related to I2C and the frequency/counting inputs.


MMBasic is being ported to a number of chips and platforms other than the Maximite/UBW32 so now there is a website dedicated to MMBasic at http://mmbasic.com (thanks to crackerjack for the suggestion). This website also has the DOS version of MMBasic (which can be downloaded from http://mmbasic.com/downloads.html). Note that the DOS version does not support features of the Maximite version that are dependent on the Maximite hardware. This includes external input/output, graphics, special keyboard keys, full screen editor and line editing.

The Maximite/UBW32/DuinoMite downloads also contain three other files:

- Bits8 is a library of bit manipulation functions and subroutines that add eight bit manipulation to MMBasic. The library demonstrates the power of user defined subroutines and functions in MMBasic and provides a very useful library if ever you need to "twiddle" bits in MMBasic. These routines were written by crackerjack.

- MaxMan written by Nick Marentes. I included it because it illustrates the speed and capabilities of the Maximite when driving a VGA monitor. It is also fast paced, engaging and addictive !!

- MMBasic Quick Reference for 3.2 written by crackerjack.


Thanks again to the Beta Test team for their help, there would be far more hidden bugs in MMBasic if it were not for their efforts.

The Change Log (included in the update download) details the changes and the MMBasic Language Manual (also included in the download) has been updated to include the new features listed above.

Phew, that must be enough for one post...
Geoff
Geoff Graham - http://geoffg.net
 
vasi

Guru

Joined: 23/03/2007
Location: Romania
Posts: 1697
Posted: 08:15am 18 Apr 2012
Copy link to clipboard 
Print this post

This is a fantastic release! I hope there is a future version for Chipkit Max32 board.

Vasi
Hobbit name: Togo Toadfoot of Frogmorton
Elvish name: Mablung Miriel
Beyound Arduino Lang
 
jman

Guru

Joined: 12/06/2011
Location: New Zealand
Posts: 711
Posted: 08:19am 18 Apr 2012
Copy link to clipboard 
Print this post

Fantastic

Big Thank you from Me.
And this is just what the doctor ordered

"Bits8 is a library of bit manipulation functions and subroutines that add eight bit manipulation to MMBasic. The library demonstrates the power of user defined subroutines and functions in MMBasic and provides a very useful library if ever you need to "twiddle" bits in MMBasic. These routines were written by crackerjack"

Thanks Again

John
 
Olimex
Senior Member

Joined: 02/10/2011
Location: Bulgaria
Posts: 226
Posted: 09:18am 18 Apr 2012
Copy link to clipboard 
Print this post

great to see the progress with DM hardware features supported and looking forward to see also: CAN, Low power modes, USB host (for HID, USB memory stick as start), USB mass storage through USB and the SD-card, GPIOs on the UEXT and ICSP to be possible to be used by MM BASIC too.
 
cosmic frog
Senior Member

Joined: 09/02/2012
Location: United Kingdom
Posts: 284
Posted: 10:05am 18 Apr 2012
Copy link to clipboard 
Print this post

I would just like to thank Geoffg for all his hard work on MMBASIC and for making computing fun again.

Thanks.

Dave.
 
darthmite

Senior Member

Joined: 20/11/2011
Location: France
Posts: 240
Posted: 11:11am 18 Apr 2012
Copy link to clipboard 
Print this post

From now i no more say "my God" but "my Geoff" ... he he he
I will be back at home tomorrow and will test this new great release !
And as well continue the little game i am writing atm

Cheers.


Theory is when we know everything but nothing work ...
Practice is when everything work but no one know why ;)
 
vk4tec

Senior Member

Joined: 24/03/2012
Location: Australia
Posts: 239
Posted: 11:15am 18 Apr 2012
Copy link to clipboard 
Print this post

National holiday "MMBasic" day


Andrew Rich VK4TEC
www.tech-software.net
 
boss

Senior Member

Joined: 19/08/2011
Location: Canada
Posts: 268
Posted: 03:15pm 18 Apr 2012
Copy link to clipboard 
Print this post

Yes, 3.2 is greatly improved code. I had an opportunity to test preleased version and there is lot of space for code and data as well. And extended SPI function allows to connect color TFT display.

Regards
boss
 
DuinoMiteMegaAn
Senior Member

Joined: 17/11/2011
Location: Australia
Posts: 231
Posted: 06:48pm 18 Apr 2012
Copy link to clipboard 
Print this post

MMBasic 3.2 DM Questions

#1. Can the "re-added" Com3 on the UEXT used as GPIO eg digital input/output?
If so, what is the software pin numbers?

#2. Can the "re-added" Com4 on Pins # 11 & 12 be used as GPIO eg digital input/output?

#3. Clarification --> On page 2 in the "DuinoMite MMBasic readme.pdf" you refer to the external view of the external Duinomite 26 pin connector. You show the "software pin #s" which does not correspond to the actual external GPIO pin numbers on the physical connector? (Very confusing)
 
vk4tec

Senior Member

Joined: 24/03/2012
Location: Australia
Posts: 239
Posted: 06:53pm 18 Apr 2012
Copy link to clipboard 
Print this post

GPS project updated to DuinoMite MMBasic V3.2

+ NMEA Parse
+ LCD 20x4 routines
+ Distance and bearing calcs
+ SD card logging

Odd behaviour - roll back necessary to V3.1R

+ GPS port has moved ? UEXT COM3 ?
+ PIC32 locked up after loading V3.2
+ Control C out of Terra Term did not work
+ SD card needed to be out to boot up
+ Prompt wont respond to carriage return
+ Banner shows DuinoMite MMBasic Version 3.2
+ COM3: 19200 MOD-GPS

Was running DuinoMite MMBasic V3.1R ( pre-release )

PIN RS = 18
PIN EN = 17
PIN D1 = 6
PIN D2 = 5
PIN D3 = 15
PIN D4 = 16

LCD shows banner and then does not see GPS on UEXT

Andrew
Edited by vk4tec 2012-04-20
Andrew Rich VK4TEC
www.tech-software.net
 
Raros

Regular Member

Joined: 06/02/2012
Location: Italy
Posts: 55
Posted: 08:23pm 18 Apr 2012
Copy link to clipboard 
Print this post

Thank You very very much Geoff.
This is fantastic.

Raros.
 
f1fco

Senior Member

Joined: 18/03/2012
Location: France
Posts: 154
Posted: 08:42pm 18 Apr 2012
Copy link to clipboard 
Print this post

it was not a dream but reality !

thank you Geoff for that

does this version works on CGMMSTICK1 ?

F1FCO, Pierre
73s de F1FCO
 
CircuitGizmos

Guru

Joined: 08/09/2011
Location: United States
Posts: 1425
Posted: 08:49pm 18 Apr 2012
Copy link to clipboard 
Print this post

  f1fco said  
does this version works on CGMMSTICK1 ?


Yes. Load the Maximite version to the CGMMSTICK1.
Micromites and Maximites! - Beginning Maximite
 
cwilt
Senior Member

Joined: 20/03/2012
Location: United States
Posts: 147
Posted: 11:36pm 18 Apr 2012
Copy link to clipboard 
Print this post

The changes to SPI are great.
Functions are so useful.
I2c is working nicely on UBW32 as well.

Thanks Geoff.
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6098
Posted: 02:49am 19 Apr 2012
Copy link to clipboard 
Print this post

The DOS version works happily on the 64 bit version of W7.
A very handy addition indeed.

I have added a command to MM Edit to run the code in the DOS window.

Thanks Geoff

Jim


VK7JH
MMedit   MMBasic Help
 
plasma
Guru

Joined: 08/04/2012
Location: Germany
Posts: 437
Posted: 04:10am 19 Apr 2012
Copy link to clipboard 
Print this post

Thank You very much Mr.Graham.
 
vk4tec

Senior Member

Joined: 24/03/2012
Location: Australia
Posts: 239
Posted: 09:15am 19 Apr 2012
Copy link to clipboard 
Print this post

Anyone using MMBasic 3.2 on DuinoMite Mini ?

Having issues

1. Green SD card light comes on
2. CTRL-C does not stop program
3. Need to sometimes eject SD CARD to un lock board
4. open "COM3:19200" as #1 , does not seem to work


Andrew Rich VK4TEC
www.tech-software.net
 
Geoffg

Guru

Joined: 06/06/2011
Location: Australia
Posts: 3194
Posted: 09:58am 19 Apr 2012
Copy link to clipboard 
Print this post

It definitely works on the DuinoMite Mini, I did most of the development on one.

GeoffEdited by Geoffg 2012-04-20
Geoff Graham - http://geoffg.net
 
vk4tec

Senior Member

Joined: 24/03/2012
Location: Australia
Posts: 239
Posted: 05:21pm 20 Apr 2012
Copy link to clipboard 
Print this post

Ok I think I found my problem

open "COM3:19200" as #1
print "Made it here ok"

open "COM2:19200" as #1
print "Made it here ok"

COM3 hangs the DuinoMite Mini ( UEXT )

COM2 does not hang, and prints "Made it here"
Andrew Rich VK4TEC
www.tech-software.net
 
vk4tec

Senior Member

Joined: 24/03/2012
Location: Australia
Posts: 239
Posted: 05:24pm 20 Apr 2012
Copy link to clipboard 
Print this post

Yep - that seems to be it

open "COM3:19200" as #1 ( just a one line program )

hangs my DuinoMite Mini

Control-C does nothing.

I have to reset button

Andrew
Andrew Rich VK4TEC
www.tech-software.net
 
     Page 1 of 4    
Print this page
© JAQ Software 2024