Contract - 8051 Firmware I2C Enhancement - Urgent

Kiosk provider seeking an 8051 assembly language developer to patch firmware to:

* Add two i2c commands:
    1-turn on
    2-turn off


Notes:

1.  Device has pre-existing soft power control.

2.  Device has pre-existing operational I2C interface.

3.  Current firmware is available only as ROM image.

4.  We -possibly- have some C source code for the 8051-based controller, but it is not configured for the product, nor includes past manufacturer provided customizations.  It is probably mostly useful as a reference tool.



Deliverable Requirements

1.  ROM image:
    a.  With new I2C on/off command functionality.
    b.  Upon boot, the device must start in the existing on state.
    c.  All existing functionality must still be operational.
    d.  Provided in the same ROM-able Intel hex format the original firmware image was supplied in.

2.  New functionality in deliverable #1 must pass 100 I2C command off/on test cycles.

3.  Assembly language listing for deliverable #1, with descriptive comments documenting changes.

4.  Deliverables must be provided within 6 business days from when both parties agree to commencement of work.


Available Resources

We can provide for the duration of the work:

* One controller board for development/testing.
  -and-
* One end-product module which uses the controller board.


Work Quotation

Please e-mail:

* Your all-in fixed price for the work.

* Relevant qualifications.

* The option of partial payment mid-way through project requires two strong references.  Otherwise, payment is upon receipt of the required deliverables.

Parents
  • Note that you can find 8051 chips with at least 1MB of code flash. So way, way larger would, in my language, mean that you have disassembled at least 10MB+ binaries.

    But one thing to note is that huge binaries are normally generated from a high-level language. While 8051 binaries can contain very tricky code written all in assembler to get the most out of the chip. Tricky code includes situations where the same byte can be both data and code. That isn't something a compiler would produce. Tricky code may require that you need to know the allowed value range stored in specific registers to be able to deduce the behaviour - and that isn't so easy even for a multi-pass disassembler.

    In this case, we know that there may be some C source code in existence. But that doesn't prove that this in original the code was 100% C. A significant part could be in assembler, and written by a wicked developer willing to use any trick in the book to squeeze an extra clock cycle or byte.

    No sane human with the proper skills to understand the issues would enters a fixed-price contract with a fixed deadline based on so much unknowns. Only a fool or a troll (which is just another type of fool) would jump at it.

Reply
  • Note that you can find 8051 chips with at least 1MB of code flash. So way, way larger would, in my language, mean that you have disassembled at least 10MB+ binaries.

    But one thing to note is that huge binaries are normally generated from a high-level language. While 8051 binaries can contain very tricky code written all in assembler to get the most out of the chip. Tricky code includes situations where the same byte can be both data and code. That isn't something a compiler would produce. Tricky code may require that you need to know the allowed value range stored in specific registers to be able to deduce the behaviour - and that isn't so easy even for a multi-pass disassembler.

    In this case, we know that there may be some C source code in existence. But that doesn't prove that this in original the code was 100% C. A significant part could be in assembler, and written by a wicked developer willing to use any trick in the book to squeeze an extra clock cycle or byte.

    No sane human with the proper skills to understand the issues would enters a fixed-price contract with a fixed deadline based on so much unknowns. Only a fool or a troll (which is just another type of fool) would jump at it.

Children
More questions in this forum