Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - dfort

Pages: [1] 2 3 ... 84
1
Combed through the source tree with a fine toothed comb and came up with a few more fixes.
  • io_crypt module now works. Well, I've never actually used it but the addresses do check out if anyone wants to check it out. (Module posted)
  • 5D3.134 should also have quad-buffered LV like on the 5D3.123 so I updated it in vram.c
I also found this:

qemu-helper.c
Code: [Select]
// all DIGIC V cameras require a RAM offset, take it from stubs.S
#if defined(CONFIG_650D)
#define RAM_OFFSET (0xFFA4DF58-0x1900)
#elif defined(CONFIG_5D3)
#define RAM_OFFSET 0xFF9F07C0
#elif defined(CONFIG_6D)
#define RAM_OFFSET 0xFFCC34D4
#elif defined(CONFIG_EOSM)
#define RAM_OFFSET 0xFFA68D58
#else
#define RAM_OFFSET 0
#endif

qemu-helper.c is not in the qemu branch so maybe it has been depreciated? In any case, the RAM_OFFSET in this file is only valid for the 5D3.123.

2
...it can be noticed with grep.

That gave me an idea, not to debug a widely used feature but to find anything that I might have missed pertaining to this 1.3.4 firmware update.

Here's one I just found and updated:

fps-engio.c
Code: [Select]
#elif defined(CONFIG_5D3)
    #define NEW_FPS_METHOD 1
    #ifdef CONFIG_5D3_123
    #define SENSOR_TIMING_TABLE MEM(0x32530)
    #elseif CONFIG_5D3_134
    #define SENSOR_TIMING_TABLE MEM(0x32548)
    #else
    #define SENSOR_TIMING_TABLE MEM(0x325ac)
    #endif

3
Fixed! Maybe?





New test build posted.

[EDIT] Log looks better?

Code: [Select]
===============================================================================
ML/SCRIPTS/api_test.lua - 2017-11-17 23:17:32
===============================================================================

Strict mode tests...
Strict mode tests passed.

Generic tests...
camera = table:
  shutter = table:
    raw = 96
    apex = 5
    ms = 31
    value = 0.03125
  aperture = table:
    raw = 48
    apex = 5
    value = 5.599999
    min = table:
      raw = 22
      apex = 1.75
      value = 1.8
    max = table:
      raw = 80
      apex = 9
      value = 22.6
  iso = table:
    raw = 96
    apex = 8
    value = 800
  ec = table:
    raw = 0
    value = 0
  flash_ec = table:
    raw = 0
    value = 0
  kelvin = 5500
  mode = 3
  metering_mode = 3
  drive_mode = 0
  model = "Canon EOS 5D Mark III"
  model_short = "5D3"
  firmware = "1.3.4"
  temperature = 152
  state = 0
  bulb = function: p
  reboot = function: p
  shoot = function: p
event = table:
  pre_shoot = nil
  post_shoot = nil
  shoot_task = nil
  seconds_clock = nil
  keypress = nil
  custom_picture_taking = nil
  intervalometer = nil
  config_save = nil
console = table:
  show = function: p
  hide = function: p
  write = function: p
  clear = function: p
lv = table:
  enabled = true
  paused = false
  running = true
  zoom = 1
  pause = function: p
  start = function: p
  resume = function: p
  info = function: p
  stop = function: p
  wait = function: p
lens = table:
  name = "EF50mm f/1.8 STM"
  focal_length = 50
  focus_distance = 410
  hyperfocal = 15444
  dof_near = 400
  dof_far = 419
  af = true
  af_mode = 0
  focus = function: p
display = table:
  idle = true
  height = 480
  width = 720
  screenshot = function: p
  pixel = function: p
  off = function: p
  circle = function: p
  rect = function: p
  notify_box = function: p
  load = function: p
  line = function: p
  clear = function: p
  on = function: p
  draw = function: p
  print = function: p
key = table:
  last = 0
  press = function: p
  wait = function: p
menu = table:
  visible = false
  get = function: p
  close = function: p
  block = function: p
  open = function: p
  set = function: p
  new = function: p
