Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 04:21 26 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 V5.09.00 betas: Sorting out SPRITE and BLIT + USB variants

     Page 8 of 9    
Author Message
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9114
Posted: 08:29am 07 Mar 2024
Copy link to clipboard 
Print this post

Deleted a print line by mistake so LIST COMMANDS broken will fix in next beta. No other impacts so b6 should still be good to use
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9114
Posted: 09:39am 07 Mar 2024
Copy link to clipboard 
Print this post

I've updated b6 to fix LIST COMMANDS, also fixes bug when FRAMEBUFFER COPY is used more than once on 480x320 SPI displays (Kevin)
 
Bleep
Guru

Joined: 09/01/2022
Location: United Kingdom
Posts: 509
Posted: 10:22am 07 Mar 2024
Copy link to clipboard 
Print this post

Hi Peter,
I can confirm 480x320 is now working ok on a ILI9481IPS LCD.
Thanks, Kevin.
 
JanVolk
Senior Member

Joined: 28/01/2023
Location: Netherlands
Posts: 144
Posted: 05:26pm 07 Mar 2024
Copy link to clipboard 
Print this post

List Commands is now correct.
Has TOUCH(X) and TOUCH(Y) function for PicoMite MMBasic Version 5.09.00b6 and PicoMite MMBasic USB Edition 5.09.00b6 been given a different function because it is no longer available and I have not read anything about it?

Jan
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9114
Posted: 06:22pm 07 Mar 2024
Copy link to clipboard 
Print this post

Touch function fixed now if you re-download
 
Hans

Senior Member

Joined: 18/10/2022
Location: Canada
Posts: 116
Posted: 04:34am 09 Mar 2024
Copy link to clipboard 
Print this post

Hi All;

Just trying 5.09.00b6 and getting an error on web transmit page command.
The error happens as soon as you try to open the web site with the browser.



Worked in 5.08.00 did not try this with other betas

Here is the error line;



Got the same error with the example from the manual.

Suggestions or comments.

Thanks,

Hans ...
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6098
Posted: 05:02am 09 Mar 2024
Copy link to clipboard 
Print this post

Works for me.
There was a problem with beta6 when it was first uploaded so try downloading again.

Jim
VK7JH
MMedit   MMBasic Help
 
Hans

Senior Member

Joined: 18/10/2022
Location: Canada
Posts: 116
Posted: 03:41pm 09 Mar 2024
Copy link to clipboard 
Print this post

  TassyJim said  Works for me.
There was a problem with beta6 when it was first uploaded so try downloading again.

Jim


Will do thanks.

Hans …
 
karlelch

Senior Member

Joined: 30/10/2014
Location: Germany
Posts: 172
Posted: 09:48pm 09 Mar 2024
Copy link to clipboard 
Print this post

Hi Peter,

I wanted to make a suggestion regarding USB devices. I noted in the source code that for gamepads you are checking for a selection of HID vendor/device codes. Compatible game pads from other companies might work but will not be recognised. My suggestion would be the following:

- to print vendor and device code when a USB device is detected, even if it is unknown; this would allow the user to easily get the codes of their devices
- to add an option that introduces a gamepad to the firmware (e.g., OPTION GAMEPAD PS4/PS4, vendorID, deviceID). Depending on the parameter PS4 or PS3, the vendor/device code will then be accepted as a respective type of gamepad.

Of course, you cannot check the compatibility of all devices, but this would here be the responsibility of the user, to know what (s)he is doing when setting this option.

Best
Thomas
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 6786
Posted: 09:01am 10 Mar 2024
Copy link to clipboard 
Print this post

If the so-called "compatible" gamepads from other vendors are producing different codes to the official gamepads then they aren't compatible and shouldn't be supported. They are devices of their own.

It *could* be that the vendor code isn't checked on the actual game device, but I doubt it. It wouldn't be in the manufacturers interest. I suspect that "compatible" gamepads must be providing the game device with the correct code otherwise they won't be recognised anyway.
Mick

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

Senior Member

Joined: 30/10/2014
Location: Germany
Posts: 172
Posted: 11:26am 10 Mar 2024
Copy link to clipboard 
Print this post

  Mixtel90 said  If the so-called "compatible" gamepads from other vendors are producing different codes to the official gamepads then they aren't compatible and shouldn't be supported. They are devices of their own.

It *could* be that the vendor code isn't checked on the actual game device, but I doubt it. It wouldn't be in the manufacturers interest. I suspect that "compatible" gamepads must be providing the game device with the correct code otherwise they won't be recognised anyway.


Hi Mixtel90,

My suggestion was triggered by seeing the function that currently checks if a PS4 controller is connected:
static inline bool is_sony_ds4(uint8_t dev_addr)
{
 uint16_t vid, pid;
 tuh_vid_pid_get(dev_addr, &vid, &pid);
 return ( (vid == 0x054c && (pid == 0x09cc || pid == 0x05c4)) // Sony DualShock4
          || (vid == 0x0f0d && pid == 0x005e)                 // Hori FC4
          || (vid == 0x0f0d && pid == 0x00ee)                 // Hori PS4 Mini (PS4-099U)
          || (vid == 0x1f4f && pid == 0x1002)                 // ASW GG xrd controller
        );
}

Apparently, besides the original Dualshock, a number of presumably compatible controllers from other companies (see different vendor IDs, and for one vender, also different devices) are recognized, too. I assume this selection does not reflect systematic tests but rather what Peter had lying around ...

Hence, my proposal

Best
Thomas
Edited 2024-03-10 21:27 by karlelch
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4228
Posted: 04:32pm 10 Mar 2024
Copy link to clipboard 
Print this post

Hi Peter,

Following (attached) program works on V050800, but not on V050900b6. VGA platform.
I know that SPRITE and BLIT have changed, but this program uses completely valid SPRITE READ (read from screen to sprite buffer) and SPRITE WRITE (from buffer to screen). In the first post of this thread you indicate SPRITE READ and SPRITE WRITE are still valid commands.

Regardless, the SPRITE WRITE mentions "buffer not in use" where all buffers where read..

stanley_lander.zip


This is not my program, but in an effort to run it I stumbled upon this issue.

Volhout
Edited 2024-03-11 03:21 by Volhout
PicomiteVGA PETSCII ROBOTS
 
stanleyella

Guru

Joined: 25/06/2022
Location: United Kingdom
Posts: 2127
Posted: 08:56pm 10 Mar 2024
Copy link to clipboard 
Print this post

works on v5.09.00b5 usb vga
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4228
Posted: 07:31am 11 Mar 2024
Copy link to clipboard 
Print this post

Hi Stanley, Peter,

I can confirm the program (2 posts up) works on V05.08.00, and V05.09.00b3 and V05.09.00b4.
The program does not work on V05.09.00b6
The error (listed above) is that sprites are not actually read with the SPRITE READ command -or- the sprite is read and but the buffer not registered.

Regards,
Edited 2024-03-11 17:32 by Volhout
PicomiteVGA PETSCII ROBOTS
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9114
Posted: 08:36am 11 Mar 2024
Copy link to clipboard 
Print this post

The problem is caused by the comment above the call to the subroutine sprites. If you remove the space before the ' character then it will work. I'll fix this in the next beta which may be some time
In the meantime a line with just a ' comment character must have this as the first character on the line
Edited 2024-03-11 18:51 by matherp
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4228
Posted: 08:54am 11 Mar 2024
Copy link to clipboard 
Print this post

Wauw,

That is a nasty one.... Good find Peter !!
The "indenting" of comments is autoformat in MMEdit. So special care is needed.

Volhout
Edited 2024-03-11 19:00 by Volhout
PicomiteVGA PETSCII ROBOTS
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4228
Posted: 11:51am 11 Mar 2024
Copy link to clipboard 
Print this post

Hi Peter,

I have a question how the internals of PicoMite work with the USB port.
This is about the standard VGA (not VGA USB).

I observe something as if the USB (CDC) port is "polled" several times per second, and that each poll consumes roughly 2-3ms. When I close the CDC port (close teraterm), but leave the picomite running, I do not see the 2-3ms delays. Maybe they exist, but are much  shorter.

The baudrate setting does not impact the 2-3ms
The amount of data does not seem to have much influence. As if the 2-3ms is used mainly for CDC handling (maybe opening and closing the port after each poll).

I know you spend lots of time to make this robust, and will not be eager to touch this part of the code, but my question is: is there anything you think can minimize the 2-3ms.  

I can work around it by closing the CDC port at PC side. So NO is a perfectly good answer.

Volhout
PicomiteVGA PETSCII ROBOTS
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9114
Posted: 12:05pm 11 Mar 2024
Copy link to clipboard 
Print this post

You need to give me more information and preferably something that demonstrates what you think you are seeing. This needs to be on a standard PicoMite rather than the VGA version as I don't have access to a VGA system for the next two weeks. There is no difference between the PicoMite and PicoMiteVGA in this area
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4228
Posted: 12:35pm 11 Mar 2024
Copy link to clipboard 
Print this post

Hi Peter,

I will work on it.

Volhout
PicomiteVGA PETSCII ROBOTS
 
stanleyella

Guru

Joined: 25/06/2022
Location: United Kingdom
Posts: 2127
Posted: 02:47pm 11 Mar 2024
Copy link to clipboard 
Print this post

  matherp said  The problem is caused by the comment above the call to the subroutine sprites. If you remove the space before the ' character then it will work. I'll fix this in the next beta which may be some time
In the meantime a line with just a ' comment character must have this as the first character on the line

it's a mmedit problem or copy/pasting to the forum?
pasting the code back from the forum to mmedit and flashing from, would it work?
 
     Page 8 of 9    
Print this page
© JAQ Software 2024