Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 09:02 01 Aug 2025 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 with 4K resolution

     Page 1 of 2    
Author Message
bar1010
Senior Member

Joined: 10/08/2020
Location: United States
Posts: 197
Posted: 06:21am 14 Jan 2023
Copy link to clipboard 
Print this post

Is there any hope for a future computer running MMBasic
with resolutions up to 4K?
 
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9610
Posted: 07:05am 14 Jan 2023
Copy link to clipboard 
Print this post

I would say DEFINTELY not natively.
There simply is not enough video-RAM to do that, and speed is also an issue at 4K.
In ANY MMBASIC port.  This is simply NOT what MMBASIC was ever designed to do.

Peter(matherp) would know for sure, but I think it is a safe bet to say that will NEVER happen.

Despite Peter's ingenuity.  
Smoke makes things work. When the smoke gets out, it stops!
 
JohnS
Guru

Joined: 18/11/2011
Location: United Kingdom
Posts: 4044
Posted: 10:20am 14 Jan 2023
Copy link to clipboard 
Print this post

MMB4W?

MMB4L?

John
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 4311
Posted: 10:27am 14 Jan 2023
Copy link to clipboard 
Print this post

  JohnS said  MMB4L?


MMB4L has no high resolution graphics support and is likely to stay that way for some time (years) because it would take significant effort and I don't need it for the things for which I use MMB4L. The door is however always open for others to contribute to development.

Best wishes,

Tom
Edited 2023-01-14 20:33 by thwill
MMBasic for Linux, Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
Tinine
Guru

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

I brought up this idea before and all I got was crickets  

A display is required.
Why not have the display do the heavy lifting?

I'm referring to an Android device.

It's child's play for RFO BASIC to do graphics and high quality audio.

Example: Via Bluetooth, MMBasic sends a command to draw an object, including the various parameters. RFO BASIC takes this instruction and makes it happen.

You could call up bitmaps of whatever resolution the device can handle and these would be stored as a resource.

Movies, audio, draw any shapes that you desire.

Tons of memory, battery backup, WiFi, BT, etc.

Start here

Craig
 
JohnS
Guru

Joined: 18/11/2011
Location: United Kingdom
Posts: 4044
Posted: 02:09pm 14 Jan 2023
Copy link to clipboard 
Print this post

