GameBoy Link Cable Functionality

Post Reply
cashlo
Posts: 6
Joined: Mon Nov 05, 2018 7:55 am
languages_spoken: english
ODROIDs: Odroid Go * 2
Contact:

GameBoy Link Cable Functionality

Unread post by cashlo » Mon Nov 05, 2018 8:33 am

I have started working on the link cable serial communication this weekend, and have it somewhere working now.
It seems to be taking too much resources when running at original 8kHz and the audio started cracking, so I turn it down to 800Hz and it seems to work...For around a minute:
https://photos.app.goo.gl/JMHyayGWfeJBhjqQ9

I want it to be compatible with original hardware, but I don't have the GameBoy / cable / game to test with, if anyone want to send one my way I would very much appreciate it. :)
I will continue to work on this when I have time, but I don't have any experience with ESP nor FreeRTOS, so any suggestion / help is welcome:
https://github.com/cashlo/go-play/blob/ ... y/serial.c

User avatar
odroid
Site Admin
Posts: 29994
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID
Contact:

Re: GameBoy Link Cable Functionality

Unread post by odroid » Mon Nov 05, 2018 8:53 am

Very interesting project indeed. :o

ygreck
Posts: 3
Joined: Tue Nov 06, 2018 1:53 am
languages_spoken: german
ODROIDs: Odroid Go
Contact:

Re: GameBoy Link Cable Functionality

Unread post by ygreck » Tue Nov 06, 2018 1:56 am

That's incredible! Does this work with pokemon, too?

cashlo
Posts: 6
Joined: Mon Nov 05, 2018 7:55 am
languages_spoken: english
ODROIDs: Odroid Go * 2
Contact:

Re: GameBoy Link Cable Functionality

Unread post by cashlo » Tue Nov 06, 2018 3:10 am

ygreck wrote:That's incredible! Does this work with pokemon, too?
That's actually why I wanted to work on this. :)

ygreck
Posts: 3
Joined: Tue Nov 06, 2018 1:53 am
languages_spoken: german
ODROIDs: Odroid Go
Contact:

Re: GameBoy Link Cable Functionality

Unread post by ygreck » Tue Nov 06, 2018 9:57 pm

Okay, I have two Odroid Go's, one GBC with Pokemon Gold and I bought a link cable over aliexpress yesterday.
Give me some time to setup my system to compile your firmware.

Can you create a pinout grafic for me? with fritzing, for example

/edit1
Okay... I was not able to compile it under win10 today. :oops:

cashlo
Posts: 6
Joined: Mon Nov 05, 2018 7:55 am
languages_spoken: english
ODROIDs: Odroid Go * 2
Contact:

Re: GameBoy Link Cable Functionality

Unread post by cashlo » Wed Nov 07, 2018 2:13 am

It is still a work in progress, and there's still some issues I need to fix, I cannot guarantee the safety of your Pokemon ( most likely it doesn't work and crash the game ).
I use these pins:

pin1: Ground
pin2: Not used
pin3: Serial Out
pin4: Serial In
pin5: Serial Clock


You can find the color code of the link cable on the internet. :)

The project use symlinks, that's why it won't compile on windows, you need a Mac or Linux machine.

ygreck
Posts: 3
Joined: Tue Nov 06, 2018 1:53 am
languages_spoken: german
ODROIDs: Odroid Go
Contact:

Re: GameBoy Link Cable Functionality

Unread post by ygreck » Wed Nov 07, 2018 5:00 am

Oh, okay - I wasted my time today xD

I used to build a breakout board like in this project: http://obskyr.io/lanette/devlog/making- ... out-board/
With this board the odroid gets more like a real gameboy :P

And my pokemon... they will die for science!

cashlo
Posts: 6
Joined: Mon Nov 05, 2018 7:55 am
languages_spoken: english
ODROIDs: Odroid Go * 2
Contact:

Re: GameBoy Link Cable Functionality

Unread post by cashlo » Mon Nov 12, 2018 6:06 am

Minor update: I fixed a memory leak, so it is more stable now, but it still stops after a while. I think it is a software issue, but I don't know what.
I also got a GBC with Pokemon trading card game, so I will be able to test with the GBC when my link cables arrive...

And I found out how to compile on Windows, copy the whole "odroid" folder under odroid-go-common\components, and use it to replace the symlink file "odroid" under \gnuboy-go\components.

Daveman
Posts: 1
Joined: Thu Dec 20, 2018 12:06 am
languages_spoken: english
ODROIDs: ODROID-GO
Contact:

Re: GameBoy Link Cable Functionality

Unread post by Daveman » Thu Dec 20, 2018 1:49 am

Great project! Any progress yet? I'm planning to give an odroid to my brother, you would make our christmas day ;-)

Dummy-X
Posts: 1
Joined: Thu Dec 27, 2018 10:28 pm
languages_spoken: italian
ODROIDs: ODROID-GO
Contact:

Re: GameBoy Link Cable Functionality

Unread post by Dummy-X » Thu Dec 27, 2018 10:34 pm

Daveman wrote:
Thu Dec 20, 2018 1:49 am
Great project! Any progress yet? I'm planning to give an odroid to my brother, you would make our christmas day ;-)
I am in the same situation. Any progress yet?

lordhardware
Posts: 56
Joined: Sat Sep 20, 2014 11:56 pm
languages_spoken: english
ODROIDs: U3
Odroid-W
Contact:

Re: GameBoy Link Cable Functionality

Unread post by lordhardware » Thu Jan 03, 2019 9:21 pm

I am happy to donate some real money to make this happen.

I know it would slow down the process, but would it be possibly to engage a wait/call/response/wait routine into it so the link functionality completes withoit droppong sync?

cashlo
Posts: 6
Joined: Mon Nov 05, 2018 7:55 am
languages_spoken: english
ODROIDs: Odroid Go * 2
Contact:

Re: GameBoy Link Cable Functionality

Unread post by cashlo » Mon Jan 07, 2019 9:52 am

Happy new year!
I have been working on some other projects, so I have been putting this aside for a while. But I am very happy to see the continued interest on this, so I will try to find more time to work on this. :D

The good news is I got more hardware to test with now, including some Game Boys and a Game Boy printer! The printer is nice to test with, because it use the same protocol to communicate with the Game Boy, and it takes away half of the variable in the communication as the printer always act as a slave. I did some quick test with the Pokemon card game, it doesn't work yet, so I will focus on getting this to work.

The bad news is that after talking to a Game Boy emulator guru, it looks like the main challenge will be the timing of the games themselves, as they expect both games to be running on the exact same speed, but that's just not the case for the emulator, it will require poking into the guts of the emulator, and some games will probably never works, but I am still hopeful on getting some games / functionalities to work ( like the printer ).

Another issue is that there is still memory leak within the code, but it should be easier to fix than the timing issue.

For the hardware I got most of what I needed already, only thing left is a pair of real game cartridge with simple link cable functionalities ( like Tetris ) to test with, I have been visiting some local retro game store, but no luck so far.
If you want to contribute to this project, sending me some games would help. :)

I like the breakout board idea, I ordered some link cable connectors as well. If I can get the software to work I will be happy to make a link-cable adapter so it will be easier for others to try this.

Post Reply

Return to “Game Emulators”

Who is online

Users browsing this forum: No registered users and 2 guests