Re: TV Out question

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]<

 



Switch to 360x240 works, but it is only scaled to 640x480.

I read that it should be possible to set particular TV chipset registers and there's nvtv utility for that: https://manpages.ubuntu.com/manpages/focal/man1/nvtv.1x.html

I guess it will work only with nvidia driver, which in NV40 case is legacy 304 series, which means compiling custom kernel and patching it on Ubuntu 18: http://blog.schmorp.de/2019-08-03-nvidia-legacy-304-patch-for-post-50-linux-kernels.html

It would be great if your nuvo can set these tv chipset registers as well.

I collect retro hardware and I'm retrogamer (born 1987). There are significant costs, most retrogamers buy 500 Eur video converter because they want to output 240p TV resolution.

Currently only Calamity's CRT EmuDriver works and that one is for AMD GPU's only.

For NVIDIA you need Linux kernel with 15Khz fix (which I have): https://github.com/D0023R/linux_kernel_15khz and then you can output 15khz 240P over VGA, DVI-I or even HDMI. Then you apply some kind of adapter, for example HDMI to VGA or DVI to VGA. Then you can use VGA to BNC cable and use BNC directly in TV or you can buy RCA BNC connector and go from HDMI to RCA and it will output directly 240p using custom made modelines and enabling either custom unsigned AMD driver or having Linux kernel with 15khz patch.

Controlling TV out chipset directly would be the next level and it would be great if it could be achieved.

On Fri, Nov 4, 2022 at 6:29 PM Lukas Satin <luke.satin@xxxxxxxxx> wrote:
Yes, switching to 360x240 works! Interesting...it is definitely a step forward while still not satisfying result.

On Fri, Nov 4, 2022 at 6:13 PM Lukas Satin <luke.satin@xxxxxxxxx> wrote:
1) Some people here say: " Scrap everything already stated. The old Nvidia cards with the mini DIN analog video out can ONLY do 480i output. 240p is not an option."


But I guess that is due to using Windows and NVIDIA driver.

someone says: "240p doesn't actually exist, it's really a trick that uses a non-standard 480i signal to cause the alternating fields line up the scanlines instead of offsetting them. "

So I guess it could be done by sending non-standard 480i signal. 

On Fri, Nov 4, 2022 at 6:06 PM Ilia Mirkin <imirkin@xxxxxxxxxxxx> wrote:
On Fri, Nov 4, 2022 at 12:56 PM Lukas Satin <luke.satin@xxxxxxxxx> wrote:
>
> Hello, sorry fo the typos. Wanted to catch you before the weekend, to get some hints for upcoming work.
>
> I'm back at PC.
>
> Does your driver support switching to 240p in NTSC and 288p in PAL on the go via xrandr, for example?
>
> If not, can I find some relevant part of code in your repository where to implement that?

https://cgit.freedesktop.org/drm/drm/tree/drivers/gpu/drm/nouveau/dispnv04/tvnv17.c
+ tvmodesnv17.c

There's definitely a lot of hard-coding going on. A lot of the
pre-nv50 display code is from This code is (likely) originally from
https://cgit.freedesktop.org/xorg/driver/xf86-video-nv/tree/src but I
can't immediately find the TV code in there. But perhaps it's there
anyways, I only spent about 30s looking for it.

I don't remember by now, but there _might_ be a kms property (which
should get piped through to xrandr properties) which allows you to
change this live?

> Some info I found regarding 240p and that it is a part of NTSC: https://en.wikipedia.org/wiki/Low-definition_television
>
> TV with S-Video mostly supports 480i and 240p as well. So the current issue is outputting that via TV out.
>
> My current configuration looks like this:
> TV-1 connected 240x224+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
>    720x480       59.94 +
>    1024x768      59.94
>    800x600       59.94
>    720x576       59.94
>    640x480       59.94
>    400x300       59.94
>    320x240       59.93
>    320x200       59.94
>    768x576       50.00
>    360x200       60.00
>    360x240       60.00
>    640x240       60.00
>    SR-1_240x224@60.10  60.10*
>
> I see I have created 240x224 (I need to fix that), but even 320x240 does not work. It always stays at 480i.

Did you try 360x240? I have no idea though, sorry. I was just happy
when the S-Video worked at all. It could require further modifications
to how we configure those registers.

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux