WonderWitch

From WSdev Wiki
Jump to navigationJump to search

The WonderWitch is an official homebrew development kit released by Qute Corporation on July 18th, 2000.

Hardware

The WonderWitch cartridge is based on the Bandai 2003 mapper. It provides an RTC, as well as NOR self-flashing functionality using the Fujitsu MBM29DL400TC chip.

There were three means of acquiring WonderWitch cartridges:

  • WonderWitch, a software development kit containing a reflashable cartridge, a WonderSwan<->RS-232 adapter, a development manual and a development tool CD;
  • WonderWitch Player, a priced-down user-only version omitting the development manual and tooling;
  • The VAR program, allowing independent creators to buy reflashable cartridges in bulk, in units of 20 or 100.

Software

The WonderWitch provides an abstraction layer and helper libraries, split into two modules:

  • FreyaBIOS - providing a hardware abstraction layer and some utility functions,
  • FreyaOS - providing helper libraries and higher-level concepts, such as processes and files.

Memory map

Internal RAM (0x00000 - 0x0FFFF)

From To Description
0x00000 0x00??? Interrupt vectors
0x00??? 0x00??? ???
0x00E00 0x03FFF Space used by user programs (sprite, screen, tile data)
0x04000 0x0BFFF Space used by user programs (color tile data)
0x0C000 0x0FDFF ???
0x0FE00 0x0FFFF Space used by user programs (color palette data)

Cartridge SRAM (0x10000 - 0x1FFFF)

Cartridge flash (0x80000 - 0xFFFFF)

The 512KB of NOR flash memory is mapped and partitioned as follows:

Linear address Size Description
0x8nnnn 384 KB File system
0x9nnnn
0xAnnnn
0xBnnnn
0xCnnnn
0xDnnnn
0xEnnnn 64 KB FreyaOS
0xFnnnn 64 KB FreyaBIOS

Interrupt vectors

Start End Description
0x00 0x07 CPU interrupts
0x08 0x0F
0x10 0x18 FreyaBIOS interrupts

Internal console RAM is generally managed by FreyaBIOS, while SRAM is managed by FreyaOS.

Development tools

TODO

Links