exec
return exec_type2_script_mode(rom, &adress, size, tabs, ram_tab, &exec);
static status_t exec_type2_script_mode(uint8* rom, uint16* adress, int16* size, PinsTables tabs, uint16 ram_tab, bool* exec)
if (*exec && reg2)
if (*exec && reg2)
result = exec_type2_script_mode(rom, adress, size, tabs, ram_tab, exec);
if (*exec && reg2)
if (*exec)
if (*exec)
*exec = !(*exec);
if (*exec)
exec_cmd_39_type2(rom, data, tabs, exec);
if (*exec)
if (*exec)
if (*exec)
if (*exec)
if (*exec)
if (*exec && data2)
if (*exec)
if (*exec)
*exec = true;
*exec = false;
*exec = false;
if (*exec)
if (*exec)
if (*exec) NV_REG32(reg) = data;
static void exec_cmd_39_type2(uint8* rom, uint32 data, PinsTables tabs, bool* exec)
*exec = false;
static status_t exec_type2_script_mode(uint8* rom, uint16* adress, int16* size, PinsTables tabs, uint16 ram_tab, bool* exec);
static void exec_cmd_39_type2(uint8* rom, uint32 data, PinsTables tabs, bool* exec);
bool exec = true;
if (exec)
if (exec) NV_REG32(reg) = data2;
if (exec)
exec = false;
if (exec)
exec = true;
exec = false;
if (exec) NV_REG32(reg) = data;
if (exec)
if (exec)
if (exec) NV_REG32(reg) = data;
bool exec = true;
if (*exec && reg2)
result = exec_type2_script_mode(rom, adress, size, tabs, ram_tab, exec);
if (*exec && reg2)
if (*exec)
if (*exec)
*exec = !(*exec);
if (*exec)
exec_cmd_39_type2(rom, data, tabs, exec);
if (*exec)
if (*exec)
if (*exec)
if (*exec)
if (*exec)
if (*exec && data2)
if (*exec)
if (*exec)
*exec = true;
*exec = false;
*exec = false;
if (*exec)
if (*exec)
if (*exec) ENG_RG32(reg) = data;
static void exec_cmd_39_type2(uint8* rom, uint32 data, PinsTables tabs, bool* exec)
*exec = false;
static status_t exec_type2_script_mode(uint8* rom, uint16* adress, int16* size, PinsTables tabs, uint16 ram_tab, bool* exec);
static void exec_cmd_39_type2(uint8* rom, uint32 data, PinsTables tabs, bool* exec);
bool exec = true;
if (exec)
if (exec) ENG_RG32(reg) = data2;
if (exec)
exec = false;
if (exec)
exec = true;
exec = false;
if (exec) ENG_RG32(reg) = data;
if (exec)
if (exec)
if (exec) ENG_RG32(reg) = data;
bool exec = true;
return exec_type2_script_mode(rom, &adress, size, tabs, ram_tab, &exec);
static status_t exec_type2_script_mode(uint8* rom, uint16* adress, int16* size, PinsTables tabs, uint16 ram_tab, bool* exec)
if (*exec && reg2)
exec.buffer = buffer;
status = bus->ExecCommand(exec.op, exec.addr,
exec.cmdBuffer, exec.cmdLength, exec.buffer,
exec.bufferLength);
exec.cmdBuffer = userCmdBuffer;
if (exec.buffer != NULL) {
if (user_memcpy(userBuffer, exec.buffer, exec.bufferLength)
exec.buffer = userBuffer;
if (user_memcpy(data, &exec, sizeof(i2c_ioctl_exec)) != B_OK)
i2c_ioctl_exec exec;
if (user_memcpy(&exec, data, sizeof(i2c_ioctl_exec)) != B_OK)
if (exec.cmdBuffer == NULL)
exec.cmdLength = 0;
if (exec.buffer == NULL)
exec.bufferLength = 0;
BStackOrHeapArray<uint8, 32> cmdBuffer(exec.cmdLength);
BStackOrHeapArray<uint8, 32> buffer(exec.bufferLength);
if (exec.cmdBuffer != NULL) {
if (!IS_USER_ADDRESS(exec.cmdBuffer)
|| user_memcpy(cmdBuffer, exec.cmdBuffer, exec.cmdLength)
userCmdBuffer = exec.cmdBuffer;
exec.cmdBuffer = cmdBuffer;
if (exec.buffer != NULL) {
if (!IS_USER_ADDRESS(exec.buffer)
|| user_memcpy(buffer, exec.buffer, exec.bufferLength)
userBuffer = exec.buffer;
uint32_t exec;
const PaperCap exec(
Syscall *exec = get_syscall("_kern_exec");
exec->GetParameter("flatArgs")->SetHandler(new FlatArgsTypeHandler());
i2c_ioctl_exec exec;
exec.addr = addr;
exec.op = I2C_OP_READ_STOP;
exec.cmdBuffer = &cmd;
exec.cmdLength = sizeof(cmd);
exec.buffer = &data;
exec.bufferLength = sizeof(data);
if (ioctl(fd.Get(), I2CEXEC, &exec, sizeof(exec)) == 0)
exec(args);
exec(args);
struct exec a;
struct exec a;