jefflongo / gamecubecontrolleranalyzer Goto Github PK
View Code? Open in Web Editor NEWThis project forked from saleae/sampleanalyzer
GameCube controller analyzer for Saleae's Logic software
License: MIT License
This project forked from saleae/sampleanalyzer
GameCube controller analyzer for Saleae's Logic software
License: MIT License
N64 and GameCube controllers use the same underlying protocol. Refactor such that command decoding is implemented as a high level analyzer, so that the low level analyzer can be shared between both controller types.
Currently blocked on Saleae not allowing HLA's to operate on custom LLA's.
I was about to write my own PulseView analyzer for JoyBus protocol but noticed someone already made one for Logic. Neat!
I gave it a try but there seems to be a problem with command stop bits. It handles console command stop bits as 1's and parses them with following bits as the data:
Command: 0x00
Response: 0xd40000 but should be 0xa80000
I assume, based on the screenshot from the repo that you just count the time from last rising edge and when it's longer than 4us it identifies it as a stop bit. This is not going to work with some devices i.e. Wavebird receiver because the response can occur immediately.
Another idea that comes to my mind is that you can use known command lengths from the list here: https://sites.google.com/site/consoleprotocols/home/nintendo-joy-bus-documentation/gamecube-controller?authuser=0 and just cross check where the command should end. This is not perfect because custom devices like https://github.com/Aurelio92/GCPlus-2.0 use extra commands.
My setup:
Hi! I'm a Product Manager at Saleae and we’ve made improvements to our analyzer build process. Specifically, we cleaned up the build system, and switched to cmake, so there aren't multiple project files anymore. By implementing the changes outlined here you will be able to provide the community automatic builds in addition to a simplified build system. Let us know if you think you can make the changes or if you’d like us to make the changes for you.
Additionally, if you would like to update your analyzer so that results appear in Logic 2’s data table you can follow the steps outlined here. Note that if you upgrade your analyzer to FrameV2 it will not be backward compatible with Logic 1.
We really appreciate your time and effort! Please let us know if you have any feedback or questions. Thanks!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.