mirror of
https://github.com/dingusdev/dingusppc.git
synced 2024-12-23 06:29:38 +00:00
Slightly clean-up and expansion for future uses
This commit is contained in:
parent
c0d0187190
commit
f2ab933884
@ -28,12 +28,15 @@ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|||||||
#include <cinttypes>
|
#include <cinttypes>
|
||||||
#include <cstring>
|
#include <cstring>
|
||||||
#include "devices/adb.h"
|
#include "devices/adb.h"
|
||||||
|
|
||||||
#include <thirdparty/SDL2/include/SDL.h>
|
#include <thirdparty/SDL2/include/SDL.h>
|
||||||
#include <thirdparty/SDL2/include/SDL_events.h>
|
#include <thirdparty/SDL2/include/SDL_events.h>
|
||||||
#include <thirdparty/SDL2/include/SDL_keycode.h>
|
#include <thirdparty/SDL2/include/SDL_keycode.h>
|
||||||
#include <thirdparty/SDL2/include/SDL_mouse.h>
|
#include <thirdparty/SDL2/include/SDL_mouse.h>
|
||||||
#include <thirdparty/SDL2/include/SDL_stdinc.h>
|
#include <thirdparty/SDL2/include/SDL_stdinc.h>
|
||||||
|
|
||||||
|
#include <thirdparty/loguru/loguru.hpp>
|
||||||
|
|
||||||
using namespace std;
|
using namespace std;
|
||||||
|
|
||||||
ADB_Bus::ADB_Bus() {
|
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 (device == keyboard_access_no) {
|
||||||
if (adb_keybd_listen(reg)) {
|
if (adb_keybd_listen(reg)) {
|
||||||
return true;
|
return true;
|
||||||
@ -71,11 +74,28 @@ bool ADB_Bus::adb_verify_listen(int device, int reg) {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool ADB_Bus::talk(int device, int reg, uint16_t value) {
|
||||||
|
//temp code
|
||||||
return false;
|
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
|
//temp code
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -39,8 +39,11 @@ public:
|
|||||||
ADB_Bus();
|
ADB_Bus();
|
||||||
~ADB_Bus();
|
~ADB_Bus();
|
||||||
|
|
||||||
bool adb_verify_listen(int device, int reg);
|
bool listen(int device, int reg);
|
||||||
bool adb_verify_talk(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_keybd_listen(int reg);
|
||||||
bool adb_mouse_listen(int reg);
|
bool adb_mouse_listen(int reg);
|
||||||
|
@ -307,7 +307,7 @@ void ViaCuda::process_adb_command(uint8_t cmd_byte, int data_count)
|
|||||||
else if ((cmd & 0xC) == 8) {
|
else if ((cmd & 0xC) == 8) {
|
||||||
LOG_F(9, "Cuda: ADB Listen command requested\n");
|
LOG_F(9, "Cuda: ADB Listen command requested\n");
|
||||||
int adb_reg = cmd_byte & 0x3;
|
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);
|
response_header(CUDA_PKT_ADB, 0);
|
||||||
for (int data_ptr = 0; data_ptr < adb_obj->get_output_len(); data_ptr++) {
|
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);
|
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");
|
LOG_F(9, "Cuda: ADB Talk command requested\n");
|
||||||
response_header(CUDA_PKT_ADB, 0);
|
response_header(CUDA_PKT_ADB, 0);
|
||||||
int adb_reg = cmd_byte & 0x3;
|
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);
|
response_header(CUDA_PKT_ADB, 0);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
Loading…
Reference in New Issue
Block a user