Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 11:48 08 Jan 2026 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 : MMbasic RP2350 V6.01.00EXP with user-defined structures

     Page 7 of 7    
Author Message
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10818
Posted: 12:10pm 02 Jan 2026
Copy link to clipboard 
Print this post

Correct. The header is created dynamically by the TYPE statment and the data when you dim a structure. There is minimal overhead if you don't use structures
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10818
Posted: 01:02pm 02 Jan 2026
Copy link to clipboard 
Print this post

V6.01.00EXP7

PicoMiteV6.01.00EXP7.zip

MMBasic_Structures_Manual.pdf

StructTests.zip

Fixes the bugs identified yesterday and a bunch more that you hadn't found.
I'm sure you will find something else  

You can now use STATIC structs in subroutines and functions - see manual

This release also standardises XMODEM and YMODEM S and S,file$ to always terminate lines with cr/lf. In addition xmodem will now pad with NULL rather than &H1A
 
twofingers

Guru

Joined: 02/06/2014
Location: Germany
Posts: 1716
Posted: 01:49pm 02 Jan 2026
Copy link to clipboard 
Print this post

@Peter
MMBasic_Structures_Manual.pdf = 38 pages with good and detailed explanations! Amazing!
Regards
MIchael
causality ≠ correlation ≠ coincidence
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 5592
Posted: 02:20pm 02 Jan 2026
Copy link to clipboard 
Print this post

@JanVolk, Peter,

I can confirm that with EXP7 the issue with miniFM_RC2 is fixed on RC2040 nonVGA.

Volhout
Edited 2026-01-03 00:20 by Volhout
PicomiteVGA PETSCII ROBOTS
 
bfwolf
Senior Member

Joined: 03/01/2025
Location: Germany
Posts: 131
Posted: 06:25pm 02 Jan 2026
Copy link to clipboard 
Print this post

@Peter:

Thanks for the explanations about the Struct internals in this post!

Edit: wrong link before - ment this one..
https://www.thebackshed.com/forum/ViewTopic.php?TID=18519&P=6#248991
Very informative! Definitely worth including in a "technical section" of the manual!

And "by the way": Pretty Code!

I also like "pretty programming"...

Regards
Edited 2026-01-03 05:31 by bfwolf
 
JanVolk
Senior Member

Joined: 28/01/2023
Location: Netherlands
Posts: 281
Posted: 08:25pm 02 Jan 2026
Copy link to clipboard 
Print this post

Thanks Peter,

The problems I mentioned recently have been fixed in the latest version V6.01.00EXP7. (minifm_RC2.bas and LIST PINS GP0 1 Boot Reserved: CONSOLE TX) (For RP2040 and RP2350).

I'm trying to play an MP3 file with an RP2350, which works fine from the command line.
Playing mp3 "b:/mp3-bestand/xxxxxxxx.mp3" doesn't work from the editor. Is this correct, or am I doing something wrong?
And then I want the next MP3 file to automatically play. (According to the manual, this should happen. There are 50 MP3 files in this folder.)
> Play MP3 "b:/mp3-bestand/xxxxxxxx.mp3" (Only one file is played.)
> Play MP3 "b:/mp3-bestand/xxxxxxxx.mp3" : play next (Only one file is played.)
Last track is playing
However, only one file is played? Is this correct, or am I doing something wrong?
I am using:
PicoMite MMBasic RP2350A V6.01.00EXP7
OPTION SD CARD GP22, GP6, GP7, GP4
OPTION AUDIO GP26, GP27', ON PWM CHANNEL 5
OPTION MODBUFF ENABLE 192
OPTION PLATFORM OLIMEX HDMI RP2350A 16MB

Kind regards,

Jan.
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10818
Posted: 10:21pm 02 Jan 2026
Copy link to clipboard 
Print this post

  Quote  Playing mp3 "b:/mp3-bestand/xxxxxxxx.mp3" doesn't work from the editor.

Don't understand. The editor uses all the available memory so nothing else can run at the same time.

  Quote  According to the manual, this should happen.


And the manual says
  Quote  If file$ is a directory on the B: drive the Pico will play all of the files in that
directory in turn.

