Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 07:35 29 Nov 2024 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/PicoMiteVGA/WebMite V5.07.07 release candidates

     Page 9 of 13    
Author Message
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1115
Posted: 05:06pm 27 Apr 2023
Copy link to clipboard 
Print this post

is there an Error with the xmodem command?
Xmodem s or xmodem send to send the current program from Memory crasches the Pico


xmodem s "Picovaders.bas
>
> xmodem s
Error: Invalid address - resetting
PicoMiteVGA MMBasic Version 5.07.07RC6
Copyright 2011-2023 Geoff Graham
Copyright 2016-2023 Peter Mather

option list

PicoMiteVGA MMBasic Version 5.07.07RC6
Copyright 2011-2023 Geoff Graham
Copyright 2016-2023 Peter Mather




Edited 2023-04-28 03:35 by Martin H.
'no comment
 
Andrew_G
Guru

Joined: 18/10/2016
Location: Australia
Posts: 847
Posted: 06:28pm 27 Apr 2023
Copy link to clipboard 
Print this post

Hi Martin,
Are you missing a " off the end on the command?

Cheers,

Andrew
Edited 2023-04-28 04:33 by Andrew_G
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9139
Posted: 06:30pm 27 Apr 2023
Copy link to clipboard 
Print this post

Is the program very big? Please let me have the filesize. Can't replicate with any programs I have
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4254
Posted: 07:01pm 27 Apr 2023
Copy link to clipboard 
Print this post

Hi Peter,

Sorry to ask in advance of the user manual, but how can we use the C-style special characters. Or are these only available for the WebMite ?

I read in the read-me they where only in input and data statements.

So I tried

print "hello \r\r\r"


Unsuccessful , and also


read a$
print a$
end

data "hello \r\r\r"


Unsuccessful

These should be available since beta 27 ? Or am I misinterpreting how they should be used.? I came to this because I wanted to set an option.

OPTION F1 "files\r"


in stead of

OPTION F1 "files"+chr$(13)



Regards,

Volhout
Edited 2023-04-28 05:04 by Volhout
PicomiteVGA PETSCII ROBOTS
 
Amnesie
Guru

Joined: 30/06/2020
Location: Germany
Posts: 396
Posted: 07:14pm 27 Apr 2023
Copy link to clipboard 
Print this post

Volhout, If I understand you correctly, you need to activate them via

OPTION ESCAPE
This activates escape sequences in strings

Greetings
Daniel
Edited 2023-04-28 05:16 by Amnesie
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1115
Posted: 07:22pm 27 Apr 2023
Copy link to clipboard 
Print this post

  matherp said  Is the program very big? Please let me have the filesize. Can't replicate with any programs I have

Memory usage while it is running:
Program:
 17K (16%) Program (705 lines)
 83K (84%) Free

Saved Variables:
 16K (100%) Free

RAM:
  5K ( 4%) 28 Variables
 38K (29%) General
 85K (67%) Free

Filesize is 19751
Edited 2023-04-28 05:23 by Martin H.
'no comment
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1115
Posted: 07:24pm 27 Apr 2023
Copy link to clipboard 
Print this post

  Andrew_G said  Hi Martin,
Are you missing a " off the end on the command?

Cheers,

Andrew

the commandline with the missing " at the end is the line that is working fine
'no comment
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 4047
Posted: 09:24pm 27 Apr 2023
Copy link to clipboard 
Print this post

