A television upgrade system allows a consumer to upgrade applications or
features in a television (TV) simply by inserting an external device
containing an upgrade file into the TV. The TV then executes a boot
loader code which automatically replaces an executable code for
applications or features currently in the TV with the new or upgraded
executable code from the upgrade file. A consumer can also upgrade the
boot loader code that maps out where the executable code for the
different applications or features are located in memory. This allows the
TV to be completely reconfigured for a wider variety of new applications
and features. A verification operation can be performed to prevent the TV
from being reconfigured with incorrect versions of the boot image and to
avoid unauthorized files from being loaded into the TV.