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.00 release candidates - all versions
Page 12 of 24 | |||||
Author | Message | ||||
Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 6780 |
> option list PicoMiteVGA MMBasic USB Edition 6.00.00RC3 OPTION SERIAL CONSOLE COM2,GP8,GP9 OPTION SYSTEM I2C GP2,GP3 OPTION FLASH SIZE 4194304 OPTION LIBRARY_FLASH_SIZE 2D000 OPTION COLOURCODE ON OPTION KEYBOARD UK OPTION CPUSPEED (KHz) 315000 OPTION SDCARD GP5, GP6, GP7, GP4 OPTION AUDIO GP10,GP11', ON PWM CHANNEL 5 OPTION RTC AUTO ENABLE OPTION F1 Help OPTION F9 run "FEpico" > The usual OPTION KEYBOARD UK but my keyboard is printing hash for pound. In Tera Term it prints $ ok but nothing at all for pound. @ and " are in the correct places. The PC is set for ENG UK I'll update to a new RC later. No point in chasing it on an old one really. . Edited 2024-10-16 17:53 by Mixtel90 Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 9110 |
Your system may be corrupt - try OPTION RESET - but certainly upgrade to RC8 before anything else. What message do you get when you plug in the keyboard. NB: MMbasic does not support the £ character as it doesn't have an ascii code Edited 2024-10-16 18:13 by matherp |
||||
Bleep Guru Joined: 09/01/2022 Location: United KingdomPosts: 509 |
On RC8 one 2040 LCD Picomite & one VGA Picomite, both work correctly using a UK keyboard, changing to US keyboard also works as expected, with @ ~ " in the US positioning. Haven't tried a 2350, but I'd be surprised if they were wrong. Regards Kevin. |
||||
stanleyella Guru Joined: 25/06/2022 Location: United KingdomPosts: 2120 |
option list PicoMiteHDMI MMBasic USB Version 6.00.00RC8 OPTION SERIAL CONSOLE COM2,GP8,GP9 OPTION AUTORUN ON OPTION FLASH SIZE 4194304 OPTION COLOURCODE ON OPTION KEYBOARD UK, 0, 0, 600, 150 OPTION CPUSPEED (KHz) 315000 OPTION DISPLAY 30, 53 OPTION HDMI PINS 1, 3, 7, 5 OPTION SDCARD GP22, GP6, GP7, GP4 OPTION AUDIO GP26,GP27', ON PWM CHANNEL 5 OPTION MODBUFF ENABLE 192 > same as vga usb. " is @ and @ is " olimex board 2350/pico2 numlock is on first boot on all usb so check it on your kb or you type rubbish Edited 2024-10-17 01:38 by stanleyella |
||||
ville56 Regular Member Joined: 08/06/2022 Location: AustriaPosts: 91 |
Peter, DS18B20 is not working anymore with versions after PicoMiteRP2350V6.00.00b9.uf2. No matter what resolution is set in TEMPR START. The result is always 1000. Tnx, Gerald 73 de OE1HGA, Gerald |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 9110 |
Thanks for the report - will fix |
||||
Bleep Guru Joined: 09/01/2022 Location: United KingdomPosts: 509 |
Num lock and Caps lock can both be set permanently to on (1) or off (0) during boot by issuing option command:- Option keyboard UK, 0, 0 They obviously work as normal once booted up in the state you specified. |
||||
stanleyella Guru Joined: 25/06/2022 Location: United KingdomPosts: 2120 |
not usb kb if just option keyboard uk, needs uk,0,0 or numlock on. first boot from new flash it's keyboard us but num lock light on keyboard. got to be keyboard uk,0,0 |
||||
Volhout Guru Joined: 05/03/2018 Location: NetherlandsPosts: 4223 |
Hi Peter, 2040 version 6.0.0RC8 (latest) works well on GEEK. I can open SPI on GP2,3,4 for experiments, while having display and SD card active working. Thank you for implementing this special case. Volhout PicomiteVGA PETSCII ROBOTS |
||||
electricat Senior Member Joined: 30/11/2020 Location: LithuaniaPosts: 161 |
Peter, ex ZX SPECTRUM users do different strange things PicoMiteVGAUSBRP2040V6.00.00RC7 >> ? PEEK(BYTE 16384) or any higher rises : Invalid adress - restarting. (or resetting) and system restarts Edited 2024-10-17 19:19 by electricat |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 9110 |
Thew PicoMite firmware quite deliberately does not attempt to validate peek and poke addresses. If you peek an address that isn't there bad things will happen |
||||
electricat Senior Member Joined: 30/11/2020 Location: LithuaniaPosts: 161 |
Good. I like it |
||||
Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 6780 |
This, I approve of. :) It teaches good programming practice. :) Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
Martin H. Guru Joined: 04/06/2022 Location: GermanyPosts: 1113 |
Maybe I missed it, or forgot... For VGA and HDMI: Is there a way to read the address of the screen and/or framebuffer and then POKE bytes directly into it? Edited 2024-10-17 20:30 by Martin H. 'no comment |
||||
electricat Senior Member Joined: 30/11/2020 Location: LithuaniaPosts: 161 |
Martin, MM.INFO(WRITEBUFF) Returns the address in memory of the current buffer used for drawing commands ? Edited 2024-10-17 20:30 by electricat |
||||
Martin H. Guru Joined: 04/06/2022 Location: GermanyPosts: 1113 |
Gracias that speeds Things up a little, but i have to swap the "Nibbles" of the Byte I poke in,to keep them in the right order Edited 2024-10-17 20:46 by Martin H. 'no comment |
||||
Bleep Guru Joined: 09/01/2022 Location: United KingdomPosts: 509 |
I've just converted a RP2040 VGA Picomite to a RP2350 VGA, as usual I ran Bubble Universe to get a speed comparison, now that things have calmed down. ' Bubble Universe ' '2 nested loops 52 each = 2704 points calculated. 'Pico 2040 @ 378MHz VGA normal 336mS VGA Framebuffer 418mS 'Pico 2350 @ 378MHz VGA normal 193mS VGA Framebuffer 194mS ' 'If modified to 2 Nested loops each 68 =4761 points calculated 'Pico 2350 @ 378MHz VGA normal 361mS VGA Framebuff 361mS ' MODE 2 FRAMEBUFFER create FRAMEBUFFER write f Dim Float u(51),w(51),p,q,t,v=0,x=0,b Dim Integer a,g,i,j,c(51),d(51),e(51),n(51),nn,dd,xc,yc,xs,ys Dim Integer f(13,51),l(13,51),m(26,51),y,z,cc,tt Const r=(2*Pi)/235,k=255,s=50 CLS RGB(black) t=Rnd*10:Math set 2,e() 't=1 nn=Peek(varaddr n()) dd=Peek(varaddr d()) cc=Peek(varaddr c()) 'calculate centre and scale factor xc=MM.HRes\2:yc=MM.VRes\2 xs=MM.HRes/4.5:ys=MM.VRes/4.5 'Oval 'xs=MM.HRes/6:ys=MM.VRes/4 'Circular For g=0 To 51 For a=0 To 51 If g<26 And a<13 Then n(a)=RGB(0,255,0) Else n(a)=RGB(g*5,a*5,128*(g+a<51)) EndIf Next 'a Memory pack nn, Peek(varaddr m(0,g)),52,32 Next 'g Do Inc t,0.015:g=0':Print Timer:Timer =0 For i=50To 255Step 4 z=Peek(varaddr f(0,g)):Memory unpack z,cc,52,16 y=Peek(varaddr l(0,g)):Memory unpack y,dd,52,16 Pixel c(),d(),0'Box c(),d(),e(),e(),0,,0 b=r*i+t For j=0To 51:u(j)=Sin(i+v)+Sin(x):v=Cos(i+v)+Cos(x):x=u(j)+b:w(j)=v:Next Math Scale u(),xs,c():Math Scale w(),ys,d():Math add c(),xc,c():Math Add d(),yc,d() Memory unpack Peek(varaddr m(0,g)),nn,52,32 Pixel c(),d(),n()'Box c(),d(),e(),e(),0,,n() Memory pack cc,z,52,16:Memory pack dd,y,52,16 Inc g Next 'i FRAMEBUFFER copy f,n Loop I've optimised this code until it squeaks. :-) Unless someone has any improvements? The colours are also optimised to give what I think is the best results for a RGB121 colour scheme. It will auto scale and centre, so will work on HDMI and for those that like their Bubble round, there is separate scaling for X and Y. If you like your pixels to be bigger (currently set to 2x2) then swap the 2 "Pixel" lines for "Box" lines, both are in the code, it makes almost no difference to the speed. '2 nested loops 52 each = 2704 points calculated. 'Pico 2040 @ 378MHz VGA normal 336mS VGA Framebuffer 418mS 'Pico 2350 @ 378MHz VGA normal 193mS VGA Framebuffer 194mS ' 'If modified to 2 Nested loops each 68 =4761 points calculated 'Pico 2350 @ 378MHz VGA normal 361mS VGA Framebuff 361mS Firstly I was quite surprised to note that it made almost no difference to the iteration rate whether I used a frame buffer or not, this is presumably down to Peters optimised memcopy function, which is not on the 2040. On the 2350 it is calculating and displaying 2704 points at a rate of 5Hz, with or without a framebuffer for smoothness; compared to 3Hz on a 2040, or 2.5Hz if you use a frame buffer, that comes out at roughly double the speed, if using the frame buffer. For fun I also tried increasing the number of points calculated to 4761, (increased the loop counts to 68) so not quite double and it was still managing a tad under 3Hz, I actually prefer the fewer points, less crowded. From this very limited test it would appear, that for graphics stuff, particularly if using the Framebuffer you get close to a doubling in speed, for the same clock speed. Obviously the HDMI will be a bit slower because of it's fixed lower clock and LCD you are still limited by their update speed, even though you might be able to overclock to 420MHz, mine will only do 416MHz :-(. Regards, Kevin. |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 9110 |
Bubble Universe running on a 16-bit parallel SSD1963 https://youtu.be/FwHqZ2ZE3yQ |
||||
stanleyella Guru Joined: 25/06/2022 Location: United KingdomPosts: 2120 |
looks good hdmi and 2350 ili8341 version 5 is circular not oblate spheroid and hdmi seems same speed. not moaning just same monitor 'circle bubble ' Bubble Universe mode 2 option autorun on Dim Float u,a,p,q,t,v=0, x=0 Dim Integer g,b,i,j,c(41),d(41),e(41),n(41) Dim Integer f(41,41),l(41,41),m(41,41) Const w=MM.HRes/2, h=MM.VRes/2 Const r=(2*Pi)/235, o=h/2 FRAMEBUFFER CREATE F FRAMEBUFFER WRITE f CLS RGB(black)':Backlight 95 t=Rnd*10:math set 2,e()'Math set 3,e() For g=0 to 41 for b=0 to 41 m(g,b)=rgb(g*6,b*6,128*(g+b>30)*(g+b<60)) Next:Next Do Inc t,0.025:g=0:Timer =0 For i=50 To 255 Step 5 b=0 a=r*i Math Slice f(),g,,c() Math Slice l(),g,,d() Box c(),d(),e(),e(),0,,0 For j=50 To 255 Step 5 p=i+v:q=a+x u=Sin(p)+Sin(q):v=Cos(p)+Cos(q) x=u+t:c(b)=w+u*o:d(b)=h+v*o Inc b Next Math Slice m(),g,,n() 'Box c(),d(),e(),e(),0,,n() pixel c(),d(),n() Math Insert f(),g,,c() Math Insert l(),g,,d() Inc g Next i FRAMEBUFFER COPY f,N 'Print Timer Loop Edited 2024-10-18 05:10 by stanleyella |
||||
Volhout Guru Joined: 05/03/2018 Location: NetherlandsPosts: 4223 |
@Peter, Using DMA now on the 2350? Or is the the M33 core that has a block move instruction.? Just Curious.... Volhout PicomiteVGA PETSCII ROBOTS |
||||
Page 12 of 24 |
Print this page |