![]() |
Forum Index : Microcontroller and PC projects : PicoMite V6.00.02 betas
![]() ![]() ![]() ![]() |
|||||
Author | Message | ||||
zeitfest Guru ![]() Joined: 31/07/2019 Location: AustraliaPosts: 549 |
off-topic but... Errm.... clicking on "For everything Micromite visit micromite.org " leads to a "related searches" page with a "Why is this page displayed" link... clicking on that leads to this [ https://adimg.uimserv.net/1und1/Werbemittel/IONOS/us_defaultpage.html ] WhiteWizzard -- might like to clarify the situation ? Is it a commercial enterprise? Edited 2025-02-18 11:01 by zeitfest |
||||
Turbo46![]() Guru ![]() Joined: 24/12/2017 Location: AustraliaPosts: 1636 |
It used to be. Maybe WhiteWizzard should remove it from his signature. Bill Keep safe. Live long and prosper. |
||||
WhiteWizzard Guru ![]() Joined: 05/04/2013 Location: United KingdomPosts: 2927 |
I still get an error message whenever I try editing the signature (and hence unable to remove it). Will contact admin….. |
||||
electricat![]() Senior Member ![]() Joined: 30/11/2020 Location: LithuaniaPosts: 295 |
@Peter, 02b11 HDMI/USB/2350 I looked through manual, but did not find how command --> TILE height < by itself might affect printing. TILE height <-- should not change any printing parameters, e.i. it should be neutral I believe. Check this short https://youtube.com/shorts/ItI-uHO_IFU?feature=share Or run this code. Weird results to my opinion. MODE 1 Font 7 For a=0 To 40 'new_tile_h=MM.Info(fontheight)*2 TILE height 12 Print @(0,a*MM.Info(fontheight)) "THIS IS SOME RANDOM TEXT" Next a Edited 2025-02-21 17:40 by electricat My MMBasic 'sand box' |
||||
mace Newbie ![]() Joined: 04/03/2023 Location: FinlandPosts: 7 |
hellou. Trouble with SUB's with Picomite newest V6. RP2040 and RP2350. SetPin gp0,dout :SetPin gp1,dout :SetPin gp2,dout :SetPin gp3,dout SetPin gp4,dout :SetPin gp5,dout :SetPin gp6,dout :SetPin gp7,dout 'sub1 255 sub2 128 End Sub sub1 num1 Port(gp0,8)=num1 End Sub Sub sub2 num2 Port(gp0,8)=num2 End Sub Enabling sub1 #255,sub2 port(gp0,8) is something else but not #128. Variable is ok but port itself not. Earlier versions OK. |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10067 |
More information needed. what error? What version did it work on? |
||||
Volhout Guru ![]() Joined: 05/03/2018 Location: NetherlandsPosts: 4854 |
#128 is not equal to &h128 128 decimal equals &h80. V. PicomiteVGA PETSCII ROBOTS |
||||
mace Newbie ![]() Joined: 04/03/2023 Location: FinlandPosts: 7 |
Hellou again. BTW.Thanks good work! -------------------- SetPin gp0,dout :SetPin gp1,dout :SetPin gp2,dout :SetPin gp3,dout SetPin gp4,dout :SetPin gp5,dout :SetPin gp6,dout :SetPin gp7,dout 'sub1 255 'b11111111' Test enabling and disabling this SUB. #255 sub2 128 'b10000000' #128 End Sub sub1 num1 Port(gp0,8)=num1 End Sub Sub sub2 num2 Port(gp0,8)=num2 End Sub -------------------- port output on sub2 when sub1 enabled 'b01111111' is wrong but num2 is OK port output on sub2 when sub1 disabled 'b10000000' is OK and num2 is OK. working on picomiteV5.08.00 not working on picomiteRP2040V6.00.01 Seems that SUB1 causing error on SUB2 port output,but not to variables itself. (Tested with multimeter on port gp0-gp7 |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10067 |
OK, got the issue. Caused by trying to circumvent the RP2350 pin bug - will fix |
||||
Mixtel90![]() Guru ![]() Joined: 05/10/2019 Location: United KingdomPosts: 7504 |
Deleted Edited 2025-02-22 20:47 by Mixtel90 Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
thwill![]() Guru ![]() Joined: 16/09/2019 Location: United KingdomPosts: 4251 |
Hi Peter, I will have time to play this afternoon/tomorrow if you have a new (gamepad) beta for the Picomite VGA USB *RP2040* platform. Best wishes, Tom MMBasic for Linux, Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10067 |
Tom This version has a couple of new features. Use GAMEPAD MONITOR before plugging in a gamepad and when plugged in it will show the before and after report with each change of buttons Use GAMEPAD CONFIGURE vid,pid,i0,c0,i1,c1,i2,c2,i3,c3,i4,c4,i5,c5,i6,c6,i7,c7,i8,c8,i9,c9,i10,c10,i11,c11,i12,c12,i13,c13,i14,c14,i15,c15 to set up a gamepad that isn't supported before plugging it in. The index and code values are as per my previous post. All 34 parameters are mandatory. struct s_Buttons { uint8_t index; // which report element relates to this bit set to 0xFF if bit not used // code can be a bit number 0-7 for positive if pressed // 128-135 for negative if pressed // 64 for value less than 64 if pressed // 192 for value greater than 192 if pressed uint8_t code ; }; struct s_Gamepad { uint16_t vid; uint16_t pid; struct s_Buttons b_R; struct s_Buttons b_START; struct s_Buttons b_HOME; struct s_Buttons b_SELECT; struct s_Buttons b_L; struct s_Buttons b_DOWN; struct s_Buttons b_RIGHT; struct s_Buttons b_UP; struct s_Buttons b_LEFT; struct s_Buttons b_R2; struct s_Buttons b_X; struct s_Buttons b_A; struct s_Buttons b_Y; struct s_Buttons b_B; struct s_Buttons b_L2; struct s_Buttons b_TOUCH; }; PicoMite.zip Edited 2025-02-22 23:29 by matherp |
||||
karlelch![]() Senior Member ![]() Joined: 30/10/2014 Location: GermanyPosts: 220 |
Hi Peter, Tom, I just tested the new version with my robot (it still has a RP2040, which interprets the input of my wireless "fake" XBox controller). This is the output: option list PicoMiteVGA MMBasic USB RP2040 Edition V6.00.02b11 OPTION SERIAL CONSOLE COM2,GP8,GP9 OPTION COLOURCODE ON OPTION KEYBOARD US OPTION CPUSPEED (KHz) 252000 > gamepad monitor > Generic Gamepad Connected on channel 3 > 057E,2009 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00 81,01,00,03,35,00,35,00,31,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00 Generic Gamepad Disconnected > XBox Controller Connected on channel 3 (pid=&H48, vid=&H2F24) > XBox Controller Disconnected > XBox Controller Connected on channel 3 (pid=&H5500, vid=&H11C0) > ?device(gamepad 3, b) 0 > ?device(gamepad 3, b) 4096 > ?device(gamepad 3, b) 1024 > ?device(gamepad 3, b) 2 > `GAMEPAD MONITOR` nicely visualizes the negotiations (?) between the controller and the PicoMite. The controller cycles through some possible configurations before it settles on the configuration that works. Great! Note that the firmware knows my controller (this is a modification I suggested to Peter to use the the code before I know that there is such a variety of "XBox" controllers ...), therefore I think I cannot test `GAMEPAD CONFIGURE`. Thanks and best Thomas |
||||
WhiteWizzard Guru ![]() Joined: 05/04/2013 Location: United KingdomPosts: 2927 |
Can anyone please check b11 with a SPI SSD1306 0.96” OLED display. I am getting ‘mirrored’ characters (as if viewing in a mirror). All other display types I have tried so far work OK; just this type not (and have no other SSD1306’s to try) |
||||
electricat![]() Senior Member ![]() Joined: 30/11/2020 Location: LithuaniaPosts: 295 |
@Peter, HDMI/USB/2350 all 02 betas until 11 It might be on purpose, but still I wonder, why after LIBRARY SAVE, if I use LIBRARY LIST, I see full code listed of SUBs` I just saved. I was sure I will see only sub names as all is compacted and crunched according to v6 manual. Cames out they are not. Edited 2025-02-23 15:44 by electricat My MMBasic 'sand box' |
||||
phil99![]() Guru ![]() Joined: 11/02/2018 Location: AustraliaPosts: 2417 |
** I think the code is tokenised whenever you save a program. |
||||
electricat![]() Senior Member ![]() Joined: 30/11/2020 Location: LithuaniaPosts: 295 |
** I think the code is tokenised whenever you save a program. Got what you say. However it does not seems to me saving all my long-name-variables, so useful at the moment of writing program, is meaningfull somehow in library. I was thinking (comes out mistakenly), library is saved as user unreadable (but perfect for MMBASIC interpreter) blosk of bytes. I was sure, If library is saved tokenized, I would not see any "human readable" varaibles anymore. Names of SUBs and nothing more. I have no any complains in any way, sure. I just use find-replace in notepad++ and shorten all meaninghull long variable names as much as possible to save all precious bytes, then. My MMBasic 'sand box' |
||||
Mixtel90![]() Guru ![]() Joined: 05/10/2019 Location: United KingdomPosts: 7504 |
Code stored in the Library is no longer editable by normal means. LIBRARY SAVE is a one-way process, moving code from RAM to the Library, so always keep your Library as a normal BASIC program and save it first. Perhaps LIBRARY MOVE might have been a better name for the command. AFAIK all legal variable names are preserved, even long ones. To be efficient though, I wouldn't go overboard with name length in the library. It's probably not needed as you should be passing variables to and from the routines, where they can be short internally, and using LOCAL and STATIC variables. It has little to do with available space. Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
javavi![]() Guru ![]() Joined: 01/10/2023 Location: UkrainePosts: 436 |
PicoMite VGA/HDMI RP204/RP2350A v6.00.02b11 Memory VGA RP2040 | HDMI RP2350A RAM: 124K (100%) Total | 228K (100%) Total 95,5K (77%) HEAP | 179,5K (78%) HEAP 28,5K (23%) Free | 48,5K (22%) Free If the entire heap of RAM is filled, then where is the remaining, free part of the memory spent? (Under global variables 256*8=2k and 384*8=3k respectively.) What other way can I use this remaining free RAM? I found this glitch. If you slightly exceed the Heap size limit when creating an array, then this array will be created, but when clearing it, its size will go to the General one and the memory will not be cleared. Example: > memory RAM: 0K ( 0%) 0 Variables 0K ( 0%) General 124K (100%) Free > ? MM.Info(HEAP) 97792 > Dim t$(382+1) > ? MM.Info(HEAP) Error : Not enough Heap memory > clear > memory RAM: 0K ( 0%) 0 Variables 96K (77%) General 28K (23%) Free > Edited 2025-02-23 18:29 by javavi |
||||
Peter63 Regular Member ![]() Joined: 28/07/2017 Location: SwedenPosts: 45 |
From the manual: CLEAR Delete all variables and recover the memory used by them. See ERASE for deleting specific array variables. i tested ERASE t$ , works OK i used version , WebMite MMBasic RP2350A Edition V6.00.01RC9 /Peter63 |
||||
![]() ![]() ![]() ![]() |
![]() |
![]() |
The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |