[Touch Diamond, MDA Compact IV General] low.flying.pigs:
Dear Blaustein / Klaus and WolWer / WoWe,

The following may be of interest and assist with the issue of implementing buzzer functionality on the Medion S3857. Unfortunately I have been rather busy of late and unable to therefore post earlier.

Windows CE has minimum hardware specifications for each version. There is however no standard hardware configuration, the only requirement being the minimum specification must be met, which does not include either sound or buzzer. Consequently there is no standard CE buzzer driver, so buzzer.dll will have most likely been developed for or in conjunction with the hardware manufacturer and incorporated in to their specific Windows CE ROM build. As such it unlikely buzzer.dll is generic, or that if a file of the same name could be found from an alternate device, especially if from another manufacturer, that it would necessarily work on the Medion S3857.

It is known that some devices without actual sound, but with a buzzer / vibrator, will activate that when Windows system warnings and alerts sounds would otherwise be heard. The buzzer / vibrator driver / software detects these events and instead activates the buzzer / vibrator. Depending on implementation, sometimes sound drivers must also be present as it is the output from these that the buzzer driver works with. Some directly capture supported sound events and convert. Others respond only to direct and specific programmatic activation.

Some testing may be possible to determine this specifics of the Medion S3857 in this regard, and thereby determine whether it is really necessary to obtain or further investigate buzzer.dll at all in order to develop GCC functionality.

As to why buzzer.dll cannot just be copied, briefly, individually, files in ROM are not necessarily separate and distinct, and can be stored compressed and split in to multiple parts. Files in ROM are restored and uncompressed ready for execution on request as required but this process is not triggered by ordinary file copy requests. An additional difficulty is that the OS may separately be configured actively prevent system files being copied in any event. This is a summary, not an exhaustive explanation, and there are other aspects.

Hence standard file management utilities that can display hidden system files such as Windows Explorer or Total Commander* cannot however copy these system files, and the file names visible are simply indicators as to some of what is present, not what is necessarily directly available to the end user.

It may be possible nonetheless to develop a tool that would allow ROM files to be copied in similar manner to ordinary files within Windows as other files are, although non seem to either exist, or be readily available. Ordinarily the usual method, subject to other issues allowing, is to extract the required files from a ROM image, where the ROM image is sourced either directly from the device, or if available in a suitable non encrypted form, from a ROM file provided by the manufacturer as a full restore / update file.

Medion S3857 ROM is available from Medion here.

As per the attached example screen grabs, it can be seen buzzer.dll is therein when ceplimg.bin when extracted from the .zip and viewed within a Hex Editor. In this instance, analysis in this manner might yield the same or similar information as having buzzer.dll extracted as a separate file and viewing in a Hex Editor.

Should it be necessary:

Further information for creating a ROM image from a device is here and here.

Further information on extracting a ROM image is here and here.

Success depends on a number of factors, not least user ability. With the aforementioned information, it should now be possible to make some further progress.

* Total Commander 2.51 for Windows CE is an example of an application that implements Context Menus without using or requiring aygshell.dll to be present on the device. GoPal supplied with the S3857 is an example of actual Full Screen being similarly implemented.

As the screen grabs show, this can be observed using Windows CE5 emulator, using a suitable emulator image without ayshell.dll present. A freely available update of GoPal from here was used for testing purposes which promptly crashes but not before having demonstrated Full Screen, the purpose of the exercise.

The crash is irrelevant, but presumably having not further investigated as it was unnecessary, is due at least in part to GoPal required files being missing, as the source was only an update, not the full application.

Information on how aygshell.dll dependence of GCC can be eradicated for maximum compatibility with all CE devices has already been provided here.

low.flying.pigs