Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 04:47 05 Dec 2024 Privacy Policy
Jump to

Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.

Forum Index : Microcontroller and PC projects : Draft PicoMite 6.00.01 User Manual

     Page 1 of 4    
Author Message
Geoffg

Guru

Joined: 06/06/2011
Location: Australia
Posts: 3208
Posted: 12:01pm 28 Nov 2024
Copy link to clipboard 
Print this post

This is the first draft of the user manual for the PicoMite 6.00.01 and we are looking for any comments and corrections.

PicoMite_User_Manual.pdf

We have moved to a single manual covering all variants (Pico, Pico 2, Pico W and Pico 2 W).  With a dozen firmware variations it was just not practical to have a manual for each variant.

If you spot anything wrongs I would be grateful if you would post it in this thread.

Thanks,
Geoff
Geoff Graham - http://geoffg.net
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 6839
Posted: 12:37pm 28 Nov 2024
Copy link to clipboard 
Print this post

WII commands on page 145/146 have craftily sneaked into the WEB stuff.
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9185
Posted: 12:45pm 28 Nov 2024
Copy link to clipboard 
Print this post

Can I particularly ask that where you have asked for specific functional enhancements and these have been implemented you confirm these have made it into the manual. Geoff and I have been through all my posts announcing versions and hope all those changes have made it into the manual but there have been other threads where I have responded to specific requests and these need checking - thanks
 
twofingers
Guru

Joined: 02/06/2014
Location: Germany
Posts: 1263
Posted: 01:42pm 28 Nov 2024
Copy link to clipboard 
Print this post

Regarding "Sort" in manual p139:
  Quote  The ‘flag’ parameter is optional and valid flag values ​​are:
bit0: 0 (default if omitted) normal sort - 1 reverse sort
bit1: 0 (default) case dependent - 1 sort is case independent (strings only).
bit2: (default if omitted) normal sort - 1 empty strings go to the end of the array

Michael

edit:
https://www.thebackshed.com/forum/ViewTopic.php?TID=17304

PS:
And a big thank you for the tireless work to Geoff, Peter and everyone involved.


Edited 2024-11-28 23:58 by twofingers
causality ≠ correlation ≠ coincidence
 
PhenixRising
Guru

Joined: 07/11/2023
Location: United Kingdom
Posts: 886
Posted: 02:24pm 28 Nov 2024
Copy link to clipboard 
Print this post

Not wanting to generate work for others but the PIO Quadrature Decode might be worth including(?) somewhere because QEI (quadrature encoder interface) is something that other MCUs feature.
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 6839
Posted: 02:24pm 28 Nov 2024
Copy link to clipboard 
Print this post

Is MM.END now in the firmware? I can't see it in the manual.

It might be an idea to include references to MM.STARTUP, MM.PROMPT (and MM.END) with the rest of the MM.INFO stuff, or at least close to it under it's own subheading.
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
twofingers
Guru

Joined: 02/06/2014
Location: Germany
Posts: 1263
Posted: 02:34pm 28 Nov 2024
Copy link to clipboard 
Print this post

  Mixtel90 said  Is MM.END now in the firmware? I can't see it in the manual.

p104: END [noend]

  Mixtel90 said  It might be an idea to include references to MM.STARTUP, MM.PROMPT (and MM.END) with the rest of the MM.INFO stuff, or at least close to it under it's own subheading.

Yes!
causality ≠ correlation ≠ coincidence
 
hhtg1968
Senior Member

Joined: 25/05/2023
Location: Germany
Posts: 124
Posted: 02:59pm 28 Nov 2024
Copy link to clipboard 
Print this post

many many thanks for creating this manual.
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9185
Posted: 04:42pm 28 Nov 2024
Copy link to clipboard 
Print this post

Sorry Geoff but new commands for the RP2350 only will be in the final release

LOAD PNG fname$ [, x] [, y] [,transparent] [,alphacut] 'loads and displays a png file 'fname' If no extension is specified .png will be automatically added to the filename. The file must be in RGBA8888 format which is the normal default. If specified 'x' and 'y' indicate where on the display or framebuffer the image will appear. The optional parameter 'transparent' (defaults to 0) specifies one of the colour codes (0-15) which will be allocated to pixels in the png file with an alpha value less than 'alphacut' (defaults to 20). If 'transparent' is set to -1 the png image is written with pixels with an alpha value less than 'alphacut' missed completely.


