libws libws
WSwan hardware library for the Wonderful toolchain
|
#include <stdbool.h>
#include <stdint.h>
#include <wonderful.h>
#include "ports.h"
#include "util.h"
Go to the source code of this file.
Macros | |
#define | WS_IRAM_SEGMENT 0x0000 |
#define | WS_SRAM_SEGMENT 0x1000 |
#define | WS_ROM0_SEGMENT 0x2000 |
#define | WS_ROM1_SEGMENT 0x3000 |
#define | ws_iram __wf_iram |
#define | ws_sram __wf_sram |
#define | ws_rom __wf_rom |
#define | ws_far __far |
#define | ws_ptr_offset(x) |
#define | ws_ptr_segment(x) |
#define | ws_ptr_far(seg, ofs) |
#define | WS_IRAM_MEM ((uint8_t ws_iram*) 0x00000000) |
#define | WS_SRAM_MEM ((uint8_t ws_sram*) 0x10000000) |
#define | WS_ROM0_MEM ((uint8_t __far*) 0x20000000) |
#define | WS_ROM1_MEM ((uint8_t __far*) 0x30000000) |
#define | ws_bank_ram_save(new_bank) |
Switch to a new RAM bank, while preserving the value of the old one. | |
#define | ws_bank_ram_set(new_bank) |
Switch to a new RAM bank. | |
#define | ws_bank_ram_restore ws_bank_ram_set |
#define | ws_bank_within_ram(var, ...) |
Switch to the RAM bank containing the specified variable for a code block. | |
#define | ws_bank_with_ram(bank, ...) |
Switch to the specified RAM bank index for a code block. | |
#define | ws_bank_rom0_save(new_bank) |
Switch to a new ROM bank in slot 0, while preserving the value of the old one. | |
#define | ws_bank_rom0_set(new_bank) |
Switch to a new ROM bank in slot 0. | |
#define | ws_bank_rom0_restore ws_bank_rom0_set |
#define | ws_bank_within_rom0(var, ...) |
Switch to the ROM0 bank containing the specified variable for a code block. | |
#define | ws_bank_with_rom0(bank, ...) |
Switch to the specified ROM0 bank index for a code block. | |
#define | ws_bank_rom1_save(new_bank) |
Switch to a new ROM bank in slot 1, while preserving the value of the old one. | |
#define | ws_bank_rom1_set(new_bank) |
Switch to a new ROM bank in slot 1. | |
#define | ws_bank_rom1_restore ws_bank_rom1_set |
#define | ws_bank_within_rom1(var, ...) |
Switch to the ROM1 bank containing the specified variable for a code block. | |
#define | ws_bank_with_rom1(bank, ...) |
Switch to the specified ROM1 bank index for a code block. | |
#define | ws_bank_roml_save(new_bank) |
Switch to a new ROM bank in the linear slot, while preserving the value of the old one. | |
#define | ws_bank_roml_set(new_bank) |
Switch to a new ROM bank in the linear slot. | |
#define | ws_bank_roml_restore ws_bank_roml_set |
#define | ws_bank_within_roml(var, ...) |
Switch to the ROML bank containing the specified variable for a code block. | |
#define | ws_bank_with_roml(bank, ...) |
Switch to the specified ROML bank index for a code block. |
Typedefs | |
typedef uint8_t | ws_bank_t |
Type indicating a bank index. |
Functions | |
static uint32_t | ws_ptr_to_linear (const void ws_far *src) |
static const void ws_far * | ws_ptr_from_linear (uint32_t src) |
Functionality related to memory and bank management.
Definition in file memory.h.