Menu
JAQForum Ver 19.10.27

Forum Index : Microcontroller and PC projects : PicoMite Draft manual V6.00.02 - please review

   Page 2 of 5    
Posted: 10:26pm
02 Jun 2025
Copy link to clipboard
twofingers
Guru


Page 199:

Is it possible that on page 199 (RegEx) the word "Qualifiers" should correctly be "Quantifiers"?

Regards
Michael
 
Posted: 12:26am
03 Jun 2025
Copy link to clipboard
Supertech
Regular Member


Anything missing in all manuals to date? See who notices....?




Why not scan Manual for 'MMBasic syntax typos', like say MMEdit would do, before publishing it even as draft. This would save us humans to try to see the obvious errors we miss over and over, and our precious time to find them!


Webmite, Grand QUESTION to Publishers:

Geoff, the publisher of Webmite Manual, 'Have you ever copied and pasted "your own typed examples" into say MMEdit (set as Webmite), sent to correct hardware and "Run"' to see that YOUR examples "actually work" FROM ANY of your manuals?

I acknowledge the huge work in this. it is exceptional and thank you all.

Regards to All. Supertech.
 
Posted: 01:25am
03 Jun 2025
Copy link to clipboard
phil99
Guru


Neither the firmware no the manuals are produced by commercial enterprises. It all relies on volunteers so it is to our benefit to volunteer some time to help them test and proof read their work where we can.

Presumably the examples worked at the time they were written but someone volunteering to test all the example code on the latest RC would be helpful.

  Quote  Why not scan Manual for 'MMBasic syntax typos', like say MMEdit would do
Only needs a volunteer to write the scanner, and update it with each change.
 
Posted: 02:43am
03 Jun 2025
Copy link to clipboard
toml_12953
Guru

  phil99 said  Loop While works but Do Until doesn't.
> a=-3
> do until a=>0 :print a, :pause 1000 :inc a : loop
-3      -2      -1       0       1       2       3       4       5
> a=-3
> do :print a, :pause 1000 :inc a : loop while a=<0
-3      -2      -1       0
>

> a=-3 : do until a > 0 :print a, :pause 1000 :inc a : loop while a < 6
-3      -2      -1       0       1       2       3       4       5
>


Thanks. I thought I had tested that but I guess not. Getting old is hell!
 
Posted: 02:48am
03 Jun 2025
Copy link to clipboard
toml_12953
Guru

  Nimue said  
  toml_12953 said  

Returns the standard deviation

to
Returns the sample standard deviation



An unbiased opinion there.... (drops the mic and walks out...    )


You, sir, are a statistician!  
 
Posted: 08:20am
03 Jun 2025
Copy link to clipboard
Mixtel90
Guru


I always thought "standard deviation" just meant "not too kinky"....
 
Posted: 09:43am
03 Jun 2025
Copy link to clipboard
bfwolf
Regular Member

  phil99 said  Loop While works but Do Until doesn't.
> a=-3
> do until a=>0 :print a, :pause 1000 :inc a : loop
-3      -2      -1       0       1       2       3       4       5
> a=-3
> do :print a, :pause 1000 :inc a : loop while a=<0
-3      -2      -1       0
>

> a=-3 : do until a > 0 :print a, :pause 1000 :inc a : loop while a < 6
-3      -2      -1       0       1       2       3       4       5
>


DO WHILE <cond> .. LOOP and DO .. LOOP UNTIL <cond> are explained on p. 113 of the manual draft! As far as I understood, "UNTIL" should follow "LOOP" at the end of a loop and "WHILE" should follow "DO" at the head of the loop.

@Peter:
If "WHILE" also works at the end, this should be added to the manual and would be "a nice side effect".

bfwolf
 
Posted: 10:16am
03 Jun 2025
Copy link to clipboard
toml_12953
Guru

  bfwolf said  
DO WHILE <cond> .. LOOP and DO .. LOOP UNTIL <cond> are explained on p. 113 of the manual draft! As far as I understood, "UNTIL" should follow "LOOP" at the end of a loop and "WHILE" should follow "DO" at the head of the loop.

@Peter:
If "WHILE" also works at the end, this should be added to the manual and would be "a nice side effect".

bfwolf


In the ANSI standard for Full BASIC, both UNTIL and WHILE may be paired with either the  DO or the LOOP verb.
 
Posted: 05:44pm
03 Jun 2025
Copy link to clipboard
bfwolf
Regular Member

  toml_12953 said  
In the ANSI standard for Full BASIC, both UNTIL and WHILE may be paired with either the  DO or the LOOP verb.


