well i just updated my pc-gameboy linking program to support custom port mappings meaning you can use it with a parallel port on an expansion card rather than needing a 20 year old computer and/or rare modern motherboard with legacy ports on it
https://github.com/tzlion/gblinkdx/releases/tag/v0.3
well I was just looking into how the xboo and gblink cables work and i realised there was no fundamental need for the two applications to actually need differently wired cables, they're just using different pins for the same purpose... so i've added xboo compatibility to gblinkdx. meaning if you're a weirdo with extremely specific needs like me you don't need to keep two separate cables around anymore
https://github.com/tzlion/gblinkdx/releases/tag/v0.4
the original reason i was looking into that btw is the increasing possibility that i might have to try reimplementing at least some subset of xboo functionality myself.... my attempts to hack xboo communicator were hitting a bit of a brick wall when i tried it on a more up to date linux distro and it would only segfault. and in any case its not a sustainable solution lets face it
i kinda see there being 2 parts to this
1 - figure out how to upload a multiboot program to the gba
2 - then figure out how xboo communicator actually communicates with the program once running
& i would suspect there might be at least some open source implementation of (1) that i can work off of??? and the other stuff i'd just have to reverse engineer??
i wish the people doing this stuff back in like 2005 had just released their source code
OK SO I found this program where someone has actually implemented multiboot and enough of the xboo communicator protocol to do everything i need, but with a Raspberry Pi
https://github.com/akkera102/gba_01_multiboot
SO I attempted to modify it to communicate over parallel instead and it just WORKED!?!?!?
It is dog ass slow compared to the original communicator so I probably need to tweak some delays and stuff but i'm so glad this worked oh my god
Yeah it turns out it is faster on Linux and can pretty much get up to the speed of the original (albeit not 100% reliably) so it must just be the Windows driver slowing it down. Which on the one hand is a bit of a pisser that it's a problem I can't fix, but it's also good to know I've done everything "right" on my end and it's not a problem with my code
Well I've released my modified parallel port version of the xboo reimplementation. It works on modern windows and linux and supports expansion cards. I called it xboop
https://github.com/tzlion/xboop
In the meantime WinterMute has kindly released the source code for the original Xboo Communicator (https://github.com/devkitPro/xcomms) but I was already too deep in the hole on this implementation for now so I stuck with it, just used the original source for reference in some places
But I might look at modifying the original at some point later
@lion maybe the protocol is simple enough that you could poke a pi pico or something into the parallel port and figure out how its sending data
@mothcompute i guess there are 2 parts to it, the gba multiboot protocol to actually send the rom which i'm sure is documented... and then the 2-way communication with the communicator which yeah maybe i could reverse engineer.... reimplementing all that would be a lot of work however you slice it though
@lion just use inpoutx64.sys like everyone else does! (Do not do this. Please.)
@vikxin I mean what do you think I was using for gblinkdx already
@lion noooooo
@lion Let's VF DUMP !
@lion I know 2005 was a long time ago but we're not dead yet :P
Of course, in an ideal world source code should be available for all software but sadly we live in a capitalist world where the people who benefit financially from work done are often not the people doing the work.
Still, you'll probably appreciate this https://devkitpro.org/viewtopic.php?f=37&t=9627
@davejmurphy oh amazing, thank you!! I knew you were still around but didn't want to bother you for the source of a 20 year old program if I could find a way around it myself. I guess I should have just posted on your forum after all haha
was looking into the same being possible with my GBA multiboot dumping setup...........lol
that one depends on abandoned closed-source program Xboo Communicator to act as the PC client & that doesn't allow you to configure the port so fuck me i guess. i'm already stuck using linux for it because theres no way to get raw port access on 64bit windows without a library which i have no way to make it use