i.e. specify a directory name not a filename e.g. Play MP3 "b:/mp3-bestand

The playback is limited to, I think, 20 tracks. Any more and you will have to use DIR$ and a completion interrupt on the PLAY command
 
JanVolk
Senior Member

Joined: 28/01/2023
Location: Netherlands
Posts: 281
Posted: 10:37pm 02 Jan 2026
Copy link to clipboard 
Print this post

Playing the mp3 file "b:/mp3-file/xxxxxxxx.mp3" doesn't work from the editor.

Sorry, I meant from a program created with editing.

Thanks for the reply, and I'll try it tomorrow with just the folder.

Kind regards,

Jan.
 
JanVolk
Senior Member

Joined: 28/01/2023
Location: Netherlands
Posts: 281
Posted: 10:46pm 02 Jan 2026
Copy link to clipboard 
Print this post

Tested with just the folder, and it works. Indeed, 20 MP3 files are displayed on the screen and played one by one.

Kind regards,

Jan.
 
JanVolk
Senior Member

Joined: 28/01/2023
Location: Netherlands
Posts: 281
Posted: 09:52pm 03 Jan 2026
Copy link to clipboard 
Print this post

Peter,

I've done some testing, including with I2S, and the sound is much better than with the standard audio input on the Olimex module.
I used a standard Raspberry Pi Pico 2 module, soldering long pins on the underside so that the rest of the pins are also available.
A template under the PCB with all the GP numbers makes it much clearer. An added advantage is that the Audio module: PCM5102A I2S DAC can then be neatly slid between the pins on top of the Raspberry Pi Pico terminal.
I also mounted a DS3231 with EEPROM under the Olimex module, attaching the wires to the underside and securing them with 3mm and 5mm nylon bushings.

If you create "B:/mp3-file/" with EDIT PLAY MP3 and then save it to a FLASH slot, it can be started automatically with, for example, FLASH RUN n. From the > you can control the MP3 player with PLAY NEXT, PLAY PAUSE, PLAY RESUME, PLAY STOP.

> option list
PicoMiteHDMI MMBasic USB RP2350A Edition V6.01.00EXP7
OPTION SERIAL CONSOLE COM1,GP0,GP1
OPTION SYSTEM I2C GP20,GP21
OPTION FLASH SIZE 4194304
OPTION COLOURCODE ON
OPTION DEFAULT COLOURS GREEN, BLACK
OPTION KEYBOARD US
OPTION HEARTBEAT OFF
OPTION PICO OFF
OPTION RESOLUTION 640x480 @ 252000KHz
OPTION HDMI PINS  1, 3, 7, 5
OPTION SDCARD GP22, GP6, GP7, GP4
OPTION AUDIO I2S GP2,GP5', ON PWM CHANNEL 11
OPTION RTC AUTO ENABLE
OPTION MODBUFF ENABLE  192
OPTION PLATFORM OLIMEX USB

This can also be done with function keys.

> option list
PicoMiteHDMI MMBasic USB RP2350A Edition V6.01.00EXP7
OPTION SERIAL CONSOLE COM1,GP0,GP1
OPTION SYSTEM I2C GP20,GP21
OPTION FLASH SIZE 4194304
OPTION COLOURCODE ON
OPTION DEFAULT COLOURS GREEN, BLACK
OPTION MOUSE SENSITIVITY     1.0000
OPTION KEYBOARD US
OPTION HEARTBEAT OFF
OPTION PICO OFF
OPTION RESOLUTION 640x480 @ 252000KHz
OPTION HDMI PINS  1, 3, 7, 5
OPTION SDCARD GP22, GP6, GP7, GP4
OPTION AUDIO I2S GP2,GP5', ON PWM CHANNEL 11
OPTION RTC AUTO ENABLE
OPTION MODBUFF ENABLE  192
OPTION F5 play mp3 "b:/mp3-bestand/"

OPTION F6 FLASH RUN 2

OPTION PLATFORM OLIMEX USB

Kind regards,

Jan.
Edited 2026-01-04 10:02 by JanVolk
 
     Page 7 of 7    
Print this page


To reply to this topic, you need to log in.

The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2026