testmenu = userdata:
  value = 0
  name = "Script API tests"
  help = "Various tests for the Lua scripting API."
  help2 = "When adding new Lua APIs, tests for them should go here."
  advanced = 0
  depends_on = 0
  edit_mode = 0
  hidden = false
  icon_type = 5
  jhidden = false
  max = 0
  min = 0
  selected = true
  shidden = false
  starred = false
  submenu_height = 0
  submenu_width = 0
  unit = 0
  works_best_in = 0
  run_in_separate_task = 0
  select = function: p
  update = nil
  info = nil
  rinfo = nil
  warning = nil
movie = table:
  recording = false
  stop = function: p
  start = function: p
dryos = table:
  clock = 18
  ms_clock = 18204
  prefix = "1Y7A"
  dcim_dir = table:
    exists = true
    create = function: p
    children = function: p
    files = function: p
    parent = table:
      exists = true
      create = function: p
      children = function: p
      files = function: p
      parent = table:
        exists = true
        create = function: p
        children = function: p
        files = function: p
        parent = nil
        path = "A:/"
      path = "A:/DCIM/"
    path = "A:/DCIM/100EOS5D/"
  config_dir = table:
    exists = true
    create = function: p
    children = function: p
    files = function: p
    parent = table:
      exists = true
      create = function: p
      children = function: p
      files = function: p
      parent = table:
        exists = true
        create = function: p
        children = function: p
        files = function: p
        parent = nil
        path = "B:/"
      path = "ML/"
    path = "ML/SETTINGS/"
  ml_card = table:
    cluster_size = 131072
    drive_letter = "B"
    file_number = 3188
    folder_number = 100
    free_space = 62705536
    type = "SD"
    path = "B:/"
    _card_ptr = userdata
  shooting_card = table:
    cluster_size = 32768
    drive_letter = "A"
    file_number = 3188
    folder_number = 100
    free_space = 85757472
    type = "CF"
    path = "A:/"
    _card_ptr = userdata
  date = table:
    year = 2017
    wday = 6
    day = 17
    min = 17
    yday = 321
    month = 11
    hour = 23
    isdst = false
    sec = 34
  remove = function: p
  directory = function: p
  call = function: p
interval = table:
  time = 10
  count = 0
  running = 0
  stop = function: p
battery = table:
  level = 37
  id = 0
  performance = 3
  time = 3996
  drain_rate = 33
task = table:
  yield = function: p
  create = function: p
property = table:
Generic tests completed.

Module tests...
Copy test: autoexec.bin -> tmp.bin
Copy test OK
Append test: tmp.txt
Append test OK
Testing exposure settings, module 'camera'...
Camera    : Canon EOS 5D Mark III (5D3) 1.3.4
Lens      : EF50mm f/1.8 STM
Shoot mode: 3
Shutter   : Ç30 (raw 96, 0.03125s, 31ms, apex 5)
Aperture  : Å5.6 (raw 48, f/5.599999, apex 5)
Av range  : Å1.8..Å22 (raw 22..80, f/1.8..f/22.6, apex 1.75..9)
ISO       : 800 (raw 96, 800, apex 8)
EC        : 0.0 (raw 0, 0 EV)
Flash EC  : 0.0 (raw 0, 0 EV)
Setting shutter to random values...
Setting ISO to random values...
Setting aperture to random values...
Please switch to Av mode.
Setting EC to random values...
Setting Flash EC to random values...
Exposure tests completed.

Testing module 'lv'...
LiveView is running; stopping...
Starting LiveView...
Setting zoom to x1...
Setting zoom to x5...
Setting zoom to x10...
Setting zoom to x5...
Setting zoom to x1...
Setting zoom to x10...
Setting zoom to x1...
Pausing LiveView...
Resuming LiveView...
Stopping LiveView...
LiveView tests completed.

Focus distance: 410
Focusing backward...
Focus distance: 8610
Focusing forward with step size 3, wait=true...
......................
Focus distance: 370
Focusing backward with step size 3, wait=true...
......................
Focus distance: 8610
Focus range: 22 steps forward, 22 steps backward.
Focusing forward with step size 3, wait=false...
......................
Focus distance: 370
Focusing backward with step size 3, wait=false...
......................
Focus distance: 8610
Focus range: 22 steps forward, 22 steps backward.
Focusing forward with step size 2, wait=true...
...
Focus distance: 370
Focusing backward with step size 2, wait=true...
...
Focus distance: 655350
Focus range: 159 steps forward, 160 steps backward.
Focusing forward with step size 2, wait=false...
...
Focus distance: 370
Focusing backward with step size 2, wait=false...
...
Focus distance: 655350
Focus range: 159 steps forward, 159 steps backward.
Focusing forward with step size 1, wait=true...
...
Focus distance: 370
Focusing backward with step size 1, wait=true...
...
Focus distance: 655350
Focus range: 1053 steps forward, 1054 steps backward.
Focusing forward with step size 1, wait=false...
...
Focus distance: 370
Focusing backward with step size 1, wait=false...
...
Focus distance: 655350
Focus range: 1054 steps forward, 1053 steps backward.
Focus test completed.

