Magic Lantern Firmware Wiki
Advertisement

A few DIGIC registers for 60D. Probably the same on all cameras.

C0F14xxx - configure display device[]

C0F140c0 luma scaling for LiveView image
8-bit? 0x80=100%?


C0F140c4 saturation for LiveView image
-------- -------- -------- --------
                           ********   scaling factor for odd columns, 0x80=100%
                  ********            scaling factor for even columns, 0x80=100%
                *                     swap U-V maybe for odd columns
       *                              swap U-V maybe for even columns


C0F140c8 alters BMP palette (blending mode?)
-------- -------- -------- --------
                               **   01=grayscale, 11=normal, 00=fully transparent, 01=most colors transparent


C0F140cc configurable "zebra" (actually solid color)
-------- -------- -------- --------
                           ******** threshold
                      ****          bmp palette entry (0-F)
                  ****              zebra color (0-F)
                *                   type (1=under,0=over)
         *******                    blinking flags maybe (0=no blink)


C0F14400..C00
C0F14800..C00 - color palette (one register for each entry)
-------- -------- -------- --------
                           ********  V
                  ********           U
         ********                    Y
      **                             opacity? (3=opaque)

 In LiveView, only C0F148xx needs to be set. In photo mode, both register sets need to be updated.
 
 Copy of the original palette:
 NSTUB(0x3bfa4, LCD_Palette) // 60D, in InitializeBitmapDisplayDevice, right after 0xc0f14800
 LCD_Palette[3*i + 2] => original entry for color i

ISO[]

0xc0f08030: digital ISO component, applied before highlight clipping. See https://bitbucket.org/hudson/magic-lantern/changeset/36287636d7b5
0xc0f04908 big numbers, changed when you change ISO, values somewhere around 0x500000, causes weird colors with values out of normal range

Digital panning (moving the LiveView box around)[]

0xC0F0851c: zoom position x0 y0 (fine offset)
0xC0F08520: zoom pos x1 y1

Unsorted[]

0xC0F04008 YUV422_LV_BUFFER &~0x40000000  - used for auto ISO?!
0xC0F04308 - pointer to LiveView image buffer actually displayed on LCD?
0xC0F08180 HIV_ENB
0xC0F08184 HIV_V_SIZE
0xC0F08188 HIV_H_SIZE
0xC0F0818C HIV_POS_V_OFST
0xC0F08190 HIV_POS_H_OFST
0xC0F0819C HIV_POST_SETUP                        weird colors (bit field?)
0xC0F081BC HIV_IR_PRM_BYR2
0xC0F08214 HIV_PPR_EZ
0xC0F08218 HIV_IN_SEL                            alters pitch?
0xC0F082C4 HIV_DEFMARK_CANCEL
0xC0F08420 HIV_BASE_OFST                         weird colors (black point related?)
0xC0F08428 HIV_GAIN_DIV                          tiny flicker
0xC0F0842C HIV_PATH
0xC0F08024 SHAD_MODE (bit field)                
0xC0F08028 SHADE_PRESETUP                        weird colors
0xC0F0802C SHAD_POSTSETUP                        weird colors
0xC0F08030 SHAD_GAIN                             digital iso?
0xC0F08034 SHAD_PRESETUP_14_12                   weird colors
0xC0F08038 SHAD_POSTSETUP_14_12                  weird colors
0xC0F0828C SHAD_RMODE                            small luma flicker
0xC0F082A8 SHAD_KZMK_SAV
0xC0F08224 ADKIZ_THRESHOLD
0xC0F08234 ADKIZ_TOTAL_SIZE
0xC0F08238 ADKIZ_INTR_CLR
0xC0F0823C ADKIZ_INTR_EN
0xC0F0825C ADKIZ_THRESHOLD_14_12
0xC0F08138 DEFM_MODE
0xC0F08140 DEFM_INTR_NUM
0xC0F0814C DEFM_GRADE                            changes when you change analog ISO; small values, less than 16
0xC0F08150 DEFM_DAT_TH
0xC0F08154 DEFM_INTR_CLR
0xC0F0815C DEFM_14_12_SEL
0xC0F0826C DEFM_X2MODE
0xC0F080C0 DEF_BUF_NUM
0xC0F080C4 DEF_INTR_BE
0xC0F080C8 DEF_INTR_AE
0xC0F080A8 DEF_MODE
0xC0F080B4 YN_XN
0xC0F080B0 YB_XB
0xC0F080BC YA_XA
0xC0F080D4 DEF_HOSEI
0xC0F08270 DEFC_X2MODE
0xC0F082B4 DEFC_DET_MODE
0xC0F08124 PACK16_MODE
0xC0F082B8 PACK16_DEFM_ON
0xC0F085B4 PACK16_ILIM
0xC0F0827C PACK16_CCD2_DM_EN
0xC0F08090
0xC0F08094 PACK32_MODE
0xC0F08264 PACK32_DM_EN
0xC0F08268 PACK32_MODE_H
0xC0F082BC PACK32_DEFM_ON
0xC0F085B0 PACK32_ILIM
0xC0F08084 ADUNPACK_MODE
0xC0F08278 ADUNPACK_DM_EN
0xC0F08064 DSUNPACK_MODE
0xC0F08274 DSUNPACK_DM_EN
0xC0F08074 UNPACK24_MODE
0xC0F08260 UNPACK24_DM_EN

From g3gg0:

0xC0F08004 - DARK_MODE (bitmask of bits 0x113117F)
0xC0F08008 - DARK_SETUP (0x0000 - 0x7FF signed integer!!) (brightens or darkens frame, overwrites DARK_SETUP_14_12)
0xC0F0800C - DARK_LIMIT (0x0000 - 0x3FFF) (no noticeable change)
0xC0F08010 - DARK_SETUP_14_12 (0x0000 - 0x07FF) (brightens up frame, overwrites DARK_SETUP)
0xC0F08014 - DARK_LIMIT_14_12 (0x0000 - 0x0FFF) (no noticeable change)
0xC0F08018 - DARK_SAT_LIMIT (0x0000 - 0x3FFF) (no noticeable change)

0xC0F082A0 - DARK_KZMK_SAV_A (0/1) (causes white or black screen)
0xC0F082A4 - DARK_KZMK_SAV_B (0/1) (no noticeable change)


These were found by trial and error:

C0F08544 hshift related
C0F08578 weird circles
C0F085a0 digital iso? peripheral lens?
C0F0D040,44 - correlated, hvshift, affects rec
C0F11100 lv weirdness
C0F11144 lv weirdness - affects rec too
C0F111c4 lv weirdness
C0F112c4 - grayscale stuff,  built-in focus peaking?
C0F112d4 lv pitch?
C0F11304 - kind of vertical scaling / focus peaking
C0F11588 lv vzoom?
C0F140dc bmp vzoom
C0F1415c bmp+lv hshift
C0F14164 bmp+lv vshift
C0F14224 bmp+lv pitch?
0xc0f08004 OPE_MODE
0xc0f08010 OPE_SETUP
c022001c: 0=[LVCAP]Image Power Failure
Advertisement