XenoGC fork

User avatar
Site Admin
Posts: 4852
Joined: Mon Mar 29, 2010 10:06 am
Location: Australia

Re: XenoGC fork

Post by emu_kidid » Tue Oct 13, 2020 5:23 am

vingt-2 wrote:
Tue Oct 13, 2020 4:51 am
Ah that's alright, I was just bummed out yesterday because I hadn't noticed your forked version had a missing pointer dereference when sending exi commands for the memcard so I wasted too many hours going over the documentation. I ended up implementing support for file lookup on either memcard instead of having the gc scan through like a mad dog and like you said potentially picking up on stale/garbage data. It's quite easy to get it to work thanks to swiss's your support for writing arbitrary files to the memcard. I'm booting a dol called gbiloader for which I've added support for sd2sp2 to real quick and I can boot to swiss in a matter of seconds. Hurray!
Here's a link to my fork if you want to merge it in with yours: https://github.com/vingt-2/xenogcfork/
Sure, if you want make a pull request and tidy up the versioning or whatever I'll merge it in.
User avatar
Diego borella
Posts: 212
Joined: Sat Jan 11, 2020 8:37 pm
Location: Brazil

Re: XenoGC fork

Post by Diego borella » Thu Oct 15, 2020 4:52 pm

vingt-2 wrote:
Tue Oct 13, 2020 4:51 am

Here's a link to my fork if you want to merge it in with yours: https://github.com/vingt-2/xenogcfork/
I had a frustrated idea in an experiment from another post ... but after I took apart the welds I realized that something was wrong ... :roll:
I saw that the atmega 238 can behave like the atmega8, at least that's what I understood when reading the datasheet ... :!:

do you think your fork would be written on atmega 328? :?:
is it ready for use already?

I have this equipment for the flash:
arduino for NGC
(185.51 KiB) Not downloaded yet
Posts: 4
Joined: Thu May 05, 2022 2:53 pm

Re: XenoGC fork

Post by ShellShock83 » Thu May 05, 2022 11:15 pm

dantheman2865 wrote:
Fri Oct 14, 2011 5:39 pm
emu_kidid wrote:I had a brief chat with the original author. he says that the mn102 code can block the ppc since it masks interrupts whilst it does stuff
I think I finally understand that. The code I had for DVD_CallFunc() only cleared some existing interrupts (dvd[0] = 0x14) because I didn't understand what I was doing at the time. I believe a lot of the hanging problems, etc., are caused by this. My idea is to enable the interrupts (dvd[0] = 0x2e) so that potentially the drive won't hang up at that point.

As soon as I get my Xeno Reflashed I will test this.
checks the drive state on init to make sure it is ready for unloading xeno
https://github.com/emukidid/xenogcfork/ ... n.cpp#L180
the hanging looks to be caused by internal code being loaded to the mn102
causing the blocking

https://github.com/emukidid/xenogcfork/ ... /dvd.h#L22
Post Reply