Dealing with games that do mode-switching between scanlines.

NewHome Forums OSSC, OSSC Pro and DExx-vd isl OSSC – Discussion and support Dealing with games that do mode-switching between scanlines.

Viewing 6 posts - 1 through 6 (of 6 total)
  • Author
    Posts
  • #55849
    Lum
    Participant

    I’m using an OSSC with a BBC Master 128 via RGB SCART. For the most part it works pretty well as all graphics modes are 288p but I have a couple of games that are utterly confusing the OSSC.
    The most problematic game is also the most iconic game on this platform – Elite. This game used a trick where it would set the computer to a 320×256 2 colour video mode (MODE 4) for the view out of your cockpit and then about 3/4 of the way through rendering the display switch to 160×256 4 colour (MODE 5) for the instrument panel, then flip back to MODE 4 during the vertical blank. These are both 288p50 video modes and worked fine on a CRT but they really confuse the OSSC. The detected video mode on the LCD panel is changing so fast you can’t even read it, but it’s looking like at some point it’s detecting it as NTSCish for some reason (491i 63Hz).

    The other game that won’t display is another iconic BBC game. Repton 3, and I honestly don’t know why as it doesn’t do any particular video trickery, possibly a bit of blanking around the edges for smooth scrolling, I don’t actually know why this one is failing.

    Is there a way to force the OSSC to interpret the video as 288p and not attempt to autodetect it?

    #55850
    BuckoA51
    Keymaster

    Unfortunately this kind of trickery trips up a lot of scalers though I wasn’t aware Elite did this. I will have to try with the 5x see if that can handle it.

    What happens with Repton 3? I thought I’d had that one working to be honest but it’s been a while maybe I’m getting confused.

    #55851
    marqs
    Participant

    You can try freezing ossc mode detection by e.g. opening profile load menu via remote hotkey (but without selecting any), but I’m not sure if that helps since most likely the H-PLL in the analog frontend loses lock if hsync position starts to jitter during the frame due to mode changes.

    If you happen to have DE10-Nano, you could also consider DExx-vd_isl expansion card which should have some stock. Perhaps @BuckoA51 can try if that can handle BBC Master when framelock is disabled.

    #55852
    Lum
    Participant

    Oooh, thanks for the pointer, simply opening the OSD menu and then closing it again is enough to get both Elite and Repton3 to work, although the OSSC now misdetects it at 625i instead of 312p, which is mildly irritating for capture/streaming purposes as I’d have to switch deinterlacing algorithms whenever the beeb switches between MODE7 and the other modes.

    I don’t have a DE10-Nano, just an OSSC 1.7

    I guess what I’m after at this point is just a way to override the autodetection for problematic games.

    Also the mode switching is pretty obvious if you compare the “(C) Acornsoft 1984” text to the graphics immediately below as well as the jank on the dividing line between cockpit and panel flickering between white and yellow. I guess further complicated by the fact I’m running it on a BBC Master with the BBC Micro OS 1.2 ROM loaded.

    Still no idea what Repton 3 is doing though! 😀

    Title screen from Elite on the BBC Micro

    • This reply was modified 1 week, 6 days ago by Lum.
    #55859
    marqs
    Participant

    The 625i readout is what ADC detects but does not mean the signal gets processed as interlaced if it’s not in reality. Once the signal is locked, you can check more accurate details from FPGA by pressing INFO on remote.

    #55860
    Lum
    Participant

    Mode Preset: 576i
    Imode (FPGA) 625-i* 49.97Hz

    Plus really obvious interlace artifacts as shown in the screenshot above.

    If there was just a way to force that mode preset to 288p

Viewing 6 posts - 1 through 6 (of 6 total)
  • You must be logged in to reply to this topic.