Raspberry Pi 3: 320x256 (32 bpp) screen mode not possible?
David Williams (2619) 97 posts |
I recently bought a Raspberry Pi 3 and downloaded the latest RC15 SD card image for it. I tried running some old programs of mine, most of which do work as expected, except the ones which attempt to set up a 320×256 32 bpp screen mode. I use the following bit of code (hopefully without any transcription errors!) to set up the desired screen mode:
I’m quite certain that this worked on the Raspberry Pi 2, so any ideas as to why it doesn’t on the Raspberry Pi 3? David. |
David Pitt (3386) 1248 posts |
Either ensure there is a 320×256 entry in the MDF or install the anymode module in PreDesk. The code example works here on a RPi3. (perhaps there should be a bounty to get Hopper to work in a larger screen.) |
David Williams (2619) 97 posts |
Thank you, David. Hopper didn’t run at all for me on my new RPi3 because the required screen mode couldn’t be set up. Rather disappointing as it was a completely fresh install of RC15 on a brand new RPi3 connected to a HDMI monitor. As for the MDF, I know next-to-nothing about that stuff, so what I think I may do is try to find the (presumably existing) definition in the edition of RISC OS Pi that I have on my Raspberry Pi 2 and use that. AnyMode didn’t work the first and only time I tried it earlier today, although admittedly I didn’t install it in PreDesk as you advised (lack of experience with this stuff!), but I simply double-clicked the module and confirmed that it was included in the Modules list. I’ll try again tomorrow. David. |
Jon Abbott (1421) 2599 posts |
You also need to create cmdline.txt in the FAT boot partition with disable_mode_changes in it, to allow the Pi upscaler to work and set a static resolution in config.txt |
David Williams (2619) 97 posts |
Thanks Jon. I think I can handle the cmdline.txt part, but unsure about setting a static resolution in config.txt. I wonder why the ‘as-standard’ support for 320×256×32 screen modes was apparently removed from RC15 in the first place. For instance, my Bugs game uses it, and that worked ‘straight out of the box’ on my Raspberry Pi 2 under RC14. |
David Feugey (2125) 2687 posts |
It isn’t. With RC14, you use a static mode (for example 1920×1080) and the GPU upscaler to simulate all the other modes. With RC15, RISC OS asks the monitor to switch to the required physical mode. That’s your screen that have a problem with 320×256 mode :) We tweak from Jon will revert RISC OS to the old behaviour. |
David Williams (2619) 97 posts |
> With RC14, you use a static mode (for example 1920×1080) and the GPU upscaler Ah ok, understood. Thanks. |
David Pitt (3386) 1248 posts |
FWIW that step is not required on my RPi3 to get Hopper to run, but the disable_mode_changes bit certainly is. There are circumstances where a mode does need to be defined in config/txt. For example left to its own devices my RPi3 connects to the AOC monitor at 1920×1080 using EDID, which AIUI is the monitor’s default. To get the RPi3 to light up the AOC at its full resolution of 2560×1440 then in config/txt EDID needs disabling and a mode specifying. HTH. |
David Pitt (3386) 1248 posts |
Chris Hall’s |