release
dev builds
extras
themes manual
wiki
device status forums
mailing lists
IRC bugs
patches
dev guide



Search | Go
Wiki > Main > IriverIfpPort

Index page for the Iriver Ifp Rockbox porting effort

NOTE

PLEASE READ THIS PLEASE READ THIS PLEASE READ THIS

This page exists for HISTORICAL PURPOSES ONLY. As of revision 7d0d32dbc6, the code for this port has been removed entirely from the Git branch. This port has never worked anyway, and was removed because it was all dead code suffering from bit rot.

Abstract

Rockbox is finally being ported to iRiver's iFP device, at least to iFP790; this page is to help coordinate the effort.

Status

Function Status
Collect information In Progress see IriverFP3XX5XXHardwareComponents, IriverIfp7XXSpecs, IriverIfp7XXHardwareComponents
Decrypt firmware In Progress see IfpCryptanalysis
Overall project In Progress see below

Hardware summary

iFP1xx iFP3xx iFP5xx iFP7xx iFP8xx FP9xx iFP1xxx N10
cpu PhilipsSAA7750 PhilipsSAA7750 PhilipsSAA7750 PhilipsPNX0101 PhilipsPNX0101 PhilipsPNX0101 PhilipsPNX0101 PhilipsPNX0101
ram ? ? 8MB ? ? ? ? ?
flash-ROM ? ? 2MB ? ? ? ? ?
usb 1.1 ? ? 2.0(ISP1582BS) 2.0(ISP1582BS) 2.0 1.1 ?

Iriver iFP 790 Backdoor

TomekMalesinski: I created a way to run custom code on iFP790. I patched the firmware in such a way that instead of playing files with .wma extension it treates them as code and executes them. The patched firmware loads at most 1MB of a file at 0x24000000 (although I am not sure if there is whole 1MB) and jumps to that address storing return address in LR, so the executed code can return just like a regular subroutine. The patch also disables the Ogg Vorbis low bitrate limit.

Warning: I am not responsible for any damages caused by the patch.

In order to create the patched firmware, download the firmware version UMS 1.29 EU http://www.iriver.com/html/support/download/sudw_view.asp?searchProductIdx=35&searchCategoryIdx=1&searchString=&page=1&idx=623 and two attached files: bin_patch.c and ums129eu.patch. Unzip the original firmware. Compile the bin_patch.c program and run it:
./bin_patch IFP-7XXT.HEX IFP-7XXT_new.HEX <ums129eu.patch

The new file IFP-7XXT_new.HEX should have the following MD5 checksum (do not copy it to the player if it is different):
31def10bf772f80f6b4d7d2fdfd5a001  IFP-7XXT_new.HEX

Now you can upgrade your player with a new firmware. Remember about the above warning, but if you have fresh batteries everything should go fine.

iFP7xx Rockbox Port

The current version of the port allows a user to browse the menu and files on the flash disk. Some plugins also work. Non-working plugins, as well as some of the working ones, require correction of buttons assignment and adjustment of graphics. Recently the port was committed to CVS on Jan 11, 06. From now on, new versions will be available in CVS, the project page at http://www.mimuw.edu.pl/~tmal/rockbox/ will still contain the iFP emulator. The emulator, however, will probably be also commited to CVS in the near future.

The rockbox binary should have .wma extension on the player. Otherwise it will not be possible to run it.

Device Status
Task scheduler (threading) Done
Kernel (messaging and tick timer) Done
Interrupt handling core code Done
LCD driver Done
Backlight Done
Flash disk driver 20% (currently no writing and supports 256 MB models only)
Button driver Done
Plugins 70% (require buttons and graphics adjustments)
GDB stub 60% (USB serial driver and part of the stub implemented)
Power handling 20% (power off implemented)
RTC driver 0%
I2C driver 0%
CPU frequency changing 0%
Audio ADC/DAC driver 0%

I Attachment Action Size Date Who Comment
bin_patch.cc bin_patch.c manage 0.8 K 11 Jul 2006 - 21:06 TomekMalesinski Firmware patcher
ums129eu.patchpatch ums129eu.patch manage 0.6 K 11 Jul 2006 - 21:06 TomekMalesinski UMS 1.29 EU backdoor
r10 - 28 Apr 2021 - 02:25:36 - RobertMenes

Copyright © by the contributing authors.