Skip to content

Instantly share code, notes, and snippets.

@lifehackerhansol
lifehackerhansol / ace3ds-random-notes.md
Last active November 15, 2023 16:25
ace3ds-random-notes

This cart is basically the same as R4. There are a few differences and some other additions seen below:

  • All SD read/write (0xB9/0xBB) has no sector shift.
  • 0xBC does an XOR on the last byte:
    • BC XX XX XX XX 00 00 YY
    • XXXXXXXX = sector address
    • YY = XOR of every byte in command reg, so BC EOR XX EOR XX EOR XX EOR XX EOR 00 EOR 00
  • 0xB4 works... on SD cards that aren't SDHC. because sector address must be <<9'd. Kernel uses normal SD RW for games.
    • Save read/write commands on the R4 doesn't work on the Ace3DS+ if you do this for reasons not exactly known. Wood ports by some old devs used SD RW for saves and 0xB4 for ROM.
  • 0xB6/0xBF seems to be supported... kinda. It's different from how the R4 does it. No idea at all how it works yet.
@lifehackerhansol
lifehackerhansol / notes.md
Last active August 26, 2023 07:53
R4iTT kernel notes

R4iTT is a known flashcart with dozens of clones out there.

Here I try to write notes about the particular kernel it runs:

  • The version number of kernels are identical across the board. i.e. if r4isdhc.hk has 1.70, then r4i3d.com 1.70 is identical, and so on
    • This isn't the case for the r4igold.cc however, which seems to use its own version scheme, while the actual files are similar to the other kernels
  • mixinfo.dat seems to be bogus on Wood-only kernels; they were only really used on the RTS kernels (which kinda sucks).
    • TODO: test kernel without mixinfo.dat present
    • However, infolib.dat based kernels do exist (from which version is unknown), and those do actually use infolib. This is easier to maintain by external users
  • BL2CK kernel is an updated version of the last infolib-based kernel. Last known version: 1.52
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Initializing cgroup subsys cpuacct
[ 0.000000] Initializing cgroup subsys schedtune
[ 0.000000] Linux version 4.4.218-perf+ (nobody@android-build) (gcc version 4.9.x 20150123 (prerelease) (GCC) ) #2 SMP PREEMPT Sun Jul 30 09:05:39 PDT 2023
[ 0.000000] Boot CPU: AArch64 Processor [51af8014]
[ 0.000000] Machine: Qualcomm Technologies, Inc. MSM8998 v2.1 MTP
[ 0.000000] Reserved memory: reserved region for node 'removed_regions@85800000': base 0x0000000085800000, size 55 MiB
[ 0.000000] Reserved memory: reserved region for node 'pil_ipa_gpu_region@95C00000': base 0x0000000095f00000, size 1 MiB