Menu
JAQForum Ver 19.10.27

Forum Index : Microcontroller and PC projects : PicoMite V6.00.02 release candidates - all versions

   Page 6 of 37    
Posted: 02:28pm
18 Mar 2025
Copy link to clipboard
matherp
Guru

  Quote  The first use of COLOR will save to library but anymore and it hangs.


Not so fast. If you load the program using AUTOSAVE C it saves to the library OK and preserves COLOR
 
Posted: 03:05pm
18 Mar 2025
Copy link to clipboard
electricat
Senior Member


this might be harder to find I naively hoped

Wrote simple 'dummy' library with repeating lines of 50 chrs

something like
sub lib
Print "aaaaaaaaaaaaaaaaaaaa"
<.........................>
Print "aaaaaaaaaaaaaaaaaaaa"
end sub

x 1000, 2000 and 3000 lines
33kb, 65kb, and 97 kb files accordingly

Biggest file occupies 85 kb of library space in FLASH SLOT 3
And .... loads no problem.

So without knowing source and looking at C sources I could imagine to prepare library files with characters, which are remowed while loading using LOAD CMM2
 
Posted: 03:07pm
18 Mar 2025
Copy link to clipboard
electricat
Senior Member


and forget to mention... my latest overwrite chrashed picomite so badly it refused RUN piece of code LOADed.

Messaged --> Invalid adress - reset

so nedded clear/reflash firmware  
 
Posted: 05:34pm
18 Mar 2025
Copy link to clipboard
falcmax
Newbie

Hello everyone,
I have just received the prototype of my custom board. Everything is working except for the I2S audio.

On my board, the I2S signals are mapped to the following pins:

   GP33 (BCK)
   GP34 (LRCK)
   GP35 (DIN)

After setting up the audio with the command:

OPTION AUDIO I2S GP33, GP35  

there is no sound output, neither with PLAY FLAC nor with any other audio command.

Checking the signal pins with an oscilloscope, I don’t see any activity.
Any suggestions?

Thanks in advance, and I wish you all a great evening!
 
Posted: 06:00pm
18 Mar 2025
Copy link to clipboard
matherp
Guru

  Quote  there is no sound output, neither with PLAY FLAC nor with any other audio command.

Checking the signal pins with an oscilloscope, I don’t see any activity.
Any suggestions?


This is because PIO with pins > GP31 requires special handling (PIO only address 32 pins) which isn't included in the firmware. I'll have a look to see if it can be fixed but it is non-trivial
Edited 2025-03-19 04:05 by matherp
 
Posted: 06:13pm
18 Mar 2025
Copy link to clipboard
electricat
Senior Member


  disco4now said  
I have had a play with this. Not sure of the root cause but fixed if you use
COLOUR command in lieu of COLOR command.
They use to be the same, but now recognised as separate commands I think.
The first use of COLOR will save to library but anymore and it hangs.
Use COLOUR and it good for me.
Gerry


It seems disco4now You was right!  
I splited all subs into separate files and loaded/LIBRARY SAVED one by one.
Failed on three files/SUBs

All of them contains COLOR which makes LIBRARY SAVE unhapy

For example:



