|
Forum Index : Microcontroller and PC projects : PicoMite question to users
| Author | Message | ||||
| matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 10617 |
I've been doing some experimenting while programming the VGA version. It transpires that saving the Basic program in flash memory and running it from there has only a minimal impact on performance - around 10% maximum. Most of the critical bits of the MMBasic firmware are copied to RAM so in normal use the flash cache would then be nearly all available to the Basic program, hence the minor speed impact Doing this would allow Basic programs to increase in size to close to 160Kb with a concomitant increase in variable memory to the same amount. The number of flash slots available for storing programs would reduce from 10 to 5. The confusing OPTION MEMORY command would be removed Is this the correct approach for the next release? |
||||
Cyber![]() Senior Member Joined: 13/01/2019 Location: UkrainePosts: 161 |
"allow Basic programs to increase in size to close to 160Kb" - sounds good to me. "number of flash slots available for storing programs would reduce from 10 to 5" - I am okay to sacrifice. "confusing OPTION MEMORY command would be removed" - also sounds good to me! Do you plan doing this changes for VGA version only or for original PicoMite as well? _ Edited 2021-12-22 02:43 by Cyber |
||||
| Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 8298 |
Hmmm... IMHO 10 flash slots is really nice if you are running without an SD card. It keeps it nicely self contained. So I don't know really... Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
| matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 10617 |
Definitely for the VGA to overcome the loss of memory to the framebuffer. The question is about the PicoMite original |
||||
| Tinine Guru Joined: 30/03/2016 Location: United KingdomPosts: 1646 |
@Matherp "Concomitant"! Holy cr@p, you swallowed a dictionary? I like the idea of 160K. Yes, the slots are cool but can be clunky when the program exceeds 80K. |
||||
| CaptainBoing Guru Joined: 07/09/2016 Location: United KingdomPosts: 2171 |
"ooh! you can't do that Les, it's not conducive, it's not concomitant!"... was a catchphrase from some 70s sit-com... but I can't remember which |
||||
| Tinine Guru Joined: 30/03/2016 Location: United KingdomPosts: 1646 |
@CaptainBoing "70s sitcoms" Buddy suggested "Alf Garnett TV repair" on YT. How the heck that's survived the woke-brigade beats me. |
||||
| phil99 Guru Joined: 11/02/2018 Location: AustraliaPosts: 2832 |
Reducing the number of flash slots need not be a problem. More than one program can be put into each slot. On the MM2 and MM+ I use the library to store several short utility programs by turning them into subroutines. The first line in them is "Clear" to remove old variables. At the command prompt you just type their name and they run. Even on the MM F4 (no library) they can be put at the end of the main program, and it works just as well. The main program in that slot could be a menu to make it even easier. Edited 2021-12-22 09:10 by phil99 |
||||
| robert.rozee Guru Joined: 31/12/2012 Location: New ZealandPosts: 2466 |
hi peter, +1 for running basic programs directly from flash. would it be worthwhile thinking about making the flash slot sizes variable, to allow maintaining the current number? not quite a full 'file system', but perhaps have a pool of 240 2k blocks (with a 240 entry 'allocation table') which are allocated to flash slots as needed. cheers, rob :-) |
||||
| electricat Senior Member Joined: 30/11/2020 Location: LithuaniaPosts: 299 |
+1 for performance Most interesting problems/projects seems to be time related (emulations, measuring and feedback, calculations, user interfaces etc.) 10 slots for CHAIN or PROGRAM looks pretty well balanced already :-) My MMBasic 'sand box' |
||||
| matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 10617 |
Too late V5.07.03 PicoMite Maximum program size now 124Kbytes, Flash slots reduced from 10 to 7. Program now runs from flash memory freeing up much more memory, following tuning there is no significant impact on performance V5.07.03 PicoMite VGA Maximum program size now 108Kbytes, Flash slots reduced from 10 to 8. Program now runs from flash memory freeing up much more memory, following tuning there is no significant impact on performance |
||||
| Tinine Guru Joined: 30/03/2016 Location: United KingdomPosts: 1646 |
@matherp Nice compromise Man, this stuff just keeps getting better. |
||||
Cyber![]() Senior Member Joined: 13/01/2019 Location: UkrainePosts: 161 |
matherp, so there will always be two releases for PicoMite: regular and VGA. Do you have source code well organized, so common code of these releases is not repeated? Ir is it not that great?.. |
||||
| matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 10617 |
What are you implying There is a single source with two make files. All differences between the versions are driven by a single global define |
||||
| The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |