OpenHantek
Loading...
Searching...
No Matches
ezusb.cpp File Reference
#include <errno.h>
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <libusb-1.0/libusb.h>
#include "ezusb.h"

Data Structures

struct  ram_poke_context

Macros

#define logerror(...)
#define RW_INTERNAL   0xA0 /* hardware implements this one */
#define RW_MEMORY   0xA3
#define RETRY_LIMIT   5

Enumerations

enum  ram_mode { _undef = 0 , internal_only , skip_internal , skip_external }

Functions

static bool fx_is_external (uint32_t addr, size_t len)
static bool fx2_is_external (uint32_t addr, size_t len)
static bool fx2lp_is_external (uint32_t addr, size_t len)
static int ezusb_write (libusb_device_handle *device, const char *label, uint8_t opcode, uint32_t addr, const unsigned char *data, size_t len)
static int ezusb_read (libusb_device_handle *device, const char *label, uint8_t opcode, uint32_t addr, const unsigned char *data, size_t len)
static bool ezusb_cpucs (libusb_device_handle *device, uint32_t addr, bool doRun)
static bool ezusb_fx3_jump (libusb_device_handle *device, uint32_t addr)
static int parse_ihex (FILE *image, void *context, bool(*is_external)(uint32_t addr, size_t len), int(*poke)(void *context, uint32_t addr, bool external, const unsigned char *data, size_t len))
static int ram_poke (void *context, uint32_t addr, bool external, const unsigned char *data, size_t len)
static int fx3_load_ram (libusb_device_handle *device, const char *path)
int ezusb_load_ram (libusb_device_handle *device, const char *path, int fx_type, int stage)

Macro Definition Documentation

◆ logerror

#define logerror ( ...)
Value:
fprintf( stderr, __VA_ARGS__ )

◆ RETRY_LIMIT

#define RETRY_LIMIT   5

◆ RW_INTERNAL

#define RW_INTERNAL   0xA0 /* hardware implements this one */

◆ RW_MEMORY

#define RW_MEMORY   0xA3

Enumeration Type Documentation

◆ ram_mode

enum ram_mode
Enumerator
_undef 
internal_only 
skip_internal 
skip_external 

Function Documentation

◆ ezusb_cpucs()

bool ezusb_cpucs ( libusb_device_handle * device,
uint32_t addr,
bool doRun )
static

◆ ezusb_fx3_jump()

bool ezusb_fx3_jump ( libusb_device_handle * device,
uint32_t addr )
static

◆ ezusb_load_ram()

int ezusb_load_ram ( libusb_device_handle * device,
const char * path,
int fx_type,
int stage )

◆ ezusb_read()

int ezusb_read ( libusb_device_handle * device,
const char * label,
uint8_t opcode,
uint32_t addr,
const unsigned char * data,
size_t len )
static

◆ ezusb_write()

int ezusb_write ( libusb_device_handle * device,
const char * label,
uint8_t opcode,
uint32_t addr,
const unsigned char * data,
size_t len )
static

◆ fx2_is_external()

bool fx2_is_external ( uint32_t addr,
size_t len )
static

◆ fx2lp_is_external()

bool fx2lp_is_external ( uint32_t addr,
size_t len )
static

◆ fx3_load_ram()

int fx3_load_ram ( libusb_device_handle * device,
const char * path )
static

◆ fx_is_external()

bool fx_is_external ( uint32_t addr,
size_t len )
static

◆ parse_ihex()

int parse_ihex ( FILE * image,
void * context,
bool(* is_external )(uint32_t addr, size_t len),
int(* poke )(void *context, uint32_t addr, bool external, const unsigned char *data, size_t len) )
static

◆ ram_poke()

int ram_poke ( void * context,
uint32_t addr,
bool external,
const unsigned char * data,
size_t len )
static