Done!

4
Camera-specific discussion / Re: Canon 6D
« on: Yesterday at 06:28:04 AM »
Right, sorry--that's what I meant. Everything seems to work as usual but it isn't saved on the card, right?

5
...the presence of the bug can be found in these logs...

Took another look and of course it hit me in the face this time.

Code: [Select]
lens = table:
  name = "EF50mm f/1.8 STM"
  focal_length = 0
  focus_distance = 14080
  hyperfocal = 0
  dof_near = 0
  dof_far = 0
  af = true
  af_mode = 0
  focus = function: p

Yeah, it shows up in the UI.



Some of it seems to be fine but obviously some of those values are out of whack.



Of course I found this out right when I have to run off to an appointment.

6
Camera-specific discussion / Re: Canon 6D
« on: November 17, 2017, 10:03:36 PM »
If you change the Aspect ratio to 3:2 can you get more vertical resolution? What is the maximum vertical resolution you can get? Does that give you a valid MLV file? Does going to 1.85:1 work?

The 6D sensor is 5472 × 3648 so the maximum non-crop resolution should be width/3 x height/3 or 1824 x 1216.

Have you ever been able to get a Full Resolution Silent Picture on the 6D? Seems like that's what's needed to perform the tests on that Intercepting DebugMsg with cache hacks link you pointed to a while back.

7
General Development Discussion / Re: Compiling Magic Lantern on a Macintosh
« on: November 17, 2017, 08:53:15 PM »
Great video @DeafEyeJedi - I like your choice of colors.  :P

8
Camera-specific discussion / Re: Canon 7D Mark I
« on: November 17, 2017, 07:12:21 PM »
Sounds like you reached the limit of a 256 GB CF card. Yeah, it is frustrating but because of formatting overhead and the different ways manufacturers measure capacity you will never be able to put 256 GB of data on a 256 GB card. You can Google to find out why.

Just out of curiosity, what is the free space of one of your cards that has filled up with 200 GB of MLV files?

[EDIT] Unless you are using 512 GB cards--you didn't specify the size of card you're using so I'm assuming 256 GB.

9
General Development Discussion / Re: Compiling Magic Lantern on a Macintosh
« on: November 17, 2017, 06:58:06 PM »
You're right -- removed the symlink. Thanks for the update.

Have you noticed that the script can now install QEMU from soup to nuts?

10
Camera-specific discussion / Re: Canon 6D
« on: November 17, 2017, 06:13:18 PM »
Just a shot in the dark -- maybe the problem is with raw_info.jpeg.height?

Code: [Select]
    /* max image width is modulo 2 bytes and 8 pixels */
    /* (EDMAC requires W x H to be modulo 16 bytes) */
    /* (processing tools require W modulo 8 pixels for struct raw_pixblock) */
   
    max_res_x = max;
   
    /* max res Y */
    max_res_y = raw_info.jpeg.height & ~1;

There have been some updates in crop_rec_4k that affect white and black levels so I merged that along with your mlv_lite hack and my FRSP hack and put a build in my downloads directory. Of course these hacks will never fly but at least we'll see what we need to work on.

11
General Development Discussion / Re: Compiling Magic Lantern on a Macintosh
« on: November 17, 2017, 05:13:11 PM »
Glad you got it working. I reworked the script to accommodate that [email protected] change in Homebrew and while I was at it improved the QEMU installation. The script can be run even if you have a development environment already setup, it won't clobber your current installation (I hope).  :P

12
General Development Discussion / Re: Compiling Magic Lantern on a Macintosh
« on: November 17, 2017, 12:55:49 AM »
Looks like there was another change at Homebrew:

