Starting the IDE-EXI project !

Support forum for the IDE to EXI adapter
User avatar
megalomaniac
Posts: 2480
Joined: Sun Aug 21, 2011 5:33 am
Location: Drunk in Texas
Contact:

Re: Starting the IDE-EXI project !

Post by megalomaniac » Sun Nov 11, 2012 12:15 am

MockyLock wrote:I tried with another chip, same result :(
I really can't figure out what i'm doing wrong.
May I ask you megalomaniac if you would sell me some CPLD already programmed ?
At least i could go on on my IDE-EXi adapter, and try again later to program myself.

EDIT: I tried with another computer too. No success.
you could ship me your board and i can take a look and try it out...if it fails to program here, then maybe its some sort of chip issue...or if i can program it, then maybe its a computer issue....



port95nt??
not sure if i have that installed, ill have to take a look next time im on my windows machine again....



edit:
also send me that modchip board in the first post...i can map that one out and document it for future reference....if those chips you have dont work, then i can also try to get that modchip working....
emu_kidid wrote: beer is like WD40 for megalomaniac's brain, gets the gears moving
>>> BadAssConsoles.com <<<

Image Image Image
User avatar
MockyLock
Posts: 322
Joined: Tue Aug 07, 2012 8:12 pm

Re: Starting the IDE-EXI project !

Post by MockyLock » Sun Nov 11, 2012 5:03 pm

I tried with port95nt installed but nothing changed.
As you were agree, i could send you the boards. The modchip from the fist post is not in well shape. I tried some soldering, and then some board modification. I can send it to you but i've cut any trace from chip to anywhere on the board. I can ship it (and give it) to you, but for testing, you'll have to solder on the CPLD pins themselves.
I don't want to bother you with my problem, and i really thank you for considering my issues.
User avatar
MockyLock
Posts: 322
Joined: Tue Aug 07, 2012 8:12 pm

Re: Starting the IDE-EXI project !

Post by MockyLock » Tue Nov 20, 2012 4:31 pm

Hello
Even if for now i don't have a working xilinx chip, I'm still studying the project and I found this quite cool solution for the memory card connection:
Image
It's an Advance Game Port, but i assume that averyone here knows it.
The good surprise is when you open the "mem card" :
Image
Here is a GC mem card board and shell already wired with color cable that can help us for soldering on the right signals.

It makes this part of the project a bit easier.
User avatar
emu_kidid
Site Admin
Posts: 4466
Joined: Mon Mar 29, 2010 10:06 am
Location: Australia
Contact:

Re: Starting the IDE-EXI project !

Post by emu_kidid » Tue Nov 20, 2012 10:13 pm

nice, I have one of those on the list, plan to add cart dumping ability through it :p
Image
User avatar
MockyLock
Posts: 322
Joined: Tue Aug 07, 2012 8:12 pm

Re: Starting the IDE-EXI project !

Post by MockyLock » Thu Nov 22, 2012 5:33 pm

By the way, does anyone would be able to give me a rip of the Advance Game Port disc please ?
i can't find it out on the web, and i have loose AGP with no disc.
I would like to try it with SD Reader.
Thank you !
User avatar
liquitt
Posts: 1753
Joined: Thu Apr 01, 2010 5:43 am
Location: neverland
Contact:

Re: Starting the IDE-EXI project !

Post by liquitt » Thu Nov 22, 2012 6:42 pm

MockyLock wrote:By the way, does anyone would be able to give me a rip of the Advance Game Port disc please ?
i can't find it out on the web, and i have loose AGP with no disc.
I would like to try it with SD Reader.
Thank you !
*cough* *cough*
baaaad boy. no warez requests here!
please search before you ask - a lot has been discussed already!
(or use google with "site:gc-forever.com *term*")
http://is.gd/MDmZcr

we also have a wiki filled with knowledge
http://is.gd/dX58Rm
User avatar
emu_kidid
Site Admin
Posts: 4466
Joined: Mon Mar 29, 2010 10:06 am
Location: Australia
Contact:

Re: Starting the IDE-EXI project !

Post by emu_kidid » Thu Nov 22, 2012 9:42 pm

can't be dumped without major effort anyway, the DOL files are scattered around the disc in areas with bad sectors around them.
Image
User avatar
megalomaniac
Posts: 2480
Joined: Sun Aug 21, 2011 5:33 am
Location: Drunk in Texas
Contact:

Re: Starting the IDE-EXI project !

Post by megalomaniac » Thu Nov 22, 2012 10:17 pm

emu_kidid wrote:can't be dumped without major effort anyway, the DOL files are scattered around the disc in areas with bad sectors around them.
I bet you can not dump it
emu_kidid wrote: beer is like WD40 for megalomaniac's brain, gets the gears moving
>>> BadAssConsoles.com <<<

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

Re: Starting the IDE-EXI project !

Post by emu_kidid » Thu Nov 22, 2012 10:25 pm

"challenge accepted"? :p it's on my list anyway since I've wanted to write a GBA cart/save dumping tool for a while now.
Image
User avatar
MockyLock
Posts: 322
Joined: Tue Aug 07, 2012 8:12 pm

Re: Starting the IDE-EXI project !

Post by MockyLock » Sun Nov 25, 2012 11:02 am

Sorry for the request.
I own a AGP brand new but blistered, and i thought that i could find the disc on the web to avoid open it, and test the loose one.
Now with emu_kidid tips, i can underdstand why i can't find it.
and i'm gonna try to find another one to use the cable for the IDE-EXI adapter.
User avatar
megalomaniac
Posts: 2480
Joined: Sun Aug 21, 2011 5:33 am
Location: Drunk in Texas
Contact:

Re: Starting the IDE-EXI project !

Post by megalomaniac » Sat Dec 01, 2012 8:38 am

@MockyLock
package has been received..

Code: Select all

the good news:
i can communicate with the chip...
i think your programmer may be working properly...

the bad news:
your soldering job was part of the communication issue...
this chip might not be compatible...(unsure why not)



during testing i received the same IDCODE mismatch error..
i checked pwr/gnd and everything seemed ok..
i checked jtag points and noticed a few pins did not have proper contact with the pads...
this can be tricky to discover because if you apply pressure to the pin, then it will make contact and appear to have proper continuity...
if you use light pressure on the pin, then the circuit appears open.

after adding a bit more solder to those points i tried again with the same IDCODE error...
i then applied a new layer of solder to all pins and issue was resolved...
communication established with the chip...


notice the difference in IDCODE (hex) and version detected between the two chip types:

XC95144XL-10TQG100C

Code: Select all

// *** BATCH CMD : ReadIdcode -p 1 
Maximum TCK operating frequency for this device chain: 0.
Validating chain...
Boundary-scan chain validated successfully.
'1': IDCODE is '01011001011000001000000010010011'
'1': IDCODE is '59608093' (in hex).
'1': : Manufacturer's ID = Xilinx xc95144xl, Version : 5
XC95144XL-10TQ100C

Code: Select all

// *** BATCH CMD : ReadIdcode -p 1
Maximum TCK operating frequency for this device chain: 0.
Validating chain...
Boundary-scan chain validated successfully.
'1': IDCODE is '00101001011000001000000010010011'
'1': IDCODE is '29608093' (in hex).
'1': : Manufacturer's ID = Xilinx xc95144xl, Version : 2

if anyone else has ability to jtag their chip, please post this data above for comparison....


i am able to perform the following actions with no issues as shown below:
ERASE, BLANK CHECK, READBACK, GET DEVICE ID, GET CHECKSUM (0000), and GET DEVICE SIGNATURE

Code: Select all

INFO:iMPACT - Current time: 11/29/2012 10:15:17 PM
// *** BATCH CMD : Erase -p 1 
PROGRESS_START - Starting Operation.
Maximum TCK operating frequency for this device chain: 0.
Validating chain...
Boundary-scan chain validated successfully.
'1': Erasing device...
'1': Erasure completed successfully.
PROGRESS_END - End Operation.
Elapsed time =      1 sec.

INFO:iMPACT - Current time: 11/29/2012 10:15:22 PM
// *** BATCH CMD : BlankCheck -p 1 
PROGRESS_START - Starting Operation.
Maximum TCK operating frequency for this device chain: 0.
Validating chain...
Boundary-scan chain validated successfully.
'1': Putting device in ISP mode...done.
'1': Putting device in ISP mode...done.
'1': Performing blank check on device ...
'1': Device is blank.
'1': Blank check completed successfully.
PROGRESS_END - End Operation.
Elapsed time =      0 sec.

INFO:iMPACT - Current time: 11/29/2012 10:15:33 PM
// *** BATCH CMD : ReadbackToFile -p 1 -file "C:/Documents and Settings/megalomaniac/Desktop/gcide3-10TQG/blah.jed" 
PROGRESS_START - Starting Operation.
Maximum TCK operating frequency for this device chain: 0.
Validating chain...
Boundary-scan chain validated successfully.
'1': Putting device in ISP mode...done.
'1': Putting device in ISP mode...done.
'1': Performing readback on device...
'1': Writing to file C:/Documents and Settings/megalomaniac/Desktop/gcide3-10TQG/blah.jed ...
'1': Read back completed successfully.
PROGRESS_END - End Operation.
Elapsed time =      1 sec.

INFO:iMPACT - Current time: 11/29/2012 10:15:41 PM
// *** BATCH CMD : ReadIdcode -p 1 
Maximum TCK operating frequency for this device chain: 0.
Validating chain...
Boundary-scan chain validated successfully.
'1': IDCODE is '01011001011000001000000010010011'
'1': IDCODE is '59608093' (in hex).
'1': : Manufacturer's ID = Xilinx xc95144xl, Version : 5

INFO:iMPACT - Current time: 11/29/2012 10:15:45 PM
// *** BATCH CMD : Checksum -p 1 
PROGRESS_START - Starting Operation.
Maximum TCK operating frequency for this device chain: 0.
Validating chain...
Boundary-scan chain validated successfully.
'1': Putting device in ISP mode...done.
'1': Putting device in ISP mode...done.
'1': Reading device contents...
'1': Calculated checksum is 0000
PROGRESS_END - End Operation.
Elapsed time =      1 sec.

INFO:iMPACT - Current time: 11/29/2012 10:15:49 PM
// *** BATCH CMD : ReadUsercode -p 1 
Maximum TCK operating frequency for this device chain: 0.
Validating chain...
Boundary-scan chain validated successfully.
'1': Usercode is ''

programming appears to fail upon reaching a certain point anywhere under ~15%...it will then either get hung during programming or fail immediately...
sometimes during programming the initial erase cycle will also hang...


i rewired all pwr/gnd just to make sure but still no luck...
tried to program with v2 code, no luck...
tried to rebuild the jed in Project Navigator specifying 10TQ (instead of default 5TQ) and still no luck...


next i went into debug mode and performed an IDCODE loop to verify it can read the IDCODE successfully 10,000 times...no problems, chip performed as expected
then i went into the main debug and bitset TDI and TMS thru different sequences and combinations of 0 and 1 to confirm the chip followed thru the debug graph as expected...no problems, chip performed as expected...


this chip is the Pb free version and according to the spec sheets should be completely compatible with non-Pb free...this chip is fully recognizable by IMPACT, yet fails to program...
i highly doubt this chip is damaged from any of your troubleshooting as it is performing as expected in terms of standard communications thru IMPACT...




not sure what else i can do for you unless someone else has experienced and resolved this exact failure to program issue...
emu_kidid wrote: beer is like WD40 for megalomaniac's brain, gets the gears moving
>>> BadAssConsoles.com <<<

Image Image Image
User avatar
MockyLock
Posts: 322
Joined: Tue Aug 07, 2012 8:12 pm

Re: Starting the IDE-EXI project !

Post by MockyLock » Sat Dec 01, 2012 7:11 pm

I really thank you for the time you spend on this, and for taking care of me.
I tested the continuity of the legs with multimeter but as you said, i should have pressed the pins and get the contact just for testing.
Anyway i would have been stopped at the next step, programming.
Since i will not be able to do anything with those chips, i give them to you, as the boards. Maybe you'll learn more from them, and they'll be usefull later.
So it's still a "work in progress" :)
User avatar
emu_kidid
Site Admin
Posts: 4466
Joined: Mon Mar 29, 2010 10:06 am
Location: Australia
Contact:

Re: Starting the IDE-EXI project !

Post by emu_kidid » Sun Dec 02, 2012 1:25 am

I've had the failure to program issue out of the 100 xilinx I had, only one experienced it. Couldn't solve it, I just assume it's faulty.
Image
User avatar
megalomaniac
Posts: 2480
Joined: Sun Aug 21, 2011 5:33 am
Location: Drunk in Texas
Contact:

Re: Starting the IDE-EXI project !

Post by megalomaniac » Mon Dec 03, 2012 1:25 am

3.9v....programming successful
emu_kidid wrote: beer is like WD40 for megalomaniac's brain, gets the gears moving
>>> BadAssConsoles.com <<<

Image Image Image
User avatar
MockyLock
Posts: 322
Joined: Tue Aug 07, 2012 8:12 pm

Re: Starting the IDE-EXI project !

Post by MockyLock » Mon Dec 03, 2012 8:28 am

So you did it !
It really sounds like a joke from xilinx chips themselves.
I had 3.43 volts and i failed to program, and you did it with 3.9.
I would never think that 0.5 volt would be so much important.
Congratulations !
User avatar
megalomaniac
Posts: 2480
Joined: Sun Aug 21, 2011 5:33 am
Location: Drunk in Texas
Contact:

Re: Starting the IDE-EXI project !

Post by megalomaniac » Wed Dec 19, 2012 9:14 am

seems like higher voltage is definitely not limited to the Pb-free versions...
i have spend a lot of time trying to figure another chip out...


i could not get correct IDCODE until 3.875v
my chips come factory write protected so i need to perform an initial override erase...
i could not perform the erase until 3.933v
....after initial erase, i could not program until 4.125v
emu_kidid wrote: beer is like WD40 for megalomaniac's brain, gets the gears moving
>>> BadAssConsoles.com <<<

Image Image Image
User avatar
MockyLock
Posts: 322
Joined: Tue Aug 07, 2012 8:12 pm

Re: Starting the IDE-EXI project !

Post by MockyLock » Wed Dec 19, 2012 11:10 am

Thank you for keeping all of us aware of your knowledge.
i was definitely not able to do the programming step, first because I didn't have these knowledges, and second because i don't have such device to provide very definite voltage (it would be easier to get such device than such knowledge ;)
GreyRogue
Posts: 38
Joined: Sun Dec 07, 2014 2:57 am

Re: Starting the IDE-EXI project !

Post by GreyRogue » Sun Dec 07, 2014 3:03 am

Sorry if this thread is too old to post to. I ran across it when I was searching how to dump my Datel AGP disc. I finally figured out all the needed addresses, so I thought I'd share here in case anyone else was searching for it:

Disc ring inscription:
IFPI LL31
THIN ICE MEDIA / http://WWW.CODEJUNKIES.COM
GAMECUBE
ADVANCED GAMEPORT GBA EMULATOR
04070501

Information read from the disc (Offset Size). I ended up reading everything in 0x100000 blocks.
AGP

Header and Disc Info
0x00000000 0x00001000
Header
0x00000000 0x00000020
FST
0x00000424 0x00000008
Region
0x00000458 0x00000004

AppLoader Data
0x00002440 0x00000020

Apploader
0x00002460 0x00019F8C
FileInfo
0x00017000 0x00000040
Banner
0x00018000 0x00001960

Startup Menu & Appswitcher
0x50000000 0x000BA000
0x50000000 0x00080000
0x50080000 0x0003A000

AGP
12D00000 00200000

Bounty Hunter
9900000 00100000

Chopper 2
A900000 00100000

Dragon Tiles 3
B100000 00100000

Invaders
B900000 00100000

Jetpack 2
C100000 00100000

Loop The Loop
D900000 00100000

Paddle Panic
E100000 00100000

Popem
E900000 00100000

Proxima
F900000 00100000

Super Power Shot
F100000 00100000

Cheat Kit
12B00000 00200000
User avatar
emu_kidid
Site Admin
Posts: 4466
Joined: Mon Mar 29, 2010 10:06 am
Location: Australia
Contact:

Re: Starting the IDE-EXI project !

Post by emu_kidid » Sun Dec 07, 2014 5:24 am

Very offtopic ^^ but let me know if you figure out the EXI commands to dump some carts ;)
Image
User avatar
MockyLock
Posts: 322
Joined: Tue Aug 07, 2012 8:12 pm

Re: Starting the IDE-EXI project !

Post by MockyLock » Sun Dec 07, 2014 8:28 am

Well, i will sound as a real nooby, but i don't understand anything about your post :] (coders speaking seems to me like chinese...)
Did you successfully ripped this AGP disc, or did you find some newer information in order to make this possible ?
GreyRogue
Posts: 38
Joined: Sun Dec 07, 2014 2:57 am

Re: Starting the IDE-EXI project !

Post by GreyRogue » Sun Dec 07, 2014 10:03 pm

Yeah, there was discussion about ripping it on page 5 so I figured it was more an issue of an old thread than offtopic, but yeah.

I ripped it with a modded version of cleanrip. Just uncomment the section you want (Action Replay or AGP). I can't guarantee the values are right for all versions of Action Replay. The whole patch is a hack. The drive kept going to sleep so I reinitialized after every read (increased read size to 0x100000). It also doesn't need to re memset if it hasn't read anything from the disc. Since I only needed to run it twice, I decided I didn't care. Use at your own risk, etc.:

Code: Select all

Index: include/main.h
===================================================================
--- include/main.h	(revision 41)
+++ include/main.h	(working copy)
@@ -36,7 +36,7 @@
 #define TYPE_FAT 0
 #define TYPE_NTFS 1
 
