Skip to content

Commit 096a7a6

Browse files
Regenerate with better bitfield handling
Wireshark uses MSB and we updated the models to be more native, there will be further updates in other protocols
1 parent 9fe0eca commit 096a7a6

132 files changed

Lines changed: 41673 additions & 36414 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

24X/24X_Equities_Memo_Sbe_v1_13_Dissector.lua

Lines changed: 27 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -4312,53 +4312,58 @@ n24x_equities_memo_sbe_v1_13.exec_inst = {}
43124312
n24x_equities_memo_sbe_v1_13.exec_inst.size = 2
43134313

43144314
-- Display: Exec Inst
4315-
n24x_equities_memo_sbe_v1_13.exec_inst.display = function(buffer, packet, parent)
4315+
n24x_equities_memo_sbe_v1_13.exec_inst.display = function(range, value, packet, parent)
43164316
local display = ""
43174317

4318-
-- Is External Routing Not Allowed flag set?
4319-
if buffer:bitfield(13) > 0 then
4320-
display = display.."External Routing Not Allowed|"
4318+
-- Is Participate Do Not Initiate flag set?
4319+
if bit.band(value, 0x0001) ~= 0 then
4320+
display = display.."Participate Do Not Initiate|"
43214321
end
43224322
-- Is Intermarket Sweep flag set?
4323-
if buffer:bitfield(14) > 0 then
4323+
if bit.band(value, 0x0002) ~= 0 then
43244324
display = display.."Intermarket Sweep|"
43254325
end
4326-
-- Is Participate Do Not Initiate flag set?
4327-
if buffer:bitfield(15) > 0 then
4328-
display = display.."Participate Do Not Initiate|"
4326+
-- Is External Routing Not Allowed flag set?
4327+
if bit.band(value, 0x0004) ~= 0 then
4328+
display = display.."External Routing Not Allowed|"
4329+
end
4330+
4331+
if display:sub(-1) == "|" then
4332+
display = display:sub(1, -2)
43294333
end
43304334

4331-
return display:sub(1, -2)
4335+
return display
43324336
end
43334337

43344338
-- Dissect Bit Fields: Exec Inst
4335-
n24x_equities_memo_sbe_v1_13.exec_inst.bits = function(buffer, offset, packet, parent)
4336-
4337-
-- Reserved 13: 13 Bit
4338-
parent:add(omi_n24x_equities_memo_sbe_v1_13.fields.reserved_13, buffer(offset, 2))
4339+
n24x_equities_memo_sbe_v1_13.exec_inst.bits = function(range, value, packet, parent)
43394340

4340-
-- External Routing Not Allowed: 1 Bit
4341-
parent:add(omi_n24x_equities_memo_sbe_v1_13.fields.external_routing_not_allowed, buffer(offset, 2))
4341+
-- Participate Do Not Initiate: 1 Bit
4342+
parent:add(omi_n24x_equities_memo_sbe_v1_13.fields.participate_do_not_initiate, range, value)
43424343

43434344
-- Intermarket Sweep: 1 Bit
4344-
parent:add(omi_n24x_equities_memo_sbe_v1_13.fields.intermarket_sweep, buffer(offset, 2))
4345+
parent:add(omi_n24x_equities_memo_sbe_v1_13.fields.intermarket_sweep, range, value)
43454346

4346-
-- Participate Do Not Initiate: 1 Bit
4347-
parent:add(omi_n24x_equities_memo_sbe_v1_13.fields.participate_do_not_initiate, buffer(offset, 2))
4347+
-- External Routing Not Allowed: 1 Bit
4348+
parent:add(omi_n24x_equities_memo_sbe_v1_13.fields.external_routing_not_allowed, range, value)
4349+
4350+
-- Reserved 13: 13 Bit
4351+
parent:add(omi_n24x_equities_memo_sbe_v1_13.fields.reserved_13, range, value)
43484352
end
43494353

43504354
-- Dissect: Exec Inst
43514355
n24x_equities_memo_sbe_v1_13.exec_inst.dissect = function(buffer, offset, packet, parent)
4352-
local size = 2
4356+
local size = n24x_equities_memo_sbe_v1_13.exec_inst.size
43534357
local range = buffer(offset, size)
4354-
local display = n24x_equities_memo_sbe_v1_13.exec_inst.display(range, packet, parent)
4358+
local value = range:le_uint()
4359+
local display = n24x_equities_memo_sbe_v1_13.exec_inst.display(range, value, packet, parent)
43554360
local element = parent:add(omi_n24x_equities_memo_sbe_v1_13.fields.exec_inst, range, display)
43564361

43574362
if show.exec_inst then
4358-
n24x_equities_memo_sbe_v1_13.exec_inst.bits(buffer, offset, packet, element)
4363+
n24x_equities_memo_sbe_v1_13.exec_inst.bits(range, value, packet, element)
43594364
end
43604365

4361-
return offset + 2, range
4366+
return offset + size, range
43624367
end
43634368

43644369
-- Cust Order Capacity Cust Order Capacity Type

24X/ReadMe.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
| Division | Data | Protocol | Version | Date | Size | [Status][Omi.Glossary.Status] | [Testing][Omi.Glossary.Testing] | Specification |
77
| --- | --- | --- | --- | ---: | ---: | --- | --- | --- |
8-
| Equities | [Memo][24X.Equities.Memo.Sbe.v1.13.Dissector] | Sbe | [1.13][24X.Equities.Memo.Sbe.v1.13.Dissector] | 9/1/2025 | 7286 | [Active][Omi.Glossary.Status.Active] | [Beta][Omi.Glossary.Testing.Beta] | [url][24X.Equities.Memo.Sbe.v1.13.Url] - [pdf][24X.Equities.Memo.Sbe.v1.13.Pdf] - [xml][24X.Equities.Memo.Sbe.v1.13.Xml] |
8+
| Equities | [Memo][24X.Equities.Memo.Sbe.v1.13.Dissector] | Sbe | [1.13][24X.Equities.Memo.Sbe.v1.13.Dissector] | 9/1/2025 | 7291 | [Active][Omi.Glossary.Status.Active] | [Beta][Omi.Glossary.Testing.Beta] | [url][24X.Equities.Memo.Sbe.v1.13.Url] - [pdf][24X.Equities.Memo.Sbe.v1.13.Pdf] - [xml][24X.Equities.Memo.Sbe.v1.13.Xml] |
99
| Equities | [MemoirDepthFeed][24X.Equities.MemoirDepthFeed.Sbe.v1.3.Dissector] | Sbe | [1.3][24X.Equities.MemoirDepthFeed.Sbe.v1.3.Dissector] | 9/1/2025 | 2460 | [Active][Omi.Glossary.Status.Active] | [Beta][Omi.Glossary.Testing.Beta] | [url][24X.Equities.MemoirDepthFeed.Sbe.v1.3.Url] - [pdf][24X.Equities.MemoirDepthFeed.Sbe.v1.3.Pdf] - [xml][24X.Equities.MemoirDepthFeed.Sbe.v1.3.Xml] |
1010
| Equities | [MemoirLastSale][24X.Equities.MemoirLastSale.Sbe.v1.3.Dissector] | Sbe | [1.3][24X.Equities.MemoirLastSale.Sbe.v1.3.Dissector] | 9/1/2025 | 2555 | [Active][Omi.Glossary.Status.Active] | [Verified][Omi.Glossary.Testing.Verified] | [url][24X.Equities.MemoirLastSale.Sbe.v1.3.Url] - [pdf][24X.Equities.MemoirLastSale.Sbe.v1.3.Pdf] - [xml][24X.Equities.MemoirLastSale.Sbe.v1.3.Xml] |
1111
| Equities | [MemoirTopOfBook][24X.Equities.MemoirTopOfBook.Sbe.v1.3.Dissector] | Sbe | [1.3][24X.Equities.MemoirTopOfBook.Sbe.v1.3.Dissector] | 9/1/2025 | 2230 | [Active][Omi.Glossary.Status.Active] | [Beta][Omi.Glossary.Testing.Beta] | [url][24X.Equities.MemoirTopOfBook.Sbe.v1.3.Url] - [pdf][24X.Equities.MemoirTopOfBook.Sbe.v1.3.Pdf] - [xml][24X.Equities.MemoirTopOfBook.Sbe.v1.3.Xml] |

A2X/A2X_Equities_Rtmdf_Amd_v1_3_2_Dissector.lua

Lines changed: 52 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -15,16 +15,16 @@ local a2x_equities_rtmdf_amd_v1_3_2 = {}
1515
-----------------------------------------------------------------------
1616

1717
-- A2X Equities Rtmdf Amd 1.3.2 Fields
18-
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.aod_enabled = ProtoField.new("Aod Enabled", "a2x.equities.rtmdf.amd.v1.3.2.aodenabled", ftypes.UINT16, {[1]="Yes",[0]="No"}, base.DEC, 0x001000)
18+
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.aod_enabled = ProtoField.new("Aod Enabled", "a2x.equities.rtmdf.amd.v1.3.2.aodenabled", ftypes.UINT16, {[1]="Yes",[0]="No"}, base.DEC, 0x0400)
1919
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.closing_buy_qty = ProtoField.new("Closing Buy Qty", "a2x.equities.rtmdf.amd.v1.3.2.closingbuyqty", ftypes.UINT32)
2020
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.closing_sell_qty = ProtoField.new("Closing Sell Qty", "a2x.equities.rtmdf.amd.v1.3.2.closingsellqty", ftypes.UINT32)
2121
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.currency = ProtoField.new("Currency", "a2x.equities.rtmdf.amd.v1.3.2.currency", ftypes.STRING)
22-
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.illiquid = ProtoField.new("Illiquid", "a2x.equities.rtmdf.amd.v1.3.2.illiquid", ftypes.UINT16, {[1]="Yes",[0]="No"}, base.DEC, 0x000400)
22+
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.illiquid = ProtoField.new("Illiquid", "a2x.equities.rtmdf.amd.v1.3.2.illiquid", ftypes.UINT16, {[1]="Yes",[0]="No"}, base.DEC, 0x1000)
2323
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.indicative_price = ProtoField.new("Indicative Price", "a2x.equities.rtmdf.amd.v1.3.2.indicativeprice", ftypes.UINT64)
2424
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.isin = ProtoField.new("Isin", "a2x.equities.rtmdf.amd.v1.3.2.isin", ftypes.STRING)
25-
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.mac_enabled = ProtoField.new("Mac Enabled", "a2x.equities.rtmdf.amd.v1.3.2.macenabled", ftypes.UINT16, {[1]="Yes",[0]="No"}, base.DEC, 0x000080)
26-
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.mac_open = ProtoField.new("Mac Open", "a2x.equities.rtmdf.amd.v1.3.2.macopen", ftypes.UINT8, {[1]="Yes",[0]="No"}, base.DEC, 0x02)
27-
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.mac_run = ProtoField.new("Mac Run", "a2x.equities.rtmdf.amd.v1.3.2.macrun", ftypes.UINT8, {[1]="Yes",[0]="No"}, base.DEC, 0x04)
25+
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.mac_enabled = ProtoField.new("Mac Enabled", "a2x.equities.rtmdf.amd.v1.3.2.macenabled", ftypes.UINT16, {[1]="Yes",[0]="No"}, base.DEC, 0x8000)
26+
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.mac_open = ProtoField.new("Mac Open", "a2x.equities.rtmdf.amd.v1.3.2.macopen", ftypes.UINT8, {[1]="Yes",[0]="No"}, base.DEC, 0x40)
27+
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.mac_run = ProtoField.new("Mac Run", "a2x.equities.rtmdf.amd.v1.3.2.macrun", ftypes.UINT8, {[1]="Yes",[0]="No"}, base.DEC, 0x20)
2828
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.market_flags = ProtoField.new("Market Flags", "a2x.equities.rtmdf.amd.v1.3.2.marketflags", ftypes.STRING)
2929
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.match_vol = ProtoField.new("Match Vol", "a2x.equities.rtmdf.amd.v1.3.2.matchvol", ftypes.UINT32)
3030
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.message = ProtoField.new("Message", "a2x.equities.rtmdf.amd.v1.3.2.message", ftypes.STRING)
@@ -43,19 +43,19 @@ omi_a2x_equities_rtmdf_amd_v1_3_2.fields.security_flags = ProtoField.new("Securi
4343
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.security_id = ProtoField.new("Security Id", "a2x.equities.rtmdf.amd.v1.3.2.securityid", ftypes.UINT16)
4444
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.seq_no = ProtoField.new("Seq No", "a2x.equities.rtmdf.amd.v1.3.2.seqno", ftypes.UINT32)
4545
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.side = ProtoField.new("Side", "a2x.equities.rtmdf.amd.v1.3.2.side", ftypes.UINT8)
46-
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.test_stock = ProtoField.new("Test Stock", "a2x.equities.rtmdf.amd.v1.3.2.teststock", ftypes.UINT16, nil, base.DEC, 0x000300)
46+
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.test_stock = ProtoField.new("Test Stock", "a2x.equities.rtmdf.amd.v1.3.2.teststock", ftypes.UINT16, nil, base.DEC, 0x6000)
4747
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.threshold = ProtoField.new("Threshold", "a2x.equities.rtmdf.amd.v1.3.2.threshold", ftypes.UINT64)
4848
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.tick_size = ProtoField.new("Tick Size", "a2x.equities.rtmdf.amd.v1.3.2.ticksize", ftypes.UINT64)
4949
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.tick_table_id = ProtoField.new("Tick Table Id", "a2x.equities.rtmdf.amd.v1.3.2.ticktableid", ftypes.UINT8)
5050
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.timestamp = ProtoField.new("Timestamp", "a2x.equities.rtmdf.amd.v1.3.2.timestamp", ftypes.UINT64)
5151
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.trade_ref = ProtoField.new("Trade Ref", "a2x.equities.rtmdf.amd.v1.3.2.traderef", ftypes.UINT32)
5252
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.trade_type = ProtoField.new("Trade Type", "a2x.equities.rtmdf.amd.v1.3.2.tradetype", ftypes.UINT8)
53-
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.trading = ProtoField.new("Trading", "a2x.equities.rtmdf.amd.v1.3.2.trading", ftypes.UINT8, {[1]="Yes",[0]="No"}, base.DEC, 0x01)
53+
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.trading = ProtoField.new("Trading", "a2x.equities.rtmdf.amd.v1.3.2.trading", ftypes.UINT8, {[1]="Yes",[0]="No"}, base.DEC, 0x80)
5454
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.trading_status = ProtoField.new("Trading Status", "a2x.equities.rtmdf.amd.v1.3.2.tradingstatus", ftypes.UINT8)
5555
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.umtf = ProtoField.new("Umtf", "a2x.equities.rtmdf.amd.v1.3.2.umtf", ftypes.STRING)
56-
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.unused_1 = ProtoField.new("Unused 1", "a2x.equities.rtmdf.amd.v1.3.2.unused1", ftypes.UINT16, {[1]="Yes",[0]="No"}, base.DEC, 0x000800)
57-
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.unused_11 = ProtoField.new("Unused 11", "a2x.equities.rtmdf.amd.v1.3.2.unused11", ftypes.UINT16, nil, base.DEC, 0xFFE000)
58-
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.unused_5 = ProtoField.new("Unused 5", "a2x.equities.rtmdf.amd.v1.3.2.unused5", ftypes.UINT8, nil, base.DEC, 0xF8)
56+
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.unused_1 = ProtoField.new("Unused 1", "a2x.equities.rtmdf.amd.v1.3.2.unused1", ftypes.UINT16, {[1]="Yes",[0]="No"}, base.DEC, 0x0800)
57+
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.unused_10 = ProtoField.new("Unused 10", "a2x.equities.rtmdf.amd.v1.3.2.unused10", ftypes.UINT16, nil, base.DEC, 0x03FF)
58+
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.unused_5 = ProtoField.new("Unused 5", "a2x.equities.rtmdf.amd.v1.3.2.unused5", ftypes.UINT8, nil, base.DEC, 0x1F)
5959

6060
-- A2X Equities Rtmdf Amd 1.3.2 messages
6161
omi_a2x_equities_rtmdf_amd_v1_3_2.fields.auction_on_demand_message = ProtoField.new("Auction On Demand Message", "a2x.equities.rtmdf.amd.v1.3.2.auctionondemandmessage", ftypes.STRING)
@@ -448,53 +448,58 @@ a2x_equities_rtmdf_amd_v1_3_2.market_flags = {}
448448
a2x_equities_rtmdf_amd_v1_3_2.market_flags.size = 1
449449

450450
-- Display: Market Flags
451-
a2x_equities_rtmdf_amd_v1_3_2.market_flags.display = function(buffer, packet, parent)
451+
a2x_equities_rtmdf_amd_v1_3_2.market_flags.display = function(range, value, packet, parent)
452452
local display = ""
453453

454454
-- Is Mac Run flag set?
455-
if buffer:bitfield(5) > 0 then
455+
if bit.band(value, 0x20) ~= 0 then
456456
display = display.."Mac Run|"
457457
end
458458
-- Is Mac Open flag set?
459-
if buffer:bitfield(6) > 0 then
459+
if bit.band(value, 0x40) ~= 0 then
460460
display = display.."Mac Open|"
461461
end
462462
-- Is Trading flag set?
463-
if buffer:bitfield(7) > 0 then
463+
if bit.band(value, 0x80) ~= 0 then
464464
display = display.."Trading|"
465465
end
466466

467-
return display:sub(1, -2)
467+
if display:sub(-1) == "|" then
468+
display = display:sub(1, -2)
469+
end
470+
471+
return display
468472
end
469473

470474
-- Dissect Bit Fields: Market Flags
471-
a2x_equities_rtmdf_amd_v1_3_2.market_flags.bits = function(buffer, offset, packet, parent)
475+
a2x_equities_rtmdf_amd_v1_3_2.market_flags.bits = function(range, value, packet, parent)
472476

473477
-- Unused 5: 5 Bit
474-
parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.unused_5, buffer(offset, 1))
478+
parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.unused_5, range, value)
475479

476480
-- Mac Run: 1 Bit
477-
parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.mac_run, buffer(offset, 1))
481+
parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.mac_run, range, value)
478482

479483
-- Mac Open: 1 Bit
480-
parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.mac_open, buffer(offset, 1))
484+
parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.mac_open, range, value)
481485

482486
-- Trading: 1 Bit
483-
parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.trading, buffer(offset, 1))
487+
parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.trading, range, value)
484488
end
485489

486490
-- Dissect: Market Flags
487491
a2x_equities_rtmdf_amd_v1_3_2.market_flags.dissect = function(buffer, offset, packet, parent)
488-
local size = 1
492+
local size = a2x_equities_rtmdf_amd_v1_3_2.market_flags.size
489493
local range = buffer(offset, size)
490-
local display = a2x_equities_rtmdf_amd_v1_3_2.market_flags.display(range, packet, parent)
494+
local value = range:le_uint()
495+
local display = a2x_equities_rtmdf_amd_v1_3_2.market_flags.display(range, value, packet, parent)
491496
local element = parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.market_flags, range, display)
492497

493498
if show.market_flags then
494-
a2x_equities_rtmdf_amd_v1_3_2.market_flags.bits(buffer, offset, packet, element)
499+
a2x_equities_rtmdf_amd_v1_3_2.market_flags.bits(range, value, packet, element)
495500
end
496501

497-
return offset + 1, range
502+
return offset + size, range
498503
end
499504

500505
-- Trading Status
@@ -595,63 +600,68 @@ a2x_equities_rtmdf_amd_v1_3_2.security_flags = {}
595600
a2x_equities_rtmdf_amd_v1_3_2.security_flags.size = 2
596601

597602
-- Display: Security Flags
598-
a2x_equities_rtmdf_amd_v1_3_2.security_flags.display = function(buffer, packet, parent)
603+
a2x_equities_rtmdf_amd_v1_3_2.security_flags.display = function(range, value, packet, parent)
599604
local display = ""
600605

601606
-- Is Aod Enabled flag set?
602-
if buffer:bitfield(11) > 0 then
607+
if bit.band(value, 0x0400) ~= 0 then
603608
display = display.."Aod Enabled|"
604609
end
605610
-- Is Unused 1 flag set?
606-
if buffer:bitfield(12) > 0 then
611+
if bit.band(value, 0x0800) ~= 0 then
607612
display = display.."Unused 1|"
608613
end
609614
-- Is Illiquid flag set?
610-
if buffer:bitfield(13) > 0 then
615+
if bit.band(value, 0x1000) ~= 0 then
611616
display = display.."Illiquid|"
612617
end
613618
-- Is Mac Enabled flag set?
614-
if buffer:bitfield(16) > 0 then
619+
if bit.band(value, 0x8000) ~= 0 then
615620
display = display.."Mac Enabled|"
616621
end
617622