Code: [Select]
Warning: Use [email protected] instead of deprecated homebrew/versions/gcc5
I'll need to update the tutorial.

The stall you're experiencing is the compiler compiling a compiler from scratch. It takes a long time but if you let it keep running it should eventually finish and work. There should be a binary version available so that shouldn't be necessary. I'll update this topic when I get things working properly again.

13
Camera-specific discussion / Re: Canon 6D
« on: November 16, 2017, 11:54:50 PM »
The build as it is now, (Crop_rec_4k_6d_WIP)

That isn't it. That's a branch that I've been experimenting with and it probably isn't working properly. I took down my 6D builds because I didn't want to cause any confusion like this.

I'm talking about a build made off the pull request. I just uploaded a build of it to my Bitbucket downloads page.

There have been several experiments but I'm not sure if anything needs to change in the code or if all the progress is on the post processing end of things. I'm still in the dark whether or not the FRSP hack is needed on the 6D or if this needs to change:

lossless.c
Code: [Select]
    if (is_camera("5D3", "*") || is_camera("6D", "*"))
     {
         /* resolution is hardcoded in some places; patch them */
         EngDrvOut(0xC0F375B4, PACK32(width    - 1,  height/2  - 1));  /* 0xF6D0B8F */
         EngDrvOut(0xC0F13068, PACK32(width*2  - 1,  height/2  - 1));  /* 0xF6D171F */
         EngDrvOut(0xC0F12010,        width    - 1                 );  /* 0xB8F     */
         EngDrvOut(0xC0F12014, PACK32(width    - 1,  height/2  - 1));  /* 0xF6D0B8F */
         EngDrvOut(0xC0F1201C,        width/10 - 1                 );  /* 0x127     */
         EngDrvOut(0xC0F12020, PACK32(width/10 - 1,  height/20 - 1));  /* 0x18A0127 */
     }

I believe you experimented with this but I'm not sure if it fixed anything:

Code: [Select]
    if (is_camera("6D", "*"))
     {
         /* resolution is hardcoded in some places; patch them */
         EngDrvOut(0xC0F375B4, PACK32(width    - 1,  height/2  - 1));
     }

14
Camera-specific discussion / Re: Canon 6D
« on: November 16, 2017, 08:50:35 PM »
From those compile messages it looks like you are missing the SRM_BUFFER_SIZE in consts.h.

15
Camera-specific discussion / Re: Canon 6D
« on: November 16, 2017, 07:44:38 PM »
Be happy, the 6d has working lossless already, all the data is there, it just need some fiddling with exiftool for the moment, but all the correct data is in the file.

Is there anything on the pull request that needs to be changed?

I followed the instructions and got a working build with working silent.mo, but no lossless compression.  ::)

Right, following the instructions--I didn't try that yet. Maybe that same pull request has what's needed to get lossless compression working on your modified compressed_raw/dm-spy-experiments build?

It doesn't seem right that the DNG files need to be post processed. If we could get a log file out of that special build would it show where the black levels are shifting around?

16
Camera-specific discussion / Re: Canon 6D
« on: November 16, 2017, 02:37:40 AM »
@DFort, maybe you can help make a build, with DM-SPY and lossless silent pic according to these instructions from Alex?
http://www.magiclantern.fm/forum/index.php?topic=2388.msg183168#msg183168

It can get tricky merging the dm-spy-experiments branch. I tried a few different ways but couldn't get it to compile a working silent module--much less with the 6D changes. There have been lots of updates since those instructions were posted back in April using the compressed_raw branch.

I'll update you if I can get something to work but I've also got a question--are you able to save full-res silent picture with lossless compression without requiring my hack pull request? Yeah, got to figure out a better method because this will never be accepted into the main repository.

17
Camera-specific discussion / Re: Canon 5D Mark III / 5D3 / Firmware 1.3.4
« on: November 15, 2017, 07:45:22 AM »
Still looking for trouble. Self tests are passing.



