GC custom peripherals

Post Reply
Lollipop
Posts: 22
Joined: Wed Jun 12, 2013 1:11 am

GC custom peripherals

Post by Lollipop » Wed Sep 17, 2014 3:48 am

Hi guys,

So I'm interested in making custom peripherals for the Gamecube and the Hi Speed Port and Serial Port seem to have a lot of potential (besides controller ports of course). I just wanted to know if there is much support for this kind of stuff in the libogc libraries and such. If not I guess we could just bit bang it?

For example. How likely would it be that we could take a camera or say DVD player that outputs composite video and then feed it into one of the ports and have the same signal then pushed out from the GC's AV port (I know it sound redundant).

I think this is possible? At least the hardware should be adequate since the Gameboy Player does most of the hardware emulation and the GC essentially just acts as a mediator/interpreter for the controller/player, the screen, and the Gameboy Player.

Thanks,

Lollipop
User avatar
emu_kidid
Site Admin
Posts: 4571
Joined: Mon Mar 29, 2010 10:06 am
Location: Australia
Contact:

Re: GC custom peripherals

Post by emu_kidid » Wed Sep 17, 2014 3:52 am

libOGC can talk to the serial ports but there is no current support for the HSP, although it wouldn't take much for either.

Your ideas are very redundant btw :P
Image
Lollipop
Posts: 22
Joined: Wed Jun 12, 2013 1:11 am

Re: GC custom peripherals

Post by Lollipop » Wed Sep 17, 2014 3:59 am

Thanks for the replay emu_kidid Of course I can't give away all my ideas right off the bat right? ;) And just wondering but will the serial port be fast enough for stuff like video?
User avatar
emu_kidid
Site Admin
Posts: 4571
Joined: Mon Mar 29, 2010 10:06 am
Location: Australia
Contact:

Re: GC custom peripherals

Post by emu_kidid » Wed Sep 17, 2014 4:08 am

Serial Port = SPI protocol, ~27MHz.

HSP port would be best.
Image
Lollipop
Posts: 22
Joined: Wed Jun 12, 2013 1:11 am

Re: GC custom peripherals

Post by Lollipop » Wed Sep 17, 2014 10:29 pm

hm... on the libOGC documentation the highest EXI device frequency listed is 32 MHz

http://libogc.devkitpro.org/group__exi__speed.html

Ok now after reading YAGCD and the libogc documentation, I'm confused as to what the hi speed port actually is. Under YAGCD 2.4.1 Connectors, there is a "High Speed Port" listed but only 8 pins are listed. The hi-speed port that the Gameboy player uses has a total of 36 pins, the same as the "SDRAM/Parallel Port" listed under YAGCD. Is there another port that I am unaware of?
User avatar
emu_kidid
Site Admin
Posts: 4571
Joined: Mon Mar 29, 2010 10:06 am
Location: Australia
Contact:

Re: GC custom peripherals

Post by emu_kidid » Wed Sep 17, 2014 11:13 pm

It's mapped to a spot after ARAM, it's a SDRAM interface I believe.
Image
User avatar
Papy.G
Posts: 173
Joined: Mon Mar 04, 2019 6:14 am
Location: France, Occitanie
Contact:

Re: GC custom peripherals

Post by Papy.G » Wed Aug 28, 2019 12:35 pm

It's an error in YAGCD, the BBA port is called Serial Port 1, the other little serial port is called Serial Port 2, both are serial ports. The Hi Speed Port is a memory bus expansion port.

Bit-banging IOs is the worse thing that can be done, in terms of bandwith and CPU load, sometimes it is better than nothing, but nowadays, it is abusively used in each and every application with the hype of SBCs we see all over (RPi/Arduino…).

Is the Hi-Speed Port the bus where the triforce expansions were connected?
I was just wondering how data and adresses are multiplexed, since YAGCD says that it is adressable on the ARAM bus over the ARAM's 16MB, but don't manage to figure out how it can adress more than 16MB, because of the bus width. Also, will a memory expansion card need much logic aside the ram chips, and what kind of chips will it need?
DMG/MF OC, AGB/SC miniSD, NTR/NeoMK3, USG/flashme V8/SC miniSD
DOL001(EUR)/RGB/GCPlug/GBP/SD2SP2, RVL 001(EUR)/RGB/CMP/WiiSD

SD2SP2 in action on video
Post Reply