diff --git a/devices/adb.cpp b/devices/adb.cpp
index 9be789b..f4a3a23 100644
--- a/devices/adb.cpp
+++ b/devices/adb.cpp
@@ -28,12 +28,15 @@ along with this program. If not, see .
#include
#include
#include "devices/adb.h"
+
#include
#include
#include
#include
#include
+#include
+
using namespace std;
ADB_Bus::ADB_Bus() {
@@ -54,7 +57,7 @@ ADB_Bus::~ADB_Bus() {
}
-bool ADB_Bus::adb_verify_listen(int device, int reg) {
+bool ADB_Bus::listen(int device, int reg) {
if (device == keyboard_access_no) {
if (adb_keybd_listen(reg)) {
return true;
@@ -71,11 +74,28 @@ bool ADB_Bus::adb_verify_listen(int device, int reg) {
return false;
}
}
-
+ else {
+
+ return false;
+ }
+}
+
+bool ADB_Bus::talk(int device, int reg, uint16_t value) {
+ //temp code
return false;
}
-bool ADB_Bus::adb_verify_talk(int device, int reg) {
+bool ADB_Bus::bus_reset() {
+ //temp code
+ return true;
+}
+
+bool ADB_Bus::set_addr(int dev_addr, int new_addr) {
+ //temp code
+ return false;
+}
+
+bool ADB_Bus::flush(int dev_addr) {
//temp code
return false;
}
diff --git a/devices/adb.h b/devices/adb.h
index c41162a..2203e6c 100644
--- a/devices/adb.h
+++ b/devices/adb.h
@@ -39,8 +39,11 @@ public:
ADB_Bus();
~ADB_Bus();
- bool adb_verify_listen(int device, int reg);
- bool adb_verify_talk(int device, int reg);
+ bool listen(int device, int reg);
+ bool talk(int device, int reg, uint16_t value);
+ bool bus_reset();
+ bool set_addr(int dev_addr, int new_addr);
+ bool flush(int dev_addr);
bool adb_keybd_listen(int reg);
bool adb_mouse_listen(int reg);
diff --git a/devices/viacuda.cpp b/devices/viacuda.cpp
index a1524da..4fc4f13 100644
--- a/devices/viacuda.cpp
+++ b/devices/viacuda.cpp
@@ -307,7 +307,7 @@ void ViaCuda::process_adb_command(uint8_t cmd_byte, int data_count)
else if ((cmd & 0xC) == 8) {
LOG_F(9, "Cuda: ADB Listen command requested\n");
int adb_reg = cmd_byte & 0x3;
- if (adb_obj->adb_verify_listen(adb_dev, adb_reg)){
+ if (adb_obj->listen(adb_dev, adb_reg)){
response_header(CUDA_PKT_ADB, 0);
for (int data_ptr = 0; data_ptr < adb_obj->get_output_len(); data_ptr++) {
this->in_buf[(2 + data_ptr)] = adb_obj->get_output_byte(data_ptr);
@@ -321,7 +321,7 @@ void ViaCuda::process_adb_command(uint8_t cmd_byte, int data_count)
LOG_F(9, "Cuda: ADB Talk command requested\n");
response_header(CUDA_PKT_ADB, 0);
int adb_reg = cmd_byte & 0x3;
- if (adb_obj->adb_verify_talk(adb_dev, adb_reg)) {
+ if (adb_obj->talk(adb_dev, adb_reg, this->in_buf[2])) {
response_header(CUDA_PKT_ADB, 0);
}
else {