![]() |
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 StatesPosts: 197 |
Is there any hope for a future computer running MMBasic with resolutions up to 4K? |
||||
Grogster![]() Admin Group ![]() Joined: 31/12/2012 Location: New ZealandPosts: 9610 |
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 KingdomPosts: 4044 |
MMB4W? MMB4L? John |
||||
thwill![]() Guru ![]() Joined: 16/09/2019 Location: United KingdomPosts: 4311 |
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 KingdomPosts: 1646 |
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 KingdomPosts: 4044 |
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 KingdomPosts: 7937 |
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 KingdomPosts: 1646 |
"Affordable" is subjective but in terms of value for money: ![]() Craig |
||||
JohnS Guru ![]() Joined: 18/11/2011 Location: United KingdomPosts: 4044 |
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: CanadaPosts: 1132 |
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 StatesPosts: 197 |
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 KingdomPosts: 10310 |
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 KingdomPosts: 1646 |
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 ZealandPosts: 9610 |
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 KingdomPosts: 1646 |
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 ZealandPosts: 9610 |
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 KingdomPosts: 1646 |
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 KingdomPosts: 7937 |
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 KingdomPosts: 1646 |
![]() ![]() ![]() 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 KingdomPosts: 7937 |
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 ![]() ![]() |
![]() |
![]() |
The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |