Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 09:08 11 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 release candidates - all versions

     Page 16 of 44    
Author Message
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10067
Posted: 01:26pm 29 Mar 2025
Copy link to clipboard 
Print this post

I haven't got a VGA system with PSRAM to test against - sorry
 
dddns
Senior Member

Joined: 20/09/2024
Location: Germany
Posts: 262
Posted: 01:41pm 29 Mar 2025
Copy link to clipboard 
Print this post

Will reconfigure to HDMI and try. Lacking a HDMI breakout this is VGA but now have the guts and will to cut a cable.
800x600 is really nice ;)
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4854
Posted: 01:59pm 29 Mar 2025
Copy link to clipboard 
Print this post

Hi Peter,

The official RC8 for VGA 2040 is good!!!

             

Sound has never been better. Even games like Petscii are a lot more professional now music changes happen plop-less. Thank you for your persistence.
I will run RC8 through all my programs, but the ones that caused problems did run already.

Volhout

P.s. I always use page up and down in the internal editor. Much faster in 70kbyte sized program.
So I never noticed the scroll problem.
Edited 2025-03-30 00:00 by Volhout
PicomiteVGA PETSCII ROBOTS
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10067
Posted: 02:20pm 29 Mar 2025
Copy link to clipboard 
Print this post

  Quote  The official RC8 for VGA 2040 is good!!!


Phew..... at last

ddns: just jury-rigged a VGA RP2350 with PSRAM using a one of my RP2350B DIL boards and no issues with 800x600 even with PSRAM enabled. What board are you using?
 
toml_12953
Guru

Joined: 13/02/2015
Location: United States
Posts: 390
Posted: 02:24pm 29 Mar 2025
Copy link to clipboard 
Print this post

  matherp said  V6.00.02RC8 is available on

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

My current intention is that functionality will be frozen after 6.00.02 with the only changes after that being bug fixes that seriously impact usability. I think it's about time I moved on to another project  


If you're looking for a challenge, how about making a 6.00.02 version of MMBasic that runs on the PicoCalc?
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10067
Posted: 02:26pm 29 Mar 2025
Copy link to clipboard 
Print this post

  Quote  If you're looking for a challenge, how about making a 6.00.02 version of MMBasic that runs on the PicoCalc?


No chance whatsoever
 
dddns
Senior Member

Joined: 20/09/2024
Location: Germany
Posts: 262
Posted: 03:34pm 29 Mar 2025
Copy link to clipboard 
Print this post

  Quote  What board are you using?
A Pimoroni PGA2350. Any chance that It runs
better with the HDMI firmware?
Edited 2025-03-30 01:36 by dddns
 
homa

Guru

Joined: 05/11/2021
Location: Germany
Posts: 459
Posted: 04:43pm 29 Mar 2025
Copy link to clipboard 
Print this post

  Volhout said  Hi Peter,

The official RC8 for VGA 2040 is good!!!

             

Sound has never been better. ...


That's right!  
And also on the HDMI/USB reference board.

But I did find one PLOPP after all, reproducible
> play mp3 "going
> load "fm140             <-- P L O P P
>


Sorry Peter. But I can live with that.

Matthias
 
JanVolk
Senior Member

Joined: 28/01/2023
Location: Netherlands
Posts: 222
Posted: 05:47pm 29 Mar 2025
Copy link to clipboard 
Print this post

Test same program with RP2350A and RP2040 only different option list.

> option list
PicoMite MMBasic RP2350A Edition V6.00.02RC8
OPTION SYSTEM I2C GP4,GP5
OPTION FLASH SIZE 16777216
OPTION COLOURCODE ON
OPTION HEARTBEAT OFF
OPTION PICO OFF
OPTION CPUSPEED (KHz) 150000
OPTION DISPLAY 44, 96
OPTION SDCARD GP15, GP10, GP11, GP12
OPTION RTC AUTO ENABLE
> list variables
> run
> list variables
Error: Invalid address - resetting
>

>
PicoMite MMBasic RP2040 Edition V6.00.02RC8
Copyright 2011-2025 Geoff Graham
Copyright 2016-2025 Peter Mather

> option list
PicoMite MMBasic RP2040 Edition V6.00.02RC8
OPTION SYSTEM I2C GP0,GP1
OPTION COLOURCODE ON
OPTION HEARTBEAT OFF
OPTION PICO OFF
OPTION CPUSPEED (KHz) 200000
OPTION DISPLAY 44, 98
OPTION LCDPANEL SSD1306I2C, RLANDSCAPE
OPTION SDCARD GP5, GP6, GP7, GP4
> list variables
> run
> list variables
DIM FLOAT BEREIK_MAX(21)
DIM FLOAT BEREIK_MIN(21)
DIM FLOAT BINNEN_TEMP
DIM FLOAT BSEC
DIM FLOAT BUITEN_TEMP
DIM FLOAT LCDI2C_BACKLIGHT
DIM FLOAT LCDI2C_EMASK
DIM FLOAT LCDI2C_I2CADDR
DIM FLOAT LCDI2C_LCDBACKLIGHT
DIM FLOAT LCDI2C_NIBPOS
DIM FLOAT LCDI2C_RSDATAMASK
DIM FLOAT LU_DICHT
DIM FLOAT LU_OPEN
DIM FLOAT MAX_MENU_TELLER
DIM FLOAT MAX_RAAM
DIM FLOAT MENU_TELLER
DIM FLOAT MENU_TELLER_OLD
DIM FLOAT MIN_VERSTELLING
DIM FLOAT PIJL_DOWN
DIM FLOAT PIJL_UP
DIM FLOAT RAAM_0
DIM FLOAT RAAM_10
DIM FLOAT RAAM_100
DIM FLOAT RAAM_DICHT
DIM FLOAT RAAM_MIN
DIM FLOAT RAAM_OPEN
DIM FLOAT RAAM_PLUS
DIM FLOAT RAAMSTAND
DIM FLOAT RAAMSTAND_10
DIM FLOAT RAAMSTAND_100
DIM FLOAT RAAMSTAND_A
DIM FLOAT RAAMSTAND_ADC
DIM FLOAT RAAMSTAND_B
DIM FLOAT RAAMSTAND_BER
DIM FLOAT RAAMSTAND_BU
DIM FLOAT RAAMSTAND_BUI
DIM FLOAT RAAMSTAND_IJK
DIM FLOAT RAAMSTAND_IJK10
DIM FLOAT RAAMSTAND_M
DIM FLOAT RAAMSTAND_MENU
DIM FLOAT RAAMSTAND_MIN
DIM FLOAT RAAMSTAND_N
DIM FLOAT RAAMSTAND_N100
DIM FLOAT RAAMSTAND_T
DIM FLOAT RAAMSTAND_T100
DIM FLOAT REGENMELDER
DIM FLOAT REGENMELDER_ADC
DIM FLOAT REGENMELDER_TIJD
DIM FLOAT RESOLUTIE(21)
DIM FLOAT STATUS_KAS
DIM FLOAT STATUS_METEO
DIM FLOAT STATUS_PIJL_DOWN
DIM FLOAT STATUS_PIJL_UP
DIM FLOAT STATUS_RAAM
DIM FLOAT TEMP
DIM FLOAT TEMP_OLD
DIM FLOAT TEMPERATUUR(5)
DIM FLOAT TIMERLOOP
DIM FLOAT VERWERK_GEG
DIM FLOAT WAARDE_OLD
DIM INTEGER MAX_VERSTELLING
DIM INTEGER WAARDE(21)
DIM STRING I
DIM STRING VERSIE
>

Greetings,

Jan.
 
homa

Guru

Joined: 05/11/2021
Location: Germany
Posts: 459
Posted: 07:43pm 29 Mar 2025
Copy link to clipboard 
Print this post

PicoMiteHDMI MMBasic USB RP2350A Edition V6.00.02RC8
OPTION SERIAL CONSOLE COM2,GP8,GP9
OPTION SYSTEM I2C GP20,GP21
OPTION FLASH SIZE 4194304
OPTION COLOURCODE ON
OPTION KEYBOARD GR
OPTION CPUSPEED (KHz) 315000
OPTION RESOLUTION 640x480
OPTION SDCARD GP22, GP26, GP27, GP28
OPTION AUDIO GP10,GP11', ON PWM CHANNEL 5
OPTION RTC AUTO ENABLE
OPTION MODBUFF ENABLE  192
OPTION PLATFORM HDMIUSB

