|
Forum Index : Microcontroller and PC projects : PicoMite V6.02.00 release candidates - Structured types
| Author | Message | ||||
| JohnS Guru Joined: 18/11/2011 Location: United KingdomPosts: 4242 |
I understand that's unlikely as I think only one core executes your Basic program and "interrupts" (i.e. the ones a Basic program handles) are serviced between Basic statements when the interpreter chooses. I think it never goes from the middle of a Basic statement into a Basic so-called interrupt routine. Any actual hardware interrupt's effect as seen by the Basic program can be delayed a little due to that, I think. However, I don't know if there are possible races inside the C code but the likelihood will be much reduced by the structure adopted. All the above can be corrected by Peter/Geoff/... John |
||||
| ksinger Regular Member Joined: 06/01/2026 Location: United KingdomPosts: 70 |
Actually I built the picones (https://github.com/fhoedemakers/pico-infonesPlus) and realized over x-mas when trying to figure out a x-mas present for my smallest one that its pin compatible to the picomite. It worked just with the same board I built. The only notable difference was that HDMI-Audio was missing so I just added the filter and a jack and all worked greatly. But this leads me to one nice addition: HDMI-Audio: https://github.com/fhoedemakers/pico_lib/tree/4c53bd28f12f1aa884d4b9de599e8b9df3c9d190 |
||||
| matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 10965 |
There are no such "known" bugs in my codebase. ksinger has been modifying the 6.01.00 code from github and building himself. None of the 6.02.00 code is yet on github. I had too much hassle in the development of 6.01.00 with multiple groups building from development versions and then complaining to release the code before it is finished this time. 6.02.00RC8 posted above is the latest release candidate and runs all test programs including the mario demo perfectly without any memory leaks. HDMI audio will not be included in the PicoMite. The PicoMite HDMI uses every single cpu cycle on the second cpu handling things like layers and colour mapping. In addition it supports multiple different resolutions. It is not feasible to add additional processing in the hdmi interrupt Edited 2026-01-21 20:51 by matherp |
||||
| ksinger Regular Member Joined: 06/01/2026 Location: United KingdomPosts: 70 |
good to know. |
||||
| JohnS Guru Joined: 18/11/2011 Location: United KingdomPosts: 4242 |
I just realised what I wrote will only be mostly right (at best), as some MMBasic things imply a sort of multi-tasking, but even that is under the C code's complete control and it can avoid software races I reckon. John Edited 2026-01-21 21:41 by JohnS |
||||
| ksinger Regular Member Joined: 06/01/2026 Location: United KingdomPosts: 70 |
One thing I realized that would be helpful is "sprite hide" which hides also when sprite is hidden without error message. The if "sprite(x,1)<>10000" then ... causes some additional time. And in the doc one should mention that only sprite(c,64) works but of course the 64th bit cannot be set because a 64 bit register only has bits 0 to 63. I fell into this trap in the beginning and there was always collision detection not working for one sprite. Guess which one.... Anyways here is the result it is a pong, breakout clone for two players. For development reasons you can set speedstart=1 then you control both paddles. The kids love it and I love Jeroen Tel's mod file... The tunes in the mod file were just so good a match to sound effects in the game that I called the game after his song... The grey blocks will double the ball. Not yet implemented is the full quantum behaviour with projective measurements... Have fun and enjoy the smooth movement of the ball. Due to missing two mice support on a pc I guess this is the only platform where you can enjoy it. I put extra efforts into a good mouse control always wanted to play pong with more push and spin control. And dont forget to do a: option modbuff enable 280. hitme.zip |
||||
| ksinger Regular Member Joined: 06/01/2026 Location: United KingdomPosts: 70 |
And guess what, we just got 20 pc screens, 20 keyboards and mice, 20 loudspeakers and.... 20 PICOMITES! A full lecture hall of picomites! That sounds like a lot of fun... |
||||
| ksinger Regular Member Joined: 06/01/2026 Location: United KingdomPosts: 70 |
And if you are not into gaming you might want to improve your typing skills: Here is a feature complete port of gtypist into mmbasic: https://github.com/kiliansinger/gtypist_mmb All west european fonts are supported. Even german special dead keys are emulated. |
||||
| ksinger Regular Member Joined: 06/01/2026 Location: United KingdomPosts: 70 |
I needed a programming language where ai support fails. Otherwise not the student but the ai does the job. mmbasic is perfect. Maybe I should not put source code on github...Otherwise ai might catch up |
||||
| matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 10965 |
sprite 64 works fine - see my Brownian motion demo. Valid sprites are 1 to 64 |
||||
| lizby Guru Joined: 17/05/2016 Location: United StatesPosts: 3617 |
AI is already good (not perfect) at MMBasic code: 2,000 lines from Claude in 4 days: A not very generic relational database retrieval system Now 2,100+ lines from Gemini in about 6 days for a much more generic and powerful relational database retrieval and update system: PicoDB At this point, perhaps teaching "vibe coding" is the way to go (but how does a student learn enough to be able to direct (and at least for now, debug) the AI?). ~ Edited 2026-01-22 05:06 by lizby PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed |
||||
| ksinger Regular Member Joined: 06/01/2026 Location: United KingdomPosts: 70 |
I just realized how calming the simple text based help system is. Athough a back button is painfully missing. But because the editor blanks the help page you are forced to memorize the syntax. In the end you are much faster than always looking things up. The problem with vibe coding is that it is not the right way to start in my opinion. But maybe I am too oldschool. I guess that's why I hang around in retro pages... |
||||
| ksinger Regular Member Joined: 06/01/2026 Location: United KingdomPosts: 70 |
i mean "if sprite(n,c) and 2^64 then" of course fails. But you shoud do sprite(64,c)... |
||||
| lizby Guru Joined: 17/05/2016 Location: United StatesPosts: 3617 |
I'm old school too--79 years old and coding since 1969--and hanging here on these retro pages (although to my mind, Geoff's and Peter's work is very forward-thinking, while still being excellent for retro work). I'd agree that there's a huge difference between what a rank beginner and a veteran developer can do with "vibe coding", but does this mean that beginners are forced to put in 5 or more years of old school grind at a productive rate a tenth (or less) of what AI can do? I don't think the market is going to fund that. I don't know what the answer is. PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed |
||||
| ksinger Regular Member Joined: 06/01/2026 Location: United KingdomPosts: 70 |
@Peter try: option sdcard gp5,gp2,gp3,gp3 it stalls the system and you need to reflash |
||||
| ksinger Regular Member Joined: 06/01/2026 Location: United KingdomPosts: 70 |
but before you need the flash_nuke.uf2 Edited 2026-01-22 18:04 by ksinger |
||||
| ksinger Regular Member Joined: 06/01/2026 Location: United KingdomPosts: 70 |
And copy "b:file" to "a:" gives: error : no space left on device Whereas copy "b:file" to "a:file" works fine |
||||
| ksinger Regular Member Joined: 06/01/2026 Location: United KingdomPosts: 70 |
when using it I realized there are some simple changes that would increase the already great user experience: * allow for copy file to file only in command line. That would not break basic compatibility. I mean when filename has no spaces one could allow for ommiting the " * also for people coming from linux alias commands (only on command line) would be nice. such as ls,cd,rm, maybe with msdos aliases like dir,..., . Again I would do that only on command line to keep basic programs compatible. * I really like the help.txt files but not being able to scroll back is sometimes a bit hard when scanning through large pages. Maybe one could even open the editor in read only mode when issueing an help command *Searching through the help file also in the description text would allow to search for commands where you do not know the name yet * Scroll wheel support for mouse that would be awesome * Is it hard to implement line wrapping? as oversized lines are actually omnipresent especially when people write basic programs on external editors. * keeping history upon reboot Edited 2026-01-22 18:16 by ksinger |
||||
| ksinger Regular Member Joined: 06/01/2026 Location: United KingdomPosts: 70 |
oh and there is a better flash nuke that detects the flash size: https://github.com/Gadgetoid/pico-universal-flash-nuke |
||||
| ksinger Regular Member Joined: 06/01/2026 Location: United KingdomPosts: 70 |
I forgot one great thing in command line mode: using the mouse to mark and then use the right mouse button to copy. Then one could select the files to be loaded. I remember that there was once even a keyboard selectable files command. but the right mouse button way is also very flexible. |
||||
| The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2026 |