Going from 1.2.3 to 1.3.4 check-stubs.py flags a few stubs that affect the UI but these seem to be correct.
Code: [Select]
gui_main_struct                     0x00024120 -> 0x00024120 [0x000]
dm_names                            0x00024a70 -> 0x00024a70 [0x000]
task_max                            0x00025024 -> 0x00025024 [0x000]
gui_task_list                       0x000321c8 -> 0x000321e0 [0x018] [!!!]
cf_device_ptr                       0x00036184 -> 0x0003619c [0x018] [!!!]
sd_device                           0x00039960 -> 0x00039978 [0x018] [!!!]
LCD_Palette                         0x00041510 -> 0x00041530 [0x020] [!!!]
bmp_vram_info                       0x00042d10 -> 0x00042d30 [0x020] [!!!]
additional_version                  0x00046910 -> 0x00046930 [0x020] [!!!]
camera_engine                       0xc0220000 -> 0xc0220000 [0x000]
cstart                              0xff0c1ca0 -> 0xff0c1ca0 [0x000] [!!!]
init_task                           0xff0c5298 -> 0xff0c52a0 [0x008]
_malloc                             0xff0c8178 -> 0xff0c8180 [0x008]
_free                               0xff0c81d0 -> 0xff0c81d8 [0x008]
gui_main_task                       0xff0de948 -> 0xff0de950 [0x008]
GUI_Control                         0xff0ded1c -> 0xff0ded24 [0x008]
gui_init_end                        0xff0df384 -> 0xff0df38c [0x008]

Is it one bug or several? And it is in the api_test.lua log? Feel I'm overlooking something very obvious.

18
Raw Video / Re: Problem with playing back whole raw card
« on: November 15, 2017, 06:41:13 AM »
Easiest way: open recovered.raw in a hex editor, navigate to offset 0x1516c000 and delete one byte (it will be a B7 in this particular file).

Amazing - this fixed that one broken frame and there's no need to mess around with vertical stripes.

Also change the number of frames in the footer to something very high (e.g. replace 97 00 with 97 FF) Save, run raw2dng (unmodified) and all the 505 frames will be correct.

Well that filled up my drive in a hurry. Changed it to F9 01 (little endian encoding for 505 decimal) and that garbled up RAW file is as good as new.

https://www.dropbox.com/sh/sfo9mf2bu3n4ffb/AACD1ChpyR27FU9-2cdCLCTJa?dl=0

@dfgh - You should have all you need to fix those corrupted files.

One more thing--

BTW - have you found what ML version was used?

19
Raw Video / Re: Problem with playing back whole raw card
« on: November 14, 2017, 09:26:45 PM »
Another method is using mlv_dump to convert the RAW file to MLV and process the DNG files with the "--no-stripes" option. For those unfamiliar with the command line it can also be done in Danne's Switch app.

Pick option "01":


Then run it again and choose "m" for the mlv_dump settings:


There's the "do not fix vertical stripes in highlights" option:


Works like magic.

20
Raw Video / Re: Problem with playing back whole raw card
« on: November 14, 2017, 08:33:00 PM »
...presumably the code supplied goes into terminal?

Yes. Put the two files you supplied into a directory, "cd" into that directory with the terminal and run those commands. Here is what you should see. On the first pass which results in a file named "recovered.raw" frames 0 - 96 should be fine.



It breaks on frame 97.



Everything after that is garbled but running that next command that creates "recovered2.raw" frames 98 -150 will look something like this.



I'm noticing some vertical stripes on those frames so there's some more work to be done--or maybe it is because of the way my system is configured (Mac 10.13.1). Here's a closer look:



In addition, the footer on your M07-1720.RAW file has 151 frames in it and your M06-1301.RAW has more frames in it, though we don't know exactly how many more. I did some more work on my simple raw_footer.sh script so it prints out some additional information. Note there is a lot more in that footer that the script doesn't show.

Code: [Select]
./raw_footer.sh footer.raw