> list
MODE 3
FRAMEBUFFER create
FRAMEBUFFER layer
> run
[3] FRAMEBUFFER layer
Error : Not enough Heap memory
>


Shouldn't that work?
 
ville56
Senior Member

Joined: 08/06/2022
Location: Austria
Posts: 217
Posted: 08:30pm 29 Mar 2025
Copy link to clipboard 
Print this post

I've narrowed the list variables problem down a litte ....

the following statements already spoil the list variables:

--------------------------
 '
 OPTION EXPLICIT
 OPTION DEFAULT NONE
 
 dim string a, b, out_str(20)
---------------------------
Error: Invalid address - resetting

changing the DIM to

dim string a, out_str(20)

works. If I have 3 vars defined as string and one is an array, it crashes.


Env: PicoMiteHDMI MMBasic RP2350B Edition V6.00.02RC8
setup as "OLIMEX"

Gerald
Edited 2025-03-30 06:31 by ville56
                                                                 
73 de OE1HGA, Gerald
 
bfwolf
Regular Member

Joined: 03/01/2025
Location: Germany
Posts: 72
Posted: 10:15pm 29 Mar 2025
Copy link to clipboard 
Print this post

"problems, problems.."  
https://www.youtube.com/watch?v=BU2NS77FDv0

Have fun, listening!
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10067
Posted: 10:32pm 29 Mar 2025
Copy link to clipboard 
Print this post

  Quote  Have fun, listening!


No chance. Describe the issue properly, which firmware, what options, and provide example programs/sound files if you want a fix, otherwise forget it.
Edited 2025-03-30 08:37 by matherp
 
bfwolf
Regular Member

Joined: 03/01/2025
Location: Germany
Posts: 72
Posted: 11:30pm 29 Mar 2025
Copy link to clipboard 
Print this post

  matherp said  
  Quote  Have fun, listening!


No chance. Describe the issue properly, which firmware, what options, and provide example programs/sound files if you want a fix, otherwise forget it.


Hello Peter,
I'm afraid you misunderstood me.
The "problems, problems..." was referring to the posts of my predecessors, who keep finding new bugs or "minor issues."
And the "problems, problems..." appears in the song - hence the link to the YouTube video - I hoped you liked the song and could laugh?
 
toml_12953
Guru

Joined: 13/02/2015
Location: United States
Posts: 390
Posted: 12:16am 30 Mar 2025
Copy link to clipboard 
Print this post

I'm trying to define a 3 row, 1 column array I need for a matrix multiplication. The code below gives Error: Dimensions

What's wrong with this?

option base 1
dim a(3,1)=(4,5,6)

Edited 2025-03-30 10:19 by toml_12953
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6220
Posted: 01:18am 30 Mar 2025
Copy link to clipboard 
Print this post

  toml_12953 said  I'm trying to define a 3 row, 1 column array I need for a matrix multiplication. The code below gives Error: Dimensions

What's wrong with this?

option base 1
dim a(3,1)=(4,5,6)


a(3,1) should be a(3)
Without knowing the dimensions of the second array, I am guessing - silly thing to do.
To do what you are attempting this would work (if I have my maths correct)
OPTION BASE 1
DIM a(3)=(4,5,6)
DIM b(3)=(7,8,9)
DIM c(3)

MATH C_MUL a(), b(), c()
answer = MATH(SUM c())
PRINT answer



If that isn't suitable.
try
DIM a(3,2) and fill the second row/column with zeros
Edited 2025-03-30 11:40 by TassyJim
VK7JH
MMedit
 
toml_12953
Guru

Joined: 13/02/2015
Location: United States
Posts: 390
Posted: 03:15am 30 Mar 2025
Copy link to clipboard 
Print this post

  TassyJim said  
  toml_12953 said  I'm trying to define a 3 row, 1 column array I need for a matrix multiplication. The code below gives Error: Dimensions

What's wrong with this?

option base 1
dim a(3,1)=(4,5,6)