You could do the same using Linux or Windows, not even needing RFO (but it isn't quite what was asked).

I think the crickets imply almost no-one wants it (4K MMBasic).

John
Edited 2023-01-15 00:10 by JohnS
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 7937
Posted: 03:12pm 14 Jan 2023
Copy link to clipboard 
Print this post

Generally there isn't a need for 4k displays in BASIC, I don't think. You could use a Raspberry Pi as an intelligent display and send it commands using I2c, SPI, a COM port or home brew parallel interface. The Pi could then grab images from its SD card and display them as required. You might also be able to send it something like teletext commands if you create the appropriate software for the Pi.

Craig: How many affordable Android devices have 4k displays?
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: 04:24pm 14 Jan 2023
Copy link to clipboard 
Print this post

"Affordable" is subjective but in terms of value for money:






Craig
 
JohnS
Guru

Joined: 18/11/2011
Location: United Kingdom
Posts: 4044
Posted: 05:04pm 14 Jan 2023
Copy link to clipboard 
Print this post

For those who actually do want a 4K tablet, and don't mind that supplier, it's probably good value.

With MMBasic - or any Basic - for me, crickets.

(I paid less for a great, used, laptop, with a much nicer keyboard, far bigger HDD, and I don't care about 4K, but that may be your idea of crickets.)

John
 
vegipete

Guru

Joined: 29/01/2013
Location: Canada
Posts: 1132
Posted: 05:23pm 14 Jan 2023
Copy link to clipboard 
Print this post

I'd say, once 4K becomes vintage, yes, there'll be an MMBasic port to an STM256xxx chip. The youth then will marvel at the primitive tech their grandpappies used way back when.
Visit Vegipete's *Mite Library for cool programs.
 
bar1010
Senior Member

Joined: 10/08/2020
Location: United States
Posts: 197
Posted: 06:32pm 14 Jan 2023
Copy link to clipboard 
Print this post

  Mixtel90 said  Generally there isn't a need for 4k displays in BASIC, I don't think. You could use a Raspberry Pi as an intelligent display and send it commands using I2c, SPI, a COM port or home brew parallel interface. The Pi could then grab images from its SD card and display them as required. You might also be able to send it something like teletext commands if you create the appropriate software for the Pi.

Craig: How many affordable Android devices have 4k displays?


The highest resolution mode for Gen 1 Color Maximite 2 is 1280 x 1024, and I have used this mode many, many
times in my programs.  If a 4K resolution were available in the future, then once again I would be using it in many
programs.  For example, Picture Puzzles could have 3840 x 2160 resolution with 16 or 24 bit color.  Card games could have much clearer images for the cards, etc.
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10310
Posted: 06:52pm 14 Jan 2023
Copy link to clipboard 
Print this post

The CMM2 Gen2 just about supports 1920x1080 at 8-bit colour resolution and even this is way outside the official spec of the STM32H743. 4K requires 4*bandwidth and is a complete non-starter (12x bandwdth for full colour!!!!!) and all that is ignoring the memory requirement 3840*2160 = 8Mb for a single framebuffer
Edited 2023-01-15 04:53 by matherp
 
Tinine
Guru

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

Man, I just couldn't imagine life with no imagination/creative-thinking and no desire to explore new possibilities.

The Mites don't accomplish much without add-ons.

Might just grab one of these and see if I can make it talk to the Mite.




Craig
 
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9610
Posted: 11:46pm 14 Jan 2023
Copy link to clipboard 
Print this post

Keep us posted, Craig.
I'd be interested in seeing what people could come up with with a 4K mediaplayer type thing like that, interfaced to MMBASIC in some way.  I still think it would be kinda tricky even to interface to a mediaplayer.  The android laptop you linked to might have more possibilities, but at the end of the day, if you really want 4K, then buy a 4K device such as the mediaplayer or photo-frame thing, forget MMBASIC and job done.

As for MMBASIC supporting 4K, Peter has confirmed that will never happen simply cos of hardware limitations more then anything else, but even if you COULD get a chip with that kind of capability - such as HDMI or DisplayPort out or something, it would be heckspensive and there would seem to be little point when you can buy android tablets or laptop things as linked to here, that CAN do that natively, so why not just use those directly for your display purposes.  4K is rather beyond the capabilities of MMBASIC, and outside of the scope of what MMBASIC is supposed to be I think it is fair to say.

My humble 2c/2p only.
I'm always interested and amazed at how MMBASIC can be bent to do things thought impossible, but we might have found the ultimate brick-wall in the 4K idea though!  
Smoke makes things work. When the smoke gets out, it stops!
 
Tinine
Guru

Joined: 30/03/2016
Location: United Kingdom
Posts: 1646
Posted: 12:55am 15 Jan 2023
Copy link to clipboard 
Print this post

The concept is very simple.

To draw a circle, send a code via Bluetooth to the Android system.
I prefer binary to keep the packet short. Simply supply the x/y coords, radius, line thickness, colour, etc.

Your RFO BASIC program reads the command and draws the circle. It even supports hardware acceleration. We have 16ms between refreshes so we can get some respectable performance. The BT device on the Pico, easily handles 960K-Baud.

Any bitmaps or other resources reside on the Android device. When you are done with RFO code development, you can compile a single apk right on the Android device and this apk also bundles the required resources.

Pico doesn't know/care about the screen resolution, it simply tells the Android device what to display.

A Mite will never cook your dinner but it can tell the oven what to do  


Craig
 
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9610
Posted: 04:30am 15 Jan 2023
Copy link to clipboard 
Print this post

An interesting concept.
But if you were going to use a 'mite to tell the android device what to do, why not just use the android device to tell itself what to do? (rhetorical!)  

I'd still be interested to see your results, but it seems like a waste of effort.
But then - I OFTEN miss the point on MANY things, so perhaps I just don't understand the concept well enough.  
Smoke makes things work. When the smoke gets out, it stops!
 
Tinine
Guru

Joined: 30/03/2016
Location: United Kingdom
Posts: 1646
Posted: 07:56am 15 Jan 2023
Copy link to clipboard 
Print this post

Full duplex comms, can work either way.
As the Pico is setting outputs and reading inputs, it updates the Android device for display purposes.

If I built a home monitoring and security system, nobody would consider a tablet mounted on the wall in a hallway as an eyesore.
People are now accustomed to a screen image quality of a mobile phone.
The Pico would be controlling and monitoring the home automation.

The tablet's/phone's front camera makes for a great motion detector.

Remote control of the device is easy.

If you are away and need to be informed of a power-outage, the device (with a SIM) can send emails, text messages, etc.


I use them for machine HMIs.
Take an industry standard "Red Lion" HMI (similar to a tablet). If it dies, the £2,500 replacement is at least a day away. The cost is a drop in the bucket compared to the lost production and the dozens of hourly employees sitting around.

My tablet dies, either grab another one or download the app to an Android phone. Back up and running.

Only the Not-Invented-Here brigade would argue that this is not a great solution but then they never have to foot the bill.


Most of us are carrying the most powerful and ubiquitous HMI ever created....in our pockets  
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 7937
Posted: 09:21am 15 Jan 2023
Copy link to clipboard 
Print this post

If the OP had been more precise about what a 4k display was wanted for this would have been easier. :)

Connecting to one is trivial - convert VGA to HDMA and scale. It can be done now.

Having full control over the full bit resolution in real time via MMBasic isn't possible on any stand-alone MMBasic device. The closest is MMBasic for Windows.

Putting anything else in the way to accept MMBsic drawing commands and convert them into a 4k display can be done with some work but it will always be speed-limited by the MMBasic processing time and the link between the MMBasic device and the display driver. The driver could be Android+LCD or Raspberry Pi+TV/monitor - anything with a 4k GPU.
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: 12:15pm 15 Jan 2023
Copy link to clipboard 
Print this post

  Mixtel90 said  

Putting anything else in the way
     

Translated to reality:
Now, simply sending a few bytes of data to something with an octacore CPU + GPU is the ideal solution because an awful lot can be achieved in 16ms.
Furthermore, one doesn't need to be limited to plain buttons because much more modern-looking rendered 3d images can be loaded/resized/displayed....instantly.























Craig
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 7937
Posted: 03:17pm 15 Jan 2023
Copy link to clipboard 
Print this post

Now send it an animated 4k image from the RP2040. Or even a 16-colour 320x240 one for that matter.

Translated to reality...

All I'm saying is that there has to be a delay introduced by the interface from the RP2040. It's impossible to do it without. That means that all commands have to take processing time at both ends of the link. The time taken to render the 4k image doesn't matter in the least - that's not where the delay is.

If you need true 4k resolution then it's easier to use a RPi. It has 4k video and it has GPIO. You just need to program in Python rather than MMBasic. It's far easier than trying to get MMBasic to handle 4k because it was never designed to do it.
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
     Page 1 of 2    
Print this page
The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2025