Closed pnl-jseb closed 1 month ago
This is a very big PR, which will be very hard to review ! splitting it into a number of smaller PRs is needed.
This smaller PR are needed not only for review but also for regression testing.
The rename of bitfield to bitfield16 ... is illogical since a bit field can be anything from 1bit to 10of thousands,
This update adds native support for some of the most commonly found datatypes in OT systems. This includes support for bitfields, unsigned integers, signed integers, and floating point numbers in multiple word sizes (16 bit, 32 bit and 64 bit).
Relevant changes include: A reworked version of simulator.py that relies on struct.unpack, struct.pack, and other native functions to simplifly datatype handling while also incorportating additional checks to ensure the register layout behaves as expected. In order to simplifly future work development, the Bits field has been renamed bitfield16, while also adding support for 32 and 64 bit fields. To help facilitate adoption, several changes have been done to the project files to ensure a smooth transition. This includes:
Resolves [discussion]: #1458 Partially addresses: #1284