a(3,1) should be a(3)
Without knowing the dimensions of the second array, I am guessing - silly thing to do.
To do what you are attempting this would work (if I have my maths correct)
OPTION BASE 1
DIM a(3)=(4,5,6)
DIM b(3)=(7,8,9)
DIM c(3)

MATH C_MUL a(), b(), c()
answer = MATH(SUM c())
PRINT answer



If that isn't suitable.
try
DIM a(3,2) and fill the second row/column with zeros


I'm trying to solve three equations in three unknowns

x + 2y + 3z = 3
2x + 4y + 5z = 4
3x + 5y + 6z = 5


The coefficient array is
1 2 3
2 4 5
3 5 6

The answer array is
3
4
5

To find the solution array (x, y, and z), I multiply the inverse of the coefficient array by the answer array to get the three solutions to the problem.

The answer array and solutions array should be 3x1 matrices. Why doesn't MMBasic allow the two 3x1 arrays to be dimensioned?
Edited 2025-03-30 13:35 by toml_12953
 
phil99

Guru

Joined: 11/02/2018
Location: Australia
Posts: 2417
Posted: 04:41am 30 Mar 2025
Copy link to clipboard 
Print this post

Some time ago I think Peter mentioned that array dimensions have to be 2 or more.

Edit.
Maybe I remembered that wrong, but as it doesn't work perhaps not.
  Quote  Posted: 08:19pm 03 Dec 2024
Quote
MMBasic doesn't allow single element arrays. I wish it did for reasons such as array multiplication but it doesn't. I don't think this is something that could be easily changed as it is fundamental to the way the variable table is built
https://www.thebackshed.com/forum/ViewTopic.php?TID=17485&PID=230590#230590#230590

Have not found any mention of a minimum in the manual.
Edited 2025-03-30 15:34 by phil99
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6220
Posted: 05:56am 30 Mar 2025
Copy link to clipboard 
Print this post

  Quote  If that isn't suitable.
try
DIM a(3,2) and fill the second row/column with zeros


OPTION BASE 1
DIM a(3,3)
DIM i(3,3)
DIM b(2,3)
DIM c(2,3)
a(1,1)=1
a(2,1)=2
a(3,1)=3
a(1,2)=2
a(2,2)=4
a(3,2)=5
a(1,3)=3
a(2,3)=5
a(3,3)=6
b(1,1)=3
b(1,2)=4
b(1,3)=5
MATH M_INVERSE a(),i()
MATH M_PRINT a()
MATH M_PRINT i()
MATH M_PRINT b()

MATH M_MULT i(),b(),c()
MATH M_PRINT c()

FOR n = 1 TO 3
PRINT c(1,n)
NEXT n



RUN
  1.0000,    2.0000,    3.0000
  2.0000,    4.0000,    5.0000
  3.0000,    5.0000,    6.0000
  1.0000,   -3.0000,    2.0000
 -3.0000,    3.0000,   -1.0000
  2.0000,   -1.0000,    0.0000
  3.0000,    0.0000
  4.0000,    0.0000
  5.0000,    0.0000
  1.0000,    0.0000
 -2.0000,    0.0000
  2.0000,    0.0000
1
-2
2
>

For your purpose a second row of zeros seems to work

I think that you can use MATH INSERT and MATH SLICE to interface to singe dimension arrays

Jim
Edited 2025-03-30 16:00 by TassyJim
VK7JH
MMedit
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10067
Posted: 08:30am 30 Mar 2025
Copy link to clipboard 
Print this post

  Quote  > list
MODE 3
FRAMEBUFFER create
FRAMEBUFFER layer
> run
[3] FRAMEBUFFER layer
Error : Not enough Heap memory
>
Shouldn't that work?


No: a mode 3 buffer takes 153,600 bytes so after the framebuffer is created there isn't enough left for the layerbuffer. It could work on a version with PSRAM IFF you define the layer buffer first.

  Quote  I've narrowed the list variables problem down a little ....


Fixed if you re-download. Note the bug applied to all versions including RP2040. It was just fluke as to whether it impacted in a given circumstance or not (current state of the stack)
 
     Page 16 of 44    
Print this page
The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2025