#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/time.h>
#include "console.h"
#include "cpu.h"
#include "device.h"
#include "interrupt.h"
#include "machine.h"
#include "memory.h"
#include "misc.h"
#include "thirdparty/adb_viareg.h"
Go to the source code of this file.
Classes | |
struct | adb_data |
Macros | |
#define | debug fatal |
#define | TICK_SHIFT 17 |
#define | DEV_ADB_LENGTH 0x2000 |
#define | N_VIA_REGS 0x10 |
#define | VIA_REG_SHIFT 9 |
#define | MAX_BUF 100 |
#define | DIR_INPUT 0 |
#define | DIR_OUTPUT 1 |
#define | BUFB_nINTR 0x08 |
#define | BUFB_ACK 0x10 |
#define | BUFB_nTIP 0x20 |
#define | IFR_SR 0x04 |
#define | IFR_ANY 0x80 |
#define | ACR_SR_OUT 0x10 |
Functions | |
DEVICE_TICK (adb) | |
DEVICE_ACCESS (adb) | |
DEVINIT (adb) | |
#define ACR_SR_OUT 0x10 |
Definition at line 107 of file dev_adb.cc.
#define BUFB_ACK 0x10 |
Definition at line 103 of file dev_adb.cc.
#define BUFB_nINTR 0x08 |
Definition at line 102 of file dev_adb.cc.
#define BUFB_nTIP 0x20 |
Definition at line 104 of file dev_adb.cc.
#define debug fatal |
Definition at line 57 of file dev_adb.cc.
Referenced by alpha_cpu_disassemble_instr(), alpha_cpu_dumpinfo(), alpha_cpu_list_available_types(), alpha_cpu_new(), alpha_cpu_register_dump(), apple_load_bootblock(), arcbios_add_string_to_component(), arcbios_emul(), arcbios_private_emul(), arm_coproc_15(), arm_cpu_disassemble_instr(), arm_cpu_disassemble_instr_thumb(), arm_cpu_dumpinfo(), arm_cpu_list_available_types(), arm_cpu_new(), arm_cpu_register_dump(), arm_exception(), bus_pci_data_access(), console_debug_dump(), coproc_function(), cpu_dumpinfo(), dec21143_rx(), dev_px_dma(), DEVICE_ACCESS(), DEVICE_TICK(), diskimage_dump_info(), dump_mem_string(), emul_create_from_configfile(), emul_dumpinfo(), emul_machine_setup(), emul_simple_init(), file_load(), framebuffer_blockcopyfill(), iso_load_bootblock(), lk201_tx_data(), load_bootblock(), m88k_cpu_disassemble_instr(), m88k_cpu_dumpinfo(), m88k_cpu_list_available_types(), m88k_cpu_new(), m88k_cpu_register_dump(), m88k_exception(), machine_dumpinfo(), machine_list_available_types_and_cpus(), machine_setup(), maple_do_dma_xfer(), memory_device_register(), MEMORY_RW(), memory_warn_about_unimplemented_addr(), mips_cpu_disassemble_instr(), mips_cpu_dumpinfo(), mips_cpu_exception(), mips_cpu_list_available_types(), mips_cpu_new(), mips_cpu_register_dump(), net_debugaddr(), net_dumpinfo(), net_ip(), net_tcp_rx_avail(), osiop_execute_scripts(), osiop_execute_scripts_instr(), playstation2_sifbios_emul(), ppc_cpu_disassemble_instr(), ppc_cpu_dumpinfo(), ppc_cpu_list_available_types(), ppc_cpu_new(), ppc_cpu_register_dump(), print_separator_line(), pvr_geometry_updated(), pvr_render(), sh_cpu_disassemble_instr(), sh_cpu_dumpinfo(), sh_cpu_list_available_types(), sh_cpu_new(), sh_cpu_register_dump(), sh_exception(), symbol_readfile(), wdc_command(), x11_check_event(), and yamon_emul().
#define DEV_ADB_LENGTH 0x2000 |
Definition at line 62 of file dev_adb.cc.
#define DIR_INPUT 0 |
Definition at line 99 of file dev_adb.cc.
#define DIR_OUTPUT 1 |
Definition at line 100 of file dev_adb.cc.
#define IFR_ANY 0x80 |
Definition at line 106 of file dev_adb.cc.
Referenced by DEVICE_TICK().
#define IFR_SR 0x04 |
Definition at line 105 of file dev_adb.cc.
#define MAX_BUF 100 |
Definition at line 67 of file dev_adb.cc.
#define N_VIA_REGS 0x10 |
Definition at line 64 of file dev_adb.cc.
#define TICK_SHIFT 17 |
Definition at line 61 of file dev_adb.cc.
#define VIA_REG_SHIFT 9 |
Definition at line 65 of file dev_adb.cc.
Referenced by DEVICE_ACCESS(), and DEVICE_TICK().
DEVICE_ACCESS | ( | adb | ) |
Definition at line 313 of file dev_adb.cc.
References data, fatal(), MEM_READ, MEM_WRITE, memory_readmax64(), and VIA_REG_SHIFT.
DEVICE_TICK | ( | adb | ) |
Definition at line 111 of file dev_adb.cc.
References IFR_ANY, adb_data::int_asserted, adb_data::int_enable, INTERRUPT_ASSERT, INTERRUPT_DEASSERT, adb_data::irq, adb_data::reg, VIA_REG_SHIFT, and vIFR.
DEVINIT | ( | adb | ) |
Definition at line 437 of file dev_adb.cc.
References CHECK_ALLOCATION, INTERRUPT_CONNECT, devinit::interrupt_path, and adb_data::irq.