Emboss - Software Development

Not logged in.


Create an account
Current version:
Related links
Introducing the NEX
Frontier Labs once manufactured a nifty MP3 player called the NEX. It had 64MB of flash RAM, was well build, and was cheap. Unfortunately is has vanished off their website, along with the software that accompanied it, and has been replaced by much fancier versions.

The software (if you kept the original CD safe) had one slight flaw as well: it only worked on Windows 9x kernels, which limited it to Windows 95, 98, and ME. Attempting to run the program in Windows NT, 2000, or XP resulted in an exception as the program required direct port access. That it required Windows at all was also a minor problem.

Along with the demise of the NEX was the demise of the documentation. The player was developed outside Frontier Labs, and the company that designed it and produced the software went out of business. There was no documentation on the protocol used by the player to communicate with the computer.

The solution
Emboss (through Michael Brown) has gained permission from Frontier Labs to mount a reverse-engineering effort on the player. It has been determined how to read memory from the player, and from this the memory format was largely determined. Currently, writing to the player is not yet completed, but listing the songs on the player and downloading songs from the player should be functional.
The initial effort, before permission from Frontier Labs was gained, was to reverse engineer it through the use of a microcontroller monitoring the parallel port cable. Once permission was gained, disassembly of the program was used to verify the results and also to gain more insight into the protocol.

The software is currently released under a MIT-style licence, though this can change if you do not wish to contribute to a project that uses this licence.

The email conversation, along with comments, can be viewed here.

The current package
There are 3 current packages:
  • nexnix-x.x.x.x.src.zip contains the source code for the command-line tool for viewing the contents and downloading songs from the player. It has been written and tested under Delphi 7 and Kylix 3. This also contains the current documentation on the memory and protocol format.
  • nexnix-x.x.x.x.win.zip contains the windows binary of the command-line tool.
  • nexnix-x.x.x.x.lin.zip contains the Linux binary of the command-line tool.
The documentation is also available online:
To recompile the program you require Delphi (tested with version 7) if you wish to recompile for Windows, or Kylix (tested with version 3) if you wish to recompile for Linux.