- Occasional lock-up fixed
- Need for hard RESET upon booting removed
- Speed improvement on battery power
- SEED bug fixed
- System menu (F2) visibility now saved in machine state
- Free42 V2.0.17
This is the main reason why V3.4 was such a long time coming. We thought we had this issue nailed with V3.3 but then reports of DM42s hanging started coming in again, some also while printing. David spent nearly two weeks holed up in his batcave (we do allow him some food and heating sometimes), picked the firmware apart, added extra protection around sensitive areas where timing is critical, put it all back together again and left a pair of DM42s running at different clock frequencies before going missing for a week. When he (was) returned to his batcave, both DM42s were still running. Thus was born the foundation of this firmware version 3.4.
Need for hard RESET upon booting removed
This measure was originally brought in because it looked like some garbage data was surviving a soft RESET, confusing the CPU later on down the line and causing it to lock up.
Clearly this wasn't the case. The problem was elsewhere, so we've removed this part of the update process as it has been rendered unnecessary.
Speed improvement on battery power
This is another positive side effect of the bugfixing done by David. He was able to crank up the compiler optimisation again and get it to generate more efficient object code. Speed has increased by about 8% on V3.3.
SEED bug fixed
There was a change in the way Free42 handles the special case of "SEED 0" (seeding the pseudo-random number generator, PRNG, with a value derived from the real-time clock) introduced with Free42 2.0.7. This passed under the radar in the batcave so versions of DM42 firmware using Free42 V2.0.7 and later started generating identical sequences of random numbers if the PRNG was seeded repeatedly from the RTC.
This has been fixed in DM42 V3.4.
System menu (F2) visibility now saved
The "visible" state of the system menu was not saved in the DM42 machine state file. If you had that menu active, when you saved the DM42's state to the FAT drive or if you loaded in a previously saved state, that system menu would disappear because its visibility was not saved.
This is fixed as of V3.4.
Note that the system menu will still disappear if you load in a machine state saved with firmware versions prior to 3.4. This is because the menu's "visible" state is not saved in the state file by these versions of the firmware.
This is the latest version of Free42 available at the time firmware 3.4 was built.
For a full list of bugfixes and features introduced into Free42 since the previous firmware version, head on over to the Project History page on Thomas Okken's Free42 site.
Download DM42_flash_3.4a.bin and follow instructions in the manual