fox32

32 bit fantasy computer


Note that fox32rom provides abstraction layers for most of these bus devices.


0x00000000

Direction

Write

Description

Debug output to the host terminal.


0x80000000 - 0x8000031F

Direction

Read/Write

Description

Overlay control.

Format is 0x80000XYY where X = setting and YY = overlay number.

Settings

0 - position in format 0xYYYYXXXX where XXXX is the X position and YYYY is the Y position.

1 - size in format 0xYYYYXXXX where XXXX is the width and YYYY is the height.

2 - framebuffer pointer.

3 - enable status.


0x80000400 - 0x80000401

Direction

Read/Write

Description

Mouse position and button states.

Note that the clicked and released state bits must be manually cleared, the held bit is the only one that updates automatically.

Format is 0x8000040X where X = setting.

Settings

0 - button states in format 0b00000XYZ where X is the held state, Y is the released state, and Z is the clicked state.

1 - position in format 0xYYYYXXXX where XXXX is the X position and YYYY is the Y position.


0x80000500

Direction

Read

Description

Pop one scancode from the keyboard buffer, or return zero if the buffer is empty.


0x80000600

Direction

Write

Description

Enable audio playback if a non-zero word is written.

Note that the audio buffer swap interrupt vector (address 0x000003F8 / vector 0xFE) should be valid before enabling audio playback if interrupts are enabled.