# This is the source for the unofficial BIOS bitmaps that are found in
# src/third_party/chromiumos-overlay/sys-boot/chromeos-bootimage/files/ The
# original sources are lost in the mists of time, so most of this is simply
# unpacked from the binary.

bmpblock: 2.0
compression: 2
images:
  $HWID: font.bin
  UNOFFICIAL: unofficial.bmp
  EN_LAN: en_language.bmp
  GB_LAN: gb_language.bmp
  DEV: dev.bmp
  INSERT: insert.bmp
  REMOVE: remove.bmp
  YUCK: yuck.bmp
  TODEV: todev.bmp
  TONORM: tonorm.bmp
  WAIT: wait.bmp
  TONORM_CONFIRM: tonorm_confirm.bmp
screens:
  scr_en_dev:
    - [0, 0, UNOFFICIAL]
    - [200, 250, DEV]
    - [500, 175, EN_LAN]
    - [100, 175, $HWID]
  scr_gb_dev:
    - [0, 0, UNOFFICIAL]
    - [200, 250, DEV]
    - [500, 175, GB_LAN]
    - [100, 175, $HWID]
  scr_en_insert:
    - [0, 0, UNOFFICIAL]
    - [125, 311, INSERT]
    - [500, 175, EN_LAN]
    - [100, 175, $HWID]
  scr_gb_insert:
    - [0, 0, UNOFFICIAL]
    - [125, 311, INSERT]
    - [500, 175, GB_LAN]
    - [100, 175, $HWID]
  scr_en_remove:
    - [0, 0, UNOFFICIAL]
    - [137, 368, REMOVE]
    - [100, 175, $HWID]
  scr_en_yuck:
    - [0, 0, UNOFFICIAL]
    - [240, 261, YUCK]
    - [100, 175, $HWID]
  scr_en_todev:
    - [0, 0, UNOFFICIAL]
    - [305, 348, TODEV]
    - [100, 175, $HWID]
  scr_en_tonorm:
    - [0, 0, UNOFFICIAL]
    - [221, 372, TONORM]
    - [100, 175, $HWID]
  scr_en_wait:
    - [0, 0, UNOFFICIAL]
    - [221, 372, WAIT]
    - [100, 175, $HWID]
  scr_en_tonorm_confirm:
    - [0, 0, UNOFFICIAL]
    - [221, 372, TONORM_CONFIRM]
    - [100, 175, $HWID]

localizations:
  - [ scr_en_dev, scr_en_remove, scr_en_yuck, scr_en_insert, scr_en_todev, scr_en_tonorm, scr_en_wait, scr_en_tonorm_confirm ]
  - [ scr_gb_dev, scr_en_remove, scr_en_yuck, scr_gb_insert, scr_en_todev, scr_en_tonorm, scr_en_wait, scr_en_tonorm_confirm ]
locale_index:
  - en
  - en_GB
