So, after reading about the R-Type 3&Super R-Type thing, I decided to get a Super Retro-Cade. After ordering, I actually bothered to check, and yes, it's another another one of those systems where there was accusations that it uses Retroarch cores that specifically prohibit commercial sale. So, I decided to not cancel the order and do some snooping because even though I've searched a lot, I only found innuendo so far (and pretty strong implications).
Anyways, the Super Retro-Cade arrived, and I went to work hacking it. First was just trying out a keyboard. As another person noted, Ctrl+Alt+Del works. But so do the Magic SysRq keys strongly implying they're using Linux as a basis--so possibly add the lack of source to the infraction list. I ended up trying to use another system to connect through USB but that didn't get very far, so I tried to do something more crazy. Someone mentioned the CPU was an H8 not unlike an Orange Pi. So, the answer was obvious: see if a Lakka image would boot off the SD card.
Turns out, it does--specifically I tried the Orange Pi Lite image, although it looks like the difference is in the uEnv.txt on what .dtb file (and maybe mapping) is used. From there it was trivial to get a shell. So, among other things I can confirm:
Checking under sys and I found out the max cpu clock frequency is 1.2GHz. All well and good, but the real problem is this:
That is, the SDHC card is being mapped to an MMC but there seems to be another MMC which I presume is the onboard storage containing all the roms, emulators, etc. I have limited understanding of MMCs and don't know how to map them to a device--clearly the kernel isn't doing it automatically. My limited understanding is that different MMCs might require different drivers. Or is this a matter of changing uEnv.txt to properly map it in? Or am I entirely wrong and is this just a second alias of the first device?
Edit3: Instructions to access/dump the Super Retro-Cade (1-7). Currently trying to use Lakka is a bad idea as everything pressed on the keyboard goes to terminal so you may accidentally run commands in the background. Note: These steps haven't been verified by anyone else but me so far.
To duplicate what I did you'll need an SD card ~1GB or bigger and for accessing/dumping some experience with the *nix shell:
1) Go to to http://lakka.tv.
2) Click Get and follow the steps to get the "Allwinner Orange Pi" image, "OrgangePi Lite" and write the image.
3) Boot once to allow the auto-resize of storage
4) On one partition is "uEnv.txt". Change the first line to read: "bootargs=console=ttyS0,115200 console=tty0 boot=/dev/mmcblk0p1 disk=/dev/mmcblk0p2 consoleblank=0 quiet tty retroarch=0" (ie add "tty retroarch=0" to the end) to enable a terminal and disable auto starting retroarch service
5) On the second line change "sun8i-h3-orangepi-lite" to "sun8i-h3-bananapi-m2-plus" (or "sun8i-h3-orangepi-pc-plus.dtb" may work the same/better).
6) Put the SD into the Super Retro-Cade and let it boot up. You should end up with a Lakk:a# prompt in the corner. It should auto mount the nand/emmc/whatever to /storage/roms/<different partition names>
7) Use a keyboard connected to one of the USB ports and look in /storage/roms/. mmcblk2p1-... is partition one with the android system. mmcblk2p7-... is external/interal SD in Android parlance? Games are in mmcblk2p7-.../media/GAME. You can't simply add games there because the list needs updated somehow (possibly mmcblk2p1-.../data/com.cx.gamelaunchxc/files/gamelist.db).
Anyways, the Super Retro-Cade arrived, and I went to work hacking it. First was just trying out a keyboard. As another person noted, Ctrl+Alt+Del works. But so do the Magic SysRq keys strongly implying they're using Linux as a basis--so possibly add the lack of source to the infraction list. I ended up trying to use another system to connect through USB but that didn't get very far, so I tried to do something more crazy. Someone mentioned the CPU was an H8 not unlike an Orange Pi. So, the answer was obvious: see if a Lakka image would boot off the SD card.
Turns out, it does--specifically I tried the Orange Pi Lite image, although it looks like the difference is in the uEnv.txt on what .dtb file (and maybe mapping) is used. From there it was trivial to get a shell. So, among other things I can confirm:
Code:
CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
Memory: 180900K/262144K available (7168K kernel code, 336K rwdata, 1572K rodata, 3072K init, 274K bss, 15708K reserved, 65536K cma-reserved, 0K highmem)
/cpus/cpu@0 missing clock-frequency property
/cpus/cpu@1 missing clock-frequency property
/cpus/cpu@2 missing clock-frequency property
/cpus/cpu@3 missing clock-frequency property
SMP: Total of 4 processors activated (192.00 BogoMIPS).
Checking under sys and I found out the max cpu clock frequency is 1.2GHz. All well and good, but the real problem is this:
Code:
[ 1.021748] sunxi-mmc 1c0f000.mmc: Got CD GPIO
[ 1.072321] sunxi-mmc 1c0f000.mmc: base:0xd085e000 irq:25
[ 1.119616] mmc0: host does not support reading read-only switch, assuming write-enable
[ 1.122649] mmc0: new high speed SDHC card at address c552
[ 1.122979] mmcblk0: mmc0:c552 SU04G 3.69 GiB
[ 1.128004] mmcblk0: p1 p2
[ 1.132354] sunxi-mmc 1c10000.mmc: base:0xd087a000 irq:26
That is, the SDHC card is being mapped to an MMC but there seems to be another MMC which I presume is the onboard storage containing all the roms, emulators, etc. I have limited understanding of MMCs and don't know how to map them to a device--clearly the kernel isn't doing it automatically. My limited understanding is that different MMCs might require different drivers. Or is this a matter of changing uEnv.txt to properly map it in? Or am I entirely wrong and is this just a second alias of the first device?
Edit3: Instructions to access/dump the Super Retro-Cade (1-7). Currently trying to use Lakka is a bad idea as everything pressed on the keyboard goes to terminal so you may accidentally run commands in the background. Note: These steps haven't been verified by anyone else but me so far.
To duplicate what I did you'll need an SD card ~1GB or bigger and for accessing/dumping some experience with the *nix shell:
1) Go to to http://lakka.tv.
2) Click Get and follow the steps to get the "Allwinner Orange Pi" image, "OrgangePi Lite" and write the image.
3) Boot once to allow the auto-resize of storage
4) On one partition is "uEnv.txt". Change the first line to read: "bootargs=console=ttyS0,115200 console=tty0 boot=/dev/mmcblk0p1 disk=/dev/mmcblk0p2 consoleblank=0 quiet tty retroarch=0" (ie add "tty retroarch=0" to the end) to enable a terminal and disable auto starting retroarch service
5) On the second line change "sun8i-h3-orangepi-lite" to "sun8i-h3-bananapi-m2-plus" (or "sun8i-h3-orangepi-pc-plus.dtb" may work the same/better).
6) Put the SD into the Super Retro-Cade and let it boot up. You should end up with a Lakk:a# prompt in the corner. It should auto mount the nand/emmc/whatever to /storage/roms/<different partition names>
7) Use a keyboard connected to one of the USB ports and look in /storage/roms/. mmcblk2p1-... is partition one with the android system. mmcblk2p7-... is external/interal SD in Android parlance? Games are in mmcblk2p7-.../media/GAME. You can't simply add games there because the list needs updated somehow (possibly mmcblk2p1-.../data/com.cx.gamelaunchxc/files/gamelist.db).