-#define READ_SIZE		0x10000
+#define READ_SIZE		0x100000
 #define ONE_MEGABYTE    0x000200
 #define ONE_GIGABYTE    0x080000
 
Index: source/gc_dvd.c
===================================================================
--- source/gc_dvd.c	(revision 41)
+++ source/gc_dvd.c	(working copy)
@@ -166,18 +166,55 @@
 	if (offset >> 2 > 0xFFFFFFFF)
 		return -1;
 
-	if ((((int) dst) & 0xC0000000) == 0x80000000) // cached?
-		dvd[0] = 0x2E;
-	dvd[1] = 0;
-	dvd[2] = read_cmd;
-	dvd[3] = read_cmd == DVDR ? offset >> 11 : offset >> 2;
-	dvd[4] = read_cmd == DVDR ? len >> 11 : len;
-	dvd[5] = (unsigned long) dst & 0x1FFFFFFF;
-	dvd[6] = len;
-	dvd[7] = 3; // enable reading!
-	DCInvalidateRange(dst, len);
-	while (dvd[7] & 1)
-		LWP_YieldThread();
+	unsigned int group = offset & 0xFFF00000;
+	bool doread = false;
+//	Datel discs
+//	if ((group == 0)
+//	AGP disc
+//	 || (group == 0x09900000)
+//	 || (group == 0x0A900000)
+//	 || (group == 0x0B100000)
+//	 || (group == 0x0B900000)
+//	 || (group == 0x0C100000)
+//	 || (group == 0x0D900000)
+//	 || (group == 0x0E100000)
+//	 || (group == 0x0E900000)
+//	 || (group == 0x0F100000)
+//	 || (group == 0x0F900000)
+//	 || (group == 0x50000000)
+//	 || (group == 0x12B00000)
+//	 || (group == 0x12C00000)
+//	 || (group == 0x12D00000)
+//	 || (group == 0x12E00000)
+//	Action Replay disc
+//	 || (group == 0x50000000)
+//	 || (group == 0x50100000)
+//	 || (group == 0x50200000)
+//	 || (group == 0x50300000)
+//	)
+		doread = true;
+	if (!doread)
+	{
+		memset(dst, 0, len);
+		return 0;
+	}
+	else
+	{
+		if (offset != 0)
+			init_dvd();
+		if ((((int) dst) & 0xC0000000) == 0x80000000) // cached?
+			dvd[0] = 0x2E;
+		dvd[1] = 0;
+		dvd[2] = read_cmd;
+		dvd[3] = read_cmd == DVDR ? offset >> 11 : offset >> 2;
+		dvd[4] = read_cmd == DVDR ? len >> 11 : len;
+		dvd[5] = (unsigned long) dst & 0x1FFFFFFF;
+		dvd[6] = len;
+		dvd[7] = 3; // enable reading!
+		DCInvalidateRange(dst, len);
+		while (dvd[7] & 1)
+			LWP_YieldThread();
+	}
 
 	if (dvd[0] & 0x4)
 		return 1;
