Somacore, here are some changes I made to your 102a code. Camera still doesn't boot.
[in lib.c]
- #define LED_PR 0xc02200C4
+ #define LED_PR 0xc02200C0
[in sub/102a/boot.c]
- "BL sub_FF930394\n" //qInit
+ "BL sub_FF930364\n" //qInit
[in sub/102a/lib.c]
// Found at 0xFFA6499C
long hook_raw_size()
{
- return 0x8CAE10;
+ return 0x8CAE00;
}
[in sub/102a/stubs_min.S]
- DEF(playrec_mode,0xCFD8) // BL unknown_libname_797 found in "taskcreate_SsStartupTask"
+ DEF(playrec_mode,0xCFC4) // BL unknown_libname_797 found in "taskcreate_SsStartupTask"
[This is my modified sub/102a/stubs_entry_2.S]
#include "stubs_asm.h"
//NHSTUB(LOLCOWS, 0xFFABCDEF)
NHSTUB(AllocateMemory, 0xFF818678)
NHSTUB(AllocateUncacheableMemory, 0xFF81E5B8)
NHSTUB(Close, 0xFFAA59F0) // aClose
NHSTUB(CreatePhysicalVram, 0xff81c590)
NHSTUB(CreateTask, 0xFFB202AC)
NHSTUB(CreateTaskStrict, 0xFFB2134C)
NHSTUB(DisableDispatch, 0xffb200d0)
NHSTUB(DisplayImagePhysicalScreen, 0xFFA2F4C8) // Near "ImgDDev.c"
NHSTUB(EnableDispatch, 0xffb2015c)
NHSTUB(ExecuteEventProcedure, 0xff814a6c)
NHSTUB(ExitTask, 0xffb2066c)
NHSTUB(Fclose_Fut, 0xffaa8724) //0xffaa1138
NHSTUB(Fopen_Fut, 0xff91f408)
NHSTUB(Fread_Fut, 0xffaa8794)
NHSTUB(FreeMemory, 0xFF818664)
NHSTUB(FreeUncacheableMemory, 0xff81e5ec)
NHSTUB(Fseek_Fut, 0xffaa8af4)
NHSTUB(Fwrite_Fut, 0xffaa88d4)
NHSTUB(GetCurrentAvValue, 0xffa5bc58) // aGetcurrentavva
NHSTUB(GetCurrentTargetDistance, 0xffa5e570) // aGetcurrenttarg
NHSTUB(GetFocusLensSubjectDistance, 0xFFAE09A4) // Wrong, corrected
NHSTUB(GetFocusLensSubjectDistanceFromLens, 0xFFAE09C8) // Wrong, corrected
NHSTUB(GetParameterData, 0xffb45910) // Not completely verified
NHSTUB(GetPropertyCase, 0xff81bcac) // Verified as working
NHSTUB(GetSystemTime, 0xff813700)
NHSTUB(GetZoomLensCurrentPoint, 0xFFAF18DC)
NHSTUB(GetZoomLensCurrentPosition, 0xFFAF18F0)
NHSTUB(IsStrobeChargeCompleted, 0xff9ade0c) // EF.IsChargeFull
NHSTUB(LockMainPower, 0xFFB428A4)
NHSTUB(MakeDirectory, 0xffaa5d20)
NHSTUB(Mount_FileSystem, 0xFFAA4D14)
NHSTUB(MoveFocusLensToDistance, 0xFFAE01B8) // MoveFocusLensWithDistance (might be wrong), corrected
NHSTUB(MoveZoomLensWithPoint, 0xffaf17b4)
NHSTUB(Open, 0xffaa59c8) // Not completely verified
NHSTUB(PhySw_testgpio, 0xffa3b2bc) //not present
NHSTUB(ProtectFile, 0xffaa061c)
NHSTUB(PutInNdFilter, 0xffa5bd14) // Not completely verified
NHSTUB(PutOutNdFilter, 0xffa5bd5c) // Not completely verified
NHSTUB(Read, 0xFFAA5A84) // aRead
NHSTUB(RefreshPhysicalScreen, 0xff915ffc)
NHSTUB(Remove, 0xFFAA5A10) // Not completely verified
NHSTUB(SetAutoShutdownTime, 0xFFB427A8)
NHSTUB(SetParameterData, 0xffb45830) // Not completely verified
NHSTUB(SetPropertyCase, 0xFF81BB74) // Wrong, corrected
NHSTUB(SleepTask, 0xFFB201C0) // Not completely verified
NHSTUB(TakeSemaphore, 0xFFB1FC94) // Not completely verified
NHSTUB(UnlockMainPower, 0xFFB4293C)
NHSTUB(Unmount_FileSystem, 0xffaa4dbc) // Not completely verified
NHSTUB(UnsetZoomForMovie, 0xff8369cc) // Not completely verified
NHSTUB(UpdateMBROnFlash, 0xffaa4f10) // Not completely verified
NHSTUB(VbattGet, 0xffa37158)
NHSTUB(Write, 0xFFAA5A90)
NHSTUB(_log, 0xff91d198)
NHSTUB(_log10, 0xff919f40)
NHSTUB(_pow, 0xff91a0c0)
NHSTUB(_sqrt, 0xff91bf80)
NHSTUB(chdir, 0xff927c24)
NHSTUB(close, 0xff927564)
NHSTUB(closedir, 0xFFB5F9F8)
NHSTUB(free, 0xFF92A5B0)
NHSTUB(ints_disable, 0xFF918870)
NHSTUB(ints_enable, 0xFF91885C)
NHSTUB(ioctl, 0xff9276a4)
NHSTUB(iosDevAdd, 0xff928784)
NHSTUB(iosDrvInstall, 0xff928a48)
NHSTUB(iosDevFind, 0xff928710)
NHSTUB(isalpha, 0xff91eb3c)
NHSTUB(isdigit, 0xff91eb6c)
NHSTUB(islower, 0xff91eb9c)
NHSTUB(isspace, 0xff91ebe4)
NHSTUB(isupper, 0xff91ebfc)
NHSTUB(kbd_p1_f, 0xffa3964c)
NHSTUB(kbd_p1_f_cont, 0xFFA3964C)
NHSTUB(kbd_p2_f, 0xffa39a7c)
NHSTUB(kbd_pwr_off, 0xFFA3B230)
NHSTUB(kbd_pwr_on, 0xFFA3B1F0)
NHSTUB(localtime, 0xff9233bc)
NHSTUB(lseek, 0xff9276a8)
NHSTUB(malloc, 0xff92a5a4)
NHSTUB(memcmp, 0xff92279c)
NHSTUB(memcpy, 0xff9227d8)
NHSTUB(memset, 0xff922850)
NHSTUB(mkdir, 0xffaa5c58)
NHSTUB(open, 0xff927ba8)
NHSTUB(opendir, 0xffb5fa6c)
NHSTUB(qsort, 0xff921ffc)
NHSTUB(rand, 0xff922020)
NHSTUB(read, 0xff9275c4)
NHSTUB(readdir, 0xFFB5F9F8)
NHSTUB(rename, 0xff927bb0)
NHSTUB(rewinddir, 0xFFB5FAAC)
NHSTUB(srand, 0xff922044)
NHSTUB(stat, 0xFFB5FAE0)
NHSTUB(strcat, 0xff922870)
NHSTUB(strchr, 0xff92289c)
NHSTUB(strcmp, 0xff9228c0)
NHSTUB(strcpy, 0xff922a54)
NHSTUB(strlen, 0xff922bb8)
NHSTUB(strncmp, 0xff922c1c)
NHSTUB(strncpy, 0xff922c60)
NHSTUB(strpbrk, 0xff922ca8)
NHSTUB(strrchr, 0xff922ce4)
NHSTUB(strtol, 0xff922438)
NHSTUB(taskCreateHookAdd, 0xff92d204)
NHSTUB(taskDeleteHookAdd, 0xff92d140)
NHSTUB(taskIdListGet, 0xff9346ec)
NHSTUB(taskLock, 0xff934da8)
NHSTUB(taskName, 0xff9345e4)
NHSTUB(taskResume, 0xff9349c8)
NHSTUB(taskSuspend, 0xff9347f4)
NHSTUB(taskUnlock, 0xff934e50)
NHSTUB(time, 0xff924108)
NHSTUB(utime, 0xFFB5FB80)
NHSTUB(vsprintf, 0xff92630c)
NHSTUB(fprintf, 0xff91f49c)
NHSTUB(fputs, 0xff91f5bc)
NHSTUB(puts, 0xFF9208B4) // Wrong, corrected
NHSTUB(SetZoomActuatorSpeedPercent, 0xFF9B7BA8) // null
NHSTUB(GetDrive_ClusterSize, 0xFFAA51DC) // Wrong, corrected
NHSTUB(GetDrive_TotalClusters, 0xFFAA5218) // Wrong, corrected
NHSTUB(GetDrive_FreeClusters, 0xFFAA5254) // Wrong, corrected
NHSTUB(kbd_read_keys_r2, 0xFFA3ACC0)