Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 13:36 10 May 2025 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 : PicoMite V6.00.02 betas

     Page 7 of 23    
Author Message
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 7503
Posted: 09:13pm 26 Jan 2025
Copy link to clipboard 
Print this post

Does the MAX98357A even do the same thing as a PCM5102A? The data sheet says it's an amplifier with PCM input (which can accept I2S) whereas the PCM5102A is a DAC with I2S input. If it's a different beast I suppose you'd be lucky if anything came out, never mind distortion. :)  I don't know much about these things yet.

IIRC the output from the PCM5102A is analogue at 2V. Unless you have a volume control or some other sort of divider you will overload a lot of the small amplifier modules as they are usually set for high gain by default.
Mick

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

Guru

Joined: 11/02/2018
Location: Australia
Posts: 2416
Posted: 09:23pm 26 Jan 2025
Copy link to clipboard 
Print this post

  Quote  The PLAY VOLUME command is from 0% - 100% but PLAY SOUND 1,B,S,200,VOLUME 0% - 25%. Why no equality in the firmware?

PLAY SOUND can add several sounds together so each is limited to 25% to prevent overloading.
  Quote  Specialised Audio Output
The PLAY SOUND command will generate an output based on a mixture of sine, square, etc waveforms. See the details in the command listing.
  Quote  Play a series of sounds simultaneously on the audio output.
'soundno' is the sound number and can be from 1 to 4 allowing for four simultaneous sounds on each channel.
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10067
Posted: 10:42pm 26 Jan 2025
Copy link to clipboard 
Print this post

MAX98357A can be set for different gains by setting the voltage on its pins. For use with the Pico you would need to set if for minimum gain = 3dB. The Chinese modules could be set to anything. It can also be configured for different types of input signal - not just I2S so who knows if it has been set up correctly. The best advice for those modules is - AVOID
 
electricat

Senior Member

Joined: 30/11/2020
Location: Lithuania
Posts: 295
Posted: 06:40am 27 Jan 2025
Copy link to clipboard 
Print this post

Sorry, Peter, I`m not native english, and do not get what you meant.
Should we avoid Chinese modules or MAX98357A/B ?
I do not have on hand MAX98357A at the moment, but it is few days away from me    

@Mick
  Quote  Does the MAX98357A even do the same thing as a PCM5102A

I did not read datasheet extensively, but from what I see in functional diagram pg33, and general description pg1, MAX98357A combines a DAC and a speaker driver amplifier in a single package I have no large expierence in DAC`s however. Only reading some datasheets and specifications before.

@JanVolk
MAX98357A datasheet`s page 28
GAIN_SLOT , 2nd leg (if it is module, should be just GAIN) Connect to VDD through 100kΩ ±5% resistor for gain 3dB .
(Also current supply must be capable output ~1,5A, but you might know it)
Edited 2025-01-27 16:44 by electricat
My MMBasic 'sand box'
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4854
Posted: 08:54am 27 Jan 2025
Copy link to clipboard 
Print this post

Hi Peter,

On the 6.00.02 b2,b3,b4 PETSCII ROBOTS does not work anymore on RP2040 VGA.
The game intro starts, when you select a game and start, audio runs, but video is a blank screen. Maybe related to layer framebuffer, where you made a fix in MODE 1, that affects MODE 2 ?

6.00.01 (from Geoff's site) works fine.

Regards,

Volhout
Edited 2025-01-27 19:19 by Volhout
PicomiteVGA PETSCII ROBOTS
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10067
Posted: 09:41am 27 Jan 2025
Copy link to clipboard 
Print this post

Please post the exact version of the complete program that you are testing
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4854
Posted: 09:57am 27 Jan 2025
Copy link to clipboard 
Print this post

Hi Peter,

petrobot.zip
I tried "robots601.bas" and "robots602.bas". 602 does not have Tom's latest fix yet (music on-off).
It is something very basic, since not even the "LOADING" popup does not show.

If you want to select controller manual, run "robots2.bas".

Volhout
Edited 2025-01-27 19:59 by Volhout
PicomiteVGA PETSCII ROBOTS
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10067
Posted: 10:19am 27 Jan 2025
Copy link to clipboard 
Print this post

It works on CPUSPEED 315000 or 378000. Must be an optimisation issue of the VGA driver.
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10067
Posted: 02:08pm 27 Jan 2025
Copy link to clipboard 
Print this post

RP2040 VGA versions updated in the download to sort optimization issue

https://geoffg.net/Downloads/picomite/PicoMite_Beta.zip
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4854
Posted: 02:27pm 27 Jan 2025
Copy link to clipboard 
Print this post



Volhout
PicomiteVGA PETSCII ROBOTS
 
javavi

Guru

Joined: 01/10/2023
Location: Ukraine
Posts: 436
Posted: 09:51pm 27 Jan 2025
Copy link to clipboard 
Print this post

PicoMiteVGAUSB RP2040 V6.00.02b4
When reading the file size from disk A: the state of the pressed keys of the KeyDown(1) function is reset, but this does not happen when reading the file size from disk B: (while holding the key)
Do
 ? MM.Info(FILESIZE "fname")
 ? KEYDOWN(1)
Loop

Edited 2025-01-28 07:54 by javavi
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10067
Posted: 10:34pm 27 Jan 2025
Copy link to clipboard 
Print this post

  Quote  When reading the file size from disk A: the state of the pressed keys of the KeyDown(1) function is reset, but this does not happen when reading the file size from disk B: (while holding the key)

It is what it is
 
javavi

Guru

Joined: 01/10/2023
Location: Ukraine
Posts: 436
Posted: 11:17pm 27 Jan 2025
Copy link to clipboard 
Print this post

  matherp said  It is what it is

Sad! This slows down File Manager a bit with drive A: when using USB keyboard.
FM121.zip
 
electricat

Senior Member

Joined: 30/11/2020
Location: Lithuania
Posts: 295
Posted: 01:32pm 28 Jan 2025
Copy link to clipboard 
Print this post

Peter, RP2350HDMIUSB  b4

Wrote simple program. It opens file, reads, prints results etc. nothing fancy.
Sits in same folder where --> file to read <-- sits. All works.
Swiched off. Later returned to continue, swiched on. After power cycle --> F2. Paths are sure naturally lost and so program does not see file. But! Instead of throwing file missing error, it skips file opening completely and tires execute code as if it opened file

I think it should throw error according to manual if file is "missing"  
--> "INPUT will open the file for reading and throw an error if the file does not exist."
My MMBasic 'sand box'
 
JohnS
Guru

Joined: 18/11/2011
Location: United Kingdom
Posts: 3998
Posted: 01:37pm 28 Jan 2025
Copy link to clipboard 
Print this post

Probably best to post a short program to reproduce it.

(With OPTION LIST)

John
 
electricat

Senior Member

Joined: 30/11/2020
Location: Lithuania
Posts: 295
Posted: 01:46pm 28 Jan 2025
Copy link to clipboard 
Print this post

@JohnS

Sure  
Few lines of code to extract SD card pin numbers, from option files  

options.zip

After longer period I always forget SD card pins and without SD card working there is no way load saved options files from SD card    If it was flash nuke for example 

P.S. Might not work with user option files as it does not check
  #ifdef PICOMITE
  #ifdef PICOMITEWEB
  #ifdef PICOMITEVGA
Edited 2025-01-28 23:51 by electricat
My MMBasic 'sand box'
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10067
Posted: 02:06pm 28 Jan 2025
Copy link to clipboard 
Print this post

You are opening a file for random and not input. The behaviour is correct. Random works the same as output and creates a file if one does not exist. Use MM.INFO(EXISTSFILE
 
bfwolf
Regular Member

Joined: 03/01/2025
Location: Germany
Posts: 72
Posted: 03:24pm 28 Jan 2025
Copy link to clipboard 
Print this post

  matherp said  
  Quote  EXECUTE "FILES" from the program does not work,


Not surprised - no fix possible. Execute only allows commands that return immediately. The message is wrong and I'll fix that.


As the "FILES" command may take a long time on large dirs, this may be the reason for being "impossible"?

Perhaps the adding of the commwands/functions "OPENDIR", "READDIR$()", "CLOSEDIR" could help with this situation?  

This would also create the ability, to read dirs to string arrays from within basic programs..  

bfwolf
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4854
Posted: 03:28pm 28 Jan 2025
Copy link to clipboard 
Print this post

hi bfwolf

This function already exists. That is how javavi's filemanager works. Look for DIR$() in the user manual.

Volhout
Edited 2025-01-29 01:34 by Volhout
PicomiteVGA PETSCII ROBOTS
 
bfwolf
Regular Member

Joined: 03/01/2025
Location: Germany
Posts: 72
Posted: 04:43pm 28 Jan 2025
Copy link to clipboard 
Print this post

hi Volhout,

thx! Seems, I was blind..

I probably saw it once, when walking through the commands/functions list in the manual but read to fast or just forgot it since then..

The different behaviour of DIR$() with args as "OPENDIR" and with empty args as READDIR$ is somewhat "tricky" - but if it works..
Google showed me, das VBA behaves same with the Dir() function..

bfwolf
 
     Page 7 of 23    
Print this page
The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2025