Home
JAQForum Ver 20.06
Log In or Join  
Active Topics
Local Time 06:04 26 Apr 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 : Any interest in MMBasic for Windows with full Graphics?

     Page 4 of 5    
Author Message
Tinine
Guru

Joined: 30/03/2016
Location: United Kingdom
Posts: 1646
Posted: 01:40pm 22 Jan 2022
Copy link to clipboard 
Print this post

  JohnS said  

Worst case, use files to pass data.

John




IIRC, we used a Ram-drive for this because it turned out to be faster than DDE.

Craig
 
flasherror
Senior Member

Joined: 07/01/2019
Location: United States
Posts: 159
Posted: 02:03pm 22 Jan 2022
Copy link to clipboard 
Print this post

  JohnS said  
Worst case, use files to pass data.


Way too slow for communicating between MMBasic interpreters running on different threads.
 
Tinine
Guru

Joined: 30/03/2016
Location: United Kingdom
Posts: 1646
Posted: 02:12pm 22 Jan 2022
Copy link to clipboard 
Print this post

  flasherror said  
  JohnS said  
Worst case, use files to pass data.


Way too slow for communicating between MMBasic interpreters running on different threads.


No different to checking a RX buffer when using a RAM-drive:

If file exists, read it and then kill it.

Craig
 
JohnS
Guru

Joined: 18/11/2011
Location: United Kingdom
Posts: 3655
Posted: 02:15pm 22 Jan 2022
Copy link to clipboard 
Print this post

  flasherror said  
  JohnS said  
Worst case, use files to pass data.


Way too slow for communicating between MMBasic interpreters running on different threads.

1. very possibly incorrect
2. I carefully put "Worst case"
3. right now there is nothing
4. let's see what 1st (alpha) release is like

John
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 5722
Posted: 02:36pm 22 Jan 2022
Copy link to clipboard 
Print this post

  matherp said  
  Quote  Without hardware IO capability MMBasic is stripped of it's whole purpose.


In your view but not of lots of the posters above. I use the DOS version quite frequently for simple utility programs. The CSUB generator is written in it.


Oh yeah, it's *my* view ok. MMBasic is great - but *I* can't see it as a serious PC programming language unless it can do what it was designed to do - control things. Otherwise it's just another BBC Basic or FreeBasic look-alike. Java will do most of that stuff too.

It's not a fault of MMBasic, it's a fault with the PC architecture that we've inherited. "Proper" IO is dead now. It's USB or nothing unless you use specialist hardware expansion boards at stupid "industrial" prices - not hobbyist stuff. RS485? You get a USB-RS485 converter. Same for COM ports or anything else. It's all USB and layers of Windows drivers in the end.

To give MMBasic it's SETPIN, PIN(n)=1 etc back someone is going to have to come up with USB IO devices that can handle it. Otherwise what's the point? You have a language that's not optimised for games, music, databases etc. trying to do just that, when there are plenty of far better languages for those purposes. I don't seem to be in agreement with a lot of the others on this, but it's my opinion.

Sorry for my little rant...  :)
Mick

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

Joined: 30/03/2016
Location: United Kingdom
Posts: 1646
Posted: 03:35pm 22 Jan 2022
Copy link to clipboard 
Print this post

@Mixtel90

  Quote  "Proper" IO is dead now. It's USB or nothing unless you use specialist hardware expansion boards at stupid "industrial"


Ain't that the truth  

PCI-LPT boards are under 5 quid on AE but there's not much to work with.

I guess parallel I/O is the "con" regarding a Windows system but then there are many, many "pros" if one can work with USB or virtual com-ports (serial to ethernet?)

In my own case, I am using my Picomites for serial control only. Not using DIO at all.

Cheers,

Craig
 
Plasmamac

Guru

Joined: 31/01/2019
Location: Germany
Posts: 501
Posted: 03:58pm 22 Jan 2022
Copy link to clipboard 
Print this post

https://github.com/archlabo/Frix

Maybe we need an AIO Fpga for this .

Gtx
Edited 2022-01-23 02:23 by Plasmamac
Plasma
 
IanT
Regular Member

Joined: 29/11/2016
Location: United Kingdom
Posts: 84
Posted: 05:29pm 22 Jan 2022
Copy link to clipboard 
Print this post

" Oh yeah, it's *my* view ok. MMBasic is great - but *I* can't see it as a serious PC programming language unless it can do what it was designed to do - control things. Otherwise it's just another BBC Basic or FreeBasic look-alike. Java will do most of that stuff too "

But I don't want to learn YAPL (Yet Another Programming Language) Mick - MMB is more than enough for most of my needs. I'm the old Dummy who is also trying to master 3D CAD, 3D Printing, a little CNC as well as play with all these wonderful things that Peter & Geoff have gifted us. Quite frankly, I haven't got any time (or mental bandwidth) left over to get involved in anything else. It's very hard to multiplex all my interests as it is..

Of course, the CMM2 and (now) PicoVGA can both provide display, keyboard and direct I/O - but I already use my laptop to 'talk' to my Mites - so I think the ability to use some basic PC graphics could be very useful, especially if I just want to put some larger numbers and dials on a screen (that I can actually see) without needing any new hardware...

So whilst I understand all the requests for full blown PC 'MMB' capability etc - I think the graphical DOS upgrade Peter is offering could be very useful to some of us here.

Regards,

Ian
 
Tinine
Guru

Joined: 30/03/2016
Location: United Kingdom
Posts: 1646
Posted: 05:33pm 22 Jan 2022
Copy link to clipboard 
Print this post

The problem for integrators is that none of the existing MMBasic products is packaged. We have to screw around with finding a display, touchscreen, enclosure, etc. and then we have performance concerns with the display, not to mention the 1990s "graphics".

AIO panel PCs are everywhere for relatively little cost (if one values their time).

People are accustomed to and expect GUIs that we have on our mobile devices.
I know this for a fact because I have always put a lot of emphasis on the user interface and sex really does sell.

Craig
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 5722
Posted: 06:38pm 22 Jan 2022
Copy link to clipboard 
Print this post

TBH I can't see a great degree of gain in using a PC over a CMM2 for MMBasic, apart from the fact that people have them already. The CMM2 already has IO (including the ability to add COM, SPI, and I2C easily), it has mouse-actuated controls and it already has MMBasic (although not as fast as a PC). It already works with a standard keyboard and monitor. It doesn't have a touch screen but neither will a PC version. And it's power supply is silent and draws a lot less than 200W!

I don't know what software you write, Ian, but I suspect that if you were already writing games of any complexity, for example, then you wouldn't be considering swapping from C or whatever to MMBasic to do that. Programming languages are very much "horses for courses". None of them do *everything* well and in a productive manner.
Mick

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

Joined: 30/03/2016
Location: United Kingdom
Posts: 1646
Posted: 08:39pm 22 Jan 2022
Copy link to clipboard 
Print this post

@Mixtel90

  Quote  TBH I can't see a great degree of gain in using a PC over a CMM2  


GFLOPS?  
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 3519
Posted: 09:41pm 22 Jan 2022
Copy link to clipboard 
Print this post

I hear a lot of meanings in this thread that i cannot confirm, but i will give you my experience.

1. Data interchange between different threads using files is fast. This may be because disk interfaces are often cashed. So 2 mmbasic instances can exchange data really fast with simple means.

2. For those of you who have made serious programs on cmm2: a pc can do serious programs in mmbasic. For those of you who think bigger, yip, you are right, mmbasis is not your league( but what are you doing on this forum).

3. People make pipe benders around fast multicore propeller chips that interface to a mmbasic arm or pic32. The propeller canvalso interface to a pc running mmbasic, so he can do all development on the pc, with smart propeller io. Then in last instance convert to pic32 or whatever, but in the pc environment hen can use system calls to work with wifi, bluetooth, www, and all the nitty gritty tools a pc environment can offer.

I do see a serious opportunity to do something with mmbasic on pc.

So Peter, don't stop. You open an opportunity that before was only possible with piCRomite.

Volhout

@mixtel: compactness of a laptop vs CMM2 system. For larger programs a better editor is usefull. When developing on cmm2 I always have a laptop and CMM2 side by side wher the laptop replaces the printed manual. Oh yeah, the pc is probably 10x faster.
Edited 2022-01-23 07:54 by Volhout
PicomiteVGA PETSCII ROBOTS
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 5722
Posted: 10:05pm 22 Jan 2022
Copy link to clipboard 
Print this post

  Tinine said  @Mixtel90

  Quote  TBH I can't see a great degree of gain in using a PC over a CMM2  


GFLOPS?  


But why is that an advantage when your IO is a) over a serial interface and b) has a timing that you can't control because it's part of an OS?

As for a laptop being more compact, there are monitors the size of laptop screens - and you don't have to have all that keyboard taking up desk space. You also don't get the overheating that's common with many laptops that are left running for days/weeks/months on end.
Mick

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

Joined: 25/07/2019
Location: United Kingdom
Posts: 52
Posted: 11:21pm 22 Jan 2022
Copy link to clipboard 
Print this post

I don't know about you,
but I miss good old Visual Basic, peaked at V.6
a great tool and a great toy.
could MMBasic fill this gap?
 
Tinine
Guru

Joined: 30/03/2016
Location: United Kingdom
Posts: 1646
Posted: 11:28pm 22 Jan 2022
Copy link to clipboard 
Print this post

@Volhout

Rock on man

You are seeing the same potential here.

Craig
Edited 2022-01-23 09:29 by Tinine
 
HardingJohn

Regular Member

Joined: 28/07/2017
Location: Australia
Posts: 78
Posted: 12:05am 23 Jan 2022
Copy link to clipboard 
Print this post

I shouldn't be blowing my own horn here BUT,

I have built a box that has a Ethernet Wiznet W5500 board (SPI), LoRa E2290M30S Module (SPI), Encryption MAX1061 chip (SPI), RS485 Board (COM Port), Colour touch screen and SDCard (SPI), 4 x digital Inputs and 4 x Relay Outputs (GPIOs) and a 3 Phase AC Measurement ATM90E36A Chip (SPI).

I have written in MMBasic a 3 Phase meter and data logger (96 measurements / sec), a Web page server with Websockets upgrade, IGMP UDP and TCP Modbus and RS485 RTU Modbus support as a master or slave.  I have written Modbus over LoRa wireless gateway and a buy and sell trading protocol over LoRa wireless with a variation on mesh networking and an encryption system similar to TLS3.

It all runs on a STM32H743ZI chip with MMBasic at the same time.

Please don't forget us small minority that want to build useful, powerful embedded machines that we can easily write the code for.

I just bought a Portenta H7 Lite.  STM32H747 dual core chip. 480Mhz + 240Mhz includes 8Mb SDRAM and 16Mb QPSI Flash.  Imagine two MMbasic interconnected threads.
Now this would be a great project for Peter.

I am trying to learn STMCubeIDE to port MMBasic to new chips, but it is a very steep learning curve and I hope that Peter and the rest of the Gurus here can fine the time to help me.
Just know enough to get me in trouble, but not quite enough to get me out.
 
Tinine
Guru

Joined: 30/03/2016
Location: United Kingdom
Posts: 1646
Posted: 01:00am 23 Jan 2022
Copy link to clipboard 
Print this post

  HardingJohn said  I shouldn't be blowing my own horn here BUT,

I have built a box that has a Ethernet Wiznet W5500 board (SPI), LoRa E2290M30S Module (SPI), Encryption MAX1061 chip (SPI), RS485 Board (COM Port), Colour touch screen and SDCard (SPI), 4 x digital Inputs and 4 x Relay Outputs (GPIOs) and a 3 Phase AC Measurement ATM90E36A Chip (SPI).

I have written in MMBasic a 3 Phase meter and data logger (96 measurements / sec), a Web page server with Websockets upgrade, IGMP UDP and TCP Modbus and RS485 RTU Modbus support as a master or slave.  I have written Modbus over LoRa wireless gateway and a buy and sell trading protocol over LoRa wireless with a variation on mesh networking and an encryption system similar to TLS3.

It all runs on a STM32H743ZI chip with MMBasic at the same time.

Please don't forget us small minority that want to build useful, powerful embedded machines that we can easily write the code for.

I just bought a Portenta H7 Lite.  STM32H747 dual core chip. 480Mhz + 240Mhz includes 8Mb SDRAM and 16Mb QPSI Flash.  Imagine two MMbasic interconnected threads.
Now this would be a great project for Peter.

I am trying to learn STMCubeIDE to port MMBasic to new chips, but it is a very steep learning curve and I hope that Peter and the rest of the Gurus here can fine the time to help me.


Probably wasting my time AGAIN but:

Use MMBasic as the command processor

For anything serious, then hand it off to a Parallax processor.
You don't leave your BASIC comfort zone but you can accomplish pretty-much anything.

You write/prove functions to the point that you never need to change them. Stick them on the Propeller and even assign them to one of the available 8 processors.

RPC = Remote Procedure Call.

Why try to use MMBasic for something that it's really bad at?

Craig
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 8578
Posted: 03:45pm 23 Jan 2022
Copy link to clipboard 
Print this post

It lives  




Showing a 1024x768 window with a 24x16 font. Lots of memory
Running in debug mode FPS in release mode is c260FPS
Edited 2022-01-24 01:47 by matherp
 
Tinine
Guru

Joined: 30/03/2016
Location: United Kingdom
Posts: 1646
Posted: 04:30pm 23 Jan 2022
Copy link to clipboard 
Print this post

Excited!!!  






 
Tinine
Guru

Joined: 30/03/2016
Location: United Kingdom
Posts: 1646
Posted: 04:37pm 23 Jan 2022
Copy link to clipboard 
Print this post

Forgot to mention that each of the above PCs costs approximately 85 quid.
 
     Page 4 of 5    
Print this page
© JAQ Software 2024