User avatar
emu_kidid
Site Admin
Posts: 4466
Joined: Mon Mar 29, 2010 10:06 am
Location: Australia
Contact:

Re: Starting the IDE-EXI project !

Post by emu_kidid » Sun Dec 07, 2014 10:53 pm

The drive kept going to sleep because you're probably reading beyond the actual data and running into "bad sectors". Thanks though, I'll rip my disk too now. Just curious how you got the sector addresses, were you just dumping a sector / trial and error with drive resetting all the time or did you take apart the main DOL?
Image
GreyRogue
Posts: 38
Joined: Sun Dec 07, 2014 2:57 am

Re: Starting the IDE-EXI project !

Post by GreyRogue » Sun Dec 07, 2014 11:07 pm

I had a custom build of Nintendont going. It would intercept read requests, read the disc, apply patches, then signal a read completion. I was original saving a copy as it was reading, but decided to just record the offsets while it was running and use something a little more thorough to do my "official" version. I'm pretty sure I have all the addresses, as I opened the drive on my gamecube at various points to see when it actually needs the disc (as near as I can tell, after booting, after selecting construction kit or AGP, and after any built-in GBA game selection in AGP).

It does work. With some arguing with Dolphin, I can get it to start up the 10 built in (and awful) GBA games on the disc. I also just checked in a version of Nintendont that works with those same games, and will also load up Cheat Construction Kit (won't read the cartridge, though).
I'm hoping I won't have to reverse engineer the EXI commands and I can just make it work and then copy the memory buffer to dump my GBA games, but I might end up having to, or I might change my mind.
Post Reply