|
0.3.1
|
Data Structures | |
| struct | vdp2_vram_usage |
| Not yet documented. More... | |
| struct | vdp2_vram_ctl |
| Not yet documented. More... | |
| union | vdp2_vram_cycp_bank |
| Not yet documented. More... | |
| struct | vdp2_vram_cycp |
| Not yet documented. More... | |
| struct | vdp2_vram_cycp_bank.__unnamed138__ |
| Timings. More... | |
Macros | |
| #define | VDP2_VRAM_ADDR(_bank, _offset) (0x25E00000UL + ((_bank) << 17) + (_offset)) |
| Not yet documented. | |
| #define | VDP2_VRAM_BANK(_address) (((_address) >> 17) & 0x0007) |
| Not yet documented. | |
| #define | VDP2_VRAM_SIZE (0x00080000UL) |
| Not yet documented. | |
| #define | VDP2_VRAM_BSIZE_2 (VDP2_VRAM_SIZE / 2) |
| 4 Mbit 2-split VRAM bank size | |
| #define | VDP2_VRAM_BSIZE_4 (VDP2_VRAM_SIZE / 4) |
| 4 Mbit 4-split VRAM bank size | |
| #define | VDP2_VRAM_CYCP_PNDR_NBG0 0x0 |
| NBG0 pattern name data read. | |
| #define | VDP2_VRAM_CYCP_PNDR_NBG1 0x1 |
| NBG1 pattern name data read. | |
| #define | VDP2_VRAM_CYCP_PNDR_NBG2 0x2 |
| NBG2 pattern name data read. | |
| #define | VDP2_VRAM_CYCP_PNDR_NBG3 0x3 |
| NBG3 pattern name data read. | |
| #define | VDP2_VRAM_CYCP_CHPNDR_NBG0 0x4 |
| NBG0 character pattern name data read. | |
| #define | VDP2_VRAM_CYCP_CHPNDR_NBG1 0x5 |
| NBG1 character pattern name data read. | |
| #define | VDP2_VRAM_CYCP_CHPNDR_NBG2 0x6 |
| NBG2 character pattern name data read. | |
| #define | VDP2_VRAM_CYCP_CHPNDR_NBG3 0x7 |
| NBG3 character pattern name data read. | |
| #define | VDP2_VRAM_CYCP_VCSTDR_NBG0 0xC |
| NBG0 vertical cell scroll table data read. | |
| #define | VDP2_VRAM_CYCP_VCSTDR_NBG1 0xD |
| NBG0 vertical cell scroll table data read. | |
| #define | VDP2_VRAM_CYCP_CPU_RW 0xE |
| CPU read/write. | |
| #define | VDP2_VRAM_CYCP_NO_ACCESS 0xF |
| No access. | |
| #define | VDP2_VRAM_CYCP_PNDR(_n) ((_n) & 0x03) |
| Pattern name data read. | |
| #define | VDP2_VRAM_CYCP_CHPNDR(_n) (((_n) & 0x03) + 0x04) |
| Character pattern name data read. | |
| #define | VDP2_VRAM_CYCP_VCSTDR(_n) (((_n) & 0x01) + 0x0C) |
| Vertical cell scroll table data read. | |
Typedefs | |
| typedef uintptr_t | vdp2_vram_t |
| Not yet documented. | |
| typedef enum vdp2_vram_bank | vdp2_vram_bank_t |
| Not yet documented. | |
| typedef enum vdp2_vram_mode | vdp2_vram_ctl_mode_t |
| Not yet documented. | |
| typedef enum vdp2_vram_ctl_coeff_table | vdp2_vram_ctl_coeff_table_t |
| Not yet documented. | |
| typedef enum vdp2_vram_usage_type | vdp2_vram_usage_type_t |
| Not yet documented. | |
| typedef struct vdp2_vram_usage | vdp2_vram_usage_t |
| Not yet documented. | |
| typedef struct vdp2_vram_ctl | vdp2_vram_ctl_t |
| Not yet documented. | |
| typedef union vdp2_vram_cycp_bank | vdp2_vram_cycp_bank_t |
| Not yet documented. | |
| typedef struct vdp2_vram_cycp | vdp2_vram_cycp_t |
| Not yet documented. | |
Enumerations | |
| enum | vdp2_vram_bank |
| Not yet documented. More... | |
| enum | vdp2_vram_mode |
| Not yet documented. More... | |
| enum | vdp2_vram_ctl_coeff_table |
| Not yet documented. More... | |
| enum | vdp2_vram_usage_type |
| Not yet documented. More... | |
Functions | |
| void | vdp2_vram_control_set (const vdp2_vram_ctl_t *vram_ctl) |
| Not yet documented. | |
| void | vdp2_vram_usage_set (const vdp2_vram_usage_t *vram_usage) |
| Not yet documented. | |
| vdp2_vram_cycp_t * | vdp2_vram_cycp_get (void) |
| Retrieves the VRAM cycle patterns currently set in the VDP2 I/O shadow registers. | |
| void | vdp2_vram_cycp_set (const vdp2_vram_cycp_t *vram_cycp) |
| Sets the VRAM cycle patterns for all 4 VDP2 VRAM banks. | |
| void | vdp2_vram_cycp_clear (void) |
| Not yet documented. | |
| vdp2_vram_cycp_bank_t * | vdp2_vram_cycp_bank_get (vdp2_vram_bank_t bank) |
| Not yet documented. | |
| void | vdp2_vram_cycp_bank_set (vdp2_vram_bank_t bank, const vdp2_vram_cycp_bank_t *cycp_bank) |
| Not yet documented. | |
| void | vdp2_vram_cycp_bank_clear (vdp2_vram_bank_t bank) |
| Not yet documented. | |
Description goes here.
There are two banks, A and B, each 262.144 bytes each. By default, Yaul splits VRAM into four banks.
| struct vdp2_vram_usage |
Not yet documented.
| Data Fields | ||
|---|---|---|
| vdp2_vram_usage_type_t | a0 | Not yet documented. |
| vdp2_vram_usage_type_t | a1 | Not yet documented. |
| vdp2_vram_usage_type_t | b0 | Not yet documented. |
| vdp2_vram_usage_type_t | b1 | Not yet documented. |
| struct vdp2_vram_ctl |
Not yet documented.
| Data Fields | ||
|---|---|---|
| vdp2_vram_ctl_coeff_table_t | coeff_table | brief Coefficient table. |
| vdp2_vram_ctl_mode_t | vram_mode | VRAM mode bank partitions. |
| union vdp2_vram_cycp_bank |
Not yet documented.
This is a general guideline for the number of accesses required.
| Accesses required | Type of access |
|---|---|
| 1 | Pattern name data (1-word or 2-words) |
| 1 | 16-color character pattern or bitmap data |
| 2 | 256-color character pattern or bitmap data |
| 4 | 2048-color character pattern or bitmap data |
| 4 | 32K-color character pattern or bitmap data |
| 8 | 16M-color character pattern or bitmap data |
| 1 | Vertical cell scroll table data |
| Data Fields | ||
|---|---|---|
| uint32_t | raw | Raw 32-bit value. |
| struct vdp2_vram_cycp_bank.__unnamed138__ | __unnamed__ | Timings. |
| struct vdp2_vram_cycp |
Not yet documented.
| Data Fields | ||
|---|---|---|
| vdp2_vram_cycp_bank_t | pt[4] | Not yet documented. |
| struct vdp2_vram_cycp_bank.__unnamed138__ |
Timings.
| #define VDP2_VRAM_ADDR | ( | _bank, | |
| _offset | |||
| ) | (0x25E00000UL + ((_bank) << 17) + (_offset)) |
Not yet documented.
| _bank | |
| _offset |
| #define VDP2_VRAM_BANK | ( | _address | ) | (((_address) >> 17) & 0x0007) |
Not yet documented.
| _address |
| #define VDP2_VRAM_CYCP_PNDR | ( | _n | ) | ((_n) & 0x03) |
Pattern name data read.
| _n | Normal scroll screen number 0 to 3. |
| #define VDP2_VRAM_CYCP_CHPNDR | ( | _n | ) | (((_n) & 0x03) + 0x04) |
Character pattern name data read.
| _n | Normal scroll screen number 0 to 3. |
| #define VDP2_VRAM_CYCP_VCSTDR | ( | _n | ) | (((_n) & 0x01) + 0x0C) |
Vertical cell scroll table data read.
| _n | Normal scroll screen number 0 to 1. |
| enum vdp2_vram_bank |
| enum vdp2_vram_mode |
Not yet documented.
| enum vdp2_vram_usage_type |
| void vdp2_vram_control_set | ( | const vdp2_vram_ctl_t * | vram_ctl | ) |
Not yet documented.
| [in] | vram_ctl |
| void vdp2_vram_usage_set | ( | const vdp2_vram_usage_t * | vram_usage | ) |
Not yet documented.
| [in] | vram_usage |
| vdp2_vram_cycp_t * vdp2_vram_cycp_get | ( | void | ) |
Retrieves the VRAM cycle patterns currently set in the VDP2 I/O shadow registers.
| void vdp2_vram_cycp_set | ( | const vdp2_vram_cycp_t * | vram_cycp | ) |
Sets the VRAM cycle patterns for all 4 VDP2 VRAM banks.
| [in] | vram_cycp |
| vdp2_vram_cycp_bank_t * vdp2_vram_cycp_bank_get | ( | vdp2_vram_bank_t | bank | ) |
Not yet documented.
| bank |
| void vdp2_vram_cycp_bank_set | ( | vdp2_vram_bank_t | bank, |
| const vdp2_vram_cycp_bank_t * | cycp_bank | ||
| ) |
Not yet documented.
| bank | ||
| [in] | cycp_bank |
| void vdp2_vram_cycp_bank_clear | ( | vdp2_vram_bank_t | bank | ) |
Not yet documented.
| bank |