Screen MODEs on BB
|
Sorry if this has been covered before or is “obvious” to computer engineer types but I don’t understand why on my Beagleboard when I type, in BBC Basic, MODE 10, which was traditionally a 256 colour mode 160×256 pixel screen, a two-colour mode is subsituted. I get the bit about resolution substitution (e.g. a 640×256 substituion for 320×256 when going into MODE 1 as it depends on your monitor file setup. But not the colour depth substitution. Could anyone kindly supply (or point to) guidance? Also I recall on the RiscPC you could use “Mode strings” such as MODE “X320 Y256 C16”. Is this method of selecting screen modes still supported? thanks. |
|
|
There is definitely something slightly funny going on, I’ve known about it for a while but haven’t found the time to investigate. If I select mode 28 on my BB I end up with mode 0 (I think), and mode 21 selects mode 28. If I use a different MDF it’s not an issue, so it must be something to do with how the OS decides if an MDF entry is a match for a numbered mode, and the process the kernel goes through when it fails to find a match.
Yes, that’s still supported. |
|
|
Hi Jeffrey
Hi Jeffrey 1) To get the correct resolution outside of the desktop you have to manually alter the display setting inside the desktop – correct? Or is there a way of doing it without inconveniencing the user’s orignal settings in the desktop? 2) More worryingly it is selecting a 256 colour mode when I asked for a 16 colour one (C16) Advice please. Thanks. |
|
|
Not sure about the mode strings but over on the Armini support list Andrew Rawnsley has mentioned possible inclusion of “old school modes” in monitor definition files. Must admit it would be useful to be able to predict what resolution/colour depth you are going to get for a particular MODE number since from what you are saying they don’t seem to correspond to previous versions of RISC OS. |
|
|
Look at this GetMonInfo |
|
|
Thanks Raik – unfortunately not much use here. Some of the settings in the MDF generated by !GetMonInfo result in my monitor flashing up an “out of range” message. At least with the current settings it will display a screen mode, even if it is of an unpredictable resolution/colour depth. |
|
|
I’ve now fixed the bug that was stopping some modes from working properly on the BB (and PB). The fix should show up in tomorrow’s ROMs. FWIW, the sequence RISC OS uses when it’s asked for a numbered mode is as follows:
The above rules will be slightly different depending on which monitor type you’ve got selected (e.g. it’ll default to mode 0 instead of 25/26/27/28 if monitor type 7 isn’t in use) For non-numbered modes the process is a lot simpler – if the mode you ask for isn’t found (or isn’t supported) it will refuse to change mode. So, long story short, as long as your MDF has an entry at the right resolution, and that entry doesn’t violate these rules which the OMAP video driver checks for, you should now get the right mode on your monitor. |
|
|
Excellent, thank you Jeffrey. I have re-flashed my Beagleboard with the latest Rom image and all the MODEs seem to work now. |