SPRITE LOADPNG [#]b, fname$ [,transparent] [,alphacut] 'loads SPRITE number b from the png file fname$. If no extension is specified .png will be automatically added to the filename. The file must be in RGBA8888 format which is the normal default. The optional parameter 'transparent' (defaults to 0) specifies one of the colour codes (0-15) which will be allocated to pixels in the png file with an alpha value less than 'alphacut' (defaults to 20). The variable transparency can then used with the command SPRITE SET TRANSPARENT n or FRAMEBUFFER LAYER n to display the sprite with the transparent region hidden.
 
ville56
Regular Member

Joined: 08/06/2022
Location: Austria
Posts: 96
Posted: 06:22pm 28 Nov 2024
Copy link to clipboard 
Print this post

the PIO section (Appendix F) should be revised for syntax errors in the "PIO ASSEMBLE ..." statements, if possible. I got good response to my PIO syntax questions a few days ago, but i'm still not in a position to correct the syntax as i'm still learning how PIO works. Otherwise a remark that the syntax has undergone changes and the reference is the Pico HW datasheet and/or the Pico C-sdk datasheet would probably be helpful.
                                                                 
73 de OE1HGA, Gerald
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4276
Posted: 08:38pm 28 Nov 2024
Copy link to clipboard 
Print this post

Hi Geoff,

I started review... What a master document. Gigantic...

This is part 1 of the review, time ran out today...

- Page 4: Support for Internet -> add Pico 2W
- Page 4: self contained computer with keyboard and HDMI etc... add "sound".
- Page 7: Picomite ignores baudrate: not USB, it is 115200
- Page 18: DEVICE(GAMEPAD) ... what gamepad, channel 3 or channel 4 when 2 are connected.
- Page 26: 3Vpeak-peak audio equals 1Vrms (not 2Vrms).
- Page 28: Maybe add a table at the end indicating what audio formats are supported for what audio device and RPxxxx chip. MP3 is only 2350 and VS1053. MIDI is only VS1053.
- Page 45: In the overview of framebuffers (code=F, code=L) the normal screen (code=N) could help.
- Page 55: first line: add "colourcode=on" to "it looks like this"
- Page 56: for Putty the default for backspace key must be changed to <ctrl>H
- Page 81: PRINT MM.VER would better show as V6.00.01
- Page 81: for all I have tested MM.INFO() and MM.INFO$() give the same result. Why use a mix in the table ?
- Page 83: MM.INFO(PIN pinno) valid returns are wrong. They are OFF, DIN, DOUT etc...
- Page 90: OPTION MODBUF reserves part of the FLASH FILESYSTEM (shrinks the flash filesystem)

Will be continued tomorrow..

Volhout
Edited 2024-11-29 06:40 by Volhout
PicomiteVGA PETSCII ROBOTS
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4276
Posted: 09:42pm 28 Nov 2024
Copy link to clipboard 
Print this post

Hi Geoff,

This is the rest. By the way: compliments for this user manual. It is of impressive quality !!!

- Page 128: typing error " 'wrap target " should be " .wrap target ". Second time it is right.
- Page 146: between WII NUNCHUCK CLOSE and WEB CONNECT there should be a separation, and add text Pico W and Pico 2W only.
- Page 152: DEVICE(GAMEPAD) : returns the data from a PS3 or PS4 controller (not WII), USB only,
- Page 181: PIO ASSEMBLE 1,"SET PIN 1" must be PIO ASSEMBLE 1,"SET PINS,1"
- Page 181: PIO ASSEMBLE 1,"SET PIN 0" must be PIO ASSEMBLE 1,"SET PINS,0"


That is it...

Volhout
Edited 2024-11-29 07:43 by Volhout
PicomiteVGA PETSCII ROBOTS
 
dddns
Newbie

Joined: 20/09/2024
Location: Germany
Posts: 18
Posted: 01:03am 29 Nov 2024
Copy link to clipboard 
Print this post

Hello Geoff!

page 41: "OPTION LCDPANEL CONSOLE [font [, fc [, bc [, blight]]] [,NOSCROLL]". Parameter noscroll is not explained. This option is not listed in section options

page 56: I think mouse support is only available with vga/hdmi. At least it does not work for me with latest PicoMiteUSBRP2040V6.00.01RC3 neither in a terminal session nor on a lcdpanel as console.

page 91: option combined cs. The electric scheme which is necessary should be included in the manual somewhere. I might have overlooked it.


Many thanks for all that work.
Regards
Dietmar
 
disco4now

Guru

Joined: 18/12/2014
Location: Australia
Posts: 905
Posted: 02:20am 29 Nov 2024
Copy link to clipboard 
Print this post

  dddns said  
page 41: "OPTION LCDPANEL CONSOLE [font [, fc [, bc [, blight]]] [,NOSCROLL]". Parameter noscroll is not explained.

This option is not listed in section options


Re Options section. It is in the contents of OPTIONs but not shown in the Bookmarks.
OPTION LCDPANEL USER is shown but should possibly be just OPTION LCDPANEL and link to the top one.
Latest F4 Latest H7
 
disco4now

Guru

Joined: 18/12/2014
Location: Australia
Posts: 905
Posted: 04:50am 29 Nov 2024
Copy link to clipboard 
Print this post

Hi Geoff,
Nice manual, you have managed to present a lot of info in a very logical layout.
Gerry

- page 21 RUN fname$ allows a string variable.
Load a BASIC program and run it. fname$ must be a string constant.
Load a BASIC program and run it. fname$ can be a string constant or variable.

- page 88  The bookmark for OPTION LCDPANEL to point to the top of these options is missing. (Should probably replace the more specific OPTION LCDPANEL USER.)
OPTION LCDPANEL options references section LCD Displays should be Display Panels

- page 90  a stray or and datapin promote themselves as bookmarks

I2C CHECK command is missing.


The attached PDF has a couple of additions you might consider. I have attached as MS word as well.

Picomite Manual Additions.pdf

Picomite Manual Additions.zip
Latest F4 Latest H7
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6110
Posted: 05:49am 29 Nov 2024
Copy link to clipboard 
Print this post

Page 51
Commands and Program Input
Reference to MMEdit.

My website will definitely cease to exist by May 2025.
I haven't decided where MMEdit will reside but it might be a good idea to remove the reference to MMEdit.
VK7JH
MMedit   MMBasic Help
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4276
Posted: 07:51am 29 Nov 2024
Copy link to clipboard 
Print this post

Hi Geoff,

Maybe add a remark on page 6 (loading the picomite firmware) that the method described is identical for all PicoMites, but implies that you get access to the PicoMite's USB connector. For USB platforms this could be achieved by jumper settings -or- removing the Pico from the board.

Volhout
PicomiteVGA PETSCII ROBOTS
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9185
Posted: 08:35am 29 Nov 2024
Copy link to clipboard 
Print this post

  Quote  page 41: "OPTION LCDPANEL CONSOLE [font [, fc [, bc [, blight]]] [,NOSCROLL]". Parameter noscroll is not explained.


Geoff: explanation is as follows

On displays where the framebuffer cannot be read, the firmware will automatically set the NOSCROLL option. When this is set and output reaches the bottom of the screen the screen is cleared and output continues again at the top. This also applies to the in-built editor. For SPI displays that can read the framebuffer (eg ILI9341) scrolling is very slow so the NOSCROLL parameter can be set to improve output and editing performance.

Circuit for OPTION COMBINED CS  is




I2C CHECK address
I2C2 CHECK address
executes a one byte read on the address specified. The result can be checked with MM.I2C.
 
Geoffg

Guru

Joined: 06/06/2011
Location: Australia
Posts: 3208
Posted: 08:39am 29 Nov 2024
Copy link to clipboard 
Print this post

Thanks for the edits guys.

Most will make it into the final doco, although please don't be upset if some miss out.
Special thanks to Peter, Volhout and disco4now.  That is a lot of reading that you have done.

If there is anyone with expert PIO knowledge, I could do with some help.  I know nothing of the PIO and I don't have time to come up to speed.  But I feel that there is a lot missing.  Attached is a Word doco with the chapter on PIO programming and a hunk of text that I found that implies that there is more that has not made it into the manual.  If there is anyone who can make sense of it and possibly edit the PIO chapter accordingly I would be grateful: PIO Stuff.zip

Keep the changes coming,
Geoff
Geoff Graham - http://geoffg.net
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4276
Posted: 09:05am 29 Nov 2024
Copy link to clipboard 
Print this post

Hi Geoff,

I will look into it.

The section in the manual on PIO is an introduction. It is not covering all PIO instructions and program complexities, but it aims to explain MMBasic commands related to PIO.

I will prepare an update to the manual appendix that includes all (new) extensions that are 2350 only. And some are 2350B only (3 PIO's). Nothing has changed for 2040.

Do you want me to include an example how to use these ? I think I can include the PIO program that I made to test the assembler for these new PIO instructions.

Volhout
PicomiteVGA PETSCII ROBOTS
 
     Page 1 of 4    
Print this page
© JAQ Software 2024