Releases: IanSB/RGBtoHDMI
20240213_e630d36f Release
This is a stable release and is also available on Hoglet's github
Format or wipe the SD card before upgrading, do not overwrite as that can result in profile and palette errors.
It consolidates all the recent work from Beta59 to Beta64 (inclusive) summarised below:
Major new features:
Create Custom Profile menu
This makes it much easier to create profiles for unsupported systems
There is built in help in the info menu and also in the menu itself
(This will eventually be expanded upon in the wiki)
Auto detect if the monitor supports HDMI protocols or DVI protocols and switch automatically.
This was previously a manual only setting in the main menu which defaulted to DVI for all monitors
This usually worked but would produce wrong colours on some capture devices and 4K monitors
Also if a HDMI audio embedder was used, that would normally only work in HDMI mode.
The auto detection can be disabled and a manual selection made in the settings menu
Please report any issues such as blank screens if your monitor worked with previous versions.
Add 4K @ 50/60Hz support for Pi 4 only.
This will be auto detected if a Pi 4 is plugged into a 4K monitor
Other Pi models only support 4K @25/30Hz so they will default to 1080p @50/60Hz when plugged into a 4K monitor but you can still manually select the 4K @25/30Hz resolution.
Other changes:
Add PAL artifact (colour blending) on Commodore 64 & 128 (use long press of SW2 to toggle)
Add frame drop mode for 25/30Hz motion.
Add some new genlock options
Add quickstart help menu and rename info menu to info & help
Add Microtan 65 profile
Add Samsumg 400 line CGA card profile
Add Apple IIe Taxan RGB profile
Add Mac Plus profile
Add Mac Radius portrait screen profile
Add Ti presenter profiles (NTSC only).
Add Mac SE profile
Add Spectrum 48K VLA82 profile
Add Triumph Adler PC8 profile
Improve support for Commodore 128 80 column (CGA type) mode with profiles for VDCmania demos
Add experimental support for Amiga ECS screen modes 1280x256 & 640x480 productivity (CPLD boards only)
Note the 640x256 and 1280x256 cannot be auto selected and must be toggled with SW3
Add various profiles using the lumacode protocol:
Commodore 64
Commodore 128 (40 column mode)
Commodore VIC20
Atari 800
Atari 5200
Atari 2600
Spectrum 48K
TI-99/4a (TMS99XX)
ColecoVision (TMS99XX)
MSX1 (TMS99XX)
Plus many others using the TMS99XX chip:
Fix some issues with a low cost HDMI audio embedded found on Ali Express
Fix some scaling bugs
Fix profile autoswitch not working with 4K monitors
Fix some issues with sync detection and measurement
Fix Apple II+ internal pickup not auto switching NTSC artifacts
Fix GPIO pull up/down on Pi 4
Increase some settle times on GPIO reading
Various minor bug fixes and cosmetic improvements.
Beta 64 test release
Beta 64 test release
Fix monitor power up issue
Fix some scaling issues
Remove obsolete profiles
Beta 63 test release
Beta 63 test release
Fix issues with low cost HDMI audio embedder
Add some lumacode profiles including for TMS9918A / TMS9928A / TMS9929A based systems like the TI-99/4a
Add support for 15Khz HDMI output (720x288 & 720x240)
Update Commodore PET profiles
Add quickstart help
Fix favourites bug
Beta 62 test release
Beta 62 test release
Changes:
Fix some issues with sync detection and measurement
Fix GPIO pull up/down on Pi 4
Add some new genlock options
Increase some settle times on GPIO reading
Add Commodore 64 VIC II R56A sub-profile
Add VIC20 NTSC lumacode sub-profile
Add Triumph Adler PC8 profile
Add alternative RGB lumacode profiles.
Beta 61 test release
Beta 61 test release
Major new features:
-
A "Create Custom Profile" menu
This makes it much easier to create profiles for unsupported systems
There is built in help in the info menu and also in the menu itself
(This will eventually be expanded upon in the wiki) -
Auto detect if the monitor supports HDMI protocols or DVI protocols and switch automatically.
This was previously a manual only setting in the main menu which defaulted to DVI for all monitors
This usually worked but would produce wrong colours on some capture devices and 4K monitors which didn't support the old DVI protocol.
Also if a HDMI audio embedder was used, that would normally only work in HDMI mode.
The auto detection can be disabled and a manual selection made in the settings menu
Please report any issues such as blank screens if your monitor worked with previous versions. -
Add 4K @ 50/60Hz support for Pi 4 only.
This will be auto detected if a Pi 4 is plugged into a 4K monitor
Other Pi models only support 4K @25/30Hz so they will default to 1080p @50/60Hz when plugged into a 4K monitor but you can still manually select the 4K @25/30Hz resolution.
Other changes:
Fix scalines not working on c64.
Add support for PAL artifacts on c0pperdragon c64 YUV adapter.
Add variable level scanline support to Atari 800 lumacode.
Fix flashing screen issues with Atari 2600.
Add frame drop mode for 25/30Hz motion.
Add Ti presenter profiles (NTSC only).
Support Atari 800 hybrid configurations (swapped PAL/NTSC Antics etc)
Fix dragon profile
Various minor bug fixes and cosmetic improvements.
Beta60 test release
Beta60 test release
Changes:
Fix Apple II+ internal pickup not auto switching NTSC artifacts
Add Mac SE profile
Add Spectrum 48K VLA82 profile
Fix scanlines not working on Atari 800 lumacode (note black scanlines only at the moment)
Add Atari 2600 lumacode profile
Update various profiles
Beta59 test release
Beta59 test release
Changes:
Improve support for Commodore 128 80 column (CGA type) mode with profiles for VDCmania demos
Add Commodore 128 lumacode profile
Add support for Atari 800 lumacode and Improve Atari palette generation
Add support for VIC20 lumacode (50Hz only at the moment)
Add PAL artifact (colour blending) on Commodore 64 & 128 lumacode (use long press of SW2 to toggle)
Add Microtan 65 profile
Add Samsumg 400 line CGA card profile
Add Apple IIe Taxan RGB profile
Add Mac Plus profile
Add Mac Radius portrait screen profile
Fix some scaling bugs
Fix profile autoswitch not working with 4K monitors
Add experimental support for Amiga ECS screen modes 1280x256 & 640x480 productivity (CPLD boards only)
Note the 640x256 and 1280x256 cannot be auto selected and must be toggled with SW3
Update various existing profiles.
20230517_eb620884 Release
Introduction
This is a stable release (from the master branch) and is also available on hoglet's github.
(the previous stable release was 21st December 2022)
New Features
This release has a major new feature, a "Select Profile" menu option that makes changing profile a lot easier.
After selecting the option you are presented with a list of manufacturers and after choosing one you are then presented with all profiles for that manufacturer, including profiles for the other CPLD versions as well as the current CPLD.
Profiles that require a different CPLD firmware are prefixed by (BBC), (RGB) or (YUV) as appropriate.
Selecting a profile with no prefix will immediately switch to that profile
Selecting a profile with a prefix will reprogram the CPLD, reboot and select that profile.
There is also a recently used option that keeps a record of the last ten profiles selected.
Other Changes
Add support for c0pperdragon's new Commodore 64 VIC II plug in adapter which outputs a special 'lumacode' signal on the modulator Phono output that RGBtoHDMI can decode into bit perfect HDMI.
Auto detection for 2560x1440 monitors, (previously the Pi would not auto detect this resolution)
Some support for 4K monitors:
The pi zeros don't support 4K @50/60Hz so by default RGBtoHDMI will select 1080p@50/60Hz as appropriate when connected to a 4K monitor. This is not ideal as the monitor will interpolate that to 4K resulting in soft edges.
However there are two manual modes to try:
- Full_4K@25/30Hz - This will give 4K resolution but at half frame rate (which the zero supports) although every other frame will be dropped giving a 'film effect' on smooth motion.
- Half_4K 1920x2160@50/60Hz - This is a compromise resolution which is the same height as 4K but half the width and again the Zero can generate that. This results in integer scaling vertically and interpolated scaling horizontally but as it is a very non standard mode, a lot of monitors and TVs may not support it and give a blank screen etc. Also it may be displayed as a narrow image in which case you need to change the monitor's scaling to fill the screen (not RGBtoHDMI scaling).
Soft Reset
Pressing SW1 and SW3 together will cause a reboot and this can be useful if the board is plugged into a Pi that doesn't have any reset mods made to it.
No CPLD detection
If you boot up the software with no CPLD board plugged in you will get an error message and the main menu displayed and this can be useful to confirm the software is installed and booting properly if you have a problem when the CPLD is plugged in.
Help Menus
There are several help pages in the info menu describing button functions, calibration, NTSC artifacts and common problems plus where to download updates.
Supported Profile List
There is a menu option in the info menu to save supported profile list for current hardware as "Profile_List.txt" for easy reference. (This list will be different depending on analog or digital interface)
Add warning about pre-programmed CPLDs to the CPLD recovery menu. (Using CPLDs with other firmware already installed can cause reprogramming problems and this describes the workaround)
Add 8 level mono palette
Add support for line doubled capture
Sync detection moved to GPU (Improves performance at high pixel clock rates)
Fix issues stopping very high resolution sources from being captured (864x1024@60Hz 3BPP has been tested)
Fix sync polarity detection when auto sub-profile switching
Add Commodore 64 lumacode profile (see above)
Add Exidy Sorcerer profile
Add NEC PC 16-01 profile
Add Meldas CNC9 profile
Add Amiga 3000 profile
Add Atari ST (No Blanking) profile (for earlier adapter board)
Update Spectrum Harlequin and Nuvo profiles
Add new test profiles
Plus many existing profiles updated
Beta58 test release
Beta58 test release
Support new commodore 64 lumacode board.
Add info menu option to save supported profile list for current hardware as "Profile_List.txt".
Add built in help in info menu describing button functions, calibration, NTSC artifacts and common problems.
Add warning about pre-programmed CPLDs to CPLD recovery menu
Update test profiles
Beta57 test release
Beta57 test release
Move sync detection to GPU (Improves performance at high pixel clock rates)
Fix issues stopping very high resolution sources from being captured
Fix sync polarity detection when auto sub-profile switching
Add 8 level mono palette
Fix errors calculating overscan in 16bpp modes
Fix screencaps in 16bpp mode when using overscan
Add NEC PC 16-01 profile
Add Meldas CNC9 profile
Update Commodore 64 lumacode profile
Update test profiles