matherp Guru
 Joined: 11/12/2012 Location: United KingdomPosts: 10169 |
Posted: 09:04am 07 Jan 2023 |
|
|
|
Thanks as always to Geoff for a huge amount of work on updating the manuals. The release notes for 5.07.06 are in the download but are reproduced below. Updating to this new release is highly recommended.
PicoMite V5.07.06 Changes from V5.07.04
Breaking changes PicoMite PAGE command removed - replaced by GUI PAGE GUI TEXTBOX ACTIVATE removed Reduced available RAM and program size from 120KB to 116KB Removes support for the GDEH029A1 display as this controller is now obsolete
Breaking changes PicoMiteVGA Reduced available RAM and program size from 108KB to 100KB
General changes - both versions Various tuning and performance improvements Updates SDK to V1.4 Updates Compiler to version 11.2.1 Enables operation up to 378MHz SETPIN for PWM no longer needs to specify the channel and port e.g. "SETPIN 1,PWM" is now accepted Re-engineering of PORT command to allow simultaneous update Modifies the port function to read all pins simultaneously Revised version of CSub header to cater for compiler change Updated CSUB header file and additional functions exposed The number of flash slots in both versions is now 5 Changes the priority of the CIN.FIN,PER interrupt to improve accuracy Resets default fonts when a new program is loaded or the NEW command is executed. Max editor clipboard size now 16384 characters Max number of BLIT buffers now 32 (memory dependent) Support for file system on the Pico's flash. All SD file commands are supported. Flash drive is "A:" SDcard if configured is drive "B:" By default the system restarts with the active drive as drive "A:" even if the SDcard is configured On first installation the firmware will automatically create the flash drive. The firmware reads the size of the flash and uses this to determine the drive size. Flash chips > 2Mb are fully supported OPTION LIST now shows version number and which firmware Changes to better support modules with >2Mb Flash chips PWM duty cycles can now be negative which will invert the output (-100.0 <= duty <=100.0)
New/changed Commands - both versions DRIVE drive$ - sets the active drive DRIVE "A:/FORMAT" - re-initialise the flash drive MATH RANDOMIZE [n] - seeds the Mersenne Twister algorithm. TRIANGLE SAVE [#]n, x1,y1,x2,y2,x3,y3 - saves a triangular area of the screen to buffer #n. TRIANGLE RESTORE [#]n - restores a saved triangular region of the screen and deletes the saved buffer. MEMORY PACK source%(),Destination%(), number, size - packs the contects of one array into another MEMORY UNPACK source%(), Destination%(), number, size - unpacks the content of one array from another BITBANG SERIALTX pinno, baudrate, ostring$ - transmits ostring$ on pinno BITBANG SERIALRX pinno, baudrate, istring$, timeout_in_ms, status% [,nbr] [,terminators$] - receives istring$ on pinno ON PS2 interrupt - triggers an interrupt whenever the PicoMite sees a message from the PS2 interface. OPTION HEARTBEAT ON/OFF LINE AA x1, y1, x2, y2 [, LW [, C]] - Draws a line with anti-aliasing. FRAMEBUFFER - see manuals for details OPTION SERIAL CONSOLE TXpin, RXpin [,B] - adding the "B" parameter means output will go to "B"oth the serial port and the USB PIO READ - Allows a single integer variable to be used when nbr=1
New/changed Functions - both versions MATH(RAND) - returns a random number 0.0 <= n < 1.0 using the "Mersenne Twister: A 623-dimensionally MM.INFO(drive) - get the current active drive - returns A: or B: MM.INFO(HEAP) - returns the free space on the MMBasic heap MM.INFO(STACK) - returns the C program stack pointer MM.INFO$(SOUND) - returns the status of the audio channel MM.INFO(PS2) - returns the last raw PS2 message received. MM.INFO(PINNO n) now accepts a literal, a string variable or an unquoted GPn designation MATH(CRC8 array()_or_string$, [length,] [polynome,] [startmask,] [endmask,] [reverseIn,] [reverseOut] - calculate an 8 bit CRC MATH(CRC12 array()_or_string$, [length,] [polynome,] [startmask,] [endmask,] [reverseIn,] [reverseOut] - calculate a 12 bit CRC MATH(CRC16 array()_or_string$, [length,] [polynome,] [startmask,] [endmask,] [reverseIn,] [reverseOut] - calculate a 16 bit CRC MATH(CRC32 array()_or_string$, [length,] [polynome,] [startmask,] [endmask,] [reverseIn,] [reverseOut] - calculate a 32 bit CRC PIO(EXECCTRL jmp_pin ,wrap_target, wrap [,side_pindir] [,side_en]) - JMP PIN must have GP designation, Extra optional parameters
Other new functionality - PicoMite Enabled BLIT and LOAD JPG for mono displays BLIT LOAD: now also accept BLIT LOADBMP for compatibility with VGA version Adds support for the 480x320 IPS ILI9481 display (use code ILI9481IPS)
Other new functionality - PicoMiteVGA Use EDIT 1 to edit in mode 1, Use EDIT 2 to edit in mode 2, Use EDIT to edit in current mode Implements DRAW3D command and function Improved LOAD JPG for MODE 1 (mono). Implementation of enhanced sprite command and function
Bug Fixes and corrections - both versions Fixes crashing bug if edit is used after running a program with IR input Fixes bug in BITBANG LCD CMD and BITBANG LCD DATA Fixes bug in PIO READ Fixed bug in sound command overdriving the PWM when > 2 channels are used and the volume isn't explicitly specified Fixed bug in PWM n,OFF requiring spurious extra parameter Fixes bug in SDK that caused SPI clock to set to wrong level before first transaction Fixes bug when using "ON KEY int" command Fixes bug in passing string function to time$ Fixes bug in MM.INFO(filesize ... and MM.INFO(Modified ... Changes to PS2 keyboard handler to fix bug where interrupts are dropped Fixes bug in PLAY TONE n. m. d, interrupt which caused the interrupt not to fire Fixes bug in ERASE command when erasing arrays Improved error checking of SETPIN command to avoid crashes Fix to BITBANG WS2812 timings Improved error messaging for incorrect pin usage. Fixed MM.INFO(pinno when OPTION EXPLICIT specified. Improved error detection on some option commands to avoid lockups through pin conflicts Fixes bug in setpin fin,per,cin when fast signal is established before the setpin
Bug Fixes and corrections - PicoMite Fixes bug in GUI DELETE Fixes bug in OPTION LIST for some displays SPI for touch reduced in speed to 1MHz to improve reliability Bug fix to GUI spinbox to erase triangle bounding line properly Fixed bug in LOAD IMAGE for mono displays Corrects reporting of MM.HRES and MM.VRES by OPTION LIST when a user driver is loaded
Bug Fixes and corrections - PicoMiteVGA Fixes issue where connecting a USB CDC cable would cause the VGA version to Hardfault Change timing of PAGE COPY ,,B to avoid screen artefacts Fixes issue on some Pico in VGA mode 1 output at 126MHz Edited 2023-01-07 19:10 by matherp |