You're right! Didn't know this but looked into the ANSI doc for "FULL BASIC" and indeed UNTIL and WHILE may be both either combined with DO or LOOP, as said in chapter 8.3.3 Examples on page 84 of ANSI doc.
As a C and Pascal programmer, i didn't expect this to be allowed...

The ANSI doc didn't say anything about the behaviour, when UNTIL and WHILE are used sultanously for the same loop - as phil99 tried. There was no example in the ANSI doc showing this as legal?

If this variant should work, there might be a bug in MMBasic?
Else perhaps a error message should be thrown?

bfwolf
 
Posted: 06:08pm
03 Jun 2025
Copy link to clipboard
matherp
Guru

The only versions that"should work" are the ones in the manual.
 
Posted: 06:53pm
03 Jun 2025
Copy link to clipboard
JohnS
Guru

Bear in mind MMBasic doesn't claim to be ANSI.

Some parts are, some aren't.  (Go by the manual as Peter says.)

John
 
Posted: 07:38pm
03 Jun 2025
Copy link to clipboard
bfwolf
Regular Member

  matherp said  The only versions that"should work" are the ones in the manual.


  JohnS said  Bear in mind MMBasic doesn't claim to be ANSI.

Some parts are, some aren't.  (Go by the manual as Peter says.)

John


That's what I expected!

Aside from that, using WHILE and UNTIL simultaneously can be contradictory and difficult to resolve. It can also be very confusing for the reader.

bfwolf
 
Posted: 09:49pm
03 Jun 2025
Copy link to clipboard
phil99
Guru


  Quote  when UNTIL and WHILE are used simultaneously for the same loop
Was just messing about to see what would happen.
Results:
DO ignores anything other than WHILE.
If DO has WHILE an error results if anything follows LOOP.
 
Posted: 03:42am
04 Jun 2025
Copy link to clipboard
EDNEDN
Senior Member

  phil99 said  
  Quote  when UNTIL and WHILE are used simultaneously for the same loop
Was just messing about to see what would happen.
Results:
DO ignores anything other than WHILE.
If DO has WHILE an error results if anything follows LOOP.


I'm of the opinion that if both an UNTIL and WHILE are syntactically allowed, it should work correctly.   If they aren't allowed together then an error should be detected and reported.

I agree it is a little bit confusing if both of them are present in the same loop.   But if it isn't detected as a syntax error, it damn well better work correctly.
 
Posted: 06:23am
04 Jun 2025
Copy link to clipboard
matherp
Guru

Feel free to write an improved parser. Otherwise accept what is there. Follow the manual and it works.
Edited 2025-06-04 16:24 by matherp
 
Posted: 06:24am
04 Jun 2025
Copy link to clipboard
JohnS
Guru

  EDNEDN said  I'm of the opinion that if both an UNTIL and WHILE are syntactically allowed, it should work correctly.   If they aren't allowed together then an error should be detected and reported.

It's quite a simple parser which was squeezed into microcontrollers.  It doesn't detect everything but does try to follow the manual.

Maybe there's a tool which is "better" (i.e. does what you want)?

I think it's that UNTIL or WHILE can be used but not both together and I read the manual that way.

John
Edited 2025-06-04 16:25 by JohnS
 
Posted: 07:55am
04 Jun 2025
Copy link to clipboard
phil99
Guru


This appears to be a non-problem to me. That While can follow Loop can be regarded as a bonus Easter-egg by anyone who wants it.
It doesn't need to be in the manual as it doesn't add any useful functionality.
WHILE (expression) is just UNTIL NOT (expression). That is if you invert the expression following either WHILE or UNTIL you get the same function as the other one.
.
Edited 2025-06-04 18:00 by phil99
 
Posted: 09:01am
04 Jun 2025
Copy link to clipboard
Mixtel90
Guru


The versions in the manual, i.e. the MMBasic Bible, work fine. If anything else does then that's simply a bonus. :) Bear in mind that although free bonus features work at the moment they may not do so in future versions of MMBasic!
 
Posted: 03:58pm
04 Jun 2025
Copy link to clipboard
stanleyella
Guru


If I can suggest hdmi using hdmi breakout board as this would be popular for beginners that don't have a pcb with hdmi socket.
thinking of adafruit I use.
 
Posted: 01:53am
05 Jun 2025
Copy link to clipboard
phil99
Guru


May have been mentioned.
P14, Clock Speed, Missing Clear_Flash.uf2
  Quote  Nearly all tested Raspberry Pi Picos have worked correctly at 380MHz or more, so overclocking can be useful.
If the processor fails to restart at its new clock speed you can reset it by loading this firmware Clear_Flash.uf2 file listed under
the heading Loading the Firmware (above) to reset the Pico to its factory fresh state.
 
   Page 2 of 5    
The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2025