コード例 #1
0
ファイル: mainviccpu.c プロジェクト: sasq64/script-vice
void memmap_mem_store(unsigned int addr, unsigned int value)
{
    if (((addr >= 0x9000) && (addr <= 0x93ff)) || ((addr >= 0x9800) && (addr <= 0x9fff))) {
        monitor_memmap_store(addr, MEMMAP_I_O_W);
    } else if (((addr >= 0x8000) && (addr <= 0x8fff)) || (addr >= 0xc000)) {
        monitor_memmap_store(addr, MEMMAP_ROM_W);
    } else {
        monitor_memmap_store(addr, MEMMAP_RAM_W);
    }
    (*_mem_write_tab_ptr[(addr) >> 8])((WORD)(addr), (BYTE)(value));
}
コード例 #2
0
ファイル: mainviccpu.c プロジェクト: sasq64/script-vice
/* mark as read (no side effects) */
void memmap_mark_read(unsigned int addr)
{
    if (((addr >= 0x9000) && (addr <= 0x93ff)) || ((addr >= 0x9800) && (addr <= 0x9fff))) {
        monitor_memmap_store(addr, MEMMAP_I_O_R);
    } else if (((addr >= 0x8000) && (addr <= 0x8fff)) || (addr >= 0xc000)) {
        monitor_memmap_store(addr, (memmap_state & MEMMAP_STATE_OPCODE) ? MEMMAP_ROM_X : (memmap_state & MEMMAP_STATE_INSTR) ? 0 : MEMMAP_ROM_R);
    } else {
        monitor_memmap_store(addr, (memmap_state & MEMMAP_STATE_OPCODE) ? MEMMAP_RAM_X : (memmap_state & MEMMAP_STATE_INSTR) ? 0 : MEMMAP_RAM_R);
    }
    memmap_state &= ~(MEMMAP_STATE_OPCODE);
}
コード例 #3
0
BYTE memmap_mem_read(unsigned int addr)
{
    if (((addr >= 0x9000)&&(addr <= 0x93ff)) || ((addr >= 0x9800)&&(addr <= 0x9fff))) {
        monitor_memmap_store(addr, MEMMAP_I_O_R);
    } else if (((addr >= 0x8000)&&(addr <= 0x8fff)) || (addr >= 0xc000)) {
        monitor_memmap_store(addr, (memmap_state&MEMMAP_STATE_OPCODE)?MEMMAP_ROM_X:(memmap_state&MEMMAP_STATE_INSTR)?0:MEMMAP_ROM_R);
    } else {
        monitor_memmap_store(addr, (memmap_state&MEMMAP_STATE_OPCODE)?MEMMAP_RAM_X:(memmap_state&MEMMAP_STATE_INSTR)?0:MEMMAP_RAM_R);
    }
    memmap_state &= ~(MEMMAP_STATE_OPCODE);
    return (*_mem_read_tab_ptr[(addr) >> 8])((WORD)(addr));
}
コード例 #4
0
ファイル: cbm2cpu.c プロジェクト: emanuel4you/meta-emanuel
void memmap_mark_read(unsigned int addr)
{
    monitor_memmap_store(addr, (memmap_state & MEMMAP_STATE_OPCODE) ? MEMMAP_RAM_X : (memmap_state & MEMMAP_STATE_INSTR) ? 0 : MEMMAP_RAM_R);
    memmap_state &= ~(MEMMAP_STATE_OPCODE);
}
コード例 #5
0
ファイル: cbm2cpu.c プロジェクト: emanuel4you/meta-emanuel
void memmap_mem_store(unsigned int addr, unsigned int value)
{
    monitor_memmap_store(addr, MEMMAP_RAM_W);
    (*_mem_write_tab_ptr[(addr) >> 8])((WORD)(addr), (BYTE)(value));
}