618-
return display:sub(1, -2)
623+
if display:sub(-1) == "|" then
624+
display = display:sub(1, -2)
625+
end
626+
627+
return display
619628
end
620629

621630
-- Dissect Bit Fields: Security Flags
622-
a2x_equities_rtmdf_amd_v1_3_2.security_flags.bits = function(buffer, offset, packet, parent)
631+
a2x_equities_rtmdf_amd_v1_3_2.security_flags.bits = function(range, value, packet, parent)
623632

624-
-- Unused 11: 11 Bit
625-
parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.unused_11, buffer(offset, 2))
633+
-- Unused 10: 10 Bit
634+
parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.unused_10, range, value)
626635

627636
-- Aod Enabled: 1 Bit
628-
parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.aod_enabled, buffer(offset, 2))
637+
parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.aod_enabled, range, value)
629638

630639
-- Unused 1: 1 Bit
631-
parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.unused_1, buffer(offset, 2))
640+
parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.unused_1, range, value)
632641

633642
-- Illiquid: 1 Bit
634-
parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.illiquid, buffer(offset, 2))
643+
parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.illiquid, range, value)
635644

636645
-- Test Stock: 2 Bit
637-
parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.test_stock, buffer(offset, 2))
646+
parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.test_stock, range, value)
638647

639648
-- Mac Enabled: 1 Bit
640-
parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.mac_enabled, buffer(offset, 2))
649+
parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.mac_enabled, range, value)
641650
end
642651

643652
-- Dissect: Security Flags
644653
a2x_equities_rtmdf_amd_v1_3_2.security_flags.dissect = function(buffer, offset, packet, parent)
645-
local size = 2
654+
local size = a2x_equities_rtmdf_amd_v1_3_2.security_flags.size
646655
local range = buffer(offset, size)
647-
local display = a2x_equities_rtmdf_amd_v1_3_2.security_flags.display(range, packet, parent)
656+
local value = range:le_uint()
657+
local display = a2x_equities_rtmdf_amd_v1_3_2.security_flags.display(range, value, packet, parent)
648658
local element = parent:add(omi_a2x_equities_rtmdf_amd_v1_3_2.fields.security_flags, range, display)
649659

650660
if show.security_flags then
651-
a2x_equities_rtmdf_amd_v1_3_2.security_flags.bits(buffer, offset, packet, element)
661+
a2x_equities_rtmdf_amd_v1_3_2.security_flags.bits(range, value, packet, element)
652662
end
653663

654-
return offset + 2, range
664+
return offset + size, range
655665
end
656666

657667
-- Tick Table Id

0 commit comments

Comments
 (0)