def op_table_md(op_sel, op_name, L1, L2):
    """Generate this (ish):
| 6'h00 | add     | a+b+d              |(a+b+d) gte 2^16  | Addition                       |
| 6'h01 | sub     | a+~b+1             |(a+~b+1) gte 2^16 | Subtraction                    |
| 6'h03 | abs     |(a lt 0)? (0-a) : a | a[15]            | Absolute                       |
| 6'h04 | gte_max |(a gte b)? a : b    | a gte b          | Maximum/<br/>Greater or equal  |
| 6'h05 | lte_min |(a lte b)? a : b    | a lte b          | Minimum/<br/>Less or equal     |
| 6'h08 | sel     | d? a : b           |(a+b) gte 2^16    | Select                         |
| 6'h0B | mult_0  |(a*b)[15:0]         |(a*b+c) gte 2^16  | Shift right                    |
| 6'h0C | mult_1  |(a*b)[23:8]         |(a*b+c) gte 2^24  | Shift left                     |
| 6'h0D | mult_2  |(a*b)[31:16]        | 0                | Multiply high                  |
| 6'h0F | rshft   | a rshft b[3:0]     |(a+b) gte 2^16    | Multiply middle                |
| 6'h11 | lshft   | a lshft b[3:0]     |(a+b) gte 2^16    | Multiply                       |
| 6'h12 | or      | a|b                |(a+b) gte 2^16    | Or                             |
| 6'h13 | and     | a and b            |(a+b) gte 2^16    | And                            |
| 6'h14 | xor     | a^b                |(a+b) gte 2^16    | Xor                            |
"""
    # "0x0f" => "6'h0F"
    op_sel = "6'h" + op_sel[2:100].upper()

    # "out16 = (a lte b)? a : b" => "(a lte b)? a : b" etc
    L1 = L1[8:1000]
    L2 = L2[8:1000]

    comment = {}
    comment['add']     = 'Addition'
    comment['sub']     = 'Subtraction'
    comment['abs']     = 'Absolute'
    comment['gte_max'] = 'Maximum/<br/>Greater or equal'
    comment['lte_min'] = 'Minimum/<br/>Less or equal'
    comment['sel']     = 'Select'
    comment['mult_0']  = 'Multiply'
    comment['mult_1']  = 'Multiply middle'
    comment['mult_2']  = 'Multiply high'
    comment['rshft']   = 'Shift right'
    comment['lshft']   = 'Shift left'
    comment['or']      = 'Or'
    comment['and']     = 'And'
    comment['xor']     = 'Xor'
    #       | Value| Op   |Res16b|Res1b |Comment|
    return "| %-5s | %-7s |%-19s |%-17s | %-30s |" % (op_sel, op_name, L1, L2, comment[op_name])