You're probably going to kill me, and I'm not entirely certain it would be unjustified:
? "Drive A"
Drive "A:"
MkDir "bar"
assert_is_directory(Cwd$)
assert_is_directory(Mm.Info$(Path))
assert_is_directory("/")
assert_is_directory("\")
assert_is_directory(".")
assert_is_directory("..")
assert_is_directory("A:")
assert_is_directory("A:/")
assert_is_directory("A:\")
assert_is_directory("B:")
assert_is_directory("B:/")
assert_is_directory("B:\")
assert_is_directory("A:/bar")
assert_is_directory("A:\bar")
RmDir "bar"

?
? "Drive B"
Drive "B:"
MkDir "bar"
assert_is_directory(Cwd$)
assert_is_directory(Mm.Info$(Path))
assert_is_directory("/")
assert_is_directory("\")
assert_is_directory(".")
assert_is_directory("..")
assert_is_directory("A:")
assert_is_directory("A:/")
assert_is_directory("A:\")
assert_is_directory("B:")
assert_is_directory("B:/")
assert_is_directory("B:\")
assert_is_directory("B:/bar")
assert_is_directory("B:\bar")
RmDir "bar"

Sub assert_is_directory(f$)
 Local result% = Mm.Info(FileSize f$)
 ? "[" + str.rpad$(f$, 10) + "] " + Choice(result% = -2, "OK", "FAIL")
End Sub

Function str.rpad$(s$, x%)
 str.rpad$ = s$
 If Len(s$) < x% Then str.rpad$ = s$ + Space$(x% - Len(s$))
End Function


Results:
Drive A
[A:/       ] OK
[B:/       ] OK
[/         ] OK
[\         ] FAIL
[.         ] OK
[..        ] OK
[A:        ] FAIL
[A:/       ] OK
[A:\       ] FAIL
[B:        ] FAIL
[B:/       ] OK
[B:\       ] FAIL
[A:/bar    ] OK
[A:\bar    ] FAIL

Drive B
[B:/       ] OK
[B:/       ] OK
[/         ] OK
[\         ] FAIL
[.         ] FAIL
[..        ] FAIL
[A:        ] FAIL
[A:/       ] OK
[A:\       ] FAIL
[B:        ] FAIL
[B:/       ] OK
[B:\       ] FAIL
[B:/bar    ] OK
[B:\bar    ] FAIL


Note the difference in "." and ".." behaviour on the two drives and the fact that '\' isn't accepted as a valid path separator - I'm assuming it is since it seems to work elsewhere.

Best wishes,

Tom
Edited 2023-04-28 07:25 by thwill
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
lizby
Guru

Joined: 17/05/2016
Location: United States
Posts: 3152
Posted: 10:29pm 27 Apr 2023
Copy link to clipboard 
Print this post

If there's to be a new release of the PicoMite manuals, could a note be added to PWM to make clear how it is used to drive a servo, since there is no longer a SERVO command?

For instance, per matherp: re servo: PWM 1,50,(position_as_a_percentage * 0.05 + 5)
PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9139
Posted: 07:46am 28 Apr 2023
Copy link to clipboard 
Print this post

For Tom


PicoMite.zip
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 4047
Posted: 10:53am 28 Apr 2023
Copy link to clipboard 
Print this post

  matherp said  For Tom

PicoMite.zip


Thanks Peter, it's all looking clear at the moment.

My intention is to write some more tests for the file-system over the weekend (since I've encouraged you to make so many changes I feel obliged to check they haven't broken anything) and then hopefully call my efforts done.

Enjoy your long weekend,

Tom
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
Geoffg

Guru

Joined: 06/06/2011
Location: Australia
Posts: 3196
Posted: 01:10pm 28 Apr 2023
Copy link to clipboard 
Print this post

  lizby said  If there's to be a new release of the PicoMite manuals, could a note be added to PWM to make clear how it is used to drive a servo, since there is no longer a SERVO command?

Will do.

Geoff
Geoff Graham - http://geoffg.net
 
Hawk

Senior Member

Joined: 15/07/2021
Location: Australia
Posts: 141
Posted: 07:13pm 28 Apr 2023
Copy link to clipboard 
Print this post

  Geoffg said  
  lizby said  If there's to be a new release of the PicoMite manuals, could a note be added to PWM to make clear how it is used to drive a servo, since there is no longer a SERVO command?

Will do.

Geoff


I've been playing with creation of graphics for the PicoMiteVGA.

Can I also suggest that an updated version of the manual include the colour palette mapped to the RGB values, the names, and the numbers (if that bug/feature) has been changed?

Also, I have seen conflicting information in the existing manual regarding the number of sprites supported.  Is it 32 or 64?

Thanks,
Mike
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4254
Posted: 08:36pm 28 Apr 2023
Copy link to clipboard 
Print this post

@Peter,

I seem to remember that you have added the possibility to draw thick lines on the screen in diagonal (5.07.06 would only do thick lines horizontal and vertical).

In the read-me I could not find back how this is invoked. Is there a extension to the line commands, or a suffix. In RC6 you cannot bluntly increase the line width and get a thicker line on the LCD. Maybe a note in the manual ?

Regards,

Volhout
Edited 2023-04-29 06:37 by Volhout
PicomiteVGA PETSCII ROBOTS
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 6812
Posted: 09:45pm 28 Apr 2023
Copy link to clipboard 
Print this post

What was introduced was antialiasing on diagonal lines. It isn't really intended to be  way to draw thick horizontal lines.
Mick

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

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 6812
Posted: 09:51pm 28 Apr 2023
Copy link to clipboard 
Print this post

  Hawk said  
  Geoffg said  
  lizby said  If there's to be a new release of the PicoMite manuals, could a note be added to PWM to make clear how it is used to drive a servo, since there is no longer a SERVO command?

Will do.

Geoff


I've been playing with creation of graphics for the PicoMiteVGA.

Can I also suggest that an updated version of the manual include the colour palette mapped to the RGB values, the names, and the numbers (if that bug/feature) has been changed?

Also, I have seen conflicting information in the existing manual regarding the number of sprites supported.  Is it 32 or 64?

Thanks,
Mike


The RGB values are a bit pointless as they are 32 bit integers IIRC. It's far easier to use RGB(redvalue,greenvalue,bluevalue) and pop the ones that you want into an array at the beginning of your program. Then use something like cc(1) instead of RGB(yellow). There are only 16 colours anyway and no palette to choose them from.
Mick

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

Senior Member

Joined: 15/07/2021
Location: Australia
Posts: 141
Posted: 01:13am 29 Apr 2023
Copy link to clipboard 
Print this post

  Mixtel90 said  
The RGB values are a bit pointless as they are 32 bit integers IIRC. It's far easier to use RGB(redvalue,greenvalue,bluevalue) and pop the ones that you want into an array at the beginning of your program. Then use something like cc(1) instead of RGB(yellow). There are only 16 colours anyway and no palette to choose them from.


My comment was more around the fact that there is no visible indication of what the palette looks like, just the names of the colours in the text.  I'm happy to create a table if it would help.  The 32bit values are useful if you want to create a palette in a paint program to use for preparing your graphics for use with the PicoMiteVGA.

I ended up Googling for the answer, but it would be more complete if the information was in the manual as well.  Also, some people, when converting the bits to RGB values got them wrong, assuming 0, 1/4, 3/4, 1 for levels of Green, when they are really ), 1/3, 2/3, 1.  Having it in the manual would remove any confusion.

Can the numbers of the palette entries also be used, the same as the names?  I saw a reference earlier that there is a difference between this usage on the PicoMiteVGA vs other Mites.
 
Hawk

Senior Member

Joined: 15/07/2021
Location: Australia
Posts: 141
Posted: 01:21am 29 Apr 2023
Copy link to clipboard 
Print this post

Another one for the manual update Geoff, I noticed that in the Using the I/O pins, Digital Inputs (P28), there is a good example that shows both how to define the pin using the SETPIN command as well as how to use it.

In the Digital Outputs section (P29) there is no indication of how to define the pin.  Is this because all pins default to OUTPUTS?

Sorry if these things seem obvious to the more experienced members, but as someone who is coming in to MMBASIC and the PicoMiteVGA cold, so to speak, these are things that I notice that I think would enhance the manual for new users.

Mike.
 
Hawk

Senior Member

Joined: 15/07/2021
Location: Australia
Posts: 141
Posted: 01:56am 29 Apr 2023
Copy link to clipboard 
Print this post

Here's an example of the palette table I was thinking of.  It could even include a column that shows the output levels of the corresponding pins from the Pico.

I'm not sure if this is the order that the palette is defined in or if the "Colour No." is relevent.", if indeed the colours can be specified by number.

Also, I only allocated the names that were obvious to me without Googling.  Another reason why a picture with colours would help in this situation.


Edited 2023-04-29 12:49 by Hawk
 
phil99

Guru

Joined: 11/02/2018
Location: Australia
Posts: 2140
Posted: 02:08am 29 Apr 2023
Copy link to clipboard 
Print this post

Here is a colour counter that shows the colour numbers for R, G and B for each unique colour.

'Display Colour Counter - requires MISO connected to LCD_SDO
Dim a$(2)=(" Blues"," Greens"," Reds")
Dim integer b, c, n
Print
For b=0 To 2
 n=0
 For c=0 To 255
  Pixel 99,99,c<<b*8
  If Pixel(99,99)=c<<b*8 Then
   Inc n
   Print c,
  EndIf
 Next
 Print :Print n;a$(b): Print
Next


And the output for the PicoVGA
0       255
2 Blues

0       64      128     255
4 Greens

0       255
2 Reds

So for green  the 4 colours are 0  1/4  1/2  1 of maximum.

That is the top two bits from G in a 24 bit RGB value
Edited 2023-04-29 12:35 by phil99
 
     Page 9 of 13    
Print this page
© JAQ Software 2024