Minimal ipl boot Viper GC
Minimal ipl boot Viper GC
hello
I trying to compile minimal ipl boot for support SD2SP2 https://github.com/redolution/iplboot
But i have error when compile
ffshim.c
make[1]: powerpc-eabi-clang: Command not found
make[1]: *** [/opt/devkitpro/devkitPPC/base_rules:18: ffshim.o] Error 127
make: *** [Makefile:111: build] Error 2
i think problem with clang but i'm nweebie i compilation, i hope you could help me
(sorry for my english)
I trying to compile minimal ipl boot for support SD2SP2 https://github.com/redolution/iplboot
But i have error when compile
ffshim.c
make[1]: powerpc-eabi-clang: Command not found
make[1]: *** [/opt/devkitpro/devkitPPC/base_rules:18: ffshim.o] Error 127
make: *** [Makefile:111: build] Error 2
i think problem with clang but i'm nweebie i compilation, i hope you could help me
(sorry for my english)
- PlatypusWithCheese
- Posts: 12
- Joined: Thu Dec 12, 2019 11:59 am
Re: Minimal ipl boot Viper GC
if you are on debian/ubuntu
- Install latest devkitpro-pacman then run
- Install Clang and 32bit gcc libraries
- Create Clang symlink
- Locate PAL 1.0 IPL put it in the same directory as the makefile and name it ipl.rom
- Run make
but i do not know how to get it to output the viper gc file.
- Install latest devkitpro-pacman then run
Code: Select all
dkp-pacman -S gamecube-dev
Code: Select all
sudo apt-get install clang gcc-multilib
Code: Select all
ln -s /usr/bin/clang $DEVKITPPC/bin/powerpc-eabi-clang
- Run make
but i do not know how to get it to output the viper gc file.
Indigo DOL-001(EUR)/GBP/BBA/RGB/SD2SP2/GCLoader
Re: Minimal ipl boot Viper GC
tanks for help me compli is ok but error at end
Edit : I miss ipl.rom i test and i'm back for result
Edit 2 : it's create !!!
Code: Select all
ssaram.c
main.c
sidestep.c
ffshim.c
ffsystem.c
ff.c
ffunicode.c
linking ... iplboot-master.elf
output ... iplboot-master.dol
pack IPL ... iplboot-master.gcb
Traceback (most recent call last):
File "./dol2ipl.py", line 161, in <module>
sys.exit(main())
File "./dol2ipl.py", line 83, in main
with open(sys.argv[1], "rb") as f:
FileNotFoundError: [Errno 2] No such file or directory: 'ipl.rom'
make[1]: *** [/home/gc/Téléchargements/iplboot-master/Makefile:139: /home/gc/Téléchargements/iplboot-master/iplboot-master.gcb] Error 1
make: *** [Makefile:111: build] Error 2
Edit 2 : it's create !!!
Re: Minimal ipl boot Viper GC
Could you please share the compiled files? Thx!ledu205 wrote: ↑Fri Dec 20, 2019 10:39 amtanks for help me compli is ok but error at end
Edit : I miss ipl.rom i test and i'm back for resultCode: Select all
ssaram.c main.c sidestep.c ffshim.c ffsystem.c ff.c ffunicode.c linking ... iplboot-master.elf output ... iplboot-master.dol pack IPL ... iplboot-master.gcb Traceback (most recent call last): File "./dol2ipl.py", line 161, in <module> sys.exit(main()) File "./dol2ipl.py", line 83, in main with open(sys.argv[1], "rb") as f: FileNotFoundError: [Errno 2] No such file or directory: 'ipl.rom' make[1]: *** [/home/gc/Téléchargements/iplboot-master/Makefile:139: /home/gc/Téléchargements/iplboot-master/iplboot-master.gcb] Error 1 make: *** [Makefile:111: build] Error 2
Edit 2 : it's create !!!
Re: Minimal ipl boot Viper GC
file is too big for vipergc and i don't have vipergc extreme. I don't kown if working or not
Re: Minimal ipl boot Viper GC
Upload it to free.fr "envoi de gros fichiers", and give back the link here, there everyone would be able to download it, I would love to get a GCI version, since the official IPLboot.dol doesn't manage to boot SWISS off an SD2SP2 from a Memcard (GamExploit), while it works with SD Gecko.
I will try it as soon as I can.
I will try it as soon as I can.
DMG/MultiFreq OC/EDGB/EZF Jr, AGB/SC miniSD, NTR/NeoMK3, USG/flashme V8/SC miniSD
DOL001(EUR)/RGB/GCPlug/GBP/SD2SP2, RVL 001(EUR)/RGB/CMP/WiiSD
Zelda WW with Tingle Tuner in split screen was what the GC RF modulator was made for! (Video)
DOL001(EUR)/RGB/GCPlug/GBP/SD2SP2, RVL 001(EUR)/RGB/CMP/WiiSD
Zelda WW with Tingle Tuner in split screen was what the GC RF modulator was made for! (Video)
Re: Minimal ipl boot Viper GC
https://uptobox.com/rtsi8kowj7mb iplboot-master.dol
https://uptobox.com/k93bhaeeozbw iplboot-master.vgc
Caution not tested for the moment
Edit : try with dolphin it seems to work
https://uptobox.com/k93bhaeeozbw iplboot-master.vgc
Caution not tested for the moment
Edit : try with dolphin it seems to work
Re: Minimal ipl boot Viper GC
Did you manage to get it working on standard ViperGC not Extreme? I will give it a try once I find my LPT programmer.
Re: Minimal ipl boot Viper GC
not possible on vipecGC standard iplboot.vgc 142ko memory on cheap 128ko
Re: Minimal ipl boot Viper GC
Maybe ripping off slot A boot you'll get back to smaller size?
DMG/MultiFreq OC/EDGB/EZF Jr, AGB/SC miniSD, NTR/NeoMK3, USG/flashme V8/SC miniSD
DOL001(EUR)/RGB/GCPlug/GBP/SD2SP2, RVL 001(EUR)/RGB/CMP/WiiSD
Zelda WW with Tingle Tuner in split screen was what the GC RF modulator was made for! (Video)
DOL001(EUR)/RGB/GCPlug/GBP/SD2SP2, RVL 001(EUR)/RGB/CMP/WiiSD
Zelda WW with Tingle Tuner in split screen was what the GC RF modulator was made for! (Video)
Re: Minimal ipl boot Viper GC
Weird. Viper and GCOS both have GUI and it's possible to flash them to ViperGC. Looks like there is a lot of garbage compiled in. I will try it myself once I find my LPT programmer.
Re: Minimal ipl boot Viper GC
"a lot of garbage compiled in" = GCOS and Cobra didn't use libOGC. Basically everything these days uses libOGC and has all the bloat compiled in as a result. Have you tried using dolxz or dollz to compress it? (dollz has a viper flag you'll need to use)

Re: Minimal ipl boot Viper GC
Sorry for doing this in background, I helped testing, so we had a working GCI that was 18 blocks, I asked Ledu205 if he has means to compress it and we are now with a working version (as a GCI, I don't have any chipped GC) that is only 10 blocks.
I was planning on reporting all the testing I did lately with all the boot forwarders that were provided by Suloku, NiHuSu, and Ledu205 in regards to SD2SP2 boot ability.
I was planning on reporting all the testing I did lately with all the boot forwarders that were provided by Suloku, NiHuSu, and Ledu205 in regards to SD2SP2 boot ability.
DMG/MultiFreq OC/EDGB/EZF Jr, AGB/SC miniSD, NTR/NeoMK3, USG/flashme V8/SC miniSD
DOL001(EUR)/RGB/GCPlug/GBP/SD2SP2, RVL 001(EUR)/RGB/CMP/WiiSD
Zelda WW with Tingle Tuner in split screen was what the GC RF modulator was made for! (Video)
DOL001(EUR)/RGB/GCPlug/GBP/SD2SP2, RVL 001(EUR)/RGB/CMP/WiiSD
Zelda WW with Tingle Tuner in split screen was what the GC RF modulator was made for! (Video)
Re: Minimal ipl boot Viper GC
I test make vgc with dol compressed it's fail. I don't know how make vgc clean with compressed dol
Re: Minimal ipl boot Viper GC
I know it would imply beeing able to write to a memcard before beeing able to use homebrew (sort of egg and hen riddle), but what about a minimal forwarder in the chip to run another bigger one off a memcard in slot A?
Older IPL versions are so much smaller than what you get!
I wonder why, if it is half the size and not compressed…
Older IPL versions are so much smaller than what you get!
I wonder why, if it is half the size and not compressed…
DMG/MultiFreq OC/EDGB/EZF Jr, AGB/SC miniSD, NTR/NeoMK3, USG/flashme V8/SC miniSD
DOL001(EUR)/RGB/GCPlug/GBP/SD2SP2, RVL 001(EUR)/RGB/CMP/WiiSD
Zelda WW with Tingle Tuner in split screen was what the GC RF modulator was made for! (Video)
DOL001(EUR)/RGB/GCPlug/GBP/SD2SP2, RVL 001(EUR)/RGB/CMP/WiiSD
Zelda WW with Tingle Tuner in split screen was what the GC RF modulator was made for! (Video)
-
- Posts: 55
- Joined: Fri Aug 17, 2018 12:40 pm
Re: Minimal ipl boot Viper GC
is it really not possible to lessen the bloat? disable video output?
accessing SD and booting a boot.dol shouldn't take that much code afaik.
I mean the zelda exploit for wii was kilobytes (~100kb including the hacked save)
what is making it megabyte at minimum now? :S
accessing SD and booting a boot.dol shouldn't take that much code afaik.
I mean the zelda exploit for wii was kilobytes (~100kb including the hacked save)
what is making it megabyte at minimum now? :S
Re: Minimal ipl boot Viper GC
I don't create minimal ipl boot and I'm not a Dev , I don't know how to do it. We need help of a real Dev eventually
Re: Minimal ipl boot Viper GC
GizmoTheGreen>
Disabling the "verbose mode" probably won't save dozens of kilobytes.
Accessing an SD on a gamecube suggests you have to manage the physical interface (SD SPI mode), then the logical interface (one or more file systems) from scratch to locate and load a file.
Accessing the SD on a Wii means you have the physical and logical interfaces already available on the hardware and ROM.
Knowing that, ~100kB for the Wii exploit is quite huge, the compressed Boot.GCI for the GC is only 80kB.
The fact that it is C source compiled is the big problem, most compilers usually generate dumb masses of code, and that can vary from a setup and version to another.
Unless anyone can write straight machine code or handwork compiled C code to optimize it, they will be big.
Would it be a big concern if Slot A USB Gecko/SD Gecko would be let down? Does anyone still uses this way of booting? (I suppose no, since it would imply Swapping cards, but who knows? AR users, maybe?
Still, if letting down Slot A support would get the code one third smaller, it would imply the original source has big problems with not optimized routines, to begin with.
Disabling the "verbose mode" probably won't save dozens of kilobytes.
Accessing an SD on a gamecube suggests you have to manage the physical interface (SD SPI mode), then the logical interface (one or more file systems) from scratch to locate and load a file.
Accessing the SD on a Wii means you have the physical and logical interfaces already available on the hardware and ROM.
Knowing that, ~100kB for the Wii exploit is quite huge, the compressed Boot.GCI for the GC is only 80kB.
The fact that it is C source compiled is the big problem, most compilers usually generate dumb masses of code, and that can vary from a setup and version to another.
Unless anyone can write straight machine code or handwork compiled C code to optimize it, they will be big.
Would it be a big concern if Slot A USB Gecko/SD Gecko would be let down? Does anyone still uses this way of booting? (I suppose no, since it would imply Swapping cards, but who knows? AR users, maybe?
Still, if letting down Slot A support would get the code one third smaller, it would imply the original source has big problems with not optimized routines, to begin with.
DMG/MultiFreq OC/EDGB/EZF Jr, AGB/SC miniSD, NTR/NeoMK3, USG/flashme V8/SC miniSD
DOL001(EUR)/RGB/GCPlug/GBP/SD2SP2, RVL 001(EUR)/RGB/CMP/WiiSD
Zelda WW with Tingle Tuner in split screen was what the GC RF modulator was made for! (Video)
DOL001(EUR)/RGB/GCPlug/GBP/SD2SP2, RVL 001(EUR)/RGB/CMP/WiiSD
Zelda WW with Tingle Tuner in split screen was what the GC RF modulator was made for! (Video)
Re: Minimal ipl boot Viper GC
Does anybody still work on this minimal Boot for the ViperGC?
Re: Minimal ipl boot Viper GC
Same as said in this post, and upper in this thread, we've been down to 10 blocks (roughly 80ko), but it has only been tested as a .gci booted off a savexploit so far.
DMG/MultiFreq OC/EDGB/EZF Jr, AGB/SC miniSD, NTR/NeoMK3, USG/flashme V8/SC miniSD
DOL001(EUR)/RGB/GCPlug/GBP/SD2SP2, RVL 001(EUR)/RGB/CMP/WiiSD
Zelda WW with Tingle Tuner in split screen was what the GC RF modulator was made for! (Video)
DOL001(EUR)/RGB/GCPlug/GBP/SD2SP2, RVL 001(EUR)/RGB/CMP/WiiSD
Zelda WW with Tingle Tuner in split screen was what the GC RF modulator was made for! (Video)
Re: Minimal ipl boot Viper GC
Size is precisely why dkppc r26 is required, but it's not available anywhere anymore.
You could use a DOL compressor, but you'll most likely need to modify it for the viper entry point, and it still won't fit on qoob sx because less than 64KB are available (it actually required a custom build of dolxz to fit in the first place).
Also, removing support for other devices won't help you much, all the code is shared for SD card support no matter which slot you're using, and the USB gecko code is super tiny.
The way to go would be stripping libogc down to the bare minimum (things like lwp are included into every single binary even if you don't use them and that causes most of the bloat, gcc regressions aside, and it would probably help to get full LTO working).
You could use a DOL compressor, but you'll most likely need to modify it for the viper entry point, and it still won't fit on qoob sx because less than 64KB are available (it actually required a custom build of dolxz to fit in the first place).
Also, removing support for other devices won't help you much, all the code is shared for SD card support no matter which slot you're using, and the USB gecko code is super tiny.
The way to go would be stripping libogc down to the bare minimum (things like lwp are included into every single binary even if you don't use them and that causes most of the bloat, gcc regressions aside, and it would probably help to get full LTO working).
Re: Minimal ipl boot Viper GC
Does anybody ever uses SDGecko in slotA these days?
Can't we just get older working code, and just replace the slotA adress wherever it is by the SP2 one?
All those wonders have been done on the GC while nobody knows machine coding? Seriously?
Can't we just get older working code, and just replace the slotA adress wherever it is by the SP2 one?
All those wonders have been done on the GC while nobody knows machine coding? Seriously?

DMG/MultiFreq OC/EDGB/EZF Jr, AGB/SC miniSD, NTR/NeoMK3, USG/flashme V8/SC miniSD
DOL001(EUR)/RGB/GCPlug/GBP/SD2SP2, RVL 001(EUR)/RGB/CMP/WiiSD
Zelda WW with Tingle Tuner in split screen was what the GC RF modulator was made for! (Video)
DOL001(EUR)/RGB/GCPlug/GBP/SD2SP2, RVL 001(EUR)/RGB/CMP/WiiSD
Zelda WW with Tingle Tuner in split screen was what the GC RF modulator was made for! (Video)
Re: Minimal ipl boot Viper GC
Um, I do still use Memory Slot A to this day.
It's not that easy since Serial Port 2 need some special handling and some other changes had to be made.
It's not that easy since Serial Port 2 need some special handling and some other changes had to be made.
Re: Minimal ipl boot Viper GC
I Imagine there is no way the SP2 would replace the slot A for what you use it?
Looking at YAGCD I though it was just a matter of EXI adress, as long as external interrupt is not used.
Ok, so we have to find someone who still has a building setup for GC with dkppc r26?
Looking at YAGCD I though it was just a matter of EXI adress, as long as external interrupt is not used.
Ok, so we have to find someone who still has a building setup for GC with dkppc r26?
DMG/MultiFreq OC/EDGB/EZF Jr, AGB/SC miniSD, NTR/NeoMK3, USG/flashme V8/SC miniSD
DOL001(EUR)/RGB/GCPlug/GBP/SD2SP2, RVL 001(EUR)/RGB/CMP/WiiSD
Zelda WW with Tingle Tuner in split screen was what the GC RF modulator was made for! (Video)
DOL001(EUR)/RGB/GCPlug/GBP/SD2SP2, RVL 001(EUR)/RGB/CMP/WiiSD
Zelda WW with Tingle Tuner in split screen was what the GC RF modulator was made for! (Video)
Re: Minimal ipl boot Viper GC
Hi guys.
I really hope someone post here the compressed dol/vgc files (< 128 kb) of the latest revision of iplboot (with SD2SP2 support) for using with the Viper GC (not Extreme).
Thank you.
I really hope someone post here the compressed dol/vgc files (< 128 kb) of the latest revision of iplboot (with SD2SP2 support) for using with the Viper GC (not Extreme).
Thank you.
Last edited by brunops3 on Mon May 18, 2020 6:21 pm, edited 2 times in total.