![]() |
Forum Index : Microcontroller and PC projects : PicoMite/PicoMiteVGA V5.07.03 betas - major update
Page 1 of 4 ![]() ![]() |
|||||
Author | Message | ||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10135 |
http://geoffg.net/Downloads/picomite/PicoMite_Beta.zip PicoMite V5.07.03b0 YOU MUST LOAD clear_flash BEFORE LOADING THIS VERSION Changes from PicoMiteVGAV5.07.02b7 Program now runs from flash memory freeing up much more memory, following tuning there is no significant impact on performance Maximum program size now 124Kbytes, Flash slots reduced from 10 to 7. FLASH RUN and FLASH CHAIN now execute direct from the specified flash slot without changing the main program OPTION MEMORY removed as no longer relevant OPTION BAUDRATE n now sets the baudrate for when a serial console is used Fixes bug in using SYSTEM I2C or I2C2 for general I2C use if I2C READ does not use a string as the variable. Fixes bug in COM1 where buffer overrun is losing characters. Support for a PS2 Keyboard added OPTION KEYBOARD NO_KEYBOARD/US/FR/GR/IT/BE/UK/ES use level conversion between the Pico pins and the PS2 socket or run the keyboard at 3.3V Connect GP8 to PS2 socket CLOCK pin via level converter Connect GP9 to PS2 socket DATA pin via level converter Connect VBUS to PS2 socket +5V Connect GND to PS2 socket GND NEW subcommands for SETTICK SETTICK PAUSE, myint [,tickno] ' pauses the tick so that the interrupt is delayed but the current count is maintained SETTICK RESUME, myint [,tickno] ' resumes the tick after a pause FLASH LIST no [,all] ' lists in full the program held in the flash slot Increases drive level for SDcard output pins (CD, MOSI and CLOCK) which MAY improve SDcard reliability when the SPI bus is loaded with additional devices (LCD and/or touch) Reduces maximum file name length to 63 characters but increase maximum files that can be listed with FILES command to 1000 Fixed memory leak caused by ctrl-C out of FILES command V5.07.02b2 Fixes bug in day$(now) function Fixes bug where writing text to an SPI LCD that overlapped the bottom of the screen would fail to de-assert LCD_CS Fixes bug that added an extra space after a REM command each time the program was edited. NEW subcommands for SETTICK SETTICK PAUSE, myint [,tickno] ' pauses the tick so that the interrupt is delayed but the current count is maintained SETTICK RESUME, myint [,tickno] ' resumes the tick after a pause NEW subcommands for FLASH FLASH LIST no [,all] ' lists in full the program held in the flash slot PicoMite VGA V5.07.03b0 YOU MUST LOAD clear_flash BEFORE LOADING THIS VERSION Changes from PicoMiteVGAV5.07.02b7 Program now runs from flash memory freeing up much more memory, following tuning there is no significant impact on performance Maximum program size now 108Kbytes, Flash slots reduced from 10 to 8. FLASH RUN and FLASH CHAIN now execute direct from the specified flash slot without changing the main program OPTION MEMORY removed as no longer relevant OPTION BAUDRATE n now sets the baudrate for when a serial console is used Fixes bug in using SYSTEM I2C or I2C2 for general I2C use if I2C READ does not use a string as the variable. Fixes bug in COM1 where buffer overrun is losing characters. |
||||
karlelch![]() Senior Member ![]() Joined: 30/10/2014 Location: GermanyPosts: 232 |
Hi, thanks for the update. How do I set the size of the console (e.g. TeraTerm)? Before the update, it was OPTION DISPLAY but now this generates an error: > OPTION DISPLAY 64, 80 Error : Cannot change LCD console I cannot find anything in the readme about this. Thanks Thomas |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10135 |
Works on the PicoMite. Shouldn't and can't work on the VGA version as the resolution is driven by the display mode and font to fit the screen |
||||
karlelch![]() Senior Member ![]() Joined: 30/10/2014 Location: GermanyPosts: 232 |
Hi, unfortunately I also ran into another problem. When retrieving the program I was working on via xmodem, the Pico went into a reboot loop: > xmodem r Saved 41197 bytes Error: Invalid address - resetting PicoMite MMBasic Version 5.07.03b0 Copyright 2011-2021 Geoff Graham Copyright 2016-2021 Peter Mather Error: Invalid address - resetting ... I cleared the flash before installing the new version. I realize that this is difficult to debug (the program I was working on is quite complex), but it would already help me if the previous beta firmware (5.07.02xx) was available. On Geoff's site, it is not in the archive, and every general link I found in the forum points at the new beta version. And yes, I should have saved a copy myself ... EDIT: Just loading the program via xmodem starts the reboot; I cannot edit/run or do anything else. Thanks and best Thomas Edited 2021-12-23 20:51 by karlelch |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10135 |
VGA or normal? If you post your program I can try and replicate. Also list what options you have set Edited 2021-12-23 20:56 by matherp |
||||
karlelch![]() Senior Member ![]() Joined: 30/10/2014 Location: GermanyPosts: 232 |
... ok, I found two issues: (1) My program uses `DefineFont` to load to user-defined font. If I remove all these font definitions, the Pico running V5.07.03b0 can load the program via xmodem. (2) My program uses `Var` statements to save/retrieve some configuration values. Apparently, the memory size for these variables is now smaller than in the previous beta. My program uses 4 integer variables and 1 51-element integer array, and this crashes the Pico (see also code below). PicoMite MMBasic Version 5.07.03b0 Copyright 2011-2021 Geoff Graham Copyright 2016-2021 Peter Mather > dim integer a, b(10) > var clear > var save a,b() > var restore > erase b() > dim integer b(50) > var clear > var save a,b() -> Freezes the Pico. Best Thomas |
||||
karlelch![]() Senior Member ![]() Joined: 30/10/2014 Location: GermanyPosts: 232 |
Normal |
||||
karlelch![]() Senior Member ![]() Joined: 30/10/2014 Location: GermanyPosts: 232 |
Thanks. If I eliminate `Var` and `DefineFont` (see above) my program seems to run fine. In any case, these are the options I set: OPTION CPUSPEED (KHz) 126000 OPTION COLOURCODE ON OPTION SDCARD GP22 OPTION SYSTEM SPI GP10,GP11,GP12 OPTION SYSTEM I2C GP2,GP3 OPTION LCDPANEL ST7789_320, LANDSCAPE,GP8,GP15,GP9,GP13 OPTION RTC AUTO ENABLED OPTION GUI CONTROLS 60 OPTION TOUCH GP16,GP17 GUI CALIBRATE 0, 438, 3992, 890, -650 |
||||
karlelch![]() Senior Member ![]() Joined: 30/10/2014 Location: GermanyPosts: 232 |
Works on the PicoMite. Shouldn't and can't work on the VGA version as the resolution is driven by the display mode and font to fit the screen This is how it looks on my terminal (normal firmware, not VGA): > option reset PicoMite MMBasic Version 5.07.03b0 Copyright 2011-2021 Geoff Graham Copyright 2016-2021 Peter Mather > option list OPTION CPUSPEED (KHz) 126000 > option display 64 Error : Cannot change LCD console > option display 64,80 Error : Cannot change LCD console > Edited 2021-12-23 21:33 by karlelch |
||||
karlelch![]() Senior Member ![]() Joined: 30/10/2014 Location: GermanyPosts: 232 |
I tried to load (via xmodem) a minimal program containing just the font definition from page 48 of the user manual and the Pico goes right into a reboot loop Error: Invalid address - resetting Edited 2021-12-23 21:42 by karlelch |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10135 |
Thanks for the diagnostics. Found most of the issues. Question which font numbers are you using? |
||||
karlelch![]() Senior Member ![]() Joined: 30/10/2014 Location: GermanyPosts: 232 |
#8 and #9 |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10135 |
PicoMiteb1.zip Could you try attached without font 8 and let me know. I've added a new built-in font 8 (6x4) and forgot to include in the changes. You will need to do OPTION RESET to fix the OPTION DISPLAY problem Thanks UPDATE - won't fix the font issue - now know the problem - flash reads and writes are to different addresses for the same byte (yuk) Edited 2021-12-23 22:41 by matherp |
||||
karlelch![]() Senior Member ![]() Joined: 30/10/2014 Location: GermanyPosts: 232 |
Could you try attached without font 8 and let me know. I've added a new built-in font 8 (6x4) and forgot to include in the changes. You will need to do OPTION RESET to fix the OPTION DISPLAY problem Thanks UPDATE - won't fix the font issue - now know the problem - flash reads and writes are to different addresses for the same byte (yuk) The OPTION DISPLAY issue is solved - thanks! The VAR issue persists. |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10135 |
http://geoffg.net/Downloads/picomite/PicoMite_Beta.zip PicoMite & PicoMite VGA V5.07.03b1 New font added FONT 8 is a very small 6x4 font useful for 320x240 screens when high text density is needed (same as in the Picomite manual but can now be used for editing on the PicoMite VGA with OPTION DEFAULT FONT 8) Bugs introduced in the major update fixed in VAR command, DEFINE FONT, and OPTION DISPLAY (PicoMite only) OPTION RESET is required to fix the OPTION DISPLAY bug YOU MUST LOAD clear_flash BEFORE LOADING THIS VERSION if updating anything other than a 5.07.03beta |
||||
karlelch![]() Senior Member ![]() Joined: 30/10/2014 Location: GermanyPosts: 232 |
Bugs introduced in the major update fixed in VAR command, DEFINE FONT, and OPTION DISPLAY (PicoMite only) I tested it briefly, everything seems to work. Thanks a lot for the quick fixing! Best Thomas |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10135 |
Thomas Thanks for testing and the great diagnostics. It was a major change to the internal structure and there were bound to be bits I missed. One thing I suspect won't work is running a program with one or more CSUBs from a flash slot but this may just end up a limitation. UPDATE I've worked out how to make launching a CSUB program start relative so from b2 this should work. I'll post b2 after I see if any more issues arise Edited 2021-12-24 03:54 by matherp |
||||
karlelch![]() Senior Member ![]() Joined: 30/10/2014 Location: GermanyPosts: 232 |
Thanks for testing and the great diagnostics. It was a major change to the internal structure and there were bound to be bits I missed. One thing I suspect won't work is running a program with one or more CSUBs from a flash slot but this may just end up a limitation. UPDATE I've worked out how to make launching a CSUB program start relative so from b2 this should work. I'll post b2 after I see if any more issues arise Thanks for being so responsibe and fixing the firmware quickly. I think it is a great software. I was using MicroPython so far - and I know this and MMBasic are different things - but for some tasks it is much more straight forward to have a very pridictable, still easy to program language like MMBasic. Happy Christmas, Thomas P.S.: If I could make a wish, I'd like to have the 2nd core available for running SUB routines :) |
||||
Kabron![]() Regular Member ![]() Joined: 30/11/2017 Location: GermanyPosts: 65 |
Copyright 2011-2021 Geoff Graham Copyright 2016-2021 Peter Mather > option list OPTION COLOUR VGA ON OPTION COLOURCODE ON OPTION DISPLAY 30, 53 OPTION KEYBOARD US OPTION DEFAULT FONT 7, 1 > > OPTION SYSTEM SPI GP2,GP3,GP4 Error : Invalid Option What's the matter? |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10135 |
Forgot to document, because the system SPI is only used for SDcard just use the alternative SDcard syntax OPTION SDCARD CSpin, CLKpin, MOSIpin, MISOpin OPTION SYSTEM SPI is disabled on the VGA version Edited 2021-12-26 01:20 by matherp |
||||
Page 1 of 4 ![]() ![]() |
![]() |
![]() |
The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |