====== Event Shell ======
===== Getting access to Event Shell =====
Sending **akashimorino** to ICU UART port starts the Event Shell which shows a prompt like this:
K433>[1]
===== Event Procedures =====
Typing **?** gives all available commands:
[AECOM_DispFLK]
[AECOM_SetFLK]
[AEITG_]
[APEX.DebugPropStillPhoto]
[APEX.DebugSceneMode]
[APEX.LogLevel]
[APEX.LogOnly]
[APEX.ManualExposureMode]
[APEX.PoLogLevel]
[APEX.ReCalcStillPhotoParam]
[APEX.RewriteMode]
[APEX.Test1]
[APEX.Test2]
[ATest_RegistEventProc]
[ActivateDL]
...
These function are so called **Event Procedures** and have been registered by calling [[dryos:stubs:register_func|register_func]] before.
However, they cannot be executed blindly on UART. Also functions which expect arguments and aren't actually that useful on UART are listed here. Some examples:
memcpy
sprintf
sscanf
...
Some functions are dangerous and may brick the camera:
ClearFactoryMasterROMProtection
eep_erase
...
Typing **exit** terminates the console and makes it inaccessible until next reboot:
K433>[1]quit
Console All Closed
===== Filter commands / Auto complete =====
Commands can be filtered by typing a command partially and end it with **?**. Typing **eep_?** for example will list all commands, starting with **eep_**:
K433[1]>eep_?
[eep_erase]
[eep_forcefrom_service]
[eep_forcefrom_ring]
[eep_boot_change_ring]
[eep_force_sync]
[eep_force_read]
[eep_write]
[eep_sync]
[eep_write_single]
[eep_read]
[eep_show_service]
[eep_boot_change_service]
[eep_boot_check]
K433[1]>eep_
It will also try to autocomplete the command as much as possible. When typing **eep_boot?** for example it will partially be auto completed to **eep_boot_ch** and lists the reamining possible commands:
K433[1]>eep_boot?
[eep_boot_change_ring]
[eep_boot_change_service]
[eep_boot_check]
K433[1]>eep_boot_ch
If there is only one possible command, the whole command will be autocompleted so it can be executed by just hitting enter again:
K433[1]>eep_boot_che?
[eep_boot_check]
K433[1]>eep_boot_check