Open Source Visions
 

GRUB on TV

Description:
Using the GRUB bootloader with an 15/25kHz Arcade Monitor or TV
License:
GPL (my patches only)
Current State:
working flawlessly
Current version:
0.1
Download:
GRUB sources, VGATV and patches
What’s this project about?

"GRUB for DOS" in action
My retro arcade cabinett is based on AdavanceMAME/AdvanceMenu (special MAME version for arcade monitors) runnuing under linux.
While builing this machine I was very unsatisfied with the fact, that I always needed to attach a real PC-monitor for every administrative task. This was really annoying and extremely slowed down the software configuration. So I began to search for a solution which makes it possible to use the linux colsole on my direcly connected arcade monitor. And because the special VGA-mode is entered before the kernel boots (and even before GRUB starts) this solution even allows me to see the kernel startup messages, which is sometimes very useful.
Steps of the Boot Process
This soultion adds one more stage to the boot process. This stage (using FreeDos) is executed before starting GRUB itself.
At first the PC BIOS boots the freedos (get the whole image) which executes VGATV. VGATV tweaks some registers in your VGA card to force it to generate a TV compatile (NTSC or PAL) video signal. Afterwards GRUB (for DOS) is started to allow you to boot your favorite OS.
There were two small problems to overcome:
  • VGATV is a TSR (terminate and stay resident), which stays in dos memory after execution. GRUB checks for TSR programs in memory, and rejects to start if it finds one. So I had to patch VGATV to allow a TSR removal without resetting the VGA registers.
  • Since GRUB for dos also resets the video card (text mode) before starting, I had to do another small patch (only commenting the lines out). That's it.
Screenshots
This is FreeDOS executing VGATV program. It is the first correctly displayed screen.

The linux login prompt. Normally the system boot directly (via /etc/inittab) into ArcadeMenu.

The midnight commander. It still remains my preferred file/navigation tool.

Yeah! This is main reason for doing all this.

This is what I've seen before using VGATV. The arcade monitor is too slow to sync with a standard VGA signal.

Downloads
Related Links
  • MAME , the well known "multiple arcade machine emulator
  • ADVANCEMAME , special MAME version for arcade monitors
  • GRUB for DOS , a patch to allow using GRUB from DOS/freedos
  • GRUB , multiboot boot loader
  • FreeDOS , a free clone of MS-DOS
  • VGATV , a driver to allow using a TV with a VGA card