ColinPitrat/caprice32

Running on Pi4 with DRM/KMS

2play opened this issue · 11 comments

2play commented

@ColinPitrat
I compiled binary with no gl, with but still runs at top left screen side.
Fullscreen does not work.

I've tested the fork capriceRPI that is based on
Caprice32 4.1.0 and runs full screen.

And if you dont mind asking, autoload rom feature ?

For the graphic issue, you'd need to provide more details on your setup.

One possibility is to modify your cap32.cfg to change the scr_width and scr_height params. This is the resolution that Caprice32 is asking when running fullscreen. You can try something closer to the CPC native resolution (384x270).

Otherwise, I suspect the issue & the solution is somewhere between SDL 1.2 and your setup.
You can try playing with some environments variables: https://www.libsdl.org/release/SDL-1.2.15/docs/html/sdlenvvars.html
Including SDL_VIDEO_CENTERED which may not solve your problem fully but at least make it look better.

For autoload, it depends what you mean.
If you mean not having to load a device through the menu, you can pass a disk, tape, snapshot or cartridge on the command line for it to be automatically loaded:

./cap32 disk/dummy.dsk

If you mean automatically typing 'run"dummy' you can do it from the command line:

./cap32 disk/dummy.dsk -a 'run"dummy'

If you mean automatically running the right command for a given disk/tape, it's not available. It's a bit tricky to provide as it would require looking at the content of the disk/tape when starting to identify which command to run. There are cases where it would be complex to determine the right command (typically if there are multiple files on the disk, in particular multiple .bas or bin files).

2play commented

first of all I want to thank you for the quick reply @ColinPitrat
much appreciated.
About autoboot/autorun i have posted in #38 as I believe it more relevant.

About the video Ill check but since pi4 now we use FKMS and most emus are being updated for DRM/KMS support I just wanted to bring it to your attention.

Emu is running but its at native on top left corner and wont change even from cfg to fullscreen
This is happening to many X11 based emus.

I will test above suggestion if they can work on my pi4 setup with FKMS

I was wondering if there is anything can be merged from here https://github.com/KaosOverride/CapriceRPI/tree/master/src
It uses no borders fullscreen 1980x1080 scaling.

2play commented

@ColinPitrat
Im not an expert to compile with the SDL_VIDEO_CENTERED or how to use the SDL_envvars

But all i managed to center
with below settings changed. But that all, being centered not full screen.

scr_width=1920
scr_height=1080
scr_window=0

It's an environment variable not a compilation option. But it seems you won't need it.

Try with

scr_width=800
scr_height=600
scr_style=1

I think the result shouldn't be too bad.

2play commented

@ColinPitrat With the original it does not work unfo
Best things so far is

scr_width=1920
scr_height=1080
scr_window=0
scr_style=5

To have it centered.
option 11 does not boot at all from cli.

havent tested this (ill try after i take a backup)
export SDL1_VIDEODRIVER="dispmanx"

What happens when you reduce the resolution (e.g scr_width=800 and scr_height=600)?
What do you mean by option 11? Is it scr_style=11? If so it's OpenGL driver, but AFAIU you compiled without it.

2play commented

What happens when you reduce the resolution (e.g scr_width=800 and scr_height=600)?
What do you mean by option 11? Is it scr_style=11? If so it's OpenGL driver, but AFAIU you compiled without it.

As I can see you have set 800x600 as the default in the cap32.cfg
This is what initially had but goes on the top left side.
With settings above finally I got the centered but no fullscreen.

Yes by option 11 I tried the scr_style=11
When I compiled I havent used the WITHOUT_GL=TRUE so I belive GL is enabled and also shows when I do the -V to get the version it says with GL with IPF.
Plus now on pi4 fKMS is used to have the acceleration.

To use the src_style=11 do I need anything extra ?

Thank you in advance.

Sorry I missed your answer. You don't need anything extra (apart from a working OpenGL setup).
What error do you have when using scr_style=11? I'm surprised it doesn't work. Does running glxgears work? (to test your OpenGL setup)

Apart from this, I don't have any other suggestion for improving your experience, sorry :-/

You may have a better experience with the SDL2 version (#185).
I plan to merge it soon, but you can already try it on the sdl2 branch.

Any news on this issue since the move to SDL2?

2play commented

Hi @ColinPitrat , unfo i havent had the chance to play around/test fro some time now. I focused on some boards I needed to create a new default base and keeping up with a baby and work kept me away.
I have these bookmarked though as I wanted to revisit time allowed