|
libws libws
WSwan hardware library for the Wonderful toolchain
|
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) |
| #define ws_bank_ram_restore ws_bank_ram_set |
| #define ws_bank_ram_save | ( | new_bank | ) |
| #define ws_bank_ram_set | ( | new_bank | ) |
| #define ws_bank_rom0_restore ws_bank_rom0_set |
| #define ws_bank_rom0_save | ( | new_bank | ) |
| #define ws_bank_rom0_set | ( | new_bank | ) |
| #define ws_bank_rom1_restore ws_bank_rom1_set |
| #define ws_bank_rom1_save | ( | new_bank | ) |
| #define ws_bank_rom1_set | ( | new_bank | ) |
| #define ws_bank_roml_restore ws_bank_roml_set |
| #define ws_bank_roml_save | ( | new_bank | ) |
| #define ws_bank_roml_set | ( | new_bank | ) |
| #define ws_bank_with_ram | ( | bank, | |
| ... ) |
Switch to the specified RAM bank index for a code block.
This is equivalent to:
| bank | The bank index. |
| ... | The code block to run with the specified value in view. |
| #define ws_bank_with_rom0 | ( | bank, | |
| ... ) |
Switch to the specified ROM0 bank index for a code block.
This is equivalent to:
| bank | The bank index. |
| ... | The code block to run with the specified value in view. |
| #define ws_bank_with_rom1 | ( | bank, | |
| ... ) |
Switch to the specified ROM1 bank index for a code block.
This is equivalent to:
| bank | The bank index. |
| ... | The code block to run with the specified value in view. |
| #define ws_bank_with_roml | ( | bank, | |
| ... ) |
Switch to the specified ROML bank index for a code block.
This is equivalent to:
| bank | The bank index. |
| ... | The code block to run with the specified value in view. |
| #define ws_bank_within_ram | ( | var, | |
| ... ) |
Switch to the RAM bank containing the specified variable for a code block.
This is equivalent to:
| var | The variable name. |
| ... | The code block to run with the specified value in view. |
| #define ws_bank_within_rom0 | ( | var, | |
| ... ) |
Switch to the ROM0 bank containing the specified variable for a code block.
This is equivalent to:
| var | The variable name. |
| ... | The code block to run with the specified value in view. |
| #define ws_bank_within_rom1 | ( | var, | |
| ... ) |
Switch to the ROM1 bank containing the specified variable for a code block.
This is equivalent to:
| var | The variable name. |
| ... | The code block to run with the specified value in view. |
| #define ws_bank_within_roml | ( | var, | |
| ... ) |
Switch to the ROML bank containing the specified variable for a code block.
This is equivalent to:
| var | The variable name. |
| ... | The code block to run with the specified value in view. |
| #define ws_iram __wf_iram |
| #define WS_IRAM_MEM ((uint8_t ws_iram*) 0x00000000) |
| #define ws_ptr_far | ( | seg, | |
| ofs ) |
| #define ws_ptr_offset | ( | x | ) |
| #define ws_ptr_segment | ( | x | ) |
| #define ws_rom __wf_rom |
| #define WS_ROM0_MEM ((uint8_t __far*) 0x20000000) |
| #define WS_ROM1_MEM ((uint8_t __far*) 0x30000000) |
| #define ws_sram __wf_sram |
| #define WS_SRAM_MEM ((uint8_t ws_sram*) 0x10000000) |
|
inlinestatic |