![]() |
Forum Index : Microcontroller and PC projects : Final PicoMite Release - V6.00.01
![]() ![]() ![]() ![]() |
|||||
Author | Message | ||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10240 |
There are reports of a bug in the WebMite versions of the download from Geoff's site. I've done a complete re-compile of all versions and tested them. I've sent them to Geoff to update his site but in then meantime if you experience any issues with any of the versions try the attached PicoMiteRP2350V6.00.01.zip PicoMiteRP2040V6.00.01.zip |
||||
TassyJim![]() Guru ![]() Joined: 07/08/2011 Location: AustraliaPosts: 6269 |
webmite is happy again! Thanks Jim VK7JH MMedit |
||||
robert.rozee Guru ![]() Joined: 31/12/2012 Location: New ZealandPosts: 2437 |
while i'm no longer a windows user, i was under the impression that the anti-virus protection built into windows (by MS) since around the time of version 7 was all that was needed. called "Windows Defender" originally, "Microsoft Defender" today? and kaspersky (and no doubt others) offer a drag-and-drop online checker for files. i vaguely remember using at least a couple of them a few years back when the win32 build of GFXterm triggered false positives for some folks. cheers, rob :-) |
||||
Geoffg![]() Guru ![]() Joined: 06/06/2011 Location: AustraliaPosts: 3285 |
OK, I have updated all the files (don't forget to clear your cache) The new ones can be recognised by their date/time which should be 2024-12-29 19:xx Geoff Geoff Graham - http://geoffg.net |
||||
thwill![]() Guru ![]() Joined: 16/09/2019 Location: United KingdomPosts: 4302 |
Congratulations to Peter & Geoff on meeting another significant milestone. Best wishes, Tom MMBasic for Linux, Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
Grogster![]() Admin Group ![]() Joined: 31/12/2012 Location: New ZealandPosts: 9593 |
What a lovely New-years-day prezzy. ![]() I tip my hat to all those involved in this on-going development - I raise a beer tonight in your honor. ![]() ![]() ![]() Smoke makes things work. When the smoke gets out, it stops! |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10240 |
Thanks for the kind words V6.00.01 includes a huge amount of functionality including many commands and functions that could be implemented in Basic but are included for making programs run faster. As far as I am concerned, unless and until any more new chips arrive, the PicoMite is now complete. Yes there are lots of tweaks that could be added but until I find an application I want to write that can't be done with the existing functionality (unlikely), I don't intend to make any further changes. Of course if any critical bugs are found then I will issue bug fixes but my philosophy will be that if a change requires an update to the manual it ain't going to happen - please don't ask. I now look forward to seeing what you all can do with the various PicoMite variants running 6.00.01. Please post details of your projects so we can see all the ways that MMBasic can help and/or entertain in the real world. Edited 2024-12-31 22:41 by matherp |
||||
mclout999 Guru ![]() Joined: 05/07/2020 Location: United StatesPosts: 489 |
Hi. I've been reading the new manual. Thank goodness for that. I love haveing that and a finality of features. I found one thing I didn't know before The HDMIUSB and I the other HDMI or VGA variants do not have the GUI commands. I've used them on the CMM2 In some programs in the past why were they not included in the video display variants like they are in the CMM2? Has this come up elsewhere? Thanks. |
||||
aFox Senior Member ![]() Joined: 28/02/2023 Location: GermanyPosts: 103 |
![]() |
||||
Mixtel90![]() Guru ![]() Joined: 05/10/2019 Location: United KingdomPosts: 7865 |
The GUI commands issue has indeed come up before. :) The main issue is space available in RAM. The CMM2 has much more RAM, which is expandable externally, It's not really a comparable device to the Pico. Something had to go to fit in a framebuffer for a display so everything to do with LCD touchscreens was removed - not necessary when you have a VGA or HDMI display anyway. If you need that version it's still available anyway. Many, many thanks to Geoff and Peter. I'm going to be honest, not having to chase the bleeding edge stuff all the time is going to be something of a relief. :) Well, I know I didn't *have* to chase it, but I did anyway... The PicoMite family now need exposure, which will be easier without moving goalposts. Edited 2025-01-01 03:08 by Mixtel90 Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
stanleyella![]() Guru ![]() Joined: 25/06/2022 Location: United KingdomPosts: 2540 |
"The PicoMite family now need exposure, which will be easier without moving goalposts. Edited 2025-01-01 03:08 by Mixtel90" I think the pico and now pico 2 are getting exposure, it's mmbasic for pico that isn't. just search youtube for pico. |
||||
karlelch![]() Senior Member ![]() Joined: 30/10/2014 Location: GermanyPosts: 235 |
I agree. One suggestion, if more projects, like the excellent games, were present on GitHub - with tags like "picomite", MMBasic" etc. - this may help. Setting up a repository with some basic readme documents is not that difficult, if its just about making code available. Cheers and Happy New Year from Switzerland! Thomas |
||||
stanleyella![]() Guru ![]() Joined: 25/06/2022 Location: United KingdomPosts: 2540 |
I don't like rpi pico as being thought of as solely a retro game machine or attempt at but it must have more uses for it's graghics and sound and pins. I just give my son his kids xmas presst. a fender jazz bass and practice amp. the tuner batteries had leaked and corroded the terminals. using a to d a guitar tuner seem a good project. searching measure frequency command l8r stan |
||||
Quazee137![]() Guru ![]() Joined: 07/08/2016 Location: United StatesPosts: 593 |
Stan there with you. I'm looking a tiny2040 + USB keyboard + 4" TFT display and making small handheld terminal to see the serial out of my ESPNOW Arduino projects. For now trying a MicroMite MX170's with 2.8" and Micro bit with OLED I2C display. Making my retirement FUN times. Quazee137 |
||||
Volhout Guru ![]() Joined: 05/03/2018 Location: NetherlandsPosts: 5058 |
Hi Stan, Done that once on a PIC16C84 (Guitar tuner). Remember that the hard thing wac the mic pre-amplifier (acoustic guitar). Guitars output high dynamics, I think wired (your son's bass) is a little easier, since you do not have to worry about other sounds (breathing). I see 2 options: 1/ using ADC and FFT, can work with analog input signal. I think you have made and oscilloscope once. That principle can be used, only send the data to MATH FFT. You will need a pre-amplifier I guess. 2/ using the frequency measurement (SETPIN GPx,FIN), but that requires digital input signal. So a pre-amplifier and schmitt-trigger circuit. Volhout PicomiteVGA PETSCII ROBOTS |
||||
Mixtel90![]() Guru ![]() Joined: 05/10/2019 Location: United KingdomPosts: 7865 |
Input into 1-transistor amplifier. Sod the distortion. Out of that, via a cap and resistor, to a pair of back-to-back 2V7 zeners to chop it square. Feed that into a frequency input, but while measuring ignore anything too low or too high for the guitar range - literally just ignore. Now you can start to test the frequency for each string. TBH, it's much cheaper, easier and less bulky to simply buy a nice little clip-on guitar tuner. They are only a fiver on ebay and work on a range of different instruments. Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
Zonker![]() Guru ![]() Joined: 18/08/2012 Location: United StatesPosts: 767 |
Good morning all... Happy new year..!! I just wanted to give thanks to Geoff & Peter and everyone here on the back shed for all the hard work producing one of the finest micro controller firmware ever created... This has allowed a dummy like myself to get back into creating projects I would never have dreamed of... Just awesome... So, currently using R-pi Picos on 2 projects... One is a monitoring system for the Eaton Super Cap modules at work. Each module has a PCB monitoring the caps inside and will detect an over voltage condition (62v) using an Optocoupler. We have 21 such modules connected in a 400v array. there are currently 8 such arrays to be monitored. I also created a small PCB to monitor the overall array voltage, and if it gets over 380v will activate another optocoupler to warn the user of possible over voltage. Using contactors, we can select various testing ranges of 400,800,1200 and 1600 volts. There is a Pico PCB monitoring all 22 inputs and connecting with the rest of the system using Rs-485 comms back to the HMI touch-screen on the outside of the room. The second project is a new status display that will interface to an internal CAN bus using an MCP2515 CAN interface IC. I have never worked CAN before so it will be a total learning opportunity for me. Much thanks again to all the fine folks here on TBS..!! Happy new year... ![]() |
||||
bfwolf Regular Member ![]() Joined: 03/01/2025 Location: GermanyPosts: 75 |
Hello Geoff, Hello Peter! Many thanks for all the work you have done so far! And happy new year to all! I hope this statement is not definitive and you are considering adding further enhancements/improvements? Here are some ideas: - Add keywords ByRef, ByVal as described here: https://learn.microsoft.com/en-us/dotnet/visual-basic/programming-guide/language-features/procedures/passing-arguments-by-value-and-by-reference MMBasic by default passes arguments to subs/functions ByRef as described in the manual. ByRef is sometimes useful - sometimes dangerous.. I found by experiments, that MMBasic can be forced to pass ByVal with a "workaround" or "hack" - name it as you like: Enclose the passed variable with () - example: > list Dim a As integer : a = 0 Print "a="; a Add1(a) Print "a="; a Add1((a)) Print "a="; a End Sub Add1(x As integer) x = x+1 Print "x="; x End Sub > run a= 0 x= 1 a= 1 x= 2 a= 1 > We could live with this, and i think adding ByVal, ByRef would be some larger work, but using () is some kind of "hack" and using ByVal and ByRef would be more expressive! - Add additional file-functions like in C as described here: https://jumentum.sourceforge.net/basic-commands.html The file statements and functions currently implemented in MMBasic are the "typical BASIC" style but don't allow flexible accessing binary files, like the C functions do. So having additionally <offset_or_err>=FSEEK(<fnbr>,<offset>,<mode>) where <mode> = {SEEK_SET=0, SEEK_CUR=1, SEEK_END=2} <length_or_err>=FWRITE(<fnbr>,<string>) <string>=FREAD$(<fnbr>,<chars>) would be very helpful to have flexible access to binary files. As a 'side-effect' FSEEK(<fnbr>,0,1) would report the current FilePosition and FSEEK(<fnbr>,0,2) the FileSize but this would change the current FilePosition so it must be restored after. An other very useful function (available in many BASICs) would be <fnbr>=FREEFILE() which should return the smallest <fnbr> currently not in use. I think, those additional file functions could be added easily? |
||||
Mixtel90![]() Guru ![]() Joined: 05/10/2019 Location: United KingdomPosts: 7865 |
Hi bfwolf, and welcome to the 'shed. :) Just my thoughts... Hmmm..... ByVal and ByRef are really VB constructs. MMBasic is essentially a GW-BASIC family with some ANSI stuff added. Personally, I'm not sure that they are really in line with the traditional "boot to BASIC" system that MMBasic uses. Don't get me wrong, they are great for clarity, but IMHO they wouldn't have been around at the time. MMBasic has a standard already. AFAIK the file system is provided by LittleFS, which can work with binary files. However, I suspect that implementing it might be adding more complication than it is worth for most people. It is also removing the "BASIC" as it's something that is decidedly non-standard. You have to bear in mind that a lot of the limitations in MMBasic are because of compatibility between the different platforms. You no doubt *could* add all sorts for the CMM2 as it can have a lot of RAM, but that would make it incompatible with the PicoMite, which has only recently broken the 240K limit. Things like FREEFILE are of so little use to most programmers in MMBasic that it's better for the programmer to implement them than fill up valuable flash area. You don't have a lot to do when you can only have 10 files open at once. Anyway, I doubt very much if there are going to be any changes like these in the near future anyway. We need time now, for the latest code to settle down and any nasty remaining bugs to be found. It's been quite a big jump since the last version. I wouldn't hold your breath if I were you. :) . Edited 2025-01-09 02:57 by Mixtel90 Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
WhiteWizzard Guru ![]() Joined: 05/04/2013 Location: United KingdomPosts: 2933 |
HELP needed! (I must be doing something silly, but never come across this scenario before in the many Pico's played with). I have an 'old' genuine Pico that had v5.05.03 firmware on it. All was working fine but wanted to update to latest firmware downloaded from this thread (Peter's post at top of Page 2). The reason for updating this particular module is that it has header pins soldered and I need to connect to a WaveShare IPS so grabbed this to save getting the soldering iron out). Going through all the standard motions and all appears to work at first glance BUT I noticed there was no usual welcome message (I expected to at least see the version number in TeraTerm's window upon connecting via USB to laptop). So, thought I'd try PRINT MM.VER to check that it had indeed installed the firmware but it returns 5.0503 ????? What am I missing - just cant seem to load firmware over 5.05.03....... Do I need some form of clearing/nuking this particular old firmware? Any help appreciated |
||||
![]() ![]() ![]() ![]() |
![]() |
![]() |
The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |