Difference between revisions of "Tint"

From coreboot
Jump to: navigation, search
m
(Build instructions for tint as payload. Work in progress.)
Line 3: Line 3:
 
'''[http://oasis.frogfoot.net/code/tint/download/0.03b/ tint]''' is a small curses-based game.
 
'''[http://oasis.frogfoot.net/code/tint/download/0.03b/ tint]''' is a small curses-based game.
  
We have ported this game to [[libpayload]] so it can now be used as a coreboot payload.
+
We have ported this game to [[libpayload]] so it can now be used as a coreboot [[Payloads|payload]].
 +
 
 +
== Building  ==
 +
 
 +
=== libpayload ===
 +
 
 +
The tint payload uses [[libpayload]], thus you need to get that first and build it:
 +
 
 +
$ mkdir foo
 +
$ cd foo
 +
$ svn co svn://coreboot.org/repos/trunk/payloads/libpayload
 +
$ cd libpayload
 +
$ make menuconfig
 +
$ make
 +
 
 +
=== tint ===
 +
 
 +
You can then get tint itself, patch it, and build it:
 +
 
 +
$ cd ..
 +
$ wget '''TODO'''
 +
$ tar xfvz tint_0.03b.tar
 +
$ cd tint_0.03b
 +
$ wget '''TODO.patch'''
 +
$ patch -p0 < '''TODO.patch'''
 +
$ make
 +
 
 +
The file '''tint.elf''' is your final payload which you can use with coreboot (v2 or v3), either on real hardware or in a QEMU image.
 +
 
 +
=== coreboot ===
 +
 
 +
Finally, you have to build coreboot (v3 in this example) with tint as payload:
 +
 
 +
$ cd ..
 +
$ svn co svn://coreboot.org/repository/coreboot-v3
 +
$ cp tint_0.03b/tint.elf coreboot-v3/payload.elf
 +
$ cd coreboot-v3
 +
$ make menuconfig
 +
 
 +
Now enter the '''Payload''' menu and select '''Payload type''' and then '''An ELF executable payload file'''. Now exit the menu, save your settings, and build coreboot:
 +
 
 +
$ make
 +
 
 +
The file '''build/coreboot.rom''' (or '''build/bios.bin''') is your final coreboot v3 image, which also contains the tint payload.
 +
 
 +
== Running tint in QEMU ==
 +
 
 +
For running the coreboot+libpayload+tint image in QEMU, but you need a patched version of '''vgabios-cirrus.bin''' in your '''build''' directory first:
 +
 
 +
$ cd build
 +
$ wget http://www.coreboot.org/images/0/0d/Vgabios-cirrus.zip
 +
$ unzip Vgabios-cirrus.zip
 +
$ cd ..
 +
 
 +
You can now run tint in QEMU:
 +
 
 +
$ qemu -L build -hda /dev/zero -serial stdio
  
 
== Ready-made QEMU image ==
 
== Ready-made QEMU image ==

Revision as of 00:46, 9 April 2008

The tint payload.

tint is a small curses-based game.

We have ported this game to libpayload so it can now be used as a coreboot payload.

Building

libpayload

The tint payload uses libpayload, thus you need to get that first and build it:

$ mkdir foo
$ cd foo
$ svn co svn://coreboot.org/repos/trunk/payloads/libpayload
$ cd libpayload
$ make menuconfig
$ make

tint

You can then get tint itself, patch it, and build it:

$ cd ..
$ wget TODO
$ tar xfvz tint_0.03b.tar
$ cd tint_0.03b
$ wget TODO.patch
$ patch -p0 < TODO.patch
$ make

The file tint.elf is your final payload which you can use with coreboot (v2 or v3), either on real hardware or in a QEMU image.

coreboot

Finally, you have to build coreboot (v3 in this example) with tint as payload:

$ cd ..
$ svn co svn://coreboot.org/repository/coreboot-v3
$ cp tint_0.03b/tint.elf coreboot-v3/payload.elf
$ cd coreboot-v3
$ make menuconfig

Now enter the Payload menu and select Payload type and then An ELF executable payload file. Now exit the menu, save your settings, and build coreboot:

$ make

The file build/coreboot.rom (or build/bios.bin) is your final coreboot v3 image, which also contains the tint payload.

Running tint in QEMU

For running the coreboot+libpayload+tint image in QEMU, but you need a patched version of vgabios-cirrus.bin in your build directory first:

$ cd build
$ wget http://www.coreboot.org/images/0/0d/Vgabios-cirrus.zip
$ unzip Vgabios-cirrus.zip
$ cd ..

You can now run tint in QEMU:

$ qemu -L build -hda /dev/zero -serial stdio

Ready-made QEMU image

Please follow these instructions if you want to try out coreboot and tint in QEMU.

Public domain I, the copyright holder of this work, hereby release it into the public domain. This applies worldwide.

In case this is not legally possible:
I grant anyone the right to use this work for any purpose, without any conditions, unless such conditions are required by law.