WonderWitch/FreyaBIOS

From WSdev Wiki
Jump to navigationJump to search

FreyaBIOS is a boot program and hardware abstraction layer for WonderWitch, present in the top-most (last) 64 KB of any WonderWitch cartridge.

It provides the following functionality:

  • bring-up code,
  • interrupt-based hardware abstraction layer, providing a more user-friendly (and less direct) interface to the WonderSwan hardware,
  • 8x8 ASCII and kanji fonts,
  • a monitor program, allowing FreyaOS recovery and updates via XMODEM.

Other functionality (like file system access) is instead included as part of FreyaOS' system libraries; some other functionality (like WonderSwan Color support) is implemented as part of the development tooling.

Revisions

  • FreyaBIOS 1.0.0

Fonts

As part of its ROM image, FreyaBIOS provides two fonts.

Alphanumeric font

The alphanumeric font is used by FreyaBIOS in the ASCII and mixed text modes. It provides characters 0 through 127, which are based on codepage 437, but with the following differences:

Character index Unicode codepoint for CP437 A Unicode codepoint/Notes for FreyaBIOS A
$01 $263A Circle around smiley face omitted.
$07 $2022 Smaller than $08
$08 $25D8 $25AB
$09 $25CB Closer to $25E6; same size as $08
$0A $25D9 $25A3
$14 $00B6 $2705
$15 $00A7 § $2022; same size as $08
$16 $25AC Two $07-sized horizontal dots
$1C $221F $00A9 ©
$5C $005C \ $005C \
$7F $2302 $2302

Shift-JIS font

Most of the image is taken up by the ELISA FONT, used by FreyaBIOS in the Shift-JIS text mode.

Interrupts

Freya Monitor

TODO