Sub full_info_printer
'print "full info printer online"
get_line(1)
Line Input #2,record$
clr_wait
If search_restart=1 Then
Exit Sub
End If
Print @(x,y) record$
next_line
get_line(2)
Line Input #2,record$
If picomite=0 Then
Color RGB(yellow),RGB(black)
line_printer
Color RGB(white),RGB(black)
Else
code_tag_flag=1
hlp_tag_fore_color=RGB(yellow)
hlp_tag_back_color=RGB(black)
y=y+2
adjust_line_for_tile
line_printer
code_tag_flag=0
hlp_tag_fore_color=RGB(white)
hlp_tag_back_color=RGB(black)
End If
next_line
get_line(3)
Do While Loc(#2)<Lof(#2)
Line Input #2,record$
skip_tag_flag=0
check_for_line_tags
If skip_tag_flag<>1 Then
line_printer
clr_wait
End If
If search_restart=1 Then
Exit Sub
End If
Loop
add_separator
next_line
End Sub


If lines was removed, LIBRARY SAVE is happy again and if only two of these left in SUB - crashes!


Color RGB(yellow),RGB(black)

Color RGB(white),RGB(black)


@Peter, now we narrowed it down  
Edited 2025-03-19 04:14 by electricat
 
Posted: 06:25pm
18 Mar 2025
Copy link to clipboard
falcmax
Newbie

Thank you Matherp for the quick response.

If it can be helpful, the Simple Tone example from the Arduino IDE works perfectly.

https://github.com/earlephilhower/arduino-pico/tree/master/libraries/I2S/examples/SimpleTone
 
Posted: 06:27pm
18 Mar 2025
Copy link to clipboard
matherp
Guru

  Quote  It seems disco4now You was right!


It's not that

Try loading the whole program by using "AUTOSAVE C" then LIBRARY LIST and you will see COLOR is there without issue
 
Posted: 06:39pm
18 Mar 2025
Copy link to clipboard
electricat
Senior Member


Such situation I`d rather call not a bug, but cancer  

For all doctors    interested   , there are three subs out of all other.
All of them crashes down LIBRARY SAVE

3-subs.zip

I will too investigate furthurer, in between 'real life interrupts'  
 
Posted: 06:41pm
18 Mar 2025
Copy link to clipboard
matherp
Guru

  Quote  If it can be helpful, the Simple Tone example from the Arduino IDE works perfectly.


What firmware variant are you using HDMI, HDMIUSB?

The issue is that you are using GPnos > 31
Edited 2025-03-19 04:43 by matherp
 
Posted: 06:47pm
18 Mar 2025
Copy link to clipboard
falcmax
Newbie

  matherp said  
  Quote  If it can be helpful, the Simple Tone example from the Arduino IDE works perfectly.


What firmware variant are you using HDMI, HDMIUSB?

The issue is that you are using GPnos > 31


I use HDMIUSB
 
Posted: 07:59pm
18 Mar 2025
Copy link to clipboard
Amnesie
Guru

I may have found a bug, latest version V6.00.02RC5


OPTION LIST


PicoMiteVGA MMBasic RP2350A Edition V6.00.02RC5
OPTION SYSTEM I2C GP14,GP15
OPTION FLASH SIZE 4194304
OPTION COLOURCODE ON
OPTION KEYBOARD GR
OPTION MOUSE GP27,GP28
OPTION CPUSPEED (KHz) 252000
OPTION RESOLUTION 640x480
OPTION SDCARD GP13, GP10, GP11, GP12
OPTION AUDIO GP6,GP7', ON PWM CHANNEL 3
OPTION COUNT GP0,GP1,GP2,GP3


Problem:

With connected PS/2 Mouse on GP27,GP28 it is impossible to use GP26, since it ALWAYS shows 3,3V (in reality the pin is @ 3,7V measured with multimeter).

As soon as I disconnect the PS/2 mouse it jumps to normal levels (~0,7V). I tested this with 3 different PCBs of mine and also different Picos. All the same. If this is normal behavior and some kind of crosstalk (is this the right word?, not native english speaker...) it may should be mentioned in the manual, I think.

Edit: To be 100% sure, ALL my PCBs are cleaned with acetone and there a NO flux residues or other dirt...

Greetings
Daniel
Edited 2025-03-19 06:01 by Amnesie
 
Posted: 08:39pm
18 Mar 2025
Copy link to clipboard
electricat
Senior Member




At left - will crash LIBRARY SAVE becouse of spaces in before Color RGB(yellow),RGB(black)


Sub full_info_printer
  Color RGB(yellow),RGB(black)
  Color RGB(white),RGB(black)
End Sub


This LIBRARY SAVE and also properly LIBRARY LIST

Sub full_info_printer2
Color RGB(yellow),RGB(black)
Color RGB(white),RGB(black)
End Sub


This will LIBRARY SAVE but...

Sub full_info_printer3
Color RGB(yellow),RGB(black)
  Color RGB(white),RGB(black)
End Sub


... LIBRARY LIST will show

>library list
Sub full_info_printer3
Color RGB(yellow),RGB(black)
 Color
>_

P.S. One space is enough to call crash
Edited 2025-03-19 06:44 by electricat
 
Posted: 04:40am
19 Mar 2025
Copy link to clipboard
disco4now
Guru


Peter,
The token allocated to COLOR appears to be FF80.
I think the FF byte might stop Library SAVE when its found.
We might need a extend the condition to ensure the higher tokens don't stop the save.
I have not got an environment to compile so can't test.
COLOUR is OK because the token is AB81

....
  cmd_library
    ...
    ...
    // then copy the current contents of the program memory to RAM
       
      //MMPrintString("\r\n Size=1 ");PInt(m - MemBuff);
       p = ProgMemory;
       while(*p != 0xff) {
           if(p[0] == 0 && p[1] == 0) break;  // end of the program
     ...


Gerry

Footnote added 2025-03-19 16:28 by disco4now
Maybe this.

// then copy the current contents of the program memory to RAM
       p = ProgMemory;
      // while(*p != 0xff) {
      while(!(p[0] == 0xff && p[1] == 0xff)){

 
Posted: 05:58am
19 Mar 2025
Copy link to clipboard
electricat
Senior Member


If that would help somehow.
I removed in my eralier 'library file' spaces in front of command COLOR and LIBRARY SAVE works ok.
I replaced COLOR with COLOUR just to see how it will behave, and LIBRARY SAVE works ok too.
Any space left and it fails.
 
Posted: 07:45am
19 Mar 2025
Copy link to clipboard
Volhout
Guru

@Disco4now,

I think that is a left-over from the time that tokens where single byte (v5.08.00 I guess).

Volhout
 
Posted: 07:55am
19 Mar 2025
Copy link to clipboard
electricat
Senior Member


I`m afraid to be so boring, but... another sad observation.

Freshly cleared/flashed latest RC5

LOADed help.bas .. success
LIBRARY SAVEd .. success
OPTION RESET ...success. (Library deleted according to manual.)
OPTION DISK LOAD .. success(wanted to check if OPTION Fn saves/loads chr$(13) )

LOADed help.bas .. success
LIBRARY SAVEd ... FAIL!!! .

Video screen partially overwrited with data and errmsg
>library save
[141] end sub
Error : Library too big

I`m attaching file used:
help.zip



Edited 2025-03-19 17:59 by electricat
 
Posted: 08:09am
19 Mar 2025
Copy link to clipboard
matherp
Guru

  Quote  With connected PS/2 Mouse on GP27,GP28 it is impossible to use GP26, since it ALWAYS shows 3,3V (in reality the pin is @ 3,7V measured with multimeter).


Sounds like a H/W fault at your end. Definitely not the case with a bare Pico2 running PicoMiteVGA V6.00.02RC5

  Quote  The token allocated to COLOR appears to be FF80.
I think the FF byte might stop Library SAVE when its found.
We might need a extend the condition to ensure the higher tokens don't stop the save.
I have not got an environment to compile so can't test.
COLOUR is OK because the token is AB81


Gerry: Thanks - just tested you fix and it seems to do the business

  Quote  I`m afraid to be so boring, but... another sad observation.


The manual needs correctly - changing options does not clear the library so you need to use LIBRARY DELETE
Edited 2025-03-19 18:22 by matherp
 
Posted: 08:57am
19 Mar 2025
Copy link to clipboard
electricat
Senior Member


  matherp said  
The manual needs correctly - changing options does not clear the library so you need to use LIBRARY DELETE


Well, something is wrong then.
As I said, with freshly clearflash/flashed system - OPTION RESET deleted library too.

Repeated it at least twice before posting observation.

Easy to reproduce:

F4
SUB some
Printa "a"
end sub

F1

LIBRARY SAVE

>LIBRARY LIST
SUB some
Printa "a"
end sub

>OPTION RESET

>LIBRARY LIST
>

lists nothing
 
Posted: 09:24am
19 Mar 2025
Copy link to clipboard
matherp
Guru

  Quote  LOADed help.bas .. success
LIBRARY SAVEd .. success
OPTION RESET ...success. (Library deleted according to manual.)
OPTION DISK LOAD .. success(wanted to check if OPTION Fn saves/loads chr$(13) )

LOADed help.bas .. success
LIBRARY SAVEd ... FAIL!!! .


Sorry but you are pushing the limits of what the system can protect against. I've no idea what is in your OPTION DISK LOAD file which includes information about the library.
I don't intend to look at this further other than to implement Gerry's fix for the COLOR issue.
Delete the library before resetting options and make sure you only disk save the options when the library has been deleted
 
   Page 6 of 37    
The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2025