RAW footer:
00000000: 52 41 57 4d 80 07 38 04 00 60 37 00 97 00 00 00  RAWM..8..`7.....
00000010: 01 00 00 00 a8 61 00 00 d8 47 04 00 00 00 00 00  .....a...G......
00000020: 01 00 00 00 00 a0 31 4d 26 05 00 00 20 08 00 00  ......1M&... ...
00000030: 38 0e 00 00 50 34 49 00 0e 00 00 00 fe 07 00 00  8...P4I.........
00000040: 98 3a 00 00 00 00 00 00 00 00 00 00 8c 07 00 00  .:..............
00000050: 0a 05 00 00 1c 00 00 00 92 00 00 00 26 05 00 00  ............&...
00000060: 1e 08 00 00 00 00 00 00 00 00 00 00 00 01 01 02  ................
00000070: 01 00 00 00 42 1a 00 00 10 27 00 00 85 fd ff ff  ....B....'......
00000080: 10 27 00 00 3d fc ff ff 10 27 00 00 41 ef ff ff  .'..=....'..A...
00000090: 10 27 00 00 ac 30 00 00 10 27 00 00 ec 07 00 00  .'...0...'......
000000a0: 10 27 00 00 74 fc ff ff 10 27 00 00 72 08 00 00  .'..t....'..r...
000000b0: 10 27 00 00 24 16 00 00 10 27 00 00 20 04 00 00  .'..$....'.. ...

Magic:
0x5241574d
00000000: 52  R
00000001: 41  A
00000002: 57  W
00000003: 4d  M

Width in hexidecimal:
0x8007

Normal hexadecimal to decimal conversion doesn't work on little endian encoding:
32775

Converted from little endian encoding:
0x0780

Image width taken from the raw footer
from original hex through conversion to decimal:
0x8007
0x0780
1920

Image height taken from the raw footer:
0x3804
1080

Frame size:
0x00603700
3629056

Frame count:
0x9700
151

Frame skip:
0x000001000000
65536

Frames per second:
0xa861
25.000

21
Camera-specific discussion / Re: Canon 5D Mark III / 5D3 / Firmware 1.3.4
« on: November 14, 2017, 05:20:15 PM »
It's usually spelled Excute in Canon code.

Ok--now I see it. There's a bunch of "DlgMnCardFormatExcute" all over the place.

(the obvious part is on the UI, but the presence of the bug can be found in these logs)

Obvious? Hum, how does Canon spell UI?

22
...my advice would be to double-check the same stubs.

Thanks, that's exactly what the problem was. Tested on camera.

23
Camera-specific discussion / Re: Canon 5D Mark III / 5D3 / Firmware 1.3.4
« on: November 14, 2017, 07:45:40 AM »
How does this look? Using an old EF 28-105mm f/3.5-4.5 USM on the first test.

Code: [Select]
===============================================================================
ML/SCRIPTS/api_test.lua - 2017-11-13 23:22:37
===============================================================================

Strict mode tests...
Strict mode tests passed.

Generic tests...
camera = table:
  shutter = table:
    raw = 53
    apex = -0.375
    ms = 1297
    value = 1.296839
  aperture = table:
    raw = 48
    apex = 5
    value = 5.599999
    min = table:
      raw = 39
      apex = 3.875
      value = 3.799999
    max = table:
      raw = 82
      apex = 9.25
      value = 24.6
  iso = table:
    raw = 96
    apex = 8
    value = 800
  ec = table:
    raw = 0
    value = 0
  flash_ec = table:
    raw = 0
    value = 0
  kelvin = 5500
  mode = 3
  metering_mode = 3
  drive_mode = 0
  model = "Canon EOS 5D Mark III"
  model_short = "5D3"
  firmware = "1.3.4"
  temperature = 154
  state = 0
  reboot = function: p
  shoot = function: p
  bulb = function: p
event = table:
  pre_shoot = nil
  post_shoot = nil
  shoot_task = nil
  seconds_clock = nil
  keypress = nil
  custom_picture_taking = nil
  intervalometer = nil
  config_save = nil
console = table:
  hide = function: p
  show = function: p
  write = function: p
  clear = function: p
lv = table:
  enabled = false
  paused = false
  running = false
  zoom = 1
  pause = function: p
  info = function: p
  stop = function: p
  start = function: p
  wait = function: p
  resume = function: p
lens = table:
  name = "EF28-105mm f/3.5-4.5 USM"
  focal_length = 0
  focus_distance = 14080
  hyperfocal = 0
  dof_near = 0
  dof_far = 0
  af = true
  af_mode = 0
  focus = function: p
display = table:
  idle = true
  height = 480
  width = 720
  line = function: p
  rect = function: p
  clear = function: p
  screenshot = function: p
  draw = function: p
  off = function: p
  notify_box = function: p
  on = function: p
  load = function: p
  circle = function: p
  print = function: p
  pixel = function: p
key = table:
  last = 0
  press = function: p
  wait = function: p
menu = table:
  visible = false
  open = function: p
  get = function: p
  new = function: p
  close = function: p
  block = function: p
  set = function: p
testmenu = userdata:
  value = 0
  name = "Script API tests"
  help = "Various tests for the Lua scripting API."
  help2 = "When adding new Lua APIs, tests for them should go here."
  advanced = 0
  depends_on = 0
  edit_mode = 0
  hidden = false
  icon_type = 5
  jhidden = false
  max = 0
  min = 0
  selected = true
  shidden = false
  starred = false
  submenu_height = 0
  submenu_width = 0
  unit = 0
  works_best_in = 0
  run_in_separate_task = 0
  select = function: p
  update = nil
  info = nil
  rinfo = nil
  warning = nil
movie = table:
  recording = false
  stop = function: p
  start = function: p
dryos = table:
  clock = 18
  ms_clock = 18586
  prefix = "1Y7A"
  dcim_dir = table:
    exists = true
    create = function: p
    children = function: p
    files = function: p
    parent = table:
      exists = true
      create = function: p
      children = function: p
      files = function: p
      parent = table:
        exists = true
        create = function: p
        children = function: p
        files = function: p
        parent = nil
        path = "A:/"
      path = "A:/DCIM/"
    path = "A:/DCIM/100EOS5D/"
  config_dir = table:
    exists = true
    create = function: p
    children = function: p
    files = function: p
    parent = table:
      exists = true
      create = function: p
      children = function: p
      files = function: p
      parent = table:
        exists = true
        create = function: p
        children = function: p
        files = function: p
        parent = nil
        path = "B:/"
      path = "ML/"
    path = "ML/SETTINGS/"
  ml_card = table:
    cluster_size = 131072
    drive_letter = "B"
    file_number = 3186
    folder_number = 100
    free_space = 62705536
    type = "SD"
    _card_ptr = userdata
    path = "B:/"
  shooting_card = table:
    cluster_size = 32768
    drive_letter = "A"
    file_number = 3186
    folder_number = 100
    free_space = 85787744
    type = "CF"
    _card_ptr = userdata
    path = "A:/"
  date = table:
    min = 22
    year = 2017
    hour = 23
    yday = 317
    sec = 39
    isdst = false
    day = 13
    month = 11
    wday = 2
  remove = function: p
  directory = function: p
  call = function: p
interval = table:
  time = 10
  count = 0
  running = 0
  stop = function: p
battery = table:
  level = 84
  id = 0
  performance = 3
  time = 15876
  drain_rate = 19
task = table:
  yield = function: p
  create = function: p
property = table:
Generic tests completed.

Module tests...
Copy test: autoexec.bin -> tmp.bin
Copy test OK
Append test: tmp.txt
Append test OK
Testing exposure settings, module 'camera'...
Camera    : Canon EOS 5D Mark III (5D3) 1.3.4
Lens      : EF28-105mm f/3.5-4.5 USM
Shoot mode: 3
Shutter   : 1.3" (raw 53, 1.296839s, 1297ms, apex -0.375)
Aperture  : Å5.6 (raw 48, f/5.599999, apex 5)
Av range  : Å3.8..Å24 (raw 39..82, f/3.799999..f/24.6, apex 3.875..9.25)
ISO       : 800 (raw 96, 800, apex 8)
EC        : 0.0 (raw 0, 0 EV)
Flash EC  : 0.0 (raw 0, 0 EV)
Setting shutter to random values...
Setting ISO to random values...
Setting aperture to random values...
Please switch to Av mode.
Setting EC to random values...
Setting Flash EC to random values...
Exposure tests completed.

Testing module 'lv'...
LiveView is running; stopping...
Starting LiveView...
Setting zoom to x1...
Setting zoom to x5...
Setting zoom to x10...
Setting zoom to x5...
Setting zoom to x1...
Setting zoom to x10...
Setting zoom to x1...
Pausing LiveView...
Resuming LiveView...
Stopping LiveView...
LiveView tests completed.

Focus distance: 366080
Focusing backward...
Focus distance: 366080
Focusing forward with step size 3, wait=true...
....
Focus distance: 366080
Focusing backward with step size 3, wait=true...
....
Focus distance: 366080
Focus range: 4 steps forward, 4 steps backward.
Focusing forward with step size 3, wait=false...
....
Focus distance: 366080
Focusing backward with step size 3, wait=false...
....
Focus distance: 366080
Focus range: 4 steps forward, 4 steps backward.
Focusing forward with step size 2, wait=true...
................................
Focus distance: 366080
Focusing backward with step size 2, wait=true...
.................................
Focus distance: 366080
Focus range: 32 steps forward, 33 steps backward.
Focusing forward with step size 2, wait=false...
................................
Focus distance: 366080
Focusing backward with step size 2, wait=false...
.................................
Focus distance: 366080
Focus range: 32 steps forward, 33 steps backward.
Focusing forward with step size 1, wait=true...
...
Focus distance: 366080
Focusing backward with step size 1, wait=true...
...
Focus distance: 366080
Focus range: 260 steps forward, 262 steps backward.
Focusing forward with step size 1, wait=false...
...
Focus distance: 366080
Focusing backward with step size 1, wait=false...
...
Focus distance: 366080
Focus range: 260 steps forward, 259 steps backward.
Focus test completed.

Done!

Here is just the focus test with a much newer EF 50mm f/1.8 STM.

Code: [Select]
===============================================================================
ML/SCRIPTS/api_test.lua - 2017-11-13 23:34:25
===============================================================================

...
lens = table:
  name = "EF50mm f/1.8 STM"
  focal_length = 0
  focus_distance = 14080
  hyperfocal = 0
  dof_near = 0
  dof_far = 0
  af = true
  af_mode = 0
  focus = function: p
...
Focus distance: 440320
Focusing backward...
Focus distance: 440320
Focusing forward with step size 3, wait=true...
.......................
Focus distance: 394240
Focusing backward with step size 3, wait=true...
......................
Focus distance: 437760
Focus range: 23 steps forward, 22 steps backward.
Focusing forward with step size 3, wait=false...
......................
Focus distance: 394240
Focusing backward with step size 3, wait=false...
......................
Focus distance: 437760
Focus range: 22 steps forward, 22 steps backward.
Focusing forward with step size 2, wait=true...
...
Focus distance: 394240
Focusing backward with step size 2, wait=true...
...
Focus distance: 440320
Focus range: 159 steps forward, 159 steps backward.
Focusing forward with step size 2, wait=false...
...
Focus distance: 394240
Focusing backward with step size 2, wait=false...
...
Focus distance: 440320
Focus range: 159 steps forward, 159 steps backward.
Focusing forward with step size 1, wait=true...
...
Focus distance: 394240
Focusing backward with step size 1, wait=true...
...
Focus distance: 440320
Focus range: 1053 steps forward, 1053 steps backward.
Focusing forward with step size 1, wait=false...
...
Focus distance: 394240
Focusing backward with step size 1, wait=false...
...
Focus distance: 440320
Focus range: 1052 steps forward, 1052 steps backward.
Focus test completed.

Done!

24
Camera-specific discussion / Re: Canon 5D Mark III / 5D3 / Firmware 1.3.4
« on: November 14, 2017, 07:10:12 AM »
- ML menu in photo mode outside LiveView (whether it opens or not by pressing DELETE), confirmed this issue and suggested a fix.
- Restore after format: doesn't work (related to the above glitch).

Fixed. Found the same problem in 1.3.3. Turned out that the DIALOG_MnCardFormatBegin constant was off. Not sure how to confirm DIALOG_MnCardFormatExecute but it seems to be working.

Double checked the Q button and it appears to be working as it should. @nexiabass could you explain exactly how to reproduce your issue?

Updated the build in my Bitbucket downloads page. Yeah, same date but I removed the previous build because this is definitely an improvement.

Now I need to go out and actually use this to figure out what those 2,000 downloaders missed.  :P

25
Camera-specific discussion / Re: Canon 5D Mark IV
« on: November 13, 2017, 08:26:18 PM »
can't really see why it's called log anyways.

It's log, it's log,
It's big, it's heavy, it's wood.


Seriously, it is short for logarithmic curve. Here's an article that simplifies log vs. raw. Technically all "photo styles" use some variation of a log curve but the "log" like in S-Log, V-Log, etc. are technical curves to get the most information possible out of the sensor without having to save the raw data. You need to be very careful with exposure and white balance when shooting log but I'm sure you already know that.

Pages: [1] 2 3 ... 84